diff options
author | gcocherel <gildas.cocherel@laposte.net> | 2013-11-21 11:29:05 +0100 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2013-11-22 01:29:02 +0100 |
commit | fb7d70c1cd95529cbbbeeab5e9fa3b200ef2545c (patch) | |
tree | 95ac79d4e85667d8e7aff9a35993604017299b42 /libavcodec/hevc.c | |
parent | 36658c978f5d7df2ce556075946f3a80f7eca753 (diff) | |
download | ffmpeg-fb7d70c1cd95529cbbbeeab5e9fa3b200ef2545c.tar.gz |
hevc : add hevc profile
(cherry picked from commit 0c8dfd8ad6400b33da55a9f4d9aa8d3f5c9d209f)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavcodec/hevc.c')
-rw-r--r-- | libavcodec/hevc.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/libavcodec/hevc.c b/libavcodec/hevc.c index 26b0c5f42b..add6a7ccd0 100644 --- a/libavcodec/hevc.c +++ b/libavcodec/hevc.c @@ -374,6 +374,9 @@ static int hls_slice_header(HEVCContext *s) s->max_ra = INT_MAX; } + s->avctx->profile = s->sps->ptl.general_PTL.profile_idc; + s->avctx->level = s->sps->ptl.general_PTL.level_idc; + sh->dependent_slice_segment_flag = 0; if (!sh->first_slice_in_pic_flag) { int slice_address_length; @@ -2926,6 +2929,14 @@ static void hevc_decode_flush(AVCodecContext *avctx) #define OFFSET(x) offsetof(HEVCContext, x) #define PAR (AV_OPT_FLAG_DECODING_PARAM | AV_OPT_FLAG_VIDEO_PARAM) + +static const AVProfile profiles[] = { + { FF_PROFILE_HEVC_MAIN, "Main" }, + { FF_PROFILE_HEVC_MAIN_10, "Main10" }, + { FF_PROFILE_HEVC_MAIN_STILL_PICTURE, "MainStillPicture" }, + { FF_PROFILE_UNKNOWN }, +}; + static const AVOption options[] = { { "apply_defdispwin", "Apply default display window from VUI", OFFSET(apply_defdispwin), AV_OPT_TYPE_INT, {.i64 = 0}, 0, 1, PAR }, @@ -2956,4 +2967,5 @@ AVCodec ff_hevc_decoder = { .init_thread_copy = hevc_init_thread_copy, .capabilities = CODEC_CAP_DR1 | CODEC_CAP_DELAY | CODEC_CAP_SLICE_THREADS | CODEC_CAP_FRAME_THREADS, + .profiles = NULL_IF_CONFIG_SMALL(profiles), }; |