From: Michael Niedermayer <michael@niedermayer.cc>
To: FFmpeg development discussions and patches <ffmpeg-devel@ffmpeg.org>
Subject: Re: [FFmpeg-devel] What is FFmpeg and what should it be
Date: Wed, 2 Aug 2023 16:20:26 +0200
Message-ID: <20230802142026.GI7802@pb2> (raw)
In-Reply-To: <a9dddaee-69f5-4e67-a4d3-0b2224116ef2@betaapp.fastmail.com>
[-- Attachment #1.1: Type: text/plain, Size: 3810 bytes --]
On Wed, Aug 02, 2023 at 02:59:11PM +0200, Jean-Baptiste Kempf wrote:
> On Wed, 2 Aug 2023, at 14:55, Michael Niedermayer wrote:
> > the code already is in a seperate repository. And is basically isolated
> > in a single demuxer and single input device.
>
> But it's not a library in that repository, like swscale, swresample or similar libraries.
>
> If it was, with an API, it would be trivial to add support to this optional library as an FFmpeg module, and noone who complain.
There are multiple problems but the real problem is that
How many people discuss an SDR API ? (0)
How many people propose an SDR API ? (0)
How many people say what they want an SDR API to be able to do ? (0)
This is not a simple question ?
enumerate devices, set options, open, read frames, close ? That does not differ from the
existing input device / demuxer API.
If one cannot state a single difference in the API requirements from the existing
input device API, how can one design that API ?
If the existing input device API suposedly is not good
Is it bad just because it is the existing API ? And it would be perfectly
fine if it just had different function names ?
In other areas the community collaborates to create APIs
here all energy is spend to block patches (the latest set blocked are pure bugfixes)
Also swresample and swscale are simpler in what they need to provide API wise.
My very first patch i sent btw was blocked with the claim that it used
an external library and did not do the processing nativly.
Thats exactly what you suggest now
IMHO, People who want to use this API, or want to implement this API
should help with the API design and implementation
And if there are 0 people wanting to use the API then why should i design
that API ? who for ?
SDR in FFmpeg has 500+ users who want it, the API iam not sure has a user
People who have no intend to use the API or SDR or implement either
should not represent 99% of whom approv / reject the code
This is a problem, because it leads to bad code.
The people telling me what to do dont care about the results
one day its "not external lib", then its "external lib" then its
"libavfilter" then its "not libavfilter"
Again we had 0 that is ZERO discussions about an SDR API.
where does it start ? a hw enumerate, a soapy device, a void *
representing a SDR data stream from something like soapy
soapy is full of bugs, for the code to work we need to know
where the data came from and we need to interact with the hw
should we provide a layer over all of libsoapy ?
should we support only libsoapy and take a device from libsoapy
as input
should we have a generic input support that libsoapy is one of several
options ?
I cannot design this API with this. because 3 out of 4
choices will get attacked and blocked if not all 4, if someone just
implements it.
because people are unwilling to think about anything they just think
they know how it must be done and they dont discuss anything they just
demand and attack and wait how the next patchset looks. Eventually
everyone then looses interrest and a patchset goes through but thats
not good design.
So again, IMHO people should help design and implement this API
if they want an API.
If i have to design an API by trial and error until it gets no
unspecific objections by people not interrested in using it
thats not going to be an API that anyone will want to use.
thx
[...]
--
Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB
The day soldiers stop bringing you their problems is the day you have stopped
leading them. They have either lost confidence that you can help or concluded
you do not care. Either case is a failure of leadership. - Colin Powell
[-- Attachment #1.2: signature.asc --]
[-- Type: application/pgp-signature, Size: 195 bytes --]
[-- Attachment #2: Type: text/plain, Size: 251 bytes --]
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
next prev parent reply other threads:[~2023-08-02 14:20 UTC|newest]
Thread overview: 84+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-07-22 19:29 [FFmpeg-devel] [PATCH 1/6] configure: libavradio support Michael Niedermayer
2023-07-22 19:29 ` [FFmpeg-devel] [PATCH 2/6] avutil/log: Add AV_CLASS_CATEGORY_RADIO_INPUT Michael Niedermayer
2023-07-22 20:30 ` Paul B Mahol
2023-07-22 19:29 ` [FFmpeg-devel] [PATCH 3/6] avformat: add support for demuxers/inputs from avradio Michael Niedermayer
2023-07-22 20:35 ` Paul B Mahol
2023-07-22 19:29 ` [FFmpeg-devel] [PATCH 4/6] avdevice/utils: add test for AV_CLASS_CATEGORY_RADIO_INPUT Michael Niedermayer
2023-07-22 19:29 ` [FFmpeg-devel] [PATCH 5/6] fftools: avradio support Michael Niedermayer
2023-07-22 21:39 ` Lynne
2023-07-23 15:23 ` Michael Niedermayer
2023-07-23 18:49 ` Tomas Härdin
2023-07-23 19:01 ` James Almer
2023-07-23 22:56 ` Michael Niedermayer
2023-07-24 8:19 ` Nicolas George
2023-07-24 15:57 ` Michael Niedermayer
2023-07-24 22:30 ` Tomas Härdin
2023-07-25 14:17 ` Tomas Härdin
2023-07-24 20:19 ` Tomas Härdin
2023-07-25 9:37 ` Nicolas George
2023-07-26 10:37 ` Michael Niedermayer
2023-07-27 13:05 ` Tomas Härdin
2023-07-27 18:36 ` Michael Niedermayer
2023-07-27 18:48 ` Nicolas George
[not found] ` <CC2992B9-B047-4724-8DE5-01C02CBE31FD@cosmin.at>
2023-08-01 19:51 ` Cosmin Stejerean
2023-08-01 20:06 ` Paul B Mahol
2023-08-02 12:46 ` Michael Niedermayer
2023-08-02 13:00 ` Paul B Mahol
2023-08-02 13:01 ` Michael Niedermayer
2023-07-24 8:13 ` Nicolas George
2023-07-24 20:22 ` Tomas Härdin
2023-07-25 9:33 ` Nicolas George
2023-07-25 9:51 ` Kieran Kunhya
2023-07-25 9:56 ` Nicolas George
2023-07-25 10:16 ` Kieran Kunhya
2023-07-25 13:55 ` Nicolas George
2023-07-25 14:37 ` Kieran Kunhya
2023-07-27 17:56 ` Nicolas George
2023-07-28 11:07 ` Kieran Kunhya
2023-07-30 13:04 ` [FFmpeg-devel] What is FFmpeg and what should it be Nicolas George
2023-07-30 17:07 ` Andrey Turkin
2023-07-30 18:29 ` Kieran Kunhya
2023-07-30 18:54 ` Nicolas George
2023-08-01 7:48 ` Rémi Denis-Courmont
2023-07-31 13:56 ` Tomas Härdin
2023-08-03 13:25 ` Nicolas George
2023-08-03 20:50 ` Tomas Härdin
2023-08-02 1:44 ` Vittorio Giovara
2023-08-02 12:55 ` Michael Niedermayer
2023-08-02 12:59 ` Jean-Baptiste Kempf
2023-08-02 14:12 ` Brad Isbell
2023-08-02 14:19 ` Nicolas George
2023-08-02 14:26 ` Michael Niedermayer
2023-08-02 14:30 ` Nicolas George
[not found] ` <A3B35B92-8333-4637-B4AA-FA9D9750E784@cosmin.at>
2023-08-02 15:46 ` Cosmin Stejerean
2023-08-03 15:40 ` Michael Niedermayer
2023-08-02 14:20 ` Michael Niedermayer [this message]
2023-08-02 14:44 ` Jean-Baptiste Kempf
2023-08-03 17:45 ` Michael Niedermayer
2023-08-03 18:24 ` Kieran Kunhya
2023-08-03 19:25 ` Michael Niedermayer
2023-08-03 20:04 ` Kieran Kunhya
2023-08-04 17:09 ` Michael Niedermayer
2023-08-04 17:35 ` Nicolas George
2023-08-04 23:17 ` Kieran Kunhya
2023-08-05 18:55 ` Michael Niedermayer
2023-08-05 19:17 ` Paul B Mahol
2023-08-05 23:32 ` Vittorio Giovara
2023-08-06 8:28 ` Tomas Härdin
2023-08-06 19:53 ` Michael Niedermayer
2023-08-07 15:39 ` Rémi Denis-Courmont
2023-08-08 15:22 ` Michael Niedermayer
2023-08-08 15:37 ` Paul B Mahol
2023-08-08 18:53 ` Rémi Denis-Courmont
2023-08-09 15:59 ` Michael Niedermayer
2023-08-09 16:24 ` Paul B Mahol
2023-08-10 12:39 ` Nicolas George
2023-08-10 14:58 ` Vittorio Giovara
2023-08-12 17:12 ` Michael Niedermayer
2023-08-10 15:01 ` James Almer
2023-08-10 15:43 ` Jean-Baptiste Kempf
2023-08-10 18:39 ` Tomas Härdin
2023-08-03 11:38 ` Tomas Härdin
2023-08-03 13:29 ` Nicolas George
2023-07-25 12:02 ` [FFmpeg-devel] [PATCH 5/6] fftools: avradio support Tomas Härdin
2023-07-22 19:29 ` [FFmpeg-devel] [PATCH 6/6] tools/uncoded_frame: " Michael Niedermayer
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20230802142026.GI7802@pb2 \
--to=michael@niedermayer.cc \
--cc=ffmpeg-devel@ffmpeg.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
This inbox may be cloned and mirrored by anyone:
git clone --mirror https://master.gitmailbox.com/ffmpegdev/0 ffmpegdev/git/0.git
# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V2 ffmpegdev ffmpegdev/ https://master.gitmailbox.com/ffmpegdev \
ffmpegdev@gitmailbox.com
public-inbox-index ffmpegdev
Example config snippet for mirrors.
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git