#include "avassert.h"
#include "hdr_dynamic_metadata.h"
#include "mem.h"
#include "libavcodec/defs.h"
#include "libavcodec/get_bits.h"
#include "libavcodec/put_bits.h"
Go to the source code of this file.
Allocate an AVDynamicHDRPlus structure and set its fields to default values.
The resulting struct can be freed using av_freep().
Definition at line 36 of file hdr_dynamic_metadata.c.
Allocate a complete AVDynamicHDRPlus and add it to the frame.
Definition at line 48 of file hdr_dynamic_metadata.c.
Referenced by decode_metadata_itu_t_t35(), export_itut_t35(), and parse_itut_t35_metadata().
Parse the user data registered ITU-T T.35 to AVbuffer (AVDynamicHDRPlus).
The T.35 buffer must begin with the application mode, skipping the country code, terminal provider codes, and application identifier.
Definition at line 61 of file hdr_dynamic_metadata.c.
Referenced by decode_metadata_itu_t_t35(), export_itut_t35(), and parse_itut_t35_metadata().
Serialize dynamic HDR10+ metadata to a user data registered ITU-T T.35 buffer, excluding the first 48 bytes of the header, and beginning with the application mode.
Buffer size per CTA-861-H p.253-254: 48 header bits (excluded from the serialized payload) 8 bits for application_mode 2 bits for num_windows 153 bits for window geometry, for each window above 1 27 bits for targeted_system_display_maximum_luminance 1-2511 bits for targeted system display peak luminance information 82-442 bits per window for pixel distribution information 1-2511 bits for mastering display peak luminance information 1-179 bits per window for tonemapping information 1-7 bits per window for color saturation mapping information Total: 123-7249 bits, excluding trimmed header bits
Definition at line 239 of file hdr_dynamic_metadata.c.
Referenced by add_hdr_plus(), and mkv_write_block().
Copyright (c) 2018 Mohammad Izadi <moh.izadi at gmail.com>
This file is part of FFmpeg.
FFmpeg is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.
FFmpeg is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public License along with FFmpeg; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
Definition at line 28 of file hdr_dynamic_metadata.c.
Referenced by av_dynamic_hdr_plus_from_t35(), and av_dynamic_hdr_plus_to_t35().
Definition at line 29 of file hdr_dynamic_metadata.c.
Referenced by av_dynamic_hdr_plus_from_t35(), and av_dynamic_hdr_plus_to_t35().
Definition at line 30 of file hdr_dynamic_metadata.c.
Referenced by av_dynamic_hdr_plus_from_t35(), and av_dynamic_hdr_plus_to_t35().
Definition at line 31 of file hdr_dynamic_metadata.c.
Referenced by av_dynamic_hdr_plus_from_t35(), and av_dynamic_hdr_plus_to_t35().
Definition at line 32 of file hdr_dynamic_metadata.c.
Referenced by av_dynamic_hdr_plus_from_t35(), and av_dynamic_hdr_plus_to_t35().
Definition at line 33 of file hdr_dynamic_metadata.c.
Referenced by av_dynamic_hdr_plus_from_t35(), and av_dynamic_hdr_plus_to_t35().
Definition at line 34 of file hdr_dynamic_metadata.c.
Referenced by av_dynamic_hdr_plus_from_t35(), and av_dynamic_hdr_plus_to_t35().