Log in

View Full Version : Extracting Audio from severely damaged MOV


frubsen
2nd November 2010, 04:19
Hi all,

I have a DVCPRO HD .MOV file from a Firestore recorded from an HVX200 that is severely damaged, I can't open it up in anything. I have tried everything from Mpegstreamclip to VLC..nothing will play it.

What I really need to do is extract the audio from it, I dont really care about the video at this point.

I feel like I should be able to do this with FFMPEG. This is where I am so far
Z:\Canon Video\video\broken file>ffmpeg -f dv -i test.mov -map 0:1 -acodec pcm_s16le -ac 2 audio.wav
FFmpeg version SVN-r25512, Copyright (c) 2000-2010 the FFmpeg developers
built on Oct 18 2010 04:06:45 with gcc 4.4.2
configuration: --enable-gpl --enable-version3 --enable-libgsm --enable-pthread
s --enable-libvorbis --enable-libtheora --enable-libspeex --enable-libmp3lame --
enable-libopenjpeg --enable-libschroedinger --enable-libopencore_amrwb --enable-
libopencore_amrnb --enable-libvpx --arch=x86 --enable-runtime-cpudetect --enable
-libxvid --enable-libx264 --extra-libs='-lx264 -lpthread' --enable-librtmp --ext
ra-libs='-lrtmp -lpolarssl -lws2_32 -lwinmm' --target-os=mingw32 --enable-avisyn
th --cross-prefix=i686-mingw32- --cc='ccache i686-mingw32-gcc' --enable-memalign
-hack
libavutil 50.32. 3 / 50.32. 3
libavcore 0. 9. 1 / 0. 9. 1
libavcodec 52.92. 0 / 52.92. 0
libavformat 52.83. 0 / 52.83. 0
libavdevice 52. 2. 2 / 52. 2. 2
libavfilter 1.52. 0 / 1.52. 0
libswscale 0.12. 0 / 0.12. 0
[dv @ 01cfcf70] Estimating duration from bitrate, this may be inaccurate
Input #0, dv, from 'test.mov':
Duration: 00:02:25.79, start: 0.000000, bitrate: 115084 kb/s
Stream #0.0: Video: dvvideo, yuv422p, 960x720, 115084 kb/s, PAR 4:3 DAR 16:9
, 59.94 tbr, 59.94 tbn, 59.94 tbc
Stream #0.1: Audio: pcm_s16le, 48000 Hz, 2 channels, s16, 1536 kb/s
Stream #0.2: Audio: pcm_s16le, 48000 Hz, 2 channels, s16, 1536 kb/s
Stream #0.3: Audio: pcm_s16le, 48000 Hz, 2 channels, s16, 1536 kb/s
Stream #0.4: Audio: pcm_s16le, 48000 Hz, 2 channels, s16, 1536 kb/s
Output #0, wav, to 'audio.wav':
Metadata:
encoder : Lavf52.83.0
Stream #0.0: Audio: pcm_s16le, 48000 Hz, 2 channels, s16, 1536 kb/s
Stream mapping:
Stream #0.1 -> #0.0
Press [q] to stop encoding
size= 44kB time=0.23 bitrate=1537.5kbits/s
video:0kB audio:44kB global headers:0kB muxing overhead 0.098162%

All I get is a 44kb wav file.

Anyone have any ideas?

If I don't do the -f dv command I get...."[mov,mp4,m4a,3gp,3g2,mj2 @ 01cfcf60] moov atom not found"

Ghitulescu
3rd November 2010, 11:10
For professional hardware one should also use professional software -> ftp://ftp.panasonic.com/pub/Panasonic/Drivers/PBTS/papers/WP_P2Workflow_AvidMediaComposer.pdf

Blue_MiSfit
7th November 2010, 02:39
Thats not helpful, Ghitulescu :) Please don't post just for the sake of posting - per Rule 11.

Ordinarily, DVCProHD stored in a MOV container with PCM audio tracks is total cake for ffmpeg. I've done this plenty of times.

@frubsen: You may be hosed. Did you try something as simple as this:

ffmpeg -f dv -i OMGCORRUPTED.mov -map 0:1 -acodec copy output.wav


Only real change there is I'm asking ffmpeg to just give me whatever audio format the source is, while you explicitly specified the format that ffmpeg recognizes... SHOULDNT make a difference but who knows.

Firestores :rolleyes:... I bet you won't be relying on them again, eh? I've heard more horror stories than I care to think about regarding their stuff, especially the DVCProHD version for the HVX200.

If this is a life and death situation, you can always send the Firestore to a professional data recovery company and see if they can recover any more of the file for you. Not cheap by any means but it might be worth a peek.

Derek

frubsen
28th November 2010, 04:05
I was able to recover about 3 minutes of the file by using a hex editor and copying the moov header from a working file to the damaged one.

I can work around the missing 2 minutes.

Thanks!