On 6/28/15, Dave Rice <d...@dericed.com> wrote:
>
>> On Jun 28, 2015, at 1:54 PM, Paul B Mahol <one...@gmail.com> wrote:
>>
>> On 6/28/15, Dave Rice <d...@dericed.com> wrote:
>>>
>>>> On Jun 28, 2015, at 11:07 AM, Paul B Mahol <one...@gmail.com> wrote:
>>>>
>>>> On 6/28/15, Dave Rice <d...@dericed.com> wrote:
>>>>> Hi,
>>>>>
>>>>>> On Jun 27, 2015, at 4:52 PM, Paul B Mahol <one...@gmail.com> wrote:
>>>>>>
>>>>>> Signed-off-by: Paul B Mahol <one...@gmail.com>
>>>>>> ---
>>>>>> doc/filters.texi           |  76 ++++++++++++
>>>>>> libavfilter/Makefile       |   1 +
>>>>>> libavfilter/allfilters.c   |   1 +
>>>>>> libavfilter/vf_drawgraph.c | 297
>>>>>> +++++++++++++++++++++++++++++++++++++++++++++
>>>>>> 4 files changed, 375 insertions(+)
>>>>>> create mode 100644 libavfilter/vf_drawgraph.c
>>>>>>
>>>>
>>>> [...]
>>>>
>>>>>
>>>>> With this version using a color name for foreground no longer works:
>>>>>
>>>>> This works:
>>>>> ffplay -f lavfi -i mandelbrot -vf
>>>>> signalstats,drawgraph=metadata=lavfi.signalstats.YAVG:min=0:max=255:slide=scroll:bg=green:fg=0x0000FF
>>>>>
>>>>> This doesn't:
>>>>> ffplay -f lavfi -i mandelbrot -vf
>>>>> signalstats,drawgraph=metadata=lavfi.signalstats.YAVG:min=0:max=255:slide=scroll:bg=green:fg=red
>>>>
>>>> AFAIK The expressions can not work with strings.
>>>>
>>>>>
>>>>> Also here's an example with blend:
>>>>> ffplay -f lavfi -i mandelbrot -vf "signalstats,split=3[a][b][c];\
>>>>> [a]drawgraph=metadata=lavfi.signalstats.YAVG:min=0:max=255:slide=scroll:fg=0xFFFF0000:mode=dot[a1];\
>>>>> [b]drawgraph=metadata=lavfi.signalstats.UAVG:min=0:max=255:slide=scroll:fg=0xFF00FF00:mode=dot[b1];\
>>>>> [c]drawgraph=metadata=lavfi.signalstats.VAVG:min=0:max=255:slide=scroll:fg=0xFFFFFF00:mode=dot[c1];\
>>>>> [a1][b1]blend=and[ab];[ab][c1]blend=and[out]"
>>>>>
>>>>
>>>> The blending kills difference in colors so I may add multiple graphs
>>>> support for filter.
>>>
>>> Setting the background to black and blending seems a little better,
>>> though
>>> I'm losing one of my graphs in this example.
>>>
>>> ./ffplay -f lavfi -i mandelbrot -vf "signalstats,split=3[a][b][c];\
>>> [a]drawgraph=lavfi.signalstats.YAVG:min=0:max=255:slide=scroll:bg=black:fg=0x0000FF:mode=dot[a1];\
>>> [b]drawgraph=lavfi.signalstats.YLOW:min=0:max=255:slide=scroll:bg=black:fg=0x00FF00:mode=dot[b1];\
>>> [c]drawgraph=lavfi.signalstats.YHIGH:min=0:max=255:slide=scroll:bg=black:fg=0xFF0000:mode=dot[c1];\
>>> [a1][b1]blend=lighten,[c1]blend=lighten[out]"
>>>
>>> Also the foreground expression is in ABGR or BGR.  This is the opposite
>>> arrangement of what is specified here
>>> http://ffmpeg.org/ffmpeg-utils.html#Color.
>>
>> Using blend for this is SLOW.
>
> If the background could set to full alpha, then multiple graphs could be
> added together with the overlay filter. I tested some alpha expressions with
> bg (black@00, 0x00000000) and didn't seem to get transparent results.

Because filter use gbrp without alpha as output format. Will change it.
Plan is use RGBA or even YUVA as final output.

>
>> Have you tried new 'line' mode?
>
> Oooo, this is great. Probably more readable than dot in many situations.
>
>> Also expressions allow changing color of dot/line/bar so try it and
>> tell me if its fine.
>
> I tested this with several modes and it works as expected (excepting that
> ABGR/BGR vs RGBA/RGB note). Thanks for adding this.
>
> Some other comments:
> I tried to use an equation within metadata but got no plotted result. For
> instance, "metadata=pow(lavfi.signalstats.YMIN\,2)". There are some values
> that may occur in a wide range, so a logarithmic or mathematically adjusted
> display may be preferable.

Will see what can be done.

>
> Can input width and input height be used in variables within a size
> expression. In many cases I would like to draw the graph over the input
> video, but to do this I must know the input video size in advance.

I do not understand what you want. You want to be able to set size of
filter to input video?

> Dave Rice
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel@ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel

Reply via email to