Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
qq_25606643
ijkplayer
提交
caa4ae63
I
ijkplayer
项目概览
qq_25606643
/
ijkplayer
与 Fork 源项目一致
从无法访问的项目Fork
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
I
ijkplayer
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
caa4ae63
编写于
2月 13, 2016
作者:
S
seans
提交者:
Zhang Rui
2月 14, 2016
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Add mpeg2 hardware decoding support via Android's MediaCodec api.
Signed-off-by:
N
Zhang Rui
<
bbcallen@gmail.com
>
上级
d3ebff07
变更
5
隐藏空白更改
内联
并排
Showing
5 changed file
with
16 addition
and
2 deletion
+16
-2
ijkmedia/ijkplayer/android/pipeline/ffpipeline_android.c
ijkmedia/ijkplayer/android/pipeline/ffpipeline_android.c
+1
-1
ijkmedia/ijkplayer/android/pipeline/ffpipenode_android_mediacodec_vdec.c
...yer/android/pipeline/ffpipenode_android_mediacodec_vdec.c
+10
-0
ijkmedia/ijkplayer/ff_ffplay_def.h
ijkmedia/ijkplayer/ff_ffplay_def.h
+2
-0
ijkmedia/ijkplayer/ff_ffplay_options.h
ijkmedia/ijkplayer/ff_ffplay_options.h
+2
-1
ijkmedia/ijksdl/android/ijksdl_codec_android_mediadef.h
ijkmedia/ijksdl/android/ijksdl_codec_android_mediadef.h
+1
-0
未找到文件。
ijkmedia/ijkplayer/android/pipeline/ffpipeline_android.c
浏览文件 @
caa4ae63
...
...
@@ -69,7 +69,7 @@ static IJKFF_Pipenode *func_open_video_decoder(IJKFF_Pipeline *pipeline, FFPlaye
IJKFF_Pipeline_Opaque
*
opaque
=
pipeline
->
opaque
;
IJKFF_Pipenode
*
node
=
NULL
;
if
(
ffp
->
mediacodec_all_videos
||
ffp
->
mediacodec_avc
||
ffp
->
mediacodec_hevc
)
if
(
ffp
->
mediacodec_all_videos
||
ffp
->
mediacodec_avc
||
ffp
->
mediacodec_hevc
||
ffp
->
mediacodec_mpeg2
)
node
=
ffpipenode_create_video_decoder_from_android_mediacodec
(
ffp
,
pipeline
,
opaque
->
weak_vout
);
if
(
!
node
)
{
node
=
ffpipenode_create_video_decoder_from_ffplay
(
ffp
);
...
...
ijkmedia/ijkplayer/android/pipeline/ffpipenode_android_mediacodec_vdec.c
浏览文件 @
caa4ae63
...
...
@@ -1007,6 +1007,16 @@ IJKFF_Pipenode *ffpipenode_create_video_decoder_from_android_mediacodec(FFPlayer
opaque
->
mcc
.
profile
=
opaque
->
avctx
->
profile
;
opaque
->
mcc
.
level
=
opaque
->
avctx
->
level
;
break
;
case
AV_CODEC_ID_MPEG2VIDEO
:
if
(
!
ffp
->
mediacodec_mpeg2
&&
!
ffp
->
mediacodec_all_videos
)
{
ALOGE
(
"%s: MediaCodec/MPEG2VIDEO is disabled. codec_id:%d
\n
"
,
__func__
,
opaque
->
avctx
->
codec_id
);
goto
fail
;
}
strcpy
(
opaque
->
mcc
.
mime_type
,
SDL_AMIME_VIDEO_MPEG2VIDEO
);
opaque
->
mcc
.
profile
=
opaque
->
avctx
->
profile
;
opaque
->
mcc
.
level
=
opaque
->
avctx
->
level
;
break
;
default:
ALOGE
(
"%s:create: not H264 or H265/HEVC, codec_id:%d
\n
"
,
__func__
,
opaque
->
avctx
->
codec_id
);
goto
fail
;
...
...
ijkmedia/ijkplayer/ff_ffplay_def.h
浏览文件 @
caa4ae63
...
...
@@ -609,6 +609,7 @@ typedef struct FFPlayer {
int
mediacodec_all_videos
;
int
mediacodec_avc
;
int
mediacodec_hevc
;
int
mediacodec_mpeg2
;
int
mediacodec_auto_rotate
;
int
opensles
;
...
...
@@ -720,6 +721,7 @@ inline static void ffp_reset_internal(FFPlayer *ffp)
ffp
->
mediacodec_all_videos
=
0
;
// option
ffp
->
mediacodec_avc
=
0
;
// option
ffp
->
mediacodec_hevc
=
0
;
// option
ffp
->
mediacodec_mpeg2
=
0
;
// option
ffp
->
mediacodec_auto_rotate
=
0
;
// option
ffp
->
opensles
=
0
;
// option
...
...
ijkmedia/ijkplayer/ff_ffplay_options.h
浏览文件 @
caa4ae63
...
...
@@ -153,7 +153,8 @@ static const AVOption ffp_context_options[] = {
OPTION_OFFSET
(
mediacodec_avc
),
OPTION_INT
(
0
,
0
,
1
)
},
{
"mediacodec-hevc"
,
"MediaCodec: enable HEVC"
,
OPTION_OFFSET
(
mediacodec_hevc
),
OPTION_INT
(
0
,
0
,
1
)
},
{
"mediacodec-mpeg2"
,
"MediaCodec: enable MPEG2VIDEO"
,
OPTION_OFFSET
(
mediacodec_mpeg2
),
OPTION_INT
(
0
,
0
,
1
)
},
{
"opensles"
,
"OpenSL ES: enable"
,
OPTION_OFFSET
(
opensles
),
OPTION_INT
(
0
,
0
,
1
)
},
...
...
ijkmedia/ijksdl/android/ijksdl_codec_android_mediadef.h
浏览文件 @
caa4ae63
...
...
@@ -52,6 +52,7 @@ typedef enum sdl_amedia_status_t {
#define SDL_AMIME_VIDEO_VP9 "video/x-vnd.on2.vp9" //- VP9 video (i.e. video in .webm)
#define SDL_AMIME_VIDEO_AVC "video/avc" //- H.264/AVC video
#define SDL_AMIME_VIDEO_HEVC "video/hevc" //- H.265/HEVC video
#define SDL_AMIME_VIDEO_MPEG2VIDEO "video/mpeg2" //- H.265/HEVC video
#define SDL_AMIME_VIDEO_MPEG4 "video/mp4v-es" //- MPEG4 video
#define SDL_AMIME_VIDEO_H264 "video/3gpp" //- H.263 video
#define SDL_AMIME_AUDIO_AMR_NB "audio/3gpp" //- AMR narrowband audio
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录