<div dir="ltr"><div>There's actually already a bug with a proposed fix for this.<br><br><a href="https://bugzilla.gnome.org/show_bug.cgi?id=746765">https://bugzilla.gnome.org/show_bug.cgi?id=746765</a><br></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Jun 10, 2015 at 8:24 AM, Jan Schmidt <span dir="ltr"><<a href="mailto:thaytan@noraisin.net" target="_blank">thaytan@noraisin.net</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On 09/06/15 21:24, Peter Maersk-Moller wrote:<br>
<br>
Hi Peter,<span class=""><br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Forgot to mention. The supposedly program-number bug is tested with<br>
GStreamer 1.4.5.<br>
</blockquote>
<br></span>
The restricted range of the program number field is a limitation of the way the MPEG-TS muxer is implemented - storing all programs in a fixed array of 32 entries. As you've noted, any request for a higher program number is ignored.<br>
<br>
I didn't realise any mapping uses explicit program numbers for anything specific, so I'm interested to hear you mention ATSC there. I've always thought of them as an arbitrary identifier that just has to be unique.<br>
<br>
If you have a real need for higher program numbers, it'll require some enhancement of the mpeg-ts muxer - a task that's arguably long overdue for other reasons too.<span class="HOEnZb"><font color="#888888"><br>
<br>
- Jan.<br>
<br>
</font></span><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">
<br>
best regards<br>
Peter<br>
<br>
On Mon, Jun 8, 2015 at 3:41 AM, Peter Maersk-Moller <<a href="mailto:pmaersk@gmail.com" target="_blank">pmaersk@gmail.com</a><br></span><div><div class="h5">
<mailto:<a href="mailto:pmaersk@gmail.com" target="_blank">pmaersk@gmail.com</a>>> wrote:<br>
<br>
    Hi<br>
<br>
    When I try to set the program number for the mpegtsmux using the<br>
    pipeline, it all works quite well until I try to set a program<br>
    number above 31. Using a program number above 31, makes the mux set<br>
    the program number to 1. It furthermore creates complications, if I<br>
    have two streams and they both have a program number above 31. Then<br>
    I only get one program with the number 1 possibly with both pes pids<br>
    (not verified)<br>
<br>
    The pipelines used for test are these:<br>
<br>
    pid1=300<br>
    pnum1=31<br>
    # (works)<br>
    pnum1=32<br>
    # (program gets number 1)<br>
<br>
    gst-launch-1.0 videotestsrc is-live=1  !<br>
    'video/x-raw,framerate=15/1' ! videoconvert ! x264enc speed-preset=2<br>
    ! h264parse ! queue ! mux.sink_$pid1 mpegtsmux name=mux<br>
    prog-map=program_map,sink_$pid1=$pnum1 ! chopmydata max-size=1316<br>
    min-size=1316 ! udpsink host=127.0.0.1 port=10074<br>
<br>
    pid1=300<br>
    pid2=301<br>
    pnum1=32<br>
    pnum2=33<br>
    # both pid1 and pid2 are associated with program 1 and not 32 and 33<br>
<br>
    gst-launch-1.0 videotestsrc is-live=1  !<br>
    'video/x-raw,framerate=15/1' ! videoconvert ! x264enc speed-preset=2<br>
    ! queue ! tee name=t ! h264parse ! queue ! mux.sink_$pid1 mpegtsmux<br>
    name=mux prog-map=program_map,sink_$pid1=$pnum1,sink_$pid2=$pnum2 !<br>
    chopmydata max-size=1316 min-size=1316 ! tcpserversink<br>
    host=127.0.0.1 port=10074 t. ! h264parse ! queue ! mux.sink_$pid2<br>
<br>
    pid1=300<br>
    pid2=301<br>
    pnum1=31 (works)<br>
    pnum1=32 (program gets number 1)<br>
<br>
    As far as I can read in the standard, the 16 bit field for program<br>
    number in the PAT packet and in the PMT packet allows for program<br>
    number between 1-2^16-1 although ATSC reserves 2^16-1 for some<br>
    analogue stuff.<br>
<br>
    So is this a bug?<br>
<br>
    Best regards<br>
    Peter Maersk-Moller<br>
<br>
<br>
<br>
<br></div></div><span class="">
_______________________________________________<br>
gstreamer-devel mailing list<br>
<a href="mailto:gstreamer-devel@lists.freedesktop.org" target="_blank">gstreamer-devel@lists.freedesktop.org</a><br>
<a href="http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel" target="_blank">http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel</a><br>
<br>
</span></blockquote><div class="HOEnZb"><div class="h5">
_______________________________________________<br>
gstreamer-devel mailing list<br>
<a href="mailto:gstreamer-devel@lists.freedesktop.org" target="_blank">gstreamer-devel@lists.freedesktop.org</a><br>
<a href="http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel" target="_blank">http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel</a><br>
</div></div></blockquote></div><br></div>