Updated on 2008-12-19

Yes, Apple is not close enough to OpenSource and portability as one might need/desire.

One of my collegues downloaded his video camera clips to his Apple iMac with Leopard, using probably iMovie (or iLife??) and produced a lot of MOV clips who he sent to me in a zip file.

When trying to open them under Windows, I couldn’t happen to view a single frame: I tried VLC, WMPlayer and, of course, QuickTime Player. No use.

I found anyway that:

  • The audio was hearable
  • The video had the codec fourcc name of: m2v1

I googled around and found that this must be an Apple codec encapsulation for MPEG2 videos.

So I tried to extract the raw streaming with MP4Box (using the GUI YAMB) and got a perfectly viewable mp2v streaming (.m2v).

That made me think: why the raw data is an m2v, but the fourccs are m2v1?!?!

Since I do not have time to investigate the MOV file format and, well, not knowledge at all, I tried the newbie method: search for m2v1 in the binary file with an hex editor.

Found 2 occurrencies: m2v1 and ‘m2v1′
The next obvious step was to try to change them to the real m2v fourccs: mp2v
Et voila! The mov played flawlessly in my VLC player (and others).

So I wanted to contribute and made a very skinny command line app for win that could change the fourccs for me.

Beware: this does not check for anything! Just changes up to two occurences of m2v1 to mp2v (anyware in the file).

Enjoy m2v1_to_mp2v ;-)


Update 2008-12-19

Yep, if you followed the comments, there’s another case where mp2v is not the right FourCC code, so I made an m2v1_to any FourCCs :)

m2v1_to FourCC

You must specify the fourcc destination code and you may add as many files as you like (also using jolly char): this enables you to run the tool on an entire directory with
m2v1_to -m2pv *.mov
Enjoy even more :-D


Update 2009-06-17
As many ppl here are having this issue and no solution seems to be released (except mine) we are having a wide range of cases: I’d like to specify here some more cases and their solution, just to prevent other ppl asking the same thing in the comments ;-)

BIG NOTE: be aware that your clip file must be writable, otherwise the patching might seem ok, but nothing has been actually patched at all! So first of all do a right click -> properties and un-check the read-only tick

Then, if you’re trying the first tool:
- put everything in a folder like C:\clips
- open a cmd window (Start -> Run, enter “cmd” without quotes, click Ok)
- at the prompt, cd \clips
- run the command with
m2v1_to_mp2v clipname.mov
- check the results

The results must be something like:
m2v1 to mp2v: opening clip1.mov…Parsing…Done!
Patching…second patch…
Done!

If not, that means that the file is not in the expected format: i.e. you will have to check manually (more below)

Yes, you might also want to just drag your file on the tool name, but in that way you’ll never be able to see the output (you might want to do that on known cases)

Now, provided that every test should always start from the original file, here some cases we’ve raised/solved in the comments:

1. The file might be patched correctly, but for some reason Windows Media Player is still unable to read it: i suggest you give a try with VLC (VideoLanClient)

Moreover if you want to use the file in your favorite videoediting software, you’d better first check in that. Or you might try with a different editing software: it might be that WMP does not read it, but opening the clips in an editing software, you can just re-encode (export) them in a more suitable format! Many software can do edit MOV files, but not everyone, so please just check (if you have them available, you might try Adobe or Ulead – the first two coming into my mind)

2. The file might be in a slightly different format: try to use the second tool specifying -mpg2 at the prompt as the FourCC patching code.
As stated in the usage lines (run the file from the command prompt and you’ll see this):
* m2v1 to FourCC
* by Marco Abiuso (2008)
* Changes up to 2 occurrencies of 'm2v1'
to specified FourCC code in a binary file
Usage: m2v1_to - [ ...]

…you should just write
m2v1_to -mpg2 myckip.mov
Yes, somebody tried mpg2 as the FourCC code and it worked!

It might be the case that the file is encoded in even another format: you’ll have to discover that, for example loading the file in VLC and checking the media streams information (in the current version of VLC: Tools -> Media Information or Ctrl-I while viewing): that should really give m2v1, but just double check to be sure.

