Slashdot Mirror


An Interview With the Developers of FFmpeg

An anonymous reader writes "Following the long-awaited release of FFmpeg 0.5, Phoronix has conducted an interview with three FFmpeg developers (Diego Biurrun, Baptiste Coudurier, and Robert Swain) about this project's recent release. In this interview they talk about moving to a 3/6-month release cycle, the criteria for version 1.0, Blu-Ray support on Linux, OpenCL and GPGPU acceleration, multi-threading FFmpeg, video APIs, their own video codecs, and legal challenges they have run into."

24 of 80 comments (clear)

  1. Whither Google? by negatonium · · Score: 3, Insightful

    They say they have trouble implementing code due to time and motivational constraints. Seems to me that if Google/YouTube has built a very successful website around the FFmpeg engine then Google ought to pony up some programming help with improving the project. Wouldn't that be "The right thing to do" (TM)?

    1. Re:Whither Google? by Anonymous Coward · · Score: 5, Informative

      google has actually helped out a ton for ffmpeg

      google is why ffmpeg can now decode wmv3 and real codecs (rv3/4).
      more info and list of projects:
      http://wiki.multimedia.cx/index.php?title=FFmpeg_Summer_Of_Code

  2. Re:Long Awaited? by Klaus_1250 · · Score: 5, Informative

    Define "Long" and who was waiting for something that is still ".5" beta?

    It is not in "beta", it is production quality. The fact that it is 0.5 indicates that it is not complete and perfect yet.

    Oh, it is just another CODEC library.

    It is not "just another", it is the most important and most used open-source codec library

    --
    It only takes one man to change the Wisdom of the Crowd to Tyranny of the Masses.
  3. Re:Long Awaited? by CannonballHead · · Score: 2, Insightful

    It's the "complete" part of that word that is the key one. I dare say that no software is ever going to be "perfect" ... or, for that matter, "complete" in the ultimate sense of the word. However, I'm guessing they have a list of functionality that they want to implement before they declare it to be FFmpeg 1.0; fulfilling their list of desired functionality makes it "complete."

  4. Re:Long Awaited? by __aapspi39 · · Score: 4, Insightful

    It's a bit more than a codec library - without it you probably wouldn't have Youtube or VLC, as well as countless other online and offline applications.

    No one would expect you to be grateful, but you might want to demonstrate some knowledge of a domain you're so quick to pass comment on.

  5. Re:Long Awaited? by bradgoodman · · Score: 5, Insightful
    It's neither "just another", nor a "codec library".

    First, it is (arguably) the best out there.

    Second, it is an extremely powerful, cross-platform transcoder for every format under the sun.

    Third, it is an extremely diverse media player (mplayer)

    Fouth, it is the bassis for a countless number of media player and transcoding projects.

    As someone who manipulates digital video on both a person and professional level, ffmpeg is the #1 tool in my arsenal.

    Congrats on 0.5!!!

  6. Re:Long Awaited? by salahx · · Score: 2, Interesting

    Don't confuse ffmpeg with libavcodec. Although libavcodec is part of of the ffmpeg distribution, and is used by many other program (mplayer especially), ffmpeg is more than that.

  7. Re:Long Awaited? by FellowConspirator · · Score: 3, Informative

    Saying FFMPEG is just a codec library is like saying a Ferrari is a shiny surface for adhering horsie stickers to.

    The distinguishing features of FFMPEG are that it's cross-platform (many commercial Windows and Mac apps use it under the hood), it's astonishingly fast at transcoding, has very broad codec AND container support, is fairly simple yet has a very rich set of advanced features.

    What other tool are you going to use to convert your AutoDesk Animator video library to Flash video and animated gifs?

  8. VDPAU sounds cool by mowall · · Score: 2

    Anyone know what kind of performance increase VDPAU can give compared with software decoding?

    That application I'm working on needs to decode lots of H.264 streams so being able to offload that to a GPU would be a godsend.

    1. Re:VDPAU sounds cool by nerdguy0 · · Score: 2, Interesting

      Take a look at this article linked to in TFA. Seems like a pretty big boost.

      --
      "In /dev/null no one can hear you stream."
    2. Re:VDPAU sounds cool by limaxray · · Score: 5, Interesting

      It works VERY well. Decoding a 1080p H.264 video using software on my dual-core 3GHz machine pegs the cores back and forth to around 80-90%, but plays fairly well. Using an mplayer build patched to support VDPAU, my CPU remains idle (clock drops to 1GHz, and 1-3% CPU usage) and plays equally as well, if not better. Furthermore, I was still able to go about my business with no noticeable impact on performance, even when using hardware-dependent Compiz. I have not though, tried this on multiple streams.

      Oh, and this is using some cheap NVidia 8600 something-or-other card that I picked up new for ~$50. I, for one, was truly impressed by VDPAU and what it means for low-cost HD content.

  9. Re:Version numbering by icebike · · Score: 2, Funny

    Who modded parent insightful?

    Numbers indicate nothing more than sequential release numbers.

    You must be really distressed at Microsoft's race from Windows 3.1 to Windows 95, to Windows 2000, only to plummet back down to Windows 7.

    Wait, maybe there is some significance to these numbers after all.

    --
    Sig Battery depleted. Reverting to safe mode.
  10. Re:Long Awaited? by mhall119 · · Score: 4, Insightful

    ffmpeg is to video, what imagemagick is to images.

    --
    http://www.mhall119.com
  11. Re:Long Awaited? by drinkypoo · · Score: 3, Informative

    mplayer != ffmpeg. a "codec library" == the bassis for a countless number of media player and transcoding projects. I do not think these words mean what you think they mean. ffmpeg is primarily a codec. Encoder, and decoder. You might more accurately say it is a codec package because it provides the ffmpeg program (and others) and a collection of libraries (libavcodec, libavformat...) The package also provides a player, muxer, and a streamer; the player is ffplay, not mplayer.

    --
    "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
  12. Re:Long Awaited? by nine-times · · Score: 5, Informative

    Right. What is FFMPEG? It's basically a package that allows you to convert from almost any audio or video file format to almost any audio or video file format. Not only that, but it's the audio/video converter that pretty much every other (excluding in-house proprietary) converters and players are based on. It's important.

    As to why we care about a 0.5 release, FFMPEG has been around for years, but to my knowledge has not had "releases". There is the latest build, and that's it. The idea of having a stable "release" build is news in itself, whatever number you associate to it.

    Yes, there's still a lot to do, so the 0.5 version number is probably warranted. For one thing, there are still a few formats out there that FFMPEG doesn't fully support, and not all of those that they support seem to have been optimized well enough for output quality IMO. However, it's amazing how much they've accomplished already. Life would be so much harder if not for these guys' work.

  13. Time to promote the ffmpeg hall of shame by Anonymous Coward · · Score: 5, Informative
  14. Faster + less energy consumed. by Clarious · · Score: 2, Interesting

    Pretty good, you can easily decode 1080p H264 video with a cheap nvidia card. It is also consume less power and cooler than using CPU for decoding, so VDPAU = great for HD video on laptop.

    I also find it interesting that VDPAU can help decoding H264 video that I can't decode using its counterpart on Windows (DxVA) :)

  15. Legal Issues? by Paul+Slocum · · Score: 4, Interesting

    In the "Legal Issues" section of the article, I expected to see something about the issue of FFMPEG potentially infringing on existing patents. Instead there's just some stuff about violating the GPL. Seems like a major oversight to me.

    What *is* up with the patent issue? Is it possible to use FFMPEG legally in commercial software if you adhere to the GPL and buy licenses for the patents that you're using? Since I already paid for software that includes encoders for some of these patented codecs, does that allow me to legally use FFMPEG? In my lifetime, how many times do I have to pay the patent fees for MPEG2 encoding?

    1. Re:Legal Issues? by Anonymous Coward · · Score: 2, Informative

      The "official" answers to that are here: http://ffmpeg.org/legal.html
      And no, I don't think you will find them useful, a lawyer is the right place to get legal advice.

    2. Re:Legal Issues? by LackThereof · · Score: 2, Informative

      From the FFMPEG website:

      Patent Mini-FAQ

      A lot of legal questions surrounding patents arise when discussing multimedia technology. This mini-FAQ attempts to address these issues. Note that much of this discussion is based on precedent, or what has happened in the past under similar circumstances. Very little consideration is given to what could happen. If you use your imagination, you can visualize any dire scenario and cease doing any productive work.

      Q: Does FFmpeg use patented algorithms?
      A: We do not know, we are not lawyers so we are not qualified to answer this. Also we have never read patents to implement any part of FFmpeg, so even if we were qualified we could not answer it as we do not know what is patented. Furthermore the sheer number of software patents makes it impossible to read them all so no one (lawyer or not) could answer such a question with a definite no, those who do lie. What we do know is that various standards FFmpeg supports contain vague hints that any conforming implementation might be subject to some patent rights in some jurisdictions, examples for such statements are:
      For H.264:

      ITU draws attention to the possibility that the practice or implementation of this Recommendation may involve the use of a claimed Intellectual Property Right. ITU takes no position concerning the evidence, validity or applicability of claimed Intellectual Property Rights, whether asserted by ITU members or others outside of the Recommendation development process.

      And for MPEG-4:

      The user's attention is called to the possibility that, for some of the processes specified in this part of ISO/IEC 14496, conformance with this specification may require use of an invention covered by patent rights. By publication of this part of ISO/IEC 14496, no position is taken with respect to the validity of this claim or of any patent rights in connection therewith.

      Q: Is it legal to use such patented algorithms?
      A: Patent laws change wildly between jurisdictions. Besides, even in places where software patents are recognized, there is serious doubt about the legitimacy of such legislation. Note that patents on algorithms are illegal in many countries. Plus the use of patents to prevent the usage of a format or codec on a specific operating system or together with specific other software might violate antitrust laws.

      Q: Bottom line: Should I be worried about patent issues if I use FFmpeg?
      A: Are you a private user working with FFmpeg for your own personal purposes? If so, there is remarkably little reason to be concerned. Are you using FFmpeg in a commercial software product? Read on to the next question...

      Q: Since FFmpeg is licensed under the LGPL, is it perfectly alright to incorporate the whole FFmpeg core into my own commercial product?
      A: You might have a problem here. Sure, the LGPL allows you to incorporate the code. However, there have been cases where companies have used FFmpeg in their projects, usually for such capabilities as superior MPEG-4 decoding. These companies found out that once you start trying to make money from certain technologies, the alleged owners of the technologies will come after their protection money. Most notably, MPEG-LA (licensing authority) is vigilant and diligent about collecting for MPEG-related technologies.

      Q: You called the patent license fee protection money, is this a joke?
      A: No. The legal validity of these patents is highly questionable. Still in many current legal systems it is very easy to ruin a company with patents even if the patents are invalid. Paying the (small) license fee is much cheaper than a patent lawsuit during which you would not be able to sell your product as the patent would be valid until you win the lawsuit 5+ years in the future. That is assuming you did not go bankrupt in the meantime...

      Q: Can I be safe if I have paid my protection money.
      A: You can never be safe as long as your country recognizes

      --
      Legalize recreational marijuana. Seriously.
    3. Re:Legal Issues? by HTH+NE1 · · Score: 2, Interesting

      In the "Legal Issues" section of the article, I expected to see something about the issue of FFMPEG potentially infringing on existing patents. Instead there's just some stuff about violating the GPL. Seems like a major oversight to me.

      So that's not why I can't get ffmpeg to strip the "Copy once" broadcast flag out of my HD recording of 24 "Day 7: 6:00 PM - 8:00 PM"?

      I can hear all the audio, but I can't see anything other than the cable-inserted ads. VLC will play it but not transcode it. MPEG Streamclip will rip the audio but not the video. Mencode with copy and copy fails. Mplayer saving to tga files works but takes up too much disk space and QuickTime Player doesn't offer converting an image sequence to video at 59.97 fps.

      I just want to convert the 1280x720p MPEG-TS signal to 720x480p anamorphic DV video for editing in Final Cut Pro and mastering with DVD Studio Pro.

      I'm going to have to use the analog hole to get this one, and that means it'll be interlaced in SD instead of progressive. And I'll have to catch up with the series before watching it.

      --
      Oh, say does that Star-Spangled Banner entwine / The myrtle of Venus with Bacchus's vine?
    4. Re:Legal Issues? by HTH+NE1 · · Score: 2, Interesting

      If it were encrypted, VLC and MPlayer would not be able to play it, but they can and do.

      But ffmpeg not knowing about the flag would explain why it wouldn't strip what it didn't know about. Not sure why Mencoder would choke with an audio complaint trying to do the same thing.

      Hasn't anyone created a filter that just clears the broadcast flag from a recorded transport stream? If I had that then MPEG Streamclip would handle everything else for me.

      --
      Oh, say does that Star-Spangled Banner entwine / The myrtle of Venus with Bacchus's vine?
  16. Re:Long Awaited? by Mozk · · Score: 3, Funny

    It's like the FFmpeg of images.

    --
    No existe.
  17. Re:Notes on Compiling ffmpeg-0.5 for Mandriva 2009 by Anonymous Coward · · Score: 2, Informative

    -O3 and -funroll-loops are likely to increase code size, and thus increase cache pressure. Particularly for H.264 this in our limited experience is more likely to slow things down that speed them up. Generally it is a bad idea to "speed-optimize" without benchmarking.