After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 550924 - Flutsdemux to put the different pid ES to different files
Flutsdemux to put the different pid ES to different files
Status: RESOLVED INCOMPLETE
Product: GStreamer
Classification: Platform
Component: gst-plugins-bad
0.10.15
Other Linux
: Normal normal
: git master
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2008-09-04 22:19 UTC by heli
Modified: 2011-06-29 04:02 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description heli 2008-09-04 22:19:21 UTC
Hi,

Using the following command, I want to make sure that the 3 differnet audio ES in my input live strea goes to 3 different files. I have 3 pids for audio ES 650,651,652. The following command does not work at all. It goes till the point pipeline is pre-rolling but does not go beyoud that point. 
{{{
 gst-launch filesrc location=yourfile.ts ! flutsdemux name=d .audio_0001 !
 queue max-size-buffers=0 max-size-time=0 ! filesink location=1.mpa
 d.audio_0002 ! queue max-size-buffers=0 max-size-time=0 ! filesink
 location=2.mpa d.audio_0003 ! queue max-size-buffers=0 max-size-time=0 !
 filesink location=3.mpa
 }}}

but 
{{{
 gst-launch filesrc location=yourfile.ts ! flutsdemux name=d .!
 queue max-size-buffers=0 max-size-time=0 ! filesink location=1.mpa
 d. ! queue max-size-buffers=0 max-size-time=0 ! filesink
 location=2.mpa d ! queue max-size-buffers=0 max-size-time=0 !
 filesink location=3.mpa
 }}}

works but it some times puts video stream in one of the file. How can I tell gstreamer to put specific pid ES in specific files?

thanks
Heli
Comment 1 Edward Hervey 2008-09-05 06:16:31 UTC
The first pipeline seems wrong anyway. The pads are named using the pid.

audio_0001 => audio_0650, etc....

or more generically, the padname is <media_type>_<PID_in_hexa>

Try modifying your original pipeline accordingly.
Comment 2 heli 2008-09-05 19:41:15 UTC
(In reply to comment #1)
> The first pipeline seems wrong anyway. The pads are named using the pid.
> audio_0001 => audio_0650, etc....
> or more generically, the padname is <media_type>_<PID_in_hexa>
> Try modifying your original pipeline accordingly.

Hi 

The modified pipeline does not work either. It hangs at exactly same point with "Pipeline is Pre-rolling" message,

Here is the new command,

/usr/bin/gst-launch-0.10 filesrc location=/home/httpd/input.ts ! flutsdemux name=demux program-number=1 demux.video_0200 ! queue max-size-buffers=0 max-size-time=0 ! filesink location=out.mpv demux.audio_028A ! queue max-size-buffers=0 max-size-time=0 ! filesink location=out.mpa

where 0x200 is the video pid and 0x28A is the audio pid. Clearly I am interested in the program-number 1 and pids 512(0x200) and 650(0x28A).

Please help!

Heli
Comment 3 David Schleef 2008-10-08 18:38:00 UTC
It might be wise to write a small python script instead of relying on gst-launch's relatively limited ability.
Comment 4 Thiago Sousa Santos 2009-10-15 14:23:52 UTC
Also, uploading a sample file could help us debugging it.
Comment 5 Fabio Durán Verdugo 2011-06-29 04:02:40 UTC
Closing this bug report as no further information has been provided. Please feel free to reopen this bug if you can provide the information asked for.
Thanks!