[FFmpeg-devel] [PATCH 1/3] avformat/matroskaenc: support writting Chroma Location elements

James Almer jamrial at gmail.com
Sat Oct 22 23:38:54 EEST 2016


On 10/15/2016 12:40 PM, James Almer wrote:
> Signed-off-by: James Almer <jamrial at gmail.com>
> ---
>  libavformat/matroskaenc.c | 8 ++++++++
>  1 file changed, 8 insertions(+)
> 
> diff --git a/libavformat/matroskaenc.c b/libavformat/matroskaenc.c
> index a48f5bb..d6557a1 100644
> --- a/libavformat/matroskaenc.c
> +++ b/libavformat/matroskaenc.c
> @@ -829,6 +829,14 @@ static int mkv_write_video_color(AVIOContext *pb, AVCodecParameters *par, AVStre
>          par->color_range < AVCOL_RANGE_NB) {
>          put_ebml_uint(dyn_cp, MATROSKA_ID_VIDEOCOLORRANGE, par->color_range);
>      }
> +    if (par->chroma_location != AVCHROMA_LOC_UNSPECIFIED &&
> +        par->chroma_location <= AVCHROMA_LOC_TOP) {
> +        int xpos, ypos;
> +
> +        avcodec_enum_to_chroma_pos(&xpos, &ypos, par->chroma_location);
> +        put_ebml_uint(dyn_cp, MATROSKA_ID_VIDEOCOLORCHROMASITINGHORZ, (xpos >> 7) + 1);
> +        put_ebml_uint(dyn_cp, MATROSKA_ID_VIDEOCOLORCHROMASITINGVERT, (ypos >> 7) + 1);
> +    }
>      if (side_data_size == sizeof(AVMasteringDisplayMetadata)) {
>          ebml_master meta_element = start_ebml_master(
>              dyn_cp, MATROSKA_ID_VIDEOCOLORMASTERINGMETA, 0);

Ping.



More information about the ffmpeg-devel mailing list