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
65127450
Commit
65127450
authored
Feb 19, 2016
by
Vittorio Giovara
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
intrax8: Make x8_init_block_index not use mpegvideo fields
parent
922b7e6d
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
11 additions
and
12 deletions
+11
-12
intrax8.c
libavcodec/intrax8.c
+11
-12
No files found.
libavcodec/intrax8.c
View file @
65127450
...
...
@@ -726,22 +726,21 @@ block_placed:
}
// FIXME maybe merge with ff_*
static
void
x8_init_block_index
(
IntraX8Context
*
w
)
static
void
x8_init_block_index
(
IntraX8Context
*
w
,
AVFrame
*
frame
,
int
mb_y
)
{
MpegEncContext
*
const
s
=
w
->
s
;
// not s->linesize as this would be wrong for field pics
// not parent codec linesize as this would be wrong for field pics
// not that IntraX8 has interlacing support ;)
const
int
linesize
=
s
->
current_picture
.
f
->
linesize
[
0
];
const
int
uvlinesize
=
s
->
current_picture
.
f
->
linesize
[
1
];
const
int
linesize
=
frame
->
linesize
[
0
];
const
int
uvlinesize
=
frame
->
linesize
[
1
];
w
->
dest
[
0
]
=
s
->
current_picture
.
f
->
data
[
0
];
w
->
dest
[
1
]
=
s
->
current_picture
.
f
->
data
[
1
];
w
->
dest
[
2
]
=
s
->
current_picture
.
f
->
data
[
2
];
w
->
dest
[
0
]
=
frame
->
data
[
0
];
w
->
dest
[
1
]
=
frame
->
data
[
1
];
w
->
dest
[
2
]
=
frame
->
data
[
2
];
w
->
dest
[
0
]
+=
s
->
mb_y
*
linesize
<<
3
;
w
->
dest
[
0
]
+=
mb_y
*
linesize
<<
3
;
// chroma blocks are on add rows
w
->
dest
[
1
]
+=
(
s
->
mb_y
&
(
~
1
))
*
uvlinesize
<<
2
;
w
->
dest
[
2
]
+=
(
s
->
mb_y
&
(
~
1
))
*
uvlinesize
<<
2
;
w
->
dest
[
1
]
+=
(
mb_y
&
(
~
1
))
*
uvlinesize
<<
2
;
w
->
dest
[
2
]
+=
(
mb_y
&
(
~
1
))
*
uvlinesize
<<
2
;
}
av_cold
int
ff_intrax8_common_init
(
IntraX8Context
*
w
,
MpegEncContext
*
const
s
)
...
...
@@ -797,7 +796,7 @@ int ff_intrax8_decode_picture(IntraX8Context *const w, int dquant,
x8_reset_vlc_tables
(
w
);
for
(
s
->
mb_y
=
0
;
s
->
mb_y
<
s
->
mb_height
*
2
;
s
->
mb_y
++
)
{
x8_init_block_index
(
w
);
x8_init_block_index
(
w
,
s
->
current_picture
.
f
,
s
->
mb_y
);
mb_xy
=
(
s
->
mb_y
>>
1
)
*
s
->
mb_stride
;
for
(
s
->
mb_x
=
0
;
s
->
mb_x
<
s
->
mb_width
*
2
;
s
->
mb_x
++
)
{
...
...
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