[FFmpeg-devel] [RFC] Private streams in MPEG PS

Baptiste Coudurier baptiste.coudurier
Wed May 27 22:18:33 CEST 2009


On 5/27/2009 1:08 PM, Jai Menon wrote:
> On Wed, May 27, 2009 at 8:04 PM, Baptiste Coudurier
> <baptiste.coudurier at gmail.com> wrote:
>> On 5/27/2009 12:52 PM, Jai Menon wrote:
>>> On Wed, May 27, 2009 at 6:22 PM, Baptiste Coudurier
>>> <baptiste.coudurier at gmail.com> wrote:
>>>> Hi,
>>>>
>>>> On 5/27/2009 11:00 AM, Jai Menon wrote:
>>>>> Hi,
>>>>>
>>>>> I'm becoming increasingly suspicious of this check in lavf/mpeg.c:370 -
>>>>>
>>>>>   4093        mru     if (startcode == PRIVATE_STREAM_1 &&
>>>>> !m->psm_es_type[startcode & 0xff]) {
>>>>>
>>>>>              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
>>>>>
>>>>> Looking at issue 1122 and 725 on roundup,  I'm inclined to believe
>>>>> that a lot of files out there don't have a program stream map (which I
>>>>> didn't back when issue 725 was reported). Removing this check actually
>>>>> would solve both 1122 and 725 without the need for the fix commited in
>>>>> r17150.
>>>> Humm, pes_es_type should be init to 0 anyway, if file have no program
>>>> stream map. Isn't the problem that psm_es_type is wrongly set ?
>>> PSM ES type is set to 0x81 which is correct for both ac3 tracks. The
>>> problem is that es_id (which should be unique by current demuxer
>>> design) is 0x1bd. The substream ids are 0x80 and 0x81 and imho we
>>> should consider those as part of the stream id.
>>>
>> Humm, es_id is a byte so it cannot be 0x1bd ?
> 
> Ugh, sorry, I meant 0xbd.
> And forgot to mention, the file i'm referring to the file attached
> against 1122 on roundup.
> 

Well one solution is to read the substartcode and if it doesn't match
something making sense, seek back one byte and honor psm_es_type IMHO.

-- 
Baptiste COUDURIER                              GnuPG Key Id: 0x5C1ABAAA
Key fingerprint                 8D77134D20CC9220201FC5DB0AC9325C5C1ABAAA
FFmpeg maintainer                                  http://www.ffmpeg.org



More information about the ffmpeg-devel mailing list