[vlc-devel] [PATCH] fix mux functionality, avoid dumping all ES in first PMT

Marnik Vander Elst marnik at marnik.org
Mon Aug 4 14:59:11 CEST 2008


Is this the vlm config you mean?

del all

new stream1 broadcast enabled
new stream2 broadcast enabled
new stream3 broadcast enabled

setup stream1 input "udp://10.10.105.201@224.1.105.201:2000"
setup stream2 input "udp://10.10.105.202@224.1.105.202:2000"
setup stream3 input "udp://10.10.105.203@224.1.105.203:2000"

setup stream1 output
#duplicate{dst=bridge-out{id=1000},select=video,dst=bridge-out{id=1100},select=audio}
setup stream2 output
#duplicate{dst=bridge-out{id=2000},select=video,dst=bridge-out{id=2100},select=audio}
setup stream3 output
#duplicate{dst=bridge-out{id=3000}:bridge-in:duplicate{dst=display,dst=std{access=udp{ttl=5},mux=ts,dst=
225.1.1.211:1234},select=video,dst=bridge-out{id=3100},select=audio}

setup stream3 option sout-ts-tsid=55
setup stream3 option sout-ts-netid=88
setup stream3 option sout-ts-program-pmt="4000,4100,4200"
setup stream3 option sout-ts-muxpmt="1000,1100,,2000,2100,,3000,3100"
setup stream3 option
sout-ts-sdtdesc="broadcaster1,service1,broadcaster2,service2,broadcaster3,service3"
setup stream3 option sout-ts-es-id-pid
setup stream3 option sout-ts-pcr=35

control stream1 play
control stream2 play
control stream3 play


Because the output is seen here:
http://img135.imageshack.us/img135/1669/vlcmuxei5.png

All the pids get dumped in the first PMT, and somehow I lost the id's I gave
to bridge-out. If the config is not what you mean, could you tell me what it
should be? It don't understand " (You should be able to append bridge-in:...
to any dst= from any duplicate, or you can even use a dedicated dst=)". I
want to join 3 streams and mux them together with PID's that I choose, but
they always end up in the first PMT. I did some tests (edited the code) and
the GetPMT always looked for the original input PID in the PMT-map, not the
ID that is given in bridge-out.

Kind regards,

Marnik

2008/8/3, Marnik Vander Elst <marnik at marnik.org>:
>
> Thanks for your reply, I will check it out in the morning.
>
> Marnik
>
> 2008/8/3, Laurent Aimar <fenrir at via.ecp.fr>:
>>
>> On Thu, Jul 24, 2008, Marnik Vander Elst wrote:
>> > description:
>> > Look for the ID specified in config in the PMT map, not for the
>> > original incoming PID.
>>
>> I am not sure that this patch is needed. If you use --sout-ts-es-id-pid
>> it should already do what you ask:
>>
>>   if ( p_sys->b_es_id_pid )
>>      p_stream->i_pid = p_input->p_fmt->i_id & 0x1fff;
>>   else
>>     p_stream->i_pid = AllocatePID( p_sys, p_input->p_fmt->i_cat );
>>
>> So could you explain what problems your patch fix when you use
>> --sout-ts-es-id-pid ?
>>
>>
>> > setup stream1 output
>> >
>> #duplicate{dst=bridge-out{id=1000},select=video,dst=bridge-out{id=1100},select=audio}
>> > setup stream2 output
>> >
>> #duplicate{dst=bridge-out{id=2000},select=video,dst=bridge-out{id=2100},select=audio}
>> > setup stream3 output
>> >
>> #duplicate{dst=bridge-out{id=2000},select=video,dst=bridge-out{id=2100},select=audio}:bridge-in:duplicate{dst=display,dst=std{access=udp{ttl=5},mux=ts,dst=
>> 225.1.1.211:1234}
>>
>> There is your error, it should be (for example):
>>
>> #duplicate{dst=bridge-out{id=2000}:bridge-in:duplicate{dst=display,dst=std{access=udp{ttl=5},mux=ts,dst=
>> 225.1.1.211:1234},select=video,dst=bridge-out{id=2100},select=audio}
>>   (You should be able to append bridge-in:... to any dst= from any
>> duplicate, or
>> you can even use a dedicated dst=)
>>
>> duplicate{} does not have the normal output (ie duplicate{}:...) as data
>> go
>> through each dst=...
>>
>>
>> --
>> fenrir
>>
>> _______________________________________________
>> vlc-devel mailing list
>> To unsubscribe or modify your subscription options:
>> http://mailman.videolan.org/listinfo/vlc-devel
>>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.videolan.org/pipermail/vlc-devel/attachments/20080804/85e85332/attachment.html>


More information about the vlc-devel mailing list