43 buf[1] =
s->raw_seq->seq_profile << 5 |
s->raw_seq->seq_level_idx[0];
44 buf[2] =
s->raw_seq->seq_tier[0] << 7 |
45 s->raw_seq->color_config.high_bitdepth << 6 |
46 s->raw_seq->color_config.twelve_bit << 5 |
47 s->raw_seq->color_config.mono_chrome << 4 |
48 s->raw_seq->color_config.subsampling_x << 3 |
49 s->raw_seq->color_config.subsampling_y << 2 |
50 s->raw_seq->color_config.chroma_sample_position;
52 if (
s->raw_seq->initial_display_delay_present_flag)
54 s->raw_seq->initial_display_delay_present_flag << 4 |
55 s->raw_seq->initial_display_delay_minus_1[0];
58 memcpy(buf + 4,
s->seq_data_ref->data,
s->seq_data_ref->size);
59 data = CFDataCreate(kCFAllocatorDefault, buf,
s->seq_data_ref->size + 4);
87 for (
int i =
s->start_unit;
i < s->nb_unit;
i++)
89 s->current_obu.units[
i].data_size);
94 .p.name =
"av1_videotoolbox",
#define i(width, name, range_min, range_max)
const struct FFHWAccel ff_av1_videotoolbox_hwaccel
common internal api header.
Memory handling functions.
@ AV_PIX_FMT_VIDEOTOOLBOX
hardware decoding through Videotoolbox
A reference to a data buffer.
main external API structure.
struct AVCodecInternal * internal
Private context used for internal data.
void * hwaccel_priv_data
hwaccel-specific private data
This structure describes decoded (raw) audio or video data.
int ff_videotoolbox_common_init(AVCodecContext *avctx)
int ff_videotoolbox_frame_params(AVCodecContext *avctx, AVBufferRef *hw_frames_ctx)
int ff_videotoolbox_uninit(AVCodecContext *avctx)
int ff_videotoolbox_common_end_frame(AVCodecContext *avctx, AVFrame *frame)