[FFmpeg-trac] #9259(avcodec:new): Vulkan ycbcr Conversion with 10 bit

FFmpeg trac at avcodec.org
Mon May 24 19:55:16 EEST 2021


#9259: Vulkan ycbcr Conversion with 10 bit
-------------------------------------+-------------------------------------
             Reporter:  David Oard   |                     Type:
                                     |  enhancement
               Status:  new          |                 Priority:  normal
            Component:  avcodec      |                  Version:  4.3.2
             Keywords:  Vulkan       |               Blocked By:
  VK_KHR_sampler_ycbcr_conversion    |
  VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16|
             Blocking:               |  Reproduced by developer:  0
Analyzed by developer:  0            |
-------------------------------------+-------------------------------------
 I using Vulkan to convert ycbcr AVFrame data to RGB using
 VK_KHR_sampler_ycbcr_conversion extension. It has been working really well
 with 8 bit videos Once I try to 10 bit videos the screen is primarily
 green. The issue is when a AVFrame is decoded from avcodec_receive_frame
 call the data arrays for each plane is packed into a 16-bit word where the
 lower 10 bits contain the data. The problem is that Vulkan wants the data
 in the upper 10 bits in each 16-bit word.

 Is there a way to tell the decoder to use the upper 10 bits instead of the
 lower 10 bits? Or can an enhancement be added to handle which methodology
 to use?

 The a detailed description of the formats I'm using with Vulkan checkout
 following link. Search for the last instance of
 VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16.

 https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkFormat.html

 Thanks or any help or direction!

 David
-- 
Ticket URL: <https://trac.ffmpeg.org/ticket/9259>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker


More information about the FFmpeg-trac mailing list