[FFmpeg-soc] libavfilter audio work - qualification task

Baptiste Coudurier baptiste.coudurier at gmail.com
Mon May 17 19:30:13 CEST 2010


On 5/17/10 4:59 AM, S.N. Hemanth Meenakshisundaram wrote:
> On 05/16/2010 09:10 AM, Stefano Sabatini wrote:
>> On date Tuesday 2010-05-11 01:12:37 +0200, Stefano Sabatini encoded:
>>> On date Monday 2010-05-10 15:52:18 -0700, S.N. Hemanth
>>> Meenakshisundaram encoded:
>>>> On 05/10/2010 03:14 PM, Stefano Sabatini wrote:
>>>>> On date Sunday 2010-05-09 20:42:30 -0700, S.N. Hemanth
>>>>> Meenakshisundaram encoded:
>>>>>> On 05/03/2010 01:32 PM, Stefano Sabatini wrote:
>>>>>>> On date Monday 2010-05-03 01:11:07 -0700, S.N. Hemanth
>>>>>>> Meenakshisundaram encoded:
>>>>>>>> On 04/23/2010 05:03 PM, Stefano Sabatini wrote:
>>>>>>>>> On date Thursday 2010-04-22 17:19:16 -0700, S.N. Hemanth
>>>>>>>>> Meenakshisundaram encoded:
>>>>>>>>> [...]
>>>>>> + /* FIXME: av_parse_color currently sets alpha to 0 if no alpha
>>>>>> is specified.
>>>>>> + * So we force alpha = 0xFF (opaque), here in such a case.
>>>>>> + */
>>>>>> + if (rgba[3] != 0)
>>>>>> + color[3] = rgba[3];
>>>>>> + else
>>>>>> + color[3] = 0xFF;
>>>>> I suppose this was to be skipped.
>>>> If I skip this without the parseutils patch, then text specified
>>>> will be invisible (alpha 0) by default when user specifies
>>>> foreground color as an english string. So I left it in for the time
>>>> being. Will remove it along with parseutils patch. Hope that's ok.
>>> Fine.
>>>
>>> Did you already thought about a syntax? My idea was:
>>> color/0xXX
>>> color/DDD
>>>
>>> maybe someone which works with web/design can suggest a more
>>> familiar/natural syntax though.
>>>
>>>>> Apart those nits patch looks fine to me (but missing configure and
>>>>> documentation parts), I assume it has been tested and works.
>>>> Done. Other nits fixed and the redundant fixme removed. Tested and
>>>> works.
>>>>
>>>>> Please provide the complete patch.
>>>> vf_drawtext.c, allfilter.c and libavfilter Makefile changes are all
>>>> part of drawtext.diff which is a patch against soc/libavfilter (svn
>>>> diff ./ in soc/libavfilter directory)
>>>>
>>>> There's no configure in soc/libavfilter, so config.diff is a patch
>>>> against ffmpeg trunk. Should this be in some other form?
>>>>
>>>> drawtext_doc.diff is a diff with libavfilter.texi of ffmpeg trunk
>>>> after it has been patched by the checkout.sh script in
>>>> soc/libavfilter. I can make this a patch to the
>>>> 03_libavfilter_doc.diff file in soc/libavfilter if required.
>>> No patch is OK, I think that I'll add a configure patch to soc too.
>>>
>>> If no one else has other comments I'll apply the patch to soc in few
>>> days.
>> I had to edit the patch before to apply, there were different warnings
>> and a problem with the strftime() expansion rendering (only the
>> characters in the provided string where loaded in init(), that
>> couldn't work when the string was expanded), please test more
>> accurately the next time and never ignore warnings.
>
> I saw the changes you made. I will keep those in mind when submitting my
> next patch and run more tests.
>
>> Also I changed the way the filter is configured, with the applied
>> patch the --enable-libfreetype switch is required to compile the
>> drawtext filter. That looks simpler and consistent with the way
>> configure deals with external libraries.
>>
>> As for what regards the filter: the outline quality is honestly quite
>> bad especially at small font sizes, while I really appreciate the
>> font/box transparency feature :-). Also maybe we should try to add
>> anti-aliasing support.
>
> For anti-aliasing, I will set the freetype2 anti-aliasing flags on. As
> for outline, I guess the algorithm needs to be changed. I will work on
> these once I have gotten some of the audio filter framework done this week.
>

I plan to work on this as well. Btw, wouldn't it look better if you 
render in GRAY8 ? Then you use it as alpha to blend the foreground.

-- 
Baptiste COUDURIER
Key fingerprint                 8D77134D20CC9220201FC5DB0AC9325C5C1ABAAA
FFmpeg maintainer                                  http://www.ffmpeg.org


More information about the FFmpeg-soc mailing list