[FFmpeg-devel] New patch for mpegts.c
JULIAN GARDNER
joolzg at btinternet.com
Wed Oct 24 07:25:32 CEST 2012
----- Original Message -----
> From: Michael Niedermayer <michaelni at gmx.at>
> To: FFmpeg development discussions and patches <ffmpeg-devel at ffmpeg.org>
> Cc:
> Sent: Wednesday, 24 October 2012, 5:26
> Subject: Re: [FFmpeg-devel] New patch for mpegts.c
>
> On Wed, Oct 17, 2012 at 05:51:28PM +0100, JULIAN GARDNER wrote:
>>
>>
>>
>>
>>
>> ----- Original Message -----
>> > From: Michael Niedermayer <michaelni at gmx.at>
>> > To: FFmpeg development discussions and patches
> <ffmpeg-devel at ffmpeg.org>
>> > Cc:
>> > Sent: Wednesday, 17 October 2012, 17:36
>> > Subject: Re: [FFmpeg-devel] New patch for mpegts.c
>> >
>> > On Wed, Oct 17, 2012 at 08:46:07AM +0100, JULIAN GARDNER wrote:
>> >>
>> >>
>> >>
>> >>
>> >>
>> >>
>> >> ----- Original Message -----
>> >> > From: Michael Niedermayer <michaelni at gmx.at>
>> >> > To: FFmpeg development discussions and patches
>> > <ffmpeg-devel at ffmpeg.org>
>> >> > Cc:
>> >> > Sent: Wednesday, 17 October 2012, 1:41
>> >> > Subject: Re: [FFmpeg-devel] New patch for mpegts.c
>> >> >
>> >> > Hi
>> >> >
>> >> > On Tue, Oct 16, 2012 at 08:34:27PM +0100, JULIAN GARDNER
> wrote:
>> >> >>
>> >> >> >________________________________
>> >> >> > From: Michael Niedermayer <michaelni at gmx.at>
>> >> >> >To: FFmpeg development discussions and patches
>> >> > <ffmpeg-devel at ffmpeg.org>
>> >> >> >Sent: Tuesday, 16 October 2012, 17:16
>> >> >> >Subject: Re: [FFmpeg-devel] New patch for mpegts.c
>> >> >> >
>> >> >> >On Tue, Oct 16, 2012 at 02:33:01PM +0100, JULIAN
> GARDNER
>> > wrote:
> [...]
>> >> > If its about spec compliance, please quote the spec that
> requires
>> >> > this behavior.
>> >> >
>> >> ETS 300468 5.1.1 d
>> >
> http://www.etsi.org/deliver/etsi_en/300400_300499/300468/01.11.01_60/en_300468v011101p.pdf
>> >
>> > doesnt say one should discard things with equal version numbers
>> >
>>
>> "When the characteristics of the TS described in the SI given in the
> present document change (e.g. new events start, different composition of
> elementary streams for a given service), then new SI data shall be sent
> containing the updated information. A new version of the SI data is signalled by
> sending a sub_table with the same identifiers as the previous sub_table
> containing the relevant data, but with the next value of version_number."
>>
>> "document change" " the next value of version_number",
> so to me this means that if the data is THE SAME then the version number will be
> the same, and i guess that the guys who wrote the spec did this so you DONT have
> to process the SAME data over and over again, what it was added for was hardware
> filtering, which if you have spent 15+ years writing code for sat receivers etc
> you will know this. Why would you want to process possibly millions of sections
> which contain the SAME data, to just produce the same tables?.
>>
>> Now if you keep on banging on about the .00000001% of people who
> concatenate 2 ts streams and do not follow the spec and either make sure the SI
> data is the same, which means the version number the same, or make the version
> number follow by becoming the next version then we are at an impasse, because i
> think your wrong on this, but as your in charge i will await your decision.
>>
>> And what are we discard, we are just not processing THE SAME DATA over and
> over again.
> [...]
>> >> Again we either process xxxx thousand sections or we do as the
> spec says
>> > and process only new/updated?
>> >
>> > The spec doesnt say that, it says:
>> > d) version_number:
>> > - When the characteristics of the TS described in the SI given
> in the
>> > present document change (e.g. new
>> > events start, different composition of elementary streams for
> a given
>> > service), then new SI data shall be
>> > sent containing the updated information. A new version of the
> SI data
>> > is signalled by sending a sub_table
>> > with the same identifiers as the previous sub_table
> containing the
>> > relevant data, but with the next value
>> > of version_number.
>> > - For the SI tables specified in the present document, the
> version_number
>> > applies to all sections of a
>> > sub_table.
>> >
>> > That speaks about "when X then ... shall be sent ...",
> sending happens
>> > on the muxer side, not the demuxer. The text quoted says nothing about
>> > what a demuxer should or should not do with what it receives. It
>> > simply describes what a demuxer can expect from a valid DVB stream.
>> > A concatenated stream as you already explained is not a valid DVB
>> > stream ...
>>
>> So your now saying that the spec is only for the muxer, can you show me the
> spec for the demuxer then that is different, again i come back to the "New
> version .... but with the next value of version number". This spec if for
> DVB compatible systems, both muxers and demuxers.
>>
>> So have you tested what happens when you play a concatenated stream on a
> DVB compliant receiver, you will get the same as with my modifications. As you
> always seem to tell people, fix the problem 1st. The only problem i can see is
> that you want the decoder NOT to follow the spec, but instead work for the NON
> COMPATIBLE streams, when instead the concatenate should be fixed to produce
> correct TS streams.
>>
>> I will leave it now and let you decide, as this circle will just keep going
> round and round. If it will be included in any future ffmpeg release then great
> if not then i will just keep it in my local tree.
>
> Patches must provide an overall improvment to be accepted.
> Noone has shown a meassureable improvment for it yet and
> the patch breaks seeking and breaks concatenated streams
> If you want to keep it in its current form in your local tree then
> i think you make a mistake.
>
> Instead IMHO you should rethink what improvment the patch provides
> and then objectively test if it really does. If it does, then fix
> the issues and repost the patch so it gets included in ffmpeg and
> all users benefit.
> OTOH if it doesnt provide a real user vissible improvment, lets just
> lay it rest and work on something that does.
>
Ok given up trying to convince you that you are wrong.
joolz
More information about the ffmpeg-devel
mailing list