Concatenation of two file does not work correctly

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

Concatenation of two file does not work correctly

Cecil Westerhof-3
I have two mov files I want to concatenate.

The first:
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'pauline.mov':
  Metadata:
    major_brand     : qt  
    minor_version   : 512
    compatible_brands: qt  
    encoder         : Lavf57.56.101
  Duration: 00:00:40.09, start: 0.000000, bitrate: 5149 kb/s
    Stream #0:0(eng): Video: h264 (High) (avc1 / 0x31637661), yuvj420p(pc), 1920x1080, 3609 kb/s, 25 fps, 25 tbr, 12800 tbn, 50 tbc (default)
    Metadata:
      handler_name    : DataHandler
      encoder         : Lavc57.64.101 libx264
    Stream #0:1(eng): Audio: pcm_s16le (sowt / 0x74776F73), 48000 Hz, stereo, s16, 1536 kb/s (default)
    Metadata:
      handler_name    : DataHandler

The second:
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'cecil.mov':
  Metadata:
    major_brand     : qt  
    minor_version   : 512
    compatible_brands: qt  
    encoder         : Lavf57.56.101
  Duration: 00:00:12.08, start: 0.000000, bitrate: 5577 kb/s
    Stream #0:0(eng): Video: h264 (High) (avc1 / 0x31637661), yuvj420p(pc), 1920x1080, 4044 kb/s, 25 fps, 25 tbr, 12800 tbn, 50 tbc (default)
    Metadata:
      handler_name    : DataHandler
      encoder         : Lavc57.64.101 libx264
    Stream #0:1(eng): Audio: pcm_s16le (sowt / 0x74776F73), 48000 Hz, stereo, s16, 1536 kb/s (default)
    Metadata:
      handler_name    : DataHandler

I created a publiciteit.txt with:
file pauline.mov
file cecil.mov

And then I call:
ffmpeg -f concat -i publiciteit.txt -acodec copy -vcodec copy publiciteit.mov

This gives:
mov,mp4,m4a,3gp,3g2,mj2 @ 0x5614a3e930e0] Auto-inserting h264_mp4toannexb bitstream filter
Input #0, concat, from 'publiciteit.txt':
  Duration: N/A, start: -0.037333, bitrate: 5145 kb/s
    Stream #0:0(eng): Video: h264 (High) (avc1 / 0x31637661), yuvj420p(pc), 1920x1080, 3609 kb/s, 25 fps, 25 tbr, 12800 tbn, 50 tbc
    Metadata:
      handler_name    : DataHandler
      encoder         : Lavc57.64.101 libx264
    Stream #0:1(eng): Audio: pcm_s16le (sowt / 0x74776F73), 48000 Hz, stereo, s16, 1536 kb/s
    Metadata:
      handler_name    : DataHandler
File 'publiciteit.mov' already exists. Overwrite ? [y/N] y
Output #0, mov, to 'publiciteit.mov':
  Metadata:
    encoder         : Lavf57.56.101
    Stream #0:0(eng): Video: h264 (High) (avc1 / 0x31637661), yuvj420p(pc), 1920x1080, q=2-31, 3609 kb/s, 25 fps, 25 tbr, 12800 tbn, 12800 tbc
    Metadata:
      handler_name    : DataHandler
      encoder         : Lavc57.64.101 libx264
    Stream #0:1(eng): Audio: pcm_s16le (sowt / 0x74776F73), 48000 Hz, stereo, 1536 kb/s
    Metadata:
      handler_name    : DataHandler
Stream mapping:
  Stream #0:0 -> #0:0 (copy)
  Stream #0:1 -> #0:1 (copy)
Press [q] to stop, [?] for help
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x5614a3e930e0] Auto-inserting h264_mp4toannexb bitstream filter
frame= 1054 fps=0.0 q=-1.0 Lsize=   27031kB time=00:00:52.11 bitrate=4249.2kbits/s speed= 458x    
video:19123kB audio:7884kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.090874%

De size of the original files are 25.8 MB and 8.4 MB. The size of the
generated file is 27.7 MB. Which seems a bit small.

After the first part of the generated file has been played, I hear the
sound of the second video, but the screen displays the end of the
first video for 12 seconds and then the video of the second is shown
and the audio is way out of sink. And after the audio is finished the
last 12 seconds of the video are shown without audio.

What could be happening here and how do I solve it.

