From: "Rémi Denis-Courmont" <remi@remlab.net> To: ffmpeg-devel@ffmpeg.org Subject: Re: [FFmpeg-devel] I've written a filter in Rust Date: Sat, 22 Feb 2025 14:49:44 +0200 Message-ID: <4959204.GXAFRqVoOG@basile.remlab.net> (raw) In-Reply-To: <eb5fa9b8-5ec6-45be-a4ec-ac4118cdaf5e@lynne.ee> Le perjantaina 21. helmikuuta 2025, 15.18.06 UTC+2 Lynne a écrit : > > - 1: get a working and efficient implementation of the SORT algorithm. > > - 2: start learning Rust again (it's been ~5 years since I used it) > > - 3: learn more about the libavfilter codebase > > - 4: evaluate whether Rust could work as a second language for hacking > > FFMpeg. > > None of us know Rust confidently enough to maintain and work on such code. A project should of course limit the number of distinct programminglanguages involved for a number of reasons, but there are people who know Rust quite well here as well as in adjacent projects from the OSS multimedia community. The sustainability problem is really not specific to the programming language. The majority of FFmpeg code requires domain-specific knowledge that even most FFmpeg maintainers don't have. By that same logic we should not have any assembler optimisation for any instruction set other than, maybe, 386 and support only the most well-known codecs and containers. (...) > Regardless of the language, I disagree with using crates in the context > of FFmpeg I assume that you mean *external* crates because if FFmpeg starts incorporating Rust, I would certainly expect it to consist of a workspace with multiple crates. With that said, external crates are just the Rust equivalent of external C libraries. I agree that, ideally, FFmpeg should not depend on external libraries and carry native implementations of anything other than the languages runtimes and hardware abstraction layers...but in actuality, FFmpeg has tons of libraries as optional dependencies. > and any use of cargo. I fail to see the problem, TBH. You can use rustc directly, but it's really inconvenient with little to no benefits. I don't see why we couldn't use Cargo to produce static libraries, then have the Makefile import those static libraries into the existing linking process. We can (and most definitely should) restrict adding external crates in the Cargo manifests but that does not mean we should ban Cargo altogether. > We used to link to OpenCV. The only reason why we dropped it was because > we used the C interface, which was removed, and no one wanted to or was > interested in rewriting it. I agree that we should not depend on external *frameworks*. -- Rémi Denis-Courmont Tapio's place new town, former Finnish Republic of Uusimaa _______________________________________________ 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".
prev parent reply other threads:[~2025-02-22 12:49 UTC|newest] Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top 2025-02-20 13:06 Leandro Santiago 2025-02-20 16:20 ` Leandro Santiago 2025-02-20 22:49 ` Michael Niedermayer 2025-02-21 7:56 ` Leandro Santiago 2025-02-21 9:01 ` Tomas Härdin 2025-02-21 9:21 ` Soft Works 2025-02-21 13:21 ` Michael Niedermayer 2025-02-21 14:30 ` Soft Works 2025-02-21 14:53 ` Kieran Kunhya via ffmpeg-devel 2025-02-21 15:02 ` Soft Works 2025-02-21 19:27 ` Kieran Kunhya via ffmpeg-devel 2025-02-21 20:10 ` Soft Works 2025-02-21 16:39 ` Stephen Hutchinson 2025-02-21 13:18 ` Lynne 2025-02-21 13:44 ` Kieran Kunhya via ffmpeg-devel 2025-02-21 18:02 ` Tomas Härdin 2025-02-22 12:57 ` Rémi Denis-Courmont 2025-02-22 12:49 ` Rémi Denis-Courmont [this message]
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=4959204.GXAFRqVoOG@basile.remlab.net \ --to=remi@remlab.net \ --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