FFmpeg - атом Moov не found0/0


2

Я пытаюсь играть в кино (.mp4), что я уже закодированный с ffmpeg и я получаю следующее сообщение об ошибке:

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

Почему FFmpeg бросить эту ошибку?

Спасибо!

Примечание: Это .exr последовательности, что я закодирован, но я не думаю, что это проблема с моими настройками кодирования, так как я уже закодирован другой .exr последовательности с теми же настройками, и она работала.

Команда:

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 

Консоль вывода:

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) 
  0

Запустите кодировку снова. Если он не работает, отобразите команду и консоль. 05 авг. 162016-08-05 17:23:06

  0

Done, я отредактировал свое оригинальное сообщение 05 авг. 162016-08-05 17:32:13

  0

Ваши EXR - 5120x2560, но ваш урожай - '3440: 2227: 0: 2560'. Это не имеет смысла. Активная область изображения не включена. Кроме того, почему 'rotate = 0'? Image.png должен быть зациклен. 05 авг. 162016-08-05 18:08:21

  0

3440x2227 - размер области обрезки, из которой я хочу получить изображение 5120x2560, давая ему верхний левый угол (0,2560). Я думаю, это может быть потому, что я вычислил верхний левый угол неправильно? (так как (0,0) координата ffmpeg находится в левом верхнем углу). Часть вращения - это параметр, заданный скриптом python, в этом случае это 0, но это может быть что угодно. 05 авг. 162016-08-05 18:19:22

  0

Я изменил аргументы фильтра 'crop' на' crop = 3440: 2227: 0: 0' и он все еще не работает. 05 авг. 162016-08-05 19:01:26

1

Попробуйте

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 

Есть еще некоторые избыточные параметры, но это могут быть проверены позже.

  0

дает ту же ошибку 05 авг. 162016-08-05 19:31:28

  0

Переключитесь на libx264 и посмотрите. И ваш консольный вывод выглядит неполным. Сколько кадров было закодировано и мультиплексировано? 05 авг. 162016-08-05 19:34:58

  0

По-прежнему такая же ошибка, все кадры закодированы .. 05 авг. 162016-08-05 20:00:14

  0

Выход в .ts или mkv 05 авг. 162016-08-05 20:17:19

  0

'mkv' работает! почему это? также, я получаю ошибку 'Блокировка очереди сообщений потока; подумайте о том, чтобы увеличить параметр thread_queue_size (текущее значение: 8) ', даже если я установил размер 512 .. 05 авг. 162016-08-05 20:24:02

  0

Так что, если вы случайно, пожалуйста, сообщите мне, почему это происходит? Это очень странно ... никогда не было проблем с кодировкой .mp4 08 авг. 162016-08-08 14:56:50