My version:
ffmpeg version 3.2.12-1~deb9u1 Copyright (c) 2000-2018 the FFmpeg developers
  built with gcc 6.3.0 (Debian 6.3.0-18+deb9u1) 20170516
  configuration: --prefix=/usr --extra-version='1~deb9u1' --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --enable-gpl --disable-stripping --enable-avresample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libebur128 --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libmp3lame --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-omx --enable-openal --enable-opengl --enable-sdl2 --enable-libdc1394 --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libopencv --enable-libx264 --enable-shared
  libavutil      55. 34.101 / 55. 34.101
  libavcodec     57. 64.101 / 57. 64.101
  libavformat    57. 56.101 / 57. 56.101
  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

--
Cecil Westerhof
Senior Software Engineer
LinkedIn: http://www.linkedin.com/in/cecilwesterhof
_______________________________________________
ffmpeg-user mailing list
[hidden email]
http://ffmpeg.org/mailman/listinfo/ffmpeg-user

To unsubscribe, visit link above, or email
[hidden email] with subject "unsubscribe".
Reply | Threaded
Open this post in threaded view
|

Re: Concatenation of two file does not work correctly

Carl Eugen Hoyos-2


> Am 06.09.2018 um 16:39 schrieb Cecil Westerhof <[hidden email]>:

> My version:
> ffmpeg version 3.2.12-1~deb9u1

Please test current FFmpeg git head and report back.

Carl Eugen
_______________________________________________
ffmpeg-user mailing list
[hidden email]
http://ffmpeg.org/mailman/listinfo/ffmpeg-user

To unsubscribe, visit link above, or email
[hidden email] with subject "unsubscribe".
Reply | Threaded
Open this post in threaded view
|

Re: Concatenation of two file does not work correctly

Cecil Westerhof-3
In reply to this post by Cecil Westerhof-3
I found a solution, but I got another one back.

I converted the two videos with:
    ffmpeg -i pauline.mov -acodec aac -vcodec copy pauline.mp4

Now the concatenation works.

But there where a few other files that also had to be concatenated.
For example:
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'joyce.mov':
  Metadata:
    major_brand     : qt  
    minor_version   : 512
    compatible_brands: qt  
    encoder         : Lavf57.56.101
  Duration: 00:00:41.52, start: 0.000000, bitrate: 5299 kb/s
    Stream #0:0(eng): Video: h264 (High) (avc1 / 0x31637661), yuvj420p(pc), 1920x1080, 3761 kb/s, 25 fps, 25 tbr, 12800 tbn, 50 tbc (default)
    Metadata:
      handler_name    : DataHandler
      encoder         : Lavc57.64.101 libx264
    Stream #0:1(eng): Audio: pcm_s16le (sowt / 0x74776F73), 48000 Hz, stereo, s16, 1536 kb/s (default)
    Metadata:
      handler_name    : DataHandler

But when I try to convert that one to mp4 I get a lot of messages
like:
[mp4 @ 0x560dae32d1a0] Non-monotonous DTS in output stream 0:0; previous: -865, current: -1024; changing to -864. This may result in incorrect timestamps in the output file.

And the timing of the first few seconds is completely out of sync.

What could be happening here and how do I solve it?


Cecil Westerhof <[hidden email]> writes:

