ile`.
I really hope this can be the last iteration, as I ran out of ideas on how to
simplify the process, so please let me know your thoughts :-)
Leandro
On 3/24/25 16:56, Leandro Santiago wrote:
> This is a POC/prototype that aims to enable out of tree filters on
> FFmpeg.
>
>
On 3/28/25 22:38, Michael Niedermayer wrote:
> Hi Leandro
>
> On Mon, Mar 24, 2025 at 05:20:02PM +0100, Leandro Santiago wrote:
>> In this iteration I've made the following changes, based on the received
>> feedback:
>>
>> - No external tools are needed by
Dear FFmpeg developers, I've been doing some experiments with out-of-tree
filters [1] and I start feeling confident that the approach works well enough
and, besides a "demo" filter written in C [2], I've implemented a filter in
Rust [3].
That said, I propose:
- extracting the DNN filters (dnn_
-devel] [PATCH] avfilter: Proof of Concept: enable
>> out-of-tree filters
>>
>> Hi,
>>
>> On Mon, Mar 24, 2025 at 12:20 PM Leandro Santiago
>>
>> wrote:
>>
>>> I really hope this can be the last iteration, as I ran out of ideas on
>> how
On 3/25/25 19:05, Ronald S. Bultje wrote:
> Hi,
>
> On Mon, Mar 24, 2025 at 12:20 PM Leandro Santiago
> wrote:
>
>> I really hope this can be the last iteration, as I ran out of ideas on how
>> to simplify the process, so please let me know your thoughts :-)
>
&
optional dependencies, for filters that
can have multiple "backends", for instance, to be chosen at build time.
Signed-off-by: Leandro Santiago
---
.gitignore | 3 ++
configure| 60 ++--
libavfilter/Makefile | 4 +++
urther iteration. For now my focus is only
supporting C.
- Once the implementation and "spec" is agreed, document it.
- Refactor the changes in the build system to improve legibility.
Regards,
Leandro
From 7486f878b982867667892611e181dc4eab3298c8 Mon Sep 17 00:00:00 2001
From: Leandro
useful to check if the license of the filter is
compatible with the license used to build FFmpeg.
- Only extra filters written in C (maybe C++?) are supported for now.
One of my goals is to enable Rust as well.
Signed-off-by: Leandro Santiago
---
.gitignore | 3 ++
configure
On 3/14/25 19:21, Nicolas George wrote:
Lynne (HE12025-03-14):
This is a pointless patch and a pointlessly complex addition to the build
system. I wouldn't accept something like this.
Those who for some reason have custom filters simply distribute their own
branch with properly integrated filte
On 3/14/25 16:04, Michael Niedermayer wrote:
Hi
On Thu, Mar 13, 2025 at 01:18:49PM +0100, Leandro Santiago wrote:
This is a POC/prototype that aims to enable out of tree filters on
FFmpeg.
Here I name them "extra filters".
Thinking now, "extra filters" is not a good n
This is a follow-up to the my previous message:
https://ffmpeg.org/pipermail/ffmpeg-devel/2025-March/340895.html
On 3/13/25 13:18, Leandro Santiago wrote:
> This is a POC/prototype that aims to enable out of tree filters on
> FFmpeg.
>
> Here I name them "extra filters".
I've noticed that there is some kind of discontentment with current state of
the libavfilter directory and a wish to reduce the number of mainstreamed
filters there, relying on some kind of interface for keeping non essential
plugins out of tree.
Al noticed was the desire to make it easier for
s? Or would you recommend using the FATE tests?
On 3/4/25 12:55, Leandro Santiago wrote:
> The functions are:
>
> av_frame_side_data_get_nth_c()
> av_frame_side_data_get_nth()
> av_frame_get_nth_side_data()
>
> They mimic the counterparts without the `_nth` suffix/infix, with
The functions are:
av_frame_side_data_get_nth_c()
av_frame_side_data_get_nth()
av_frame_get_nth_side_data()
They mimic the counterparts without the `_nth` suffix/infix, with an extra
argument, which specifies the relative position of the entry of a given
type.
Signed-off-by: Leandro Santiago
I've been using Hotspot, a Qt based GUI for Linux perf, and am quite happy with
the results: https://github.com/KDAB/hotspot
Valgrind massif, callgrind and cachegrind also have some GUIs for Linux
(massif-visualizer and Kcachegrind).
Cheers,
Leandro
On 2/24/25 15:43, Cesar Matheus wrote:
> Hi
(I am replying to the messages in general, not inline, as I got lost with all
the subthreads).
My opinion on C++ vs Rust:
I've been using mostly C++ during my career (~15 years) and I confess I kind of
lost hope on its future. I no longer see any advantages of writing new code in
C++ just beca
: Leandro Santiago
---
libavfilter/vf_dnn_detect.c | 13 -
1 file changed, 8 insertions(+), 5 deletions(-)
diff --git a/libavfilter/vf_dnn_detect.c b/libavfilter/vf_dnn_detect.c
index cd70c64e98..bc9a1777ff 100644
--- a/libavfilter/vf_dnn_detect.c
+++ b/libavfilter/vf_dnn_detect.c
Instead, rely on AV_OPT_TYPE_FLAG_ARRAY, which will automatically
perform the parsing.
Signed-off-by: Leandro Santiago
---
libavfilter/vf_dnn_detect.c | 43 -
1 file changed, 4 insertions(+), 39 deletions(-)
diff --git a/libavfilter/vf_dnn_detect.c b
On 2/20/25 23:49, Michael Niedermayer wrote:
> Hi
>
> On Thu, Feb 20, 2025 at 02:06:47PM +0100, Leandro Santiago wrote:
>> [insert meme here]
> [...]
>> I also recorded a video showing the filter in action [7].
> [...
>> [7] https://youtu.be/U_y4-NnaINg
> co
.
On 2/20/25 14:06, Leandro Santiago wrote:
> [insert meme here]
>
> (this will be a long e-mail)
>
> Dear FFmpeg devs,
>
> in the past days I've been experimenting hacking FFmpeg using Rust.
>
> As I am becoming more familiar with the libavfilter, and it is not
[insert meme here]
(this will be a long e-mail)
Dear FFmpeg devs,
in the past days I've been experimenting hacking FFmpeg using Rust.
As I am becoming more familiar with the libavfilter, and it is not a dependency
for any other of the libav* libs, I decided this is a good candidate.
It's also
Hi devs, I'm been following the discussion but not taking part on it.
I've just created a WIP PR on the forgejo instance which I'd like to get
review, in case the instance is ready for the experiment.
Please let me know if you prefer that I send the changes via the mailing list
instead, in case
Oh, I see. I had not noticed that AVDetectionBBox was part of the public API,
but it now looks obvious to me.
Thx for pointing it out.
On 2/14/25 10:56, Zhao Zhili wrote:
>
>> On Feb 14, 2025, at 16:47, Leandro Santiago
>> wrote:
>>
>> There is no need to store this
There is no need to store this field in the struct,
as it can be computed as sizeof(AVDetectionBBox).
Signed-off-by: Leandro Santiago
---
libavutil/detection_bbox.c | 1 -
libavutil/detection_bbox.h | 7 +--
2 files changed, 1 insertion(+), 7 deletions(-)
diff --git a/libavutil
Signed-off-by: Leandro Santiago
---
libavfilter/dnn/dnn_backend_openvino.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/libavfilter/dnn/dnn_backend_openvino.c
b/libavfilter/dnn/dnn_backend_openvino.c
index 2f6706dcd4..ec46e29b8a 100644
--- a/libavfilter/dnn
.
Signed-off-by: Leandro Santiago
---
libavfilter/vf_dnn_detect.c | 7 ++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/libavfilter/vf_dnn_detect.c b/libavfilter/vf_dnn_detect.c
index f4abd38ec1..09e4c69c18 100644
--- a/libavfilter/vf_dnn_detect.c
+++ b/libavfilter
Just as a ping, to know whether anyone is able to have a look at this patch :-)
Please let me know if you folks need extra context or info.
31 Oct 2024 21:48:31 Leandro Santiago :
> Ref https://trac.ffmpeg.org/ticket/11152
>
> According to harfbuzz docs, hb_ft_font_set_funcs() does no
My patch formatting was broken by my email client, and I resent it, but it
created a new thread in the mailing list. Please let me know if I should resent
it as a reply on the same thread.
31 Oct 2024 19:54:51 Michael Niedermayer :
> On Thu, Oct 31, 2024 at 02:40:57PM +0100, Leandro Santi
When vulkan rendering is requested by the user and fails, ffplay should
exit graciously instead of crash due to a null pointer deref.
Signed-off-by: Leandro Santiago
---
fftools/ffplay.c | 5 +
1 file changed, 5 insertions(+)
diff --git a/fftools/ffplay.c b/fftools/ffplay.c
index
order of creation of
the respective objects.
Signed-off-by: Leandro Santiago
---
libavfilter/vf_drawtext.c | 15 ---
1 file changed, 12 insertions(+), 3 deletions(-)
diff --git a/libavfilter/vf_drawtext.c b/libavfilter/vf_drawtext.c
index 2b0a21a4b4..cf99b4e59e 100644
--- a
The values +-32000 smell like something that will break in the future.
Signed-off-by: Leandro Santiago
---
libavfilter/vf_drawtext.c | 8
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/libavfilter/vf_drawtext.c b/libavfilter/vf_drawtext.c
index 2b0a21a4b4..96a8a59f0e
This adds lots of copy&paste, but introducing ways to reuse the code would
find the examples harder to read.
Signed-off-by: Leandro Santiago
---
doc/examples/hw_decode.c | 10 --
doc/examples/qsv_decode.c | 11 ---
doc/examples/qsv_transcode.c | 11 ---
The values +-32000 smell like something that will break in the future.
Signed-off-by: Leandro Santiago
---
libavfilter/vf_drawtext.c | 8
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/libavfilter/vf_drawtext.c b/libavfilter/vf_drawtext.c
index 2b0a21a4b4..96a8a59f0e
the order of creation of
the respective objects.
Signed-off-by: Leandro Santiago
---
libavfilter/vf_drawtext.c | 15 ---
1 file changed, 12 insertions(+), 3 deletions(-)
diff --git a/libavfilter/vf_drawtext.c b/libavfilter/vf_drawtext.c
index 2b0a21a4b4..cf99b4e59e 100644
--- a
When vulkan rendering is requested by the user and fails, ffplay should
exit graciously instead of crash due to a null pointer deref.
Signed-off-by: Leandro Santiago
---
fftools/ffplay.c | 5 +
1 file changed, 5 insertions(+)
diff --git a/fftools/ffplay.c b/fftools/ffplay.c
index
35 matches
Mail list logo