From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: <ffmpeg-devel-bounces@ffmpeg.org> Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTPS id DA0034CEC3 for <ffmpegdev@gitmailbox.com>; Sat, 15 Mar 2025 16:58:08 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 80A7168E0DE; Sat, 15 Mar 2025 18:58:04 +0200 (EET) Received: from vidala.pars.ee (vidala.pars.ee [116.203.72.101]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 4F3B9687CA8 for <ffmpeg-devel@ffmpeg.org>; Sat, 15 Mar 2025 18:57:58 +0200 (EET) DKIM-Signature: v=1; a=rsa-sha256; s=202405r; d=lynne.ee; c=relaxed/relaxed; h=From:To:Subject:Date:Message-ID; t=1742057876; bh=BB88dXtpYg2YZps8HAxBYkS nQm7f2zvd9JNkyB0HV+A=; b=I7cq8+WRBiuL6PrdOiyh+ctkqlQc3MF0HZQ/BFkS4YPWx3NhFR Ks+FkxfNNh7cM0CW4uRHap0MMuwRoF1uwNhIxv8KSwIvToU7L8TlTZGWU41OX86BZxXtgLy4xUn DuS6NcI07qVev9GIDyiIwNQYpUBNtCL0+8GB9TIpY2r5TE9PxEAq8g7wvyuUGDYQkomJf1jvU0K O/sAu29trAP2dK1fF0S+/6ZKbcMOtGtl5/dDGGNBgLnnllnfuG9JVJSt4CdoaahVEJHY2Pulxcm 5vjOzVeWVPbdh57milcEwYODFh+hZR+h0sdGPeEkRlcHHhrJe9QpbZoNBjU+D25RADQ==; DKIM-Signature: v=1; a=ed25519-sha256; s=202405e; d=lynne.ee; c=relaxed/relaxed; h=From:To:Subject:Date:Message-ID; t=1742057876; bh=BB88dXtpYg2YZps8HAxBYkS nQm7f2zvd9JNkyB0HV+A=; b=Hw1BPpEiEWrT/xatOAWvn7gpgdX1GttjMKsi6WvqZJfy/fMEkk WaD29rgTPYKL7pb2IDv1y5Pj1EIRHlL2rqBg==; Message-ID: <d1a5aada-a2a1-4a63-bc9a-610b6bfc0803@lynne.ee> Date: Sat, 15 Mar 2025 17:57:56 +0100 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Beta To: FFmpeg development discussions and patches <ffmpeg-devel@ffmpeg.org> References: <20250313170355.92290-1-dev@lynne.ee> Content-Language: en-US From: Lynne <dev@lynne.ee> Autocrypt: addr=dev@lynne.ee; keydata= xjMEXnFG3BYJKwYBBAHaRw8BAQdA3FyJpqEdfQj4GA7OUWVrNheT9dUsIs+yUx6Hljr9mYvN FEx5bm5lIDxkZXZAbHlubmUuZWU+wpAEExYIADgWIQT+UBOcaAVyyv1SH42i/qXwPwNEZAUC XnFG3AIbAwULCQgHAgYVCgkICwIEFgIDAQIeAQIXgAAKCRCi/qXwPwNEZOTWAQCSNEA+kZLI NZ2dsR5Qg988c0HXpOXThZEjg+h1TL7KGgEA3Gff0c28efI02S6iMxazrpdWGHqHk7JN7pCj nt397wzOOARecUbcEgorBgEEAZdVAQUBAQdAjDdFQ5H+AJ9vwXrOb7val460g45EsheIaL5S 7/zSaX8DAQgHwngEGBYIACAWIQT+UBOcaAVyyv1SH42i/qXwPwNEZAUCXnFG3AIbDAAKCRCi /qXwPwNEZKaxAQCHLV4gAk/B9JvRG27MYm22X3+5QRCLBtEILP29aDh+MQD/V8JFHATDXRY3 0LsmqR3sPQ0BJ1UFVZA5BUoIJPJZWwg= In-Reply-To: <20250313170355.92290-1-dev@lynne.ee> Subject: Re: [FFmpeg-devel] [PATCH v4 00/16] Add a Vulkan compute based FFv1 hwaccel X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: FFmpeg development discussions and patches <ffmpeg-devel.ffmpeg.org> List-Unsubscribe: <https://ffmpeg.org/mailman/options/ffmpeg-devel>, <mailto:ffmpeg-devel-request@ffmpeg.org?subject=unsubscribe> List-Archive: <https://ffmpeg.org/pipermail/ffmpeg-devel> List-Post: <mailto:ffmpeg-devel@ffmpeg.org> List-Help: <mailto:ffmpeg-devel-request@ffmpeg.org?subject=help> List-Subscribe: <https://ffmpeg.org/mailman/listinfo/ffmpeg-devel>, <mailto:ffmpeg-devel-request@ffmpeg.org?subject=subscribe> Reply-To: FFmpeg development discussions and patches <ffmpeg-devel@ffmpeg.org> Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" <ffmpeg-devel-bounces@ffmpeg.org> Archived-At: <https://master.gitmailbox.com/ffmpegdev/d1a5aada-a2a1-4a63-bc9a-610b6bfc0803@lynne.ee/> List-Archive: <https://master.gitmailbox.com/ffmpegdev/> List-Post: <mailto:ffmpegdev@gitmailbox.com> On 13/03/2025 18:03, Lynne wrote: > This series of commits adds a fully compliant version 3 and 4 hardware > accelerator code for FFv1 written in Vulkan. > > Changes from the previous version: > - Use the exported host_map code in hwcontext_vulkan.c > - Add a buffer_ref argument to FFHWAccel.start_frame > - Various optimizations in the shader code > > Lynne (16): > pixfmt: add AV_PIX_FMT_GBRAP32 > vulkan: rename ff_vk_set_descriptor_image to ff_vk_shader_update_img > vulkan: add ff_vk_create_imageview > vulkan: copy host-mapping buffer code from hwcontext > hwcontext_vulkan: use the common host map function to map frame data > vulkan: workaround BGR storage image undefined behaviour > vulkan_decode: support software-defined decoders > vulkan_decode: support multiple image views > vulkan_decode: adjust number of async contexts created > ffv1enc_vulkan: refactor shaders slightly to support sharing > vulkan: unify handling of BGR and simplify ffv1_rct > vulkan: add ff_vk_exec_add_dep_wait_sem() > vulkan: add support for AV_PIX_FMT_GBRAP32 > ffv1dec: add support for hwaccels > FFHWAccel: add buffer_ref argument to start_frame > ffv1: add a Vulkan-based decoder > > configure | 2 + > libavcodec/Makefile | 3 +- > libavcodec/av1dec.c | 3 +- > libavcodec/d3d12va_av1.c | 5 +- > libavcodec/d3d12va_h264.c | 5 +- > libavcodec/d3d12va_hevc.c | 5 +- > libavcodec/d3d12va_mpeg2.c | 5 +- > libavcodec/d3d12va_vc1.c | 5 +- > libavcodec/d3d12va_vp9.c | 5 +- > libavcodec/dxva2_av1.c | 1 + > libavcodec/dxva2_h264.c | 1 + > libavcodec/dxva2_hevc.c | 1 + > libavcodec/dxva2_mpeg2.c | 1 + > libavcodec/dxva2_vc1.c | 1 + > libavcodec/dxva2_vp9.c | 1 + > libavcodec/ffv1.h | 2 + > libavcodec/ffv1_vulkan.c | 123 +++ > libavcodec/ffv1_vulkan.h | 61 ++ > libavcodec/ffv1dec.c | 87 +- > libavcodec/ffv1enc_vulkan.c | 236 ++--- > libavcodec/h263dec.c | 2 +- > libavcodec/h264dec.c | 8 +- > libavcodec/hevc/hevcdec.c | 5 +- > libavcodec/hwaccel_internal.h | 4 +- > libavcodec/hwaccels.h | 1 + > libavcodec/mjpegdec.c | 2 +- > libavcodec/mpeg12dec.c | 2 +- > libavcodec/nvdec_av1.c | 4 +- > libavcodec/nvdec_h264.c | 1 + > libavcodec/nvdec_hevc.c | 1 + > libavcodec/nvdec_mjpeg.c | 4 +- > libavcodec/nvdec_mpeg12.c | 3 +- > libavcodec/nvdec_mpeg4.c | 3 +- > libavcodec/nvdec_vc1.c | 3 +- > libavcodec/nvdec_vp8.c | 3 +- > libavcodec/nvdec_vp9.c | 3 +- > libavcodec/proresdec.c | 2 +- > libavcodec/vaapi_av1.c | 1 + > libavcodec/vaapi_h264.c | 1 + > libavcodec/vaapi_hevc.c | 1 + > libavcodec/vaapi_mjpeg.c | 1 + > libavcodec/vaapi_mpeg2.c | 5 +- > libavcodec/vaapi_mpeg4.c | 5 +- > libavcodec/vaapi_vc1.c | 5 +- > libavcodec/vaapi_vp8.c | 1 + > libavcodec/vaapi_vp9.c | 1 + > libavcodec/vaapi_vvc.c | 1 + > libavcodec/vc1dec.c | 6 +- > libavcodec/vdpau_av1.c | 3 +- > libavcodec/vdpau_h264.c | 1 + > libavcodec/vdpau_hevc.c | 1 + > libavcodec/vdpau_mpeg12.c | 1 + > libavcodec/vdpau_mpeg4.c | 1 + > libavcodec/vdpau_vc1.c | 1 + > libavcodec/vdpau_vp9.c | 3 +- > libavcodec/videotoolbox.c | 8 +- > libavcodec/videotoolbox_av1.c | 1 + > libavcodec/videotoolbox_vp9.c | 1 + > libavcodec/vp8.c | 2 +- > libavcodec/vp9.c | 2 +- > libavcodec/vt_internal.h | 1 + > libavcodec/vulkan/Makefile | 6 + > libavcodec/vulkan/common.comp | 95 ++ > libavcodec/vulkan/ffv1_common.comp | 25 +- > libavcodec/vulkan/ffv1_dec.comp | 290 ++++++ > libavcodec/vulkan/ffv1_dec_rct.comp | 88 ++ > libavcodec/vulkan/ffv1_dec_setup.comp | 138 +++ > libavcodec/vulkan/ffv1_enc_rct.comp | 17 +- > libavcodec/vulkan/ffv1_enc_setup.comp | 18 +- > libavcodec/vulkan/ffv1_rct.comp | 90 ++ > libavcodec/vulkan/ffv1_reset.comp | 3 +- > libavcodec/vulkan/ffv1_vlc.comp | 37 + > libavcodec/vulkan/rangecoder.comp | 101 +- > libavcodec/vulkan_av1.c | 5 +- > libavcodec/vulkan_decode.c | 257 +++-- > libavcodec/vulkan_decode.h | 23 +- > libavcodec/vulkan_ffv1.c | 1296 +++++++++++++++++++++++++ > libavcodec/vulkan_h264.c | 5 +- > libavcodec/vulkan_hevc.c | 5 +- > libavcodec/vvc/dec.c | 12 +- > libavutil/hwcontext_vulkan.c | 191 ++-- > libavutil/pixdesc.c | 28 + > libavutil/pixfmt.h | 4 + > libavutil/vulkan.c | 351 ++++++- > libavutil/vulkan.h | 42 +- > 85 files changed, 3290 insertions(+), 495 deletions(-) > create mode 100644 libavcodec/ffv1_vulkan.c > create mode 100644 libavcodec/ffv1_vulkan.h > create mode 100644 libavcodec/vulkan/ffv1_dec.comp > create mode 100644 libavcodec/vulkan/ffv1_dec_rct.comp > create mode 100644 libavcodec/vulkan/ffv1_dec_setup.comp > create mode 100644 libavcodec/vulkan/ffv1_rct.comp > create mode 100644 libavcodec/vulkan_ffv1.c > Anyone have any more comments? _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".