[gst-devel] regarding in uridecodebin

Bob Forsman thoth at purplefrog.com
Mon Mar 2 20:34:44 CET 2009


In d10c7b710902232026u1b1df1fcv8b58e69b7a1c960a at mail.gmail.com, Jyoti D <jyoti.d at allaboutif.com> wrote:

> Hi Bob,
> 
> Please find attached the MPEG TS file with PAT & PMT info.

  Uhoh.  You should have sent that attachment directly to me, not the
list.  For things you want to send to the list put it on a web server
and post the URL.

  That stream was different from any other I have seen.

  It had two video PIDs (518 and 520).  Each of these had descriptors I
am not familiar with.  There was a private_data_specifier_descriptor
containing the string "OTV".  520 was MPEG 2 video.  518 didn't even
contain PES packets.  I am quite confused.  Maybe it was encrypted
(there are CA descriptors attached to both PMT entries).

  There were two MPEG audio streams, one tagged "eng" and the other
"ara" (english and arabic?).  This is less weird.

  There was a type 6 (private[PES]) stream in PID 582.  I find it mildly
odd because it appeared to have stuffing in the PES header.  Since the
PMT had a teletext_descriptor I would assume that's the teletext PID.
Unfortunately I don't think I have any specifications that would allow
me to decode these.

  Then there were five more type 5 (private) PIDs, each with a
private_data_indicator_descriptor (with the string "OTV") and two user
private descriptors (#144 and #254).  I don't know what to make of
those.


  The video plays fine when I issue

$ gst-launch-0.10 playbin uri=file:///tmp/attherace_1.ts 

  But when I attempt to build a pipeline similar to yours I don't even get past

 chemmis:508 $ gst-launch-0.10 uridecodebin uri=file:///tmp/attherace_1.ts name=dec   dec.! queue !  ffmpegcolorspace ! autovideosink dec.! queue ! audioconvert ! autoaudiosink
Setting pipeline to PAUSED ...
Pipeline is PREROLLING ...
^CCaught interrupt -- handling interrupt.
Interrupt: Stopping pipeline ...
ERROR: pipeline doesn't want to preroll.
Setting pipeline to NULL ...
FREEING pipeline ...



  This does raise an interesting question -vs- gstreamer's
demultiplexers.  How do you specify which audio and which video stream
to send to the video and audio sinks?  If I am a speaker of arabic, how
would I instruct gst-launch to give me the arabic audio, or even prefer
that one automatically based on my environment?  How can I watch that
secondary video stream?

  Is there a URL I can read that explains why the pipelines thrown
together by a novice malfunction when presented with this input?




More information about the gstreamer-devel mailing list