Slashdot Mirror


Multimedia Powerhouse FFmpeg Hits 3.0

An anonymous reader writes: The milestone release FFmpeg 3.0 "Einstein" has been unleashed. For those who need a reminder, FFmpeg comprises several libraries and command-line tools (the main command-line tool being "ffmpeg") that encode, decode, transcode, and stream audio/visual data, etc. FFmpeg supports a multitude of codecs, filters, and container formats too numerous to mention here. FFmpeg is used by MPlayer, VLC, HandBrake, Chrome, and many other projects. Changes from 2.x to 3.0 include: a much better native AAC encoder, better hardware acceleration, and some API/ABI breakage. See this, this, this, this, and the changelog for much better descriptions of the improvements.

67 comments

  1. Not on Mint by HalAtWork · · Score: 4, Interesting

    It's not in the default repos on Mint, I learned this was replaced by libav. I used it to crop some videos for use in OpenShot* by commandline and the parameters seem compatible with FFmpeg. Any reason for the fork? I'm currently reading this to suss it out, hopefully it's good in the long run, and at least I can do what I need to do in the meantime.

    *(love it for editing home videos but lacking soundtrack support, added that by commandline too w/libav)

    1. Re:Not on Mint by Anonymous Coward · · Score: 1

      Welcome to the wonderful world of Linux and FOSS.

    2. Re:Not on Mint by invictusvoyd · · Score: 4, Funny

      Define risk : Unpatched FFmpeg on a compromised mint ISO

    3. Re: Not on Mint by Anonymous Coward · · Score: 5, Informative

      Debian was a big player in the libAV mess, and they recently switched back to ffmpeg, so I imagine mint will at some point too.

    4. Re:Not on Mint by Anonymous Coward · · Score: 2

      Yeah, having choices is a horrible thing. I want others to decide everything for me!

    5. Re: Not on Mint by amiga3D · · Score: 4, Informative

      I remember that crap. It was fucked the way they changed it so it seemed like it was ffmpeg was installed but it wasn't. It broke so many applications and I couldn't figure out why. It used to work and then it didn't. When I figured it out I was more than annoyed. Sure if you want to change to libav go ahead but don't call it ffmpeg. I then got to compile ffmpeg from scratch. They didn't have any nifty cut and paste instructions at the time.

    6. Re: Not on Mint by Anonymous Coward · · Score: 0, Funny
      This is the kind of stupid behaviour that keeps non-technical people from using Linux. Whoever was responsible should have been publicly run out of town, and should be identified personally every time the issue comes up to make sure he is never in a decision making capacity anywhere, ever.

      Hell, he should not even be allowed to order his own beer!

    7. Re: Not on Mint by I4ko · · Score: 1

      apparently it was another German pederast.

    8. Re: Not on Mint by jofas · · Score: 1

      Debian *did* decide for you and chose libav for about a year and then realized that no one wanted it.

    9. Re: Not on Mint by Anonymous Coward · · Score: 0

      I find your tolling unoriginal and uninspired. The best it got out of me was a sigh. I rate it a check minus, and that's me being generous.

    10. Re: Not on Mint by bluefoxlucid · · Score: 3, Informative

      The narrative keeps changing. The first pass I heard was ffmpeg was full of NIH, haphazard bullshit, retard babies, and idiot politics, with code quality going down the shitter, hence the fork to libav; the latest pass I heard was ffmpeg folds in all the important features and bugfixes libav makes, while libav goes all NIH and re-implements their own from scratch, often simply ignoring bugs because it's run by a development team of retard babies and driven entirely by idiot politics.

    11. Re: Not on Mint by Anonymous Coward · · Score: 1

      Just a matter whose narrative wins. When it comes to bugs honestly that is mostly an issue of manpower, I don't think anyone ignores them on purpose. And as far as I can tell FFmpeg by now has decidedly won from the "available manpower" perspective.
      You're likely to find all kinds of accusations but the only major thing I could ever see in this mess was that there were certain people that simply couldn't communicate and get along with each other.
      It may have been born out of a project culture of "agressive discussion" (IMHO mostly to completely gone on both sides now, except in-between the projects possibly). When the team is small, the people involved young, there is a big target in sight (finally working multimedia on Linux) etc flamewars can be normal and the project still run fine (and I think it was a lot of fun at the time, and I learned a lot).
      But at some point, this method of development and dealing with contributors will probably always fail.

    12. Re:Not on Mint by jomcty · · Score: 1

      It's not in the default repos on Mint, I learned this was replaced by libav.

      http://johnvansickle.com/ffmpe...

    13. Re:Not on Mint by Anonymous Coward · · Score: 0

      Libav nowadays is dead. Debian and some other distros have already dropped it. Software like mpv suggests the use of ffmpeg and in general it receives much more commits than libav.

  2. Cool, but by Anonymous Coward · · Score: 2, Interesting

    I wonder how much sooner we would have gotten this release if not for all of the HEVC patent/licensing fee shenanigans of late?

    1. Re:Cool, but by Anonymous Coward · · Score: 1

      FFmpeg is source-only and hosted in Europe. It's not considered to be really affected by patent issues by the development team.
      So no, that had 0 relevance.

  3. V.L.C. is the One for Me by turkeydance · · Score: 0

    i like F.F.m.p.e.g! Go Team!

    1. Re:V.L.C. is the One for Me by Anonymous Coward · · Score: 3, Informative

      Unfortunately, the current release of vlc refuses to build against ffmpeg-3.0. Transcode and xine-libs are also broken by the changes, but those might be fixable. One day, many of us will be using ffmpeg-3.0 in our systems : but it might be a few weeks away.

    2. Re:V.L.C. is the One for Me by SlashdotOgre · · Score: 2

      Correct, the latest stable release (VLC 2.2. 2) doesn't compile due to API changes on the FFMPEG side however the latest VLC in their Git repository works with it. I am the Gentoo proxy-maintainer for VLC, and I have looked at the changes to make VLC 2.2.x work with FFMPEG 3.0, and they're not trivial or backwards compatible. My recommendation for folks on Gentoo at least is to use VLC-9999 (the Gentoo name of the latest upstream commit) if you need FFMPEG 3.0. One other thing to note is that FFMPEG >= 2.9 also breaks hardware acceleration in VLC (i.e. vdpau or vaapi), and if you need those, either stay on FFMPEG 2.8.6 or switch to libav.

      --
      Sadly, PS/2 was yet another victim of USB, which doesn't care what you plug into it, the electrical slut.
    3. Re:V.L.C. is the One for Me by Blaskowicz · · Score: 1

      Well I have a simpler concern : if this ffmpeg 3.0 doesn't hit Ubuntu 16.04, then wait for Ubuntu 18.04 (or Mint 19) to have it.

  4. Stability by Anonymous Coward · · Score: 4, Interesting

    My initial reaction:

    Multimedia Powerhouse FFmpeg Hits 3.0

    That's nice, but does it have a stable ABI yet?

    and some API/ABI breakage

    Welp.

    1. Re:Stability by Anonymous Coward · · Score: 3, Insightful

      My initial reaction:

      Multimedia Powerhouse FFmpeg Hits 3.0

      That's nice, but does it have a stable ABI yet?

      and some API/ABI breakage

      Welp.

      It is a major release. Some breakage is expected. As long as you stay on the same major it should be stable.

    2. Re:Stability by Dahamma · · Score: 4, Interesting

      It is a major release. Some breakage is expected. As long as you stay on the same major it should be stable.

      Hah. Good luck with that. FFmpeg is an amazing collection of codecs wrapped in a horrible and ever-changing API. I have used it on a number of projects and it seems every time I upgrade something breaks.

    3. Re:Stability by Anonymous Coward · · Score: 1

      My initial reaction:

      Multimedia Powerhouse FFmpeg Hits 3.0

      That's nice, but does it have a stable ABI yet?

      and some API/ABI breakage

      Welp.

      I've not had to actually work with ffmpeg's ABI myself and I don't anything about it, but yeah well, you know, any time I see a x.0 release of anything, the first thing I'm going to assume is that there's some breaking changes in there. That's kinda the point whole of bumping your major release number.

    4. Re:Stability by serviscope_minor · · Score: 2

      As long as you stay on the same major it should be stable.

      Spoken like someone who's never had to maintain video related code which interfaces with FFMPEG!

      It has been pretty good for the last few years but before that it was the single largest cause of rewrites.

      --
      SJW n. One who posts facts.
  5. come on high ball by Anonymous Coward · · Score: 0

    2 of the this.repeat() are the same damn thing

  6. easy copy/paste compile with static libraries by raymorris · · Score: 5, Informative

    If you want the newest ffmpeg and on any Linux, you can easily do what I did last night. The ffmpeg page has copy/paste instructions for downloading and compiling the newest ffmpeg with the newest versions of the libraries/ codecs it uses. Those instructions set PREFIX to something other than /usr or /usr/local so it doesn't step on anything installed on the system. It was really simple. I was using a very old version of Fedora, but didn't have any problems of missing dependencies because the dependencies are included in the instructions.

    One of the libraries takes a long time to compile, so I let that run while I and did other things. If you copy/paste exactly, you end up with the new ffmpeg in $HOME/bin/ . You can of course change that, or move it after it has compiled.

    1. Re:easy copy/paste compile with static libraries by Anonymous Coward · · Score: 0

      It's probably the only way to avoid the hard depends on pulseaudio many distro force for no apparent reason. We really have lost our distributions.

  7. fast encoding? by ooloorie · · Score: 2, Interesting

    How fast can ffmpeg do encoding on modern hardware? Is there functional GPU support to get high compression rates in real time?

    1. Re:fast encoding? by dwywit · · Score: 2

      Well, it works faster in a Debian VM under Windows 7, than it does in Windows 7. Mind you, I'm not usually looking for high compression - it's mostly the other way 'round, extracting poorly-encoded, over-compressed MKV files back to usable MP4.

      It's comparable with Premiere Pro/Media Encoder when encoding.

      --
      They sentenced me to twenty years of boredom
    2. Re:fast encoding? by Dahamma · · Score: 1

      "do encoding"?? Encoding of WHAT? FFmpeg has a lot of codecs. Your question makes no sense unless you provide some context of what you want to encode.

    3. Re:fast encoding? by wonkey_monkey · · Score: 1

      Well that's not helpful.

      I'd say it has a fastness of about 7.

      --
      systemd is Roko's Basilisk.
    4. Re:fast encoding? by Anonymous Coward · · Score: 0

      What?! Even CPU bound, ffmpeg does several hundred frames per second when encoding, as do all the front-ends that use it. What the fuck are you using, a Pentium 90?

    5. Re:fast encoding? by Gaygirlie · · Score: 2

      Even CPU bound, ffmpeg does several hundred frames per second when encoding, as do all the front-ends that use it.

      Bullshit. Depends totally on the codec and settings. Just try encoding, say, 1080p H.265 with veryslow - preset and tell me about all those hundreds of FPS you're getting.

    6. Re:fast encoding? by Gaygirlie · · Score: 2

      I am getting about ~180 FPS when using NVENC to encode 1080p H.265 on a Geforce GTX 970. YMMV.

    7. Re:fast encoding? by Anonymous Coward · · Score: 0

      That's 8 bit isn't it. NVENC doesn't support 10 bit encoding does it?

    8. Re:fast encoding? by squiggleslash · · Score: 3, Funny

      Under Gentoo it's more like 7.35-7.7.

      --
      You are not alone. This is not normal. None of this is normal.
  8. "For those who need a reminder..." by Anonymous Coward · · Score: 0

    Translation: "I feel like being a snarky, passive-aggressive brat tonight because I keep posting stories about software and people complain when I am too lazy to put a short description in the summary."

    Am I right?

    1. Re:"For those who need a reminder..." by timothy · · Score: 4, Interesting

      You're not right :)

      I added a link to the news at the ffmpeg.org site re: the actual release, might have fixed some punctuation or some other trivial stuff, but the submission that became this post came in pretty much as-is.

      Apologies for not noting this release a few days sooner, too; the things that FFmpeg make possible are deeply appreciated by naive end-users like me.

      timothy

      --
      jrnl: http://tinyurl.com/c2l8yr / foes: http://tinyurl.com/ckjno5
    2. Re: "For those who need a reminder..." by Anonymous Coward · · Score: 0

      ./whipslash we know it's you. Stop posing as Timothy.

  9. Have an nvidia or Intel GPU? by raymorris · · Score: 4, Informative

    You could try it out
    https://trac.ffmpeg.org/wiki/H...

    1. Re:Have an nvidia or Intel GPU? by Malc · · Score: 2

      I wish Apple would allow/expose Intel QuickSync on OS X. Can't even access this BootCamp running Windows on Apple hardware.

    2. Re:Have an nvidia or Intel GPU? by I4ko · · Score: 2

      It is not apple but the chipset that does not allow you to see the integrated GPU when another GPU is installed. Same for alienware alpha for example.

    3. Re:Have an nvidia or Intel GPU? by Gaygirlie · · Score: 2

      The instructions for using NVENC are wrong, though. NVENC does not support specifying constant rate-factor with -crf, it only does CBR or VBR, and VBR can be done either by specifying bitrates or quantizers. NVENC does work fine, they just need to fix that information to actually show how to use it correctly.

    4. Re:Have an nvidia or Intel GPU? by Shinobi · · Score: 3, Interesting

      On a lot of motherboards you can get around it by enabling both PCI-E and iGPU in BIOS or EFI/UEFI, and then in your OS you add another, virtual, display that is linked to the Intel GPU. Even works with some of the cheaper Sandy Bridge era mobos(and pretty much all the expensive ones from the time) running Windows 7.

  10. list of known FFmpeg license violators by Anonymous Coward · · Score: 3, Interesting

    Like stealing from a Girl Scout

    https://trac.ffmpeg.org/query?...

    1. Re:list of known FFmpeg license violators by Anonymous Coward · · Score: 0

      I'm curious, what recourse is available for dealing with GPL violators?

    2. Re:list of known FFmpeg license violators by Anne+Thwacks · · Score: 1

      Send a personal email to RMS?

      --
      Sent from my ASR33 using ASCII
    3. Re:list of known FFmpeg license violators by Anonymous Coward · · Score: 1

      Most of those "issues" are merely including non-free codecs. They're doing the consumer a favour - a good thing. Your implication is deliberately misleading others by creating the illusion source code is not made available, when it clearly is. Many of those companies even have developer forums to add your own builds to their products with the aid of their own staff. The license change was to prevent TIVOisation, something not the case here. It's the opposite.

      Furthermore, ffmpeg's history isn't exactly clean itself. Which you conveniently ignore to spread your FUD.

    4. Re:list of known FFmpeg license violators by Anonymous Coward · · Score: 0

      You don't need to pretend to know when you can read and know exactly what the owners of FFmpeg, and GPL (and LGPL) in general, require right here:

      https://www.ffmpeg.org/legal.h...

    5. Re:list of known FFmpeg license violators by Anonymous Coward · · Score: 1

      I was surprised at the style of the license violation communication. often snarky and rarely detailed in their objections. Like the licensing is being run by USENET.

    6. Re:list of known FFmpeg license violators by Anonymous Coward · · Score: 0

      Probably run by republicans, and owned by DonaldJTrump.

    7. Re: list of known FFmpeg license violators by Anonymous Coward · · Score: 0

      Show some humanity man. GPL violators are still human beings.

    8. Re:list of known FFmpeg license violators by maestroX · · Score: 1

      > Any Video Converter violates GPL

      I misinterpreted that entry, but on second thought, pretty much any converter I come across is based on it.
      It's not like Joe Neighbour implements a set of decoders in a weekend.

  11. Video Output Quality by Anonymous Coward · · Score: 1

    Is it still the case that decoding with ffmpeg produces inferior video output quality as compared to codecs available on Windows? I remember back in the day (several years ago) people would post detailed screenshot comparisons of ffmpeg output versus things like CoreCodec's CoreAVC to show the inferior video quality on linux, even though the source files were identical.

    1. Re:Video Output Quality by Anonymous Coward · · Score: 1

      CoreAVC means H.264 (aka AVC) I assume. H.264 has bit-exact decoding requirement, so any "quality difference" for decoding is pure bullshit as it would mean at least one it is a completely broken decoder, and due to long reference chains it _would_ result in completely and obviously broken output over time.
      Of course anyone who wants could for example throw a sharpening filter, or frame interpolation, deinterlacing or whatever after the actual decoder (no idea what CoreAVC does), but that is not really the decoder and generally a matter of taste. Also less obvious things like colourspace conversion that is often needed to display the image can easily differ, and it makes a significant difference. FFmpeg has made over the years some effort to make sure the correct conversion method is used, though with the recommended ways to display video that's actually something you have to configure in the graphics drivers.
      Without knowing where the difference comes from it's rather hard to say if it was improved, or even if the part that produced the difference was actually in FFmpeg.
      I know CoreAVC only for being first to support multithreaded decoding, but that is supported in FFmpeg since a long time by now.

  12. Good summary by hackertourist · · Score: 1

    Contains everything I need to know, and links that add more information including the original source of the news.

    1. Re:Good summary by whh3 · · Score: 1

      And, even better, it's this type of headline/information that I want /. to publish. This is news for nerds.

      --
      remove nospam. to email!
  13. -mapmetadata? by Anonymous Coward · · Score: 0

    Using this when trans-coding FLAC to OGG seems to not work

  14. ffserver by ArchieBunker · · Score: 1

    Did they add any kind of authentication to ffserver yet? That's what I'm waiting for.

    --
    Only the State obtains its revenue by coercion. - Murray Rothbard
  15. What a fabulous dev team by dhaen · · Score: 1
    FFMPEG underlies the majority of affordable (and free) video apps, that just seem to wrap a GUI round it. As always though, the power is in the command line.

    Be aware that there is a professional version: FFMBC, for those who need it for serious work.