I'm trying to play a movie (.mp4) that i've encoded with ffmpeg and i get the following error:

[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fa39a802800] moov atom not found0/0
/movie.mp4: Invalid data found when processing input

Why does ffmpeg throw this error?

Thanks!

Note: It's an .exr sequence that i've encoded, but i don't think it's a problem with my encoding settings since i've encoded another .exr sequence with the same settings and it worked.

Command:

ffmpeg -thread_queue_size 512 -y -loglevel info -threads 0 -f lavfi -i aevalsrc=0 -framerate 60 -i /image.png -start_number 000000 -apply_trc bt709 -framerate 60 -i /sequence.%06d.exr -r 60 -preset medium -codec:v libx265 -ar 48000 -acodec aac -shortest -strict experimental -sn -vsync 1 -pix_fmt yuv420p -b:v 31457280 -movflags +faststart  -x265-params high-tier=0:pmode=1:wpp=1:tune=fastdecode:bitrate=31457:fps=60:keyint=360:min-keyint=180:vbv-bufsize=31457:vbv-maxrate=31457:scenecut=0 
' -filter_complex "[2:v]crop=3440:2227:0:2560, scale=3440:768, rotate=0[input_num0];[1:v][input_num0]overlay=0:0[output_num0]" -map "[output_num0]:0" -map "0:0" output.mp4 

Console output:

ffmpeg version 3.0.1 Copyright (c) 2000-2016 the FFmpeg developers
  built with Apple LLVM version 6.1.0 (clang-602.0.49) (based on LLVM 3.6.0svn)
  configuration: --prefix=/usr/local/Cellar/ffmpeg/3.0.1 --enable-shared --enable-pthreads --enable-gpl --enable-version3 --enable-hardcoded-tables --enable-avresample --cc=clang --host-cflags= --host-ldflags= --enable-opencl --enable-libx264 --enable-libmp3lame --enable-libxvid --enable-libtheora --enable-libvorbis --enable-libvpx --enable-ffplay --enable-libspeex --enable-libfdk-aac --enable-libopus --enable-libx265 --enable-nonfree --enable-vda
  libavutil      55. 17.103 / 55. 17.103
  libavcodec     57. 24.102 / 57. 24.102
  libavformat    57. 25.100 / 57. 25.100
  libavdevice    57.  0.101 / 57.  0.101
  libavfilter     6. 31.100 /  6. 31.100
  libavresample   3.  0.  0 /  3.  0.  0
  libswscale      4.  0.100 /  4.  0.100
  libswresample   2.  0.101 /  2.  0.101
  libpostproc    54.  0.100 / 54.  0.100
Input #0, lavfi, from 'aevalsrc=0':
  Duration: N/A, start: 0.000000, bitrate: 2822 kb/s
    Stream #0:0: Audio: pcm_f64le, 44100 Hz, mono, dbl, 2822 kb/s
Input #1, png_pipe, from '/image.png':
  Duration: N/A, bitrate: N/A
    Stream #1:0: Video: png, monob(pc), 3840x1536, 60 tbr, 60 tbn, 60 tbc
Input #2, image2, from '/sequence.%06d.exr':
  Duration: 00:00:32.27, start: 0.000000, bitrate: N/A
    Stream #2:0: Video: exr, rgb48le(unknown/unknown/bt709), 5120x2560 [SAR 1:1 DAR 2:1], 60 tbr, 60 tbn, 60 tbc
[libx265 @ 0x7f9ee1003400] Unknown option: tune.
x265 [info]: HEVC encoder version 1.9
x265 [info]: build info [Mac OS X][clang 7.0.2][64 bit] 8bit
x265 [info]: using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX AVX2 FMA3 LZCNT BMI2
x265 [warning]: Limit reference options 2 and 3 are not supported with pmode. Disabling limit reference
x265 [info]: Main profile, Level-5.1 (Main tier)
x265 [info]: Thread pool created using 4 threads
x265 [info]: frame threads / pool features       : 2 / wpp(24 rows)+pmode
x265 [info]: Coding QT: max CU size, min CU size : 64 / 8
x265 [info]: Residual QT: max TU size, max depth : 32 / 1 inter / 1 intra
x265 [info]: ME / range / subpel / merge         : hex / 57 / 2 / 2
x265 [info]: Keyframe min / max / scenecut       : 180 / 360 / 0
x265 [info]: Lookahead / bframes / badapt        : 20 / 4 / 2
x265 [info]: b-pyramid / weightp / weightb       : 1 / 1 / 0
x265 [info]: References / ref-limit  cu / depth  : 3 / 0 / 0
x265 [info]: AQ: mode / str / qg-size / cu-tree  : 1 / 1.0 / 32 / 1
x265 [info]: Rate Control / qCompress            : ABR-31457 kbps / 0.60
x265 [info]: VBV/HRD buffer / max-rate / init    : 31457 / 31457 / 0.900
x265 [info]: tools: rd=3 psy-rd=2.00 signhide tmvp strong-intra-smoothing
x265 [info]: tools: lslices=8 deblock sao
Output #0, mp4, to '/output.mp4':
    encoder         : Lavf57.25.100
    Stream #0:0: Video: hevc (libx265) ([35][0][0][0] / 0x0023), yuv420p, 3840x1536, q=2-31, 31457 kb/s, 60 fps, 15360 tbn, 60 tbc (default)
    Metadata:
      encoder         : Lavc57.24.102 libx265
    Stream #0:1: Audio: aac (LC) ([64][0][0][0] / 0x0040), 48000 Hz, mono, fltp, 69 kb/s
    Metadata:
      encoder         : Lavc57.24.102 aac
Stream mapping:
  Stream #1:0 (png) -> overlay:main (graph 0)
  Stream #2:0 (exr) -> crop (graph 0)
  overlay (graph 0) -> Stream #0:0 (libx265)
  Stream #0:0 -> #0:1 (pcm_f64le (native) -> aac (native))
Press [q] to stop, [?] for help
[image2 @ 0x7f9ee081f400] Thread message queue blocking; consider raising the thread_queue_size option (current value: 8)
  • Run the encode again. If it doesn't work, show command and console output. – Gyan Aug 5 '16 at 17:23
  • Done, i've edited my original post – Gambit2007 Aug 5 '16 at 17:32
  • Your EXRs are 5120x2560, but your crop is 3440:2227:0:2560. Which does not make sense. No active image area is included. Also, why rotate=0? The image.png should be looped. – Gyan Aug 5 '16 at 18:08
  • 3440x2227 is the size of the cropping region i want out of that 5120x2560 image, giving it a top left corner of (0,2560). I think it might be because i calculated the top left corner wrong? (since the (0,0) coordinate of ffmpeg is at the top left). The rotation part is a parameter set by a python script, in that case it's 0 but it could be anything else. – Gambit2007 Aug 5 '16 at 18:19
  • I changed my crop filter arguments to crop=3440:2227:0:0 and it still doesn't work.. – Gambit2007 Aug 5 '16 at 19:01
up vote 1 down vote accepted

Try

ffmpeg -y -loglevel info -threads 0 -f lavfi -i aevalsrc=0 -framerate 60 -loop 1 -i /image.png -start_number 000000 -apply_trc bt709 -framerate 60 -thread_queue_size 512 -i /sequence.%06d.exr -filter_complex "[2:v]crop=3440:2227:0:0,scale=3440:768,rotate=0[input_num0];[1:v][input_num0]overlay=shortest=1,format=yuv420p[output_num0]" -preset medium -c:v libx265 -c:a aac -ar 48000 -shortest -b:v 31457280 -x265-params high-tier=0:pmode=1:wpp=1:tune=fastdecode:bitrate=31457:fps=60:keyint=360:min-keyint=180:vbv-bufsize=31457:vbv-maxrate=31457:scenecut=0 -map "[output_num0]" -map 0:0 -movflags +faststart output.mp4 

There are still some redundant settings, but those can be checked later on.

  • gives the same error – Gambit2007 Aug 5 '16 at 19:31
  • Switch to libx264 and see. And your console output looks incomplete. How many frames were encoded and muxed? – Gyan Aug 5 '16 at 19:34
  • Still same error, all frames encoded.. – Gambit2007 Aug 5 '16 at 20:00
  • Output to .ts or mkv – Gyan Aug 5 '16 at 20:17
  • mkv works! why is that? also, i get the error Thread message queue blocking; consider raising the thread_queue_size option (current value: 8), even though i set the size to 512.. – Gambit2007 Aug 5 '16 at 20:24

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.