Beta
×

Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

Before you choose to head back to the Classic look of the site, we'd appreciate it if you share your thoughts on the Beta; your feedback is what drives our ongoing development.

Beta is different and we value you taking the time to try it out. Please take a look at the changes we've made in Beta and  learn more about it. Thanks for reading, and for making the site better!

Searching for a Realistic MPEG-4 Solution?

Cliff posted more than 8 years ago | from the media-player-independence dept.

Media 40

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)?"

Sorry! There are no comments related to the filter you selected.

first post (-1, Offtopic)

Anonymous Coward | more than 8 years ago | (#13954412)

fp woooooh

Re:first post (-1, Offtopic)

c0d3h4x0r (604141) | more than 8 years ago | (#13954440)

Don't you think this "first post" bullshit is getting a little old and immature? Why not try for "last post" instead? It would at least be a change of pace.

Re:first post (-1, Offtopic)

Anonymous Coward | more than 8 years ago | (#13954459)

Don't you think this "first post" bullshit is getting a little old and immature?

nope.

OGM maybe (1, Interesting)

Anonymous Coward | more than 8 years ago | (#13954435)

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.

Re:OGM maybe (-1, Flamebait)

Anonymous Coward | more than 8 years ago | (#13955151)

Why is it that whenever someone comes along who is looking for a real-world video- or audio-solution, along comes some ogg/ogm-monkey who drools his bullshit all over the thread?

Could you please stop this? People don't want the possibly 7th best codec, they want industry-standards like MPEG or WMV.

Re:OGM maybe (0)

Anonymous Coward | more than 8 years ago | (#13955394)

OGM is a container format not a codec dumbass.

Re:OGM maybe (0)

Anonymous Coward | more than 8 years ago | (#13957119)

OGM?!?!?! OMG!!!!11

New Container format maybe? (1)

LWATCDR (28044) | more than 8 years ago | (#13967026)

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 (3, Informative)

Anonymous Coward | more than 8 years ago | (#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.

Re:QuickTime Pro H.264 (1)

Guspaz (556486) | more than 8 years ago | (#13958622)

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 Apple PCs should be able to play it with similar requirements to Windows PCs.

It all depends on the codecs available (4, Informative)

Burz (138833) | more than 8 years ago | (#13954621)

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.

Re:It all depends on the codecs available (0)

Anonymous Coward | more than 8 years ago | (#13955235)

Since he wants it for commercial use, he shouldn't go get it on Sourceforge. Or that Sourceforge site will disappear.

Re:It all depends on the codecs available (2, Interesting)

gmezero (4448) | more than 8 years ago | (#13957219)

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!

Re:It all depends on the codecs available (1)

Burz (138833) | more than 8 years ago | (#13957358)

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!

Be careful of the royalties (3, Informative)

cookd (72933) | more than 8 years ago | (#13954624)

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.

Re:Be careful of the royalties (1, Informative)

Anonymous Coward | more than 8 years ago | (#13954825)

"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 [vialicensing.com]

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).

Re:Be careful of the royalties (1)

cookd (72933) | more than 8 years ago | (#13956023)

Sure. Its just something to keep in mind when selecting the technology - what is it going to cost me?

Re:Be careful of the royalties (1)

Sentry21 (8183) | more than 8 years ago | (#13958333)

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 would rather pay for MPEG4 than use WMV for free.

Re:Be careful of the royalties (1)

cide1 (126814) | more than 8 years ago | (#13964680)

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 open at a time, and that one copy has no way to queue the next movie.

It just makes me mad everytime I have to use it, but because of conversations like this, people need a cross-platform video solution, and MS makes this piece of shit just to say it is cross-platform.

QT.. (3, Interesting)

_LORAX_ (4790) | more than 8 years ago | (#13954841)

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? (2, Informative)

Ahaldra (534852) | more than 8 years ago | (#13954944)

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 ;-)

Re:realistic? (1)

gmezero (4448) | more than 8 years ago | (#13957206)

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 has provided optimal performance/quality in the past for our audience.

As for clients, they are pretty much all over the map and can be anything from a P2/400 up to a P4/2.4. Mostly standard corporate workstation models.

if anyone actually sees this due to my karma.. (1)

chalkoutline (854917) | more than 8 years ago | (#13954983)

"because to it's commonality" man, who edits this stuff?

What about MPEG-2 (1)

CableModemSniper (556285) | more than 8 years ago | (#13955354)

Why not just use MPEG2? Doesn't practically everything play MPEG2? How long are this GIS videos you are creating anyway?

Re:What about MPEG-2 (1)

revmoo (652952) | more than 8 years ago | (#13956816)

You have to pay a license to use mpeg2
This is why you cant play dvd's in WMP until you install a dvd decoder.

Re:What about MPEG-2 (1)

gmezero (4448) | more than 8 years ago | (#13957175)

Anywhere from 5 minutes to 2 hours. And we do use MPEG2 for DVD distributions of the content within the company.

Can't we all just get along? (1)

Anonymous Cowdog (154277) | more than 8 years ago | (#13955379)

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 standard?

Re:Can't we all just get along? (0)

Anonymous Coward | more than 8 years ago | (#13955714)

Distributing digital video means compressing it. And it will always be lossy compression. That means that there will always be compromises. I'm glad that there is choice and we're not stuck on one standard. There is always room for improvement, evolutionary (i.e. updates to existing codecs) as well as revolutionary (completely new ones).

H.264 (2, Informative)

BrookHarty (9119) | more than 8 years ago | (#13955872)

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 (2, Interesting)

Wildclaw (15718) | more than 8 years ago | (#13955998)

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 is becoming somewhat outdated, which can cause problem with modern codecs.

If you actually had some possibility to install something I would have recommended Videolan. A single stand-alone platform independant player that doesn't use external codecs but instead includes its own. A player like that should be easy to support and cause minimum codec problems. 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.

Ok, time to quite dreaming. The video codec market is a patent minefield so it practically impossible for a commercial entity to use open source video tools in USA. Good look with wmv :)

Re:Mission Impossible (1)

Hast (24833) | more than 8 years ago | (#13960094)

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.

Re:Mission Impossible (0)

Anonymous Coward | more than 8 years ago | (#13961585)

I'm surprised no one has mentioned the MPEG4 container. It is a good option and supported by many players. I think the best solution us to use QT Pro to make a AVC/AAC video and passthrough into a MPEG4 container. Or you can use MPEG4IP, x264, and FAAC to do the same exact thing (or use Xvid for MPEG4 video).

.mov and .mp4 are dialects of the same thing (1)

tepples (727027) | more than 8 years ago | (#13976227)

I'm surprised no one has mentioned the MPEG4 container.

Anybody who mentioned .mov (the QuickTime container) has already kinda-sorta mentioned the MPEG-4 container [wikipedia.org] , as any program that reads one can easily be adapted to read the other.

Re:Mission Impossible (1)

mcbridematt (544099) | more than 8 years ago | (#13961813)

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) or ffmpeg H264 and an Ogg sound track.

(little hint: The quantinizer setting is king for ffmpeg H264. If you can master it you won't get a constant bitrate file for streaming, but the movie won't be too far above your desired rate at any time. Forget constant bitrate with ffmpeg/x264 H264. It sucks. Big. You'll regret trying to use constant bitrate)

If I want I can throw subtitles (and other text data, YEnc'ed gentoo isos, kitchen sink, ascii goatse blah blah blah) in too with little pain, or another video stream, another audio stream, whatever. Later on I'm going to try and encode TV into MPEG4 (h264 would be good but encoder requirements for real time are too high), encode audio into ogg and stream TV. DVB-T quality on 802.11b? Possible in my opinion.

VideoLAN plays it just fine, On windows "The Core Media Player" is slightly better, being made by the guys at CoreCodec who defined Matroska. Mplayer on any platform is the best, I'm a little unhappy with the Mplayer front ends on windoze though.

P.S Forget MPEG2. You owe the MPEG LA big money to use it. Quicktime wants your money if you want to play it, regardless of the fact that support is in the OS.

Ogg is a container too (1)

tepples (727027) | more than 8 years ago | (#13976237)

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?

Compatibility Information (2, Informative)

agraupe (769778) | more than 8 years ago | (#13966294)

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.

recommend quicktime (1)

michaelbuddy (751237) | more than 8 years ago | (#13966760)

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 other formats.

I thought there was a way to stream the same video file, but the user could pick the format container to play it, so the server would some how stream the correct file, or change it's format on the fly. I'm thinking the former.

If you want to try some of that, get VLC.

3ivx? (1)

dJOEK (66178) | more than 8 years ago | (#13968006)

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.

Re: XviD (1)

EddyPearson (901263) | more than 8 years ago | (#13970148)

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 ;)

JVM (1)

tepples (727027) | more than 8 years ago | (#13976247)

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.

Check for New Comments
Slashdot Login

Need an Account?

Forgot your password?