[HN Gopher] Germany's Sovereign Tech Fund Now Supporting FFmpeg
       ___________________________________________________________________
        
       Germany's Sovereign Tech Fund Now Supporting FFmpeg
        
       Author : vmbrasseur
       Score  : 127 points
       Date   : 2024-05-16 20:09 UTC (2 hours ago)
        
 (HTM) web link (www.phoronix.com)
 (TXT) w3m dump (www.phoronix.com)
        
       | bestouff wrote:
       | Rewrite the damn thing in Rust. All these parsers in C, so widely
       | used across so many projects make me very afraid.
        
         | jacooper wrote:
         | Just read the Twitter account of ffmpeg just to see what they
         | thinks about this, spoiler alert: he doesn't like it to say the
         | least.
        
           | vigneshv_psg wrote:
           | are you talking about a specific thread? if so, could you
           | please link to it.
           | 
           | i see some generic posts about how ffmpeg is written in C and
           | Assembly and will not be re-written in C++, but nothing about
           | Rust.
        
         | troupo wrote:
         | Rewrite for the sake of rewriting sounds like fun. How useful
         | is it?
        
         | nwah1 wrote:
         | For an enormous project like this, it is probably more
         | reasonable to just use the latest version of C, and turn on
         | lots of linters and sanitizers. You could also use one of the
         | various strict subsets of C that is oriented for safety.
         | 
         | Might as well tell people to rewrite WebKit or Linux in Rust.
         | There are projects that aim at building browsers or kernels in
         | Rust, but the man-millennia of effort put into the existing
         | projects means catching up is no small feat.
         | 
         | Even the coreutils rewrite has taken like a decade and isn't
         | done. And that is a small and well-defined goal by comparison.
        
           | wffurr wrote:
           | What other big projects like Chromium and Android are doing
           | is writing new code in Rust and investing in interop with the
           | existing C and C++ code, along with fuzzing and sanitizing.
        
         | devwastaken wrote:
         | You're not wrong. Media codecs are a good attack vector.
         | However, it's not so simple. You need hand crafted SIMD to
         | reach desired performance. That is a whole area of specialized
         | theory and research. I think it should be done, but who is
         | going to fund it?
        
           | blipvert wrote:
           | Germany's Sovereign Tech Fund?
           | 
           | ;-)
        
           | deciduously wrote:
           | It would involve unsafe rust anyway, which does sequester but
           | not eliminate the concern. I think it would be difficult to
           | make a case that this effort is worthwhile.
        
         | Scaevolus wrote:
         | If your project is amenable to it, it's possible to wrap ffmpeg
         | in a gvisor (runsc) docker container and _greatly_ reduce the
         | risk.
        
         | xnyan wrote:
         | Serious question, let's say you had a ton of money and wanted
         | to get this done, is there physically enough available Rust
         | talent (at market rates) in the world today to port ffmpeg to
         | rust in any reasonable amount of time? My understanding is that
         | it's one of the biggest open source projects in terms of LoC,
         | development hours needed to both create and maintain, and
         | number of former and active developers working on the project.
        
           | IshKebab wrote:
           | There definitely is. You don't need support for all the
           | obscure formats that ffmpeg supports.
           | 
           | It would still cost a lot though.
        
             | martinsnow wrote:
             | Perhaps you don't need it. But that doesn't mean a lot of
             | others find them very useful.
        
           | Denvercoder9 wrote:
           | There's plenty of talented developers out there that are
           | currently working in another language, but could relatively
           | quickly learn the required Rust skills to go work on such a
           | project. Domain knowledge (codecs, video/audio processing,
           | etc) is probably a bigger problem.
        
         | aliher1911 wrote:
         | It will possibly kill lots of community contributions.
         | Currently its easy to add missing features to things like
         | filters. Who is going to do that in rust? I'm yet to see a
         | practicing rust programmer IRL.
        
         | IshKebab wrote:
         | I feel like using Wuffs would make more sense.
        
         | Cyph0n wrote:
         | I am a huge Rust fan, and also a huge FFmpeg fan.
         | 
         | What exactly does a complete rewrite of FFmpeg achieve given
         | the absolutely monstrous complexity involved?
        
           | LtWorf wrote:
           | More bugs, but none of them are double free?
        
         | martinsnow wrote:
         | What on earth would that accomplish?
        
         | KetoManx64 wrote:
         | Have you ever rewritten a project in a completely different
         | language?
        
           | Uehreka wrote:
           | To be fair, ffmpeg is highly modular, some parts of it are
           | probably already in Rust. I feel like rewriting certain
           | extremely high-use libraries like libx264 could be done if
           | like, 5 really productive Rust engineers with codec
           | experience took it on for 12 months.
           | 
           | I'm not saying it's needed, just that ffmpeg is the kind of
           | thing that could be rewritten gradually if there was interest
           | and a lot of dedicated talent.
        
       | ChrisMarshallNY wrote:
       | Glad to hear this.
       | 
       | ffmpeg is one of these "Too Important to Fail" libraries.
       | 
       | I'll lay odds that billions of dollars rely on it, and it's an
       | open-source tool.
        
       | nisa wrote:
       | It's very good that ffmpeg gets support and the sovereign tech
       | fund is a good idea but for me it again just highlights how
       | perverted the incentives to support open source are.
       | 
       | Millions of dollars are extracted by using ffmpeg from a lot of
       | corporations, yet the German taxpayer pays for maintenance.
        
         | Phelinofist wrote:
         | Finally my taxes are put to good use for once
        
       | jallmann wrote:
       | This is great news, but simultaneously disappointing that it is
       | necessary. FFmpeg underpins tens of billions of dollars in value
       | for the companies that use it, yet the support from the community
       | is proportionally minuscule.
        
       ___________________________________________________________________
       (page generated 2024-05-16 23:00 UTC)