Tuesday, April 12, 2016

Decoding Oreka’s MCF file extensions for generic playback software (e.g. vlc)

Here’s a quick howto guide to extract .mcf files that are the created by Oreka’s open source recording platform.

 

Parts of software and guides are taken off various sources from the internet. The decoder was written in c++

and is available here if you want to compile it yourself: https://www.dropbox.com/s/09eo986gc3sons8/orekadecoder.rar
Thanks to Juan Ramirez for writing the code.

 
Since i’ve compiled the cpp file, i will just expose the .exe for 64bit systems. If you need the 32bit platform, 
you need to compile it yourself. So, for you get started, you will need the following tools and software:
1) The orekadecoder.exe here http://www.orencloud.com/public/orekadecoder.zip, download and extract the file 
into anywhere, e.g. C:\tmp
2) Download and Install Audacity  http://www.audacityteam.org/download/ so we can combine, pitch change etc the files
3) If your the files you are converting is encoded into g729, you need an extra step and software, get it from 
here: http://www.codecpro.com/LicenseG729.php and extract the files (g729 steps and use here is for education
purposes only, you should normally buy a proper license) 
 

Steps

Step 1

1) Place the mcf file into C:/tmp, now we shall extract the .mcf file using orekadecoder.exe, here’s how
In this example, i have two files, file1.mcf and file2.mcf. Let’s split out file1.mcf first:
 
File 1 – Splitout – a g729 encoded file
image
and this created two files, like below
image
 
File 2 – Splitout – a ulaw encoded file, this file doesn’t need step 2, just go to step 3
image
The above files out1 and out2 basically mean the left and right channels. 
If you notice the above sample, the file is actually decoded as g729, 
so we need to decode that, as below
 

Step 2

Decode the file1.mcf.out1 and file1.mcf.out2 into 

Copy out the file cp_g729_decoder.exe downloaded from codecpro.com, if its another directory into
c:\tmp so its easier to work. Now, convert out1 and out2 like this

 

Out1

image

Out2

image

Now in that folder, you will end up with file1.out1.wav and file1.out2.wav, proceed to step 3.
For those not needed to decode using g729 decoder, you can simply use the .out1 and .out2

files to import into audacity.

 

Step 3

Import into audacity and combine left and right audio

First example, we will use the .wav files instead of the .out1 or out2 files (we start with the g729 files)

 

g729 encoded file

Open Audacity, click on file, click on Import, then click on Raw Data, when prompted open the first file,
i.e. in this example file1.out1.wav, set the import parameters like shown below;

image

Repeat this step for file1.out2.wav

Now, you should get two channels shown in Audacity, like below

image

 

Now, since the conversion happened, the seem to be off, reduce the speed by 50%. Here’s how, click on Effect,

Change Speed Use the following setting

image

Note on the percentage, change it to –50 (minus 50) and that should be it, now save the file to any format you like.

 

Non-g729 file

Now, for the ulaw file, we just need to import it directly into audacity with the same steps above except you

do not need to change the speed,  it should work straight away.Remember, import as raw.

Remember, we set the Encoding according to the output as seen in step 1

image

 

Then import the 2nd file as the other channel.

Note, you may not have audio in the 2nd file or the first file depending if its a mono recorded or stereo recorded channel.
Save the file to whatever format and you’re done.

 

Cheers.

No comments: