| 753 | } |
| 754 | |
| 755 | static int d3d12va_encode_free_rc_params(AVCodecContext *avctx) |
| 756 | { |
| 757 | D3D12VAEncodeContext *ctx = avctx->priv_data; |
| 758 | |
| 759 | switch (ctx->rc.Mode) |
| 760 | { |
| 761 | case D3D12_VIDEO_ENCODER_RATE_CONTROL_MODE_CQP: |
| 762 | av_freep(&ctx->rc.ConfigParams.pConfiguration_CQP); |
| 763 | break; |
| 764 | case D3D12_VIDEO_ENCODER_RATE_CONTROL_MODE_CBR: |
| 765 | av_freep(&ctx->rc.ConfigParams.pConfiguration_CBR); |
| 766 | break; |
| 767 | case D3D12_VIDEO_ENCODER_RATE_CONTROL_MODE_VBR: |
| 768 | av_freep(&ctx->rc.ConfigParams.pConfiguration_VBR); |
| 769 | break; |
| 770 | case D3D12_VIDEO_ENCODER_RATE_CONTROL_MODE_QVBR: |
| 771 | av_freep(&ctx->rc.ConfigParams.pConfiguration_QVBR); |
| 772 | break; |
| 773 | default: |
| 774 | break; |
| 775 | } |
| 776 | |
| 777 | return 0; |
| 778 | } |
| 779 | |
| 780 | static int d3d12va_encode_init(AVCodecContext *avctx, FFHWBaseEncodePicture *pic) |
| 781 | { |
no test coverage detected