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
324deaa2
Commit
324deaa2
authored
Feb 27, 2012
by
Diego Biurrun
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Replace AVFrame pointer type punning by proper struct member assignments.
parent
47c0ac96
Hide whitespace changes
Inline
Side-by-side
Showing
18 changed files
with
38 additions
and
50 deletions
+38
-50
asv1.c
libavcodec/asv1.c
+1
-1
avs.c
libavcodec/avs.c
+1
-1
cavsdec.c
libavcodec/cavsdec.c
+3
-3
h261dec.c
libavcodec/h261dec.c
+2
-1
h263dec.c
libavcodec/h263dec.c
+3
-3
h264.c
libavcodec/h264.c
+7
-19
h264_direct.c
libavcodec/h264_direct.c
+1
-2
indeo2.c
libavcodec/indeo2.c
+1
-1
mpeg12.c
libavcodec/mpeg12.c
+3
-3
pnmdec.c
libavcodec/pnmdec.c
+1
-1
rv10.c
libavcodec/rv10.c
+2
-2
rv34.c
libavcodec/rv34.c
+3
-3
svq1dec.c
libavcodec/svq1dec.c
+1
-1
svq3.c
libavcodec/svq3.c
+3
-3
targa.c
libavcodec/targa.c
+1
-1
tiff.c
libavcodec/tiff.c
+1
-1
vc1dec.c
libavcodec/vc1dec.c
+3
-3
vcr1.c
libavcodec/vcr1.c
+1
-1
No files found.
libavcodec/asv1.c
View file @
324deaa2
...
...
@@ -454,7 +454,7 @@ static int decode_frame(AVCodecContext *avctx,
}
}
*
picture
=
*
(
AVFrame
*
)
&
a
->
picture
;
*
picture
=
a
->
picture
;
*
data_size
=
sizeof
(
AVPicture
);
emms_c
();
...
...
libavcodec/avs.c
View file @
324deaa2
...
...
@@ -149,7 +149,7 @@ avs_decode_frame(AVCodecContext * avctx,
align_get_bits
(
&
change_map
);
}
*
picture
=
*
(
AVFrame
*
)
&
avs
->
picture
;
*
picture
=
avs
->
picture
;
*
data_size
=
sizeof
(
AVPicture
);
return
buf_size
;
...
...
libavcodec/cavsdec.c
View file @
324deaa2
...
...
@@ -655,7 +655,7 @@ static int cavs_decode_frame(AVCodecContext * avctx,void *data, int *data_size,
if
(
buf_size
==
0
)
{
if
(
!
s
->
low_delay
&&
h
->
DPB
[
0
].
f
.
data
[
0
])
{
*
data_size
=
sizeof
(
AVPicture
);
*
picture
=
*
(
AVFrame
*
)
&
h
->
DPB
[
0
]
;
*
picture
=
h
->
DPB
[
0
].
f
;
}
return
0
;
}
...
...
@@ -691,12 +691,12 @@ static int cavs_decode_frame(AVCodecContext * avctx,void *data, int *data_size,
*
data_size
=
sizeof
(
AVPicture
);
if
(
h
->
pic_type
!=
AV_PICTURE_TYPE_B
)
{
if
(
h
->
DPB
[
1
].
f
.
data
[
0
])
{
*
picture
=
*
(
AVFrame
*
)
&
h
->
DPB
[
1
]
;
*
picture
=
h
->
DPB
[
1
].
f
;
}
else
{
*
data_size
=
0
;
}
}
else
*
picture
=
*
(
AVFrame
*
)
&
h
->
picture
;
*
picture
=
h
->
picture
.
f
;
break
;
case
EXT_START_CODE
:
//mpeg_decode_extension(avctx,buf_ptr, input_size);
...
...
libavcodec/h261dec.c
View file @
324deaa2
...
...
@@ -624,7 +624,8 @@ retry:
assert
(
s
->
current_picture
.
f
.
pict_type
==
s
->
current_picture_ptr
->
f
.
pict_type
);
assert
(
s
->
current_picture
.
f
.
pict_type
==
s
->
pict_type
);
*
pict
=
*
(
AVFrame
*
)
s
->
current_picture_ptr
;
*
pict
=
s
->
current_picture_ptr
->
f
;
ff_print_debug_info
(
s
,
pict
);
*
data_size
=
sizeof
(
AVFrame
);
...
...
libavcodec/h263dec.c
View file @
324deaa2
...
...
@@ -355,7 +355,7 @@ uint64_t time= rdtsc();
if
(
buf_size
==
0
)
{
/* special case for last picture */
if
(
s
->
low_delay
==
0
&&
s
->
next_picture_ptr
)
{
*
pict
=
*
(
AVFrame
*
)
s
->
next_picture_ptr
;
*
pict
=
s
->
next_picture_ptr
->
f
;
s
->
next_picture_ptr
=
NULL
;
*
data_size
=
sizeof
(
AVFrame
);
...
...
@@ -712,9 +712,9 @@ intrax8_decoded:
assert
(
s
->
current_picture
.
f
.
pict_type
==
s
->
current_picture_ptr
->
f
.
pict_type
);
assert
(
s
->
current_picture
.
f
.
pict_type
==
s
->
pict_type
);
if
(
s
->
pict_type
==
AV_PICTURE_TYPE_B
||
s
->
low_delay
)
{
*
pict
=
*
(
AVFrame
*
)
s
->
current_picture_ptr
;
*
pict
=
s
->
current_picture_ptr
->
f
;
}
else
if
(
s
->
last_picture_ptr
!=
NULL
)
{
*
pict
=
*
(
AVFrame
*
)
s
->
last_picture_ptr
;
*
pict
=
s
->
last_picture_ptr
->
f
;
}
if
(
s
->
last_picture_ptr
||
s
->
low_delay
){
...
...
libavcodec/h264.c
View file @
324deaa2
...
...
@@ -361,26 +361,14 @@ static void await_references(H264Context *h){
nrefs
[
list
]
--
;
if
(
!
FIELD_PICTURE
&&
ref_field_picture
){
// frame referencing two fields
ff_thread_await_progress
(
&
ref_pic
->
f
,
FFMIN
((
row
>>
1
)
-
!
(
row
&
1
),
pic_height
-
1
),
1
);
ff_thread_await_progress
(
&
ref_pic
->
f
,
FFMIN
((
row
>>
1
),
pic_height
-
1
),
0
);
ff_thread_await_progress
(
&
ref_pic
->
f
,
FFMIN
((
row
>>
1
)
-
!
(
row
&
1
),
pic_height
-
1
),
1
);
ff_thread_await_progress
(
&
ref_pic
->
f
,
FFMIN
((
row
>>
1
),
pic_height
-
1
),
0
);
}
else
if
(
FIELD_PICTURE
&&
!
ref_field_picture
){
// field referencing one field of a frame
ff_thread_await_progress
(
&
ref_pic
->
f
,
FFMIN
(
row
*
2
+
ref_field
,
pic_height
-
1
),
0
);
ff_thread_await_progress
(
&
ref_pic
->
f
,
FFMIN
(
row
*
2
+
ref_field
,
pic_height
-
1
),
0
);
}
else
if
(
FIELD_PICTURE
){
ff_thread_await_progress
(
&
ref_pic
->
f
,
FFMIN
(
row
,
pic_height
-
1
),
ref_field
);
ff_thread_await_progress
(
&
ref_pic
->
f
,
FFMIN
(
row
,
pic_height
-
1
),
ref_field
);
}
else
{
ff_thread_await_progress
(
&
ref_pic
->
f
,
FFMIN
(
row
,
pic_height
-
1
),
0
);
ff_thread_await_progress
(
&
ref_pic
->
f
,
FFMIN
(
row
,
pic_height
-
1
),
0
);
}
}
}
...
...
@@ -4053,7 +4041,7 @@ static int decode_frame(AVCodecContext *avctx,
if
(
out
){
*
data_size
=
sizeof
(
AVFrame
);
*
pict
=
*
(
AVFrame
*
)
out
;
*
pict
=
out
->
f
;
}
return
buf_index
;
...
...
@@ -4087,7 +4075,7 @@ static int decode_frame(AVCodecContext *avctx,
}
else
{
*
data_size
=
sizeof
(
AVFrame
);
*
pict
=
*
(
AVFrame
*
)
h
->
next_output_pic
;
*
pict
=
h
->
next_output_pic
->
f
;
}
}
...
...
libavcodec/h264_direct.c
View file @
324deaa2
...
...
@@ -154,8 +154,7 @@ static void await_reference_mb_row(H264Context * const h, Picture *ref, int mb_y
//even if pixels aren't deblocked yet
ff_thread_await_progress
(
&
ref
->
f
,
FFMIN
(
16
*
mb_y
>>
ref_field_picture
,
ref_height
-
1
),
FFMIN
(
16
*
mb_y
>>
ref_field_picture
,
ref_height
-
1
),
ref_field_picture
&&
ref_field
);
}
...
...
libavcodec/indeo2.c
View file @
324deaa2
...
...
@@ -191,7 +191,7 @@ static int ir2_decode_frame(AVCodecContext *avctx,
s
->
picture
.
data
[
1
],
s
->
picture
.
linesize
[
1
],
ir2_luma_table
);
}
*
picture
=
*
(
AVFrame
*
)
&
s
->
picture
;
*
picture
=
s
->
picture
;
*
data_size
=
sizeof
(
AVPicture
);
return
buf_size
;
...
...
libavcodec/mpeg12.c
View file @
324deaa2
...
...
@@ -1915,7 +1915,7 @@ static int slice_end(AVCodecContext *avctx, AVFrame *pict)
ff_MPV_frame_end
(
s
);
if
(
s
->
pict_type
==
AV_PICTURE_TYPE_B
||
s
->
low_delay
)
{
*
pict
=
*
(
AVFrame
*
)
s
->
current_picture_ptr
;
*
pict
=
s
->
current_picture_ptr
->
f
;
ff_print_debug_info
(
s
,
pict
);
}
else
{
if
(
avctx
->
active_thread_type
&
FF_THREAD_FRAME
)
...
...
@@ -1923,7 +1923,7 @@ static int slice_end(AVCodecContext *avctx, AVFrame *pict)
/* latency of 1 frame for I- and P-frames */
/* XXX: use another variable than picture_number */
if
(
s
->
last_picture_ptr
!=
NULL
)
{
*
pict
=
*
(
AVFrame
*
)
s
->
last_picture_ptr
;
*
pict
=
s
->
last_picture_ptr
->
f
;
ff_print_debug_info
(
s
,
pict
);
}
}
...
...
@@ -2203,7 +2203,7 @@ static int mpeg_decode_frame(AVCodecContext *avctx,
if
(
buf_size
==
0
||
(
buf_size
==
4
&&
AV_RB32
(
buf
)
==
SEQ_END_CODE
))
{
/* special case for last picture */
if
(
s2
->
low_delay
==
0
&&
s2
->
next_picture_ptr
)
{
*
picture
=
*
(
AVFrame
*
)
s2
->
next_picture_ptr
;
*
picture
=
s2
->
next_picture_ptr
->
f
;
s2
->
next_picture_ptr
=
NULL
;
*
data_size
=
sizeof
(
AVFrame
);
...
...
libavcodec/pnmdec.c
View file @
324deaa2
...
...
@@ -180,7 +180,7 @@ static int pnm_decode_frame(AVCodecContext *avctx, void *data,
}
break
;
}
*
picture
=
*
(
AVFrame
*
)
&
s
->
picture
;
*
picture
=
s
->
picture
;
*
data_size
=
sizeof
(
AVPicture
);
return
s
->
bytestream
-
s
->
bytestream_start
;
...
...
libavcodec/rv10.c
View file @
324deaa2
...
...
@@ -677,9 +677,9 @@ static int rv10_decode_frame(AVCodecContext *avctx,
ff_MPV_frame_end
(
s
);
if
(
s
->
pict_type
==
AV_PICTURE_TYPE_B
||
s
->
low_delay
)
{
*
pict
=
*
(
AVFrame
*
)
s
->
current_picture_ptr
;
*
pict
=
s
->
current_picture_ptr
->
f
;
}
else
if
(
s
->
last_picture_ptr
!=
NULL
)
{
*
pict
=
*
(
AVFrame
*
)
s
->
last_picture_ptr
;
*
pict
=
s
->
last_picture_ptr
->
f
;
}
if
(
s
->
last_picture_ptr
||
s
->
low_delay
){
...
...
libavcodec/rv34.c
View file @
324deaa2
...
...
@@ -1656,7 +1656,7 @@ int ff_rv34_decode_frame(AVCodecContext *avctx,
if
(
buf_size
==
0
)
{
/* special case for last picture */
if
(
s
->
low_delay
==
0
&&
s
->
next_picture_ptr
)
{
*
pict
=
*
(
AVFrame
*
)
s
->
next_picture_ptr
;
*
pict
=
s
->
next_picture_ptr
->
f
;
s
->
next_picture_ptr
=
NULL
;
*
data_size
=
sizeof
(
AVFrame
);
...
...
@@ -1743,9 +1743,9 @@ int ff_rv34_decode_frame(AVCodecContext *avctx,
ff_thread_report_progress
(
&
s
->
current_picture_ptr
->
f
,
INT_MAX
,
0
);
if
(
s
->
pict_type
==
AV_PICTURE_TYPE_B
||
s
->
low_delay
)
{
*
pict
=
*
(
AVFrame
*
)
s
->
current_picture_ptr
;
*
pict
=
s
->
current_picture_ptr
->
f
;
}
else
if
(
s
->
last_picture_ptr
!=
NULL
)
{
*
pict
=
*
(
AVFrame
*
)
s
->
last_picture_ptr
;
*
pict
=
s
->
last_picture_ptr
->
f
;
}
if
(
s
->
last_picture_ptr
||
s
->
low_delay
){
...
...
libavcodec/svq1dec.c
View file @
324deaa2
...
...
@@ -735,7 +735,7 @@ static int svq1_decode_frame(AVCodecContext *avctx,
}
}
*
pict
=
*
(
AVFrame
*
)
&
s
->
current_picture
;
*
pict
=
s
->
current_picture
.
f
;
ff_MPV_frame_end
(
s
);
...
...
libavcodec/svq3.c
View file @
324deaa2
...
...
@@ -956,7 +956,7 @@ static int svq3_decode_frame(AVCodecContext *avctx,
/* special case for last picture */
if
(
buf_size
==
0
)
{
if
(
s
->
next_picture_ptr
&&
!
s
->
low_delay
)
{
*
(
AVFrame
*
)
data
=
*
(
AVFrame
*
)
&
s
->
next_picture
;
*
(
AVFrame
*
)
data
=
s
->
next_picture
.
f
;
s
->
next_picture_ptr
=
NULL
;
*
data_size
=
sizeof
(
AVFrame
);
}
...
...
@@ -1076,9 +1076,9 @@ static int svq3_decode_frame(AVCodecContext *avctx,
ff_MPV_frame_end
(
s
);
if
(
s
->
pict_type
==
AV_PICTURE_TYPE_B
||
s
->
low_delay
)
{
*
(
AVFrame
*
)
data
=
*
(
AVFrame
*
)
&
s
->
current_picture
;
*
(
AVFrame
*
)
data
=
s
->
current_picture
.
f
;
}
else
{
*
(
AVFrame
*
)
data
=
*
(
AVFrame
*
)
&
s
->
last_picture
;
*
(
AVFrame
*
)
data
=
s
->
last_picture
.
f
;
}
/* Do not output the last pic after seeking. */
...
...
libavcodec/targa.c
View file @
324deaa2
...
...
@@ -248,7 +248,7 @@ static int decode_frame(AVCodecContext *avctx,
}
}
*
picture
=
*
(
AVFrame
*
)
&
s
->
picture
;
*
picture
=
s
->
picture
;
*
data_size
=
sizeof
(
AVPicture
);
return
avpkt
->
size
;
...
...
libavcodec/tiff.c
View file @
324deaa2
...
...
@@ -607,7 +607,7 @@ static int decode_frame(AVCodecContext *avctx,
src
+=
s
->
picture
.
linesize
[
0
];
}
}
*
picture
=
*
(
AVFrame
*
)
&
s
->
picture
;
*
picture
=
s
->
picture
;
*
data_size
=
sizeof
(
AVPicture
);
return
buf_size
;
...
...
libavcodec/vc1dec.c
View file @
324deaa2
...
...
@@ -5449,7 +5449,7 @@ static int vc1_decode_frame(AVCodecContext *avctx, void *data,
if
(
buf_size
==
0
||
(
buf_size
==
4
&&
AV_RB32
(
buf
)
==
VC1_CODE_ENDOFSEQ
))
{
/* special case for last picture */
if
(
s
->
low_delay
==
0
&&
s
->
next_picture_ptr
)
{
*
pict
=
*
(
AVFrame
*
)
s
->
next_picture_ptr
;
*
pict
=
s
->
next_picture_ptr
->
f
;
s
->
next_picture_ptr
=
NULL
;
*
data_size
=
sizeof
(
AVFrame
);
...
...
@@ -5755,9 +5755,9 @@ image:
*
data_size
=
sizeof
(
AVFrame
);
}
else
{
if
(
s
->
pict_type
==
AV_PICTURE_TYPE_B
||
s
->
low_delay
)
{
*
pict
=
*
(
AVFrame
*
)
s
->
current_picture_ptr
;
*
pict
=
s
->
current_picture_ptr
->
f
;
}
else
if
(
s
->
last_picture_ptr
!=
NULL
)
{
*
pict
=
*
(
AVFrame
*
)
s
->
last_picture_ptr
;
*
pict
=
s
->
last_picture_ptr
->
f
;
}
if
(
s
->
last_picture_ptr
||
s
->
low_delay
)
{
*
data_size
=
sizeof
(
AVFrame
);
...
...
libavcodec/vcr1.c
View file @
324deaa2
...
...
@@ -111,7 +111,7 @@ static int decode_frame(AVCodecContext *avctx,
}
}
*
picture
=
*
(
AVFrame
*
)
&
a
->
picture
;
*
picture
=
a
->
picture
;
*
data_size
=
sizeof
(
AVPicture
);
return
buf_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