Again: check that the software return signs of patching in the output, if not: the file has not been patched.

3. If none of the above works, you’d better use a nice binary editor (like Hex Editor Neo Free or XVI32) and try to find the original FourCC code. The FourCCs are very near the word Apple: just check all the occurrencies and you’ll find somewhere a human readable string with the word Apple in it: look at some four characters code and write that down. We will try to check that if you post it in the comments.

Here what appears “graphically” on my hex editor:
m2v1 hex string
See those m2v1 and ‘m2v1′ strings around the center of the image? Gotcha! :-)

Be aware that the word Apple will never appear if the file was not edited/created by a Machintosh! In that case the problem might still be the same, but we will have to check case by case.
Now I hope it’s more clear to everybody :-D

Share

Related posts

Related External Links

Rating

Not useful/interestingUseful/Interesting (+4 rating, 4 votes)
Loading ... Loading ...

76 Comments

  • Paul says:

    Hi, I’ve got a .mov video, I’ve parsed from m2v1 it with your program and it says that the format is m2pv but it still only plays with sound. I’ve uninstalled all codec programs from my XP SP3 machine and installed a fresh version of Quicktime. Still only plays with sound. Very very annoying.
    Any ideas on other options that I might have?
    Any help is greatly appreciated.
    The Format is ‘m2v1′, 1001x576millions
    16bit integer little endian, left 48.000khz
    16bit integer little endian, right 48.000khz
    Thanks again.

  • MindSuburbian says:

    Hi Paul,
    did you see if the tool gave some output saying that the FourCC was modified?

    If no, please use a hex editor to be completely sure (read the other comments for instructions).

    If yes, well, i guess there must be some other problem: check if the file is read only and try also to change the FourCCs to mpg2.

  • David says:

    Works like a charm!

    just put the file on top and thats’s it!!!

    Soooo easy.

  • Juax says:

    I can’t figure out the 2 programs on top. I think I’m having the same issue as Andy and I was trying to follow up with it. On the run window I did what you told him, I think, and i placed in the run window

    m2v1_to_mp2v “C:\Documents and Settings\Owner\Desktop\clip-2009-05-16 21;29;32.mov”

    I’m not fully sure if that is how it’s suppose to be done, but if you can help me figure this out I’d appreciate it a lot!

    -juax

  • MindSuburbian says:

    Hi, yes, that’s the correct way to run it.
    In the command window you should see something like the following:

    m2v1 to mp2v: opening clip1.mov…Parsing…Done!
    Patching…second patch…
    Done!

    If you don’t see any reference to a patch, that means that the software didn’t actually do anything (probably because unable to find the code to patch).

    If you saw the patching message and still it isn’t working, well you may try to open the video with another software or decide to use the second tool and specify another FourCC value (please start from a backup copy of the video, not from a patched one)

  • Juax says:

    mmm yeah, it didn’t do anything, so I guess it didn’t work. It just opened the command prompt and closed right away. And i did it to both programs and got no result.

    The programs i used to watch the videos are Quicktime, VLC, and WMP. they only play the audio soo ya…

    from here I’m actually really clueless to be honest.
    -juax

  • Louis says:

    I have been reading the messages here, but if I try to run these programs I get a short DOS moment and then it is done.
    I have a video with the Apple Intermediate Codec, that won`t give any view.

    Is this the same problem as where you guys are talking about or is my case really doomed?

    Louis

  • Juax says:

    ya it just says connot find ‘m2v1_to’. make sure you typed the name correctly blah blah blah…

    and i did it like the top one, I just changed the first part, but it seems to not work

    appreciate you assisting me

  • Louis says:

    Does anyone knows a patch for the Apple Intermediate Codec?
    I runned the patch now on my file but no results.

    Louis

  • MindSuburbian says:

    Well juax, the right way to do that is to:
    - put everything in a folder like C:\clips
    - open a cmd window (Start -> Run, enter “cmd” without quotes, click Ok)
    - at the prompt, cd \clips
    - run the command with
    m2v1_to_mp2v clipname.mov
    - check the results
    Always keep a backup of the original .mov

Leave a Reply