57 for (i = 0; i < frag->
nb_units; i++) {
68 "incompatible with profiles 0 and 2.\n");
80 "implicitly sets color range to PC range.\n");
88 "profile 0 are automatically BT.601.\n");
124 #define OFFSET(x) offsetof(VP9MetadataContext, x) 125 #define FLAGS (AV_OPT_FLAG_VIDEO_PARAM|AV_OPT_FLAG_BSF_PARAM) 127 {
"color_space",
"Set colour space (section 7.2.2)",
145 {
"color_range",
"Set colour range (section 7.2.2)",
147 { .i64 = -1 }, -1, 1,
FLAGS,
"cr" },
149 { .i64 = 0 }, .flags =
FLAGS, .unit =
"cr" },
151 { .i64 = 1 }, .flags =
FLAGS, .unit =
"cr" },
168 .
name =
"vp9_metadata",
170 .priv_class = &vp9_metadata_class,
CodedBitstreamContext * cbc
int nb_units
Number of units in this fragment.
#define AV_LOG_WARNING
Something somehow does not look correct.
#define LIBAVUTIL_VERSION_INT
int ff_cbs_write_packet(CodedBitstreamContext *ctx, AVPacket *pkt, CodedBitstreamFragment *frag)
Write the bitstream of a fragment to a packet.
static av_cold int init(AVCodecContext *avctx)
int ff_cbs_init(CodedBitstreamContext **ctx_ptr, enum AVCodecID codec_id, void *log_ctx)
Create and initialise a new context for the given codec.
The bitstream filter state.
const char * av_default_item_name(void *ptr)
Return the context name.
void * priv_data
Opaque filter-specific private data.
const char * class_name
The name of the class; usually it is the same name as the context structure type to which the AVClass...
static void filter(int16_t *output, ptrdiff_t out_stride, int16_t *low, ptrdiff_t low_stride, int16_t *high, ptrdiff_t high_stride, int len, int clip)
int ff_cbs_read_packet(CodedBitstreamContext *ctx, CodedBitstreamFragment *frag, const AVPacket *pkt)
Read the data bitstream from a packet into a fragment, then split into units and decompose.
void * content
Pointer to the decomposed form of this unit.
static const uint8_t header[24]
CodedBitstreamUnit * units
Pointer to an array of units of length nb_units_allocated.
void ff_cbs_fragment_free(CodedBitstreamContext *ctx, CodedBitstreamFragment *frag)
Free the units array of a fragment in addition to what ff_cbs_fragment_reset does.
#define i(width, name, range_min, range_max)
AVCodecID
Identify the syntax and semantics of the bitstream.
#define AV_LOG_ERROR
Something went wrong and cannot losslessly be recovered.
CodedBitstreamFragment fragment
Coded bitstream fragment structure, combining one or more units.
void av_packet_unref(AVPacket *pkt)
Wipe the packet.
Describe the class of an AVClass context structure.
void ff_cbs_fragment_reset(CodedBitstreamContext *ctx, CodedBitstreamFragment *frag)
Free the units contained in a fragment as well as the fragment's own data buffer, but not the units a...
Context structure for coded bitstream operations.
void ff_cbs_close(CodedBitstreamContext **ctx_ptr)
Close a context and free all internal state.
common internal and external API header
static enum AVCodecID codec_ids[]
This structure stores compressed data.
int ff_bsf_get_packet_ref(AVBSFContext *ctx, AVPacket *pkt)
Called by bitstream filters to get packet for filtering.