PDA

View Full Version : Trouble playing MP4 file (MP41)


ESPNSTI
13th January 2005, 01:29
Hi there.

I have an MP4 file that refuses to be played by just about anything.
Quicktime says it's not a valid MPEG-4 file and it says that the 'moov' atom couldn't be found.
WMP Classic says it can't open it.
MPegable says it can't open it.
mp4UI says the atom size is invalid.

Now I do have another MP4 file that works just fine.
When I compared the first chunk of the file that doesn't work:
00 00 00 14 66 74 79 70 69 73 6F 6D 00 00 00 00
6D 70 34 31 09 62 F0 54 6D 64 61 74 C0 11 A4 CD
54 61 50 2A 20 B3 F8 00 00 03 F8 00 00 02 B1 00
00 00 00 12 81 12 85 41 4F 80 01 80 80 18 11 80
80 08 02 9F 0F 80 80 02 00 01 11 80 80 08 05 1F...¶ftypisom....
mp41.bdTmdatA◄☼I
TaP* 3o..♥o..☻±.
...↕?↕?AO?☺??↑◄?
?◘☻?☼??☻.☺◄??◘♣▼
To the file that does work:
00 00 00 18 66 74 79 70 6D 70 34 32 00 00 00 00
6D 70 34 32 69 73 6F 6D 00 0F 97 B5 6D 6F 6F 76
00 00 00 6C 6D 76 68 64 00 00 00 00 BD C8 96 EF
BD C8 B1 7F 00 00 AC 44 09 83 37 84 00 01 00 00
01 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00...↑ftypmp42....
mp42isom.☼?µmoov
...lmvhd....½E?ï
½E±⌂..¬D.?7?.☺..
☺............☺..
I noticed that the one that doesn't work is MP41 and the one that does work is MP42.

Is my file bad, or do most players and such not deal with MP41?
Ideas? Comments?

BTW, was this the right place to post this?

bond
13th January 2005, 13:03
welcome to doom9 :)

how did you create that file?

it seems your file (that doesnt work) doesnt have a moov atom, which basically is one of the most important ones
i would say your file simply isnt spec compliant to the mpeg-4 standard.

maybe you want to try your luck with renaming .mp4 to .mov or .3gp, but i am not sure it will help much

Yong
13th January 2005, 15:23
Try to decode it with ffdshow or mplayer:)

ESPNSTI
13th January 2005, 16:27
Originally posted by bond
welcome to doom9 :)Thanks! :)
Originally posted by bond
how did you create that file?Unfortunately, I didn't create it.
Originally posted by bond
it seems your file (that doesnt work) doesnt have a moov atom, which basically is one of the most important ones
i would say your file simply isnt spec compliant to the mpeg-4 standard.

maybe you want to try your luck with renaming .mp4 to .mov or .3gp, but i am not sure it will help much Originally posted by Yong
Try to decode it with ffdshow or mplayer:) I will try that, thanks.

