Slashdot Mirror


Searching for a Realistic MPEG-4 Solution?

gmezero asks: "Over the last year I have been listening to the trumpet of MPEG-4 being sounded, and I am eager to take up the charge and implement it within my company for our corporate communications. In the past we have used MPEG-1 because to it's commonality. However, due primarily to size limitations (among many other issues that have evolved over the last year), I am getting pressure to move us to WMV for it's perceived 'compatibility' as all of our staff have Media Player on their systems. Unfortunately, nobody seems to realize the fact that WMVs may be Media Player version dependent as well and lock us into future upgrade issues. I can not demand for our GIS group to roll out a stand alone player (eg: DIVX), and I am getting down to a deadline of next week to finalize this platform selection. My pitch to sell MPEG-4 within my company boils down to one major issue, and that brings me to my question. How do I create a MPEG-4 file that will be player independent, short of the player pulling down a new codec for their existing installed media player (QT, WMP, Real)?"

7 of 40 comments (clear)

  1. QuickTime Pro H.264 by Anonymous Coward · · Score: 3, Informative

    I recommend purchasing QuickTime Pro and converting your files to H.264 (MPEG-4 part 10). It's a standard and provides wonderful quality for fast-moving transitions. Also, once you move to a QuickTime container, you'll be able to move to future formats without a problem in the future using QuickTime Pro (I have old videos from a camera that Mplayer can't even decode). QuickTime player is also free of charge and Linux users can use Mplayer.

  2. It all depends on the codecs available by Burz · · Score: 4, Informative

    However if you want to generate "plain plain" MPEG4, then you can have ffmpeg do it. You can get it from Sourceforge. Just make sure to specify an output file with ".mp4" extension.

    Variants of MPEG4 are DIVX, XVID, MSMPEG4 and I think H.264. In some cases they are competely interchangeable for playback if you change the FOURCC tag at the beginning of an AVI file, for instance. You caan do this with transcode's "avifix -F" command. Many players react badly to "MP4" tagged AVI files for some reason, yet all of them apparently have no problem with "DX50" (which is DIVX) so I often change those MP4 AVI files to DX50.

  3. Be careful of the royalties by cookd · · Score: 3, Informative

    While MPEG-4 is cool and all, don't forget that in many cases you have to pay royalties to use it. This is often above and beyond what you paid for the encoder and the player. The MPEG-4 codec is covered by patents and is NOT public domain.

    WMV is not (currently) subject to any content royalties as long as you're using a licensed encoder and player. And it comes pre-installed with Media Player 9 or later, and is available for earlier players in a simple codec pack.

    OGG is probably free of all royalties, but comes with its own installation and distribution complexities.

    --
    Time flies like an arrow. Fruit flies like a banana.
    1. Re:Be careful of the royalties by Anonymous Coward · · Score: 1, Informative

      "While MPEG-4 is cool and all, don't forget that in many cases you have to pay royalties to use it."

      And those cases are? If you make money off of it, the licensers want a cut. The guys that created this technology. I see nothing wrong with that, especially with clauses like:

      What if my product is based on open source?
      If the product contains AVC functionality, it is subject to the royalty irrespective of the licensing model for the source code contained within the product. However, you may be eligible for the Threshold Royalty Free License.

      http://www.vialicensing.com/products/AVCH264VC/lic ense.terms.html

      If I'm making the kind of money that meets the threshold, I *SHOULD* be paying for the development of this...and if I'm doing it as opensource, they pretty much look the other way (so long as you get licensed first...which should also protect you in the future in case they decide to change their mind).

  4. realistic? by Ahaldra · · Score: 2, Informative
    What is a "realistic" solution? I wasn't able to glance any parameters from your text (encoding quality requirements, computer speed and graphics constraints etc.)
    I have no clue wether or not this is standard behaviour, but my windows friends can play my quicktime encoded home videos (in mpeg 4 format, encapsulated with .mp4, not .mov) just fine - So at least their windows is 100% mpeg-4 compatible. mp4 files can be played on all the players, after all it is an industry standard and that is the whole point of having one.
    On the other hand have I yet to find a wmv that plays well on my mac. And you can tell your bosses that the guy from the intarnets said although the Windows media player exists on other platforms, at least on the mac it is an annoying piece of crap.
    As for a solution: I would take a good long look at the vlc streaming server, which not only offers raw data streaming but also extremely good transcoding options. take a look here what it has to offer. Even the single client can stream or transcode to any location, including files.
    One question remains: did you even bother to encode an mp4 file with quicktime and try to play it in every player before posting to slashdot? You know "that guys from teh intarwebs forum told me (X) therefore you must believe me (Y) is true" is not a very convincing strategy if you want to make a pitch. Show them you did actually work on it ;-)

    --
    Code is Speech. No to Censorship.
  5. H.264 by BrookHarty · · Score: 2, Informative

    http://en.wikipedia.org/wiki/H.264.

    I think people are right when they say H.264, HDDVD and Blue ray will both use it, use quicktime pro, and your good to go for all platforms, even video ipod and psp.

  6. Compatibility Information by agraupe · · Score: 2, Informative
    I had a similar problem recently, with the exception that I do this strictly as a hobby. To be MPEG-4 compliant (and thus able to play on all MPEG-4 players), you must have a compliant codec (the easy part: XviD or DivX will do fine) in the MPEG-4 container format. This is the major sticking point I found using mplayer, as the support for the mp4 container is problematic currently (playback works, as does encoding with -oac copy -ovc copy, but it cannot do it while encoding). FFMpeg might work, but I've had problems with it in the past. There are also some other MPEG-4 related OSS programs like MPEG4IP that I haven't tried. Commercial solutions such as Quicktime Pro should handle it with no problems.

    In terms of codecs, something like XviD or DivX will probably be your best bet, along with either AAC or MP3 audio. The reason for this is that the MPEG-4 standard has many different parts, and not all players are required to support all parts. Most players will support, at the very least, Advanced Simple Profile video, which is what XviD and DivX are compliant to (MPEG-4 part 2, if you're interested). AAC is the "official" audio codec of the MPEG-4 standard, although most, if not all players will support MP3. I'm not sure how WMP (Windows Media Player) supports AAC (or any part of MPEG-4) by default. H.264 video (MPEG-4 part 10) is also part of the standard, but is less supported and more CPU intensive. OSS support leaves a bit to be desired, although mplayer currently supports it fairly well if you aren't afraid of compiling from CVS. As far as playing the resulting videos, I know mplayer can do this with no trouble, even as far back as the last stable version, although I'm not sure if WMP can handle it. Quicktime Player, obviously, supports H.264 playback with AAC, and Quicktime Pro will encode it with no trouble. I'm not sure about WMP support, but H.264 definitely has higher playback requirements in terms of CPU power.