VC1 Over Transport

For questions and discussion that is NOT (I repeat NOT) specific to a certain Operating System.
erezl
New Cone
New Cone
Posts: 7
Joined: 13 Jan 2008 13:30

VC1 Over Transport

Postby erezl » 13 Jan 2008 16:14

Hi,
Does VLC support VC1 Over Transport decoding?

Jean-Baptiste Kempf
Site Administrator
Site Administrator
Posts: 37523
Joined: 22 Jul 2005 15:29
VLC version: 4.0.0-git
Operating System: Linux, Windows, Mac
Location: Cone, France
Contact:

Re: VC1 Over Transport

Postby Jean-Baptiste Kempf » 13 Jan 2008 17:52

VC1 in ts streams ?
Jean-Baptiste Kempf
http://www.jbkempf.com/ - http://www.jbkempf.com/blog/category/Videolan
VLC media player developer, VideoLAN President and Sites administrator
If you want an answer to your question, just be specific and precise. Don't use Private Messages.

erezl
New Cone
New Cone
Posts: 7
Joined: 13 Jan 2008 13:30

Re: VC1 Over Transport

Postby erezl » 14 Jan 2008 14:26

Yes, VC1 in Transport stream

Jean-Baptiste Kempf
Site Administrator
Site Administrator
Posts: 37523
Joined: 22 Jul 2005 15:29
VLC version: 4.0.0-git
Operating System: Linux, Windows, Mac
Location: Cone, France
Contact:

Re: VC1 Over Transport

Postby Jean-Baptiste Kempf » 14 Jan 2008 19:04

it should.
Jean-Baptiste Kempf
http://www.jbkempf.com/ - http://www.jbkempf.com/blog/category/Videolan
VLC media player developer, VideoLAN President and Sites administrator
If you want an answer to your question, just be specific and precise. Don't use Private Messages.

erezl
New Cone
New Cone
Posts: 7
Joined: 13 Jan 2008 13:30

Re: VC1 Over Transport

Postby erezl » 17 Jan 2008 11:20

Hi,
When I try to open such file I see in the messages that he doesn't recognice the Stream type of the VC1 (according to the standard its 0x234)

Please advice?

This is the messages output when I try to open the VC1 in Mpeg2Transport.

ts debug: pid[1001] unknown
ts debug: pid[1002] unknown
ts debug: pid[1000] unknown
ts debug: PATCallBack called
ts debug: new PAT ts_id=0 version=0 current_next=1
ts debug: * number=1 pid=1000
ts debug: PMTCallBack called
ts debug: new PMT program number=1 version=0 pid_pcr=1001
ts debug: * es pid=1001 type=234 *unknown*
ts debug: * es pid=1002 type=4 fcc=mpga

erezl
New Cone
New Cone
Posts: 7
Joined: 13 Jan 2008 13:30

Re: VC1 Over Transport

Postby erezl » 20 Jan 2008 17:30

Hi,
When I try to open such file I see in the messages that he doesn't recognice the Stream type of the VC1 (according to the standard its 0x234)

Please advice?

This is the messages output when I try to open the VC1 in Mpeg2Transport.

ts debug: pid[1001] unknown
ts debug: pid[1002] unknown
ts debug: pid[1000] unknown
ts debug: PATCallBack called
ts debug: new PAT ts_id=0 version=0 current_next=1
ts debug: * number=1 pid=1000
ts debug: PMTCallBack called
ts debug: new PMT program number=1 version=0 pid_pcr=1001
ts debug: * es pid=1001 type=234 *unknown*
ts debug: * es pid=1002 type=4 fcc=mpga

Jean-Baptiste Kempf
Site Administrator
Site Administrator
Posts: 37523
Joined: 22 Jul 2005 15:29
VLC version: 4.0.0-git
Operating System: Linux, Windows, Mac
Location: Cone, France
Contact:

Re: VC1 Over Transport

Postby Jean-Baptiste Kempf » 20 Jan 2008 19:15

You have to fix modules/demux/ts.c and possibly libdvbpsi.
Did you try trunk versions ?
Jean-Baptiste Kempf
http://www.jbkempf.com/ - http://www.jbkempf.com/blog/category/Videolan
VLC media player developer, VideoLAN President and Sites administrator
If you want an answer to your question, just be specific and precise. Don't use Private Messages.

Jean-Baptiste Kempf
Site Administrator
Site Administrator
Posts: 37523
Joined: 22 Jul 2005 15:29
VLC version: 4.0.0-git
Operating System: Linux, Windows, Mac
Location: Cone, France
Contact:

Re: VC1 Over Transport

Postby Jean-Baptiste Kempf » 20 Jan 2008 19:28

(according to the standard its 0x234)
I couldn't find that... Can you give me the documentation?

I think adding

Code: Select all

case 0x234: pid->es->fmt.i_codec = VLC_FOURCC( 'w','v','c','1' ); break;
Should do the trick.
Jean-Baptiste Kempf
http://www.jbkempf.com/ - http://www.jbkempf.com/blog/category/Videolan
VLC media player developer, VideoLAN President and Sites administrator
If you want an answer to your question, just be specific and precise. Don't use Private Messages.

erezl
New Cone
New Cone
Posts: 7
Joined: 13 Jan 2008 13:30

Re: VC1 Over Transport

Postby erezl » 21 Jan 2008 10:52

Sorry it sould be 234 or 0xEA

See below the relevant section from the standard:

