View Full Version : Problems with video in MP4
RanmaSaotome
7th July 2004, 22:14
I have been trying with no luck to make an encode using the .mp4 format. The problem i get is when i play the file back I get garbage on the screen. I tried encoding with Xvid with & without b-frames but still the same error. The files play fine outside the container but as soon as it gets muxed in the garbage appears. I used graphedit & the 3ivX muxer to put the file together, and i also tried using mp4UI & just mp4creator on its own all produce garbage on screen. I'm using the lastest build of XviD & the new version of FFDShow for playback. Does anyone know where i'm going wrong?
I think this will be the container to use in the future once more software supports it.
hyper84
8th July 2004, 04:25
Well, I don't really know what method you are using. Perhaps you can give more detail? First of all, if you are going for .mp4, you should avoid packed bitstream (as you no doubt already know, just making sure;) ). What I do is use gordian knot .31 alpha with xvid 1.0.1 and oagmachine. After creating a .d2v project w/ GK, I'll encode the audio with oagmachine (that's assuming you have nero aac). Then I'll load the .mp4 audio into GK (just for getting the xvid bitrate, as GK won't do .mp4) After encoding the xvid mp4, i'll merge the audio and video with the latest cvs of mp4box (mp4box .14 won't work with large files). I really try to steer clear of the 3ivx muxer myself as I personally favor mp4box and have had better luck with it. Perhaps this is your problem. Look on this forum at all the mp4box pages to find a short tutorial from bond and a new cvs build.
@RanmaSaotome
as hyper said, u should provide more details . e.g. what do you mean 'garbage' ? so just some hints.
a muxer does not do anything with the video stream affecting its 'playabilty'. imho, your problem is rather decoder related. a present drawback of mp4 that when a video stream has muxed there's no 4cc anymore (it's an avi feature) so the system offers an mp4 decoder quite arbitrarily (i mean, it depends always on the actual state of the system; what's installed, what's the preference oreder, ...) pls, check (& tell us) what decoder is used on playing back mp4. if it's not xvid :
- check how xvid decoder's configured (tick mp4 playback!)
- check how 3ivx decoder's configured (untick all format!)
this way your xvid stream should be played back the same way both from avi & from a (3ivx)mp4.
i know only 3ivx & my mp4 files muxed with it work fine.
with mp4ui i've got only frustration. i'm about to test the new rc2 release but no high hopes.
i've never used mp4creator.
anyway, u should read (if haven't done so far) domm9's guides about this topic.
the bests
y
pls, check (& tell us) what decoder is used on playing back mp4. if it's not xvid :
- check how xvid decoder's configured (tick mp4 playback!)
- check how 3ivx decoder's configured (untick all format!)
this way your xvid stream should be played back the same way both from avi & from a (3ivx)mp4there shouldnt be a problem with using the popular mpeg-4 decoders divx5, xvid, ffdshow, 3ivx...
still of course maybe some exotic one might cause troubles (codec pack?)
Originally posted by hyper84
First of all, if you are going for .mp4, you should avoid packed bitstreamno need to avoid it when you know what you are doing
if you have a packed bitstream, ie a stream encoded with divx5 and xvid with the default b-frames settings, you can only use mp4box or the 3ivx muxer for getting a spec compliant .mp4 files, as packed bitstream is an avi hack not allowed in .mp4 and therefore has to be unpacked during muxing, which not every muxer, like mp4ui or mp4creator, is able to do (i am sure you know this already, but it cant be repeated too often ;) )
Originally posted by yaz
as hyper said, u should provide more details . e.g. what do you mean 'garbage' ? so just some hints.exactly
a present drawback of mp4 that when a video stream has muxed there's no 4cc anymore (it's an avi feature)thats not really correct!
basically there is something comparable to a fourcc in .mp4, but the big difference to .avi is that its the same for all mpeg-4 video streams ("mp4v", as defined by the mpeg-4 standard)! why? because they are compliant to each other anyways, so why using different fourccs?
imagine using something like different fourccs for mp3 streams encoded with different mp3 encoders! would this make sense? no
SeeMoreDigital
8th July 2004, 17:50
Hi RanmaSaotome, welcome to the forum.
There's really nothing more I can add except would you like to try an short MP4 file, that's known to have been encoded correctly?
If so, just ask!
Cheers
RanmaSaotome
8th July 2004, 19:50
It says it's using the 3ivX video decoder... i unchecked all the boxes, & checked the ones in the XviD decoder but it still says its using the 3ivX video decoder. I assume that this is the problem with it but i don't know how to turn it off.
In answer to the other questions.
I don't use codec packs.. i have oggds, 3ivX, & XviD installed
I uninstalled OGGds & Rebooted & it wasn't that.
The 'garbage' displays as blue & green artifacts smearing the screen on panning shots.
@seemoredigital,
thanks for the welcome
neo75903
9th July 2004, 13:02
You will need to tick the "allow Unsupoorted Decoders" in "3Ivx D4 Media Splitter" tab.
For compatibility reasons, it is also good only to use Simple Level 3, This profile plays fine in most .mp4 players.
You will ofcoz have to pay with a bit of quality loss compared to Advanced profile. But is is a good middle between compatibility/quality.
SeeMoreDigital
9th July 2004, 14:23
Originally posted by neo75903
You will need to tick the "allow Unsupoorted Decoders" in "3Ivx D4 Media Splitter" tab. Not necessarily. I've found that as long 3ivX is installed after say Nero's Recode2 (and their DS filters) everything should work OK.
Personally I don't have any decoder preferences checked with any decoder filter!
Originally posted by neo75903
For compatibility reasons, it is also good only to use Simple Level 3, This profile plays fine in most .mp4 players.
You will ofcoz have to pay with a bit of quality loss compared to Advanced profile. But is is a good middle between compatibility/quality. Well, yes and no!
Simple Profile Level 3 = No GMC, Qpel and B-VOP's, so yes they should work in all Mpeg4 stand-alone players.
But my advice to you is to read up about any prospective stand-alone before buying one. As some can even spin anamorphic AVI's, multiple B-VOP's and Qpel now!
And neo75903, please don't use the expression ".mp4 players" - MP4 describes the container and not the video stream.
Cheers
Originally posted by neo75903
For compatibility reasons, it is also good only to use Simple Level 3, This profile plays fine in most .mp4 players.the only .mp4 player not being able to handle advanced simple profile is quicktime
so if you dont aim at using quicktime there is not reason to follow simple profile
RanmaSaotome
9th July 2004, 18:11
You will need to tick the "allow Unsupoorted Decoders" in "3Ivx D4 Media Splitter" tab
I have done, now it won't play at all, WMP closes as soon as I open it now. I have unchecked all the boxes again & it plays (with garbage).
I won't give up though, I will sort this out (or someone else will sort it for me.)
to avoid crappy players kicking in during testing (and wmp9 is a crappy player) always use graphedit (http://www.doom9.org/Soft21/Filters/graphedit.rar) for testing
SeeMoreDigital
9th July 2004, 18:59
Originally posted by bond
to avoid crappy players kicking in during testing (and wmp9 is a crappy player)... Agreed!
You could also try MediaPlayer Classic if you think you're going to struggle with GraphEdit.
But correct me if I'm wrong. When installing 3ivX, doesn't it favour playback using the old version of Windows Media Player (v6.4.09.1128)? This should work ok, it has been with everything I've thrown at it!
Cheers
RanmaSaotome
9th July 2004, 19:03
@Seemoredigital i tried it in MPC & it has the same problems as WMP 7 & 9
Nope... graphedit crashes too at the same point as wmp9 when using the Xvid decoder (yes i got it working.) But i still get the garbage from the 3ivx decoder.
the graph went.
test.mp4------>3viX Media Spliter----->3ivX Video Decoder--->Video Renderer. (Creates Garbage)
OR
test.mp4------>3ivx Media Spliter----->Xvid Video Decoder--->Video Renderer. (Won't load)
I got the following from the error report.
AppName: graphedt.exe AppVer: 9.0.0.400 ModName: xvidcore.dll
ModVer: 0.0.0.0 Offset: 00049b18
SeeMoreDigital
9th July 2004, 19:13
RanmaSaotome,
Please try this XviD in MP4 'video only' file (http://homepage.ntlworld.com/seemoredigital/PAR_crop_tests.zip) and report back?
There are actually two encodes in the .zip folder. One .AVI the other .MP4
Cheers
RanmaSaotome
9th July 2004, 19:52
Well i'm stumped...
The test file you put up works fine in xvid, but mine won't, guess its back to the drawing board.
Thanks anyway seemoredigital
SeeMoreDigital
9th July 2004, 20:00
Originally posted by RanmaSaotome
Well i'm stumped...
The test file you put up works fine in xvid, but mine won't, guess its back to the drawing board. I'm stumpped now!
What do you mean it works fine in XviD? Try playing the MP4 with 3ivx's DSdec filter!
Cheers
RanmaSaotome
9th July 2004, 20:15
It plays fine with both the Xvid & 3ivX decoder.
That said the garbage did tend to be on panning scenes (there were none so i can't really tell).
I can't understand why the Xvid decoder will play my avi fine but not my mp4, & yet your mp4 file is no problem.
I must have set something in Xvid that MP4 doesn't agree with.
Neo Neko
9th July 2004, 20:44
A fellow Ranma fan I see. Can you provide a short sample of your problem MP4? Also might I suggest you try videolan (http://videolan.org) to decode your clip. It is not directshow based and might prove interesting. Also you can use videolan to encode your videos to MP4 if you wish. Unfortunatly though it does not provide things like 2-pass or any non FFMPEG MPEG4 codec such as Xvid ATM. But then that is what direct stream coppies are for. :D
In fact using the aforementioned methodology I have managed to create an MP4 file with h264 video and he AAC audio. :) It only currently plays in Mplayer or Videolan though. :p But it can be done. And I suspect is probably spec compliant. Though I am not sure.
SeeMoreDigital
9th July 2004, 21:02
Originally posted by Neo Neko
In fact using the aforementioned methodology I have managed to create an MP4 file with h264 video and he AAC audio. :) It only currently plays in Mplayer or Videolan though. :p But it can be done. And I suspect is probably spec compliant. Though I am not sure. Encode a small clip and post it please... I've been asking for an H264/AAC in MP4 sample for months :cool:
Cheers
RanmaSaotome
9th July 2004, 21:34
Thanks...
I found the problem.. i had encoded the file in h264, i didn't know you couldn't use it. i read so much stuff i must have missed it.
Neo Neko
10th July 2004, 02:19
Originally posted by SeeMoreDigital
Encode a small clip and post it please... I've been asking for an H264/AAC in MP4 sample for months :cool:
Cheers
Ok no guarontees but here they are 30sec clip from Ferry Corsten's Rock Your Body, Rock music video produced by eboman (http://freecache.org/http://neoneko.ath.cx/ferry%20corsten-rock%20your body%20rock.mp4) (4.25Mb) If you have never heard or seen eboman's work it is best described as the output of a confetti cut paper shredder. Good stuff. But even a high bitrate DVD shows plenty of errors on this codec killing video.
Monty Python's Holy Grail in lego (http://freecache.org/http://neoneko.ath.cx/python-lego.mp4) (9.83Mb) I don't think anyone will have kittens over me posting this as it is avalible for free in many places on the net. But it is a must for any python fans.
And just to reitterate so far VLC is the only player I have found that can handle these. I suspect Mplayer can as well. And let me know if you have any success with any other players. I can verrify that the 3ivx filters throw a tantrum with non SP or ASP MPEG4 content ATM. The audio will play though. :p
Neo Neko
10th July 2004, 02:38
Originally posted by RanmaSaotome
Thanks...
I found the problem.. i had encoded the file in h264, i didn't know you couldn't use it. i read so much stuff i must have missed it.
Well this is all rather new ground. I don't think it has been covered before. Are you sure you encoded it with h264? Not only do 3ivx filters refuse to split h264 in MP4 but mux it as well. At least in my experience
Stux
10th July 2004, 07:04
Originally posted by Neo Neko
In fact using the aforementioned methodology I have managed to create an MP4 file with h264 video and he AAC audio. :) It only currently plays in Mplayer or Videolan though. :p But it can be done. And I suspect is probably spec compliant. Though I am not sure.
I would be very surprised if it was spec compliant.
No offense to the VLC team, but I'm not even sure if their latest MP4s are spec compliant, but I know in the recent past they weren't, so I would be quite surprised if their H264 in MP4 files were spec compliant... especially at this early stage
Neo Neko
10th July 2004, 09:54
Originally posted by Stux
I would be very surprised if it was spec compliant.
No offense to the VLC team, but I'm not even sure if their latest MP4s are spec compliant, but I know in the recent past they weren't, so I would be quite surprised if their H264 in MP4 files were spec compliant... especially at this early stage
Your parser likes em just fine. :) This (http://neoneko.ath.cx/sample.mp4) was encoded and muxed with VLC. And it plays just super with MPC and the 3ivx splitter. So apparently they have done some work in the last release or the incompatabilities were not cripling. Assuming they got that fixed then the packing of the h264 bitstream should not be a big problem. What was the incompatability off the top of your head?
SeeMoreDigital
10th July 2004, 11:19
Hi Neo,
Just tried your short Scoobie Doo 'sample' and it does appear to work ok in software.
It would not work in hardware staight away, as some information is lost: -
http://img22.exs.cx/img22/571/SMD_Sample.gif
First I had to use mp4UI to de-mux both the audio and video streams. And mp4UI again to re-mux them back into the MP4 container.
http://img22.exs.cx/img22/1599/SMD_Sample_ReMux.gif
After doing this the Mpeg4 encoder is reported as being FFmpeg @ 360Kbps and hardware playback is 'just super' too!
At the moment I've had no luck with your other two encodes :(
Cheers
bond
10th July 2004, 14:00
vlc's avc-in-mp4 muxing isnt spec compliant till now. i never mentioned it to avoid people using it and thinking its working correctly (as the files play fine in vlc itself)
so guys dont use it!
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.