ESPNSTI
14th January 2005, 01:51
Originally posted by bond
maybe you want to try your luck with renaming .mp4 to .mov or .3gp, but i am not sure it will help much Originally posted by Yong
Try to decode it with ffdshow or mplayer:) Unfortunately, none of this worked. :(

bond
14th January 2005, 12:06
well the only thing i can say is that you could keep on trying either extracting the video/audio from the file with different mp4 tools

or playing it with more players

for a list of thos tools have a look at the mp4 faq

Yong
14th January 2005, 13:49
@ESPNSTI:
May be you can upload the file, and lets someone to hack it.:D

multicone
15th January 2005, 11:01
This is likely an AVI file with Microsoft MPEG 4 V1 codec, FourCC 'mp41', and not a MP4 file.

ESPNSTI
16th January 2005, 02:33
Originally posted by Yong
@ESPNSTI:
May be you can upload the file, and lets someone to hack it.:D
Here you go (it's a zip split into 9 parts, about 133MB).
Please only download it if you're going to try it, since I believe there is a download limit of 25 times on yousendit.

http://s20.yousendit.com/d.aspx?id=2GI6UGBMX0NLC0J1CD3J1ZWMW9
http://s20.yousendit.com/d.aspx?id=1VT0THYQ8Z5FM21W17NKMK99GX
http://s20.yousendit.com/d.aspx?id=2NA0ERWTJMEZ60B8XU7J5TDO2P
http://s20.yousendit.com/d.aspx?id=0HRCX3X6COWO71QIDYETQ1O6B0
http://s20.yousendit.com/d.aspx?id=3L5QKI7QU2GXR0ZYQ22FX3XRD1
http://s20.yousendit.com/d.aspx?id=0PHTV0ORD9Z8N251PS9PCII0GU
http://s20.yousendit.com/d.aspx?id=26HWXK94MZV272R4FYYSTG4BPE
http://s20.yousendit.com/d.aspx?id=3B9M32WKTLQLV2TS95WNDUED21
http://s20.yousendit.com/d.aspx?id=0EGI3O6JEX4MX3SUX7I5715RUI

Also when I was googling for "ftypisom" I found several other MP4 files with headers that seemed similar to my non-working one, and sure enough I couldn't play those either (I don't have any idea what these movies are about):

http://hideout.musichall.cz/stuff/capture.mp4 (2MB)
http://hideout.musichall.cz/stuff/foo.mp4 (1.2MB)

Originally posted by multicone
This is likely an AVI file with Microsoft MPEG 4 V1 codec, FourCC 'mp41', and not a MP4 file.
Well I tried renaming to AVI, but that didn't work either.
If I read the header layout right ( http://www.geocities.com/xhelmboyx/quicktime/formats/mp4-layout.txt ), this appears to be an MP4 container.

Yong
17th January 2005, 12:41
I tried playing the foo/capture.mp4 with mplayer, with verbose switch,

here is the part of mplayer output:
Searching demuxer type for filename F:\[Temp]\capture.mp4 ext: .mp4
Trying demuxer 7 based on filename extension
Checking for MOV
ISO: File Type Major Brand: ISO Base Media
ISO: File Type Minor Version: 0
ISO: File Type Compatible Brand #0: mp41
MOV: Movie DATA found!
MOV: unknown chunk: zcZC 1752200559
stream_seek: WARNING! Can't seek to 0x688FCB92 !
MOV: missing header (moov/cmov) chunk! Maybe broken file...
demuxer: continue fuzzy content-based format guessing...
Checking for MOV
ISO: File Type Major Brand: ISO Base Media
ISO: File Type Minor Version: 0
ISO: File Type Compatible Brand #0: mp41
MOV: Movie DATA found!
MOV: unknown chunk: zcZC 1752200559
stream_seek: WARNING! Can't seek to 0x688FCB92 !
MOV: missing header (moov/cmov) chunk! Maybe broken file...
Checking for VIVO
header block 1 size: 0
Checking for PVA
Checking for MPEG-TS...
TRIED UP TO POSITION 69090, FOUND 0, packet_size= 71, SEEMS A TS? 0
Checking for LMLM4 Stream Format
Invalid packet in LMLM4 stream: ch=0 size=1718909288
LMLM4 Stream Format not found
MPEG Stream reached EOF
ds_fill_buffer: EOF reached (stream: video)
MPEG packet stats: p100: 1554 p101: 2 p1B6: 0 p12x: 53 sli: 30 a: 2147 b: 20 c:
0 idr: 16 sps: 0 pps: 9 PES: 0 MP3: 0
H264-ES file format detected.
==> Found video stream: 0
Searching for sequence parameter set... OK!
Searching for picture parameter set... H264: 0x127
H264: 0x100
H264: 0x102
H264: 0x127
H264: 0x102
H264: 0x128
OK!
Searching for Slice... OK!
[V] filefmt:30 fourcc:0x10000005 size:0x0 fps: 0.00 ftime:=0.0000
FPS not specified in the header or invalid, use the -fps option.
No stream found.

WINSOCK2 uninit
after added the -fps switch
Searching for Slice... OK!
[V] filefmt:30 fourcc:0x10000005 size:0x0 fps: 0.00 ftime:=0.0000
get_path('sub/') -> 'F:/mplayer/mplayer/sub/'
get_path('default.sub') -> 'F:/mplayer/mplayer/default.sub'
<vo_directx><INFO>checking primary surface
<vo_directx><FORMAT PRIMARY>14 BGR32 supported
<vo_directx><INFO>testing supported overlay pixelformats
<vo_directx><FORMAT OVERLAY>0 YV12 supported
<vo_directx><FORMAT OVERLAY>1 I420 not supported
<vo_directx><FORMAT OVERLAY>2 IYUV not supported
<vo_directx><FORMAT OVERLAY>3 YVU9 supported
<vo_directx><FORMAT OVERLAY>4 YUY2 supported
<vo_directx><FORMAT OVERLAY>5 UYVY supported
<vo_directx><FORMAT OVERLAY>6 BGR8 not supported
<vo_directx><FORMAT OVERLAY>7 RGB15 supported
<vo_directx><FORMAT OVERLAY>8 BGR15 supported
<vo_directx><FORMAT OVERLAY>9 RGB16 supported
<vo_directx><FORMAT OVERLAY>10 BGR16 supported
<vo_directx><FORMAT OVERLAY>11 RGB24 not supported
<vo_directx><FORMAT OVERLAY>12 BGR24 not supported
<vo_directx><FORMAT OVERLAY>13 RGB32 supported
<vo_directx><FORMAT OVERLAY>14 BGR32 supported
<vo_directx><INFO>Your card supports 10 of 15 overlayformats
<vo_directx><INFO>hardware supports overlay
==========================================================================
Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family
INFO: libavcodec init OK!
Selected video codec: [ffh264] vfm:ffmpeg (FFmpeg H.264)
==========================================================================
Audio: no sound
Freeing 0 unused audio chunks.
FPS forced to be 30.000 (ftime: 0.033).
Starting playback...
picture size invalid (32x0)
[h264 @ 00B9B118]Unknown NAL code: 0
[h264 @ 00B9B118]slice type too large (1179) at 0 0
Error while decoding frame!
[h264 @ 00B9B118]Unknown NAL code: 0
[h264 @ 00B9B118]non existing PPS referenced
Error while decoding frame!
[h264 @ 00B9B118]Unknown NAL code: 0
[h264 @ 00B9B118]non existing PPS referenced
Error while decoding frame!
[h264 @ 00B9B118]Unknown NAL code: 11
[h264 @ 00B9B118]Unknown NAL code: 0
[h264 @ 00B9B118]non existing PPS referenced
Error while decoding frame!
[h264 @ 00B9B118]Unknown NAL code: 12
[h264 @ 00B9B118]Unknown NAL code: 0
[h264 @ 00B9B118]Unknown NAL code: 31
....

h.264 video?
Any idea?

bond
17th January 2005, 12:50
i doubt its a raw h.264 stream as if so you wouldnt get a ftyp atom

still you might want to rename to .264 (try muxing this with mp4creator to .mp4)

gotaserena
17th January 2005, 13:43
My copy of mplayer displays smth different:

--
Playing foo.mp4.
MOV: missing header (moov/cmov) chunk! Maybe broken file...
MOV: missing header (moov/cmov) chunk! Maybe broken file...
RAWDV file format detected.
VIDEO: [DVSD] 720x576 24bpp 25.000 fps 0.0 kbps ( 0.0 kbyte/s)
===========================
Opening audio decoder: [libdv] Raw DV Audio Decoder
Unknown/missing audio format -> no sound
ADecoder init failed :(
Opening audio decoder: [ffmpeg] FFmpeg/libavcodec audio decoders
Cannot find codec 'dvaudio' in libavcodec...
ADecoder init failed :(
ADecoder init failed :(
Cannot find codec for audio format 0x56444152.
Read DOCS/HTML/en/codecs.html!
============================
vo: X11 running at 1280x1024 with depth 24 and 32 bpp (":0.0" => local display)
============================
Opening video decoder: [dshow] DirectShow video codecs
Decoder supports the following YUV formats: YUY2 UYVY
Decoder is capable of YUV output (flags 0x9)
VDec: vo config request - 720 x 576 (preferred csp: Packed YUY2)
[PP] Using codec's postprocessing, max q = 4.
VDec: using Packed YUY2 as output csp (no 0)
Movie-Aspect is undefined - no prescaling applied.
VO: [xv] 720x576 => 720x576 Packed YUY2
Selected video codec: [qdv] vfm:dshow (Sony Digital Video (DV))
=============================
Audio: no sound
Starting playback...
V: 0.3 8/ 8 ??% ??% ??,?% 0 0
--

0x56444152 is the id for libavcodec's implementation of rawDV audio (which I did not bother to compile into mplayer). Like the text in bold above and bond's comments: it does not seem to be a mp4 file at all.

Koti
18th January 2005, 01:15
Did anyone peek at the creation dates of these files ? http://hideout.musichall.cz/stuff/
scroll down to "capture.mp4 05-Mar-2002 23:51" - Who knows what specs were used to create these mp4's
Got my curiousity though :)

- this .mp4 file http://www.cs.ubc.ca/~westrom/animation.mp4
has the same ftypisom mp41 and plays fine plus I have Xvid files muxed with 3ivx into mp4 that show mp41 as well.

ESPNSTI
19th January 2005, 00:58
Originally posted by Koti
Did anyone peek at the creation dates of these files ? http://hideout.musichall.cz/stuff/
scroll down to "capture.mp4 05-Mar-2002 23:51" - Who knows what specs were used to create these mp4's
Got my curiousity though :) Some sort of early spec MP4 file?

Originally posted by Koti
- this .mp4 file http://www.cs.ubc.ca/~westrom/animation.mp4
has the same ftypisom mp41 and plays fine plus I have Xvid files muxed with 3ivx into mp4 that show mp41 as well. I was able to play this one as well.

At the end of the "capture" file ( http://hideout.musichall.cz/stuff/capture.mp4 ), there was some text.
It doesn't mean much of anything to me, but perhaps it rings a bell for you :

MP4V-ES/90000a=isma-compliance:1,1.0,1..a=mpeg4-iod: "data:application/mpeg4-iod;base64,AoCA

PS, thanks for all the help. :)

Yong
19th January 2005, 12:20
Originally posted by bond
i doubt its a raw h.264 stream as if so you wouldnt get a ftyp atom

still you might want to rename to .264 (try muxing this with mp4creator to .mp4)

Tried,
mp4creator give me an abnormal program termination....

bond
19th January 2005, 13:02
some comments:

1) 2002 is not a that early creation date for a .mp4 file. the .mp4 specs are existing longer
2) these .mp4 files are not spec compliant no matter what you try (the moov atom is a very central part of .mp4, and its missing in these files) and therefore simply cant be handled by normal .mp4 tools, which are following the specs
3) therefore the only solution is to find out what tool created that file (someone wanting to send this "hideout.musichall.cz" guy a mail?) and use this for editing these files

ESPNSTI
21st January 2005, 01:15
Originally posted by bond
someone wanting to send this "hideout.musichall.cz" guy a mail?
Good idea.
I sent him an email.