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
84d7933e
Commit
84d7933e
authored
Feb 19, 2016
by
Carl Eugen Hoyos
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
lavc/libvpx: Fix high-bitdepth pix_fmts on big endian.
parent
76af0c78
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
31 additions
and
31 deletions
+31
-31
libvpx.c
libavcodec/libvpx.c
+8
-8
libvpxdec.c
libavcodec/libvpxdec.c
+10
-10
libvpxenc.c
libavcodec/libvpxenc.c
+12
-12
version.h
libavcodec/version.h
+1
-1
No files found.
libavcodec/libvpx.c
View file @
84d7933e
...
...
@@ -46,14 +46,14 @@ static const enum AVPixelFormat vp9_pix_fmts_highbd[] = {
AV_PIX_FMT_YUV422P
,
AV_PIX_FMT_YUV440P
,
AV_PIX_FMT_YUV444P
,
AV_PIX_FMT_YUV420P10
LE
,
AV_PIX_FMT_YUV422P10
LE
,
AV_PIX_FMT_YUV440P10
LE
,
AV_PIX_FMT_YUV444P10
LE
,
AV_PIX_FMT_YUV420P12
LE
,
AV_PIX_FMT_YUV422P12
LE
,
AV_PIX_FMT_YUV440P12
LE
,
AV_PIX_FMT_YUV444P12
LE
,
AV_PIX_FMT_YUV420P10
,
AV_PIX_FMT_YUV422P10
,
AV_PIX_FMT_YUV440P10
,
AV_PIX_FMT_YUV444P10
,
AV_PIX_FMT_YUV420P12
,
AV_PIX_FMT_YUV422P12
,
AV_PIX_FMT_YUV440P12
,
AV_PIX_FMT_YUV444P12
,
AV_PIX_FMT_NONE
};
#endif
...
...
libavcodec/libvpxdec.c
View file @
84d7933e
...
...
@@ -108,10 +108,10 @@ static int set_pix_fmt(AVCodecContext *avctx, struct vpx_image *img)
case
VPX_IMG_FMT_I42016
:
avctx
->
profile
=
FF_PROFILE_VP9_2
;
if
(
img
->
bit_depth
==
10
)
{
avctx
->
pix_fmt
=
AV_PIX_FMT_YUV420P10
LE
;
avctx
->
pix_fmt
=
AV_PIX_FMT_YUV420P10
;
return
0
;
}
else
if
(
img
->
bit_depth
==
12
)
{
avctx
->
pix_fmt
=
AV_PIX_FMT_YUV420P12
LE
;
avctx
->
pix_fmt
=
AV_PIX_FMT_YUV420P12
;
return
0
;
}
else
{
return
AVERROR_INVALIDDATA
;
...
...
@@ -119,10 +119,10 @@ static int set_pix_fmt(AVCodecContext *avctx, struct vpx_image *img)
case
VPX_IMG_FMT_I42216
:
avctx
->
profile
=
FF_PROFILE_VP9_3
;
if
(
img
->
bit_depth
==
10
)
{
avctx
->
pix_fmt
=
AV_PIX_FMT_YUV422P10
LE
;
avctx
->
pix_fmt
=
AV_PIX_FMT_YUV422P10
;
return
0
;
}
else
if
(
img
->
bit_depth
==
12
)
{
avctx
->
pix_fmt
=
AV_PIX_FMT_YUV422P12
LE
;
avctx
->
pix_fmt
=
AV_PIX_FMT_YUV422P12
;
return
0
;
}
else
{
return
AVERROR_INVALIDDATA
;
...
...
@@ -131,10 +131,10 @@ static int set_pix_fmt(AVCodecContext *avctx, struct vpx_image *img)
case
VPX_IMG_FMT_I44016
:
avctx
->
profile
=
FF_PROFILE_VP9_3
;
if
(
img
->
bit_depth
==
10
)
{
avctx
->
pix_fmt
=
AV_PIX_FMT_YUV440P10
LE
;
avctx
->
pix_fmt
=
AV_PIX_FMT_YUV440P10
;
return
0
;
}
else
if
(
img
->
bit_depth
==
12
)
{
avctx
->
pix_fmt
=
AV_PIX_FMT_YUV440P12
LE
;
avctx
->
pix_fmt
=
AV_PIX_FMT_YUV440P12
;
return
0
;
}
else
{
return
AVERROR_INVALIDDATA
;
...
...
@@ -145,17 +145,17 @@ static int set_pix_fmt(AVCodecContext *avctx, struct vpx_image *img)
if
(
img
->
bit_depth
==
10
)
{
#if VPX_IMAGE_ABI_VERSION >= 3
avctx
->
pix_fmt
=
avctx
->
colorspace
==
AVCOL_SPC_RGB
?
AV_PIX_FMT_GBRP10
LE
:
AV_PIX_FMT_YUV444P10LE
;
AV_PIX_FMT_GBRP10
:
AV_PIX_FMT_YUV444P10
;
#else
avctx
->
pix_fmt
=
AV_PIX_FMT_YUV444P10
LE
;
avctx
->
pix_fmt
=
AV_PIX_FMT_YUV444P10
;
#endif
return
0
;
}
else
if
(
img
->
bit_depth
==
12
)
{
#if VPX_IMAGE_ABI_VERSION >= 3
avctx
->
pix_fmt
=
avctx
->
colorspace
==
AVCOL_SPC_RGB
?
AV_PIX_FMT_GBRP12
LE
:
AV_PIX_FMT_YUV444P12LE
;
AV_PIX_FMT_GBRP12
:
AV_PIX_FMT_YUV444P12
;
#else
avctx
->
pix_fmt
=
AV_PIX_FMT_YUV444P12
LE
;
avctx
->
pix_fmt
=
AV_PIX_FMT_YUV444P12
;
#endif
return
0
;
}
else
{
...
...
libavcodec/libvpxenc.c
View file @
84d7933e
...
...
@@ -300,22 +300,22 @@ static int set_pix_fmt(AVCodecContext *avctx, vpx_codec_caps_t codec_caps,
*
img_fmt
=
VPX_IMG_FMT_I444
;
return
0
;
#ifdef VPX_IMG_FMT_HIGHBITDEPTH
case
AV_PIX_FMT_YUV420P10
LE
:
case
AV_PIX_FMT_YUV420P12
LE
:
case
AV_PIX_FMT_YUV420P10
:
case
AV_PIX_FMT_YUV420P12
:
if
(
codec_caps
&
VPX_CODEC_CAP_HIGHBITDEPTH
)
{
enccfg
->
g_bit_depth
=
enccfg
->
g_input_bit_depth
=
avctx
->
pix_fmt
==
AV_PIX_FMT_YUV420P10
LE
?
10
:
12
;
avctx
->
pix_fmt
==
AV_PIX_FMT_YUV420P10
?
10
:
12
;
enccfg
->
g_profile
=
2
;
*
img_fmt
=
VPX_IMG_FMT_I42016
;
*
flags
|=
VPX_CODEC_USE_HIGHBITDEPTH
;
return
0
;
}
break
;
case
AV_PIX_FMT_YUV422P10
LE
:
case
AV_PIX_FMT_YUV422P12
LE
:
case
AV_PIX_FMT_YUV422P10
:
case
AV_PIX_FMT_YUV422P12
:
if
(
codec_caps
&
VPX_CODEC_CAP_HIGHBITDEPTH
)
{
enccfg
->
g_bit_depth
=
enccfg
->
g_input_bit_depth
=
avctx
->
pix_fmt
==
AV_PIX_FMT_YUV422P10
LE
?
10
:
12
;
avctx
->
pix_fmt
==
AV_PIX_FMT_YUV422P10
?
10
:
12
;
enccfg
->
g_profile
=
3
;
*
img_fmt
=
VPX_IMG_FMT_I42216
;
*
flags
|=
VPX_CODEC_USE_HIGHBITDEPTH
;
...
...
@@ -323,11 +323,11 @@ static int set_pix_fmt(AVCodecContext *avctx, vpx_codec_caps_t codec_caps,
}
break
;
#if VPX_IMAGE_ABI_VERSION >= 3
case
AV_PIX_FMT_YUV440P10
LE
:
case
AV_PIX_FMT_YUV440P12
LE
:
case
AV_PIX_FMT_YUV440P10
:
case
AV_PIX_FMT_YUV440P12
:
if
(
codec_caps
&
VPX_CODEC_CAP_HIGHBITDEPTH
)
{
enccfg
->
g_bit_depth
=
enccfg
->
g_input_bit_depth
=
avctx
->
pix_fmt
==
AV_PIX_FMT_YUV440P10
LE
?
10
:
12
;
avctx
->
pix_fmt
==
AV_PIX_FMT_YUV440P10
?
10
:
12
;
enccfg
->
g_profile
=
3
;
*
img_fmt
=
VPX_IMG_FMT_I44016
;
*
flags
|=
VPX_CODEC_USE_HIGHBITDEPTH
;
...
...
@@ -335,11 +335,11 @@ static int set_pix_fmt(AVCodecContext *avctx, vpx_codec_caps_t codec_caps,
}
break
;
#endif
case
AV_PIX_FMT_YUV444P10
LE
:
case
AV_PIX_FMT_YUV444P12
LE
:
case
AV_PIX_FMT_YUV444P10
:
case
AV_PIX_FMT_YUV444P12
:
if
(
codec_caps
&
VPX_CODEC_CAP_HIGHBITDEPTH
)
{
enccfg
->
g_bit_depth
=
enccfg
->
g_input_bit_depth
=
avctx
->
pix_fmt
==
AV_PIX_FMT_YUV444P10
LE
?
10
:
12
;
avctx
->
pix_fmt
==
AV_PIX_FMT_YUV444P10
?
10
:
12
;
enccfg
->
g_profile
=
3
;
*
img_fmt
=
VPX_IMG_FMT_I44416
;
*
flags
|=
VPX_CODEC_USE_HIGHBITDEPTH
;
...
...
libavcodec/version.h
View file @
84d7933e
...
...
@@ -30,7 +30,7 @@
#define LIBAVCODEC_VERSION_MAJOR 57
#define LIBAVCODEC_VERSION_MINOR 24
#define LIBAVCODEC_VERSION_MICRO 10
3
#define LIBAVCODEC_VERSION_MICRO 10
4
#define LIBAVCODEC_VERSION_INT AV_VERSION_INT(LIBAVCODEC_VERSION_MAJOR, \
LIBAVCODEC_VERSION_MINOR, \
...
...
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