[MPlayer-dev-eng] Is it possible to decode T-DMB stream withMPlayer?

Nico Sabbi nsabbi at email.it
Tue Nov 14 18:12:27 CET 2006


madhav kulkarni wrote:

> Hello Nico,
>
> This is the sequence given in ETSI document to decode DMB stream.
>
> 1.    From an MPEG-2 TS, the PAT is obtained from the TS packets with 
> PID 0x0000. Then a program number and the corresponding PMT PID are 
> identified. In this case, there exists only one PMT in the PAT.
>
> 2.    Search for the PMT in the TS using the PMT PID obtained above.
>
>
> 3.    Within the PMT, find the IOD_descriptor that includes the IOD.
>
> 4.    Within the IOD, find the ES_Descriptors related to the scene 
> description and object description.
>
>
> 5.    From the ES_Descriptor information found in 3, obtain the ES_IDs 
> and then search for the elementary stream information corresponding to 
> the ES_IDs through the descriptor loop in the PMT.
>
> 6.    From the elementary stream information found in 4, obtain the 
> PID and stream_type pairs corresponding to the ES_Ids, respectively, 
> and then find packets corresponding to each of these in the transport 
> stream.
>
>
> 7.    By using the ObjectDescriptorID contained in the scene 
> description information, obtain the corresponding ObjectDescriptor 
> contained in the object descriptor stream. By using the relationship 
> between the ES_ID contained in the ObjectDescriptor and the PID that 
> can be found in a way similar to 5, compose the scene.
>
> 8.    Obtain the animation data using the scene description information.
>
>
> I couldn't get after decoding PMT how the ES is extracted?

libmpdemux/demux_ts.c is the right place to have answers; at the moment 
I don't even
remember all the details because a lot of time has passed since I wrote it.
Anyway, I remember that the real entry point is the set of program 
descriptors in the pmt,
even before the descriptors in the es loop. In it you will fine the  
IOD_descriptor
that permits to recover 
ObjectDescriptor->ES_descriptors->Decoderdescriptor->
DecoderSpecificDescriptor and SLConfigdescriptor, more or less in this 
order.
The method you posted is really the only possible way to decode dmb streams

>
> Madhav

I told you that dmb is completely braindead! :(



More information about the MPlayer-dev-eng mailing list