Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
V
vlc-2-2
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Redmine
Redmine
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
videolan
vlc-2-2
Commits
448a2181
Commit
448a2181
authored
Feb 14, 2012
by
Rafaël Carré
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
TS demux: use a static function for debugging
parent
e607f604
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
51 additions
and
79 deletions
+51
-79
modules/demux/ts.c
modules/demux/ts.c
+51
-79
No files found.
modules/demux/ts.c
View file @
448a2181
...
...
@@ -62,6 +62,17 @@
# include <dvbpsi/tot.h>
#undef TS_DEBUG
static
void
ts_debug
(
const
char
*
format
,
...)
{
#ifdef TS_DEBUG
va_list
ap
;
va_start
(
ap
,
format
);
vfprintf
(
stderr
,
format
,
ap
);
va_end
(
ap
);
#else
(
void
)
format
;
#endif
}
/*****************************************************************************
* Module descriptor
...
...
@@ -2355,9 +2366,8 @@ static iod_descriptor_t *IODNew( int i_data, uint8_t *p_data )
if
(
!
p_iod
)
return
NULL
;
memset
(
p_iod
,
0
,
sizeof
(
iod_descriptor_t
)
);
#ifdef TS_DEBUG
fprintf
(
stderr
,
"
\n
************ IOD ************"
);
#endif
ts_debug
(
"
\n
************ IOD ************"
);
for
(
i
=
0
;
i
<
255
;
i
++
)
{
p_iod
->
es_descr
[
i
].
b_ok
=
0
;
...
...
@@ -2384,23 +2394,19 @@ static iod_descriptor_t *IODNew( int i_data, uint8_t *p_data )
p_iod
->
i_iod_label
=
byte2
;
i_iod_tag
=
byte3
;
}
#ifdef TS_DEBUG
fprintf
(
stderr
,
"
\n
* iod_label:%d"
,
p_iod
->
i_iod_label
);
fprintf
(
stderr
,
"
\n
* ==========="
);
fprintf
(
stderr
,
"
\n
* tag:0x%x"
,
i_iod_tag
);
#endif
ts_debug
(
"
\n
* iod_label:%d"
,
p_iod
->
i_iod_label
);
ts_debug
(
"
\n
* ==========="
);
ts_debug
(
"
\n
* tag:0x%x"
,
i_iod_tag
);
if
(
i_iod_tag
!=
0x02
)
{
#ifdef TS_DEBUG
fprintf
(
stderr
,
"
\n
ERR: tag %02x != 0x02"
,
i_iod_tag
);
#endif
ts_debug
(
"
\n
ERR: tag %02x != 0x02"
,
i_iod_tag
);
return
p_iod
;
}
i_iod_length
=
IODDescriptorLength
(
&
i_data
,
&
p_data
);
#ifdef TS_DEBUG
fprintf
(
stderr
,
"
\n
* length:%d"
,
i_iod_length
);
#endif
ts_debug
(
"
\n
* length:%d"
,
i_iod_length
);
if
(
i_iod_length
>
i_data
)
{
i_iod_length
=
i_data
;
...
...
@@ -2410,18 +2416,14 @@ static iod_descriptor_t *IODNew( int i_data, uint8_t *p_data )
i_flags
=
IODGetByte
(
&
i_data
,
&
p_data
);
p_iod
->
i_od_id
|=
i_flags
>>
6
;
b_url
=
(
i_flags
>>
5
)
&
0x01
;
#ifdef TS_DEBUG
fprintf
(
stderr
,
"
\n
* od_id:%d"
,
p_iod
->
i_od_id
);
fprintf
(
stderr
,
"
\n
* url flag:%d"
,
b_url
);
fprintf
(
stderr
,
"
\n
* includeInlineProfileLevel flag:%d"
,
(
i_flags
>>
4
)
&
0x01
);
#endif
ts_debug
(
"
\n
* od_id:%d"
,
p_iod
->
i_od_id
);
ts_debug
(
"
\n
* url flag:%d"
,
b_url
);
ts_debug
(
"
\n
* includeInlineProfileLevel flag:%d"
,
(
i_flags
>>
4
)
&
0x01
);
if
(
b_url
)
{
p_iod
->
psz_url
=
IODGetURL
(
&
i_data
,
&
p_data
);
#ifdef TS_DEBUG
fprintf
(
stderr
,
"
\n
* url string:%s"
,
p_iod
->
psz_url
);
fprintf
(
stderr
,
"
\n
*****************************
\n
"
);
#endif
ts_debug
(
"
\n
* url string:%s"
,
p_iod
->
psz_url
);
ts_debug
(
"
\n
*****************************
\n
"
);
return
p_iod
;
}
else
...
...
@@ -2434,13 +2436,11 @@ static iod_descriptor_t *IODNew( int i_data, uint8_t *p_data )
p_iod
->
i_audioProfileLevelIndication
=
IODGetByte
(
&
i_data
,
&
p_data
);
p_iod
->
i_visualProfileLevelIndication
=
IODGetByte
(
&
i_data
,
&
p_data
);
p_iod
->
i_graphicsProfileLevelIndication
=
IODGetByte
(
&
i_data
,
&
p_data
);
#ifdef TS_DEBUG
fprintf
(
stderr
,
"
\n
* ODProfileLevelIndication:%d"
,
p_iod
->
i_ODProfileLevelIndication
);
fprintf
(
stderr
,
"
\n
* sceneProfileLevelIndication:%d"
,
p_iod
->
i_sceneProfileLevelIndication
);
fprintf
(
stderr
,
"
\n
* audioProfileLevelIndication:%d"
,
p_iod
->
i_audioProfileLevelIndication
);
fprintf
(
stderr
,
"
\n
* visualProfileLevelIndication:%d"
,
p_iod
->
i_visualProfileLevelIndication
);
fprintf
(
stderr
,
"
\n
* graphicsProfileLevelIndication:%d"
,
p_iod
->
i_graphicsProfileLevelIndication
);
#endif
ts_debug
(
"
\n
* ODProfileLevelIndication:%d"
,
p_iod
->
i_ODProfileLevelIndication
);
ts_debug
(
"
\n
* sceneProfileLevelIndication:%d"
,
p_iod
->
i_sceneProfileLevelIndication
);
ts_debug
(
"
\n
* audioProfileLevelIndication:%d"
,
p_iod
->
i_audioProfileLevelIndication
);
ts_debug
(
"
\n
* visualProfileLevelIndication:%d"
,
p_iod
->
i_visualProfileLevelIndication
);
ts_debug
(
"
\n
* graphicsProfileLevelIndication:%d"
,
p_iod
->
i_graphicsProfileLevelIndication
);
while
(
i_data
>
0
&&
i_es_index
<
255
)
{
...
...
@@ -2462,9 +2462,7 @@ static iod_descriptor_t *IODNew( int i_data, uint8_t *p_data )
{
#define es_descr p_iod->es_descr[i_es_index]
int
i_decoderConfigDescr_length
;
#ifdef TS_DEBUG
fprintf
(
stderr
,
"
\n
* - ES_Descriptor length:%d"
,
i_length
);
#endif
ts_debug
(
"
\n
* - ES_Descriptor length:%d"
,
i_length
);
es_descr
.
b_ok
=
1
;
es_descr
.
i_es_id
=
IODGetWord
(
&
i_data
,
&
p_data
);
...
...
@@ -2473,25 +2471,19 @@ static iod_descriptor_t *IODNew( int i_data, uint8_t *p_data )
b_url
=
(
i_flags
>>
6
)
&
0x01
;
es_descr
.
b_OCRStreamFlag
=
(
i_flags
>>
5
)
&
0x01
;
es_descr
.
i_streamPriority
=
i_flags
&
0x1f
;
#ifdef TS_DEBUG
fprintf
(
stderr
,
"
\n
* * streamDependenceFlag:%d"
,
es_descr
.
b_streamDependenceFlag
);
fprintf
(
stderr
,
"
\n
* * OCRStreamFlag:%d"
,
es_descr
.
b_OCRStreamFlag
);
fprintf
(
stderr
,
"
\n
* * streamPriority:%d"
,
es_descr
.
i_streamPriority
);
#endif
ts_debug
(
"
\n
* * streamDependenceFlag:%d"
,
es_descr
.
b_streamDependenceFlag
);
ts_debug
(
"
\n
* * OCRStreamFlag:%d"
,
es_descr
.
b_OCRStreamFlag
);
ts_debug
(
"
\n
* * streamPriority:%d"
,
es_descr
.
i_streamPriority
);
if
(
es_descr
.
b_streamDependenceFlag
)
{
es_descr
.
i_dependOn_es_id
=
IODGetWord
(
&
i_data
,
&
p_data
);
#ifdef TS_DEBUG
fprintf
(
stderr
,
"
\n
* * dependOn_es_id:%d"
,
es_descr
.
i_dependOn_es_id
);
#endif
ts_debug
(
"
\n
* * dependOn_es_id:%d"
,
es_descr
.
i_dependOn_es_id
);
}
if
(
b_url
)
{
es_descr
.
psz_url
=
IODGetURL
(
&
i_data
,
&
p_data
);
#ifdef TS_DEBUG
fprintf
(
stderr
,
"
\n
* url string:%s"
,
es_descr
.
psz_url
);
#endif
ts_debug
(
"
\n
* url string:%s"
,
es_descr
.
psz_url
);
}
else
{
...
...
@@ -2501,23 +2493,17 @@ static iod_descriptor_t *IODNew( int i_data, uint8_t *p_data )
if
(
es_descr
.
b_OCRStreamFlag
)
{
es_descr
.
i_OCR_es_id
=
IODGetWord
(
&
i_data
,
&
p_data
);
#ifdef TS_DEBUG
fprintf
(
stderr
,
"
\n
* * OCR_es_id:%d"
,
es_descr
.
i_OCR_es_id
);
#endif
ts_debug
(
"
\n
* * OCR_es_id:%d"
,
es_descr
.
i_OCR_es_id
);
}
if
(
IODGetByte
(
&
i_data
,
&
p_data
)
!=
0x04
)
{
#ifdef TS_DEBUG
fprintf
(
stderr
,
"
\n
* ERR missing DecoderConfigDescr"
);
#endif
ts_debug
(
"
\n
* ERR missing DecoderConfigDescr"
);
es_descr
.
b_ok
=
0
;
break
;
}
i_decoderConfigDescr_length
=
IODDescriptorLength
(
&
i_data
,
&
p_data
);
#ifdef TS_DEBUG
fprintf
(
stderr
,
"
\n
* - DecoderConfigDesc length:%d"
,
i_decoderConfigDescr_length
);
#endif
ts_debug
(
"
\n
* - DecoderConfigDesc length:%d"
,
i_decoderConfigDescr_length
);
#define dec_descr es_descr.dec_descr
dec_descr
.
i_objectTypeIndication
=
IODGetByte
(
&
i_data
,
&
p_data
);
i_flags
=
IODGetByte
(
&
i_data
,
&
p_data
);
...
...
@@ -2526,14 +2512,12 @@ static iod_descriptor_t *IODNew( int i_data, uint8_t *p_data )
dec_descr
.
i_bufferSizeDB
=
IODGet3Bytes
(
&
i_data
,
&
p_data
);
dec_descr
.
i_maxBitrate
=
IODGetDWord
(
&
i_data
,
&
p_data
);
dec_descr
.
i_avgBitrate
=
IODGetDWord
(
&
i_data
,
&
p_data
);
#ifdef TS_DEBUG
fprintf
(
stderr
,
"
\n
* * objectTypeIndication:0x%x"
,
dec_descr
.
i_objectTypeIndication
);
fprintf
(
stderr
,
"
\n
* * streamType:0x%x"
,
dec_descr
.
i_streamType
);
fprintf
(
stderr
,
"
\n
* * upStream:%d"
,
dec_descr
.
b_upStream
);
fprintf
(
stderr
,
"
\n
* * bufferSizeDB:%d"
,
dec_descr
.
i_bufferSizeDB
);
fprintf
(
stderr
,
"
\n
* * maxBitrate:%d"
,
dec_descr
.
i_maxBitrate
);
fprintf
(
stderr
,
"
\n
* * avgBitrate:%d"
,
dec_descr
.
i_avgBitrate
);
#endif
ts_debug
(
"
\n
* * objectTypeIndication:0x%x"
,
dec_descr
.
i_objectTypeIndication
);
ts_debug
(
"
\n
* * streamType:0x%x"
,
dec_descr
.
i_streamType
);
ts_debug
(
"
\n
* * upStream:%d"
,
dec_descr
.
b_upStream
);
ts_debug
(
"
\n
* * bufferSizeDB:%d"
,
dec_descr
.
i_bufferSizeDB
);
ts_debug
(
"
\n
* * maxBitrate:%d"
,
dec_descr
.
i_maxBitrate
);
ts_debug
(
"
\n
* * avgBitrate:%d"
,
dec_descr
.
i_avgBitrate
);
if
(
i_decoderConfigDescr_length
>
13
&&
IODGetByte
(
&
i_data
,
&
p_data
)
==
0x05
)
{
int
i
;
...
...
@@ -2563,20 +2547,14 @@ static iod_descriptor_t *IODNew( int i_data, uint8_t *p_data )
if
(
IODGetByte
(
&
i_data
,
&
p_data
)
!=
0x06
)
{
#ifdef TS_DEBUG
fprintf
(
stderr
,
"
\n
* ERR missing SLConfigDescr"
);
#endif
ts_debug
(
"
\n
* ERR missing SLConfigDescr"
);
es_descr
.
b_ok
=
0
;
break
;
}
i_SLConfigDescr_length
=
IODDescriptorLength
(
&
i_data
,
&
p_data
);
#ifdef TS_DEBUG
fprintf
(
stderr
,
"
\n
* - SLConfigDescr length:%d"
,
i_SLConfigDescr_length
);
#endif
ts_debug
(
"
\n
* - SLConfigDescr length:%d"
,
i_SLConfigDescr_length
);
i_predefined
=
IODGetByte
(
&
i_data
,
&
p_data
);
#ifdef TS_DEBUG
fprintf
(
stderr
,
"
\n
* * i_predefined:0x%x"
,
i_predefined
);
#endif
ts_debug
(
"
\n
* * i_predefined:0x%x"
,
i_predefined
);
switch
(
i_predefined
)
{
case
0x01
:
...
...
@@ -2612,9 +2590,7 @@ static iod_descriptor_t *IODNew( int i_data, uint8_t *p_data )
}
break
;
default:
#ifdef TS_DEBUG
fprintf
(
stderr
,
"
\n
* ERR unsupported SLConfigDescr predefined"
);
#endif
ts_debug
(
"
\n
* ERR unsupported SLConfigDescr predefined"
);
es_descr
.
b_ok
=
0
;
break
;
}
...
...
@@ -2623,9 +2599,7 @@ static iod_descriptor_t *IODNew( int i_data, uint8_t *p_data )
#undef sl_descr
#undef es_descr
default:
#ifdef TS_DEBUG
fprintf
(
stderr
,
"
\n
* - OD tag:0x%x length:%d (Unsupported)"
,
i_tag
,
i_length
);
#endif
ts_debug
(
"
\n
* - OD tag:0x%x length:%d (Unsupported)"
,
i_tag
,
i_length
);
break
;
}
...
...
@@ -2633,9 +2607,7 @@ static iod_descriptor_t *IODNew( int i_data, uint8_t *p_data )
i_data
=
i_data_sav
-
i_length
;
i_es_index
++
;
}
#ifdef TS_DEBUG
fprintf
(
stderr
,
"
\n
*****************************
\n
"
);
#endif
ts_debug
(
"
\n
*****************************
\n
"
);
return
p_iod
;
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment