Forgot your password?
typodupeerror
Media

Searching for a Realistic MPEG-4 Solution? 40

Posted by Cliff
from the media-player-independence dept.
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)?"
This discussion has been archived. No new comments can be posted.

Searching for a Realistic MPEG-4 Solution?

Comments Filter:
  • OGM maybe (Score:1, Interesting)

    by Anonymous Coward
    I have the same problem. There aren't that many good solutions. I have found Xvid to be the best mpeg4 codec but finding a good container format has been very hard. The OGG media container seems to be really good. It handles subtitles and alls sorts of stuff. I can't find any good encoders that can output ogm though. I wish mencoder would do it instead of the awful AVI format.
    • I just had to wonder if some machine/os independent way couldn't be found to include the codec with the media? You could include the actual play back codec as a type of idealized byte code with the media. Before play back it could be translated into a native codec and cached to speed up future playback. Not likley to happen but it would be handy.
  • QuickTime Pro H.264 (Score:3, Informative)

    by Anonymous Coward on Friday November 04, 2005 @07:51PM (#13954509)
    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.
    • Using QuickTime is just as bad as using WMV, since it locks you in to ONE player. I would imagine it's not an option.

      I'm going to go ahead and say that using ISO MPEG-4 in an AVI file format is probably as platform neutral as you can get. Most MPEG-4 supporting hardware should be able to read it (DVD players), most Windows PCs with DivX, XviD, ffdshow, etc, should be able to play it (Perhaps even using Windows built in MPEG-4 codec? The one that became DivX 3?), and linux box should be able to play it, and
  • by Burz (138833) on Friday November 04, 2005 @08:05PM (#13954621) Journal
    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.
    • Ah! I think this may be exactly what I was looking for to test with. I would be the only person pulling down the encoder, so I don't see that this would impact what the project is doing. Especially if it truely gives me an plain vanila MPEG4 file that will load under all of the primary players.

      Thanks!
      • Considering the pressure you're under: The most universally-playable mp4 'subformat' I've seen for the AVI container is what ffmpeg calls "msmpeg4v2". The FOURCC tag for this is "MP42". Oddly, not that many players seem to support plain .mp4 files, though I haven't tested this in WMP since I am a Mac/Linux person. The AVI/MP42 combination plays fine in VLC, Mplayer, Xine and QuickTime... and the subformat originates from MS so I'd bet WMP handles it no problem.

        Good luck!
  • by cookd (72933) <douglascook@junoTIGER.com minus cat> on Friday November 04, 2005 @08:06PM (#13954624) Journal
    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.
    • by Anonymous Coward
      "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
    • 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.

      And cannot be played on Linux without using the Windows .dll files, and cannot be played on OS X unless you use Windows Media Player for Mac, which is the single worst media playing application I've ever used on any platform.

      Please, please don't use WMV, or you'll be locked in. I wou
      • Allow me to second how horrible Windows Media Player for Mac is. Is there any reason they don't use hardware acceleration? It is a perfect example of typical microsoft, it works just good enough to say it exists, and no better. On Windows you get playlists, CDDB, and hardware acceleration. On Mac I get a window where I have to click on the exact pixel on the progress bar to jump to a later part, it looks nothing like the rest of my desktop, and takes forever to start up. I can only have one copy of it
  • QT.. (Score:4, Interesting)

    by _LORAX_ (4790) on Friday November 04, 2005 @08:39PM (#13954841) Homepage
    can play mp4 out of the box. Just remeber to tag your files as FOURCC mp4v ( -vtag mp4v under ffmpeg ). You can also transcode .avi files to .mov with the -vocdec copy -vtag mp4v -acodec copy -f mov under ffmpeg as well.

  • realistic? (Score:3, Informative)

    by Ahaldra (534852) on Friday November 04, 2005 @08:53PM (#13954944) Homepage
    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 [videolan.org], which not only offers raw data streaming but also extremely good transcoding options. take a look here what it has to offer [videolan.org]. Even the single client can stream or transcode to any location, including files [windley.com].
    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 ;-)

    • Well I have done test videos using the DIVX encoder and the WMP9 MPEG-4 export codec under Premier, but both of those leave me tied to a specific viewer. I haven't tried Quicktime Pro yet, and I think I will have to do that later today.

      My distribution platform is a Cisco CDN/CE delivery infrastructure that is setup to stage videos out at each branch so that watching the videos doesn't impact business traffic on the LAN.

      To date with MPEG-2, I've been using 320x240, 400kbps video, 32k/128-bit audio as that ha
  • Why not just use MPEG2? Doesn't practically everything play MPEG2? How long are this GIS videos you are creating anyway?
  • I'm an outsider to the world of video codecs, but it seems like it doesn't have to be as hard as it is. Why is it that every third video file breaks ALL the video player clients I have installed? And why is it that whenever a player like Realplayer tries to download a new codec, it always fails? And why are codecs upgraded so often? So many questions, but it truly does boggle the mind that something can possibly be this hard to get right. What is stopping the industry from standardizing on one interoperable
  • H.264 (Score:3, Informative)

    by BrookHarty (9119) on Saturday November 05, 2005 @12:11AM (#13955872) Homepage Journal
    http://en.wikipedia.org/wiki/H.264 [wikipedia.org].

    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.
  • Mission Impossible (Score:2, Interesting)

    by Wildclaw (15718)
    You want to use a new and better codec, but you aren't allowed to download a new and better codec, and neither are you allowed to choose the player they use? And you aren't allowed to install anything? You are basically screwed, more screwed and yet again screwed. Did I mention that you are screwed.

    I would avoid wmv, rm and mov like the plague. They are all properitary container formats. For a container format use you are probably stuck with avi. It is supported by most players. It's main problem is that it
    • I second the recommendation of Videolan. It has added benefits of being minimal (I hate GUIs that take up more room than the movie being played) and low system requirements. Often I find that a computer that struggles with WMP or QTP can handle VLAN just fine.
    • An avi or mkv container with an mpeg-4 codec (xvid, divx, etc.) and aac or mp3 for sound should work perfectly in Videolan and you wouldn't have to worry about having trouble playing it in the future.

      The good thing is that you can use ogg in matroska (mkv), which you can't in avi. Which will save you a lot of bandwidth in the audio department.

      Matroska is a pretty flexible container format. Myself, I use the 3ivx mpeg4 encoder (for videos which need to be played on lower end hardware, i.e palmos handhelds) o
      • The good thing is that you can use ogg in matroska (mkv), which you can't in avi. Which will save you a lot of bandwidth in the audio department.

        Ummm... can't you use Ogg Vorbis or Ogg Speex audio in Ogg container? Or does Ogg container limit what video codecs you can use?

  • by agraupe (769778) on Sunday November 06, 2005 @09:54PM (#13966294) Journal
    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.

  • I recommend using quicktime and using the H.264 codec if you need to really shrink your files.

    You can also do this. Buy sorenson squeeze 4.1 and run your videos through the queue where you will encode a quicktime AND an AVI, or Mp4 and even a .swf file on the short movies.

    Then you can deliver all of the ways you want to, and in case of the swf files, you can buy macromedia's swf server stuff to make everything easier for mac and windows people. Can't speak for linux people there, but they can handle the ot
  • by dJOEK (66178)
    i like www.3ivx.com as my mpeg4 compliant codec. once you have that installed, it'll play in WMP too
    works on all platforms, fast, easy, gives good results.
  • Personally I'd go with xvid, its open sourced so they'll be no surprises and i've found it very easy to rollout in the past.

    This subject actually touches on something i was daydreaming about the other day. It'd be nice (but of course HORRIBLY insecure :p) to be able to optionally embed the "codec" into a bit of media so as to avoid all these annoying FourCC tag hacking issues.
    Let just wait for the MPEG-5 standard hey ;)
    • by tepples (727027)

      It'd be nice (but of course HORRIBLY insecure :p) to be able to optionally embed the "codec" into a bit of media so as to avoid all these annoying FourCC tag hacking issues.

      With the performance of virtual machine technologies such as JVM and CLR catching up with that of native code on many platforms, this just might happen soon, and in a reasonably platform-independent and safe way.

Do you suffer painful illumination? -- Isaac Newton, "Optics"

Working...