Lines Matching defs:vtctx

73 int ff_videotoolbox_buffer_copy(VTContext *vtctx,
79 tmp = av_fast_realloc(vtctx->bitstream,
80 &vtctx->allocated_size,
86 vtctx->bitstream = tmp;
87 memcpy(vtctx->bitstream, buffer, size);
88 vtctx->bitstream_size = size;
187 VTContext *vtctx = avctx->internal->hwaccel_priv_data;
222 if (vtctx)
223 memcpy(vtctx->sps, h->ps.sps->data + 1, 3);
395 VTContext *vtctx = avctx->internal->hwaccel_priv_data;
399 return ff_videotoolbox_buffer_copy(vtctx, buffer, size);
410 VTContext *vtctx = avctx->internal->hwaccel_priv_data;
414 if (!vtctx->sps[0])
415 memcpy(vtctx->sps, h->ps.sps->data + 1, 3);
418 if (size > 4 && memcmp(vtctx->sps, buffer + 1, 3) != 0) {
419 vtctx->reconfig_needed = true;
420 memcpy(vtctx->sps, buffer + 1, 3);
432 VTContext *vtctx = avctx->internal->hwaccel_priv_data;
435 tmp = av_fast_realloc(vtctx->bitstream,
436 &vtctx->allocated_size,
437 vtctx->bitstream_size+size+4);
441 vtctx->bitstream = tmp;
443 AV_WB32(vtctx->bitstream + vtctx->bitstream_size, size);
444 memcpy(vtctx->bitstream + vtctx->bitstream_size + 4, buffer, size);
446 vtctx->bitstream_size += size + 4;
471 VTContext *vtctx = avctx->internal->hwaccel_priv_data;
472 if (vtctx->vt_ctx)
473 return vtctx->vt_ctx;
498 VTContext *vtctx = avctx->internal->hwaccel_priv_data;
499 if (!vtctx)
502 av_freep(&vtctx->bitstream);
503 if (vtctx->frame)
504 CVPixelBufferRelease(vtctx->frame);
506 if (vtctx->vt_ctx)
509 av_buffer_unref(&vtctx->cached_hw_frames_ctx);
510 av_freep(&vtctx->vt_ctx);
517 VTContext *vtctx = avctx->internal->hwaccel_priv_data;
518 CVPixelBufferRef pixbuf = (CVPixelBufferRef)vtctx->frame;
537 ref->pixbuf = vtctx->frame;
538 vtctx->frame = NULL;
541 if (!vtctx->cached_hw_frames_ctx)
544 cached_frames = (AVHWFramesContext*)vtctx->cached_hw_frames_ctx->data;
566 av_buffer_unref(&vtctx->cached_hw_frames_ctx);
567 vtctx->cached_hw_frames_ctx = hw_frames_ctx;
571 ref->hw_frames_ctx = av_buffer_ref(vtctx->cached_hw_frames_ctx);
693 VTContext *vtctx = opaque;
695 if (vtctx->frame) {
696 CVPixelBufferRelease(vtctx->frame);
697 vtctx->frame = NULL;
701 av_log(vtctx->logctx, status ? AV_LOG_WARNING : AV_LOG_DEBUG,
706 vtctx->frame = CVPixelBufferRetain(image_buffer);
714 VTContext *vtctx = avctx->internal->hwaccel_priv_data;
717 vtctx->bitstream,
718 vtctx->bitstream_size);
1007 VTContext *vtctx = avctx->internal->hwaccel_priv_data;
1009 if (vtctx->reconfig_needed == true) {
1010 vtctx->reconfig_needed = false;
1018 if (!videotoolbox->session || !vtctx->bitstream || !vtctx->bitstream_size)
1024 vtctx->reconfig_needed = true;
1029 if (!vtctx->frame) {
1030 vtctx->reconfig_needed = true;
1041 VTContext *vtctx = avctx->internal->hwaccel_priv_data;
1043 vtctx->bitstream_size = 0;
1074 VTContext *vtctx = avctx->internal->hwaccel_priv_data;
1082 vtctx->bitstream_size = 0;
1090 VTContext *vtctx = avctx->internal->hwaccel_priv_data;
1092 return ff_videotoolbox_buffer_copy(vtctx, buffer, size);
1121 VTContext *vtctx = avctx->internal->hwaccel_priv_data;
1123 return ff_videotoolbox_buffer_copy(vtctx, buffer, size);
1178 VTContext *vtctx = avctx->internal->hwaccel_priv_data;
1182 vtctx->logctx = avctx;
1194 vtctx->vt_ctx = av_videotoolbox_alloc_context();
1195 if (!vtctx->vt_ctx) {
1222 vtctx->cached_hw_frames_ctx = av_buffer_ref(avctx->hw_frames_ctx);
1223 if (!vtctx->cached_hw_frames_ctx) {
1229 vtctx->vt_ctx->cv_pix_fmt_type =
1231 if (!vtctx->vt_ctx->cv_pix_fmt_type) {
1402 int av_videotoolbox_default_init2(AVCodecContext *avctx, AVVideotoolboxContext *vtctx)
1406 avctx->hwaccel_context = vtctx ?: av_videotoolbox_alloc_context_with_pix_fmt(pix_fmt, full_range);