10.8 and AC3 MKV

Is there a fix yet for the bug that Movist, Quicktime, etc. can't play audio in AC3 MKV files on 10.8, even with perma-orphaned Perian installed?

Stop your knee from jerking, because "Use VLC" is unacceptable; my workaround of "have a cron job to recode everything to AAC MP4 before watching it" is superior to using that piece of Linux perma-shit.

That workaround would be less annoying if HandbrakeCLI didn't peg all 8 of my cores when transcoding, even when niced.



Update: Every single one of you who chose to interpret "do not suggest VLC" as your cue to engage in banter about VLC has been added to my killfile.

So thanks for that. It's good to get that out of the way and know that I can preemptively ignore you in the future.

Tags: , , ,

37 Responses:

  1. I'm gonna go ahead and risk it: you should check out MPlayerX. It's no Quicktime in terms of usability, but nevertheless it's a perfectly good video player, and it's inifinitely better than, excuse my french, VLC.

    • Laco says:

      +1 for MPlayerX. I'm very new to OSX, but it's the only player I've found so far that isn't utter crap. The fact that the developer's given up on the app store just makes it better.

  2. Eric TF Bat says:

    Is VLC just shite in the Apple version, or is the shititude universal? I must admit I hadn't noticed much of a problem with it, but I watch torrented TV shows and not much else so I'm not your average super-user. Can I invite you to rant at length about its flaws, just to enlighten me? You know, since your time is worthless and all...

    • Lun Esex says:

      If you find running X11 apps on Mac OS X under X11.app (deprecated) or XQuartz to be a perfectly acceptable way to get work done, then you're likely to think there's nothing wrong with VLC on Mac.

      On a different platform the same experience as that of using VLC on Mac is known as "running a program." On Macs this kind of experience is known as "wading through shit."

      Comparative shit depth scale on Mac (IMHO):

      X11 apps - neck deep
      Java apps - chest deep
      Adobe Air apps - knee deep
      VLC - waist deep

      YMMV, void where prohibited, etc. etc.

      • Marcello says:

        I might be misunderstanding what you're saying, but i don't recall needing X11 to run VLC on mac os X. it runs just like any other app.

        on the other hand, just like Eric TF Bat says above i find using VLC for everyday use (watching torrented movies and tv series, definitely not the stuff our kind host needs to do) perfectly acceptable. the only real problem i ever encountered was with 720p mkvs skipping frames on a 5 years old macbook pro and i solved that with a 5 minute search on google and one setting changed.

        i'm not saying you're wrong in considering VLC utter crap ;) i'm just curious to know what makes you think so, considering my experience with it is so different from yours.

        • Lun Esex says:

          Yes, you are misunderstanding. I wasn't saying VLC requires X11, I was only talking about the general experience of running VLC on Mac.

          Putting it another way: If you think there's nothing wrong with the experience of using VLC on Mac, you might get a kick out of the wide world of fine programs available that run under X11 and JVM.

          Yet another way it could be said is that VLC on Mac is simply a filthy animal lacking in personality.

          There used to be a web site called the User Interface Hall of Shame at http://www.iarchitect.com/. If it hadn't died before VLC became a thing (around 2001), VLC would have been an ideal candidate for one of their dressing downs. Their critique of Lotus Notes was legendary.

          • Chris D says:

            I use native VLC on the Mac all the time. I double-click on a video, regardless of format, and the video plays. I hit space bar, it pauses. It's fantastic.

            It looks and feels nothing like X11 or JVM GUI apps on OS X (either for speed or ugliness). What's the grudge about?

            • Patrick says:

              It used to be a lot more of a shovelport, I'll agree that they've made huge strides in native elements in the past year or two. But the initial port was some serious Linux Nerd UI which didn't compare favorably to Perian or Movist or MPlayerX or any of the other native apps.

    • Ian says:

      It depends on what you want to do with it.

      For playing individual files, I find it copes better with more formats than many on Linux, but as a general media player... what sort of idiot program writes out playlist files which it cannot read itself?!?

      I'm sure that there are lots more reasons to hate it.

  3. Usef says:

    Not sure if you consider it an option, but they work for me in the Mac App Store version of Movist. The open source edition hasn't been updated since 2010 (when they moved it to the store and made it closed source).

    • Usef says:

      Although note that they overhauled the UI in the closed-source edition, which introduced many bugs and has never felt as light-weight as the earlier versions. It has improved, and I still prefer it to the other players, but I'm hesitant to make any recommendations.

    • jwz says:

      I didn't realize there was an app-store version. Are there any useful differences between the two beyond, apparently, "we screwed up the settings window"?

  4. Lun Esex says:

    As a solution for the annoyance of the workaround, MP4tools can be used to split AC3/H.264 MKV files, transcode only the AC3 audio track to AAC audio, then re-mux that with the non-transcoded H.264 video track into a standard MP4 file. It takes a fraction of the time and CPU needed to re-transcode the already H.264 video track. The registered version can be set up so that it'll auto-process any new files added to a designated watch folder. I'm not sure about how scriptable for automation it is beyond that, but that might be all you need.

    I've used the non-registered version manually and found it works pretty well. It'll even mux subtitles into MP4 files properly from embedded MKV subs or .srt files.

    FWIW, I share your sentiment about VLC. I find the experience of going MKV -> MP4tools -> plays-even-without-Perian in QuickTime/iTunes/whatever to be far superior.

    It's still a hack, but then we're talking about video formats here, so...

  5. sat says:

    I use subler, which can change the container format to m4v without transcoding. It's much faster than using handbrake.

  6. I'll join to the MplayerX recommendations.

  7. foo says:

    That workaround would be less annoying if HandbrakeCLI didn't peg all 8 of my cores when transcoding, even when niced.

    I first thought I could suggest the use of some form of CPU affinity, however it seems OSX has no support for this:
    http://erlang.org/pipermail/erlang-questions/2012-September/069241.html

  8. Felix says:

    ... What if I told you to stop using OS X?

  9. Chris D says:

    I work for a video encoding company and we use native VLC on OS X to play all kinds of weird shit customers send us. (Negative timestamps? No problem!) Calling an OS X app "Linux perma-shit" makes it a little hazy what your issue with it is.

    But, since you like pain, can you use ffmpeg instead of HandbrakeCLI?

  10. Russell Borogove says:

    Are you observing responsiveness problems with Handbrake? Because a compute-intensive process should peg all your cores even when niced -- it's not like you can save those clock cycles for later.

    • Patrick says:

      Yeah, I've got to say that the i7 in my iMac still manages to stay surprisingly responsive even while Handbrake is happily running all 8 cores to full throttle. I could even play games while Handbrake was running. Kind of like how the Core2Duo made MP3 ripping entirely painless, the i7 line finally made video encoding entirely painless.

      Do you have a sample file? I thought it was more like how almost every single music video file I lay my hands on seems to have the audio mixed to 300% so it's always clipping until I bring down the level in the app to whisper levels for every other movie, but a pass through handbrake never seems to fix that either.

    • jwz says:

      Yes, it makes my i7 iMac damned near unusable. Hypnowheels everywhere. I assume this is because Grand Central somehow bypasses "nice" and starves everything else.

      • Patrick says:

        Hrm, my Handbrake did that when it was missing dvdcss, IIRC. Really shitty error handling, basically. Does it work otherwise? Mine just went to the land of SPOD and never came back until I clicked on that little obscure library option.

  11. billywilly says:

    VLC 2.04 on my MacBook Air with Mac OSX 10.7.5 runs like a champ and required no explicit installation of dependencies to install. Did you do something weird to your computer?

    • protospork says:

      Even if he did (and even if he was complaining about VLC's functionality instead of its awful, cryptic UI), why can't VLC cope with it? Why should he need to "fix" whatever he did to his computer in order to run VLC when every other video player is reasonably fine?

  12. David Kendal says:

    ffmpeg would seem to be what you're looking for: it has a -threads option that will restrict its parallelism.

    You do seem to need to pass it twice, though, once for input and once for output:

    ffmpeg -threads 1 -i example.mkv -threads 1 example.mp4

  13. skreidle says:

    On a related note, I'd love to find a quick and easy route to a) beat sense in to people sharing torrents as .mkv that won't play via iTunes/AppleTV, or b) convert from .mkv or .avi to .mp4 (so that they'll play over AppleTV.)

    • jwz says:

      There's no "quick" when it comes to transcoding, but my video-replaygain.pl is... easy-ish? If you just want to transcode the audio track: "video-replaygain.pl --force file.mkv". If you want to transcode video too, add --video. Requires ffmpeg, lame and HandBrakeCLI 0.9.5 or newer.

      Read the comments to feel my pain.

      I run it from cron:
      cd Movies && find . -name '*.mkv' -print0 | nice xargs -0 ~/www/hacks/video-replaygain.pl --force --video --trash

      • ... | find . -type f -name ...

      • Ryan Davis says:

        I was using SublerCLI but I've started to come across mkv's that have audio that needs transcoding. I've not tried it yet, but there is a -downmix flag for SublerCLI that might do the trick.

        If you do find something that works for you, can you please post a followup so I don't have to read through all the VLC trolling? Thanks in advance.

  14. Aaron Wilson says:

    I put the linked a52codec.component found here in ~/Library/Audio/Plugins/Components/ and now my Quicktime (and iTunes) can play AC3 audio tracks. I use the "Stereo" option in Perian, though. It seems this fix won't give you 5.1 (although I can't confirm that).

    • jwz says:

      Where did this component come from? I'm not super enthused at the idea of installing software whose provenance is "I found it on some anonymous dude's Dropbox".

      • Aaron Wilson says:

        Someone asks the very same question in the comments on the linked page. "admin" (the original poster) responds with "Hi, Peter. Thanks for your comments. I did not recompile the code. The code is recommended to me by Subler." Not a very specific reply. Perhaps he's referring to the mp4 muxer?

        You know as much as I do, I just thought I'd provide the link.