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
11177a4d
Commit
11177a4d
authored
Jun 13, 2011
by
Jason Garrett-Glaser
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Fix SVQ3 after adding 4:4:4 H.264 support
parent
7b442ad9
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
16 additions
and
12 deletions
+16
-12
svq3.c
libavcodec/svq3.c
+16
-12
No files found.
libavcodec/svq3.c
View file @
11177a4d
...
@@ -633,8 +633,9 @@ static int svq3_decode_mb(SVQ3Context *svq3, unsigned int mb_type)
...
@@ -633,8 +633,9 @@ static int svq3_decode_mb(SVQ3Context *svq3, unsigned int mb_type)
memset
(
h
->
intra4x4_pred_mode
+
h
->
mb2br_xy
[
mb_xy
],
DC_PRED
,
8
);
memset
(
h
->
intra4x4_pred_mode
+
h
->
mb2br_xy
[
mb_xy
],
DC_PRED
,
8
);
}
}
if
(
!
IS_SKIP
(
mb_type
)
||
s
->
pict_type
==
AV_PICTURE_TYPE_B
)
{
if
(
!
IS_SKIP
(
mb_type
)
||
s
->
pict_type
==
AV_PICTURE_TYPE_B
)
{
memset
(
h
->
non_zero_count_cache
+
8
,
0
,
4
*
9
*
sizeof
(
uint8_t
));
memset
(
h
->
non_zero_count_cache
+
8
,
0
,
14
*
8
*
sizeof
(
uint8_t
));
s
->
dsp
.
clear_blocks
(
h
->
mb
);
s
->
dsp
.
clear_blocks
(
h
->
mb
+
0
);
s
->
dsp
.
clear_blocks
(
h
->
mb
+
384
);
}
}
if
(
!
IS_INTRA16x16
(
mb_type
)
&&
(
!
IS_SKIP
(
mb_type
)
||
s
->
pict_type
==
AV_PICTURE_TYPE_B
))
{
if
(
!
IS_INTRA16x16
(
mb_type
)
&&
(
!
IS_SKIP
(
mb_type
)
||
s
->
pict_type
==
AV_PICTURE_TYPE_B
))
{
...
@@ -654,8 +655,8 @@ static int svq3_decode_mb(SVQ3Context *svq3, unsigned int mb_type)
...
@@ -654,8 +655,8 @@ static int svq3_decode_mb(SVQ3Context *svq3, unsigned int mb_type)
}
}
}
}
if
(
IS_INTRA16x16
(
mb_type
))
{
if
(
IS_INTRA16x16
(
mb_type
))
{
AV_ZERO128
(
h
->
mb_luma_dc
+
0
);
AV_ZERO128
(
h
->
mb_luma_dc
[
0
]
+
0
);
AV_ZERO128
(
h
->
mb_luma_dc
+
8
);
AV_ZERO128
(
h
->
mb_luma_dc
[
0
]
+
8
);
if
(
svq3_decode_block
(
&
s
->
gb
,
h
->
mb_luma_dc
,
0
,
1
)){
if
(
svq3_decode_block
(
&
s
->
gb
,
h
->
mb_luma_dc
,
0
,
1
)){
av_log
(
h
->
s
.
avctx
,
AV_LOG_ERROR
,
"error while decoding intra luma dc
\n
"
);
av_log
(
h
->
s
.
avctx
,
AV_LOG_ERROR
,
"error while decoding intra luma dc
\n
"
);
return
-
1
;
return
-
1
;
...
@@ -681,20 +682,23 @@ static int svq3_decode_mb(SVQ3Context *svq3, unsigned int mb_type)
...
@@ -681,20 +682,23 @@ static int svq3_decode_mb(SVQ3Context *svq3, unsigned int mb_type)
}
}
if
((
cbp
&
0x30
))
{
if
((
cbp
&
0x30
))
{
for
(
i
=
0
;
i
<
2
;
++
i
)
{
for
(
i
=
1
;
i
<
3
;
++
i
)
{
if
(
svq3_decode_block
(
&
s
->
gb
,
&
h
->
mb
[
16
*
(
16
+
4
*
i
)
],
0
,
3
)){
if
(
svq3_decode_block
(
&
s
->
gb
,
&
h
->
mb
[
16
*
16
*
i
],
0
,
3
)){
av_log
(
h
->
s
.
avctx
,
AV_LOG_ERROR
,
"error while decoding chroma dc block
\n
"
);
av_log
(
h
->
s
.
avctx
,
AV_LOG_ERROR
,
"error while decoding chroma dc block
\n
"
);
return
-
1
;
return
-
1
;
}
}
}
}
if
((
cbp
&
0x20
))
{
if
((
cbp
&
0x20
))
{
for
(
i
=
0
;
i
<
8
;
i
++
)
{
for
(
i
=
1
;
i
<
3
;
i
++
)
{
h
->
non_zero_count_cache
[
scan8
[
16
+
i
]
]
=
1
;
for
(
j
=
0
;
j
<
4
;
j
++
)
{
k
=
16
*
i
+
j
;
if
(
svq3_decode_block
(
&
s
->
gb
,
&
h
->
mb
[
16
*
(
16
+
i
)],
1
,
1
)){
h
->
non_zero_count_cache
[
scan8
[
k
]
]
=
1
;
av_log
(
h
->
s
.
avctx
,
AV_LOG_ERROR
,
"error while decoding chroma ac block
\n
"
);
return
-
1
;
if
(
svq3_decode_block
(
&
s
->
gb
,
&
h
->
mb
[
16
*
k
],
1
,
1
)){
av_log
(
h
->
s
.
avctx
,
AV_LOG_ERROR
,
"error while decoding chroma ac block
\n
"
);
return
-
1
;
}
}
}
}
}
}
}
...
...
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