[gst-devel] recording a file from stream

Terry Leung terry83 at gmail.com
Tue Sep 18 08:57:14 CEST 2007

Hi all,

After reading the readme file, I got the caps correct and now the
problem is that the recorded file cannot be played. Here is the
pipeline I am using.

receving side:

gst-launch -m ffmux_3gp name=mux ! filesink location=/home/video/receive.3gp \
udpsrc port=11002 name=audioudp caps="application/x-rtp,
media=(string)audio, payload=(int)98, clock-rate=(int)8000,
encoding-name=(string)AMR, encoding-params=(string)1,
octet-align=(string)1" ! rtpamrdepay queue-delay=0 ! mux.audio_0

sending side
gst-launch -v filesrc location=/home/video/files/jill3.3gp ! qtdemux
name=demuxer \
demuxer.!queue! rtpamrpay pt=98 ! udpsink host= port=11002

After the sending side ended, I press crtl+c on the receving side to
stop the recording(I am not sure if this will cause any problems)
and then I change the send side pipeline and replace the file with the
one just recorded
The result is shown below:

Setting pipeline to PAUSED ...
Pipeline is PREROLLING ...
ERROR: from element /pipeline0/demuxer: This file contains no playable streams.
Additional debug info:
qtdemux.c(1444): gst_qtdemux_loop (): /pipeline0/demuxer:
no known streams found
ERROR: pipeline doesn't want to preroll.
Setting pipeline to NULL ...
FREEING pipeline ...

Any one got any idea on this issue?

On 9/17/07, Terry Leung <terry83 at gmail.com> wrote:
> Hi all,
> I am writing a program to record rtp stream into a 3gp file(currently only amr)
> I try to build a pipeline like the following:
> gst-launch ffmux_3gp name=mux ! filesink
> location=/home/video/receive.3gp name=file \
> {udpsrc port=11002 name=audioudp \
> caps="application/x-rtp, media=audio, payload=96, clock-rate=8000,
> encoding-name=AMR, ssrc=111111002 "\
>  ! rtpamrdepay ! queue } mux.audio_0
> After i generate stream from another source, it shows that
> Setting pipeline to PAUSED ...
> Pipeline is live and does not need PREROLL ...
> Setting pipeline to PLAYING ...
> New clock: GstSystemClock
> ERROR: from element /pipeline0/audioudp: Internal data flow error.
> Additional debug info:
> gstbasesrc.c(1816): gst_base_src_loop (): /pipeline0/audioudp:
> streaming task paused, reason not-negotiated (-4)
> Execution ended after 12698510000 ns.
> Setting pipeline to PAUSED ...
> Setting pipeline to READY ...
> Setting pipeline to NULL ...
> FREEING pipeline ...
> anyone got idea on how to make it work?

More information about the gstreamer-devel mailing list