[FFmpeg-devel] [PATCH] avfilter/avf_showcqt: rewrite showcqt and add features

James Almer jamrial at gmail.com
Thu Oct 29 06:05:53 CET 2015


On 10/27/2015 9:56 PM, Michael Niedermayer wrote:
> On Mon, Oct 26, 2015 at 12:32:58AM +0700, Muhammad Faiz wrote:
>> On Sun, Oct 25, 2015 at 9:51 AM, Michael Niedermayer
>> <michael at niedermayer.cc> wrote:
>>> On Sun, Oct 25, 2015 at 08:43:07AM +0700, Muhammad Faiz wrote:
>>>>  doc/filters.texi          |  181 +++--
>>>>  libavfilter/avf_showcqt.c | 1546 +++++++++++++++++++++++++++++++---------------
>>>>  libavfilter/avf_showcqt.h |  104 +++
>>>>  libavfilter/version.h     |    2
>>>>  4 files changed, 1294 insertions(+), 539 deletions(-)
>>>> 3f83a0d334d780da3defa7d1fa3f09b3beb1db2d  0001-avfilter-avf_showcqt-rewrite-showcqt-and-add-feature.patch
>>>> From 337a659f96ef5dcf87aad1d541e745b7c262cbb9 Mon Sep 17 00:00:00 2001
>>>> From: Muhammad Faiz <mfcc64 at gmail.com>
>>>> Date: Sat, 24 Oct 2015 00:44:42 +0700
>>>> Subject: [PATCH] avfilter/avf_showcqt: rewrite showcqt and add features
>>>
>>> this fails to build on "arm-linux-gnueabi-gcc-4.5 (Ubuntu/Linaro 4.5.3-12ubuntu2) 4.5.3"
>>> In file included from ffmpeg/libavfilter/avf_showcqt.c:41:0:
>>> ffmpeg/libavfilter/avf_showcqt.h:39:30: warning: declaration does not declare anything
>>> ffmpeg/libavfilter/avf_showcqt.h:40:30: warning: declaration does not declare anything
>>> ffmpeg/libavfilter/avf_showcqt.c: In function ‘rgb_from_cqt’:
>>> ffmpeg/libavfilter/avf_showcqt.c:668:13: error: ‘ColorFloat’ has no member named ‘r’
>>> ffmpeg/libavfilter/avf_showcqt.c:669:13: error: ‘ColorFloat’ has no member named ‘g’
>>> ffmpeg/libavfilter/avf_showcqt.c:670:13: error: ‘ColorFloat’ has no member named ‘b’
>>> ffmpeg/libavfilter/avf_showcqt.c: In function ‘yuv_from_cqt’:
>>> ffmpeg/libavfilter/avf_showcqt.c:682:13: error: ‘ColorFloat’ has no member named ‘y’
>>> ffmpeg/libavfilter/avf_showcqt.c:683:13: error: ‘ColorFloat’ has no member named ‘u’
>>> ffmpeg/libavfilter/avf_showcqt.c:684:13: error: ‘ColorFloat’ has no member named ‘v’
>>
>>
>> revision: do not use anonymous struct, it seems it is not supported on
>> some platforms
>>
>> thanks
> 
>>  doc/filters.texi          |  181 +++--
>>  libavfilter/avf_showcqt.c | 1546 +++++++++++++++++++++++++++++++---------------
>>  libavfilter/avf_showcqt.h |  112 +++
>>  libavfilter/version.h     |    2 
>>  4 files changed, 1302 insertions(+), 539 deletions(-)
>> be583ed02fc82b34612c9c1782955795fb8b4259  0001-avfilter-avf_showcqt-rewrite-showcqt-and-add-feature.patch
>> From e6d6243e03439cffd2d58e30d9892c18e2ef0bc4 Mon Sep 17 00:00:00 2001
>> From: Muhammad Faiz <mfcc64 at gmail.com>
>> Date: Mon, 26 Oct 2015 00:18:41 +0700
>> Subject: [PATCH] avfilter/avf_showcqt: rewrite showcqt and add features
>>
>> add yuv444p, yuv422p, and yuv420p output format (lower cpu usage
>> on ffplay playback because it does not do format conversion)
>> custom size with size/s option (fullhd option is deprecated)
>> custom layout with bar_h, axis_h, and sono_h option
>> support rational frame rate (within fps/r/rate option)
>> relaxed frame rate restriction (support fractional sample step)
>> support all input sample rates
>> separate sonogram and bargraph volume (with volume/sono_v and
>> volume2/bar_v)
>> timeclamp option alias (timeclamp/tc)
>> fcount option
>> gamma option alias (gamma/sono_g and gamma2/bar_g)
>> support custom frequency range (basefreq and endfreq)
>> support drawing axis using external image file (axisfile option)
>> alias for disabling drawing to axis (text/axis)
>> possibility to optimize it using arch specific asm code
>> ---
>>  doc/filters.texi          |  181 ++++--
>>  libavfilter/avf_showcqt.c | 1546 +++++++++++++++++++++++++++++++--------------
>>  libavfilter/avf_showcqt.h |  112 ++++
>>  libavfilter/version.h     |    2 +-
>>  4 files changed, 1302 insertions(+), 539 deletions(-)
>>  create mode 100644 libavfilter/avf_showcqt.h
> 
> applied
> 
> thanks

C:/Dev/ffmpeg/fate/x86_32-msvc2012/src/libavfilter/avf_showcqt.c(316) : error C4013: 'fmax' undefined; assuming extern returning int
C:/Dev/ffmpeg/fate/x86_32-msvc2012/src/libavfilter/avf_showcqt.c(317) : error C4013: 'fmin' undefined; assuming extern returning int
C:/Dev/ffmpeg/fate/x86_32-msvc2012/src/libavfilter/avf_showcqt.c(668) : error C4013: 'fminf' undefined; assuming extern returning int

If these can't be replaced with FFMIN/FFMAX then maybe a fallback version should
be added to libavutil/libm.h


More information about the ffmpeg-devel mailing list