Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in / Register
Toggle navigation
F
ffmpeg.wasm-core
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Linshizhi
ffmpeg.wasm-core
Commits
45a8a02a
Commit
45a8a02a
authored
Mar 15, 2011
by
Anton Khirnov
Committed by
Ronald S. Bultje
Mar 17, 2011
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
lavf: replace avio_seek(SEEK_CUR) with avio_skip where it makes sense
Signed-off-by:
Ronald S. Bultje
<
rsbultje@gmail.com
>
parent
cbf5d22d
Show whitespace changes
Inline
Side-by-side
Showing
76 changed files
with
348 additions
and
348 deletions
+348
-348
4xm.c
libavformat/4xm.c
+3
-3
aea.c
libavformat/aea.c
+2
-2
aiffdec.c
libavformat/aiffdec.c
+4
-4
anm.c
libavformat/anm.c
+8
-8
ape.c
libavformat/ape.c
+3
-3
asfdec.c
libavformat/asfdec.c
+18
-18
au.c
libavformat/au.c
+1
-1
avidec.c
libavformat/avidec.c
+24
-24
avienc.c
libavformat/avienc.c
+3
-3
avs.c
libavformat/avs.c
+2
-2
bethsoftvid.c
libavformat/bethsoftvid.c
+1
-1
bfi.c
libavformat/bfi.c
+3
-3
bink.c
libavformat/bink.c
+4
-4
c93.c
libavformat/c93.c
+1
-1
cafdec.c
libavformat/cafdec.c
+8
-8
dxa.c
libavformat/dxa.c
+2
-2
eacdata.c
libavformat/eacdata.c
+1
-1
electronicarts.c
libavformat/electronicarts.c
+9
-9
ffmdec.c
libavformat/ffmdec.c
+1
-1
filmstripdec.c
libavformat/filmstripdec.c
+2
-2
flacdec.c
libavformat/flacdec.c
+1
-1
flic.c
libavformat/flic.c
+2
-2
flvdec.c
libavformat/flvdec.c
+9
-9
flvenc.c
libavformat/flvenc.c
+2
-2
gxf.c
libavformat/gxf.c
+14
-14
id3v2.c
libavformat/id3v2.c
+5
-5
idcin.c
libavformat/idcin.c
+1
-1
idroqdec.c
libavformat/idroqdec.c
+2
-2
iff.c
libavformat/iff.c
+7
-7
ingenientdec.c
libavformat/ingenientdec.c
+3
-3
ipmovie.c
libavformat/ipmovie.c
+12
-12
iv8.c
libavformat/iv8.c
+1
-1
lmlm4.c
libavformat/lmlm4.c
+1
-1
lxfdec.c
libavformat/lxfdec.c
+3
-3
matroskadec.c
libavformat/matroskadec.c
+3
-3
mm.c
libavformat/mm.c
+2
-2
mmf.c
libavformat/mmf.c
+2
-2
mov.c
libavformat/mov.c
+18
-18
mp3dec.c
libavformat/mp3dec.c
+1
-1
mpc8.c
libavformat/mpc8.c
+2
-2
mpeg.c
libavformat/mpeg.c
+9
-9
mpegts.c
libavformat/mpegts.c
+1
-1
msnwc_tcp.c
libavformat/msnwc_tcp.c
+6
-6
mtv.c
libavformat/mtv.c
+4
-4
mxfdec.c
libavformat/mxfdec.c
+11
-11
ncdec.c
libavformat/ncdec.c
+1
-1
nsvdec.c
libavformat/nsvdec.c
+1
-1
nutdec.c
libavformat/nutdec.c
+2
-2
nuv.c
libavformat/nuv.c
+14
-14
pva.c
libavformat/pva.c
+1
-1
qcp.c
libavformat/qcp.c
+7
-7
r3d.c
libavformat/r3d.c
+3
-3
rdt.c
libavformat/rdt.c
+3
-3
riff.c
libavformat/riff.c
+2
-2
rl2.c
libavformat/rl2.c
+1
-1
rmdec.c
libavformat/rmdec.c
+11
-11
rtpdec_asf.c
libavformat/rtpdec_asf.c
+5
-5
rtpdec_qt.c
libavformat/rtpdec_qt.c
+2
-2
sauce.c
libavformat/sauce.c
+2
-2
siff.c
libavformat/siff.c
+5
-5
soxdec.c
libavformat/soxdec.c
+3
-3
spdifdec.c
libavformat/spdifdec.c
+1
-1
swfdec.c
libavformat/swfdec.c
+3
-3
tmv.c
libavformat/tmv.c
+1
-1
tta.c
libavformat/tta.c
+3
-3
txd.c
libavformat/txd.c
+1
-1
vc1test.c
libavformat/vc1test.c
+1
-1
vocdec.c
libavformat/vocdec.c
+4
-4
vqf.c
libavformat/vqf.c
+3
-3
wav.c
libavformat/wav.c
+5
-5
wc3movie.c
libavformat/wc3movie.c
+4
-4
westwood.c
libavformat/westwood.c
+3
-3
wtv.c
libavformat/wtv.c
+27
-27
wv.c
libavformat/wv.c
+3
-3
xa.c
libavformat/xa.c
+2
-2
yop.c
libavformat/yop.c
+2
-2
No files found.
libavformat/4xm.c
View file @
45a8a02a
...
@@ -106,7 +106,7 @@ static int fourxm_read_header(AVFormatContext *s,
...
@@ -106,7 +106,7 @@ static int fourxm_read_header(AVFormatContext *s,
fourxm
->
fps
=
1
.
0
;
fourxm
->
fps
=
1
.
0
;
/* skip the first 3 32-bit numbers */
/* skip the first 3 32-bit numbers */
avio_s
eek
(
pb
,
12
,
SEEK_CUR
);
avio_s
kip
(
pb
,
12
);
/* check for LIST-HEAD */
/* check for LIST-HEAD */
GET_LIST_HEADER
();
GET_LIST_HEADER
();
...
@@ -322,12 +322,12 @@ static int fourxm_read_packet(AVFormatContext *s,
...
@@ -322,12 +322,12 @@ static int fourxm_read_packet(AVFormatContext *s,
fourxm
->
tracks
[
track_number
].
audio_pts
+=
audio_frame_count
;
fourxm
->
tracks
[
track_number
].
audio_pts
+=
audio_frame_count
;
}
else
{
}
else
{
avio_s
eek
(
pb
,
size
,
SEEK_CUR
);
avio_s
kip
(
pb
,
size
);
}
}
break
;
break
;
default:
default:
avio_s
eek
(
pb
,
size
,
SEEK_CUR
);
avio_s
kip
(
pb
,
size
);
break
;
break
;
}
}
}
}
...
...
libavformat/aea.c
View file @
45a8a02a
...
@@ -62,9 +62,9 @@ static int aea_read_header(AVFormatContext *s,
...
@@ -62,9 +62,9 @@ static int aea_read_header(AVFormatContext *s,
return
AVERROR
(
ENOMEM
);
return
AVERROR
(
ENOMEM
);
/* Parse the amount of channels and skip to pos 2048(0x800) */
/* Parse the amount of channels and skip to pos 2048(0x800) */
avio_s
eek
(
s
->
pb
,
264
,
SEEK_CUR
);
avio_s
kip
(
s
->
pb
,
264
);
st
->
codec
->
channels
=
avio_r8
(
s
->
pb
);
st
->
codec
->
channels
=
avio_r8
(
s
->
pb
);
avio_s
eek
(
s
->
pb
,
1783
,
SEEK_CUR
);
avio_s
kip
(
s
->
pb
,
1783
);
st
->
codec
->
codec_type
=
AVMEDIA_TYPE_AUDIO
;
st
->
codec
->
codec_type
=
AVMEDIA_TYPE_AUDIO
;
...
...
libavformat/aiffdec.c
View file @
45a8a02a
...
@@ -70,7 +70,7 @@ static void get_meta(AVFormatContext *s, const char *key, int size)
...
@@ -70,7 +70,7 @@ static void get_meta(AVFormatContext *s, const char *key, int size)
int
res
;
int
res
;
if
(
!
str
)
{
if
(
!
str
)
{
avio_s
eek
(
s
->
pb
,
size
,
SEEK_CUR
);
avio_s
kip
(
s
->
pb
,
size
);
return
;
return
;
}
}
...
@@ -152,7 +152,7 @@ static unsigned int get_aiff_header(AVIOContext *pb, AVCodecContext *codec,
...
@@ -152,7 +152,7 @@ static unsigned int get_aiff_header(AVIOContext *pb, AVCodecContext *codec,
/* Chunk is over */
/* Chunk is over */
if
(
size
)
if
(
size
)
avio_s
eek
(
pb
,
size
,
SEEK_CUR
);
avio_s
kip
(
pb
,
size
);
return
num_frames
;
return
num_frames
;
}
}
...
@@ -242,7 +242,7 @@ static int aiff_read_header(AVFormatContext *s,
...
@@ -242,7 +242,7 @@ static int aiff_read_header(AVFormatContext *s,
av_log
(
s
,
AV_LOG_ERROR
,
"file is not seekable
\n
"
);
av_log
(
s
,
AV_LOG_ERROR
,
"file is not seekable
\n
"
);
return
-
1
;
return
-
1
;
}
}
avio_s
eek
(
pb
,
size
-
8
,
SEEK_CUR
);
avio_s
kip
(
pb
,
size
-
8
);
break
;
break
;
case
MKTAG
(
'w'
,
'a'
,
'v'
,
'e'
):
case
MKTAG
(
'w'
,
'a'
,
'v'
,
'e'
):
if
((
uint64_t
)
size
>
(
1
<<
30
))
if
((
uint64_t
)
size
>
(
1
<<
30
))
...
@@ -256,7 +256,7 @@ static int aiff_read_header(AVFormatContext *s,
...
@@ -256,7 +256,7 @@ static int aiff_read_header(AVFormatContext *s,
default:
/* Jump */
default:
/* Jump */
if
(
size
&
1
)
/* Always even aligned */
if
(
size
&
1
)
/* Always even aligned */
size
++
;
size
++
;
avio_s
eek
(
pb
,
size
,
SEEK_CUR
);
avio_s
kip
(
pb
,
size
);
}
}
}
}
...
...
libavformat/anm.c
View file @
45a8a02a
...
@@ -83,7 +83,7 @@ static int read_header(AVFormatContext *s,
...
@@ -83,7 +83,7 @@ static int read_header(AVFormatContext *s,
AVStream
*
st
;
AVStream
*
st
;
int
i
,
ret
;
int
i
,
ret
;
avio_s
eek
(
pb
,
4
,
SEEK_CUR
);
/* magic number */
avio_s
kip
(
pb
,
4
);
/* magic number */
if
(
avio_rl16
(
pb
)
!=
MAX_PAGES
)
{
if
(
avio_rl16
(
pb
)
!=
MAX_PAGES
)
{
av_log_ask_for_sample
(
s
,
"max_pages != "
AV_STRINGIFY
(
MAX_PAGES
)
"
\n
"
);
av_log_ask_for_sample
(
s
,
"max_pages != "
AV_STRINGIFY
(
MAX_PAGES
)
"
\n
"
);
return
AVERROR_INVALIDDATA
;
return
AVERROR_INVALIDDATA
;
...
@@ -91,7 +91,7 @@ static int read_header(AVFormatContext *s,
...
@@ -91,7 +91,7 @@ static int read_header(AVFormatContext *s,
anm
->
nb_pages
=
avio_rl16
(
pb
);
anm
->
nb_pages
=
avio_rl16
(
pb
);
anm
->
nb_records
=
avio_rl32
(
pb
);
anm
->
nb_records
=
avio_rl32
(
pb
);
avio_s
eek
(
pb
,
2
,
SEEK_CUR
);
/* max records per page */
avio_s
kip
(
pb
,
2
);
/* max records per page */
anm
->
page_table_offset
=
avio_rl16
(
pb
);
anm
->
page_table_offset
=
avio_rl16
(
pb
);
if
(
avio_rl32
(
pb
)
!=
ANIM_TAG
)
if
(
avio_rl32
(
pb
)
!=
ANIM_TAG
)
return
AVERROR_INVALIDDATA
;
return
AVERROR_INVALIDDATA
;
...
@@ -107,13 +107,13 @@ static int read_header(AVFormatContext *s,
...
@@ -107,13 +107,13 @@ static int read_header(AVFormatContext *s,
st
->
codec
->
height
=
avio_rl16
(
pb
);
st
->
codec
->
height
=
avio_rl16
(
pb
);
if
(
avio_r8
(
pb
)
!=
0
)
if
(
avio_r8
(
pb
)
!=
0
)
goto
invalid
;
goto
invalid
;
avio_s
eek
(
pb
,
1
,
SEEK_CUR
);
/* frame rate multiplier info */
avio_s
kip
(
pb
,
1
);
/* frame rate multiplier info */
/* ignore last delta record (used for looping) */
/* ignore last delta record (used for looping) */
if
(
avio_r8
(
pb
))
/* has_last_delta */
if
(
avio_r8
(
pb
))
/* has_last_delta */
anm
->
nb_records
=
FFMAX
(
anm
->
nb_records
-
1
,
0
);
anm
->
nb_records
=
FFMAX
(
anm
->
nb_records
-
1
,
0
);
avio_s
eek
(
pb
,
1
,
SEEK_CUR
);
/* last_delta_valid */
avio_s
kip
(
pb
,
1
);
/* last_delta_valid */
if
(
avio_r8
(
pb
)
!=
0
)
if
(
avio_r8
(
pb
)
!=
0
)
goto
invalid
;
goto
invalid
;
...
@@ -121,15 +121,15 @@ static int read_header(AVFormatContext *s,
...
@@ -121,15 +121,15 @@ static int read_header(AVFormatContext *s,
if
(
avio_r8
(
pb
)
!=
1
)
if
(
avio_r8
(
pb
)
!=
1
)
goto
invalid
;
goto
invalid
;
avio_s
eek
(
pb
,
1
,
SEEK_CUR
);
/* other recs per frame */
avio_s
kip
(
pb
,
1
);
/* other recs per frame */
if
(
avio_r8
(
pb
)
!=
1
)
if
(
avio_r8
(
pb
)
!=
1
)
goto
invalid
;
goto
invalid
;
avio_s
eek
(
pb
,
32
,
SEEK_CUR
);
/* record_types */
avio_s
kip
(
pb
,
32
);
/* record_types */
st
->
nb_frames
=
avio_rl32
(
pb
);
st
->
nb_frames
=
avio_rl32
(
pb
);
av_set_pts_info
(
st
,
64
,
1
,
avio_rl16
(
pb
));
av_set_pts_info
(
st
,
64
,
1
,
avio_rl16
(
pb
));
avio_s
eek
(
pb
,
58
,
SEEK_CUR
);
avio_s
kip
(
pb
,
58
);
/* color cycling and palette data */
/* color cycling and palette data */
st
->
codec
->
extradata_size
=
16
*
8
+
4
*
256
;
st
->
codec
->
extradata_size
=
16
*
8
+
4
*
256
;
...
@@ -193,7 +193,7 @@ repeat:
...
@@ -193,7 +193,7 @@ repeat:
/* parse page header */
/* parse page header */
if
(
anm
->
record
<
0
)
{
if
(
anm
->
record
<
0
)
{
avio_seek
(
pb
,
anm
->
page_table_offset
+
MAX_PAGES
*
6
+
(
anm
->
page
<<
16
),
SEEK_SET
);
avio_seek
(
pb
,
anm
->
page_table_offset
+
MAX_PAGES
*
6
+
(
anm
->
page
<<
16
),
SEEK_SET
);
avio_s
eek
(
pb
,
8
+
2
*
p
->
nb_records
,
SEEK_CUR
);
avio_s
kip
(
pb
,
8
+
2
*
p
->
nb_records
);
anm
->
record
=
0
;
anm
->
record
=
0
;
}
}
...
...
libavformat/ape.c
View file @
45a8a02a
...
@@ -187,7 +187,7 @@ static int ape_read_header(AVFormatContext * s, AVFormatParameters * ap)
...
@@ -187,7 +187,7 @@ static int ape_read_header(AVFormatContext * s, AVFormatParameters * ap)
/* Skip any unknown bytes at the end of the descriptor.
/* Skip any unknown bytes at the end of the descriptor.
This is for future compatibility */
This is for future compatibility */
if
(
ape
->
descriptorlength
>
52
)
if
(
ape
->
descriptorlength
>
52
)
avio_s
eek
(
pb
,
ape
->
descriptorlength
-
52
,
SEEK_CUR
);
avio_s
kip
(
pb
,
ape
->
descriptorlength
-
52
);
/* Read header data */
/* Read header data */
ape
->
compressiontype
=
avio_rl16
(
pb
);
ape
->
compressiontype
=
avio_rl16
(
pb
);
...
@@ -212,7 +212,7 @@ static int ape_read_header(AVFormatContext * s, AVFormatParameters * ap)
...
@@ -212,7 +212,7 @@ static int ape_read_header(AVFormatContext * s, AVFormatParameters * ap)
ape
->
finalframeblocks
=
avio_rl32
(
pb
);
ape
->
finalframeblocks
=
avio_rl32
(
pb
);
if
(
ape
->
formatflags
&
MAC_FORMAT_FLAG_HAS_PEAK_LEVEL
)
{
if
(
ape
->
formatflags
&
MAC_FORMAT_FLAG_HAS_PEAK_LEVEL
)
{
avio_s
eek
(
pb
,
4
,
SEEK_CUR
);
/* Skip the peak level */
avio_s
kip
(
pb
,
4
);
/* Skip the peak level */
ape
->
headerlength
+=
4
;
ape
->
headerlength
+=
4
;
}
}
...
@@ -239,7 +239,7 @@ static int ape_read_header(AVFormatContext * s, AVFormatParameters * ap)
...
@@ -239,7 +239,7 @@ static int ape_read_header(AVFormatContext * s, AVFormatParameters * ap)
/* Skip any stored wav header */
/* Skip any stored wav header */
if
(
!
(
ape
->
formatflags
&
MAC_FORMAT_FLAG_CREATE_WAV_HEADER
))
if
(
!
(
ape
->
formatflags
&
MAC_FORMAT_FLAG_CREATE_WAV_HEADER
))
avio_s
eek
(
pb
,
ape
->
wavheaderlength
,
SEEK_CUR
);
avio_s
kip
(
pb
,
ape
->
wavheaderlength
);
}
}
if
(
!
ape
->
totalframes
){
if
(
!
ape
->
totalframes
){
...
...
libavformat/asfdec.c
View file @
45a8a02a
...
@@ -350,7 +350,7 @@ static int asf_read_stream_properties(AVFormatContext *s, int64_t size)
...
@@ -350,7 +350,7 @@ static int asf_read_stream_properties(AVFormatContext *s, int64_t size)
avio_rl16
(
pb
);
/* panes */
avio_rl16
(
pb
);
/* panes */
st
->
codec
->
bits_per_coded_sample
=
avio_rl16
(
pb
);
/* depth */
st
->
codec
->
bits_per_coded_sample
=
avio_rl16
(
pb
);
/* depth */
tag1
=
avio_rl32
(
pb
);
tag1
=
avio_rl32
(
pb
);
avio_s
eek
(
pb
,
20
,
SEEK_CUR
);
avio_s
kip
(
pb
,
20
);
// av_log(s, AV_LOG_DEBUG, "size:%d tsize:%d sizeX:%d\n", size, total_size, sizeX);
// av_log(s, AV_LOG_DEBUG, "size:%d tsize:%d sizeX:%d\n", size, total_size, sizeX);
if
(
sizeX
>
40
)
{
if
(
sizeX
>
40
)
{
st
->
codec
->
extradata_size
=
sizeX
-
40
;
st
->
codec
->
extradata_size
=
sizeX
-
40
;
...
@@ -388,7 +388,7 @@ static int asf_read_stream_properties(AVFormatContext *s, int64_t size)
...
@@ -388,7 +388,7 @@ static int asf_read_stream_properties(AVFormatContext *s, int64_t size)
st
->
need_parsing
=
AVSTREAM_PARSE_FULL_ONCE
;
st
->
need_parsing
=
AVSTREAM_PARSE_FULL_ONCE
;
}
}
pos2
=
avio_tell
(
pb
);
pos2
=
avio_tell
(
pb
);
avio_s
eek
(
pb
,
size
-
(
pos2
-
pos1
+
24
),
SEEK_CUR
);
avio_s
kip
(
pb
,
size
-
(
pos2
-
pos1
+
24
)
);
return
0
;
return
0
;
}
}
...
@@ -428,14 +428,14 @@ static int asf_read_ext_stream_properties(AVFormatContext *s, int64_t size)
...
@@ -428,14 +428,14 @@ static int asf_read_ext_stream_properties(AVFormatContext *s, int64_t size)
for
(
i
=
0
;
i
<
stream_ct
;
i
++
){
for
(
i
=
0
;
i
<
stream_ct
;
i
++
){
avio_rl16
(
pb
);
avio_rl16
(
pb
);
ext_len
=
avio_rl16
(
pb
);
ext_len
=
avio_rl16
(
pb
);
avio_s
eek
(
pb
,
ext_len
,
SEEK_CUR
);
avio_s
kip
(
pb
,
ext_len
);
}
}
for
(
i
=
0
;
i
<
payload_ext_ct
;
i
++
){
for
(
i
=
0
;
i
<
payload_ext_ct
;
i
++
){
ff_get_guid
(
pb
,
&
g
);
ff_get_guid
(
pb
,
&
g
);
ext_d
=
avio_rl16
(
pb
);
ext_d
=
avio_rl16
(
pb
);
ext_len
=
avio_rl32
(
pb
);
ext_len
=
avio_rl32
(
pb
);
avio_s
eek
(
pb
,
ext_len
,
SEEK_CUR
);
avio_s
kip
(
pb
,
ext_len
);
}
}
return
0
;
return
0
;
...
@@ -455,7 +455,7 @@ static int asf_read_content_desc(AVFormatContext *s, int64_t size)
...
@@ -455,7 +455,7 @@ static int asf_read_content_desc(AVFormatContext *s, int64_t size)
get_tag
(
s
,
"author"
,
0
,
len2
);
get_tag
(
s
,
"author"
,
0
,
len2
);
get_tag
(
s
,
"copyright"
,
0
,
len3
);
get_tag
(
s
,
"copyright"
,
0
,
len3
);
get_tag
(
s
,
"comment"
,
0
,
len4
);
get_tag
(
s
,
"comment"
,
0
,
len4
);
avio_s
eek
(
pb
,
len5
,
SEEK_CUR
);
avio_s
kip
(
pb
,
len5
);
return
0
;
return
0
;
}
}
...
@@ -475,7 +475,7 @@ static int asf_read_ext_content_desc(AVFormatContext *s, int64_t size)
...
@@ -475,7 +475,7 @@ static int asf_read_ext_content_desc(AVFormatContext *s, int64_t size)
if
(
name_len
%
2
)
// must be even, broken lavf versions wrote len-1
if
(
name_len
%
2
)
// must be even, broken lavf versions wrote len-1
name_len
+=
1
;
name_len
+=
1
;
if
((
ret
=
avio_get_str16le
(
pb
,
name_len
,
name
,
sizeof
(
name
)))
<
name_len
)
if
((
ret
=
avio_get_str16le
(
pb
,
name_len
,
name
,
sizeof
(
name
)))
<
name_len
)
avio_s
eek
(
pb
,
name_len
-
ret
,
SEEK_CUR
);
avio_s
kip
(
pb
,
name_len
-
ret
);
value_type
=
avio_rl16
(
pb
);
value_type
=
avio_rl16
(
pb
);
value_len
=
avio_rl16
(
pb
);
value_len
=
avio_rl16
(
pb
);
if
(
!
value_type
&&
value_len
%
2
)
if
(
!
value_type
&&
value_len
%
2
)
...
@@ -505,7 +505,7 @@ static int asf_read_language_list(AVFormatContext *s, int64_t size)
...
@@ -505,7 +505,7 @@ static int asf_read_language_list(AVFormatContext *s, int64_t size)
char
lang
[
6
];
char
lang
[
6
];
unsigned
int
lang_len
=
avio_r8
(
pb
);
unsigned
int
lang_len
=
avio_r8
(
pb
);
if
((
ret
=
avio_get_str16le
(
pb
,
lang_len
,
lang
,
sizeof
(
lang
)))
<
lang_len
)
if
((
ret
=
avio_get_str16le
(
pb
,
lang_len
,
lang
,
sizeof
(
lang
)))
<
lang_len
)
avio_s
eek
(
pb
,
lang_len
-
ret
,
SEEK_CUR
);
avio_s
kip
(
pb
,
lang_len
-
ret
);
if
(
j
<
128
)
if
(
j
<
128
)
av_strlcpy
(
asf
->
stream_languages
[
j
],
lang
,
sizeof
(
*
asf
->
stream_languages
));
av_strlcpy
(
asf
->
stream_languages
[
j
],
lang
,
sizeof
(
*
asf
->
stream_languages
));
}
}
...
@@ -531,10 +531,10 @@ static int asf_read_metadata(AVFormatContext *s, int64_t size)
...
@@ -531,10 +531,10 @@ static int asf_read_metadata(AVFormatContext *s, int64_t size)
value_len
=
avio_rl32
(
pb
);
value_len
=
avio_rl32
(
pb
);
if
((
ret
=
avio_get_str16le
(
pb
,
name_len
,
name
,
sizeof
(
name
)))
<
name_len
)
if
((
ret
=
avio_get_str16le
(
pb
,
name_len
,
name
,
sizeof
(
name
)))
<
name_len
)
avio_s
eek
(
pb
,
name_len
-
ret
,
SEEK_CUR
);
avio_s
kip
(
pb
,
name_len
-
ret
);
//av_log(s, AV_LOG_ERROR, "%d %d %d %d %d <%s>\n", i, stream_num, name_len, value_type, value_len, name);
//av_log(s, AV_LOG_ERROR, "%d %d %d %d %d <%s>\n", i, stream_num, name_len, value_type, value_len, name);
value_num
=
avio_rl16
(
pb
);
//we should use get_value() here but it does not work 2 is le16 here but le32 elsewhere
value_num
=
avio_rl16
(
pb
);
//we should use get_value() here but it does not work 2 is le16 here but le32 elsewhere
avio_s
eek
(
pb
,
value_len
-
2
,
SEEK_CUR
);
avio_s
kip
(
pb
,
value_len
-
2
);
if
(
stream_num
<
128
){
if
(
stream_num
<
128
){
if
(
!
strcmp
(
name
,
"AspectRatioX"
))
asf
->
dar
[
stream_num
].
num
=
value_num
;
if
(
!
strcmp
(
name
,
"AspectRatioX"
))
asf
->
dar
[
stream_num
].
num
=
value_num
;
...
@@ -571,7 +571,7 @@ static int asf_read_marker(AVFormatContext *s, int64_t size)
...
@@ -571,7 +571,7 @@ static int asf_read_marker(AVFormatContext *s, int64_t size)
avio_rl32
(
pb
);
// flags
avio_rl32
(
pb
);
// flags
name_len
=
avio_rl32
(
pb
);
// name length
name_len
=
avio_rl32
(
pb
);
// name length
if
((
ret
=
avio_get_str16le
(
pb
,
name_len
*
2
,
name
,
sizeof
(
name
)))
<
name_len
)
if
((
ret
=
avio_get_str16le
(
pb
,
name_len
*
2
,
name
,
sizeof
(
name
)))
<
name_len
)
avio_s
eek
(
pb
,
name_len
-
ret
,
SEEK_CUR
);
avio_s
kip
(
pb
,
name_len
-
ret
);
ff_new_chapter
(
s
,
i
,
(
AVRational
){
1
,
10000000
},
pres_time
,
AV_NOPTS_VALUE
,
name
);
ff_new_chapter
(
s
,
i
,
(
AVRational
){
1
,
10000000
},
pres_time
,
AV_NOPTS_VALUE
,
name
);
}
}
...
@@ -826,16 +826,16 @@ static int asf_read_frame_header(AVFormatContext *s, AVIOContext *pb){
...
@@ -826,16 +826,16 @@ static int asf_read_frame_header(AVFormatContext *s, AVIOContext *pb){
// for(i=0; i<asf->packet_replic_size-8; i++)
// for(i=0; i<asf->packet_replic_size-8; i++)
// av_log(s, AV_LOG_DEBUG, "%02X ",avio_r8(pb));
// av_log(s, AV_LOG_DEBUG, "%02X ",avio_r8(pb));
// av_log(s, AV_LOG_DEBUG, "\n");
// av_log(s, AV_LOG_DEBUG, "\n");
avio_s
eek
(
pb
,
10
,
SEEK_CUR
);
avio_s
kip
(
pb
,
10
);
ts0
=
avio_rl64
(
pb
);
ts0
=
avio_rl64
(
pb
);
ts1
=
avio_rl64
(
pb
);
ts1
=
avio_rl64
(
pb
);
avio_s
eek
(
pb
,
12
,
SEEK_CUR
);
avio_s
kip
(
pb
,
12
);
avio_rl32
(
pb
);
avio_rl32
(
pb
);
avio_s
eek
(
pb
,
asf
->
packet_replic_size
-
8
-
38
-
4
,
SEEK_CUR
);
avio_s
kip
(
pb
,
asf
->
packet_replic_size
-
8
-
38
-
4
);
if
(
ts0
!=
-
1
)
asf
->
packet_frag_timestamp
=
ts0
/
10000
;
if
(
ts0
!=
-
1
)
asf
->
packet_frag_timestamp
=
ts0
/
10000
;
else
asf
->
packet_frag_timestamp
=
AV_NOPTS_VALUE
;
else
asf
->
packet_frag_timestamp
=
AV_NOPTS_VALUE
;
}
else
}
else
avio_s
eek
(
pb
,
asf
->
packet_replic_size
-
8
,
SEEK_CUR
);
avio_s
kip
(
pb
,
asf
->
packet_replic_size
-
8
);
rsize
+=
asf
->
packet_replic_size
;
// FIXME - check validity
rsize
+=
asf
->
packet_replic_size
;
// FIXME - check validity
}
else
if
(
asf
->
packet_replic_size
==
1
){
}
else
if
(
asf
->
packet_replic_size
==
1
){
// multipacket - frag_offset is beginning timestamp
// multipacket - frag_offset is beginning timestamp
...
@@ -895,7 +895,7 @@ static int ff_asf_parse_packet(AVFormatContext *s, AVIOContext *pb, AVPacket *pk
...
@@ -895,7 +895,7 @@ static int ff_asf_parse_packet(AVFormatContext *s, AVIOContext *pb, AVPacket *pk
//printf("PacketLeftSize:%d Pad:%d Pos:%"PRId64"\n", asf->packet_size_left, asf->packet_padsize, avio_tell(pb));
//printf("PacketLeftSize:%d Pad:%d Pos:%"PRId64"\n", asf->packet_size_left, asf->packet_padsize, avio_tell(pb));
assert
(
ret
>=
0
);
assert
(
ret
>=
0
);
/* fail safe */
/* fail safe */
avio_s
eek
(
pb
,
ret
,
SEEK_CUR
);
avio_s
kip
(
pb
,
ret
);
asf
->
packet_pos
=
avio_tell
(
pb
);
asf
->
packet_pos
=
avio_tell
(
pb
);
if
(
asf
->
data_object_size
!=
(
uint64_t
)
-
1
&&
if
(
asf
->
data_object_size
!=
(
uint64_t
)
-
1
&&
...
@@ -914,7 +914,7 @@ static int ff_asf_parse_packet(AVFormatContext *s, AVIOContext *pb, AVPacket *pk
...
@@ -914,7 +914,7 @@ static int ff_asf_parse_packet(AVFormatContext *s, AVIOContext *pb, AVPacket *pk
)
{
)
{
asf
->
packet_time_start
=
0
;
asf
->
packet_time_start
=
0
;
/* unhandled packet (should not happen) */
/* unhandled packet (should not happen) */
avio_s
eek
(
pb
,
asf
->
packet_frag_size
,
SEEK_CUR
);
avio_s
kip
(
pb
,
asf
->
packet_frag_size
);
asf
->
packet_size_left
-=
asf
->
packet_frag_size
;
asf
->
packet_size_left
-=
asf
->
packet_frag_size
;
if
(
asf
->
stream_index
<
0
)
if
(
asf
->
stream_index
<
0
)
av_log
(
s
,
AV_LOG_ERROR
,
"ff asf skip %d (unknown stream)
\n
"
,
asf
->
packet_frag_size
);
av_log
(
s
,
AV_LOG_ERROR
,
"ff asf skip %d (unknown stream)
\n
"
,
asf
->
packet_frag_size
);
...
@@ -934,7 +934,7 @@ static int ff_asf_parse_packet(AVFormatContext *s, AVIOContext *pb, AVPacket *pk
...
@@ -934,7 +934,7 @@ static int ff_asf_parse_packet(AVFormatContext *s, AVIOContext *pb, AVPacket *pk
if
(
asf
->
packet_multi_size
<
asf
->
packet_obj_size
)
if
(
asf
->
packet_multi_size
<
asf
->
packet_obj_size
)
{
{
asf
->
packet_time_start
=
0
;
asf
->
packet_time_start
=
0
;
avio_s
eek
(
pb
,
asf
->
packet_multi_size
,
SEEK_CUR
);
avio_s
kip
(
pb
,
asf
->
packet_multi_size
);
asf
->
packet_size_left
-=
asf
->
packet_multi_size
;
asf
->
packet_size_left
-=
asf
->
packet_multi_size
;
continue
;
continue
;
}
}
...
@@ -1199,7 +1199,7 @@ static void asf_build_simple_index(AVFormatContext *s, int stream_index)
...
@@ -1199,7 +1199,7 @@ static void asf_build_simple_index(AVFormatContext *s, int stream_index)
avio_seek
(
s
->
pb
,
current_pos
,
SEEK_SET
);
avio_seek
(
s
->
pb
,
current_pos
,
SEEK_SET
);
return
;
return
;
}
}
avio_s
eek
(
s
->
pb
,
gsize
-
24
,
SEEK_CUR
);
avio_s
kip
(
s
->
pb
,
gsize
-
24
);
ff_get_guid
(
s
->
pb
,
&
g
);
ff_get_guid
(
s
->
pb
,
&
g
);
}
}
...
...
libavformat/au.c
View file @
45a8a02a
...
@@ -147,7 +147,7 @@ static int au_read_header(AVFormatContext *s,
...
@@ -147,7 +147,7 @@ static int au_read_header(AVFormatContext *s,
if
(
size
>=
24
)
{
if
(
size
>=
24
)
{
/* skip unused data */
/* skip unused data */
avio_s
eek
(
pb
,
size
-
24
,
SEEK_CUR
);
avio_s
kip
(
pb
,
size
-
24
);
}
}
/* now we are ready: build format streams */
/* now we are ready: build format streams */
...
...
libavformat/avidec.c
View file @
45a8a02a
...
@@ -321,12 +321,12 @@ static void avi_read_nikon(AVFormatContext *s, uint64_t end)
...
@@ -321,12 +321,12 @@ static void avi_read_nikon(AVFormatContext *s, uint64_t end)
}
}
if
(
name
)
if
(
name
)
av_metadata_set2
(
&
s
->
metadata
,
name
,
buffer
,
0
);
av_metadata_set2
(
&
s
->
metadata
,
name
,
buffer
,
0
);
avio_s
eek
(
s
->
pb
,
size
,
SEEK_CUR
);
avio_s
kip
(
s
->
pb
,
size
);
}
}
break
;
break
;
}
}
default:
default:
avio_s
eek
(
s
->
pb
,
size
,
SEEK_CUR
);
avio_s
kip
(
s
->
pb
,
size
);
break
;
break
;
}
}
}
}
...
@@ -392,13 +392,13 @@ static int avi_read_header(AVFormatContext *s, AVFormatParameters *ap)
...
@@ -392,13 +392,13 @@ static int avi_read_header(AVFormatContext *s, AVFormatParameters *ap)
unsigned
char
date
[
64
]
=
{
0
};
unsigned
char
date
[
64
]
=
{
0
};
size
+=
(
size
&
1
);
size
+=
(
size
&
1
);
size
-=
avio_read
(
pb
,
date
,
FFMIN
(
size
,
sizeof
(
date
)
-
1
));
size
-=
avio_read
(
pb
,
date
,
FFMIN
(
size
,
sizeof
(
date
)
-
1
));
avio_s
eek
(
pb
,
size
,
SEEK_CUR
);
avio_s
kip
(
pb
,
size
);
avi_metadata_creation_time
(
&
s
->
metadata
,
date
);
avi_metadata_creation_time
(
&
s
->
metadata
,
date
);
break
;
break
;
}
}
case
MKTAG
(
'd'
,
'm'
,
'l'
,
'h'
):
case
MKTAG
(
'd'
,
'm'
,
'l'
,
'h'
):
avi
->
is_odml
=
1
;
avi
->
is_odml
=
1
;
avio_s
eek
(
pb
,
size
+
(
size
&
1
),
SEEK_CUR
);
avio_s
kip
(
pb
,
size
+
(
size
&
1
)
);
break
;
break
;
case
MKTAG
(
'a'
,
'm'
,
'v'
,
'h'
):
case
MKTAG
(
'a'
,
'm'
,
'v'
,
'h'
):
amv_file_format
=
1
;
amv_file_format
=
1
;
...
@@ -410,13 +410,13 @@ static int avi_read_header(AVFormatContext *s, AVFormatParameters *ap)
...
@@ -410,13 +410,13 @@ static int avi_read_header(AVFormatContext *s, AVFormatParameters *ap)
avio_rl32
(
pb
);
avio_rl32
(
pb
);
avi
->
non_interleaved
|=
avio_rl32
(
pb
)
&
AVIF_MUSTUSEINDEX
;
avi
->
non_interleaved
|=
avio_rl32
(
pb
)
&
AVIF_MUSTUSEINDEX
;
avio_s
eek
(
pb
,
2
*
4
,
SEEK_CUR
);
avio_s
kip
(
pb
,
2
*
4
);
avio_rl32
(
pb
);
avio_rl32
(
pb
);
avio_rl32
(
pb
);
avio_rl32
(
pb
);
avih_width
=
avio_rl32
(
pb
);
avih_width
=
avio_rl32
(
pb
);
avih_height
=
avio_rl32
(
pb
);
avih_height
=
avio_rl32
(
pb
);
avio_s
eek
(
pb
,
size
-
10
*
4
,
SEEK_CUR
);
avio_s
kip
(
pb
,
size
-
10
*
4
);
break
;
break
;
case
MKTAG
(
's'
,
't'
,
'r'
,
'h'
):
case
MKTAG
(
's'
,
't'
,
'r'
,
'h'
):
/* stream header */
/* stream header */
...
@@ -425,7 +425,7 @@ static int avi_read_header(AVFormatContext *s, AVFormatParameters *ap)
...
@@ -425,7 +425,7 @@ static int avi_read_header(AVFormatContext *s, AVFormatParameters *ap)
handler
=
avio_rl32
(
pb
);
/* codec tag */
handler
=
avio_rl32
(
pb
);
/* codec tag */
if
(
tag1
==
MKTAG
(
'p'
,
'a'
,
'd'
,
's'
)){
if
(
tag1
==
MKTAG
(
'p'
,
'a'
,
'd'
,
's'
)){
avio_s
eek
(
pb
,
size
-
8
,
SEEK_CUR
);
avio_s
kip
(
pb
,
size
-
8
);
break
;
break
;
}
else
{
}
else
{
stream_index
++
;
stream_index
++
;
...
@@ -469,10 +469,10 @@ static int avi_read_header(AVFormatContext *s, AVFormatParameters *ap)
...
@@ -469,10 +469,10 @@ static int avi_read_header(AVFormatContext *s, AVFormatParameters *ap)
goto
fail
;
goto
fail
;
}
}
s
->
streams
[
0
]
->
priv_data
=
ast
;
s
->
streams
[
0
]
->
priv_data
=
ast
;
avio_s
eek
(
pb
,
3
*
4
,
SEEK_CUR
);
avio_s
kip
(
pb
,
3
*
4
);
ast
->
scale
=
avio_rl32
(
pb
);
ast
->
scale
=
avio_rl32
(
pb
);
ast
->
rate
=
avio_rl32
(
pb
);
ast
->
rate
=
avio_rl32
(
pb
);
avio_s
eek
(
pb
,
4
,
SEEK_CUR
);
/* start time */
avio_s
kip
(
pb
,
4
);
/* start time */
dv_dur
=
avio_rl32
(
pb
);
dv_dur
=
avio_rl32
(
pb
);
if
(
ast
->
scale
>
0
&&
ast
->
rate
>
0
&&
dv_dur
>
0
)
{
if
(
ast
->
scale
>
0
&&
ast
->
rate
>
0
&&
dv_dur
>
0
)
{
...
@@ -485,7 +485,7 @@ static int avi_read_header(AVFormatContext *s, AVFormatParameters *ap)
...
@@ -485,7 +485,7 @@ static int avi_read_header(AVFormatContext *s, AVFormatParameters *ap)
*/
*/
stream_index
=
s
->
nb_streams
-
1
;
stream_index
=
s
->
nb_streams
-
1
;
avio_s
eek
(
pb
,
size
-
9
*
4
,
SEEK_CUR
);
avio_s
kip
(
pb
,
size
-
9
*
4
);
break
;
break
;
}
}
...
@@ -542,12 +542,12 @@ static int avi_read_header(AVFormatContext *s, AVFormatParameters *ap)
...
@@ -542,12 +542,12 @@ static int avi_read_header(AVFormatContext *s, AVFormatParameters *ap)
if
(
ast
->
sample_size
==
0
)
if
(
ast
->
sample_size
==
0
)
st
->
duration
=
st
->
nb_frames
;
st
->
duration
=
st
->
nb_frames
;
ast
->
frame_offset
=
ast
->
cum_len
;
ast
->
frame_offset
=
ast
->
cum_len
;
avio_s
eek
(
pb
,
size
-
12
*
4
,
SEEK_CUR
);
avio_s
kip
(
pb
,
size
-
12
*
4
);
break
;
break
;
case
MKTAG
(
's'
,
't'
,
'r'
,
'f'
):
case
MKTAG
(
's'
,
't'
,
'r'
,
'f'
):
/* stream header */
/* stream header */
if
(
stream_index
>=
(
unsigned
)
s
->
nb_streams
||
avi
->
dv_demux
)
{
if
(
stream_index
>=
(
unsigned
)
s
->
nb_streams
||
avi
->
dv_demux
)
{
avio_s
eek
(
pb
,
size
,
SEEK_CUR
);
avio_s
kip
(
pb
,
size
);
}
else
{
}
else
{
uint64_t
cur_pos
=
avio_tell
(
pb
);
uint64_t
cur_pos
=
avio_tell
(
pb
);
if
(
cur_pos
<
list_end
)
if
(
cur_pos
<
list_end
)
...
@@ -560,7 +560,7 @@ static int avi_read_header(AVFormatContext *s, AVFormatParameters *ap)
...
@@ -560,7 +560,7 @@ static int avi_read_header(AVFormatContext *s, AVFormatParameters *ap)
st
->
codec
->
height
=
avih_height
;
st
->
codec
->
height
=
avih_height
;
st
->
codec
->
codec_type
=
AVMEDIA_TYPE_VIDEO
;
st
->
codec
->
codec_type
=
AVMEDIA_TYPE_VIDEO
;
st
->
codec
->
codec_id
=
CODEC_ID_AMV
;
st
->
codec
->
codec_id
=
CODEC_ID_AMV
;
avio_s
eek
(
pb
,
size
,
SEEK_CUR
);
avio_s
kip
(
pb
,
size
);
break
;
break
;
}
}
tag1
=
ff_get_bmp_header
(
pb
,
st
);
tag1
=
ff_get_bmp_header
(
pb
,
st
);
...
@@ -620,7 +620,7 @@ static int avi_read_header(AVFormatContext *s, AVFormatParameters *ap)
...
@@ -620,7 +620,7 @@ static int avi_read_header(AVFormatContext *s, AVFormatParameters *ap)
}
}
st
->
codec
->
height
=
FFABS
(
st
->
codec
->
height
);
st
->
codec
->
height
=
FFABS
(
st
->
codec
->
height
);
// avio_s
eek(pb, size - 5 * 4, SEEK_CUR
);
// avio_s
kip(pb, size - 5 * 4
);
break
;
break
;
case
AVMEDIA_TYPE_AUDIO
:
case
AVMEDIA_TYPE_AUDIO
:
ff_get_wav_header
(
pb
,
st
->
codec
,
size
);
ff_get_wav_header
(
pb
,
st
->
codec
,
size
);
...
@@ -630,7 +630,7 @@ static int avi_read_header(AVFormatContext *s, AVFormatParameters *ap)
...
@@ -630,7 +630,7 @@ static int avi_read_header(AVFormatContext *s, AVFormatParameters *ap)
ast
->
sample_size
=
st
->
codec
->
block_align
;
ast
->
sample_size
=
st
->
codec
->
block_align
;
}
}
if
(
size
&
1
)
/* 2-aligned (fix for Stargate SG-1 - 3x18 - Shades of Grey.avi) */
if
(
size
&
1
)
/* 2-aligned (fix for Stargate SG-1 - 3x18 - Shades of Grey.avi) */
avio_s
eek
(
pb
,
1
,
SEEK_CUR
);
avio_s
kip
(
pb
,
1
);
/* Force parsing as several audio frames can be in
/* Force parsing as several audio frames can be in
* one packet and timestamps refer to packet start. */
* one packet and timestamps refer to packet start. */
st
->
need_parsing
=
AVSTREAM_PARSE_TIMESTAMPS
;
st
->
need_parsing
=
AVSTREAM_PARSE_TIMESTAMPS
;
...
@@ -658,7 +658,7 @@ static int avi_read_header(AVFormatContext *s, AVFormatParameters *ap)
...
@@ -658,7 +658,7 @@ static int avi_read_header(AVFormatContext *s, AVFormatParameters *ap)
st
->
codec
->
codec_type
=
AVMEDIA_TYPE_DATA
;
st
->
codec
->
codec_type
=
AVMEDIA_TYPE_DATA
;
st
->
codec
->
codec_id
=
CODEC_ID_NONE
;
st
->
codec
->
codec_id
=
CODEC_ID_NONE
;
st
->
codec
->
codec_tag
=
0
;
st
->
codec
->
codec_tag
=
0
;
avio_s
eek
(
pb
,
size
,
SEEK_CUR
);
avio_s
kip
(
pb
,
size
);
break
;
break
;
}
}
}
}
...
@@ -693,7 +693,7 @@ static int avi_read_header(AVFormatContext *s, AVFormatParameters *ap)
...
@@ -693,7 +693,7 @@ static int avi_read_header(AVFormatContext *s, AVFormatParameters *ap)
}
}
size
-=
9
*
4
;
size
-=
9
*
4
;
}
}
avio_s
eek
(
pb
,
size
,
SEEK_CUR
);
avio_s
kip
(
pb
,
size
);
break
;
break
;
case
MKTAG
(
's'
,
't'
,
'r'
,
'n'
):
case
MKTAG
(
's'
,
't'
,
'r'
,
'n'
):
if
(
s
->
nb_streams
){
if
(
s
->
nb_streams
){
...
@@ -710,7 +710,7 @@ static int avi_read_header(AVFormatContext *s, AVFormatParameters *ap)
...
@@ -710,7 +710,7 @@ static int avi_read_header(AVFormatContext *s, AVFormatParameters *ap)
}
}
/* skip tag */
/* skip tag */
size
+=
(
size
&
1
);
size
+=
(
size
&
1
);
avio_s
eek
(
pb
,
size
,
SEEK_CUR
);
avio_s
kip
(
pb
,
size
);
break
;
break
;
}
}
}
}
...
@@ -762,7 +762,7 @@ static int read_gab2_sub(AVStream *st, AVPacket *pkt) {
...
@@ -762,7 +762,7 @@ static int read_gab2_sub(AVStream *st, AVPacket *pkt) {
goto
error
;
goto
error
;
ret
=
avio_get_str16le
(
pb
,
desc_len
,
desc
,
sizeof
(
desc
));
ret
=
avio_get_str16le
(
pb
,
desc_len
,
desc
,
sizeof
(
desc
));
avio_s
eek
(
pb
,
desc_len
-
ret
,
SEEK_CUR
);
avio_s
kip
(
pb
,
desc_len
-
ret
);
if
(
*
desc
)
if
(
*
desc
)
av_metadata_set2
(
&
st
->
metadata
,
"title"
,
desc
,
0
);
av_metadata_set2
(
&
st
->
metadata
,
"title"
,
desc
,
0
);
...
@@ -1008,14 +1008,14 @@ resync:
...
@@ -1008,14 +1008,14 @@ resync:
//parse JUNK
//parse JUNK
||
(
d
[
0
]
==
'J'
&&
d
[
1
]
==
'U'
&&
d
[
2
]
==
'N'
&&
d
[
3
]
==
'K'
)
||
(
d
[
0
]
==
'J'
&&
d
[
1
]
==
'U'
&&
d
[
2
]
==
'N'
&&
d
[
3
]
==
'K'
)
||
(
d
[
0
]
==
'i'
&&
d
[
1
]
==
'd'
&&
d
[
2
]
==
'x'
&&
d
[
3
]
==
'1'
)){
||
(
d
[
0
]
==
'i'
&&
d
[
1
]
==
'd'
&&
d
[
2
]
==
'x'
&&
d
[
3
]
==
'1'
)){
avio_s
eek
(
pb
,
size
,
SEEK_CUR
);
avio_s
kip
(
pb
,
size
);
//av_log(s, AV_LOG_DEBUG, "SKIP\n");
//av_log(s, AV_LOG_DEBUG, "SKIP\n");
goto
resync
;
goto
resync
;
}
}
//parse stray LIST
//parse stray LIST
if
(
d
[
0
]
==
'L'
&&
d
[
1
]
==
'I'
&&
d
[
2
]
==
'S'
&&
d
[
3
]
==
'T'
){
if
(
d
[
0
]
==
'L'
&&
d
[
1
]
==
'I'
&&
d
[
2
]
==
'S'
&&
d
[
3
]
==
'T'
){
avio_s
eek
(
pb
,
4
,
SEEK_CUR
);
avio_s
kip
(
pb
,
4
);
goto
resync
;
goto
resync
;
}
}
...
@@ -1026,7 +1026,7 @@ resync:
...
@@ -1026,7 +1026,7 @@ resync:
//detect ##ix chunk and skip
//detect ##ix chunk and skip
if
(
d
[
2
]
==
'i'
&&
d
[
3
]
==
'x'
&&
n
<
s
->
nb_streams
){
if
(
d
[
2
]
==
'i'
&&
d
[
3
]
==
'x'
&&
n
<
s
->
nb_streams
){
avio_s
eek
(
pb
,
size
,
SEEK_CUR
);
avio_s
kip
(
pb
,
size
);
goto
resync
;
goto
resync
;
}
}
...
@@ -1060,7 +1060,7 @@ resync:
...
@@ -1060,7 +1060,7 @@ resync:
/*|| (st->discard >= AVDISCARD_NONKEY && !(pkt->flags & AV_PKT_FLAG_KEY))*/
//FIXME needs a little reordering
/*|| (st->discard >= AVDISCARD_NONKEY && !(pkt->flags & AV_PKT_FLAG_KEY))*/
//FIXME needs a little reordering
||
st
->
discard
>=
AVDISCARD_ALL
){
||
st
->
discard
>=
AVDISCARD_ALL
){
ast
->
frame_offset
+=
get_duration
(
ast
,
size
);
ast
->
frame_offset
+=
get_duration
(
ast
,
size
);
avio_s
eek
(
pb
,
size
,
SEEK_CUR
);
avio_s
kip
(
pb
,
size
);
goto
resync
;
goto
resync
;
}
}
...
@@ -1225,7 +1225,7 @@ static int avi_load_index(AVFormatContext *s)
...
@@ -1225,7 +1225,7 @@ static int avi_load_index(AVFormatContext *s)
default
:
default
:
skip
:
skip
:
size
+=
(
size
&
1
);
size
+=
(
size
&
1
);
if
(
avio_s
eek
(
pb
,
size
,
SEEK_CUR
)
<
0
)
if
(
avio_s
kip
(
pb
,
size
)
<
0
)
goto
the_end
;
// something is wrong here
goto
the_end
;
// something is wrong here
break
;
break
;
}
}
...
...
libavformat/avienc.c
View file @
45a8a02a
...
@@ -444,9 +444,9 @@ static int avi_write_ix(AVFormatContext *s)
...
@@ -444,9 +444,9 @@ static int avi_write_ix(AVFormatContext *s)
/* Updating one entry in the AVI OpenDML master index */
/* Updating one entry in the AVI OpenDML master index */
avio_seek
(
pb
,
avist
->
indexes
.
indx_start
-
8
,
SEEK_SET
);
avio_seek
(
pb
,
avist
->
indexes
.
indx_start
-
8
,
SEEK_SET
);
ffio_wfourcc
(
pb
,
"indx"
);
/* enabling this entry */
ffio_wfourcc
(
pb
,
"indx"
);
/* enabling this entry */
avio_s
eek
(
pb
,
8
,
SEEK_CUR
);
avio_s
kip
(
pb
,
8
);
avio_wl32
(
pb
,
avi
->
riff_id
);
/* nEntriesInUse */
avio_wl32
(
pb
,
avi
->
riff_id
);
/* nEntriesInUse */
avio_s
eek
(
pb
,
16
*
avi
->
riff_id
,
SEEK_CUR
);
avio_s
kip
(
pb
,
16
*
avi
->
riff_id
);
avio_wl64
(
pb
,
ix
);
/* qwOffset */
avio_wl64
(
pb
,
ix
);
/* qwOffset */
avio_wl32
(
pb
,
pos
-
ix
);
/* dwSize */
avio_wl32
(
pb
,
pos
-
ix
);
/* dwSize */
avio_wl32
(
pb
,
avist
->
indexes
.
entry
);
/* dwDuration */
avio_wl32
(
pb
,
avist
->
indexes
.
entry
);
/* dwDuration */
...
@@ -603,7 +603,7 @@ static int avi_write_trailer(AVFormatContext *s)
...
@@ -603,7 +603,7 @@ static int avi_write_trailer(AVFormatContext *s)
file_size
=
avio_tell
(
pb
);
file_size
=
avio_tell
(
pb
);
avio_seek
(
pb
,
avi
->
odml_list
-
8
,
SEEK_SET
);
avio_seek
(
pb
,
avi
->
odml_list
-
8
,
SEEK_SET
);
ffio_wfourcc
(
pb
,
"LIST"
);
/* Making this AVI OpenDML one */
ffio_wfourcc
(
pb
,
"LIST"
);
/* Making this AVI OpenDML one */
avio_s
eek
(
pb
,
16
,
SEEK_CUR
);
avio_s
kip
(
pb
,
16
);
for
(
n
=
nb_frames
=
0
;
n
<
s
->
nb_streams
;
n
++
)
{
for
(
n
=
nb_frames
=
0
;
n
<
s
->
nb_streams
;
n
++
)
{
AVCodecContext
*
stream
=
s
->
streams
[
n
]
->
codec
;
AVCodecContext
*
stream
=
s
->
streams
[
n
]
->
codec
;
...
...
libavformat/avs.c
View file @
45a8a02a
...
@@ -61,7 +61,7 @@ static int avs_read_header(AVFormatContext * s, AVFormatParameters * ap)
...
@@ -61,7 +61,7 @@ static int avs_read_header(AVFormatContext * s, AVFormatParameters * ap)
s
->
ctx_flags
|=
AVFMTCTX_NOHEADER
;
s
->
ctx_flags
|=
AVFMTCTX_NOHEADER
;
avio_s
eek
(
s
->
pb
,
4
,
SEEK_CUR
);
avio_s
kip
(
s
->
pb
,
4
);
avs
->
width
=
avio_rl16
(
s
->
pb
);
avs
->
width
=
avio_rl16
(
s
->
pb
);
avs
->
height
=
avio_rl16
(
s
->
pb
);
avs
->
height
=
avio_rl16
(
s
->
pb
);
avs
->
bits_per_sample
=
avio_rl16
(
s
->
pb
);
avs
->
bits_per_sample
=
avio_rl16
(
s
->
pb
);
...
@@ -204,7 +204,7 @@ static int avs_read_packet(AVFormatContext * s, AVPacket * pkt)
...
@@ -204,7 +204,7 @@ static int avs_read_packet(AVFormatContext * s, AVPacket * pkt)
break
;
break
;
default:
default:
avio_s
eek
(
s
->
pb
,
size
-
4
,
SEEK_CUR
);
avio_s
kip
(
s
->
pb
,
size
-
4
);
}
}
}
}
}
}
...
...
libavformat/bethsoftvid.c
View file @
45a8a02a
...
@@ -67,7 +67,7 @@ static int vid_read_header(AVFormatContext *s,
...
@@ -67,7 +67,7 @@ static int vid_read_header(AVFormatContext *s,
* bytes: 'V' 'I' 'D'
* bytes: 'V' 'I' 'D'
* int16s: always_512, nframes, width, height, delay, always_14
* int16s: always_512, nframes, width, height, delay, always_14
*/
*/
avio_s
eek
(
pb
,
5
,
SEEK_CUR
);
avio_s
kip
(
pb
,
5
);
vid
->
nframes
=
avio_rl16
(
pb
);
vid
->
nframes
=
avio_rl16
(
pb
);
stream
=
av_new_stream
(
s
,
0
);
stream
=
av_new_stream
(
s
,
0
);
...
...
libavformat/bfi.c
View file @
45a8a02a
...
@@ -65,19 +65,19 @@ static int bfi_read_header(AVFormatContext * s, AVFormatParameters * ap)
...
@@ -65,19 +65,19 @@ static int bfi_read_header(AVFormatContext * s, AVFormatParameters * ap)
return
AVERROR
(
ENOMEM
);
return
AVERROR
(
ENOMEM
);
/* Set the total number of frames. */
/* Set the total number of frames. */
avio_s
eek
(
pb
,
8
,
SEEK_CUR
);
avio_s
kip
(
pb
,
8
);
chunk_header
=
avio_rl32
(
pb
);
chunk_header
=
avio_rl32
(
pb
);
bfi
->
nframes
=
avio_rl32
(
pb
);
bfi
->
nframes
=
avio_rl32
(
pb
);
avio_rl32
(
pb
);
avio_rl32
(
pb
);
avio_rl32
(
pb
);
avio_rl32
(
pb
);
avio_rl32
(
pb
);
avio_rl32
(
pb
);
fps
=
avio_rl32
(
pb
);
fps
=
avio_rl32
(
pb
);
avio_s
eek
(
pb
,
12
,
SEEK_CUR
);
avio_s
kip
(
pb
,
12
);
vstream
->
codec
->
width
=
avio_rl32
(
pb
);
vstream
->
codec
->
width
=
avio_rl32
(
pb
);
vstream
->
codec
->
height
=
avio_rl32
(
pb
);
vstream
->
codec
->
height
=
avio_rl32
(
pb
);
/*Load the palette to extradata */
/*Load the palette to extradata */
avio_s
eek
(
pb
,
8
,
SEEK_CUR
);
avio_s
kip
(
pb
,
8
);
vstream
->
codec
->
extradata
=
av_malloc
(
768
);
vstream
->
codec
->
extradata
=
av_malloc
(
768
);
vstream
->
codec
->
extradata_size
=
768
;
vstream
->
codec
->
extradata_size
=
768
;
avio_read
(
pb
,
vstream
->
codec
->
extradata
,
avio_read
(
pb
,
vstream
->
codec
->
extradata
,
...
...
libavformat/bink.c
View file @
45a8a02a
...
@@ -98,7 +98,7 @@ static int read_header(AVFormatContext *s, AVFormatParameters *ap)
...
@@ -98,7 +98,7 @@ static int read_header(AVFormatContext *s, AVFormatParameters *ap)
return
AVERROR
(
EIO
);
return
AVERROR
(
EIO
);
}
}
avio_s
eek
(
pb
,
4
,
SEEK_CUR
);
avio_s
kip
(
pb
,
4
);
vst
->
codec
->
width
=
avio_rl32
(
pb
);
vst
->
codec
->
width
=
avio_rl32
(
pb
);
vst
->
codec
->
height
=
avio_rl32
(
pb
);
vst
->
codec
->
height
=
avio_rl32
(
pb
);
...
@@ -127,7 +127,7 @@ static int read_header(AVFormatContext *s, AVFormatParameters *ap)
...
@@ -127,7 +127,7 @@ static int read_header(AVFormatContext *s, AVFormatParameters *ap)
}
}
if
(
bink
->
num_audio_tracks
)
{
if
(
bink
->
num_audio_tracks
)
{
avio_s
eek
(
pb
,
4
*
bink
->
num_audio_tracks
,
SEEK_CUR
);
avio_s
kip
(
pb
,
4
*
bink
->
num_audio_tracks
);
for
(
i
=
0
;
i
<
bink
->
num_audio_tracks
;
i
++
)
{
for
(
i
=
0
;
i
<
bink
->
num_audio_tracks
;
i
++
)
{
ast
=
av_new_stream
(
s
,
1
);
ast
=
av_new_stream
(
s
,
1
);
...
@@ -169,7 +169,7 @@ static int read_header(AVFormatContext *s, AVFormatParameters *ap)
...
@@ -169,7 +169,7 @@ static int read_header(AVFormatContext *s, AVFormatParameters *ap)
keyframe
?
AVINDEX_KEYFRAME
:
0
);
keyframe
?
AVINDEX_KEYFRAME
:
0
);
}
}
avio_s
eek
(
pb
,
4
,
SEEK_CUR
);
avio_s
kip
(
pb
,
4
);
bink
->
current_track
=
-
1
;
bink
->
current_track
=
-
1
;
return
0
;
return
0
;
...
@@ -225,7 +225,7 @@ static int read_packet(AVFormatContext *s, AVPacket *pkt)
...
@@ -225,7 +225,7 @@ static int read_packet(AVFormatContext *s, AVPacket *pkt)
AV_RL32
(
pkt
->
data
)
/
(
2
*
s
->
streams
[
bink
->
current_track
]
->
codec
->
channels
);
AV_RL32
(
pkt
->
data
)
/
(
2
*
s
->
streams
[
bink
->
current_track
]
->
codec
->
channels
);
return
0
;
return
0
;
}
else
{
}
else
{
avio_s
eek
(
pb
,
audio_size
,
SEEK_CUR
);
avio_s
kip
(
pb
,
audio_size
);
}
}
}
}
...
...
libavformat/c93.c
View file @
45a8a02a
...
@@ -122,7 +122,7 @@ static int read_packet(AVFormatContext *s, AVPacket *pkt)
...
@@ -122,7 +122,7 @@ static int read_packet(AVFormatContext *s, AVPacket *pkt)
return
AVERROR
(
ENOMEM
);
return
AVERROR
(
ENOMEM
);
c93
->
audio
->
codec
->
codec_type
=
AVMEDIA_TYPE_AUDIO
;
c93
->
audio
->
codec
->
codec_type
=
AVMEDIA_TYPE_AUDIO
;
}
}
avio_s
eek
(
pb
,
26
,
SEEK_CUR
);
/* VOC header */
avio_s
kip
(
pb
,
26
);
/* VOC header */
ret
=
voc_get_packet
(
s
,
pkt
,
c93
->
audio
,
datasize
-
26
);
ret
=
voc_get_packet
(
s
,
pkt
,
c93
->
audio
,
datasize
-
26
);
if
(
ret
>
0
)
{
if
(
ret
>
0
)
{
pkt
->
stream_index
=
1
;
pkt
->
stream_index
=
1
;
...
...
libavformat/cafdec.c
View file @
45a8a02a
...
@@ -114,22 +114,22 @@ static int read_kuki_chunk(AVFormatContext *s, int64_t size)
...
@@ -114,22 +114,22 @@ static int read_kuki_chunk(AVFormatContext *s, int64_t size)
av_log
(
s
,
AV_LOG_ERROR
,
"invalid AAC magic cookie
\n
"
);
av_log
(
s
,
AV_LOG_ERROR
,
"invalid AAC magic cookie
\n
"
);
return
AVERROR_INVALIDDATA
;
return
AVERROR_INVALIDDATA
;
}
}
avio_s
eek
(
pb
,
skip
,
SEEK_CUR
);
avio_s
kip
(
pb
,
skip
);
}
else
if
(
st
->
codec
->
codec_id
==
CODEC_ID_ALAC
)
{
}
else
if
(
st
->
codec
->
codec_id
==
CODEC_ID_ALAC
)
{
#define ALAC_PREAMBLE 12
#define ALAC_PREAMBLE 12
#define ALAC_HEADER 36
#define ALAC_HEADER 36
if
(
size
<
ALAC_PREAMBLE
+
ALAC_HEADER
)
{
if
(
size
<
ALAC_PREAMBLE
+
ALAC_HEADER
)
{
av_log
(
s
,
AV_LOG_ERROR
,
"invalid ALAC magic cookie
\n
"
);
av_log
(
s
,
AV_LOG_ERROR
,
"invalid ALAC magic cookie
\n
"
);
avio_s
eek
(
pb
,
size
,
SEEK_CUR
);
avio_s
kip
(
pb
,
size
);
return
AVERROR_INVALIDDATA
;
return
AVERROR_INVALIDDATA
;
}
}
avio_s
eek
(
pb
,
ALAC_PREAMBLE
,
SEEK_CUR
);
avio_s
kip
(
pb
,
ALAC_PREAMBLE
);
st
->
codec
->
extradata
=
av_mallocz
(
ALAC_HEADER
+
FF_INPUT_BUFFER_PADDING_SIZE
);
st
->
codec
->
extradata
=
av_mallocz
(
ALAC_HEADER
+
FF_INPUT_BUFFER_PADDING_SIZE
);
if
(
!
st
->
codec
->
extradata
)
if
(
!
st
->
codec
->
extradata
)
return
AVERROR
(
ENOMEM
);
return
AVERROR
(
ENOMEM
);
avio_read
(
pb
,
st
->
codec
->
extradata
,
ALAC_HEADER
);
avio_read
(
pb
,
st
->
codec
->
extradata
,
ALAC_HEADER
);
st
->
codec
->
extradata_size
=
ALAC_HEADER
;
st
->
codec
->
extradata_size
=
ALAC_HEADER
;
avio_s
eek
(
pb
,
size
-
ALAC_PREAMBLE
-
ALAC_HEADER
,
SEEK_CU
R
);
avio_s
kip
(
pb
,
size
-
ALAC_PREAMBLE
-
ALAC_HEADE
R
);
}
else
{
}
else
{
st
->
codec
->
extradata
=
av_mallocz
(
size
+
FF_INPUT_BUFFER_PADDING_SIZE
);
st
->
codec
->
extradata
=
av_mallocz
(
size
+
FF_INPUT_BUFFER_PADDING_SIZE
);
if
(
!
st
->
codec
->
extradata
)
if
(
!
st
->
codec
->
extradata
)
...
@@ -201,7 +201,7 @@ static int read_header(AVFormatContext *s,
...
@@ -201,7 +201,7 @@ static int read_header(AVFormatContext *s,
int
found_data
,
ret
;
int
found_data
,
ret
;
int64_t
size
;
int64_t
size
;
avio_s
eek
(
pb
,
8
,
SEEK_CUR
);
/* magic, version, file flags */
avio_s
kip
(
pb
,
8
);
/* magic, version, file flags */
/* audio description chunk */
/* audio description chunk */
if
(
avio_rb32
(
pb
)
!=
MKBETAG
(
'd'
,
'e'
,
's'
,
'c'
))
{
if
(
avio_rb32
(
pb
)
!=
MKBETAG
(
'd'
,
'e'
,
's'
,
'c'
))
{
...
@@ -233,11 +233,11 @@ static int read_header(AVFormatContext *s,
...
@@ -233,11 +233,11 @@ static int read_header(AVFormatContext *s,
switch
(
tag
)
{
switch
(
tag
)
{
case
MKBETAG
(
'd'
,
'a'
,
't'
,
'a'
):
case
MKBETAG
(
'd'
,
'a'
,
't'
,
'a'
):
avio_s
eek
(
pb
,
4
,
SEEK_CUR
);
/* edit count */
avio_s
kip
(
pb
,
4
);
/* edit count */
caf
->
data_start
=
avio_tell
(
pb
);
caf
->
data_start
=
avio_tell
(
pb
);
caf
->
data_size
=
size
<
0
?
-
1
:
size
-
4
;
caf
->
data_size
=
size
<
0
?
-
1
:
size
-
4
;
if
(
caf
->
data_size
>
0
&&
!
url_is_streamed
(
pb
))
if
(
caf
->
data_size
>
0
&&
!
url_is_streamed
(
pb
))
avio_s
eek
(
pb
,
caf
->
data_size
,
SEEK_CUR
);
avio_s
kip
(
pb
,
caf
->
data_size
);
found_data
=
1
;
found_data
=
1
;
break
;
break
;
...
@@ -265,7 +265,7 @@ static int read_header(AVFormatContext *s,
...
@@ -265,7 +265,7 @@ static int read_header(AVFormatContext *s,
case
MKBETAG
(
'f'
,
'r'
,
'e'
,
'e'
):
case
MKBETAG
(
'f'
,
'r'
,
'e'
,
'e'
):
if
(
size
<
0
)
if
(
size
<
0
)
return
AVERROR_INVALIDDATA
;
return
AVERROR_INVALIDDATA
;
avio_s
eek
(
pb
,
size
,
SEEK_CUR
);
avio_s
kip
(
pb
,
size
);
break
;
break
;
}
}
}
}
...
...
libavformat/dxa.c
View file @
45a8a02a
...
@@ -96,7 +96,7 @@ static int dxa_read_header(AVFormatContext *s, AVFormatParameters *ap)
...
@@ -96,7 +96,7 @@ static int dxa_read_header(AVFormatContext *s, AVFormatParameters *ap)
c
->
has_sound
=
1
;
c
->
has_sound
=
1
;
size
=
avio_rb32
(
pb
);
size
=
avio_rb32
(
pb
);
c
->
vidpos
=
avio_tell
(
pb
)
+
size
;
c
->
vidpos
=
avio_tell
(
pb
)
+
size
;
avio_s
eek
(
pb
,
16
,
SEEK_CUR
);
avio_s
kip
(
pb
,
16
);
fsize
=
avio_rl32
(
pb
);
fsize
=
avio_rl32
(
pb
);
ast
=
av_new_stream
(
s
,
0
);
ast
=
av_new_stream
(
s
,
0
);
...
@@ -108,7 +108,7 @@ static int dxa_read_header(AVFormatContext *s, AVFormatParameters *ap)
...
@@ -108,7 +108,7 @@ static int dxa_read_header(AVFormatContext *s, AVFormatParameters *ap)
tag
=
avio_rl32
(
pb
);
tag
=
avio_rl32
(
pb
);
fsize
=
avio_rl32
(
pb
);
fsize
=
avio_rl32
(
pb
);
if
(
tag
==
MKTAG
(
'd'
,
'a'
,
't'
,
'a'
))
break
;
if
(
tag
==
MKTAG
(
'd'
,
'a'
,
't'
,
'a'
))
break
;
avio_s
eek
(
pb
,
fsize
,
SEEK_CUR
);
avio_s
kip
(
pb
,
fsize
);
}
}
c
->
bpc
=
(
fsize
+
c
->
frames
-
1
)
/
c
->
frames
;
c
->
bpc
=
(
fsize
+
c
->
frames
-
1
)
/
c
->
frames
;
if
(
ast
->
codec
->
block_align
)
if
(
ast
->
codec
->
block_align
)
...
...
libavformat/eacdata.c
View file @
45a8a02a
...
@@ -62,7 +62,7 @@ static int cdata_read_header(AVFormatContext *s, AVFormatParameters *ap)
...
@@ -62,7 +62,7 @@ static int cdata_read_header(AVFormatContext *s, AVFormatParameters *ap)
};
};
sample_rate
=
avio_rb16
(
pb
);
sample_rate
=
avio_rb16
(
pb
);
avio_s
eek
(
pb
,
12
,
SEEK_CUR
);
avio_s
kip
(
pb
,
12
);
st
=
av_new_stream
(
s
,
0
);
st
=
av_new_stream
(
s
,
0
);
if
(
!
st
)
if
(
!
st
)
...
...
libavformat/electronicarts.c
View file @
45a8a02a
...
@@ -222,7 +222,7 @@ static int process_audio_header_eacs(AVFormatContext *s)
...
@@ -222,7 +222,7 @@ static int process_audio_header_eacs(AVFormatContext *s)
ea
->
bytes
=
avio_r8
(
pb
);
/* 1=8-bit, 2=16-bit */
ea
->
bytes
=
avio_r8
(
pb
);
/* 1=8-bit, 2=16-bit */
ea
->
num_channels
=
avio_r8
(
pb
);
ea
->
num_channels
=
avio_r8
(
pb
);
compression_type
=
avio_r8
(
pb
);
compression_type
=
avio_r8
(
pb
);
avio_s
eek
(
pb
,
13
,
SEEK_CUR
);
avio_s
kip
(
pb
,
13
);
switch
(
compression_type
)
{
switch
(
compression_type
)
{
case
0
:
case
0
:
...
@@ -261,7 +261,7 @@ static int process_video_header_mdec(AVFormatContext *s)
...
@@ -261,7 +261,7 @@ static int process_video_header_mdec(AVFormatContext *s)
{
{
EaDemuxContext
*
ea
=
s
->
priv_data
;
EaDemuxContext
*
ea
=
s
->
priv_data
;
AVIOContext
*
pb
=
s
->
pb
;
AVIOContext
*
pb
=
s
->
pb
;
avio_s
eek
(
pb
,
4
,
SEEK_CUR
);
avio_s
kip
(
pb
,
4
);
ea
->
width
=
avio_rl16
(
pb
);
ea
->
width
=
avio_rl16
(
pb
);
ea
->
height
=
avio_rl16
(
pb
);
ea
->
height
=
avio_rl16
(
pb
);
ea
->
time_base
=
(
AVRational
){
1
,
15
};
ea
->
time_base
=
(
AVRational
){
1
,
15
};
...
@@ -274,7 +274,7 @@ static int process_video_header_vp6(AVFormatContext *s)
...
@@ -274,7 +274,7 @@ static int process_video_header_vp6(AVFormatContext *s)
EaDemuxContext
*
ea
=
s
->
priv_data
;
EaDemuxContext
*
ea
=
s
->
priv_data
;
AVIOContext
*
pb
=
s
->
pb
;
AVIOContext
*
pb
=
s
->
pb
;
avio_s
eek
(
pb
,
16
,
SEEK_CUR
);
avio_s
kip
(
pb
,
16
);
ea
->
time_base
.
den
=
avio_rl32
(
pb
);
ea
->
time_base
.
den
=
avio_rl32
(
pb
);
ea
->
time_base
.
num
=
avio_rl32
(
pb
);
ea
->
time_base
.
num
=
avio_rl32
(
pb
);
ea
->
video_codec
=
CODEC_ID_VP6
;
ea
->
video_codec
=
CODEC_ID_VP6
;
...
@@ -316,7 +316,7 @@ static int process_ea_header(AVFormatContext *s) {
...
@@ -316,7 +316,7 @@ static int process_ea_header(AVFormatContext *s) {
case
SHEN_TAG
:
case
SHEN_TAG
:
blockid
=
avio_rl32
(
pb
);
blockid
=
avio_rl32
(
pb
);
if
(
blockid
==
GSTR_TAG
)
{
if
(
blockid
==
GSTR_TAG
)
{
avio_s
eek
(
pb
,
4
,
SEEK_CUR
);
avio_s
kip
(
pb
,
4
);
}
else
if
((
blockid
&
0xFFFF
)
!=
PT00_TAG
)
{
}
else
if
((
blockid
&
0xFFFF
)
!=
PT00_TAG
)
{
av_log
(
s
,
AV_LOG_ERROR
,
"unknown SCHl headerid
\n
"
);
av_log
(
s
,
AV_LOG_ERROR
,
"unknown SCHl headerid
\n
"
);
return
0
;
return
0
;
...
@@ -474,19 +474,19 @@ static int ea_read_packet(AVFormatContext *s,
...
@@ -474,19 +474,19 @@ static int ea_read_packet(AVFormatContext *s,
/* audio data */
/* audio data */
case
ISNh_TAG
:
case
ISNh_TAG
:
/* header chunk also contains data; skip over the header portion*/
/* header chunk also contains data; skip over the header portion*/
avio_s
eek
(
pb
,
32
,
SEEK_CUR
);
avio_s
kip
(
pb
,
32
);
chunk_size
-=
32
;
chunk_size
-=
32
;
case
ISNd_TAG
:
case
ISNd_TAG
:
case
SCDl_TAG
:
case
SCDl_TAG
:
case
SNDC_TAG
:
case
SNDC_TAG
:
case
SDEN_TAG
:
case
SDEN_TAG
:
if
(
!
ea
->
audio_codec
)
{
if
(
!
ea
->
audio_codec
)
{
avio_s
eek
(
pb
,
chunk_size
,
SEEK_CUR
);
avio_s
kip
(
pb
,
chunk_size
);
break
;
break
;
}
else
if
(
ea
->
audio_codec
==
CODEC_ID_PCM_S16LE_PLANAR
||
}
else
if
(
ea
->
audio_codec
==
CODEC_ID_PCM_S16LE_PLANAR
||
ea
->
audio_codec
==
CODEC_ID_MP3
)
{
ea
->
audio_codec
==
CODEC_ID_MP3
)
{
num_samples
=
avio_rl32
(
pb
);
num_samples
=
avio_rl32
(
pb
);
avio_s
eek
(
pb
,
8
,
SEEK_CUR
);
avio_s
kip
(
pb
,
8
);
chunk_size
-=
12
;
chunk_size
-=
12
;
}
}
ret
=
av_get_packet
(
pb
,
pkt
,
chunk_size
);
ret
=
av_get_packet
(
pb
,
pkt
,
chunk_size
);
...
@@ -541,7 +541,7 @@ static int ea_read_packet(AVFormatContext *s,
...
@@ -541,7 +541,7 @@ static int ea_read_packet(AVFormatContext *s,
goto
get_video_packet
;
goto
get_video_packet
;
case
mTCD_TAG
:
case
mTCD_TAG
:
avio_s
eek
(
pb
,
8
,
SEEK_CUR
);
// skip ea dct header
avio_s
kip
(
pb
,
8
);
// skip ea dct header
chunk_size
-=
8
;
chunk_size
-=
8
;
goto
get_video_packet
;
goto
get_video_packet
;
...
@@ -560,7 +560,7 @@ get_video_packet:
...
@@ -560,7 +560,7 @@ get_video_packet:
break
;
break
;
default:
default:
avio_s
eek
(
pb
,
chunk_size
,
SEEK_CUR
);
avio_s
kip
(
pb
,
chunk_size
);
break
;
break
;
}
}
}
}
...
...
libavformat/ffmdec.c
View file @
45a8a02a
...
@@ -187,7 +187,7 @@ static int64_t get_dts(AVFormatContext *s, int64_t pos)
...
@@ -187,7 +187,7 @@ static int64_t get_dts(AVFormatContext *s, int64_t pos)
int64_t
dts
;
int64_t
dts
;
ffm_seek1
(
s
,
pos
);
ffm_seek1
(
s
,
pos
);
avio_s
eek
(
pb
,
4
,
SEEK_CUR
);
avio_s
kip
(
pb
,
4
);
dts
=
avio_rb64
(
pb
);
dts
=
avio_rb64
(
pb
);
#ifdef DEBUG_SEEK
#ifdef DEBUG_SEEK
av_log
(
s
,
AV_LOG_DEBUG
,
"dts=%0.6f
\n
"
,
dts
/
1000000
.
0
);
av_log
(
s
,
AV_LOG_DEBUG
,
"dts=%0.6f
\n
"
,
dts
/
1000000
.
0
);
...
...
libavformat/filmstripdec.c
View file @
45a8a02a
...
@@ -59,7 +59,7 @@ static int read_header(AVFormatContext *s,
...
@@ -59,7 +59,7 @@ static int read_header(AVFormatContext *s,
return
AVERROR_INVALIDDATA
;
return
AVERROR_INVALIDDATA
;
}
}
avio_s
eek
(
pb
,
2
,
SEEK_CUR
);
avio_s
kip
(
pb
,
2
);
st
->
codec
->
codec_type
=
AVMEDIA_TYPE_VIDEO
;
st
->
codec
->
codec_type
=
AVMEDIA_TYPE_VIDEO
;
st
->
codec
->
codec_id
=
CODEC_ID_RAWVIDEO
;
st
->
codec
->
codec_id
=
CODEC_ID_RAWVIDEO
;
st
->
codec
->
pix_fmt
=
PIX_FMT_RGBA
;
st
->
codec
->
pix_fmt
=
PIX_FMT_RGBA
;
...
@@ -84,7 +84,7 @@ static int read_packet(AVFormatContext *s,
...
@@ -84,7 +84,7 @@ static int read_packet(AVFormatContext *s,
return
AVERROR
(
EIO
);
return
AVERROR
(
EIO
);
pkt
->
dts
=
avio_tell
(
s
->
pb
)
/
(
st
->
codec
->
width
*
(
st
->
codec
->
height
+
film
->
leading
)
*
4
);
pkt
->
dts
=
avio_tell
(
s
->
pb
)
/
(
st
->
codec
->
width
*
(
st
->
codec
->
height
+
film
->
leading
)
*
4
);
pkt
->
size
=
av_get_packet
(
s
->
pb
,
pkt
,
st
->
codec
->
width
*
st
->
codec
->
height
*
4
);
pkt
->
size
=
av_get_packet
(
s
->
pb
,
pkt
,
st
->
codec
->
width
*
st
->
codec
->
height
*
4
);
avio_s
eek
(
s
->
pb
,
st
->
codec
->
width
*
film
->
leading
*
4
,
SEEK_CUR
);
avio_s
kip
(
s
->
pb
,
st
->
codec
->
width
*
film
->
leading
*
4
);
if
(
pkt
->
size
<
0
)
if
(
pkt
->
size
<
0
)
return
pkt
->
size
;
return
pkt
->
size
;
pkt
->
flags
|=
AV_PKT_FLAG_KEY
;
pkt
->
flags
|=
AV_PKT_FLAG_KEY
;
...
...
libavformat/flacdec.c
View file @
45a8a02a
...
@@ -65,7 +65,7 @@ static int flac_read_header(AVFormatContext *s,
...
@@ -65,7 +65,7 @@ static int flac_read_header(AVFormatContext *s,
break
;
break
;
/* skip metadata block for unsupported types */
/* skip metadata block for unsupported types */
default:
default:
ret
=
avio_s
eek
(
s
->
pb
,
metadata_size
,
SEEK_CUR
);
ret
=
avio_s
kip
(
s
->
pb
,
metadata_size
);
if
(
ret
<
0
)
if
(
ret
<
0
)
return
ret
;
return
ret
;
}
}
...
...
libavformat/flic.c
View file @
45a8a02a
...
@@ -239,7 +239,7 @@ static int flic_read_packet(AVFormatContext *s,
...
@@ -239,7 +239,7 @@ static int flic_read_packet(AVFormatContext *s,
}
}
/* skip useless 10B sub-header (yes, it's not accounted for in the chunk header) */
/* skip useless 10B sub-header (yes, it's not accounted for in the chunk header) */
avio_s
eek
(
pb
,
10
,
SEEK_CUR
);
avio_s
kip
(
pb
,
10
);
pkt
->
stream_index
=
flic
->
audio_stream_index
;
pkt
->
stream_index
=
flic
->
audio_stream_index
;
pkt
->
pos
=
avio_tell
(
pb
);
pkt
->
pos
=
avio_tell
(
pb
);
...
@@ -253,7 +253,7 @@ static int flic_read_packet(AVFormatContext *s,
...
@@ -253,7 +253,7 @@ static int flic_read_packet(AVFormatContext *s,
packet_read
=
1
;
packet_read
=
1
;
}
else
{
}
else
{
/* not interested in this chunk */
/* not interested in this chunk */
avio_s
eek
(
pb
,
size
-
6
,
SEEK_CUR
);
avio_s
kip
(
pb
,
size
-
6
);
}
}
}
}
...
...
libavformat/flvdec.c
View file @
45a8a02a
...
@@ -113,7 +113,7 @@ static int flv_set_video_codec(AVFormatContext *s, AVStream *vstream, int flv_co
...
@@ -113,7 +113,7 @@ static int flv_set_video_codec(AVFormatContext *s, AVStream *vstream, int flv_co
static
int
amf_get_string
(
AVIOContext
*
ioc
,
char
*
buffer
,
int
buffsize
)
{
static
int
amf_get_string
(
AVIOContext
*
ioc
,
char
*
buffer
,
int
buffsize
)
{
int
length
=
avio_rb16
(
ioc
);
int
length
=
avio_rb16
(
ioc
);
if
(
length
>=
buffsize
)
{
if
(
length
>=
buffsize
)
{
avio_s
eek
(
ioc
,
length
,
SEEK_CUR
);
avio_s
kip
(
ioc
,
length
);
return
-
1
;
return
-
1
;
}
}
...
@@ -149,7 +149,7 @@ static int amf_parse_object(AVFormatContext *s, AVStream *astream, AVStream *vst
...
@@ -149,7 +149,7 @@ static int amf_parse_object(AVFormatContext *s, AVStream *astream, AVStream *vst
unsigned
int
keylen
;
unsigned
int
keylen
;
while
(
avio_tell
(
ioc
)
<
max_pos
-
2
&&
(
keylen
=
avio_rb16
(
ioc
)))
{
while
(
avio_tell
(
ioc
)
<
max_pos
-
2
&&
(
keylen
=
avio_rb16
(
ioc
)))
{
avio_s
eek
(
ioc
,
keylen
,
SEEK_CUR
);
//skip key string
avio_s
kip
(
ioc
,
keylen
);
//skip key string
if
(
amf_parse_object
(
s
,
NULL
,
NULL
,
NULL
,
max_pos
,
depth
+
1
)
<
0
)
if
(
amf_parse_object
(
s
,
NULL
,
NULL
,
NULL
,
max_pos
,
depth
+
1
)
<
0
)
return
-
1
;
//if we couldn't skip, bomb out.
return
-
1
;
//if we couldn't skip, bomb out.
}
}
...
@@ -162,7 +162,7 @@ static int amf_parse_object(AVFormatContext *s, AVStream *astream, AVStream *vst
...
@@ -162,7 +162,7 @@ static int amf_parse_object(AVFormatContext *s, AVStream *astream, AVStream *vst
case
AMF_DATA_TYPE_UNSUPPORTED
:
case
AMF_DATA_TYPE_UNSUPPORTED
:
break
;
//these take up no additional space
break
;
//these take up no additional space
case
AMF_DATA_TYPE_MIXEDARRAY
:
case
AMF_DATA_TYPE_MIXEDARRAY
:
avio_s
eek
(
ioc
,
4
,
SEEK_CUR
);
//skip 32-bit max array index
avio_s
kip
(
ioc
,
4
);
//skip 32-bit max array index
while
(
avio_tell
(
ioc
)
<
max_pos
-
2
&&
amf_get_string
(
ioc
,
str_val
,
sizeof
(
str_val
))
>
0
)
{
while
(
avio_tell
(
ioc
)
<
max_pos
-
2
&&
amf_get_string
(
ioc
,
str_val
,
sizeof
(
str_val
))
>
0
)
{
//this is the only case in which we would want a nested parse to not skip over the object
//this is the only case in which we would want a nested parse to not skip over the object
if
(
amf_parse_object
(
s
,
astream
,
vstream
,
str_val
,
max_pos
,
depth
+
1
)
<
0
)
if
(
amf_parse_object
(
s
,
astream
,
vstream
,
str_val
,
max_pos
,
depth
+
1
)
<
0
)
...
@@ -182,7 +182,7 @@ static int amf_parse_object(AVFormatContext *s, AVStream *astream, AVStream *vst
...
@@ -182,7 +182,7 @@ static int amf_parse_object(AVFormatContext *s, AVStream *astream, AVStream *vst
}
}
break
;
break
;
case
AMF_DATA_TYPE_DATE
:
case
AMF_DATA_TYPE_DATE
:
avio_s
eek
(
ioc
,
8
+
2
,
SEEK_CUR
);
//timestamp (double) and UTC offset (int16)
avio_s
kip
(
ioc
,
8
+
2
);
//timestamp (double) and UTC offset (int16)
break
;
break
;
default:
//unsupported type, we couldn't skip
default:
//unsupported type, we couldn't skip
return
-
1
;
return
-
1
;
...
@@ -254,7 +254,7 @@ static int flv_read_header(AVFormatContext *s,
...
@@ -254,7 +254,7 @@ static int flv_read_header(AVFormatContext *s,
{
{
int
offset
,
flags
;
int
offset
,
flags
;
avio_s
eek
(
s
->
pb
,
4
,
SEEK_CUR
);
avio_s
kip
(
s
->
pb
,
4
);
flags
=
avio_r8
(
s
->
pb
);
flags
=
avio_r8
(
s
->
pb
);
/* old flvtool cleared this field */
/* old flvtool cleared this field */
/* FIXME: better fix needed */
/* FIXME: better fix needed */
...
@@ -278,7 +278,7 @@ static int flv_read_header(AVFormatContext *s,
...
@@ -278,7 +278,7 @@ static int flv_read_header(AVFormatContext *s,
offset
=
avio_rb32
(
s
->
pb
);
offset
=
avio_rb32
(
s
->
pb
);
avio_seek
(
s
->
pb
,
offset
,
SEEK_SET
);
avio_seek
(
s
->
pb
,
offset
,
SEEK_SET
);
avio_s
eek
(
s
->
pb
,
4
,
SEEK_CUR
);
avio_s
kip
(
s
->
pb
,
4
);
s
->
start_time
=
0
;
s
->
start_time
=
0
;
...
@@ -304,7 +304,7 @@ static int flv_read_packet(AVFormatContext *s, AVPacket *pkt)
...
@@ -304,7 +304,7 @@ static int flv_read_packet(AVFormatContext *s, AVPacket *pkt)
int64_t
dts
,
pts
=
AV_NOPTS_VALUE
;
int64_t
dts
,
pts
=
AV_NOPTS_VALUE
;
AVStream
*
st
=
NULL
;
AVStream
*
st
=
NULL
;
for
(;;
avio_s
eek
(
s
->
pb
,
4
,
SEEK_CUR
)){
/* pkt size is repeated at end. skip it */
for
(;;
avio_s
kip
(
s
->
pb
,
4
)){
/* pkt size is repeated at end. skip it */
pos
=
avio_tell
(
s
->
pb
);
pos
=
avio_tell
(
s
->
pb
);
type
=
avio_r8
(
s
->
pb
);
type
=
avio_r8
(
s
->
pb
);
size
=
avio_rb24
(
s
->
pb
);
size
=
avio_rb24
(
s
->
pb
);
...
@@ -313,7 +313,7 @@ static int flv_read_packet(AVFormatContext *s, AVPacket *pkt)
...
@@ -313,7 +313,7 @@ static int flv_read_packet(AVFormatContext *s, AVPacket *pkt)
// av_log(s, AV_LOG_DEBUG, "type:%d, size:%d, dts:%d\n", type, size, dts);
// av_log(s, AV_LOG_DEBUG, "type:%d, size:%d, dts:%d\n", type, size, dts);
if
(
s
->
pb
->
eof_reached
)
if
(
s
->
pb
->
eof_reached
)
return
AVERROR_EOF
;
return
AVERROR_EOF
;
avio_s
eek
(
s
->
pb
,
3
,
SEEK_CUR
);
/* stream id, always 0 */
avio_s
kip
(
s
->
pb
,
3
);
/* stream id, always 0 */
flags
=
0
;
flags
=
0
;
if
(
size
==
0
)
if
(
size
==
0
)
...
@@ -454,7 +454,7 @@ static int flv_read_packet(AVFormatContext *s, AVPacket *pkt)
...
@@ -454,7 +454,7 @@ static int flv_read_packet(AVFormatContext *s, AVPacket *pkt)
pkt
->
flags
|=
AV_PKT_FLAG_KEY
;
pkt
->
flags
|=
AV_PKT_FLAG_KEY
;
leave
:
leave
:
avio_s
eek
(
s
->
pb
,
4
,
SEEK_CUR
);
avio_s
kip
(
s
->
pb
,
4
);
return
ret
;
return
ret
;
}
}
...
...
libavformat/flvenc.c
View file @
45a8a02a
...
@@ -291,7 +291,7 @@ static int flv_write_header(AVFormatContext *s)
...
@@ -291,7 +291,7 @@ static int flv_write_header(AVFormatContext *s)
data_size
=
avio_tell
(
pb
)
-
metadata_size_pos
-
10
;
data_size
=
avio_tell
(
pb
)
-
metadata_size_pos
-
10
;
avio_seek
(
pb
,
metadata_size_pos
,
SEEK_SET
);
avio_seek
(
pb
,
metadata_size_pos
,
SEEK_SET
);
avio_wb24
(
pb
,
data_size
);
avio_wb24
(
pb
,
data_size
);
avio_s
eek
(
pb
,
data_size
+
10
-
3
,
SEEK_CUR
);
avio_s
kip
(
pb
,
data_size
+
10
-
3
);
avio_wb32
(
pb
,
data_size
+
11
);
avio_wb32
(
pb
,
data_size
+
11
);
for
(
i
=
0
;
i
<
s
->
nb_streams
;
i
++
)
{
for
(
i
=
0
;
i
<
s
->
nb_streams
;
i
++
)
{
...
@@ -318,7 +318,7 @@ static int flv_write_header(AVFormatContext *s)
...
@@ -318,7 +318,7 @@ static int flv_write_header(AVFormatContext *s)
data_size
=
avio_tell
(
pb
)
-
pos
;
data_size
=
avio_tell
(
pb
)
-
pos
;
avio_seek
(
pb
,
-
data_size
-
10
,
SEEK_CUR
);
avio_seek
(
pb
,
-
data_size
-
10
,
SEEK_CUR
);
avio_wb24
(
pb
,
data_size
);
avio_wb24
(
pb
,
data_size
);
avio_s
eek
(
pb
,
data_size
+
10
-
3
,
SEEK_CUR
);
avio_s
kip
(
pb
,
data_size
+
10
-
3
);
avio_wb32
(
pb
,
data_size
+
11
);
// previous tag size
avio_wb32
(
pb
,
data_size
+
11
);
// previous tag size
}
}
}
}
...
...
libavformat/gxf.c
View file @
45a8a02a
...
@@ -174,7 +174,7 @@ static void gxf_material_tags(AVIOContext *pb, int *len, struct gxf_stream_info
...
@@ -174,7 +174,7 @@ static void gxf_material_tags(AVIOContext *pb, int *len, struct gxf_stream_info
else
if
(
tag
==
MAT_LAST_FIELD
)
else
if
(
tag
==
MAT_LAST_FIELD
)
si
->
last_field
=
value
;
si
->
last_field
=
value
;
}
else
}
else
avio_s
eek
(
pb
,
tlen
,
SEEK_CUR
);
avio_s
kip
(
pb
,
tlen
);
}
}
}
}
...
@@ -223,7 +223,7 @@ static void gxf_track_tags(AVIOContext *pb, int *len, struct gxf_stream_info *si
...
@@ -223,7 +223,7 @@ static void gxf_track_tags(AVIOContext *pb, int *len, struct gxf_stream_info *si
else
if
(
tag
==
TRACK_FPF
&&
(
value
==
1
||
value
==
2
))
else
if
(
tag
==
TRACK_FPF
&&
(
value
==
1
||
value
==
2
))
si
->
fields_per_frame
=
value
;
si
->
fields_per_frame
=
value
;
}
else
}
else
avio_s
eek
(
pb
,
tlen
,
SEEK_CUR
);
avio_s
kip
(
pb
,
tlen
);
}
}
}
}
...
@@ -238,7 +238,7 @@ static void gxf_read_index(AVFormatContext *s, int pkt_len) {
...
@@ -238,7 +238,7 @@ static void gxf_read_index(AVFormatContext *s, int pkt_len) {
int
i
;
int
i
;
pkt_len
-=
8
;
pkt_len
-=
8
;
if
(
s
->
flags
&
AVFMT_FLAG_IGNIDX
)
{
if
(
s
->
flags
&
AVFMT_FLAG_IGNIDX
)
{
avio_s
eek
(
pb
,
pkt_len
,
SEEK_CUR
);
avio_s
kip
(
pb
,
pkt_len
);
return
;
return
;
}
}
if
(
map_cnt
>
1000
)
{
if
(
map_cnt
>
1000
)
{
...
@@ -247,7 +247,7 @@ static void gxf_read_index(AVFormatContext *s, int pkt_len) {
...
@@ -247,7 +247,7 @@ static void gxf_read_index(AVFormatContext *s, int pkt_len) {
}
}
if
(
pkt_len
<
4
*
map_cnt
)
{
if
(
pkt_len
<
4
*
map_cnt
)
{
av_log
(
s
,
AV_LOG_ERROR
,
"invalid index length
\n
"
);
av_log
(
s
,
AV_LOG_ERROR
,
"invalid index length
\n
"
);
avio_s
eek
(
pb
,
pkt_len
,
SEEK_CUR
);
avio_s
kip
(
pb
,
pkt_len
);
return
;
return
;
}
}
pkt_len
-=
4
*
map_cnt
;
pkt_len
-=
4
*
map_cnt
;
...
@@ -255,7 +255,7 @@ static void gxf_read_index(AVFormatContext *s, int pkt_len) {
...
@@ -255,7 +255,7 @@ static void gxf_read_index(AVFormatContext *s, int pkt_len) {
for
(
i
=
0
;
i
<
map_cnt
;
i
++
)
for
(
i
=
0
;
i
<
map_cnt
;
i
++
)
av_add_index_entry
(
st
,
(
uint64_t
)
avio_rl32
(
pb
)
*
1024
,
av_add_index_entry
(
st
,
(
uint64_t
)
avio_rl32
(
pb
)
*
1024
,
i
*
(
uint64_t
)
fields_per_map
+
1
,
0
,
0
,
0
);
i
*
(
uint64_t
)
fields_per_map
+
1
,
0
,
0
,
0
);
avio_s
eek
(
pb
,
pkt_len
,
SEEK_CUR
);
avio_s
kip
(
pb
,
pkt_len
);
}
}
static
int
gxf_header
(
AVFormatContext
*
s
,
AVFormatParameters
*
ap
)
{
static
int
gxf_header
(
AVFormatContext
*
s
,
AVFormatParameters
*
ap
)
{
...
@@ -283,7 +283,7 @@ static int gxf_header(AVFormatContext *s, AVFormatParameters *ap) {
...
@@ -283,7 +283,7 @@ static int gxf_header(AVFormatContext *s, AVFormatParameters *ap) {
}
}
map_len
-=
len
;
map_len
-=
len
;
gxf_material_tags
(
pb
,
&
len
,
&
si
);
gxf_material_tags
(
pb
,
&
len
,
&
si
);
avio_s
eek
(
pb
,
len
,
SEEK_CUR
);
avio_s
kip
(
pb
,
len
);
map_len
-=
2
;
map_len
-=
2
;
len
=
avio_rb16
(
pb
);
// length of track description
len
=
avio_rb16
(
pb
);
// length of track description
if
(
len
>
map_len
)
{
if
(
len
>
map_len
)
{
...
@@ -301,7 +301,7 @@ static int gxf_header(AVFormatContext *s, AVFormatParameters *ap) {
...
@@ -301,7 +301,7 @@ static int gxf_header(AVFormatContext *s, AVFormatParameters *ap) {
track_len
=
avio_rb16
(
pb
);
track_len
=
avio_rb16
(
pb
);
len
-=
track_len
;
len
-=
track_len
;
gxf_track_tags
(
pb
,
&
track_len
,
&
si
);
gxf_track_tags
(
pb
,
&
track_len
,
&
si
);
avio_s
eek
(
pb
,
track_len
,
SEEK_CUR
);
avio_s
kip
(
pb
,
track_len
);
if
(
!
(
track_type
&
0x80
))
{
if
(
!
(
track_type
&
0x80
))
{
av_log
(
s
,
AV_LOG_ERROR
,
"invalid track type %x
\n
"
,
track_type
);
av_log
(
s
,
AV_LOG_ERROR
,
"invalid track type %x
\n
"
,
track_type
);
continue
;
continue
;
...
@@ -326,7 +326,7 @@ static int gxf_header(AVFormatContext *s, AVFormatParameters *ap) {
...
@@ -326,7 +326,7 @@ static int gxf_header(AVFormatContext *s, AVFormatParameters *ap) {
if
(
len
<
0
)
if
(
len
<
0
)
av_log
(
s
,
AV_LOG_ERROR
,
"invalid track description length specified
\n
"
);
av_log
(
s
,
AV_LOG_ERROR
,
"invalid track description length specified
\n
"
);
if
(
map_len
)
if
(
map_len
)
avio_s
eek
(
pb
,
map_len
,
SEEK_CUR
);
avio_s
kip
(
pb
,
map_len
);
if
(
!
parse_packet_header
(
pb
,
&
pkt_type
,
&
len
))
{
if
(
!
parse_packet_header
(
pb
,
&
pkt_type
,
&
len
))
{
av_log
(
s
,
AV_LOG_ERROR
,
"sync lost in header
\n
"
);
av_log
(
s
,
AV_LOG_ERROR
,
"sync lost in header
\n
"
);
return
-
1
;
return
-
1
;
...
@@ -342,8 +342,8 @@ static int gxf_header(AVFormatContext *s, AVFormatParameters *ap) {
...
@@ -342,8 +342,8 @@ static int gxf_header(AVFormatContext *s, AVFormatParameters *ap) {
if
(
len
>=
0x39
)
{
if
(
len
>=
0x39
)
{
AVRational
fps
;
AVRational
fps
;
len
-=
0x39
;
len
-=
0x39
;
avio_s
eek
(
pb
,
5
,
SEEK_CUR
);
// preamble
avio_s
kip
(
pb
,
5
);
// preamble
avio_s
eek
(
pb
,
0x30
,
SEEK_CUR
);
// payload description
avio_s
kip
(
pb
,
0x30
);
// payload description
fps
=
fps_umf2avr
(
avio_rl32
(
pb
));
fps
=
fps_umf2avr
(
avio_rl32
(
pb
));
if
(
!
main_timebase
.
num
||
!
main_timebase
.
den
)
{
if
(
!
main_timebase
.
num
||
!
main_timebase
.
den
)
{
// this may not always be correct, but simply the best we can get
// this may not always be correct, but simply the best we can get
...
@@ -354,7 +354,7 @@ static int gxf_header(AVFormatContext *s, AVFormatParameters *ap) {
...
@@ -354,7 +354,7 @@ static int gxf_header(AVFormatContext *s, AVFormatParameters *ap) {
av_log
(
s
,
AV_LOG_INFO
,
"UMF packet too short
\n
"
);
av_log
(
s
,
AV_LOG_INFO
,
"UMF packet too short
\n
"
);
}
else
}
else
av_log
(
s
,
AV_LOG_INFO
,
"UMF packet missing
\n
"
);
av_log
(
s
,
AV_LOG_INFO
,
"UMF packet missing
\n
"
);
avio_s
eek
(
pb
,
len
,
SEEK_CUR
);
avio_s
kip
(
pb
,
len
);
// set a fallback value, 60000/1001 is specified for audio-only files
// set a fallback value, 60000/1001 is specified for audio-only files
// so use that regardless of why we do not know the video frame rate.
// so use that regardless of why we do not know the video frame rate.
if
(
!
main_timebase
.
num
||
!
main_timebase
.
den
)
if
(
!
main_timebase
.
num
||
!
main_timebase
.
den
)
...
@@ -437,7 +437,7 @@ static int gxf_packet(AVFormatContext *s, AVPacket *pkt) {
...
@@ -437,7 +437,7 @@ static int gxf_packet(AVFormatContext *s, AVPacket *pkt) {
continue
;
continue
;
}
}
if
(
pkt_type
!=
PKT_MEDIA
)
{
if
(
pkt_type
!=
PKT_MEDIA
)
{
avio_s
eek
(
pb
,
pkt_len
,
SEEK_CUR
);
avio_s
kip
(
pb
,
pkt_len
);
continue
;
continue
;
}
}
if
(
pkt_len
<
16
)
{
if
(
pkt_len
<
16
)
{
...
@@ -462,7 +462,7 @@ static int gxf_packet(AVFormatContext *s, AVPacket *pkt) {
...
@@ -462,7 +462,7 @@ static int gxf_packet(AVFormatContext *s, AVPacket *pkt) {
int
last
=
field_info
&
0xffff
;
// last is exclusive
int
last
=
field_info
&
0xffff
;
// last is exclusive
int
bps
=
av_get_bits_per_sample
(
st
->
codec
->
codec_id
)
>>
3
;
int
bps
=
av_get_bits_per_sample
(
st
->
codec
->
codec_id
)
>>
3
;
if
(
first
<=
last
&&
last
*
bps
<=
pkt_len
)
{
if
(
first
<=
last
&&
last
*
bps
<=
pkt_len
)
{
avio_s
eek
(
pb
,
first
*
bps
,
SEEK_CUR
);
avio_s
kip
(
pb
,
first
*
bps
);
skip
=
pkt_len
-
last
*
bps
;
skip
=
pkt_len
-
last
*
bps
;
pkt_len
=
(
last
-
first
)
*
bps
;
pkt_len
=
(
last
-
first
)
*
bps
;
}
else
}
else
...
@@ -470,7 +470,7 @@ static int gxf_packet(AVFormatContext *s, AVPacket *pkt) {
...
@@ -470,7 +470,7 @@ static int gxf_packet(AVFormatContext *s, AVPacket *pkt) {
}
}
ret
=
av_get_packet
(
pb
,
pkt
,
pkt_len
);
ret
=
av_get_packet
(
pb
,
pkt
,
pkt_len
);
if
(
skip
)
if
(
skip
)
avio_s
eek
(
pb
,
skip
,
SEEK_CUR
);
avio_s
kip
(
pb
,
skip
);
pkt
->
stream_index
=
stream_index
;
pkt
->
stream_index
=
stream_index
;
pkt
->
dts
=
field_nr
;
pkt
->
dts
=
field_nr
;
return
ret
;
return
ret
;
...
...
libavformat/id3v2.c
View file @
45a8a02a
...
@@ -217,7 +217,7 @@ static void ff_id3v2_parse(AVFormatContext *s, int len, uint8_t version, uint8_t
...
@@ -217,7 +217,7 @@ static void ff_id3v2_parse(AVFormatContext *s, int len, uint8_t version, uint8_t
unsync
=
flags
&
0x80
;
unsync
=
flags
&
0x80
;
if
(
isv34
&&
flags
&
0x40
)
/* Extended header present, just skip over it */
if
(
isv34
&&
flags
&
0x40
)
/* Extended header present, just skip over it */
avio_s
eek
(
s
->
pb
,
get_size
(
s
->
pb
,
4
),
SEEK_CUR
);
avio_s
kip
(
s
->
pb
,
get_size
(
s
->
pb
,
4
)
);
while
(
len
>=
taghdrlen
)
{
while
(
len
>=
taghdrlen
)
{
unsigned
int
tflags
;
unsigned
int
tflags
;
...
@@ -251,7 +251,7 @@ static void ff_id3v2_parse(AVFormatContext *s, int len, uint8_t version, uint8_t
...
@@ -251,7 +251,7 @@ static void ff_id3v2_parse(AVFormatContext *s, int len, uint8_t version, uint8_t
if
(
tflags
&
(
ID3v2_FLAG_ENCRYPTION
|
ID3v2_FLAG_COMPRESSION
))
{
if
(
tflags
&
(
ID3v2_FLAG_ENCRYPTION
|
ID3v2_FLAG_COMPRESSION
))
{
av_log
(
s
,
AV_LOG_WARNING
,
"Skipping encrypted/compressed ID3v2 frame %s.
\n
"
,
tag
);
av_log
(
s
,
AV_LOG_WARNING
,
"Skipping encrypted/compressed ID3v2 frame %s.
\n
"
,
tag
);
avio_s
eek
(
s
->
pb
,
tlen
,
SEEK_CUR
);
avio_s
kip
(
s
->
pb
,
tlen
);
}
else
if
(
tag
[
0
]
==
'T'
)
{
}
else
if
(
tag
[
0
]
==
'T'
)
{
if
(
unsync
||
tunsync
)
{
if
(
unsync
||
tunsync
)
{
int
i
,
j
;
int
i
,
j
;
...
@@ -272,7 +272,7 @@ static void ff_id3v2_parse(AVFormatContext *s, int len, uint8_t version, uint8_t
...
@@ -272,7 +272,7 @@ static void ff_id3v2_parse(AVFormatContext *s, int len, uint8_t version, uint8_t
else
if
(
!
tag
[
0
])
{
else
if
(
!
tag
[
0
])
{
if
(
tag
[
1
])
if
(
tag
[
1
])
av_log
(
s
,
AV_LOG_WARNING
,
"invalid frame id, assuming padding"
);
av_log
(
s
,
AV_LOG_WARNING
,
"invalid frame id, assuming padding"
);
avio_s
eek
(
s
->
pb
,
tlen
,
SEEK_CUR
);
avio_s
kip
(
s
->
pb
,
tlen
);
break
;
break
;
}
}
/* Skip to end of tag */
/* Skip to end of tag */
...
@@ -281,10 +281,10 @@ static void ff_id3v2_parse(AVFormatContext *s, int len, uint8_t version, uint8_t
...
@@ -281,10 +281,10 @@ static void ff_id3v2_parse(AVFormatContext *s, int len, uint8_t version, uint8_t
if
(
len
>
0
)
{
if
(
len
>
0
)
{
/* Skip padding */
/* Skip padding */
avio_s
eek
(
s
->
pb
,
len
,
SEEK_CUR
);
avio_s
kip
(
s
->
pb
,
len
);
}
}
if
(
version
==
4
&&
flags
&
0x10
)
/* Footer preset, always 10 bytes, skip over it */
if
(
version
==
4
&&
flags
&
0x10
)
/* Footer preset, always 10 bytes, skip over it */
avio_s
eek
(
s
->
pb
,
10
,
SEEK_CUR
);
avio_s
kip
(
s
->
pb
,
10
);
av_free
(
buffer
);
av_free
(
buffer
);
return
;
return
;
...
...
libavformat/idcin.c
View file @
45a8a02a
...
@@ -257,7 +257,7 @@ static int idcin_read_packet(AVFormatContext *s,
...
@@ -257,7 +257,7 @@ static int idcin_read_packet(AVFormatContext *s,
chunk_size
=
avio_rl32
(
pb
);
chunk_size
=
avio_rl32
(
pb
);
/* skip the number of decoded bytes (always equal to width * height) */
/* skip the number of decoded bytes (always equal to width * height) */
avio_s
eek
(
pb
,
4
,
SEEK_CUR
);
avio_s
kip
(
pb
,
4
);
chunk_size
-=
4
;
chunk_size
-=
4
;
ret
=
av_get_packet
(
pb
,
pkt
,
chunk_size
);
ret
=
av_get_packet
(
pb
,
pkt
,
chunk_size
);
if
(
ret
<
0
)
if
(
ret
<
0
)
...
...
libavformat/idroqdec.c
View file @
45a8a02a
...
@@ -136,14 +136,14 @@ static int roq_read_packet(AVFormatContext *s,
...
@@ -136,14 +136,14 @@ static int roq_read_packet(AVFormatContext *s,
break
;
break
;
}
}
/* don't care about this chunk anymore */
/* don't care about this chunk anymore */
avio_s
eek
(
pb
,
RoQ_CHUNK_PREAMBLE_SIZE
,
SEEK_CUR
);
avio_s
kip
(
pb
,
RoQ_CHUNK_PREAMBLE_SIZE
);
break
;
break
;
case
RoQ_QUAD_CODEBOOK
:
case
RoQ_QUAD_CODEBOOK
:
/* packet needs to contain both this codebook and next VQ chunk */
/* packet needs to contain both this codebook and next VQ chunk */
codebook_offset
=
avio_tell
(
pb
)
-
RoQ_CHUNK_PREAMBLE_SIZE
;
codebook_offset
=
avio_tell
(
pb
)
-
RoQ_CHUNK_PREAMBLE_SIZE
;
codebook_size
=
chunk_size
;
codebook_size
=
chunk_size
;
avio_s
eek
(
pb
,
codebook_size
,
SEEK_CUR
);
avio_s
kip
(
pb
,
codebook_size
);
if
(
avio_read
(
pb
,
preamble
,
RoQ_CHUNK_PREAMBLE_SIZE
)
!=
if
(
avio_read
(
pb
,
preamble
,
RoQ_CHUNK_PREAMBLE_SIZE
)
!=
RoQ_CHUNK_PREAMBLE_SIZE
)
RoQ_CHUNK_PREAMBLE_SIZE
)
return
AVERROR
(
EIO
);
return
AVERROR
(
EIO
);
...
...
libavformat/iff.c
View file @
45a8a02a
...
@@ -134,7 +134,7 @@ static int iff_read_header(AVFormatContext *s,
...
@@ -134,7 +134,7 @@ static int iff_read_header(AVFormatContext *s,
return
AVERROR
(
ENOMEM
);
return
AVERROR
(
ENOMEM
);
st
->
codec
->
channels
=
1
;
st
->
codec
->
channels
=
1
;
avio_s
eek
(
pb
,
8
,
SEEK_CUR
);
avio_s
kip
(
pb
,
8
);
// codec_tag used by ByteRun1 decoder to distinguish progressive (PBM) and interlaced (ILBM) content
// codec_tag used by ByteRun1 decoder to distinguish progressive (PBM) and interlaced (ILBM) content
st
->
codec
->
codec_tag
=
avio_rl32
(
pb
);
st
->
codec
->
codec_tag
=
avio_rl32
(
pb
);
...
@@ -152,10 +152,10 @@ static int iff_read_header(AVFormatContext *s,
...
@@ -152,10 +152,10 @@ static int iff_read_header(AVFormatContext *s,
if
(
data_size
<
14
)
if
(
data_size
<
14
)
return
AVERROR_INVALIDDATA
;
return
AVERROR_INVALIDDATA
;
avio_s
eek
(
pb
,
12
,
SEEK_CUR
);
avio_s
kip
(
pb
,
12
);
st
->
codec
->
sample_rate
=
avio_rb16
(
pb
);
st
->
codec
->
sample_rate
=
avio_rb16
(
pb
);
if
(
data_size
>=
16
)
{
if
(
data_size
>=
16
)
{
avio_s
eek
(
pb
,
1
,
SEEK_CUR
);
avio_s
kip
(
pb
,
1
);
compression
=
avio_r8
(
pb
);
compression
=
avio_r8
(
pb
);
}
}
break
;
break
;
...
@@ -186,14 +186,14 @@ static int iff_read_header(AVFormatContext *s,
...
@@ -186,14 +186,14 @@ static int iff_read_header(AVFormatContext *s,
return
AVERROR_INVALIDDATA
;
return
AVERROR_INVALIDDATA
;
st
->
codec
->
width
=
avio_rb16
(
pb
);
st
->
codec
->
width
=
avio_rb16
(
pb
);
st
->
codec
->
height
=
avio_rb16
(
pb
);
st
->
codec
->
height
=
avio_rb16
(
pb
);
avio_s
eek
(
pb
,
4
,
SEEK_CUR
);
// x, y offset
avio_s
kip
(
pb
,
4
);
// x, y offset
st
->
codec
->
bits_per_coded_sample
=
avio_r8
(
pb
);
st
->
codec
->
bits_per_coded_sample
=
avio_r8
(
pb
);
if
(
data_size
>=
11
)
{
if
(
data_size
>=
11
)
{
avio_s
eek
(
pb
,
1
,
SEEK_CUR
);
// masking
avio_s
kip
(
pb
,
1
);
// masking
compression
=
avio_r8
(
pb
);
compression
=
avio_r8
(
pb
);
}
}
if
(
data_size
>=
16
)
{
if
(
data_size
>=
16
)
{
avio_s
eek
(
pb
,
3
,
SEEK_CUR
);
// paddding, transparent
avio_s
kip
(
pb
,
3
);
// paddding, transparent
st
->
sample_aspect_ratio
.
num
=
avio_r8
(
pb
);
st
->
sample_aspect_ratio
.
num
=
avio_r8
(
pb
);
st
->
sample_aspect_ratio
.
den
=
avio_r8
(
pb
);
st
->
sample_aspect_ratio
.
den
=
avio_r8
(
pb
);
}
}
...
@@ -223,7 +223,7 @@ static int iff_read_header(AVFormatContext *s,
...
@@ -223,7 +223,7 @@ static int iff_read_header(AVFormatContext *s,
return
res
;
return
res
;
}
}
}
}
avio_s
eek
(
pb
,
data_size
-
(
avio_tell
(
pb
)
-
orig_pos
)
+
(
data_size
&
1
),
SEEK_CUR
);
avio_s
kip
(
pb
,
data_size
-
(
avio_tell
(
pb
)
-
orig_pos
)
+
(
data_size
&
1
)
);
}
}
avio_seek
(
pb
,
iff
->
body_pos
,
SEEK_SET
);
avio_seek
(
pb
,
iff
->
body_pos
,
SEEK_SET
);
...
...
libavformat/ingenientdec.c
View file @
45a8a02a
...
@@ -35,11 +35,11 @@ static int ingenient_read_packet(AVFormatContext *s, AVPacket *pkt)
...
@@ -35,11 +35,11 @@ static int ingenient_read_packet(AVFormatContext *s, AVPacket *pkt)
w
=
avio_rl16
(
s
->
pb
);
w
=
avio_rl16
(
s
->
pb
);
h
=
avio_rl16
(
s
->
pb
);
h
=
avio_rl16
(
s
->
pb
);
avio_s
eek
(
s
->
pb
,
8
,
SEEK_CUR
);
// zero + size (padded?)
avio_s
kip
(
s
->
pb
,
8
);
// zero + size (padded?)
avio_s
eek
(
s
->
pb
,
2
,
SEEK_CUR
);
avio_s
kip
(
s
->
pb
,
2
);
unk1
=
avio_rl16
(
s
->
pb
);
unk1
=
avio_rl16
(
s
->
pb
);
unk2
=
avio_rl16
(
s
->
pb
);
unk2
=
avio_rl16
(
s
->
pb
);
avio_s
eek
(
s
->
pb
,
22
,
SEEK_CUR
);
// ASCII timestamp
avio_s
kip
(
s
->
pb
,
22
);
// ASCII timestamp
av_log
(
s
,
AV_LOG_DEBUG
,
"Ingenient packet: size=%d, width=%d, height=%d, unk1=%d unk2=%d
\n
"
,
av_log
(
s
,
AV_LOG_DEBUG
,
"Ingenient packet: size=%d, width=%d, height=%d, unk1=%d unk2=%d
\n
"
,
size
,
w
,
h
,
unk1
,
unk2
);
size
,
w
,
h
,
unk1
,
unk2
);
...
...
libavformat/ipmovie.c
View file @
45a8a02a
...
@@ -299,12 +299,12 @@ static int process_ipmovie_chunk(IPMVEContext *s, AVIOContext *pb,
...
@@ -299,12 +299,12 @@ static int process_ipmovie_chunk(IPMVEContext *s, AVIOContext *pb,
case
OPCODE_END_OF_STREAM
:
case
OPCODE_END_OF_STREAM
:
debug_ipmovie
(
"end of stream
\n
"
);
debug_ipmovie
(
"end of stream
\n
"
);
avio_s
eek
(
pb
,
opcode_size
,
SEEK_CUR
);
avio_s
kip
(
pb
,
opcode_size
);
break
;
break
;
case
OPCODE_END_OF_CHUNK
:
case
OPCODE_END_OF_CHUNK
:
debug_ipmovie
(
"end of chunk
\n
"
);
debug_ipmovie
(
"end of chunk
\n
"
);
avio_s
eek
(
pb
,
opcode_size
,
SEEK_CUR
);
avio_s
kip
(
pb
,
opcode_size
);
break
;
break
;
case
OPCODE_CREATE_TIMER
:
case
OPCODE_CREATE_TIMER
:
...
@@ -359,7 +359,7 @@ static int process_ipmovie_chunk(IPMVEContext *s, AVIOContext *pb,
...
@@ -359,7 +359,7 @@ static int process_ipmovie_chunk(IPMVEContext *s, AVIOContext *pb,
case
OPCODE_START_STOP_AUDIO
:
case
OPCODE_START_STOP_AUDIO
:
debug_ipmovie
(
"start/stop audio
\n
"
);
debug_ipmovie
(
"start/stop audio
\n
"
);
avio_s
eek
(
pb
,
opcode_size
,
SEEK_CUR
);
avio_s
kip
(
pb
,
opcode_size
);
break
;
break
;
case
OPCODE_INIT_VIDEO_BUFFERS
:
case
OPCODE_INIT_VIDEO_BUFFERS
:
...
@@ -393,12 +393,12 @@ static int process_ipmovie_chunk(IPMVEContext *s, AVIOContext *pb,
...
@@ -393,12 +393,12 @@ static int process_ipmovie_chunk(IPMVEContext *s, AVIOContext *pb,
case
OPCODE_UNKNOWN_14
:
case
OPCODE_UNKNOWN_14
:
case
OPCODE_UNKNOWN_15
:
case
OPCODE_UNKNOWN_15
:
debug_ipmovie
(
"unknown (but documented) opcode %02X
\n
"
,
opcode_type
);
debug_ipmovie
(
"unknown (but documented) opcode %02X
\n
"
,
opcode_type
);
avio_s
eek
(
pb
,
opcode_size
,
SEEK_CUR
);
avio_s
kip
(
pb
,
opcode_size
);
break
;
break
;
case
OPCODE_SEND_BUFFER
:
case
OPCODE_SEND_BUFFER
:
debug_ipmovie
(
"send buffer
\n
"
);
debug_ipmovie
(
"send buffer
\n
"
);
avio_s
eek
(
pb
,
opcode_size
,
SEEK_CUR
);
avio_s
kip
(
pb
,
opcode_size
);
break
;
break
;
case
OPCODE_AUDIO_FRAME
:
case
OPCODE_AUDIO_FRAME
:
...
@@ -407,22 +407,22 @@ static int process_ipmovie_chunk(IPMVEContext *s, AVIOContext *pb,
...
@@ -407,22 +407,22 @@ static int process_ipmovie_chunk(IPMVEContext *s, AVIOContext *pb,
/* log position and move on for now */
/* log position and move on for now */
s
->
audio_chunk_offset
=
avio_tell
(
pb
);
s
->
audio_chunk_offset
=
avio_tell
(
pb
);
s
->
audio_chunk_size
=
opcode_size
;
s
->
audio_chunk_size
=
opcode_size
;
avio_s
eek
(
pb
,
opcode_size
,
SEEK_CUR
);
avio_s
kip
(
pb
,
opcode_size
);
break
;
break
;
case
OPCODE_SILENCE_FRAME
:
case
OPCODE_SILENCE_FRAME
:
debug_ipmovie
(
"silence frame
\n
"
);
debug_ipmovie
(
"silence frame
\n
"
);
avio_s
eek
(
pb
,
opcode_size
,
SEEK_CUR
);
avio_s
kip
(
pb
,
opcode_size
);
break
;
break
;
case
OPCODE_INIT_VIDEO_MODE
:
case
OPCODE_INIT_VIDEO_MODE
:
debug_ipmovie
(
"initialize video mode
\n
"
);
debug_ipmovie
(
"initialize video mode
\n
"
);
avio_s
eek
(
pb
,
opcode_size
,
SEEK_CUR
);
avio_s
kip
(
pb
,
opcode_size
);
break
;
break
;
case
OPCODE_CREATE_GRADIENT
:
case
OPCODE_CREATE_GRADIENT
:
debug_ipmovie
(
"create gradient
\n
"
);
debug_ipmovie
(
"create gradient
\n
"
);
avio_s
eek
(
pb
,
opcode_size
,
SEEK_CUR
);
avio_s
kip
(
pb
,
opcode_size
);
break
;
break
;
case
OPCODE_SET_PALETTE
:
case
OPCODE_SET_PALETTE
:
...
@@ -464,7 +464,7 @@ static int process_ipmovie_chunk(IPMVEContext *s, AVIOContext *pb,
...
@@ -464,7 +464,7 @@ static int process_ipmovie_chunk(IPMVEContext *s, AVIOContext *pb,
case
OPCODE_SET_PALETTE_COMPRESSED
:
case
OPCODE_SET_PALETTE_COMPRESSED
:
debug_ipmovie
(
"set palette compressed
\n
"
);
debug_ipmovie
(
"set palette compressed
\n
"
);
avio_s
eek
(
pb
,
opcode_size
,
SEEK_CUR
);
avio_s
kip
(
pb
,
opcode_size
);
break
;
break
;
case
OPCODE_SET_DECODING_MAP
:
case
OPCODE_SET_DECODING_MAP
:
...
@@ -473,7 +473,7 @@ static int process_ipmovie_chunk(IPMVEContext *s, AVIOContext *pb,
...
@@ -473,7 +473,7 @@ static int process_ipmovie_chunk(IPMVEContext *s, AVIOContext *pb,
/* log position and move on for now */
/* log position and move on for now */
s
->
decode_map_chunk_offset
=
avio_tell
(
pb
);
s
->
decode_map_chunk_offset
=
avio_tell
(
pb
);
s
->
decode_map_chunk_size
=
opcode_size
;
s
->
decode_map_chunk_size
=
opcode_size
;
avio_s
eek
(
pb
,
opcode_size
,
SEEK_CUR
);
avio_s
kip
(
pb
,
opcode_size
);
break
;
break
;
case
OPCODE_VIDEO_DATA
:
case
OPCODE_VIDEO_DATA
:
...
@@ -482,7 +482,7 @@ static int process_ipmovie_chunk(IPMVEContext *s, AVIOContext *pb,
...
@@ -482,7 +482,7 @@ static int process_ipmovie_chunk(IPMVEContext *s, AVIOContext *pb,
/* log position and move on for now */
/* log position and move on for now */
s
->
video_chunk_offset
=
avio_tell
(
pb
);
s
->
video_chunk_offset
=
avio_tell
(
pb
);
s
->
video_chunk_size
=
opcode_size
;
s
->
video_chunk_size
=
opcode_size
;
avio_s
eek
(
pb
,
opcode_size
,
SEEK_CUR
);
avio_s
kip
(
pb
,
opcode_size
);
break
;
break
;
default:
default:
...
...
libavformat/iv8.c
View file @
45a8a02a
...
@@ -70,7 +70,7 @@ retry:
...
@@ -70,7 +70,7 @@ retry:
return
-
1
;
return
-
1
;
if
(
type
==
258
){
if
(
type
==
258
){
avio_s
eek
(
s
->
pb
,
size
,
SEEK_CUR
);
avio_s
kip
(
s
->
pb
,
size
);
goto
retry
;
goto
retry
;
}
}
...
...
libavformat/lmlm4.c
View file @
45a8a02a
...
@@ -100,7 +100,7 @@ static int lmlm4_read_packet(AVFormatContext *s, AVPacket *pkt) {
...
@@ -100,7 +100,7 @@ static int lmlm4_read_packet(AVFormatContext *s, AVPacket *pkt) {
if
((
ret
=
av_get_packet
(
pb
,
pkt
,
frame_size
))
<=
0
)
if
((
ret
=
av_get_packet
(
pb
,
pkt
,
frame_size
))
<=
0
)
return
AVERROR
(
EIO
);
return
AVERROR
(
EIO
);
avio_s
eek
(
pb
,
padding
,
SEEK_CUR
);
avio_s
kip
(
pb
,
padding
);
switch
(
frame_type
)
{
switch
(
frame_type
)
{
case
LMLM4_I_FRAME
:
case
LMLM4_I_FRAME
:
...
...
libavformat/lxfdec.c
View file @
45a8a02a
...
@@ -137,8 +137,8 @@ static int get_packet_header(AVFormatContext *s, uint8_t *header, uint32_t *form
...
@@ -137,8 +137,8 @@ static int get_packet_header(AVFormatContext *s, uint8_t *header, uint32_t *form
case
0
:
case
0
:
//video
//video
//skip VBI data and metadata
//skip VBI data and metadata
avio_s
eek
(
pb
,
(
int64_t
)(
uint32_t
)
AV_RL32
(
&
header
[
44
])
+
avio_s
kip
(
pb
,
(
int64_t
)(
uint32_t
)
AV_RL32
(
&
header
[
44
])
+
(
int64_t
)(
uint32_t
)
AV_RL32
(
&
header
[
52
])
,
SEEK_CUR
);
(
int64_t
)(
uint32_t
)
AV_RL32
(
&
header
[
52
]));
break
;
break
;
case
1
:
case
1
:
//audio
//audio
...
@@ -255,7 +255,7 @@ static int lxf_read_header(AVFormatContext *s, AVFormatParameters *ap)
...
@@ -255,7 +255,7 @@ static int lxf_read_header(AVFormatContext *s, AVFormatParameters *ap)
if
(
format
==
1
)
{
if
(
format
==
1
)
{
//skip extended field data
//skip extended field data
avio_s
eek
(
s
->
pb
,
(
uint32_t
)
AV_RL32
(
&
header
[
40
]),
SEEK_CUR
);
avio_s
kip
(
s
->
pb
,
(
uint32_t
)
AV_RL32
(
&
header
[
40
])
);
}
}
return
0
;
return
0
;
...
...
libavformat/matroskadec.c
View file @
45a8a02a
...
@@ -831,7 +831,7 @@ static int ebml_parse_elem(MatroskaDemuxContext *matroska,
...
@@ -831,7 +831,7 @@ static int ebml_parse_elem(MatroskaDemuxContext *matroska,
return
ebml_parse_nest
(
matroska
,
syntax
->
def
.
n
,
data
);
return
ebml_parse_nest
(
matroska
,
syntax
->
def
.
n
,
data
);
case
EBML_PASS
:
return
ebml_parse_id
(
matroska
,
syntax
->
def
.
n
,
id
,
data
);
case
EBML_PASS
:
return
ebml_parse_id
(
matroska
,
syntax
->
def
.
n
,
id
,
data
);
case
EBML_STOP
:
return
1
;
case
EBML_STOP
:
return
1
;
default:
return
avio_s
eek
(
pb
,
length
,
SEEK_CUR
)
<
0
?
AVERROR
(
EIO
)
:
0
;
default:
return
avio_s
kip
(
pb
,
length
)
<
0
?
AVERROR
(
EIO
)
:
0
;
}
}
if
(
res
==
AVERROR_INVALIDDATA
)
if
(
res
==
AVERROR_INVALIDDATA
)
av_log
(
matroska
->
ctx
,
AV_LOG_ERROR
,
"Invalid element
\n
"
);
av_log
(
matroska
->
ctx
,
AV_LOG_ERROR
,
"Invalid element
\n
"
);
...
@@ -1393,10 +1393,10 @@ static int matroska_read_header(AVFormatContext *s, AVFormatParameters *ap)
...
@@ -1393,10 +1393,10 @@ static int matroska_read_header(AVFormatContext *s, AVFormatParameters *ap)
int
flavor
;
int
flavor
;
ffio_init_context
(
&
b
,
track
->
codec_priv
.
data
,
track
->
codec_priv
.
size
,
ffio_init_context
(
&
b
,
track
->
codec_priv
.
data
,
track
->
codec_priv
.
size
,
0
,
NULL
,
NULL
,
NULL
,
NULL
);
0
,
NULL
,
NULL
,
NULL
,
NULL
);
avio_s
eek
(
&
b
,
22
,
SEEK_CUR
);
avio_s
kip
(
&
b
,
22
);
flavor
=
avio_rb16
(
&
b
);
flavor
=
avio_rb16
(
&
b
);
track
->
audio
.
coded_framesize
=
avio_rb32
(
&
b
);
track
->
audio
.
coded_framesize
=
avio_rb32
(
&
b
);
avio_s
eek
(
&
b
,
12
,
SEEK_CUR
);
avio_s
kip
(
&
b
,
12
);
track
->
audio
.
sub_packet_h
=
avio_rb16
(
&
b
);
track
->
audio
.
sub_packet_h
=
avio_rb16
(
&
b
);
track
->
audio
.
frame_size
=
avio_rb16
(
&
b
);
track
->
audio
.
frame_size
=
avio_rb16
(
&
b
);
track
->
audio
.
sub_packet_size
=
avio_rb16
(
&
b
);
track
->
audio
.
sub_packet_size
=
avio_rb16
(
&
b
);
...
...
libavformat/mm.c
View file @
45a8a02a
...
@@ -102,7 +102,7 @@ static int read_header(AVFormatContext *s,
...
@@ -102,7 +102,7 @@ static int read_header(AVFormatContext *s,
avio_rl16
(
pb
);
/* ibm-pc video bios mode */
avio_rl16
(
pb
);
/* ibm-pc video bios mode */
width
=
avio_rl16
(
pb
);
width
=
avio_rl16
(
pb
);
height
=
avio_rl16
(
pb
);
height
=
avio_rl16
(
pb
);
avio_s
eek
(
pb
,
length
-
10
,
SEEK_CUR
);
/* unknown data */
avio_s
kip
(
pb
,
length
-
10
);
/* unknown data */
/* video stream */
/* video stream */
st
=
av_new_stream
(
s
,
0
);
st
=
av_new_stream
(
s
,
0
);
...
@@ -181,7 +181,7 @@ static int read_packet(AVFormatContext *s,
...
@@ -181,7 +181,7 @@ static int read_packet(AVFormatContext *s,
default
:
default
:
av_log
(
s
,
AV_LOG_INFO
,
"unknown chunk type 0x%x
\n
"
,
type
);
av_log
(
s
,
AV_LOG_INFO
,
"unknown chunk type 0x%x
\n
"
,
type
);
avio_s
eek
(
pb
,
length
,
SEEK_CUR
);
avio_s
kip
(
pb
,
length
);
}
}
}
}
...
...
libavformat/mmf.c
View file @
45a8a02a
...
@@ -195,7 +195,7 @@ static int mmf_read_header(AVFormatContext *s,
...
@@ -195,7 +195,7 @@ static int mmf_read_header(AVFormatContext *s,
file_size
=
avio_rb32
(
pb
);
file_size
=
avio_rb32
(
pb
);
/* Skip some unused chunks that may or may not be present */
/* Skip some unused chunks that may or may not be present */
for
(;;
avio_s
eek
(
pb
,
size
,
SEEK_CUR
))
{
for
(;;
avio_s
kip
(
pb
,
size
))
{
tag
=
avio_rl32
(
pb
);
tag
=
avio_rl32
(
pb
);
size
=
avio_rb32
(
pb
);
size
=
avio_rb32
(
pb
);
if
(
tag
==
MKTAG
(
'C'
,
'N'
,
'T'
,
'I'
))
continue
;
if
(
tag
==
MKTAG
(
'C'
,
'N'
,
'T'
,
'I'
))
continue
;
...
@@ -226,7 +226,7 @@ static int mmf_read_header(AVFormatContext *s,
...
@@ -226,7 +226,7 @@ static int mmf_read_header(AVFormatContext *s,
avio_r8
(
pb
);
/* time base g */
avio_r8
(
pb
);
/* time base g */
/* Skip some unused chunks that may or may not be present */
/* Skip some unused chunks that may or may not be present */
for
(;;
avio_s
eek
(
pb
,
size
,
SEEK_CUR
))
{
for
(;;
avio_s
kip
(
pb
,
size
))
{
tag
=
avio_rl32
(
pb
);
tag
=
avio_rl32
(
pb
);
size
=
avio_rb32
(
pb
);
size
=
avio_rb32
(
pb
);
if
(
tag
==
MKTAG
(
'A'
,
't'
,
's'
,
'q'
))
continue
;
if
(
tag
==
MKTAG
(
'A'
,
't'
,
's'
,
'q'
))
continue
;
...
...
libavformat/mov.c
View file @
45a8a02a
...
@@ -296,7 +296,7 @@ static int mov_read_default(MOVContext *c, AVIOContext *pb, MOVAtom atom)
...
@@ -296,7 +296,7 @@ static int mov_read_default(MOVContext *c, AVIOContext *pb, MOVAtom atom)
parse
=
mov_read_udta_string
;
parse
=
mov_read_udta_string
;
if
(
!
parse
)
{
/* skip leaf atoms data */
if
(
!
parse
)
{
/* skip leaf atoms data */
avio_s
eek
(
pb
,
a
.
size
,
SEEK_CUR
);
avio_s
kip
(
pb
,
a
.
size
);
}
else
{
}
else
{
int64_t
start_pos
=
avio_tell
(
pb
);
int64_t
start_pos
=
avio_tell
(
pb
);
int64_t
left
;
int64_t
left
;
...
@@ -308,14 +308,14 @@ static int mov_read_default(MOVContext *c, AVIOContext *pb, MOVAtom atom)
...
@@ -308,14 +308,14 @@ static int mov_read_default(MOVContext *c, AVIOContext *pb, MOVAtom atom)
return
0
;
return
0
;
left
=
a
.
size
-
avio_tell
(
pb
)
+
start_pos
;
left
=
a
.
size
-
avio_tell
(
pb
)
+
start_pos
;
if
(
left
>
0
)
/* skip garbage at atom end */
if
(
left
>
0
)
/* skip garbage at atom end */
avio_s
eek
(
pb
,
left
,
SEEK_CUR
);
avio_s
kip
(
pb
,
left
);
}
}
total_size
+=
a
.
size
;
total_size
+=
a
.
size
;
}
}
if
(
total_size
<
atom
.
size
&&
atom
.
size
<
0x7ffff
)
if
(
total_size
<
atom
.
size
&&
atom
.
size
<
0x7ffff
)
avio_s
eek
(
pb
,
atom
.
size
-
total_size
,
SEEK_CUR
);
avio_s
kip
(
pb
,
atom
.
size
-
total_size
);
return
0
;
return
0
;
}
}
...
@@ -357,7 +357,7 @@ static int mov_read_dref(MOVContext *c, AVIOContext *pb, MOVAtom atom)
...
@@ -357,7 +357,7 @@ static int mov_read_dref(MOVContext *c, AVIOContext *pb, MOVAtom atom)
uint16_t
volume_len
,
len
;
uint16_t
volume_len
,
len
;
int16_t
type
;
int16_t
type
;
avio_s
eek
(
pb
,
10
,
SEEK_CUR
);
avio_s
kip
(
pb
,
10
);
volume_len
=
avio_r8
(
pb
);
volume_len
=
avio_r8
(
pb
);
volume_len
=
FFMIN
(
volume_len
,
27
);
volume_len
=
FFMIN
(
volume_len
,
27
);
...
@@ -365,7 +365,7 @@ static int mov_read_dref(MOVContext *c, AVIOContext *pb, MOVAtom atom)
...
@@ -365,7 +365,7 @@ static int mov_read_dref(MOVContext *c, AVIOContext *pb, MOVAtom atom)
dref
->
volume
[
volume_len
]
=
0
;
dref
->
volume
[
volume_len
]
=
0
;
av_log
(
c
->
fc
,
AV_LOG_DEBUG
,
"volume %s, len %d
\n
"
,
dref
->
volume
,
volume_len
);
av_log
(
c
->
fc
,
AV_LOG_DEBUG
,
"volume %s, len %d
\n
"
,
dref
->
volume
,
volume_len
);
avio_s
eek
(
pb
,
12
,
SEEK_CUR
);
avio_s
kip
(
pb
,
12
);
len
=
avio_r8
(
pb
);
len
=
avio_r8
(
pb
);
len
=
FFMIN
(
len
,
63
);
len
=
FFMIN
(
len
,
63
);
...
@@ -373,7 +373,7 @@ static int mov_read_dref(MOVContext *c, AVIOContext *pb, MOVAtom atom)
...
@@ -373,7 +373,7 @@ static int mov_read_dref(MOVContext *c, AVIOContext *pb, MOVAtom atom)
dref
->
filename
[
len
]
=
0
;
dref
->
filename
[
len
]
=
0
;
av_log
(
c
->
fc
,
AV_LOG_DEBUG
,
"filename %s, len %d
\n
"
,
dref
->
filename
,
len
);
av_log
(
c
->
fc
,
AV_LOG_DEBUG
,
"filename %s, len %d
\n
"
,
dref
->
filename
,
len
);
avio_s
eek
(
pb
,
16
,
SEEK_CUR
);
avio_s
kip
(
pb
,
16
);
/* read next level up_from_alias/down_to_target */
/* read next level up_from_alias/down_to_target */
dref
->
nlvl_from
=
avio_rb16
(
pb
);
dref
->
nlvl_from
=
avio_rb16
(
pb
);
...
@@ -381,7 +381,7 @@ static int mov_read_dref(MOVContext *c, AVIOContext *pb, MOVAtom atom)
...
@@ -381,7 +381,7 @@ static int mov_read_dref(MOVContext *c, AVIOContext *pb, MOVAtom atom)
av_log
(
c
->
fc
,
AV_LOG_DEBUG
,
"nlvl from %d, nlvl to %d
\n
"
,
av_log
(
c
->
fc
,
AV_LOG_DEBUG
,
"nlvl from %d, nlvl to %d
\n
"
,
dref
->
nlvl_from
,
dref
->
nlvl_to
);
dref
->
nlvl_from
,
dref
->
nlvl_to
);
avio_s
eek
(
pb
,
16
,
SEEK_CUR
);
avio_s
kip
(
pb
,
16
);
for
(
type
=
0
;
type
!=
-
1
&&
avio_tell
(
pb
)
<
next
;
)
{
for
(
type
=
0
;
type
!=
-
1
&&
avio_tell
(
pb
)
<
next
;
)
{
type
=
avio_rb16
(
pb
);
type
=
avio_rb16
(
pb
);
...
@@ -416,7 +416,7 @@ static int mov_read_dref(MOVContext *c, AVIOContext *pb, MOVAtom atom)
...
@@ -416,7 +416,7 @@ static int mov_read_dref(MOVContext *c, AVIOContext *pb, MOVAtom atom)
dref
->
dir
[
j
]
=
'/'
;
dref
->
dir
[
j
]
=
'/'
;
av_log
(
c
->
fc
,
AV_LOG_DEBUG
,
"dir %s
\n
"
,
dref
->
dir
);
av_log
(
c
->
fc
,
AV_LOG_DEBUG
,
"dir %s
\n
"
,
dref
->
dir
);
}
else
}
else
avio_s
eek
(
pb
,
len
,
SEEK_CUR
);
avio_s
kip
(
pb
,
len
);
}
}
}
}
avio_seek
(
pb
,
next
,
SEEK_SET
);
avio_seek
(
pb
,
next
,
SEEK_SET
);
...
@@ -663,9 +663,9 @@ static int mov_read_mvhd(MOVContext *c, AVIOContext *pb, MOVAtom atom)
...
@@ -663,9 +663,9 @@ static int mov_read_mvhd(MOVContext *c, AVIOContext *pb, MOVAtom atom)
avio_rb16
(
pb
);
/* preferred volume */
avio_rb16
(
pb
);
/* preferred volume */
avio_s
eek
(
pb
,
10
,
SEEK_CUR
);
/* reserved */
avio_s
kip
(
pb
,
10
);
/* reserved */
avio_s
eek
(
pb
,
36
,
SEEK_CUR
);
/* display matrix */
avio_s
kip
(
pb
,
36
);
/* display matrix */
avio_rb32
(
pb
);
/* preview time */
avio_rb32
(
pb
);
/* preview time */
avio_rb32
(
pb
);
/* preview duration */
avio_rb32
(
pb
);
/* preview duration */
...
@@ -782,7 +782,7 @@ static int mov_read_wave(MOVContext *c, AVIOContext *pb, MOVAtom atom)
...
@@ -782,7 +782,7 @@ static int mov_read_wave(MOVContext *c, AVIOContext *pb, MOVAtom atom)
if
(
mov_read_default
(
c
,
pb
,
atom
)
<
0
)
if
(
mov_read_default
(
c
,
pb
,
atom
)
<
0
)
return
-
1
;
return
-
1
;
}
else
}
else
avio_s
eek
(
pb
,
atom
.
size
,
SEEK_CUR
);
avio_s
kip
(
pb
,
atom
.
size
);
return
0
;
return
0
;
}
}
...
@@ -833,7 +833,7 @@ static int mov_read_strf(MOVContext *c, AVIOContext *pb, MOVAtom atom)
...
@@ -833,7 +833,7 @@ static int mov_read_strf(MOVContext *c, AVIOContext *pb, MOVAtom atom)
if
(
!
st
->
codec
->
extradata
)
if
(
!
st
->
codec
->
extradata
)
return
AVERROR
(
ENOMEM
);
return
AVERROR
(
ENOMEM
);
st
->
codec
->
extradata_size
=
atom
.
size
-
40
;
st
->
codec
->
extradata_size
=
atom
.
size
-
40
;
avio_s
eek
(
pb
,
40
,
SEEK_CUR
);
avio_s
kip
(
pb
,
40
);
avio_read
(
pb
,
st
->
codec
->
extradata
,
atom
.
size
-
40
);
avio_read
(
pb
,
st
->
codec
->
extradata
,
atom
.
size
-
40
);
return
0
;
return
0
;
}
}
...
@@ -945,7 +945,7 @@ int ff_mov_read_stsd_entries(MOVContext *c, AVIOContext *pb, int entries)
...
@@ -945,7 +945,7 @@ int ff_mov_read_stsd_entries(MOVContext *c, AVIOContext *pb, int entries)
* in the MOV demuxer, patch welcome. */
* in the MOV demuxer, patch welcome. */
multiple_stsd:
multiple_stsd:
av_log
(
c
->
fc
,
AV_LOG_WARNING
,
"multiple fourcc not supported
\n
"
);
av_log
(
c
->
fc
,
AV_LOG_WARNING
,
"multiple fourcc not supported
\n
"
);
avio_s
eek
(
pb
,
size
-
(
avio_tell
(
pb
)
-
start_pos
),
SEEK_CUR
);
avio_s
kip
(
pb
,
size
-
(
avio_tell
(
pb
)
-
start_pos
)
);
continue
;
continue
;
}
}
/* we cannot demux concatenated h264 streams because of different extradata */
/* we cannot demux concatenated h264 streams because of different extradata */
...
@@ -1003,7 +1003,7 @@ int ff_mov_read_stsd_entries(MOVContext *c, AVIOContext *pb, int entries)
...
@@ -1003,7 +1003,7 @@ int ff_mov_read_stsd_entries(MOVContext *c, AVIOContext *pb, int entries)
len
=
31
;
len
=
31
;
mov_read_mac_string
(
c
,
pb
,
len
,
st
->
codec
->
codec_name
,
32
);
mov_read_mac_string
(
c
,
pb
,
len
,
st
->
codec
->
codec_name
,
32
);
if
(
len
<
31
)
if
(
len
<
31
)
avio_s
eek
(
pb
,
31
-
len
,
SEEK_CUR
);
avio_s
kip
(
pb
,
31
-
len
);
/* codec_tag YV12 triggers an UV swap in rawdec.c */
/* codec_tag YV12 triggers an UV swap in rawdec.c */
if
(
!
memcmp
(
st
->
codec
->
codec_name
,
"Planar Y'CbCr 8-bit 4:2:0"
,
25
))
if
(
!
memcmp
(
st
->
codec
->
codec_name
,
"Planar Y'CbCr 8-bit 4:2:0"
,
25
))
st
->
codec
->
codec_tag
=
MKTAG
(
'I'
,
'4'
,
'2'
,
'0'
);
st
->
codec
->
codec_tag
=
MKTAG
(
'I'
,
'4'
,
'2'
,
'0'
);
...
@@ -1174,7 +1174,7 @@ int ff_mov_read_stsd_entries(MOVContext *c, AVIOContext *pb, int entries)
...
@@ -1174,7 +1174,7 @@ int ff_mov_read_stsd_entries(MOVContext *c, AVIOContext *pb, int entries)
st
->
codec
->
height
=
sc
->
height
;
st
->
codec
->
height
=
sc
->
height
;
}
else
{
}
else
{
/* other codec type, just skip (rtp, mp4s, tmcd ...) */
/* other codec type, just skip (rtp, mp4s, tmcd ...) */
avio_s
eek
(
pb
,
size
-
(
avio_tell
(
pb
)
-
start_pos
),
SEEK_CUR
);
avio_s
kip
(
pb
,
size
-
(
avio_tell
(
pb
)
-
start_pos
)
);
}
}
/* this will read extra atoms at the end (wave, alac, damr, avcC, SMI ...) */
/* this will read extra atoms at the end (wave, alac, damr, avcC, SMI ...) */
a
.
size
=
size
-
(
avio_tell
(
pb
)
-
start_pos
);
a
.
size
=
size
-
(
avio_tell
(
pb
)
-
start_pos
);
...
@@ -1182,7 +1182,7 @@ int ff_mov_read_stsd_entries(MOVContext *c, AVIOContext *pb, int entries)
...
@@ -1182,7 +1182,7 @@ int ff_mov_read_stsd_entries(MOVContext *c, AVIOContext *pb, int entries)
if
(
mov_read_default
(
c
,
pb
,
a
)
<
0
)
if
(
mov_read_default
(
c
,
pb
,
a
)
<
0
)
return
-
1
;
return
-
1
;
}
else
if
(
a
.
size
>
0
)
}
else
if
(
a
.
size
>
0
)
avio_s
eek
(
pb
,
a
.
size
,
SEEK_CUR
);
avio_s
kip
(
pb
,
a
.
size
);
}
}
if
(
st
->
codec
->
codec_type
==
AVMEDIA_TYPE_AUDIO
&&
st
->
codec
->
sample_rate
==
0
&&
sc
->
time_scale
>
1
)
if
(
st
->
codec
->
codec_type
==
AVMEDIA_TYPE_AUDIO
&&
st
->
codec
->
sample_rate
==
0
&&
sc
->
time_scale
>
1
)
...
@@ -2078,13 +2078,13 @@ static int mov_read_wide(MOVContext *c, AVIOContext *pb, MOVAtom atom)
...
@@ -2078,13 +2078,13 @@ static int mov_read_wide(MOVContext *c, AVIOContext *pb, MOVAtom atom)
if
(
atom
.
size
<
8
)
if
(
atom
.
size
<
8
)
return
0
;
/* continue */
return
0
;
/* continue */
if
(
avio_rb32
(
pb
)
!=
0
)
{
/* 0 sized mdat atom... use the 'wide' atom size */
if
(
avio_rb32
(
pb
)
!=
0
)
{
/* 0 sized mdat atom... use the 'wide' atom size */
avio_s
eek
(
pb
,
atom
.
size
-
4
,
SEEK_CUR
);
avio_s
kip
(
pb
,
atom
.
size
-
4
);
return
0
;
return
0
;
}
}
atom
.
type
=
avio_rl32
(
pb
);
atom
.
type
=
avio_rl32
(
pb
);
atom
.
size
-=
8
;
atom
.
size
-=
8
;
if
(
atom
.
type
!=
MKTAG
(
'm'
,
'd'
,
'a'
,
't'
))
{
if
(
atom
.
type
!=
MKTAG
(
'm'
,
'd'
,
'a'
,
't'
))
{
avio_s
eek
(
pb
,
atom
.
size
,
SEEK_CUR
);
avio_s
kip
(
pb
,
atom
.
size
);
return
0
;
return
0
;
}
}
err
=
mov_read_mdat
(
c
,
pb
,
atom
);
err
=
mov_read_mdat
(
c
,
pb
,
atom
);
...
...
libavformat/mp3dec.c
View file @
45a8a02a
...
@@ -107,7 +107,7 @@ static int mp3_parse_vbr_tags(AVFormatContext *s, AVStream *st, int64_t base)
...
@@ -107,7 +107,7 @@ static int mp3_parse_vbr_tags(AVFormatContext *s, AVStream *st, int64_t base)
/* Check tag version */
/* Check tag version */
if
(
avio_rb16
(
s
->
pb
)
==
1
)
{
if
(
avio_rb16
(
s
->
pb
)
==
1
)
{
/* skip delay and quality */
/* skip delay and quality */
avio_s
eek
(
s
->
pb
,
4
,
SEEK_CUR
);
avio_s
kip
(
s
->
pb
,
4
);
frames
=
avio_rb32
(
s
->
pb
);
frames
=
avio_rb32
(
s
->
pb
);
size
=
avio_rb32
(
s
->
pb
);
size
=
avio_rb32
(
s
->
pb
);
}
}
...
...
libavformat/mpc8.c
View file @
45a8a02a
...
@@ -182,7 +182,7 @@ static void mpc8_handle_chunk(AVFormatContext *s, int tag, int64_t chunk_pos, in
...
@@ -182,7 +182,7 @@ static void mpc8_handle_chunk(AVFormatContext *s, int tag, int64_t chunk_pos, in
avio_seek
(
pb
,
pos
,
SEEK_SET
);
avio_seek
(
pb
,
pos
,
SEEK_SET
);
break
;
break
;
default:
default:
avio_s
eek
(
pb
,
size
,
SEEK_CUR
);
avio_s
kip
(
pb
,
size
);
}
}
}
}
...
@@ -212,7 +212,7 @@ static int mpc8_read_header(AVFormatContext *s, AVFormatParameters *ap)
...
@@ -212,7 +212,7 @@ static int mpc8_read_header(AVFormatContext *s, AVFormatParameters *ap)
return
-
1
;
return
-
1
;
}
}
pos
=
avio_tell
(
pb
);
pos
=
avio_tell
(
pb
);
avio_s
eek
(
pb
,
4
,
SEEK_CUR
);
//CRC
avio_s
kip
(
pb
,
4
);
//CRC
c
->
ver
=
avio_r8
(
pb
);
c
->
ver
=
avio_r8
(
pb
);
if
(
c
->
ver
!=
8
){
if
(
c
->
ver
!=
8
){
av_log
(
s
,
AV_LOG_ERROR
,
"Unknown stream version %d
\n
"
,
c
->
ver
);
av_log
(
s
,
AV_LOG_ERROR
,
"Unknown stream version %d
\n
"
,
c
->
ver
);
...
...
libavformat/mpeg.c
View file @
45a8a02a
...
@@ -212,7 +212,7 @@ static long mpegps_psm_parse(MpegDemuxContext *m, AVIOContext *pb)
...
@@ -212,7 +212,7 @@ static long mpegps_psm_parse(MpegDemuxContext *m, AVIOContext *pb)
ps_info_length
=
avio_rb16
(
pb
);
ps_info_length
=
avio_rb16
(
pb
);
/* skip program_stream_info */
/* skip program_stream_info */
avio_s
eek
(
pb
,
ps_info_length
,
SEEK_CUR
);
avio_s
kip
(
pb
,
ps_info_length
);
es_map_length
=
avio_rb16
(
pb
);
es_map_length
=
avio_rb16
(
pb
);
/* at least one es available? */
/* at least one es available? */
...
@@ -223,7 +223,7 @@ static long mpegps_psm_parse(MpegDemuxContext *m, AVIOContext *pb)
...
@@ -223,7 +223,7 @@ static long mpegps_psm_parse(MpegDemuxContext *m, AVIOContext *pb)
/* remember mapping from stream id to stream type */
/* remember mapping from stream id to stream type */
m
->
psm_es_type
[
es_id
]
=
type
;
m
->
psm_es_type
[
es_id
]
=
type
;
/* skip program_stream_info */
/* skip program_stream_info */
avio_s
eek
(
pb
,
es_info_length
,
SEEK_CUR
);
avio_s
kip
(
pb
,
es_info_length
);
es_map_length
-=
4
+
es_info_length
;
es_map_length
-=
4
+
es_info_length
;
}
}
avio_rb32
(
pb
);
/* crc32 */
avio_rb32
(
pb
);
/* crc32 */
...
@@ -264,7 +264,7 @@ static int mpegps_read_pes_header(AVFormatContext *s,
...
@@ -264,7 +264,7 @@ static int mpegps_read_pes_header(AVFormatContext *s,
if
(
startcode
==
SYSTEM_HEADER_START_CODE
)
if
(
startcode
==
SYSTEM_HEADER_START_CODE
)
goto
redo
;
goto
redo
;
if
(
startcode
==
PADDING_STREAM
)
{
if
(
startcode
==
PADDING_STREAM
)
{
avio_s
eek
(
s
->
pb
,
avio_rb16
(
s
->
pb
),
SEEK_CUR
);
avio_s
kip
(
s
->
pb
,
avio_rb16
(
s
->
pb
)
);
goto
redo
;
goto
redo
;
}
}
if
(
startcode
==
PRIVATE_STREAM_2
)
{
if
(
startcode
==
PRIVATE_STREAM_2
)
{
...
@@ -281,7 +281,7 @@ static int mpegps_read_pes_header(AVFormatContext *s,
...
@@ -281,7 +281,7 @@ static int mpegps_read_pes_header(AVFormatContext *s,
}
}
m
->
sofdec
-=
!
m
->
sofdec
;
m
->
sofdec
-=
!
m
->
sofdec
;
}
}
avio_s
eek
(
s
->
pb
,
len
,
SEEK_CUR
);
avio_s
kip
(
s
->
pb
,
len
);
goto
redo
;
goto
redo
;
}
}
if
(
startcode
==
PROGRAM_STREAM_MAP
)
{
if
(
startcode
==
PROGRAM_STREAM_MAP
)
{
...
@@ -359,7 +359,7 @@ static int mpegps_read_pes_header(AVFormatContext *s,
...
@@ -359,7 +359,7 @@ static int mpegps_read_pes_header(AVFormatContext *s,
av_log
(
s
,
AV_LOG_WARNING
,
"pes_ext %X is invalid
\n
"
,
pes_ext
);
av_log
(
s
,
AV_LOG_WARNING
,
"pes_ext %X is invalid
\n
"
,
pes_ext
);
pes_ext
=
skip
=
0
;
pes_ext
=
skip
=
0
;
}
}
avio_s
eek
(
s
->
pb
,
skip
,
SEEK_CUR
);
avio_s
kip
(
s
->
pb
,
skip
);
header_len
-=
skip
;
header_len
-=
skip
;
if
(
pes_ext
&
0x01
)
{
/* PES extension 2 */
if
(
pes_ext
&
0x01
)
{
/* PES extension 2 */
...
@@ -375,7 +375,7 @@ static int mpegps_read_pes_header(AVFormatContext *s,
...
@@ -375,7 +375,7 @@ static int mpegps_read_pes_header(AVFormatContext *s,
}
}
if
(
header_len
<
0
)
if
(
header_len
<
0
)
goto
error_redo
;
goto
error_redo
;
avio_s
eek
(
s
->
pb
,
header_len
,
SEEK_CUR
);
avio_s
kip
(
s
->
pb
,
header_len
);
}
}
else
if
(
c
!=
0xf
)
else
if
(
c
!=
0xf
)
goto
redo
;
goto
redo
;
...
@@ -433,7 +433,7 @@ static int mpegps_read_packet(AVFormatContext *s,
...
@@ -433,7 +433,7 @@ static int mpegps_read_packet(AVFormatContext *s,
if
(
startcode
==
0x1bd
)
{
if
(
startcode
==
0x1bd
)
{
dvdaudio_substream_type
=
avio_r8
(
s
->
pb
);
dvdaudio_substream_type
=
avio_r8
(
s
->
pb
);
avio_s
eek
(
s
->
pb
,
3
,
SEEK_CUR
);
avio_s
kip
(
s
->
pb
,
3
);
len
-=
4
;
len
-=
4
;
}
}
...
@@ -525,7 +525,7 @@ static int mpegps_read_packet(AVFormatContext *s,
...
@@ -525,7 +525,7 @@ static int mpegps_read_packet(AVFormatContext *s,
}
else
{
}
else
{
skip:
skip:
/* skip packet */
/* skip packet */
avio_s
eek
(
s
->
pb
,
len
,
SEEK_CUR
);
avio_s
kip
(
s
->
pb
,
len
);
goto
redo
;
goto
redo
;
}
}
/* no stream found: add a new stream */
/* no stream found: add a new stream */
...
@@ -602,7 +602,7 @@ static int64_t mpegps_read_dts(AVFormatContext *s, int stream_index,
...
@@ -602,7 +602,7 @@ static int64_t mpegps_read_dts(AVFormatContext *s, int stream_index,
dts
!=
AV_NOPTS_VALUE
)
{
dts
!=
AV_NOPTS_VALUE
)
{
break
;
break
;
}
}
avio_s
eek
(
s
->
pb
,
len
,
SEEK_CUR
);
avio_s
kip
(
s
->
pb
,
len
);
}
}
#ifdef DEBUG_SEEK
#ifdef DEBUG_SEEK
printf
(
"pos=0x%"
PRIx64
" dts=0x%"
PRIx64
" %0.3f
\n
"
,
pos
,
dts
,
dts
/
90000
.
0
);
printf
(
"pos=0x%"
PRIx64
" dts=0x%"
PRIx64
" %0.3f
\n
"
,
pos
,
dts
,
dts
/
90000
.
0
);
...
...
libavformat/mpegts.c
View file @
45a8a02a
...
@@ -1362,7 +1362,7 @@ static int read_packet(AVFormatContext *s, uint8_t *buf, int raw_packet_size)
...
@@ -1362,7 +1362,7 @@ static int read_packet(AVFormatContext *s, uint8_t *buf, int raw_packet_size)
}
else
{
}
else
{
skip
=
raw_packet_size
-
TS_PACKET_SIZE
;
skip
=
raw_packet_size
-
TS_PACKET_SIZE
;
if
(
skip
>
0
)
if
(
skip
>
0
)
avio_s
eek
(
pb
,
skip
,
SEEK_CUR
);
avio_s
kip
(
pb
,
skip
);
break
;
break
;
}
}
}
}
...
...
libavformat/msnwc_tcp.c
View file @
45a8a02a
...
@@ -104,19 +104,19 @@ static int msnwc_tcp_read_packet(AVFormatContext *ctx, AVPacket *pkt)
...
@@ -104,19 +104,19 @@ static int msnwc_tcp_read_packet(AVFormatContext *ctx, AVPacket *pkt)
uint16_t
keyframe
;
uint16_t
keyframe
;
uint32_t
size
,
timestamp
;
uint32_t
size
,
timestamp
;
avio_s
eek
(
pb
,
1
,
SEEK_CUR
);
/* one byte has been read ahead */
avio_s
kip
(
pb
,
1
);
/* one byte has been read ahead */
avio_s
eek
(
pb
,
2
,
SEEK_CUR
);
avio_s
kip
(
pb
,
2
);
avio_s
eek
(
pb
,
2
,
SEEK_CUR
);
avio_s
kip
(
pb
,
2
);
keyframe
=
avio_rl16
(
pb
);
keyframe
=
avio_rl16
(
pb
);
size
=
avio_rl32
(
pb
);
size
=
avio_rl32
(
pb
);
avio_s
eek
(
pb
,
4
,
SEEK_CUR
);
avio_s
kip
(
pb
,
4
);
avio_s
eek
(
pb
,
4
,
SEEK_CUR
);
avio_s
kip
(
pb
,
4
);
timestamp
=
avio_rl32
(
pb
);
timestamp
=
avio_rl32
(
pb
);
if
(
!
size
||
av_get_packet
(
pb
,
pkt
,
size
)
!=
size
)
if
(
!
size
||
av_get_packet
(
pb
,
pkt
,
size
)
!=
size
)
return
-
1
;
return
-
1
;
avio_s
eek
(
pb
,
1
,
SEEK_CUR
);
/* Read ahead one byte of struct size like read_header */
avio_s
kip
(
pb
,
1
);
/* Read ahead one byte of struct size like read_header */
pkt
->
pts
=
timestamp
;
pkt
->
pts
=
timestamp
;
pkt
->
dts
=
timestamp
;
pkt
->
dts
=
timestamp
;
...
...
libavformat/mtv.c
View file @
45a8a02a
...
@@ -83,10 +83,10 @@ static int mtv_read_header(AVFormatContext *s, AVFormatParameters *ap)
...
@@ -83,10 +83,10 @@ static int mtv_read_header(AVFormatContext *s, AVFormatParameters *ap)
AVStream
*
st
;
AVStream
*
st
;
unsigned
int
audio_subsegments
;
unsigned
int
audio_subsegments
;
avio_s
eek
(
pb
,
3
,
SEEK_CUR
);
avio_s
kip
(
pb
,
3
);
mtv
->
file_size
=
avio_rl32
(
pb
);
mtv
->
file_size
=
avio_rl32
(
pb
);
mtv
->
segments
=
avio_rl32
(
pb
);
mtv
->
segments
=
avio_rl32
(
pb
);
avio_s
eek
(
pb
,
32
,
SEEK_CUR
);
avio_s
kip
(
pb
,
32
);
mtv
->
audio_identifier
=
avio_rl24
(
pb
);
mtv
->
audio_identifier
=
avio_rl24
(
pb
);
mtv
->
audio_br
=
avio_rl16
(
pb
);
mtv
->
audio_br
=
avio_rl16
(
pb
);
mtv
->
img_colorfmt
=
avio_rl24
(
pb
);
mtv
->
img_colorfmt
=
avio_rl24
(
pb
);
...
@@ -105,7 +105,7 @@ static int mtv_read_header(AVFormatContext *s, AVFormatParameters *ap)
...
@@ -105,7 +105,7 @@ static int mtv_read_header(AVFormatContext *s, AVFormatParameters *ap)
mtv
->
img_height
=
mtv
->
img_segment_size
/
(
mtv
->
img_bpp
>>
3
)
mtv
->
img_height
=
mtv
->
img_segment_size
/
(
mtv
->
img_bpp
>>
3
)
/
mtv
->
img_width
;
/
mtv
->
img_width
;
avio_s
eek
(
pb
,
4
,
SEEK_CUR
);
avio_s
kip
(
pb
,
4
);
audio_subsegments
=
avio_rl16
(
pb
);
audio_subsegments
=
avio_rl16
(
pb
);
mtv
->
full_segment_size
=
mtv
->
full_segment_size
=
audio_subsegments
*
(
MTV_AUDIO_PADDING_SIZE
+
MTV_ASUBCHUNK_DATA_SIZE
)
+
audio_subsegments
*
(
MTV_AUDIO_PADDING_SIZE
+
MTV_ASUBCHUNK_DATA_SIZE
)
+
...
@@ -164,7 +164,7 @@ static int mtv_read_packet(AVFormatContext *s, AVPacket *pkt)
...
@@ -164,7 +164,7 @@ static int mtv_read_packet(AVFormatContext *s, AVPacket *pkt)
if
((
avio_tell
(
pb
)
-
s
->
data_offset
+
mtv
->
img_segment_size
)
%
mtv
->
full_segment_size
)
if
((
avio_tell
(
pb
)
-
s
->
data_offset
+
mtv
->
img_segment_size
)
%
mtv
->
full_segment_size
)
{
{
avio_s
eek
(
pb
,
MTV_AUDIO_PADDING_SIZE
,
SEEK_CUR
);
avio_s
kip
(
pb
,
MTV_AUDIO_PADDING_SIZE
);
ret
=
av_get_packet
(
pb
,
pkt
,
MTV_ASUBCHUNK_DATA_SIZE
);
ret
=
av_get_packet
(
pb
,
pkt
,
MTV_ASUBCHUNK_DATA_SIZE
);
if
(
ret
<
0
)
if
(
ret
<
0
)
...
...
libavformat/mxfdec.c
View file @
45a8a02a
...
@@ -262,7 +262,7 @@ static int mxf_decrypt_triplet(AVFormatContext *s, AVPacket *pkt, KLVPacket *klv
...
@@ -262,7 +262,7 @@ static int mxf_decrypt_triplet(AVFormatContext *s, AVPacket *pkt, KLVPacket *klv
av_aes_init
(
mxf
->
aesc
,
s
->
key
,
128
,
1
);
av_aes_init
(
mxf
->
aesc
,
s
->
key
,
128
,
1
);
}
}
// crypto context
// crypto context
avio_s
eek
(
pb
,
klv_decode_ber_length
(
pb
),
SEEK_CUR
);
avio_s
kip
(
pb
,
klv_decode_ber_length
(
pb
)
);
// plaintext offset
// plaintext offset
klv_decode_ber_length
(
pb
);
klv_decode_ber_length
(
pb
);
plaintext_size
=
avio_rb64
(
pb
);
plaintext_size
=
avio_rb64
(
pb
);
...
@@ -297,7 +297,7 @@ static int mxf_decrypt_triplet(AVFormatContext *s, AVPacket *pkt, KLVPacket *klv
...
@@ -297,7 +297,7 @@ static int mxf_decrypt_triplet(AVFormatContext *s, AVPacket *pkt, KLVPacket *klv
&
pkt
->
data
[
plaintext_size
],
size
>>
4
,
ivec
,
1
);
&
pkt
->
data
[
plaintext_size
],
size
>>
4
,
ivec
,
1
);
pkt
->
size
=
orig_size
;
pkt
->
size
=
orig_size
;
pkt
->
stream_index
=
index
;
pkt
->
stream_index
=
index
;
avio_s
eek
(
pb
,
end
-
avio_tell
(
pb
),
SEEK_CUR
);
avio_s
kip
(
pb
,
end
-
avio_tell
(
pb
)
);
return
0
;
return
0
;
}
}
...
@@ -339,7 +339,7 @@ static int mxf_read_packet(AVFormatContext *s, AVPacket *pkt)
...
@@ -339,7 +339,7 @@ static int mxf_read_packet(AVFormatContext *s, AVPacket *pkt)
return
0
;
return
0
;
}
else
}
else
skip:
skip:
avio_s
eek
(
s
->
pb
,
klv
.
length
,
SEEK_CUR
);
avio_s
kip
(
s
->
pb
,
klv
.
length
);
}
}
return
AVERROR_EOF
;
return
AVERROR_EOF
;
}
}
...
@@ -397,7 +397,7 @@ static int mxf_read_content_storage(void *arg, AVIOContext *pb, int tag, int siz
...
@@ -397,7 +397,7 @@ static int mxf_read_content_storage(void *arg, AVIOContext *pb, int tag, int siz
mxf
->
packages_refs
=
av_malloc
(
mxf
->
packages_count
*
sizeof
(
UID
));
mxf
->
packages_refs
=
av_malloc
(
mxf
->
packages_count
*
sizeof
(
UID
));
if
(
!
mxf
->
packages_refs
)
if
(
!
mxf
->
packages_refs
)
return
-
1
;
return
-
1
;
avio_s
eek
(
pb
,
4
,
SEEK_CUR
);
/* useless size of objects, always 16 according to specs */
avio_s
kip
(
pb
,
4
);
/* useless size of objects, always 16 according to specs */
avio_read
(
pb
,
(
uint8_t
*
)
mxf
->
packages_refs
,
mxf
->
packages_count
*
sizeof
(
UID
));
avio_read
(
pb
,
(
uint8_t
*
)
mxf
->
packages_refs
,
mxf
->
packages_count
*
sizeof
(
UID
));
break
;
break
;
}
}
...
@@ -416,7 +416,7 @@ static int mxf_read_source_clip(void *arg, AVIOContext *pb, int tag, int size, U
...
@@ -416,7 +416,7 @@ static int mxf_read_source_clip(void *arg, AVIOContext *pb, int tag, int size, U
break
;
break
;
case
0x1101
:
case
0x1101
:
/* UMID, only get last 16 bytes */
/* UMID, only get last 16 bytes */
avio_s
eek
(
pb
,
16
,
SEEK_CUR
);
avio_s
kip
(
pb
,
16
);
avio_read
(
pb
,
source_clip
->
source_package_uid
,
16
);
avio_read
(
pb
,
source_clip
->
source_package_uid
,
16
);
break
;
break
;
case
0x1102
:
case
0x1102
:
...
@@ -437,7 +437,7 @@ static int mxf_read_material_package(void *arg, AVIOContext *pb, int tag, int si
...
@@ -437,7 +437,7 @@ static int mxf_read_material_package(void *arg, AVIOContext *pb, int tag, int si
package
->
tracks_refs
=
av_malloc
(
package
->
tracks_count
*
sizeof
(
UID
));
package
->
tracks_refs
=
av_malloc
(
package
->
tracks_count
*
sizeof
(
UID
));
if
(
!
package
->
tracks_refs
)
if
(
!
package
->
tracks_refs
)
return
-
1
;
return
-
1
;
avio_s
eek
(
pb
,
4
,
SEEK_CUR
);
/* useless size of objects, always 16 according to specs */
avio_s
kip
(
pb
,
4
);
/* useless size of objects, always 16 according to specs */
avio_read
(
pb
,
(
uint8_t
*
)
package
->
tracks_refs
,
package
->
tracks_count
*
sizeof
(
UID
));
avio_read
(
pb
,
(
uint8_t
*
)
package
->
tracks_refs
,
package
->
tracks_count
*
sizeof
(
UID
));
break
;
break
;
}
}
...
@@ -482,7 +482,7 @@ static int mxf_read_sequence(void *arg, AVIOContext *pb, int tag, int size, UID
...
@@ -482,7 +482,7 @@ static int mxf_read_sequence(void *arg, AVIOContext *pb, int tag, int size, UID
sequence
->
structural_components_refs
=
av_malloc
(
sequence
->
structural_components_count
*
sizeof
(
UID
));
sequence
->
structural_components_refs
=
av_malloc
(
sequence
->
structural_components_count
*
sizeof
(
UID
));
if
(
!
sequence
->
structural_components_refs
)
if
(
!
sequence
->
structural_components_refs
)
return
-
1
;
return
-
1
;
avio_s
eek
(
pb
,
4
,
SEEK_CUR
);
/* useless size of objects, always 16 according to specs */
avio_s
kip
(
pb
,
4
);
/* useless size of objects, always 16 according to specs */
avio_read
(
pb
,
(
uint8_t
*
)
sequence
->
structural_components_refs
,
sequence
->
structural_components_count
*
sizeof
(
UID
));
avio_read
(
pb
,
(
uint8_t
*
)
sequence
->
structural_components_refs
,
sequence
->
structural_components_count
*
sizeof
(
UID
));
break
;
break
;
}
}
...
@@ -500,12 +500,12 @@ static int mxf_read_source_package(void *arg, AVIOContext *pb, int tag, int size
...
@@ -500,12 +500,12 @@ static int mxf_read_source_package(void *arg, AVIOContext *pb, int tag, int size
package
->
tracks_refs
=
av_malloc
(
package
->
tracks_count
*
sizeof
(
UID
));
package
->
tracks_refs
=
av_malloc
(
package
->
tracks_count
*
sizeof
(
UID
));
if
(
!
package
->
tracks_refs
)
if
(
!
package
->
tracks_refs
)
return
-
1
;
return
-
1
;
avio_s
eek
(
pb
,
4
,
SEEK_CUR
);
/* useless size of objects, always 16 according to specs */
avio_s
kip
(
pb
,
4
);
/* useless size of objects, always 16 according to specs */
avio_read
(
pb
,
(
uint8_t
*
)
package
->
tracks_refs
,
package
->
tracks_count
*
sizeof
(
UID
));
avio_read
(
pb
,
(
uint8_t
*
)
package
->
tracks_refs
,
package
->
tracks_count
*
sizeof
(
UID
));
break
;
break
;
case
0x4401
:
case
0x4401
:
/* UMID, only get last 16 bytes */
/* UMID, only get last 16 bytes */
avio_s
eek
(
pb
,
16
,
SEEK_CUR
);
avio_s
kip
(
pb
,
16
);
avio_read
(
pb
,
package
->
package_uid
,
16
);
avio_read
(
pb
,
package
->
package_uid
,
16
);
break
;
break
;
case
0x4701
:
case
0x4701
:
...
@@ -558,7 +558,7 @@ static int mxf_read_generic_descriptor(void *arg, AVIOContext *pb, int tag, int
...
@@ -558,7 +558,7 @@ static int mxf_read_generic_descriptor(void *arg, AVIOContext *pb, int tag, int
descriptor
->
sub_descriptors_refs
=
av_malloc
(
descriptor
->
sub_descriptors_count
*
sizeof
(
UID
));
descriptor
->
sub_descriptors_refs
=
av_malloc
(
descriptor
->
sub_descriptors_count
*
sizeof
(
UID
));
if
(
!
descriptor
->
sub_descriptors_refs
)
if
(
!
descriptor
->
sub_descriptors_refs
)
return
-
1
;
return
-
1
;
avio_s
eek
(
pb
,
4
,
SEEK_CUR
);
/* useless size of objects, always 16 according to specs */
avio_s
kip
(
pb
,
4
);
/* useless size of objects, always 16 according to specs */
avio_read
(
pb
,
(
uint8_t
*
)
descriptor
->
sub_descriptors_refs
,
descriptor
->
sub_descriptors_count
*
sizeof
(
UID
));
avio_read
(
pb
,
(
uint8_t
*
)
descriptor
->
sub_descriptors_refs
,
descriptor
->
sub_descriptors_count
*
sizeof
(
UID
));
break
;
break
;
case
0x3004
:
case
0x3004
:
...
@@ -943,7 +943,7 @@ static int mxf_read_header(AVFormatContext *s, AVFormatParameters *ap)
...
@@ -943,7 +943,7 @@ static int mxf_read_header(AVFormatContext *s, AVFormatParameters *ap)
}
}
}
}
if
(
!
metadata
->
read
)
if
(
!
metadata
->
read
)
avio_s
eek
(
s
->
pb
,
klv
.
length
,
SEEK_CUR
);
avio_s
kip
(
s
->
pb
,
klv
.
length
);
}
}
return
mxf_parse_structural_metadata
(
mxf
);
return
mxf_parse_structural_metadata
(
mxf
);
}
}
...
...
libavformat/ncdec.c
View file @
45a8a02a
...
@@ -73,7 +73,7 @@ static int nc_read_packet(AVFormatContext *s, AVPacket *pkt)
...
@@ -73,7 +73,7 @@ static int nc_read_packet(AVFormatContext *s, AVPacket *pkt)
avio_r8
(
s
->
pb
);
avio_r8
(
s
->
pb
);
size
=
avio_rl16
(
s
->
pb
);
size
=
avio_rl16
(
s
->
pb
);
avio_s
eek
(
s
->
pb
,
9
,
SEEK_CUR
);
avio_s
kip
(
s
->
pb
,
9
);
if
(
size
==
0
)
{
if
(
size
==
0
)
{
av_log
(
s
,
AV_LOG_DEBUG
,
"Next packet size is zero
\n
"
);
av_log
(
s
,
AV_LOG_DEBUG
,
"Next packet size is zero
\n
"
);
...
...
libavformat/nsvdec.c
View file @
45a8a02a
...
@@ -584,7 +584,7 @@ null_chunk_retry:
...
@@ -584,7 +584,7 @@ null_chunk_retry:
((
auxtag
>>
16
)
&
0x0ff
),
((
auxtag
>>
16
)
&
0x0ff
),
((
auxtag
>>
24
)
&
0x0ff
),
((
auxtag
>>
24
)
&
0x0ff
),
auxsize
);
auxsize
);
avio_s
eek
(
pb
,
auxsize
,
SEEK_CUR
);
avio_s
kip
(
pb
,
auxsize
);
vsize
-=
auxsize
+
sizeof
(
uint16_t
)
+
sizeof
(
uint32_t
);
/* that's becoming braindead */
vsize
-=
auxsize
+
sizeof
(
uint16_t
)
+
sizeof
(
uint32_t
);
/* that's becoming braindead */
}
}
...
...
libavformat/nutdec.c
View file @
45a8a02a
...
@@ -757,7 +757,7 @@ static int decode_frame(NUTContext *nut, AVPacket *pkt, int frame_code){
...
@@ -757,7 +757,7 @@ static int decode_frame(NUTContext *nut, AVPacket *pkt, int frame_code){
||
(
discard
>=
AVDISCARD_BIDIR
&&
last_IP_pts
!=
AV_NOPTS_VALUE
&&
last_IP_pts
>
pts
)
||
(
discard
>=
AVDISCARD_BIDIR
&&
last_IP_pts
!=
AV_NOPTS_VALUE
&&
last_IP_pts
>
pts
)
||
discard
>=
AVDISCARD_ALL
||
discard
>=
AVDISCARD_ALL
||
stc
->
skip_until_key_frame
){
||
stc
->
skip_until_key_frame
){
avio_s
eek
(
bc
,
size
,
SEEK_CUR
);
avio_s
kip
(
bc
,
size
);
return
1
;
return
1
;
}
}
...
@@ -803,7 +803,7 @@ static int nut_read_packet(AVFormatContext *s, AVPacket *pkt)
...
@@ -803,7 +803,7 @@ static int nut_read_packet(AVFormatContext *s, AVPacket *pkt)
case
STREAM_STARTCODE
:
case
STREAM_STARTCODE
:
case
INDEX_STARTCODE
:
case
INDEX_STARTCODE
:
skip
=
get_packetheader
(
nut
,
bc
,
0
,
tmp
);
skip
=
get_packetheader
(
nut
,
bc
,
0
,
tmp
);
avio_s
eek
(
bc
,
skip
,
SEEK_CUR
);
avio_s
kip
(
bc
,
skip
);
break
;
break
;
case
INFO_STARTCODE
:
case
INFO_STARTCODE
:
if
(
decode_info_header
(
nut
)
<
0
)
if
(
decode_info_header
(
nut
)
<
0
)
...
...
libavformat/nuv.c
View file @
45a8a02a
...
@@ -66,7 +66,7 @@ static int get_codec_data(AVIOContext *pb, AVStream *vst,
...
@@ -66,7 +66,7 @@ static int get_codec_data(AVIOContext *pb, AVStream *vst,
switch
(
frametype
)
{
switch
(
frametype
)
{
case
NUV_EXTRADATA
:
case
NUV_EXTRADATA
:
subtype
=
avio_r8
(
pb
);
subtype
=
avio_r8
(
pb
);
avio_s
eek
(
pb
,
6
,
SEEK_CUR
);
avio_s
kip
(
pb
,
6
);
size
=
PKTSIZE
(
avio_rl32
(
pb
));
size
=
PKTSIZE
(
avio_rl32
(
pb
));
if
(
vst
&&
subtype
==
'R'
)
{
if
(
vst
&&
subtype
==
'R'
)
{
vst
->
codec
->
extradata_size
=
size
;
vst
->
codec
->
extradata_size
=
size
;
...
@@ -78,7 +78,7 @@ static int get_codec_data(AVIOContext *pb, AVStream *vst,
...
@@ -78,7 +78,7 @@ static int get_codec_data(AVIOContext *pb, AVStream *vst,
}
}
break
;
break
;
case
NUV_MYTHEXT
:
case
NUV_MYTHEXT
:
avio_s
eek
(
pb
,
7
,
SEEK_CUR
);
avio_s
kip
(
pb
,
7
);
size
=
PKTSIZE
(
avio_rl32
(
pb
));
size
=
PKTSIZE
(
avio_rl32
(
pb
));
if
(
size
!=
128
*
4
)
if
(
size
!=
128
*
4
)
break
;
break
;
...
@@ -90,7 +90,7 @@ static int get_codec_data(AVIOContext *pb, AVStream *vst,
...
@@ -90,7 +90,7 @@ static int get_codec_data(AVIOContext *pb, AVStream *vst,
if
(
vst
->
codec
->
codec_tag
==
MKTAG
(
'R'
,
'J'
,
'P'
,
'G'
))
if
(
vst
->
codec
->
codec_tag
==
MKTAG
(
'R'
,
'J'
,
'P'
,
'G'
))
vst
->
codec
->
codec_id
=
CODEC_ID_NUV
;
vst
->
codec
->
codec_id
=
CODEC_ID_NUV
;
}
else
}
else
avio_s
eek
(
pb
,
4
,
SEEK_CUR
);
avio_s
kip
(
pb
,
4
);
if
(
ast
)
{
if
(
ast
)
{
ast
->
codec
->
codec_tag
=
avio_rl32
(
pb
);
ast
->
codec
->
codec_tag
=
avio_rl32
(
pb
);
...
@@ -102,20 +102,20 @@ static int get_codec_data(AVIOContext *pb, AVStream *vst,
...
@@ -102,20 +102,20 @@ static int get_codec_data(AVIOContext *pb, AVStream *vst,
ast
->
codec
->
bits_per_coded_sample
);
ast
->
codec
->
bits_per_coded_sample
);
ast
->
need_parsing
=
AVSTREAM_PARSE_FULL
;
ast
->
need_parsing
=
AVSTREAM_PARSE_FULL
;
}
else
}
else
avio_s
eek
(
pb
,
4
*
4
,
SEEK_CUR
);
avio_s
kip
(
pb
,
4
*
4
);
size
-=
6
*
4
;
size
-=
6
*
4
;
avio_s
eek
(
pb
,
size
,
SEEK_CUR
);
avio_s
kip
(
pb
,
size
);
return
1
;
return
1
;
case
NUV_SEEKP
:
case
NUV_SEEKP
:
size
=
11
;
size
=
11
;
break
;
break
;
default:
default:
avio_s
eek
(
pb
,
7
,
SEEK_CUR
);
avio_s
kip
(
pb
,
7
);
size
=
PKTSIZE
(
avio_rl32
(
pb
));
size
=
PKTSIZE
(
avio_rl32
(
pb
));
break
;
break
;
}
}
avio_s
eek
(
pb
,
size
,
SEEK_CUR
);
avio_s
kip
(
pb
,
size
);
}
}
return
0
;
return
0
;
}
}
...
@@ -130,14 +130,14 @@ static int nuv_header(AVFormatContext *s, AVFormatParameters *ap) {
...
@@ -130,14 +130,14 @@ static int nuv_header(AVFormatContext *s, AVFormatParameters *ap) {
AVStream
*
vst
=
NULL
,
*
ast
=
NULL
;
AVStream
*
vst
=
NULL
,
*
ast
=
NULL
;
avio_read
(
pb
,
id_string
,
12
);
avio_read
(
pb
,
id_string
,
12
);
is_mythtv
=
!
memcmp
(
id_string
,
"MythTVVideo"
,
12
);
is_mythtv
=
!
memcmp
(
id_string
,
"MythTVVideo"
,
12
);
avio_s
eek
(
pb
,
5
,
SEEK_CUR
);
// version string
avio_s
kip
(
pb
,
5
);
// version string
avio_s
eek
(
pb
,
3
,
SEEK_CUR
);
// padding
avio_s
kip
(
pb
,
3
);
// padding
width
=
avio_rl32
(
pb
);
width
=
avio_rl32
(
pb
);
height
=
avio_rl32
(
pb
);
height
=
avio_rl32
(
pb
);
avio_rl32
(
pb
);
// unused, "desiredwidth"
avio_rl32
(
pb
);
// unused, "desiredwidth"
avio_rl32
(
pb
);
// unused, "desiredheight"
avio_rl32
(
pb
);
// unused, "desiredheight"
avio_r8
(
pb
);
// 'P' == progressive, 'I' == interlaced
avio_r8
(
pb
);
// 'P' == progressive, 'I' == interlaced
avio_s
eek
(
pb
,
3
,
SEEK_CUR
);
// padding
avio_s
kip
(
pb
,
3
);
// padding
aspect
=
av_int2dbl
(
avio_rl64
(
pb
));
aspect
=
av_int2dbl
(
avio_rl64
(
pb
));
if
(
aspect
>
0
.
9999
&&
aspect
<
1
.
0001
)
if
(
aspect
>
0
.
9999
&&
aspect
<
1
.
0001
)
aspect
=
4
.
0
/
3
.
0
;
aspect
=
4
.
0
/
3
.
0
;
...
@@ -206,13 +206,13 @@ static int nuv_packet(AVFormatContext *s, AVPacket *pkt) {
...
@@ -206,13 +206,13 @@ static int nuv_packet(AVFormatContext *s, AVPacket *pkt) {
switch
(
frametype
)
{
switch
(
frametype
)
{
case
NUV_EXTRADATA
:
case
NUV_EXTRADATA
:
if
(
!
ctx
->
rtjpg_video
)
{
if
(
!
ctx
->
rtjpg_video
)
{
avio_s
eek
(
pb
,
size
,
SEEK_CUR
);
avio_s
kip
(
pb
,
size
);
break
;
break
;
}
}
case
NUV_VIDEO
:
case
NUV_VIDEO
:
if
(
ctx
->
v_id
<
0
)
{
if
(
ctx
->
v_id
<
0
)
{
av_log
(
s
,
AV_LOG_ERROR
,
"Video packet in file without video stream!
\n
"
);
av_log
(
s
,
AV_LOG_ERROR
,
"Video packet in file without video stream!
\n
"
);
avio_s
eek
(
pb
,
size
,
SEEK_CUR
);
avio_s
kip
(
pb
,
size
);
break
;
break
;
}
}
ret
=
av_new_packet
(
pkt
,
copyhdrsize
+
size
);
ret
=
av_new_packet
(
pkt
,
copyhdrsize
+
size
);
...
@@ -236,7 +236,7 @@ static int nuv_packet(AVFormatContext *s, AVPacket *pkt) {
...
@@ -236,7 +236,7 @@ static int nuv_packet(AVFormatContext *s, AVPacket *pkt) {
case
NUV_AUDIO
:
case
NUV_AUDIO
:
if
(
ctx
->
a_id
<
0
)
{
if
(
ctx
->
a_id
<
0
)
{
av_log
(
s
,
AV_LOG_ERROR
,
"Audio packet in file without audio stream!
\n
"
);
av_log
(
s
,
AV_LOG_ERROR
,
"Audio packet in file without audio stream!
\n
"
);
avio_s
eek
(
pb
,
size
,
SEEK_CUR
);
avio_s
kip
(
pb
,
size
);
break
;
break
;
}
}
ret
=
av_get_packet
(
pb
,
pkt
,
size
);
ret
=
av_get_packet
(
pb
,
pkt
,
size
);
...
@@ -250,7 +250,7 @@ static int nuv_packet(AVFormatContext *s, AVPacket *pkt) {
...
@@ -250,7 +250,7 @@ static int nuv_packet(AVFormatContext *s, AVPacket *pkt) {
// contains no data, size value is invalid
// contains no data, size value is invalid
break
;
break
;
default:
default:
avio_s
eek
(
pb
,
size
,
SEEK_CUR
);
avio_s
kip
(
pb
,
size
);
break
;
break
;
}
}
}
}
...
...
libavformat/pva.c
View file @
45a8a02a
...
@@ -122,7 +122,7 @@ recover:
...
@@ -122,7 +122,7 @@ recover:
if
(
pes_signal
!=
1
)
{
if
(
pes_signal
!=
1
)
{
pva_log
(
s
,
AV_LOG_WARNING
,
"expected signaled PES packet, "
pva_log
(
s
,
AV_LOG_WARNING
,
"expected signaled PES packet, "
"trying to recover
\n
"
);
"trying to recover
\n
"
);
avio_s
eek
(
pb
,
length
-
9
,
SEEK_CUR
);
avio_s
kip
(
pb
,
length
-
9
);
if
(
!
read_packet
)
if
(
!
read_packet
)
return
AVERROR
(
EIO
);
return
AVERROR
(
EIO
);
goto
recover
;
goto
recover
;
...
...
libavformat/qcp.c
View file @
45a8a02a
...
@@ -93,7 +93,7 @@ static int qcp_read_header(AVFormatContext *s, AVFormatParameters *ap)
...
@@ -93,7 +93,7 @@ static int qcp_read_header(AVFormatContext *s, AVFormatParameters *ap)
avio_rb32
(
pb
);
// "RIFF"
avio_rb32
(
pb
);
// "RIFF"
s
->
file_size
=
avio_rl32
(
pb
)
+
8
;
s
->
file_size
=
avio_rl32
(
pb
)
+
8
;
avio_s
eek
(
pb
,
8
+
4
+
1
+
1
,
SEEK_CUR
);
// "QLCMfmt " + chunk-size + major-version + minor-version
avio_s
kip
(
pb
,
8
+
4
+
1
+
1
);
// "QLCMfmt " + chunk-size + major-version + minor-version
st
->
codec
->
codec_type
=
AVMEDIA_TYPE_AUDIO
;
st
->
codec
->
codec_type
=
AVMEDIA_TYPE_AUDIO
;
st
->
codec
->
channels
=
1
;
st
->
codec
->
channels
=
1
;
...
@@ -110,13 +110,13 @@ static int qcp_read_header(AVFormatContext *s, AVFormatParameters *ap)
...
@@ -110,13 +110,13 @@ static int qcp_read_header(AVFormatContext *s, AVFormatParameters *ap)
av_log
(
s
,
AV_LOG_ERROR
,
"Unknown codec GUID.
\n
"
);
av_log
(
s
,
AV_LOG_ERROR
,
"Unknown codec GUID.
\n
"
);
return
AVERROR_INVALIDDATA
;
return
AVERROR_INVALIDDATA
;
}
}
avio_s
eek
(
pb
,
2
+
80
,
SEEK_CUR
);
// codec-version + codec-name
avio_s
kip
(
pb
,
2
+
80
);
// codec-version + codec-name
st
->
codec
->
bit_rate
=
avio_rl16
(
pb
);
st
->
codec
->
bit_rate
=
avio_rl16
(
pb
);
s
->
packet_size
=
avio_rl16
(
pb
);
s
->
packet_size
=
avio_rl16
(
pb
);
avio_s
eek
(
pb
,
2
,
SEEK_CUR
);
// block-size
avio_s
kip
(
pb
,
2
);
// block-size
st
->
codec
->
sample_rate
=
avio_rl16
(
pb
);
st
->
codec
->
sample_rate
=
avio_rl16
(
pb
);
avio_s
eek
(
pb
,
2
,
SEEK_CUR
);
// sample-size
avio_s
kip
(
pb
,
2
);
// sample-size
memset
(
c
->
rates_per_mode
,
-
1
,
sizeof
(
c
->
rates_per_mode
));
memset
(
c
->
rates_per_mode
,
-
1
,
sizeof
(
c
->
rates_per_mode
));
nb_rates
=
avio_rl32
(
pb
);
nb_rates
=
avio_rl32
(
pb
);
...
@@ -129,7 +129,7 @@ static int qcp_read_header(AVFormatContext *s, AVFormatParameters *ap)
...
@@ -129,7 +129,7 @@ static int qcp_read_header(AVFormatContext *s, AVFormatParameters *ap)
}
else
}
else
c
->
rates_per_mode
[
mode
]
=
size
;
c
->
rates_per_mode
[
mode
]
=
size
;
}
}
avio_s
eek
(
pb
,
16
-
2
*
nb_rates
+
20
,
SEEK_CUR
);
// empty entries of rate-map-table + reserved
avio_s
kip
(
pb
,
16
-
2
*
nb_rates
+
20
);
// empty entries of rate-map-table + reserved
return
0
;
return
0
;
}
}
...
@@ -174,14 +174,14 @@ static int qcp_read_packet(AVFormatContext *s, AVPacket *pkt)
...
@@ -174,14 +174,14 @@ static int qcp_read_packet(AVFormatContext *s, AVPacket *pkt)
case
MKTAG
(
'v'
,
'r'
,
'a'
,
't'
):
case
MKTAG
(
'v'
,
'r'
,
'a'
,
't'
):
if
(
avio_rl32
(
pb
))
// var-rate-flag
if
(
avio_rl32
(
pb
))
// var-rate-flag
s
->
packet_size
=
0
;
s
->
packet_size
=
0
;
avio_s
eek
(
pb
,
4
,
SEEK_CUR
);
// size-in-packets
avio_s
kip
(
pb
,
4
);
// size-in-packets
break
;
break
;
case
MKTAG
(
'd'
,
'a'
,
't'
,
'a'
):
case
MKTAG
(
'd'
,
'a'
,
't'
,
'a'
):
c
->
data_size
=
chunk_size
;
c
->
data_size
=
chunk_size
;
break
;
break
;
default:
default:
avio_s
eek
(
pb
,
chunk_size
,
SEEK_CUR
);
avio_s
kip
(
pb
,
chunk_size
);
}
}
}
}
return
AVERROR_EOF
;
return
AVERROR_EOF
;
...
...
libavformat/r3d.c
View file @
45a8a02a
...
@@ -72,7 +72,7 @@ static int r3d_read_red1(AVFormatContext *s)
...
@@ -72,7 +72,7 @@ static int r3d_read_red1(AVFormatContext *s)
tmp
=
avio_rb32
(
s
->
pb
);
// filenum
tmp
=
avio_rb32
(
s
->
pb
);
// filenum
av_dlog
(
s
,
"filenum %d
\n
"
,
tmp
);
av_dlog
(
s
,
"filenum %d
\n
"
,
tmp
);
avio_s
eek
(
s
->
pb
,
32
,
SEEK_CUR
);
// unknown
avio_s
kip
(
s
->
pb
,
32
);
// unknown
st
->
codec
->
width
=
avio_rb32
(
s
->
pb
);
st
->
codec
->
width
=
avio_rb32
(
s
->
pb
);
st
->
codec
->
height
=
avio_rb32
(
s
->
pb
);
st
->
codec
->
height
=
avio_rb32
(
s
->
pb
);
...
@@ -152,7 +152,7 @@ static void r3d_read_reos(AVFormatContext *s)
...
@@ -152,7 +152,7 @@ static void r3d_read_reos(AVFormatContext *s)
tmp
=
avio_rb32
(
s
->
pb
);
tmp
=
avio_rb32
(
s
->
pb
);
av_dlog
(
s
,
"num audio chunks %d
\n
"
,
tmp
);
av_dlog
(
s
,
"num audio chunks %d
\n
"
,
tmp
);
avio_s
eek
(
s
->
pb
,
6
*
4
,
SEEK_CUR
);
avio_s
kip
(
s
->
pb
,
6
*
4
);
}
}
static
int
r3d_read_header
(
AVFormatContext
*
s
,
AVFormatParameters
*
ap
)
static
int
r3d_read_header
(
AVFormatContext
*
s
,
AVFormatParameters
*
ap
)
...
@@ -332,7 +332,7 @@ static int r3d_read_packet(AVFormatContext *s, AVPacket *pkt)
...
@@ -332,7 +332,7 @@ static int r3d_read_packet(AVFormatContext *s, AVPacket *pkt)
break
;
break
;
default:
default:
skip:
skip:
avio_s
eek
(
s
->
pb
,
atom
.
size
-
8
,
SEEK_CUR
);
avio_s
kip
(
s
->
pb
,
atom
.
size
-
8
);
}
}
}
}
return
err
;
return
err
;
...
...
libavformat/rdt.c
View file @
45a8a02a
...
@@ -161,16 +161,16 @@ rdt_load_mdpr (PayloadContext *rdt, AVStream *st, int rule_nr)
...
@@ -161,16 +161,16 @@ rdt_load_mdpr (PayloadContext *rdt, AVStream *st, int rule_nr)
num
=
avio_rb16
(
&
pb
);
num
=
avio_rb16
(
&
pb
);
if
(
rule_nr
<
0
||
rule_nr
>=
num
)
if
(
rule_nr
<
0
||
rule_nr
>=
num
)
return
-
1
;
return
-
1
;
avio_s
eek
(
&
pb
,
rule_nr
*
2
,
SEEK_CUR
);
avio_s
kip
(
&
pb
,
rule_nr
*
2
);
chunk_nr
=
avio_rb16
(
&
pb
);
chunk_nr
=
avio_rb16
(
&
pb
);
avio_s
eek
(
&
pb
,
(
num
-
1
-
rule_nr
)
*
2
,
SEEK_CUR
);
avio_s
kip
(
&
pb
,
(
num
-
1
-
rule_nr
)
*
2
);
/* read MDPR chunks */
/* read MDPR chunks */
num
=
avio_rb16
(
&
pb
);
num
=
avio_rb16
(
&
pb
);
if
(
chunk_nr
>=
num
)
if
(
chunk_nr
>=
num
)
return
-
1
;
return
-
1
;
while
(
chunk_nr
--
)
while
(
chunk_nr
--
)
avio_s
eek
(
&
pb
,
avio_rb32
(
&
pb
),
SEEK_CUR
);
avio_s
kip
(
&
pb
,
avio_rb32
(
&
pb
)
);
size
=
avio_rb32
(
&
pb
);
size
=
avio_rb32
(
&
pb
);
}
else
{
}
else
{
size
=
rdt
->
mlti_data_size
;
size
=
rdt
->
mlti_data_size
;
...
...
libavformat/riff.c
View file @
45a8a02a
...
@@ -502,7 +502,7 @@ void ff_get_wav_header(AVIOContext *pb, AVCodecContext *codec, int size)
...
@@ -502,7 +502,7 @@ void ff_get_wav_header(AVIOContext *pb, AVCodecContext *codec, int size)
codec
->
bits_per_coded_sample
=
avio_rl16
(
pb
);
codec
->
bits_per_coded_sample
=
avio_rl16
(
pb
);
codec
->
channel_layout
=
avio_rl32
(
pb
);
/* dwChannelMask */
codec
->
channel_layout
=
avio_rl32
(
pb
);
/* dwChannelMask */
id
=
avio_rl32
(
pb
);
/* 4 first bytes of GUID */
id
=
avio_rl32
(
pb
);
/* 4 first bytes of GUID */
avio_s
eek
(
pb
,
12
,
SEEK_CUR
);
/* skip end of GUID */
avio_s
kip
(
pb
,
12
);
/* skip end of GUID */
cbSize
-=
22
;
cbSize
-=
22
;
size
-=
22
;
size
-=
22
;
}
}
...
@@ -515,7 +515,7 @@ void ff_get_wav_header(AVIOContext *pb, AVCodecContext *codec, int size)
...
@@ -515,7 +515,7 @@ void ff_get_wav_header(AVIOContext *pb, AVCodecContext *codec, int size)
/* It is possible for the chunk to contain garbage at the end */
/* It is possible for the chunk to contain garbage at the end */
if
(
size
>
0
)
if
(
size
>
0
)
avio_s
eek
(
pb
,
size
,
SEEK_CUR
);
avio_s
kip
(
pb
,
size
);
}
}
codec
->
codec_id
=
ff_wav_codec_get_id
(
id
,
codec
->
bits_per_coded_sample
);
codec
->
codec_id
=
ff_wav_codec_get_id
(
id
,
codec
->
bits_per_coded_sample
);
if
(
codec
->
codec_id
==
CODEC_ID_AAC_LATM
)
{
if
(
codec
->
codec_id
==
CODEC_ID_AAC_LATM
)
{
...
...
libavformat/rl2.c
View file @
45a8a02a
...
@@ -95,7 +95,7 @@ static av_cold int rl2_read_header(AVFormatContext *s,
...
@@ -95,7 +95,7 @@ static av_cold int rl2_read_header(AVFormatContext *s,
int
i
;
int
i
;
int
ret
=
0
;
int
ret
=
0
;
avio_s
eek
(
pb
,
4
,
SEEK_CUR
);
/* skip FORM tag */
avio_s
kip
(
pb
,
4
);
/* skip FORM tag */
back_size
=
avio_rl32
(
pb
);
/**< get size of the background frame */
back_size
=
avio_rl32
(
pb
);
/**< get size of the background frame */
signature
=
avio_rb32
(
pb
);
signature
=
avio_rb32
(
pb
);
data_size
=
avio_rb32
(
pb
);
data_size
=
avio_rb32
(
pb
);
...
...
libavformat/rmdec.c
View file @
45a8a02a
...
@@ -132,7 +132,7 @@ static int rm_read_audio_stream_info(AVFormatContext *s, AVIOContext *pb,
...
@@ -132,7 +132,7 @@ static int rm_read_audio_stream_info(AVFormatContext *s, AVIOContext *pb,
if
(
version
==
3
)
{
if
(
version
==
3
)
{
int
header_size
=
avio_rb16
(
pb
);
int
header_size
=
avio_rb16
(
pb
);
int64_t
startpos
=
avio_tell
(
pb
);
int64_t
startpos
=
avio_tell
(
pb
);
avio_s
eek
(
pb
,
14
,
SEEK_CUR
);
avio_s
kip
(
pb
,
14
);
rm_read_metadata
(
s
,
0
);
rm_read_metadata
(
s
,
0
);
if
((
startpos
+
header_size
)
>=
avio_tell
(
pb
)
+
2
)
{
if
((
startpos
+
header_size
)
>=
avio_tell
(
pb
)
+
2
)
{
// fourcc (should always be "lpcJ")
// fourcc (should always be "lpcJ")
...
@@ -141,7 +141,7 @@ static int rm_read_audio_stream_info(AVFormatContext *s, AVIOContext *pb,
...
@@ -141,7 +141,7 @@ static int rm_read_audio_stream_info(AVFormatContext *s, AVIOContext *pb,
}
}
// Skip extra header crap (this should never happen)
// Skip extra header crap (this should never happen)
if
((
startpos
+
header_size
)
>
avio_tell
(
pb
))
if
((
startpos
+
header_size
)
>
avio_tell
(
pb
))
avio_s
eek
(
pb
,
header_size
+
startpos
-
avio_tell
(
pb
),
SEEK_CUR
);
avio_s
kip
(
pb
,
header_size
+
startpos
-
avio_tell
(
pb
)
);
st
->
codec
->
sample_rate
=
8000
;
st
->
codec
->
sample_rate
=
8000
;
st
->
codec
->
channels
=
1
;
st
->
codec
->
channels
=
1
;
st
->
codec
->
codec_type
=
AVMEDIA_TYPE_AUDIO
;
st
->
codec
->
codec_type
=
AVMEDIA_TYPE_AUDIO
;
...
@@ -150,7 +150,7 @@ static int rm_read_audio_stream_info(AVFormatContext *s, AVIOContext *pb,
...
@@ -150,7 +150,7 @@ static int rm_read_audio_stream_info(AVFormatContext *s, AVIOContext *pb,
int
flavor
,
sub_packet_h
,
coded_framesize
,
sub_packet_size
;
int
flavor
,
sub_packet_h
,
coded_framesize
,
sub_packet_size
;
int
codecdata_length
;
int
codecdata_length
;
/* old version (4) */
/* old version (4) */
avio_s
eek
(
pb
,
2
,
SEEK_CUR
);
/* unused */
avio_s
kip
(
pb
,
2
);
/* unused */
avio_rb32
(
pb
);
/* .ra4 */
avio_rb32
(
pb
);
/* .ra4 */
avio_rb32
(
pb
);
/* data size */
avio_rb32
(
pb
);
/* data size */
avio_rb16
(
pb
);
/* version2 */
avio_rb16
(
pb
);
/* version2 */
...
@@ -321,7 +321,7 @@ ff_rm_read_mdpr_codecdata (AVFormatContext *s, AVIOContext *pb,
...
@@ -321,7 +321,7 @@ ff_rm_read_mdpr_codecdata (AVFormatContext *s, AVIOContext *pb,
skip:
skip:
/* skip codec info */
/* skip codec info */
size
=
avio_tell
(
pb
)
-
codec_pos
;
size
=
avio_tell
(
pb
)
-
codec_pos
;
avio_s
eek
(
pb
,
codec_data_size
-
size
,
SEEK_CUR
);
avio_s
kip
(
pb
,
codec_data_size
-
size
);
return
0
;
return
0
;
}
}
...
@@ -340,7 +340,7 @@ static int rm_read_index(AVFormatContext *s)
...
@@ -340,7 +340,7 @@ static int rm_read_index(AVFormatContext *s)
size
=
avio_rb32
(
pb
);
size
=
avio_rb32
(
pb
);
if
(
size
<
20
)
if
(
size
<
20
)
return
-
1
;
return
-
1
;
avio_s
eek
(
pb
,
2
,
SEEK_CUR
);
avio_s
kip
(
pb
,
2
);
n_pkts
=
avio_rb32
(
pb
);
n_pkts
=
avio_rb32
(
pb
);
str_id
=
avio_rb16
(
pb
);
str_id
=
avio_rb16
(
pb
);
next_off
=
avio_rb32
(
pb
);
next_off
=
avio_rb32
(
pb
);
...
@@ -353,10 +353,10 @@ static int rm_read_index(AVFormatContext *s)
...
@@ -353,10 +353,10 @@ static int rm_read_index(AVFormatContext *s)
goto
skip
;
goto
skip
;
for
(
n
=
0
;
n
<
n_pkts
;
n
++
)
{
for
(
n
=
0
;
n
<
n_pkts
;
n
++
)
{
avio_s
eek
(
pb
,
2
,
SEEK_CUR
);
avio_s
kip
(
pb
,
2
);
pts
=
avio_rb32
(
pb
);
pts
=
avio_rb32
(
pb
);
pos
=
avio_rb32
(
pb
);
pos
=
avio_rb32
(
pb
);
avio_s
eek
(
pb
,
4
,
SEEK_CUR
);
/* packet no. */
avio_s
kip
(
pb
,
4
);
/* packet no. */
av_add_index_entry
(
st
,
pos
,
pts
,
0
,
0
,
AVINDEX_KEYFRAME
);
av_add_index_entry
(
st
,
pos
,
pts
,
0
,
0
,
AVINDEX_KEYFRAME
);
}
}
...
@@ -469,7 +469,7 @@ static int rm_read_header(AVFormatContext *s, AVFormatParameters *ap)
...
@@ -469,7 +469,7 @@ static int rm_read_header(AVFormatContext *s, AVFormatParameters *ap)
goto
header_end
;
goto
header_end
;
default:
default:
/* unknown tag: skip it */
/* unknown tag: skip it */
avio_s
eek
(
pb
,
tag_size
-
10
,
SEEK_CUR
);
avio_s
kip
(
pb
,
tag_size
-
10
);
break
;
break
;
}
}
}
}
...
@@ -529,7 +529,7 @@ static int sync(AVFormatContext *s, int64_t *timestamp, int *flags, int *stream_
...
@@ -529,7 +529,7 @@ static int sync(AVFormatContext *s, int64_t *timestamp, int *flags, int *stream_
if
(
state
==
MKBETAG
(
'I'
,
'N'
,
'D'
,
'X'
)){
if
(
state
==
MKBETAG
(
'I'
,
'N'
,
'D'
,
'X'
)){
int
n_pkts
,
expected_len
;
int
n_pkts
,
expected_len
;
len
=
avio_rb32
(
pb
);
len
=
avio_rb32
(
pb
);
avio_s
eek
(
pb
,
2
,
SEEK_CUR
);
avio_s
kip
(
pb
,
2
);
n_pkts
=
avio_rb32
(
pb
);
n_pkts
=
avio_rb32
(
pb
);
expected_len
=
20
+
n_pkts
*
14
;
expected_len
=
20
+
n_pkts
*
14
;
if
(
len
==
20
)
if
(
len
==
20
)
...
@@ -566,7 +566,7 @@ static int sync(AVFormatContext *s, int64_t *timestamp, int *flags, int *stream_
...
@@ -566,7 +566,7 @@ static int sync(AVFormatContext *s, int64_t *timestamp, int *flags, int *stream_
if
(
i
==
s
->
nb_streams
)
{
if
(
i
==
s
->
nb_streams
)
{
skip
:
skip
:
/* skip packet if unknown number */
/* skip packet if unknown number */
avio_s
eek
(
pb
,
len
,
SEEK_CUR
);
avio_s
kip
(
pb
,
len
);
rm
->
remaining_len
=
0
;
rm
->
remaining_len
=
0
;
continue
;
continue
;
}
}
...
@@ -929,7 +929,7 @@ static int64_t rm_read_dts(AVFormatContext *s, int stream_index,
...
@@ -929,7 +929,7 @@ static int64_t rm_read_dts(AVFormatContext *s, int stream_index,
break
;
break
;
}
}
avio_s
eek
(
s
->
pb
,
len
,
SEEK_CUR
);
avio_s
kip
(
s
->
pb
,
len
);
}
}
*
ppos
=
pos
;
*
ppos
=
pos
;
return
dts
;
return
dts
;
...
...
libavformat/rtpdec_asf.c
View file @
45a8a02a
...
@@ -187,11 +187,11 @@ static int asfrtp_parse_packet(AVFormatContext *s, PayloadContext *asf,
...
@@ -187,11 +187,11 @@ static int asfrtp_parse_packet(AVFormatContext *s, PayloadContext *asf,
flags
|=
RTP_FLAG_KEY
;
flags
|=
RTP_FLAG_KEY
;
len_off
=
avio_rb24
(
pb
);
len_off
=
avio_rb24
(
pb
);
if
(
mflags
&
0x20
)
/**< relative timestamp */
if
(
mflags
&
0x20
)
/**< relative timestamp */
avio_s
eek
(
pb
,
4
,
SEEK_CUR
);
avio_s
kip
(
pb
,
4
);
if
(
mflags
&
0x10
)
/**< has duration */
if
(
mflags
&
0x10
)
/**< has duration */
avio_s
eek
(
pb
,
4
,
SEEK_CUR
);
avio_s
kip
(
pb
,
4
);
if
(
mflags
&
0x8
)
/**< has location ID */
if
(
mflags
&
0x8
)
/**< has location ID */
avio_s
eek
(
pb
,
4
,
SEEK_CUR
);
avio_s
kip
(
pb
,
4
);
off
=
avio_tell
(
pb
);
off
=
avio_tell
(
pb
);
if
(
!
(
mflags
&
0x40
))
{
if
(
!
(
mflags
&
0x40
))
{
...
@@ -214,7 +214,7 @@ static int asfrtp_parse_packet(AVFormatContext *s, PayloadContext *asf,
...
@@ -214,7 +214,7 @@ static int asfrtp_parse_packet(AVFormatContext *s, PayloadContext *asf,
return
AVERROR
(
EIO
);
return
AVERROR
(
EIO
);
avio_write
(
asf
->
pktbuf
,
buf
+
off
,
len
-
off
);
avio_write
(
asf
->
pktbuf
,
buf
+
off
,
len
-
off
);
avio_s
eek
(
pb
,
len
-
off
,
SEEK_CUR
);
avio_s
kip
(
pb
,
len
-
off
);
if
(
!
(
flags
&
RTP_FLAG_MARKER
))
if
(
!
(
flags
&
RTP_FLAG_MARKER
))
return
-
1
;
return
-
1
;
out_len
=
url_close_dyn_buf
(
asf
->
pktbuf
,
&
asf
->
buf
);
out_len
=
url_close_dyn_buf
(
asf
->
pktbuf
,
&
asf
->
buf
);
...
@@ -234,7 +234,7 @@ static int asfrtp_parse_packet(AVFormatContext *s, PayloadContext *asf,
...
@@ -234,7 +234,7 @@ static int asfrtp_parse_packet(AVFormatContext *s, PayloadContext *asf,
asf
->
buf
=
av_realloc
(
asf
->
buf
,
out_len
);
asf
->
buf
=
av_realloc
(
asf
->
buf
,
out_len
);
memcpy
(
asf
->
buf
+
prev_len
,
buf
+
off
,
memcpy
(
asf
->
buf
+
prev_len
,
buf
+
off
,
FFMIN
(
cur_len
,
len
-
off
));
FFMIN
(
cur_len
,
len
-
off
));
avio_s
eek
(
pb
,
cur_len
,
SEEK_CUR
);
avio_s
kip
(
pb
,
cur_len
);
}
}
}
}
...
...
libavformat/rtpdec_qt.c
View file @
45a8a02a
...
@@ -149,13 +149,13 @@ static int qt_rtp_parse_packet(AVFormatContext *s, PayloadContext *qt,
...
@@ -149,13 +149,13 @@ static int qt_rtp_parse_packet(AVFormatContext *s, PayloadContext *qt,
break
;
break
;
}
}
default:
default:
avio_s
eek
(
&
pb
,
tlv_len
,
SEEK_CUR
);
avio_s
kip
(
&
pb
,
tlv_len
);
break
;
break
;
}
}
}
}
/* 32-bit alignment */
/* 32-bit alignment */
avio_s
eek
(
&
pb
,
((
avio_tell
(
&
pb
)
+
3
)
&
~
3
)
-
avio_tell
(
&
pb
),
SEEK_CUR
);
avio_s
kip
(
&
pb
,
((
avio_tell
(
&
pb
)
+
3
)
&
~
3
)
-
avio_tell
(
&
pb
)
);
}
else
}
else
avio_seek
(
&
pb
,
4
,
SEEK_SET
);
avio_seek
(
&
pb
,
4
,
SEEK_SET
);
...
...
libavformat/sauce.c
View file @
45a8a02a
...
@@ -51,14 +51,14 @@ int ff_sauce_read(AVFormatContext *avctx, uint64_t *fsize, int *got_width, int g
...
@@ -51,14 +51,14 @@ int ff_sauce_read(AVFormatContext *avctx, uint64_t *fsize, int *got_width, int g
GET_SAUCE_META
(
"artist"
,
20
)
GET_SAUCE_META
(
"artist"
,
20
)
GET_SAUCE_META
(
"publisher"
,
20
)
GET_SAUCE_META
(
"publisher"
,
20
)
GET_SAUCE_META
(
"date"
,
8
)
GET_SAUCE_META
(
"date"
,
8
)
avio_s
eek
(
pb
,
4
,
SEEK_CUR
);
avio_s
kip
(
pb
,
4
);
datatype
=
avio_r8
(
pb
);
datatype
=
avio_r8
(
pb
);
filetype
=
avio_r8
(
pb
);
filetype
=
avio_r8
(
pb
);
t1
=
avio_rl16
(
pb
);
t1
=
avio_rl16
(
pb
);
t2
=
avio_rl16
(
pb
);
t2
=
avio_rl16
(
pb
);
nb_comments
=
avio_r8
(
pb
);
nb_comments
=
avio_r8
(
pb
);
flags
=
avio_r8
(
pb
);
flags
=
avio_r8
(
pb
);
avio_s
eek
(
pb
,
4
,
SEEK_CUR
);
avio_s
kip
(
pb
,
4
);
GET_SAUCE_META
(
"encoder"
,
22
);
GET_SAUCE_META
(
"encoder"
,
22
);
if
(
got_width
&&
datatype
&&
filetype
)
{
if
(
got_width
&&
datatype
&&
filetype
)
{
...
...
libavformat/siff.c
View file @
45a8a02a
...
@@ -103,7 +103,7 @@ static int siff_parse_vbv1(AVFormatContext *s, SIFFContext *c, AVIOContext *pb)
...
@@ -103,7 +103,7 @@ static int siff_parse_vbv1(AVFormatContext *s, SIFFContext *c, AVIOContext *pb)
}
}
width
=
avio_rl16
(
pb
);
width
=
avio_rl16
(
pb
);
height
=
avio_rl16
(
pb
);
height
=
avio_rl16
(
pb
);
avio_s
eek
(
pb
,
4
,
SEEK_CUR
);
avio_s
kip
(
pb
,
4
);
c
->
frames
=
avio_rl16
(
pb
);
c
->
frames
=
avio_rl16
(
pb
);
if
(
!
c
->
frames
){
if
(
!
c
->
frames
){
av_log
(
s
,
AV_LOG_ERROR
,
"File contains no frames ???
\n
"
);
av_log
(
s
,
AV_LOG_ERROR
,
"File contains no frames ???
\n
"
);
...
@@ -113,7 +113,7 @@ static int siff_parse_vbv1(AVFormatContext *s, SIFFContext *c, AVIOContext *pb)
...
@@ -113,7 +113,7 @@ static int siff_parse_vbv1(AVFormatContext *s, SIFFContext *c, AVIOContext *pb)
c
->
rate
=
avio_rl16
(
pb
);
c
->
rate
=
avio_rl16
(
pb
);
c
->
block_align
=
c
->
rate
*
(
c
->
bits
>>
3
);
c
->
block_align
=
c
->
rate
*
(
c
->
bits
>>
3
);
avio_s
eek
(
pb
,
16
,
SEEK_CUR
);
//zeroes
avio_s
kip
(
pb
,
16
);
//zeroes
st
=
av_new_stream
(
s
,
0
);
st
=
av_new_stream
(
s
,
0
);
if
(
!
st
)
if
(
!
st
)
...
@@ -145,7 +145,7 @@ static int siff_parse_soun(AVFormatContext *s, SIFFContext *c, AVIOContext *pb)
...
@@ -145,7 +145,7 @@ static int siff_parse_soun(AVFormatContext *s, SIFFContext *c, AVIOContext *pb)
av_log
(
s
,
AV_LOG_ERROR
,
"Header chunk size is incorrect
\n
"
);
av_log
(
s
,
AV_LOG_ERROR
,
"Header chunk size is incorrect
\n
"
);
return
-
1
;
return
-
1
;
}
}
avio_s
eek
(
pb
,
4
,
SEEK_CUR
);
//unknown value
avio_s
kip
(
pb
,
4
);
//unknown value
c
->
rate
=
avio_rl16
(
pb
);
c
->
rate
=
avio_rl16
(
pb
);
c
->
bits
=
avio_rl16
(
pb
);
c
->
bits
=
avio_rl16
(
pb
);
c
->
block_align
=
c
->
rate
*
(
c
->
bits
>>
3
);
c
->
block_align
=
c
->
rate
*
(
c
->
bits
>>
3
);
...
@@ -160,7 +160,7 @@ static int siff_read_header(AVFormatContext *s, AVFormatParameters *ap)
...
@@ -160,7 +160,7 @@ static int siff_read_header(AVFormatContext *s, AVFormatParameters *ap)
if
(
avio_rl32
(
pb
)
!=
TAG_SIFF
)
if
(
avio_rl32
(
pb
)
!=
TAG_SIFF
)
return
-
1
;
return
-
1
;
avio_s
eek
(
pb
,
4
,
SEEK_CUR
);
//ignore size
avio_s
kip
(
pb
,
4
);
//ignore size
tag
=
avio_rl32
(
pb
);
tag
=
avio_rl32
(
pb
);
if
(
tag
!=
TAG_VBV1
&&
tag
!=
TAG_SOUN
){
if
(
tag
!=
TAG_VBV1
&&
tag
!=
TAG_SOUN
){
...
@@ -176,7 +176,7 @@ static int siff_read_header(AVFormatContext *s, AVFormatParameters *ap)
...
@@ -176,7 +176,7 @@ static int siff_read_header(AVFormatContext *s, AVFormatParameters *ap)
av_log
(
s
,
AV_LOG_ERROR
,
"'BODY' chunk is missing
\n
"
);
av_log
(
s
,
AV_LOG_ERROR
,
"'BODY' chunk is missing
\n
"
);
return
-
1
;
return
-
1
;
}
}
avio_s
eek
(
pb
,
4
,
SEEK_CUR
);
//ignore size
avio_s
kip
(
pb
,
4
);
//ignore size
return
0
;
return
0
;
}
}
...
...
libavformat/soxdec.c
View file @
45a8a02a
...
@@ -58,14 +58,14 @@ static int sox_read_header(AVFormatContext *s,
...
@@ -58,14 +58,14 @@ static int sox_read_header(AVFormatContext *s,
if
(
avio_rl32
(
pb
)
==
SOX_TAG
)
{
if
(
avio_rl32
(
pb
)
==
SOX_TAG
)
{
st
->
codec
->
codec_id
=
CODEC_ID_PCM_S32LE
;
st
->
codec
->
codec_id
=
CODEC_ID_PCM_S32LE
;
header_size
=
avio_rl32
(
pb
);
header_size
=
avio_rl32
(
pb
);
avio_s
eek
(
pb
,
8
,
SEEK_CUR
);
/* sample count */
avio_s
kip
(
pb
,
8
);
/* sample count */
sample_rate
=
av_int2dbl
(
avio_rl64
(
pb
));
sample_rate
=
av_int2dbl
(
avio_rl64
(
pb
));
st
->
codec
->
channels
=
avio_rl32
(
pb
);
st
->
codec
->
channels
=
avio_rl32
(
pb
);
comment_size
=
avio_rl32
(
pb
);
comment_size
=
avio_rl32
(
pb
);
}
else
{
}
else
{
st
->
codec
->
codec_id
=
CODEC_ID_PCM_S32BE
;
st
->
codec
->
codec_id
=
CODEC_ID_PCM_S32BE
;
header_size
=
avio_rb32
(
pb
);
header_size
=
avio_rb32
(
pb
);
avio_s
eek
(
pb
,
8
,
SEEK_CUR
);
/* sample count */
avio_s
kip
(
pb
,
8
);
/* sample count */
sample_rate
=
av_int2dbl
(
avio_rb64
(
pb
));
sample_rate
=
av_int2dbl
(
avio_rb64
(
pb
));
st
->
codec
->
channels
=
avio_rb32
(
pb
);
st
->
codec
->
channels
=
avio_rb32
(
pb
);
comment_size
=
avio_rb32
(
pb
);
comment_size
=
avio_rb32
(
pb
);
...
@@ -105,7 +105,7 @@ static int sox_read_header(AVFormatContext *s,
...
@@ -105,7 +105,7 @@ static int sox_read_header(AVFormatContext *s,
AV_METADATA_DONT_STRDUP_VAL
);
AV_METADATA_DONT_STRDUP_VAL
);
}
}
avio_s
eek
(
pb
,
header_size
-
SOX_FIXED_HDR
-
comment_size
,
SEEK_CUR
);
avio_s
kip
(
pb
,
header_size
-
SOX_FIXED_HDR
-
comment_size
);
st
->
codec
->
sample_rate
=
sample_rate
;
st
->
codec
->
sample_rate
=
sample_rate
;
st
->
codec
->
bits_per_coded_sample
=
32
;
st
->
codec
->
bits_per_coded_sample
=
32
;
...
...
libavformat/spdifdec.c
View file @
45a8a02a
...
@@ -201,7 +201,7 @@ static int spdif_read_packet(AVFormatContext *s, AVPacket *pkt)
...
@@ -201,7 +201,7 @@ static int spdif_read_packet(AVFormatContext *s, AVPacket *pkt)
}
}
/* skip over the padding to the beginning of the next frame */
/* skip over the padding to the beginning of the next frame */
avio_s
eek
(
pb
,
offset
-
pkt
->
size
-
BURST_HEADER_SIZE
,
SEEK_CUR
);
avio_s
kip
(
pb
,
offset
-
pkt
->
size
-
BURST_HEADER_SIZE
);
if
(
!
s
->
nb_streams
)
{
if
(
!
s
->
nb_streams
)
{
/* first packet, create a stream */
/* first packet, create a stream */
...
...
libavformat/swfdec.c
View file @
45a8a02a
...
@@ -70,7 +70,7 @@ static int swf_read_header(AVFormatContext *s, AVFormatParameters *ap)
...
@@ -70,7 +70,7 @@ static int swf_read_header(AVFormatContext *s, AVFormatParameters *ap)
/* skip rectangle size */
/* skip rectangle size */
nbits
=
avio_r8
(
pb
)
>>
3
;
nbits
=
avio_r8
(
pb
)
>>
3
;
len
=
(
4
*
nbits
-
3
+
7
)
/
8
;
len
=
(
4
*
nbits
-
3
+
7
)
/
8
;
avio_s
eek
(
pb
,
len
,
SEEK_CUR
);
avio_s
kip
(
pb
,
len
);
swf
->
frame_rate
=
avio_rl16
(
pb
);
/* 8.8 fixed */
swf
->
frame_rate
=
avio_rl16
(
pb
);
/* 8.8 fixed */
avio_rl16
(
pb
);
/* frame count */
avio_rl16
(
pb
);
/* frame count */
...
@@ -159,7 +159,7 @@ static int swf_read_packet(AVFormatContext *s, AVPacket *pkt)
...
@@ -159,7 +159,7 @@ static int swf_read_packet(AVFormatContext *s, AVPacket *pkt)
st
=
s
->
streams
[
i
];
st
=
s
->
streams
[
i
];
if
(
st
->
codec
->
codec_type
==
AVMEDIA_TYPE_AUDIO
&&
st
->
id
==
-
1
)
{
if
(
st
->
codec
->
codec_type
==
AVMEDIA_TYPE_AUDIO
&&
st
->
id
==
-
1
)
{
if
(
st
->
codec
->
codec_id
==
CODEC_ID_MP3
)
{
if
(
st
->
codec
->
codec_id
==
CODEC_ID_MP3
)
{
avio_s
eek
(
pb
,
4
,
SEEK_CUR
);
avio_s
kip
(
pb
,
4
);
av_get_packet
(
pb
,
pkt
,
len
-
4
);
av_get_packet
(
pb
,
pkt
,
len
-
4
);
}
else
{
// ADPCM, PCM
}
else
{
// ADPCM, PCM
av_get_packet
(
pb
,
pkt
,
len
);
av_get_packet
(
pb
,
pkt
,
len
);
...
@@ -202,7 +202,7 @@ static int swf_read_packet(AVFormatContext *s, AVPacket *pkt)
...
@@ -202,7 +202,7 @@ static int swf_read_packet(AVFormatContext *s, AVPacket *pkt)
return
pkt
->
size
;
return
pkt
->
size
;
}
}
skip:
skip:
avio_s
eek
(
pb
,
len
,
SEEK_CUR
);
avio_s
kip
(
pb
,
len
);
}
}
return
0
;
return
0
;
}
}
...
...
libavformat/tmv.c
View file @
45a8a02a
...
@@ -152,7 +152,7 @@ static int tmv_read_packet(AVFormatContext *s, AVPacket *pkt)
...
@@ -152,7 +152,7 @@ static int tmv_read_packet(AVFormatContext *s, AVPacket *pkt)
ret
=
av_get_packet
(
pb
,
pkt
,
pkt_size
);
ret
=
av_get_packet
(
pb
,
pkt
,
pkt_size
);
if
(
tmv
->
stream_index
)
if
(
tmv
->
stream_index
)
avio_s
eek
(
pb
,
tmv
->
padding
,
SEEK_CUR
);
avio_s
kip
(
pb
,
tmv
->
padding
);
pkt
->
stream_index
=
tmv
->
stream_index
;
pkt
->
stream_index
=
tmv
->
stream_index
;
tmv
->
stream_index
^=
1
;
tmv
->
stream_index
^=
1
;
...
...
libavformat/tta.c
View file @
45a8a02a
...
@@ -50,7 +50,7 @@ static int tta_read_header(AVFormatContext *s, AVFormatParameters *ap)
...
@@ -50,7 +50,7 @@ static int tta_read_header(AVFormatContext *s, AVFormatParameters *ap)
if
(
avio_rl32
(
s
->
pb
)
!=
AV_RL32
(
"TTA1"
))
if
(
avio_rl32
(
s
->
pb
)
!=
AV_RL32
(
"TTA1"
))
return
-
1
;
// not tta file
return
-
1
;
// not tta file
avio_s
eek
(
s
->
pb
,
2
,
SEEK_CUR
);
// FIXME: flags
avio_s
kip
(
s
->
pb
,
2
);
// FIXME: flags
channels
=
avio_rl16
(
s
->
pb
);
channels
=
avio_rl16
(
s
->
pb
);
bps
=
avio_rl16
(
s
->
pb
);
bps
=
avio_rl16
(
s
->
pb
);
samplerate
=
avio_rl32
(
s
->
pb
);
samplerate
=
avio_rl32
(
s
->
pb
);
...
@@ -65,7 +65,7 @@ static int tta_read_header(AVFormatContext *s, AVFormatParameters *ap)
...
@@ -65,7 +65,7 @@ static int tta_read_header(AVFormatContext *s, AVFormatParameters *ap)
return
-
1
;
return
-
1
;
}
}
avio_s
eek
(
s
->
pb
,
4
,
SEEK_CUR
);
// header crc
avio_s
kip
(
s
->
pb
,
4
);
// header crc
framelen
=
samplerate
*
256
/
245
;
framelen
=
samplerate
*
256
/
245
;
c
->
totalframes
=
datalen
/
framelen
+
((
datalen
%
framelen
)
?
1
:
0
);
c
->
totalframes
=
datalen
/
framelen
+
((
datalen
%
framelen
)
?
1
:
0
);
...
@@ -91,7 +91,7 @@ static int tta_read_header(AVFormatContext *s, AVFormatParameters *ap)
...
@@ -91,7 +91,7 @@ static int tta_read_header(AVFormatContext *s, AVFormatParameters *ap)
av_add_index_entry
(
st
,
framepos
,
i
*
framelen
,
size
,
0
,
AVINDEX_KEYFRAME
);
av_add_index_entry
(
st
,
framepos
,
i
*
framelen
,
size
,
0
,
AVINDEX_KEYFRAME
);
framepos
+=
size
;
framepos
+=
size
;
}
}
avio_s
eek
(
s
->
pb
,
4
,
SEEK_CUR
);
// seektable crc
avio_s
kip
(
s
->
pb
,
4
);
// seektable crc
st
->
codec
->
codec_type
=
AVMEDIA_TYPE_AUDIO
;
st
->
codec
->
codec_type
=
AVMEDIA_TYPE_AUDIO
;
st
->
codec
->
codec_id
=
CODEC_ID_TTA
;
st
->
codec
->
codec_id
=
CODEC_ID_TTA
;
...
...
libavformat/txd.c
View file @
45a8a02a
...
@@ -73,7 +73,7 @@ next_chunk:
...
@@ -73,7 +73,7 @@ next_chunk:
if
(
chunk_size
>
100
)
if
(
chunk_size
>
100
)
break
;
break
;
case
TXD_EXTRA
:
case
TXD_EXTRA
:
avio_s
eek
(
s
->
pb
,
chunk_size
,
SEEK_CUR
);
avio_s
kip
(
s
->
pb
,
chunk_size
);
case
TXD_FILE
:
case
TXD_FILE
:
case
TXD_TEXTURE
:
case
TXD_TEXTURE
:
goto
next_chunk
;
goto
next_chunk
;
...
...
libavformat/vc1test.c
View file @
45a8a02a
...
@@ -68,7 +68,7 @@ static int vc1t_read_header(AVFormatContext *s,
...
@@ -68,7 +68,7 @@ static int vc1t_read_header(AVFormatContext *s,
st
->
codec
->
width
=
avio_rl32
(
pb
);
st
->
codec
->
width
=
avio_rl32
(
pb
);
if
(
avio_rl32
(
pb
)
!=
0xC
)
if
(
avio_rl32
(
pb
)
!=
0xC
)
return
-
1
;
return
-
1
;
avio_s
eek
(
pb
,
8
,
SEEK_CUR
);
avio_s
kip
(
pb
,
8
);
fps
=
avio_rl32
(
pb
);
fps
=
avio_rl32
(
pb
);
if
(
fps
==
0xFFFFFFFF
)
if
(
fps
==
0xFFFFFFFF
)
av_set_pts_info
(
st
,
32
,
1
,
1000
);
av_set_pts_info
(
st
,
32
,
1
,
1000
);
...
...
libavformat/vocdec.c
View file @
45a8a02a
...
@@ -45,13 +45,13 @@ static int voc_read_header(AVFormatContext *s, AVFormatParameters *ap)
...
@@ -45,13 +45,13 @@ static int voc_read_header(AVFormatContext *s, AVFormatParameters *ap)
int
header_size
;
int
header_size
;
AVStream
*
st
;
AVStream
*
st
;
avio_s
eek
(
pb
,
20
,
SEEK_CUR
);
avio_s
kip
(
pb
,
20
);
header_size
=
avio_rl16
(
pb
)
-
22
;
header_size
=
avio_rl16
(
pb
)
-
22
;
if
(
header_size
!=
4
)
{
if
(
header_size
!=
4
)
{
av_log
(
s
,
AV_LOG_ERROR
,
"unknown header size: %d
\n
"
,
header_size
);
av_log
(
s
,
AV_LOG_ERROR
,
"unknown header size: %d
\n
"
,
header_size
);
return
AVERROR
(
ENOSYS
);
return
AVERROR
(
ENOSYS
);
}
}
avio_s
eek
(
pb
,
header_size
,
SEEK_CUR
);
avio_s
kip
(
pb
,
header_size
);
st
=
av_new_stream
(
s
,
0
);
st
=
av_new_stream
(
s
,
0
);
if
(
!
st
)
if
(
!
st
)
return
AVERROR
(
ENOMEM
);
return
AVERROR
(
ENOMEM
);
...
@@ -114,13 +114,13 @@ voc_get_packet(AVFormatContext *s, AVPacket *pkt, AVStream *st, int max_size)
...
@@ -114,13 +114,13 @@ voc_get_packet(AVFormatContext *s, AVPacket *pkt, AVStream *st, int max_size)
dec
->
bits_per_coded_sample
=
avio_r8
(
pb
);
dec
->
bits_per_coded_sample
=
avio_r8
(
pb
);
dec
->
channels
=
avio_r8
(
pb
);
dec
->
channels
=
avio_r8
(
pb
);
tmp_codec
=
avio_rl16
(
pb
);
tmp_codec
=
avio_rl16
(
pb
);
avio_s
eek
(
pb
,
4
,
SEEK_CUR
);
avio_s
kip
(
pb
,
4
);
voc
->
remaining_size
-=
12
;
voc
->
remaining_size
-=
12
;
max_size
-=
12
;
max_size
-=
12
;
break
;
break
;
default:
default:
avio_s
eek
(
pb
,
voc
->
remaining_size
,
SEEK_CUR
);
avio_s
kip
(
pb
,
voc
->
remaining_size
);
max_size
-=
voc
->
remaining_size
;
max_size
-=
voc
->
remaining_size
;
voc
->
remaining_size
=
0
;
voc
->
remaining_size
=
0
;
break
;
break
;
...
...
libavformat/vqf.c
View file @
45a8a02a
...
@@ -72,7 +72,7 @@ static int vqf_read_header(AVFormatContext *s, AVFormatParameters *ap)
...
@@ -72,7 +72,7 @@ static int vqf_read_header(AVFormatContext *s, AVFormatParameters *ap)
if
(
!
st
)
if
(
!
st
)
return
AVERROR
(
ENOMEM
);
return
AVERROR
(
ENOMEM
);
avio_s
eek
(
s
->
pb
,
12
,
SEEK_CUR
);
avio_s
kip
(
s
->
pb
,
12
);
header_size
=
avio_rb32
(
s
->
pb
);
header_size
=
avio_rb32
(
s
->
pb
);
...
@@ -101,7 +101,7 @@ static int vqf_read_header(AVFormatContext *s, AVFormatParameters *ap)
...
@@ -101,7 +101,7 @@ static int vqf_read_header(AVFormatContext *s, AVFormatParameters *ap)
st
->
codec
->
channels
=
avio_rb32
(
s
->
pb
)
+
1
;
st
->
codec
->
channels
=
avio_rb32
(
s
->
pb
)
+
1
;
read_bitrate
=
avio_rb32
(
s
->
pb
);
read_bitrate
=
avio_rb32
(
s
->
pb
);
rate_flag
=
avio_rb32
(
s
->
pb
);
rate_flag
=
avio_rb32
(
s
->
pb
);
avio_s
eek
(
s
->
pb
,
len
-
12
,
SEEK_CUR
);
avio_s
kip
(
s
->
pb
,
len
-
12
);
st
->
codec
->
bit_rate
=
read_bitrate
*
1000
;
st
->
codec
->
bit_rate
=
read_bitrate
*
1000
;
st
->
codec
->
bits_per_coded_sample
=
16
;
st
->
codec
->
bits_per_coded_sample
=
16
;
...
@@ -140,7 +140,7 @@ static int vqf_read_header(AVFormatContext *s, AVFormatParameters *ap)
...
@@ -140,7 +140,7 @@ static int vqf_read_header(AVFormatContext *s, AVFormatParameters *ap)
av_log
(
s
,
AV_LOG_ERROR
,
"Unknown chunk: %c%c%c%c
\n
"
,
av_log
(
s
,
AV_LOG_ERROR
,
"Unknown chunk: %c%c%c%c
\n
"
,
((
char
*
)
&
chunk_tag
)[
0
],
((
char
*
)
&
chunk_tag
)[
1
],
((
char
*
)
&
chunk_tag
)[
0
],
((
char
*
)
&
chunk_tag
)[
1
],
((
char
*
)
&
chunk_tag
)[
2
],
((
char
*
)
&
chunk_tag
)[
3
]);
((
char
*
)
&
chunk_tag
)[
2
],
((
char
*
)
&
chunk_tag
)[
3
]);
avio_s
eek
(
s
->
pb
,
FFMIN
(
len
,
header_size
),
SEEK_CUR
);
avio_s
kip
(
s
->
pb
,
FFMIN
(
len
,
header_size
)
);
break
;
break
;
}
}
...
...
libavformat/wav.c
View file @
45a8a02a
...
@@ -160,7 +160,7 @@ static int64_t find_tag(AVIOContext *pb, uint32_t tag1)
...
@@ -160,7 +160,7 @@ static int64_t find_tag(AVIOContext *pb, uint32_t tag1)
size
=
next_tag
(
pb
,
&
tag
);
size
=
next_tag
(
pb
,
&
tag
);
if
(
tag
==
tag1
)
if
(
tag
==
tag1
)
break
;
break
;
avio_s
eek
(
pb
,
size
,
SEEK_CUR
);
avio_s
kip
(
pb
,
size
);
}
}
return
size
;
return
size
;
}
}
...
@@ -217,7 +217,7 @@ static int wav_read_header(AVFormatContext *s,
...
@@ -217,7 +217,7 @@ static int wav_read_header(AVFormatContext *s,
avio_rl64
(
pb
);
/* RIFF size */
avio_rl64
(
pb
);
/* RIFF size */
data_size
=
avio_rl64
(
pb
);
data_size
=
avio_rl64
(
pb
);
sample_count
=
avio_rl64
(
pb
);
sample_count
=
avio_rl64
(
pb
);
avio_s
eek
(
pb
,
size
-
16
,
SEEK_CUR
);
/* skip rest of ds64 chunk */
avio_s
kip
(
pb
,
size
-
16
);
/* skip rest of ds64 chunk */
}
}
/* parse fmt header */
/* parse fmt header */
...
@@ -243,7 +243,7 @@ static int wav_read_header(AVFormatContext *s,
...
@@ -243,7 +243,7 @@ static int wav_read_header(AVFormatContext *s,
sample_count
=
avio_rl32
(
pb
);
sample_count
=
avio_rl32
(
pb
);
size
-=
4
;
size
-=
4
;
}
}
avio_s
eek
(
pb
,
size
,
SEEK_CUR
);
avio_s
kip
(
pb
,
size
);
}
}
if
(
rf64
)
if
(
rf64
)
size
=
data_size
;
size
=
data_size
;
...
@@ -276,7 +276,7 @@ static int64_t find_guid(AVIOContext *pb, const uint8_t guid1[16])
...
@@ -276,7 +276,7 @@ static int64_t find_guid(AVIOContext *pb, const uint8_t guid1[16])
return
-
1
;
return
-
1
;
if
(
!
memcmp
(
guid
,
guid1
,
16
))
if
(
!
memcmp
(
guid
,
guid1
,
16
))
return
size
;
return
size
;
avio_s
eek
(
pb
,
FFALIGN
(
size
,
INT64_C
(
8
))
-
24
,
SEEK_CUR
);
avio_s
kip
(
pb
,
FFALIGN
(
size
,
INT64_C
(
8
))
-
24
);
}
}
return
-
1
;
return
-
1
;
}
}
...
@@ -410,7 +410,7 @@ static int w64_read_header(AVFormatContext *s, AVFormatParameters *ap)
...
@@ -410,7 +410,7 @@ static int w64_read_header(AVFormatContext *s, AVFormatParameters *ap)
/* subtract chunk header size - normal wav file doesn't count it */
/* subtract chunk header size - normal wav file doesn't count it */
ff_get_wav_header
(
pb
,
st
->
codec
,
size
-
24
);
ff_get_wav_header
(
pb
,
st
->
codec
,
size
-
24
);
avio_s
eek
(
pb
,
FFALIGN
(
size
,
INT64_C
(
8
))
-
size
,
SEEK_CUR
);
avio_s
kip
(
pb
,
FFALIGN
(
size
,
INT64_C
(
8
))
-
size
);
st
->
need_parsing
=
AVSTREAM_PARSE_FULL
;
st
->
need_parsing
=
AVSTREAM_PARSE_FULL
;
...
...
libavformat/wc3movie.c
View file @
45a8a02a
...
@@ -101,7 +101,7 @@ static int wc3_read_header(AVFormatContext *s,
...
@@ -101,7 +101,7 @@ static int wc3_read_header(AVFormatContext *s,
wc3
->
vpkt
.
data
=
NULL
;
wc3
->
vpkt
.
size
=
0
;
wc3
->
vpkt
.
data
=
NULL
;
wc3
->
vpkt
.
size
=
0
;
/* skip the first 3 32-bit numbers */
/* skip the first 3 32-bit numbers */
avio_s
eek
(
pb
,
12
,
SEEK_CUR
);
avio_s
kip
(
pb
,
12
);
/* traverse through the chunks and load the header information before
/* traverse through the chunks and load the header information before
* the first BRCH tag */
* the first BRCH tag */
...
@@ -114,12 +114,12 @@ static int wc3_read_header(AVFormatContext *s,
...
@@ -114,12 +114,12 @@ static int wc3_read_header(AVFormatContext *s,
case
SOND_TAG
:
case
SOND_TAG
:
case
INDX_TAG
:
case
INDX_TAG
:
/* SOND unknown, INDX unnecessary; ignore both */
/* SOND unknown, INDX unnecessary; ignore both */
avio_s
eek
(
pb
,
size
,
SEEK_CUR
);
avio_s
kip
(
pb
,
size
);
break
;
break
;
case
PC__TAG
:
case
PC__TAG
:
/* number of palettes, unneeded */
/* number of palettes, unneeded */
avio_s
eek
(
pb
,
12
,
SEEK_CUR
);
avio_s
kip
(
pb
,
12
);
break
;
break
;
case
BNAM_TAG
:
case
BNAM_TAG
:
...
@@ -240,7 +240,7 @@ static int wc3_read_packet(AVFormatContext *s,
...
@@ -240,7 +240,7 @@ static int wc3_read_packet(AVFormatContext *s,
case
TEXT_TAG
:
case
TEXT_TAG
:
/* subtitle chunk */
/* subtitle chunk */
#if 0
#if 0
avio_s
eek(pb, size, SEEK_CUR
);
avio_s
kip(pb, size
);
#else
#else
if
((
unsigned
)
size
>
sizeof
(
text
)
||
(
ret
=
avio_read
(
pb
,
text
,
size
))
!=
size
)
if
((
unsigned
)
size
>
sizeof
(
text
)
||
(
ret
=
avio_read
(
pb
,
text
,
size
))
!=
size
)
ret
=
AVERROR
(
EIO
);
ret
=
AVERROR
(
EIO
);
...
...
libavformat/westwood.c
View file @
45a8a02a
...
@@ -303,7 +303,7 @@ static int wsvqa_read_header(AVFormatContext *s,
...
@@ -303,7 +303,7 @@ static int wsvqa_read_header(AVFormatContext *s,
break
;
break
;
}
}
avio_s
eek
(
pb
,
chunk_size
,
SEEK_CUR
);
avio_s
kip
(
pb
,
chunk_size
);
}
while
(
chunk_tag
!=
FINF_TAG
);
}
while
(
chunk_tag
!=
FINF_TAG
);
return
0
;
return
0
;
...
@@ -348,7 +348,7 @@ static int wsvqa_read_packet(AVFormatContext *s,
...
@@ -348,7 +348,7 @@ static int wsvqa_read_packet(AVFormatContext *s,
}
}
/* stay on 16-bit alignment */
/* stay on 16-bit alignment */
if
(
skip_byte
)
if
(
skip_byte
)
avio_s
eek
(
pb
,
1
,
SEEK_CUR
);
avio_s
kip
(
pb
,
1
);
return
ret
;
return
ret
;
}
else
{
}
else
{
...
@@ -359,7 +359,7 @@ static int wsvqa_read_packet(AVFormatContext *s,
...
@@ -359,7 +359,7 @@ static int wsvqa_read_packet(AVFormatContext *s,
default:
default:
av_log
(
s
,
AV_LOG_INFO
,
"Skipping unknown chunk 0x%08X
\n
"
,
chunk_type
);
av_log
(
s
,
AV_LOG_INFO
,
"Skipping unknown chunk 0x%08X
\n
"
,
chunk_type
);
}
}
avio_s
eek
(
pb
,
chunk_size
+
skip_byte
,
SEEK_CUR
);
avio_s
kip
(
pb
,
chunk_size
+
skip_byte
);
}
}
}
}
...
...
libavformat/wtv.c
View file @
45a8a02a
...
@@ -539,7 +539,7 @@ static void get_tag(AVFormatContext *s, AVIOContext *pb, const char *key, int ty
...
@@ -539,7 +539,7 @@ static void get_tag(AVFormatContext *s, AVIOContext *pb, const char *key, int ty
}
else
{
}
else
{
av_freep
(
&
buf
);
av_freep
(
&
buf
);
av_log
(
s
,
AV_LOG_WARNING
,
"unsupported metadata entry; key:%s, type:%d, length:0x%x
\n
"
,
key
,
type
,
length
);
av_log
(
s
,
AV_LOG_WARNING
,
"unsupported metadata entry; key:%s, type:%d, length:0x%x
\n
"
,
key
,
type
,
length
);
avio_s
eek
(
pb
,
length
,
SEEK_CUR
);
avio_s
kip
(
pb
,
length
);
return
;
return
;
}
}
...
@@ -582,7 +582,7 @@ static int parse_videoinfoheader2(AVFormatContext *s, AVStream *st)
...
@@ -582,7 +582,7 @@ static int parse_videoinfoheader2(AVFormatContext *s, AVStream *st)
WtvContext
*
wtv
=
s
->
priv_data
;
WtvContext
*
wtv
=
s
->
priv_data
;
AVIOContext
*
pb
=
wtv
->
pb
;
AVIOContext
*
pb
=
wtv
->
pb
;
avio_s
eek
(
pb
,
72
,
SEEK_CUR
);
// picture aspect ratio is unreliable
avio_s
kip
(
pb
,
72
);
// picture aspect ratio is unreliable
ff_get_bmp_header
(
pb
,
st
);
ff_get_bmp_header
(
pb
,
st
);
return
72
+
40
;
return
72
+
40
;
...
@@ -658,17 +658,17 @@ static AVStream * parse_media_type(AVFormatContext *s, AVStream *st, int sid,
...
@@ -658,17 +658,17 @@ static AVStream * parse_media_type(AVFormatContext *s, AVStream *st, int sid,
if
(
size
<
32
)
{
if
(
size
<
32
)
{
av_log
(
s
,
AV_LOG_WARNING
,
"format buffer size underflow
\n
"
);
av_log
(
s
,
AV_LOG_WARNING
,
"format buffer size underflow
\n
"
);
avio_s
eek
(
pb
,
size
,
SEEK_CUR
);
avio_s
kip
(
pb
,
size
);
return
NULL
;
return
NULL
;
}
}
avio_s
eek
(
pb
,
size
-
32
,
SEEK_CUR
);
avio_s
kip
(
pb
,
size
-
32
);
ff_get_guid
(
pb
,
&
actual_subtype
);
ff_get_guid
(
pb
,
&
actual_subtype
);
ff_get_guid
(
pb
,
&
actual_formattype
);
ff_get_guid
(
pb
,
&
actual_formattype
);
avio_seek
(
pb
,
-
size
,
SEEK_CUR
);
avio_seek
(
pb
,
-
size
,
SEEK_CUR
);
st
=
parse_media_type
(
s
,
st
,
sid
,
mediatype
,
actual_subtype
,
actual_formattype
,
size
-
32
);
st
=
parse_media_type
(
s
,
st
,
sid
,
mediatype
,
actual_subtype
,
actual_formattype
,
size
-
32
);
avio_s
eek
(
pb
,
32
,
SEEK_CUR
);
avio_s
kip
(
pb
,
32
);
return
st
;
return
st
;
}
else
if
(
!
ff_guidcmp
(
mediatype
,
mediatype_audio
))
{
}
else
if
(
!
ff_guidcmp
(
mediatype
,
mediatype_audio
))
{
st
=
new_stream
(
s
,
st
,
sid
,
AVMEDIA_TYPE_AUDIO
);
st
=
new_stream
(
s
,
st
,
sid
,
AVMEDIA_TYPE_AUDIO
);
...
@@ -679,7 +679,7 @@ static AVStream * parse_media_type(AVFormatContext *s, AVStream *st, int sid,
...
@@ -679,7 +679,7 @@ static AVStream * parse_media_type(AVFormatContext *s, AVStream *st, int sid,
}
else
{
}
else
{
if
(
ff_guidcmp
(
formattype
,
format_none
))
if
(
ff_guidcmp
(
formattype
,
format_none
))
av_log
(
s
,
AV_LOG_WARNING
,
"unknown formattype:"
PRI_GUID
"
\n
"
,
ARG_GUID
(
formattype
));
av_log
(
s
,
AV_LOG_WARNING
,
"unknown formattype:"
PRI_GUID
"
\n
"
,
ARG_GUID
(
formattype
));
avio_s
eek
(
pb
,
size
,
SEEK_CUR
);
avio_s
kip
(
pb
,
size
);
}
}
if
(
!
memcmp
(
subtype
+
4
,
(
const
uint8_t
[]){
MEDIASUBTYPE_BASE_GUID
},
12
))
{
if
(
!
memcmp
(
subtype
+
4
,
(
const
uint8_t
[]){
MEDIASUBTYPE_BASE_GUID
},
12
))
{
...
@@ -708,7 +708,7 @@ static AVStream * parse_media_type(AVFormatContext *s, AVStream *st, int sid,
...
@@ -708,7 +708,7 @@ static AVStream * parse_media_type(AVFormatContext *s, AVStream *st, int sid,
}
else
{
}
else
{
if
(
ff_guidcmp
(
formattype
,
format_none
))
if
(
ff_guidcmp
(
formattype
,
format_none
))
av_log
(
s
,
AV_LOG_WARNING
,
"unknown formattype:"
PRI_GUID
"
\n
"
,
ARG_GUID
(
formattype
));
av_log
(
s
,
AV_LOG_WARNING
,
"unknown formattype:"
PRI_GUID
"
\n
"
,
ARG_GUID
(
formattype
));
avio_s
eek
(
pb
,
size
,
SEEK_CUR
);
avio_s
kip
(
pb
,
size
);
}
}
if
(
!
memcmp
(
subtype
+
4
,
(
const
uint8_t
[]){
MEDIASUBTYPE_BASE_GUID
},
12
))
{
if
(
!
memcmp
(
subtype
+
4
,
(
const
uint8_t
[]){
MEDIASUBTYPE_BASE_GUID
},
12
))
{
...
@@ -726,7 +726,7 @@ static AVStream * parse_media_type(AVFormatContext *s, AVStream *st, int sid,
...
@@ -726,7 +726,7 @@ static AVStream * parse_media_type(AVFormatContext *s, AVStream *st, int sid,
return
NULL
;
return
NULL
;
if
(
ff_guidcmp
(
formattype
,
format_none
))
if
(
ff_guidcmp
(
formattype
,
format_none
))
av_log
(
s
,
AV_LOG_WARNING
,
"unknown formattype:"
PRI_GUID
"
\n
"
,
ARG_GUID
(
formattype
));
av_log
(
s
,
AV_LOG_WARNING
,
"unknown formattype:"
PRI_GUID
"
\n
"
,
ARG_GUID
(
formattype
));
avio_s
eek
(
pb
,
size
,
SEEK_CUR
);
avio_s
kip
(
pb
,
size
);
st
->
codec
->
codec_id
=
CODEC_ID_DVB_SUBTITLE
;
st
->
codec
->
codec_id
=
CODEC_ID_DVB_SUBTITLE
;
return
st
;
return
st
;
}
else
if
(
!
ff_guidcmp
(
mediatype
,
mediatype_mstvcaption
)
&&
}
else
if
(
!
ff_guidcmp
(
mediatype
,
mediatype_mstvcaption
)
&&
...
@@ -736,21 +736,21 @@ static AVStream * parse_media_type(AVFormatContext *s, AVStream *st, int sid,
...
@@ -736,21 +736,21 @@ static AVStream * parse_media_type(AVFormatContext *s, AVStream *st, int sid,
return
NULL
;
return
NULL
;
if
(
ff_guidcmp
(
formattype
,
format_none
))
if
(
ff_guidcmp
(
formattype
,
format_none
))
av_log
(
s
,
AV_LOG_WARNING
,
"unknown formattype:"
PRI_GUID
"
\n
"
,
ARG_GUID
(
formattype
));
av_log
(
s
,
AV_LOG_WARNING
,
"unknown formattype:"
PRI_GUID
"
\n
"
,
ARG_GUID
(
formattype
));
avio_s
eek
(
pb
,
size
,
SEEK_CUR
);
avio_s
kip
(
pb
,
size
);
st
->
codec
->
codec_id
=
CODEC_ID_DVB_TELETEXT
;
st
->
codec
->
codec_id
=
CODEC_ID_DVB_TELETEXT
;
return
st
;
return
st
;
}
else
if
(
!
ff_guidcmp
(
mediatype
,
mediatype_mpeg2_sections
)
&&
}
else
if
(
!
ff_guidcmp
(
mediatype
,
mediatype_mpeg2_sections
)
&&
!
ff_guidcmp
(
subtype
,
mediasubtype_mpeg2_sections
))
{
!
ff_guidcmp
(
subtype
,
mediasubtype_mpeg2_sections
))
{
if
(
ff_guidcmp
(
formattype
,
format_none
))
if
(
ff_guidcmp
(
formattype
,
format_none
))
av_log
(
s
,
AV_LOG_WARNING
,
"unknown formattype:"
PRI_GUID
"
\n
"
,
ARG_GUID
(
formattype
));
av_log
(
s
,
AV_LOG_WARNING
,
"unknown formattype:"
PRI_GUID
"
\n
"
,
ARG_GUID
(
formattype
));
avio_s
eek
(
pb
,
size
,
SEEK_CUR
);
avio_s
kip
(
pb
,
size
);
return
NULL
;
return
NULL
;
}
}
av_log
(
s
,
AV_LOG_WARNING
,
"unknown media type, mediatype:"
PRI_GUID
av_log
(
s
,
AV_LOG_WARNING
,
"unknown media type, mediatype:"
PRI_GUID
", subtype:"
PRI_GUID
", formattype:"
PRI_GUID
"
\n
"
,
", subtype:"
PRI_GUID
", formattype:"
PRI_GUID
"
\n
"
,
ARG_GUID
(
mediatype
),
ARG_GUID
(
subtype
),
ARG_GUID
(
formattype
));
ARG_GUID
(
mediatype
),
ARG_GUID
(
subtype
),
ARG_GUID
(
formattype
));
avio_s
eek
(
pb
,
size
,
SEEK_CUR
);
avio_s
kip
(
pb
,
size
);
return
NULL
;
return
NULL
;
}
}
...
@@ -779,17 +779,17 @@ static int parse_chunks(AVFormatContext *s, int mode, int64_t seekts, int *len_p
...
@@ -779,17 +779,17 @@ static int parse_chunks(AVFormatContext *s, int mode, int64_t seekts, int *len_p
if
(
len
<
32
)
if
(
len
<
32
)
break
;
break
;
sid
=
avio_rl32
(
pb
)
&
0x7FFF
;
sid
=
avio_rl32
(
pb
)
&
0x7FFF
;
avio_s
eek
(
pb
,
8
,
SEEK_CUR
);
avio_s
kip
(
pb
,
8
);
consumed
=
32
;
consumed
=
32
;
if
(
!
ff_guidcmp
(
g
,
stream_guid
))
{
if
(
!
ff_guidcmp
(
g
,
stream_guid
))
{
if
(
ff_find_stream_index
(
s
,
sid
)
<
0
)
{
if
(
ff_find_stream_index
(
s
,
sid
)
<
0
)
{
ff_asf_guid
mediatype
,
subtype
,
formattype
;
ff_asf_guid
mediatype
,
subtype
,
formattype
;
int
size
;
int
size
;
avio_s
eek
(
pb
,
28
,
SEEK_CUR
);
avio_s
kip
(
pb
,
28
);
ff_get_guid
(
pb
,
&
mediatype
);
ff_get_guid
(
pb
,
&
mediatype
);
ff_get_guid
(
pb
,
&
subtype
);
ff_get_guid
(
pb
,
&
subtype
);
avio_s
eek
(
pb
,
12
,
SEEK_CUR
);
avio_s
kip
(
pb
,
12
);
ff_get_guid
(
pb
,
&
formattype
);
ff_get_guid
(
pb
,
&
formattype
);
size
=
avio_rl32
(
pb
);
size
=
avio_rl32
(
pb
);
parse_media_type
(
s
,
0
,
sid
,
mediatype
,
subtype
,
formattype
,
size
);
parse_media_type
(
s
,
0
,
sid
,
mediatype
,
subtype
,
formattype
,
size
);
...
@@ -800,10 +800,10 @@ static int parse_chunks(AVFormatContext *s, int mode, int64_t seekts, int *len_p
...
@@ -800,10 +800,10 @@ static int parse_chunks(AVFormatContext *s, int mode, int64_t seekts, int *len_p
if
(
stream_index
>=
0
&&
!
((
WtvStream
*
)
s
->
streams
[
stream_index
]
->
priv_data
)
->
seen_data
)
{
if
(
stream_index
>=
0
&&
!
((
WtvStream
*
)
s
->
streams
[
stream_index
]
->
priv_data
)
->
seen_data
)
{
ff_asf_guid
mediatype
,
subtype
,
formattype
;
ff_asf_guid
mediatype
,
subtype
,
formattype
;
int
size
;
int
size
;
avio_s
eek
(
pb
,
12
,
SEEK_CUR
);
avio_s
kip
(
pb
,
12
);
ff_get_guid
(
pb
,
&
mediatype
);
ff_get_guid
(
pb
,
&
mediatype
);
ff_get_guid
(
pb
,
&
subtype
);
ff_get_guid
(
pb
,
&
subtype
);
avio_s
eek
(
pb
,
12
,
SEEK_CUR
);
avio_s
kip
(
pb
,
12
);
ff_get_guid
(
pb
,
&
formattype
);
ff_get_guid
(
pb
,
&
formattype
);
size
=
avio_rl32
(
pb
);
size
=
avio_rl32
(
pb
);
parse_media_type
(
s
,
s
->
streams
[
stream_index
],
sid
,
mediatype
,
subtype
,
formattype
,
size
);
parse_media_type
(
s
,
s
->
streams
[
stream_index
],
sid
,
mediatype
,
subtype
,
formattype
,
size
);
...
@@ -822,11 +822,11 @@ static int parse_chunks(AVFormatContext *s, int mode, int64_t seekts, int *len_p
...
@@ -822,11 +822,11 @@ static int parse_chunks(AVFormatContext *s, int mode, int64_t seekts, int *len_p
const
uint8_t
*
pbuf
=
buf
;
const
uint8_t
*
pbuf
=
buf
;
int
buf_size
;
int
buf_size
;
avio_s
eek
(
pb
,
8
,
SEEK_CUR
);
avio_s
kip
(
pb
,
8
);
consumed
+=
8
;
consumed
+=
8
;
if
(
!
ff_guidcmp
(
g
,
EVENTID_CtxADescriptorSpanningEvent
)
||
if
(
!
ff_guidcmp
(
g
,
EVENTID_CtxADescriptorSpanningEvent
)
||
!
ff_guidcmp
(
g
,
EVENTID_CSDescriptorSpanningEvent
))
{
!
ff_guidcmp
(
g
,
EVENTID_CSDescriptorSpanningEvent
))
{
avio_s
eek
(
pb
,
6
,
SEEK_CUR
);
avio_s
kip
(
pb
,
6
);
consumed
+=
6
;
consumed
+=
6
;
}
}
...
@@ -840,7 +840,7 @@ static int parse_chunks(AVFormatContext *s, int mode, int64_t seekts, int *len_p
...
@@ -840,7 +840,7 @@ static int parse_chunks(AVFormatContext *s, int mode, int64_t seekts, int *len_p
if
(
stream_index
>=
0
)
{
if
(
stream_index
>=
0
)
{
AVStream
*
st
=
s
->
streams
[
stream_index
];
AVStream
*
st
=
s
->
streams
[
stream_index
];
int
audio_type
;
int
audio_type
;
avio_s
eek
(
pb
,
8
,
SEEK_CUR
);
avio_s
kip
(
pb
,
8
);
audio_type
=
avio_r8
(
pb
);
audio_type
=
avio_r8
(
pb
);
if
(
audio_type
==
2
)
if
(
audio_type
==
2
)
st
->
disposition
|=
AV_DISPOSITION_HEARING_IMPAIRED
;
st
->
disposition
|=
AV_DISPOSITION_HEARING_IMPAIRED
;
...
@@ -851,7 +851,7 @@ static int parse_chunks(AVFormatContext *s, int mode, int64_t seekts, int *len_p
...
@@ -851,7 +851,7 @@ static int parse_chunks(AVFormatContext *s, int mode, int64_t seekts, int *len_p
}
else
if
(
!
ff_guidcmp
(
g
,
EVENTID_DVBScramblingControlSpanningEvent
))
{
}
else
if
(
!
ff_guidcmp
(
g
,
EVENTID_DVBScramblingControlSpanningEvent
))
{
int
stream_index
=
ff_find_stream_index
(
s
,
sid
);
int
stream_index
=
ff_find_stream_index
(
s
,
sid
);
if
(
stream_index
>=
0
)
{
if
(
stream_index
>=
0
)
{
avio_s
eek
(
pb
,
12
,
SEEK_CUR
);
avio_s
kip
(
pb
,
12
);
if
(
avio_rl32
(
pb
))
if
(
avio_rl32
(
pb
))
av_log
(
s
,
AV_LOG_WARNING
,
"DVB scrambled stream detected (st:%d), decoding will likely fail
\n
"
,
stream_index
);
av_log
(
s
,
AV_LOG_WARNING
,
"DVB scrambled stream detected (st:%d), decoding will likely fail
\n
"
,
stream_index
);
consumed
+=
16
;
consumed
+=
16
;
...
@@ -861,7 +861,7 @@ static int parse_chunks(AVFormatContext *s, int mode, int64_t seekts, int *len_p
...
@@ -861,7 +861,7 @@ static int parse_chunks(AVFormatContext *s, int mode, int64_t seekts, int *len_p
if
(
stream_index
>=
0
)
{
if
(
stream_index
>=
0
)
{
AVStream
*
st
=
s
->
streams
[
stream_index
];
AVStream
*
st
=
s
->
streams
[
stream_index
];
uint8_t
language
[
4
];
uint8_t
language
[
4
];
avio_s
eek
(
pb
,
12
,
SEEK_CUR
);
avio_s
kip
(
pb
,
12
);
avio_read
(
pb
,
language
,
3
);
avio_read
(
pb
,
language
,
3
);
if
(
language
[
0
])
{
if
(
language
[
0
])
{
language
[
3
]
=
0
;
language
[
3
]
=
0
;
...
@@ -874,7 +874,7 @@ static int parse_chunks(AVFormatContext *s, int mode, int64_t seekts, int *len_p
...
@@ -874,7 +874,7 @@ static int parse_chunks(AVFormatContext *s, int mode, int64_t seekts, int *len_p
}
else
if
(
!
ff_guidcmp
(
g
,
timestamp_guid
))
{
}
else
if
(
!
ff_guidcmp
(
g
,
timestamp_guid
))
{
int
stream_index
=
ff_find_stream_index
(
s
,
sid
);
int
stream_index
=
ff_find_stream_index
(
s
,
sid
);
if
(
stream_index
>=
0
)
{
if
(
stream_index
>=
0
)
{
avio_s
eek
(
pb
,
8
,
SEEK_CUR
);
avio_s
kip
(
pb
,
8
);
wtv
->
pts
=
avio_rl64
(
pb
);
wtv
->
pts
=
avio_rl64
(
pb
);
consumed
+=
16
;
consumed
+=
16
;
if
(
wtv
->
pts
==
-
1
)
if
(
wtv
->
pts
==
-
1
)
...
@@ -885,7 +885,7 @@ static int parse_chunks(AVFormatContext *s, int mode, int64_t seekts, int *len_p
...
@@ -885,7 +885,7 @@ static int parse_chunks(AVFormatContext *s, int mode, int64_t seekts, int *len_p
wtv
->
epoch
=
wtv
->
pts
;
wtv
->
epoch
=
wtv
->
pts
;
if
(
mode
==
SEEK_TO_PTS
&&
wtv
->
pts
>=
seekts
)
{
if
(
mode
==
SEEK_TO_PTS
&&
wtv
->
pts
>=
seekts
)
{
#define WTV_PAD8(x) (((x) + 7) & ~7)
#define WTV_PAD8(x) (((x) + 7) & ~7)
avio_s
eek
(
pb
,
WTV_PAD8
(
len
)
-
consumed
,
SEEK_CUR
);
avio_s
kip
(
pb
,
WTV_PAD8
(
len
)
-
consumed
);
return
0
;
return
0
;
}
}
}
}
...
@@ -923,7 +923,7 @@ static int parse_chunks(AVFormatContext *s, int mode, int64_t seekts, int *len_p
...
@@ -923,7 +923,7 @@ static int parse_chunks(AVFormatContext *s, int mode, int64_t seekts, int *len_p
}
else
}
else
av_log
(
s
,
AV_LOG_WARNING
,
"unsupported chunk:"
PRI_GUID
"
\n
"
,
ARG_GUID
(
g
));
av_log
(
s
,
AV_LOG_WARNING
,
"unsupported chunk:"
PRI_GUID
"
\n
"
,
ARG_GUID
(
g
));
avio_s
eek
(
pb
,
WTV_PAD8
(
len
)
-
consumed
,
SEEK_CUR
);
avio_s
kip
(
pb
,
WTV_PAD8
(
len
)
-
consumed
);
}
}
return
AVERROR_EOF
;
return
AVERROR_EOF
;
}
}
...
@@ -954,13 +954,13 @@ static int read_header(AVFormatContext *s, AVFormatParameters *ap)
...
@@ -954,13 +954,13 @@ static int read_header(AVFormatContext *s, AVFormatParameters *ap)
wtv
->
last_valid_pts
=
AV_NOPTS_VALUE
;
wtv
->
last_valid_pts
=
AV_NOPTS_VALUE
;
/* read root directory sector */
/* read root directory sector */
avio_s
eek
(
s
->
pb
,
0x30
,
SEEK_CUR
);
avio_s
kip
(
s
->
pb
,
0x30
);
root_size
=
avio_rl32
(
s
->
pb
);
root_size
=
avio_rl32
(
s
->
pb
);
if
(
root_size
>
sizeof
(
root
))
{
if
(
root_size
>
sizeof
(
root
))
{
av_log
(
s
,
AV_LOG_ERROR
,
"root directory size exceeds sector size
\n
"
);
av_log
(
s
,
AV_LOG_ERROR
,
"root directory size exceeds sector size
\n
"
);
return
AVERROR_INVALIDDATA
;
return
AVERROR_INVALIDDATA
;
}
}
avio_s
eek
(
s
->
pb
,
4
,
SEEK_CUR
);
avio_s
kip
(
s
->
pb
,
4
);
root_sector
=
avio_rl32
(
s
->
pb
);
root_sector
=
avio_rl32
(
s
->
pb
);
avio_seek
(
s
->
pb
,
root_sector
<<
WTV_SECTOR_BITS
,
SEEK_SET
);
avio_seek
(
s
->
pb
,
root_sector
<<
WTV_SECTOR_BITS
,
SEEK_SET
);
...
@@ -1047,7 +1047,7 @@ static int read_packet(AVFormatContext *s, AVPacket *pkt)
...
@@ -1047,7 +1047,7 @@ static int read_packet(AVFormatContext *s, AVPacket *pkt)
return
ret
;
return
ret
;
pkt
->
stream_index
=
stream_index
;
pkt
->
stream_index
=
stream_index
;
pkt
->
pts
=
wtv
->
pts
;
pkt
->
pts
=
wtv
->
pts
;
avio_s
eek
(
pb
,
WTV_PAD8
(
len
)
-
len
,
SEEK_CUR
);
avio_s
kip
(
pb
,
WTV_PAD8
(
len
)
-
len
);
return
0
;
return
0
;
}
}
...
...
libavformat/wv.c
View file @
45a8a02a
...
@@ -153,7 +153,7 @@ static int wv_read_block_header(AVFormatContext *ctx, AVIOContext *pb, int appen
...
@@ -153,7 +153,7 @@ static int wv_read_block_header(AVFormatContext *ctx, AVIOContext *pb, int appen
chmask
=
avio_rl32
(
pb
);
chmask
=
avio_rl32
(
pb
);
break
;
break
;
case
5
:
case
5
:
avio_s
eek
(
pb
,
1
,
SEEK_CUR
);
avio_s
kip
(
pb
,
1
);
chan
|=
(
avio_r8
(
pb
)
&
0xF
)
<<
8
;
chan
|=
(
avio_r8
(
pb
)
&
0xF
)
<<
8
;
chmask
=
avio_rl24
(
pb
);
chmask
=
avio_rl24
(
pb
);
break
;
break
;
...
@@ -166,10 +166,10 @@ static int wv_read_block_header(AVFormatContext *ctx, AVIOContext *pb, int appen
...
@@ -166,10 +166,10 @@ static int wv_read_block_header(AVFormatContext *ctx, AVIOContext *pb, int appen
rate
=
avio_rl24
(
pb
);
rate
=
avio_rl24
(
pb
);
break
;
break
;
default:
default:
avio_s
eek
(
pb
,
size
,
SEEK_CUR
);
avio_s
kip
(
pb
,
size
);
}
}
if
(
id
&
0x40
)
if
(
id
&
0x40
)
avio_s
eek
(
pb
,
1
,
SEEK_CUR
);
avio_s
kip
(
pb
,
1
);
}
}
if
(
rate
==
-
1
){
if
(
rate
==
-
1
){
av_log
(
ctx
,
AV_LOG_ERROR
,
"Cannot determine custom sampling rate
\n
"
);
av_log
(
ctx
,
AV_LOG_ERROR
,
"Cannot determine custom sampling rate
\n
"
);
...
...
libavformat/xa.c
View file @
45a8a02a
...
@@ -76,9 +76,9 @@ static int xa_read_header(AVFormatContext *s,
...
@@ -76,9 +76,9 @@ static int xa_read_header(AVFormatContext *s,
st
->
codec
->
codec_type
=
AVMEDIA_TYPE_AUDIO
;
st
->
codec
->
codec_type
=
AVMEDIA_TYPE_AUDIO
;
st
->
codec
->
codec_id
=
CODEC_ID_ADPCM_EA_MAXIS_XA
;
st
->
codec
->
codec_id
=
CODEC_ID_ADPCM_EA_MAXIS_XA
;
avio_s
eek
(
pb
,
4
,
SEEK_CUR
);
/* Skip the XA ID */
avio_s
kip
(
pb
,
4
);
/* Skip the XA ID */
xa
->
out_size
=
avio_rl32
(
pb
);
xa
->
out_size
=
avio_rl32
(
pb
);
avio_s
eek
(
pb
,
2
,
SEEK_CUR
);
/* Skip the tag */
avio_s
kip
(
pb
,
2
);
/* Skip the tag */
st
->
codec
->
channels
=
avio_rl16
(
pb
);
st
->
codec
->
channels
=
avio_rl16
(
pb
);
st
->
codec
->
sample_rate
=
avio_rl32
(
pb
);
st
->
codec
->
sample_rate
=
avio_rl32
(
pb
);
/* Value in file is average byte rate*/
/* Value in file is average byte rate*/
...
...
libavformat/yop.c
View file @
45a8a02a
...
@@ -81,7 +81,7 @@ static int yop_read_header(AVFormatContext *s, AVFormatParameters *ap)
...
@@ -81,7 +81,7 @@ static int yop_read_header(AVFormatContext *s, AVFormatParameters *ap)
video_dec
->
codec_type
=
AVMEDIA_TYPE_VIDEO
;
video_dec
->
codec_type
=
AVMEDIA_TYPE_VIDEO
;
video_dec
->
codec_id
=
CODEC_ID_YOP
;
video_dec
->
codec_id
=
CODEC_ID_YOP
;
avio_s
eek
(
pb
,
6
,
SEEK_CUR
);
avio_s
kip
(
pb
,
6
);
frame_rate
=
avio_r8
(
pb
);
frame_rate
=
avio_r8
(
pb
);
yop
->
frame_size
=
avio_r8
(
pb
)
*
2048
;
yop
->
frame_size
=
avio_r8
(
pb
)
*
2048
;
...
@@ -153,7 +153,7 @@ static int yop_read_packet(AVFormatContext *s, AVPacket *pkt)
...
@@ -153,7 +153,7 @@ static int yop_read_packet(AVFormatContext *s, AVPacket *pkt)
// Set position to the start of the frame
// Set position to the start of the frame
pkt
->
pos
=
yop
->
video_packet
.
pos
;
pkt
->
pos
=
yop
->
video_packet
.
pos
;
avio_s
eek
(
pb
,
yop
->
audio_block_length
-
ret
,
SEEK_CUR
);
avio_s
kip
(
pb
,
yop
->
audio_block_length
-
ret
);
ret
=
avio_read
(
pb
,
yop
->
video_packet
.
data
+
yop
->
palette_size
,
ret
=
avio_read
(
pb
,
yop
->
video_packet
.
data
+
yop
->
palette_size
,
actual_video_data_size
);
actual_video_data_size
);
...
...
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