4 MPEG-2 Transport Stream Encoding
For the description of coded bit streams this document follows the conventional approach used by ISO 13818-1.
Data fields are represented using a different font format (e.g. data_element). The bit stream syntax is clearly defined
in separate tables that use a C-like pseudo-code notation to expose the sequential order of data fields in the
stream. These tables are normally followed by precise semantic field definitions.
4.1 SIGNALING OF VC-1 ELEMENTARY STREAMS
MPEG-2 Elementary Streams carrying VC-1 video elementary stream data shall be signaled in a Program Map
Table as defined in ISO 13818-1 with Corrigendum 2 and Amendment 2.
The value of the fields in sections 4.1.1 and 4.1.2 are specified for VC-1 elementary streams. The sub-descriptor
structures introduced in section 4.1.3 through 4.1.5 may only appear in an MPEG-2 Program Element conveying
VC-1 elementary stream data.
4.1.1 Stream Type
The stream_type value in the PMT describing a VC-1 Elementary Stream should be set to 0xEA. This value
indicates that this Elementary Stream is considered to be a privately-managed stream. The scope of this private
value shall be captured by means of the Registration Descriptor defined below.
4.1.2 Registration Descriptor
At least one MPEG-2 registration_descriptor() shall be present in the inner descriptor loop of the MPEG-2 Program
Element listed in the TS_program_map_section corresponding to the VC-1 Elementary Stream. The syntax and
semantics for this descriptor appears in Table 1 and in the subsequent text.
Table 1 Syntax for the registration_descriptor()
Syntax Bits Format
registration_descriptor() {
descriptor_tag 8 0x05
descriptor_length 8 uimsbf
format_identifier 32 0x56432D31
for( i =0; i < K; i++){
subdescriptor() N*8 uimsbf
}
}
descriptor_tag – This 8-bit field shall be set to 0x05 to identify this data structure as an MPEG-2 registration
descriptor.
descriptor_length – This 8-bit field specifies the number of bytes of the descriptor immediately following the
descriptor_length field.
format_identifier – The value for this 32-bit field shall be set to 0x56432D31
subdescriptor() – A data structure of up to 251 bytes of additional information whose syntax is determined in a
case-by-case basis. The first field of a subdescriptor() shall be an 8-bit value known as the subdescriptor_tag which
identifies syntax and semantics for a particular sub-descriptor. Table 2 defines values for the subdescriptor_tag.
Table 2 List of values applicable to the subdescriptor_tag
Assigned Value Description
0x00 Indicates a null sub-descriptor. A null sub-descriptor consists only of an 8-bit
subdescriptor_tag field.
0x01 Profile and Level subdescriptor defined as part of this document.
0x02 Alignment subdescriptor defined as part of this document.
0x03 Buffer size subdescriptor defines as part of this document
0x04 - 0xFE SMPTE Reserved for future applications.
0xFF Indicates a null sub-descriptor. A null sub-descriptor consists only of an 8-bit
subdescriptor_tag field.
In the MPEG-2 Registration Descriptor specified in Table 1 above, the sub-descriptors listed in Table 2 above shall
always appear in increasing order of their subdescriptor_tag value.
Note: Whenever there is a need to add a new sub-descriptor to the list in Table 2 above, it is highly recommended
that the sub-descriptor tag value assigned to the new sub-descriptor be assigned the lowest available tag value.
This constraint added with the aforementioned constraint that the sub-descriptor tag values appear in increasing
order ensures that the most recent sub-descriptors always appear at the bottom of the MPEG-2 Registration
Descriptor defined in Table 1. In the event that a new sub-descriptor is defined, such discipline ensures that the
oldest sub-descriptors always appear at the beginning of the sub-descriptor list and the most recent ones at the
bottom of the list. Consequently, a decoder is always capable of parsing and processing all the sub-descriptors it
knows and if an unknown sub-descriptor is found, that sub-descriptor and subsequent sub-descriptors in the list, if
any, can be ignored.

Jean-Baptiste Kempf
Site Administrator
Site Administrator
Posts: 37523
Joined: 22 Jul 2005 15:29
VLC version: 4.0.0-git
Operating System: Linux, Windows, Mac
Location: Cone, France
Contact:

Re: VC1 Over Transport

Postby Jean-Baptiste Kempf » 21 Jan 2008 18:24

Ok, but can you give me a link to the documentation, pasting here is not good enough... please...
Jean-Baptiste Kempf
http://www.jbkempf.com/ - http://www.jbkempf.com/blog/category/Videolan
VLC media player developer, VideoLAN President and Sites administrator
If you want an answer to your question, just be specific and precise. Don't use Private Messages.

erezl
New Cone
New Cone
Posts: 7
Joined: 13 Jan 2008 13:30

Re: VC1 Over Transport

Postby erezl » 23 Jan 2008 08:09

Hi,

We bought it from SMTE, sorry but I can't publish it in the network.

Jean-Baptiste Kempf
Site Administrator
Site Administrator
Posts: 37523
Joined: 22 Jul 2005 15:29
VLC version: 4.0.0-git
Operating System: Linux, Windows, Mac
Location: Cone, France
Contact:

Re: VC1 Over Transport

Postby Jean-Baptiste Kempf » 23 Jan 2008 09:15

k, fair enough... i'll see what I can do.
Ok, this is too complex for me.

I'll ask gurus.
Jean-Baptiste Kempf
http://www.jbkempf.com/ - http://www.jbkempf.com/blog/category/Videolan
VLC media player developer, VideoLAN President and Sites administrator
If you want an answer to your question, just be specific and precise. Don't use Private Messages.


Return to “General VLC media player Troubleshooting”

Who is online

Users browsing this forum: Google [Bot] and 33 guests