[FFmpeg-user] 'moov atom not found' during concat for mp4s that seem fine

Zamir Khan zamir.khan at gmail.com
Fri Nov 18 20:41:22 EET 2016


Hi all,

I'm a developer, but FFmpeg and video n00b, so please excuse my lack of
experience there. I wanted to test out the FFmpeg 'concat' command today on
some very short videos I have. The test batch is 3 MP4 files, each less than
10 seconds long. I followed the steps here
(https://trac.ffmpeg.org/wiki/Concatenate) to do so.

When I run the command, I get the following error output:

/$ ffmpeg -f concat -safe 0 -protocol_whitelist file,http,https,tcp,tls -f
mp4 -i segments.txt -c copy output
ffmpeg version 3.2 Copyright (c) 2000-2016 the FFmpeg developers
  built with Apple LLVM version 8.0.0 (clang-800.0.42.1)
  configuration: --prefix=/usr/local/Cellar/ffmpeg/3.2 --enable-shared
--enable-pthreads --enable-gpl --enable-version3 --enable-hardcoded-tables
--enable-avresample --cc=clang --host-cflags= --host-ldflags=
--enable-libmp3lame --enable-libx264 --enable-libxvid --enable-opencl
--disable-lzma --enable-vda
  libavutil      55. 34.100 / 55. 34.100
  libavcodec     57. 64.100 / 57. 64.100
  libavformat    57. 56.100 / 57. 56.100
  libavdevice    57.  1.100 / 57.  1.100
  libavfilter     6. 65.100 /  6. 65.100
  libavresample   3.  1.  0 /  3.  1.  0
  libswscale      4.  2.100 /  4.  2.100
  libswresample   2.  3.100 /  2.  3.100
  libpostproc    54.  1.100 / 54.  1.100
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7f9b99010600] moov atom not found
segments.txt: Invalid data found when processing input/

These videos are hosted on an S3 bucket, so I initially addressed them at
those addresses, but when I got this error, I downloaded and addressed them
locally, so the location of the videos appears to not be the issue.

I read up on the "moov atom not found" and from what I can tell is the moov
atom is supposed to appear at the end of the file, but could be missing if a
recording or download was stopped abruptly. However, I can play the video
files fine (in VLC for example). I looked up how to use FFmpeg to inspect
the "health" of a file and came across the following command, which appears
to report no warnings or errors for any of the 3 files:

/$ ffmpeg -v info -i vs1479266329332_656.mp4  -f null - 
ffmpeg version 3.2 Copyright (c) 2000-2016 the FFmpeg developers
  built with Apple LLVM version 8.0.0 (clang-800.0.42.1)
  configuration: --prefix=/usr/local/Cellar/ffmpeg/3.2 --enable-shared
--enable-pthreads --enable-gpl --enable-version3 --enable-hardcoded-tables
--enable-avresample --cc=clang --host-cflags= --host-ldflags=
--enable-libmp3lame --enable-libx264 --enable-libxvid --enable-opencl
--disable-lzma --enable-vda
  libavutil      55. 34.100 / 55. 34.100
  libavcodec     57. 64.100 / 57. 64.100
  libavformat    57. 56.100 / 57. 56.100
  libavdevice    57.  1.100 / 57.  1.100
  libavfilter     6. 65.100 /  6. 65.100
  libavresample   3.  1.  0 /  3.  1.  0
  libswscale      4.  2.100 /  4.  2.100
  libswresample   2.  3.100 /  2.  3.100
  libpostproc    54.  1.100 / 54.  1.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'vs1479266329332_656.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf57.2.100
  Duration: 00:00:07.26, start: -0.013061, bitrate: 1872 kb/s
    Stream #0:0(und): Video: h264 (Constrained Baseline) (avc1 /
0x31637661), yuv420p, 1280x720 [SAR 1:1 DAR 16:9], 1741 kb/s, 6.33 fps, 6.33
tbr, 19456 tbn, 12.67 tbc (default)
    Metadata:
      handler_name    : VideoHandler
    Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, mono,
fltp, 128 kb/s (default)
    Metadata:
      handler_name    : SoundHandler
Output #0, null, to 'pipe:':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf57.56.100
    Stream #0:0(und): Video: wrapped_avframe, yuv420p, 1280x720 [SAR 1:1 DAR
16:9], q=2-31, 200 kb/s, 6.33 fps, 6.33 tbn, 6.33 tbc (default)
    Metadata:
      handler_name    : VideoHandler
      encoder         : Lavc57.64.100 wrapped_avframe
    Stream #0:1(und): Audio: pcm_s16le, 44100 Hz, mono, s16, 705 kb/s
(default)
    Metadata:
      handler_name    : SoundHandler
      encoder         : Lavc57.64.100 pcm_s16le
Stream mapping:
  Stream #0:0 -> #0:0 (h264 (native) -> wrapped_avframe (native))
  Stream #0:1 -> #0:1 (aac (native) -> pcm_s16le (native))
Press [q] to stop, [?] for help
frame=   46 fps=0.0 q=-0.0 Lsize=N/A time=00:00:07.26 bitrate=N/A
speed=78.6x    
video:22kB audio:622kB subtitle:0kB other streams:0kB global headers:0kB
muxing overhead: unknown/

So, while concat is saying at least one of the files is missing its moov
atom, I can't seem to tell why. To my knowledge, the recording of these
videos was not interrupted in anyway.

Thanks in advance for your help.




--
View this message in context: http://ffmpeg-users.933282.n4.nabble.com/moov-atom-not-found-during-concat-for-mp4s-that-seem-fine-tp4678317.html
Sent from the FFmpeg-users mailing list archive at Nabble.com.


More information about the ffmpeg-user mailing list