I'm using ffmpeg to convert various types of video files into mp4s.
The command I use works for most video files I've encountered, however when it encounters an m4v it never stops processing the file. The longest I've let it run is 4 hours on a 10 minute video clip. What's more is that if I let it run long enough the output file will be larger than the input file.
Below is the command in it's entirety. This command also resizes the videos to a standard definition.
/usr/local/bin/ffmpeg -y -i /path/to/input.m4v -y -acodec libfaac -ar 44100 -ab 96k -pass 2 -passlogfile x264-2pass-11164-log -threads 2 -vcodec libx264 -b 512k -flags +loop+mv4 -cmp 256 -partitions +parti4x4+parti8x8+partp4x4+partp8x8+partb8x8 -me_method hex -subq 7 -trellis 1 -refs 5 -bf 3 -flags2 +bpyramid+wpred+mixed_refs+dct8x8 -coder 1 -me_range 16 -g 250 -keyint_min 25 -sc_threshold 40 -i_qfactor 0.71 -qmin 10 -qmax 51 -qdiff 4 -s 720x406 -vf movie=/apps/video_conversion/watermark.png [wm]; [in][wm] overlay=main_w-overlay_w-10:10 [out] -analyzeduration 2000M /path/to/output.mp4
What am I doing wrong here? I would think that computing between mp4 and m4v would be easy considering how similar these file types are.
I know that you easily convert between mp4 and m4v just by changing the extension. The reason I run it through this command on ffmpeg is because it also needs to be resized to specified format.