[FFmpeg-devel] [PATCH] avfilter/vf_chromakey: The chromakey filter preserves non-opaque alpha transparency.

Gavin Smith gavin.smith at playerbites.com
Fri Jun 12 18:58:48 EEST 2020


On 12/06/2020 12:59, Timo Rothenpieler wrote:
> On 12.06.2020 00:31, Gavin Smith wrote:
>>
>> On 11/06/2020 22:03, Timo Rothenpieler wrote:
>>> On 11.06.2020 22:27, Gavin Smith wrote:
>>>> This is to address trac ticket #8724. The filter did not preserve 
>>>> alpha transparency. Items that were transparent in the input would 
>>>> appear black on the output or pixels that were semi-tranparent 
>>>> would appear opaque.
>>>>
>>>
>>> What is the performance impact for inputs without an alpha channel?
>>
>> Firstly, I'm new to this world of filters.  Now my patch only applies 
>> to chromakey and not chromahold. On that note, is it not the case 
>> that the chromakey mandates that all its inputs surfaces contain 
>> alpha (as per query_formats function)? Would any AVPixelFormat that 
>> does not match query_formats get converted to a format containing 
>> alpha transparency?
>
> But it still adds new code, and given it's in the very hot path of the 
> filter, it can easily add a performance penalty.
Sure. I understand. I'll see what numbers I can get.  Having a quick 
cursory look over the code, I wonder if my code actually might be 
slightly more performant because it checks the case if a0 != 0. However, 
this jmp/cmp may negatively impact performance.
>
>>>
>>> Generally looks fine to me, but might need hidden behind an option, 
>>> as to not break existing setups that rely on this filter 
>>> discarding/ignoring the input alpha channel.
>>
>> Yes. No problem. "preserve_transparency" and default to the 
>> equivalent of 'false'?
>
> That seems a bit clunky. Maybe something like "use_alpha"?
Sure.
>
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel at ffmpeg.org
> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>
> To unsubscribe, visit link above, or email
> ffmpeg-devel-request at ffmpeg.org with subject "unsubscribe".


More information about the ffmpeg-devel mailing list