> I have two mov files I want to concatenate.
>
> The first:
> Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'pauline.mov':
>   Metadata:
>     major_brand     : qt  
>     minor_version   : 512
>     compatible_brands: qt  
>     encoder         : Lavf57.56.101
>   Duration: 00:00:40.09, start: 0.000000, bitrate: 5149 kb/s
>     Stream #0:0(eng): Video: h264 (High) (avc1 / 0x31637661), yuvj420p(pc), 1920x1080, 3609 kb/s, 25 fps, 25 tbr, 12800 tbn, 50 tbc (default)
>     Metadata:
>       handler_name    : DataHandler
>       encoder         : Lavc57.64.101 libx264
>     Stream #0:1(eng): Audio: pcm_s16le (sowt / 0x74776F73), 48000 Hz, stereo, s16, 1536 kb/s (default)
>     Metadata:
>       handler_name    : DataHandler
>
> The second:
> Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'cecil.mov':
>   Metadata:
>     major_brand     : qt  
>     minor_version   : 512
>     compatible_brands: qt  
>     encoder         : Lavf57.56.101
>   Duration: 00:00:12.08, start: 0.000000, bitrate: 5577 kb/s
>     Stream #0:0(eng): Video: h264 (High) (avc1 / 0x31637661), yuvj420p(pc), 1920x1080, 4044 kb/s, 25 fps, 25 tbr, 12800 tbn, 50 tbc (default)
>     Metadata:
>       handler_name    : DataHandler
>       encoder         : Lavc57.64.101 libx264
>     Stream #0:1(eng): Audio: pcm_s16le (sowt / 0x74776F73), 48000 Hz, stereo, s16, 1536 kb/s (default)
>     Metadata:
>       handler_name    : DataHandler
>
> I created a publiciteit.txt with:
> file pauline.mov
> file cecil.mov
>
> And then I call:
> ffmpeg -f concat -i publiciteit.txt -acodec copy -vcodec copy publiciteit.mov
>
> This gives:
> mov,mp4,m4a,3gp,3g2,mj2 @ 0x5614a3e930e0] Auto-inserting h264_mp4toannexb bitstream filter
> Input #0, concat, from 'publiciteit.txt':
>   Duration: N/A, start: -0.037333, bitrate: 5145 kb/s
>     Stream #0:0(eng): Video: h264 (High) (avc1 / 0x31637661), yuvj420p(pc), 1920x1080, 3609 kb/s, 25 fps, 25 tbr, 12800 tbn, 50 tbc
>     Metadata:
>       handler_name    : DataHandler
>       encoder         : Lavc57.64.101 libx264
>     Stream #0:1(eng): Audio: pcm_s16le (sowt / 0x74776F73), 48000 Hz, stereo, s16, 1536 kb/s
>     Metadata:
>       handler_name    : DataHandler
> File 'publiciteit.mov' already exists. Overwrite ? [y/N] y
> Output #0, mov, to 'publiciteit.mov':
>   Metadata:
>     encoder         : Lavf57.56.101
>     Stream #0:0(eng): Video: h264 (High) (avc1 / 0x31637661), yuvj420p(pc), 1920x1080, q=2-31, 3609 kb/s, 25 fps, 25 tbr, 12800 tbn, 12800 tbc
>     Metadata:
>       handler_name    : DataHandler
>       encoder         : Lavc57.64.101 libx264
>     Stream #0:1(eng): Audio: pcm_s16le (sowt / 0x74776F73), 48000 Hz, stereo, 1536 kb/s
>     Metadata:
>       handler_name    : DataHandler
> Stream mapping:
>   Stream #0:0 -> #0:0 (copy)
>   Stream #0:1 -> #0:1 (copy)
> Press [q] to stop, [?] for help
> [mov,mp4,m4a,3gp,3g2,mj2 @ 0x5614a3e930e0] Auto-inserting h264_mp4toannexb bitstream filter
> frame= 1054 fps=0.0 q=-1.0 Lsize=   27031kB time=00:00:52.11 bitrate=4249.2kbits/s speed= 458x    
> video:19123kB audio:7884kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.090874%
>
> De size of the original files are 25.8 MB and 8.4 MB. The size of the
> generated file is 27.7 MB. Which seems a bit small.
>
> After the first part of the generated file has been played, I hear the
> sound of the second video, but the screen displays the end of the
> first video for 12 seconds and then the video of the second is shown
> and the audio is way out of sink. And after the audio is finished the
> last 12 seconds of the video are shown without audio.
>
> What could be happening here and how do I solve it.
>
> My version:
> ffmpeg version 3.2.12-1~deb9u1 Copyright (c) 2000-2018 the FFmpeg developers
>   built with gcc 6.3.0 (Debian 6.3.0-18+deb9u1) 20170516
>   configuration: --prefix=/usr --extra-version='1~deb9u1' --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --enable-gpl --disable-stripping --enable-avresample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libebur128 --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libmp3lame --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-omx --enable-openal --enable-opengl --enable-sdl2 --enable-libdc1394 --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libopencv --enable-libx264 --enable-shared
>   libavutil      55. 34.101 / 55. 34.101
>   libavcodec     57. 64.101 / 57. 64.101
>   libavformat    57. 56.101 / 57. 56.101
>   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

--
Cecil Westerhof
Senior Software Engineer
LinkedIn: http://www.linkedin.com/in/cecilwesterhof
_______________________________________________
ffmpeg-user mailing list
[hidden email]
http://ffmpeg.org/mailman/listinfo/ffmpeg-user

To unsubscribe, visit link above, or email
[hidden email] with subject "unsubscribe".