[FFmpeg-user] Gnarly ffmpeg multi-stream demux challenge test clip

David Favor david at davidfavor.com
Tue Sep 4 03:34:16 CEST 2012


Attempting to demux (copy) two video streams from
one video to another, dropping the audio.

These video clips are Skype recordings with one
video and one audio track per each caller in a
group call.

The audio has to be extracted + normalized, which
works fine.

Problem is the video. The source video plays/previews
in QuickTime with each video side-by-side. The source
video also works great dropping into other video editors
like ScreenFlow or iMovie.

Attempting to copy only video streams (audio dropped)
produces an output file with all the videos stacked
on top of each other.

The output video is uneditable by any software I have.
No way to move videos from off the top of each other.

There's a copy of the source video here:

     http://DavidFavor.com/private/2012/foo.skype.mov

There's a YouTube video detailing the challenge here:

     http://YouTube.com/watch?v=eabMRPb5zEQ

The command I'm using for the extraction is:

    ffmpeg -y -i foo.skype.mov -an -vcodec copy -map 0:2 -map 0:3 foo.video.mov

The output stream mapping appears correct:

    ... ... ...
    Stream mapping:
      Stream #0:2 -> #0:0 (copy)
      Stream #0:3 -> #0:1 (copy)
    ... ... ...

Here's a stream dump of the source video and a complete dump of the
ffmpeg output from the extraction command.

I'd appreciate an ffmpeg guru passing along the correct syntax.

Thanks!
_______

David-Favor-iMac> ffmpeg -i foo.skype.mov
ffmpeg version 0.11.1.git-56ae592 Copyright (c) 2000-2012 the FFmpeg developers
   built on Sep  3 2012 11:56:20 with gcc 4.2.1 (Apple Inc. build 5666) (dot 3)
   configuration: --prefix=/opt/local --enable-swscale --enable-avfilter --enable-libmp3lame 
--enable-libvorbis --enable-libtheora --enable-libschroedinger --enable-libopenjpeg 
--enable-libmodplug --enable-libvpx --enable-libspeex --mandir=/opt/local/share/man --enable-shared 
--enable-pthreads --cc=/usr/bin/gcc-4.2 --arch=x86_64 --enable-yasm --enable-gpl --enable-postproc 
--enable-libx264 --enable-libxvid --enable-nonfree --enable-libfaac
   libavutil      51. 65.100 / 51. 65.100
   libavcodec     54. 41.100 / 54. 41.100
   libavformat    54. 17.100 / 54. 17.100
   libavdevice    54.  1.100 / 54.  1.100
   libavfilter     3.  2.100 /  3.  2.100
   libswscale      2.  1.100 /  2.  1.100
   libswresample   0. 15.100 /  0. 15.100
   libpostproc    52.  0.100 / 52.  0.100
Guessed Channel Layout for  Input Stream #0.0 : mono
Guessed Channel Layout for  Input Stream #0.1 : stereo
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'foo.skype.mov':
   Metadata:
     major_brand     : qt
     minor_version   : 537199360
     compatible_brands: qt
     creation_time   : 2011-02-25 16:50:37
   Duration: 00:08:17.90, start: 0.000000, bitrate: 5388 kb/s
     Stream #0:0(eng): Audio: pcm_f32le (fl32 / 0x32336C66), 44100 Hz, mono, flt, 1411 kb/s
     Metadata:
       creation_time   : 2011-02-25 16:50:37
       handler_name    : Apple Alias Data Handler
     Stream #0:1(eng): Audio: pcm_f32le (fl32 / 0x32336C66), 44100 Hz, stereo, flt, 2822 kb/s
     Metadata:
       creation_time   : 2011-02-25 16:50:37
       handler_name    : Apple Alias Data Handler
     Stream #0:2(eng): Video: h264 (Main) (avc1 / 0x31637661), yuv420p, 640x480, 350 kb/s, 15 fps, 
15.08 tbr, 1k tbn, 2k tbc
     Metadata:
       creation_time   : 2011-02-25 16:50:37
       handler_name    : Apple Alias Data Handler
     Stream #0:3(eng): Video: h264 (Main) (avc1 / 0x31637661), yuv420p, 640x480, 801 kb/s, 15 fps, 
15.08 tbr, 1k tbn, 2k tbc
     Metadata:
       creation_time   : 2011-02-25 16:50:37
       handler_name    : Apple Alias Data Handler
At least one output file must be specified
_______

David-Favor-iMac> ffmpeg -y -i foo.skype.mov -an -vcodec copy -map 0:2 -map 0:3 foo.video.mov
ffmpeg version 0.11.1.git-56ae592 Copyright (c) 2000-2012 the FFmpeg developers
   built on Sep  3 2012 11:56:20 with gcc 4.2.1 (Apple Inc. build 5666) (dot 3)
   configuration: --prefix=/opt/local --enable-swscale --enable-avfilter --enable-libmp3lame 
--enable-libvorbis --enable-libtheora --enable-libschroedinger --enable-libopenjpeg 
--enable-libmodplug --enable-libvpx --enable-libspeex --mandir=/opt/local/share/man --enable-shared 
--enable-pthreads --cc=/usr/bin/gcc-4.2 --arch=x86_64 --enable-yasm --enable-gpl --enable-postproc 
--enable-libx264 --enable-libxvid --enable-nonfree --enable-libfaac
   libavutil      51. 65.100 / 51. 65.100
   libavcodec     54. 41.100 / 54. 41.100
   libavformat    54. 17.100 / 54. 17.100
   libavdevice    54.  1.100 / 54.  1.100
   libavfilter     3.  2.100 /  3.  2.100
   libswscale      2.  1.100 /  2.  1.100
   libswresample   0. 15.100 /  0. 15.100
   libpostproc    52.  0.100 / 52.  0.100
Guessed Channel Layout for  Input Stream #0.0 : mono
Guessed Channel Layout for  Input Stream #0.1 : stereo
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'foo.skype.mov':
   Metadata:
     major_brand     : qt
     minor_version   : 537199360
     compatible_brands: qt
     creation_time   : 2011-02-25 16:50:37
   Duration: 00:08:17.90, start: 0.000000, bitrate: 5388 kb/s
     Stream #0:0(eng): Audio: pcm_f32le (fl32 / 0x32336C66), 44100 Hz, mono, flt, 1411 kb/s
     Metadata:
       creation_time   : 2011-02-25 16:50:37
       handler_name    : Apple Alias Data Handler
     Stream #0:1(eng): Audio: pcm_f32le (fl32 / 0x32336C66), 44100 Hz, stereo, flt, 2822 kb/s
     Metadata:
       creation_time   : 2011-02-25 16:50:37
       handler_name    : Apple Alias Data Handler
     Stream #0:2(eng): Video: h264 (Main) (avc1 / 0x31637661), yuv420p, 640x480, 350 kb/s, 15 fps, 
15.08 tbr, 1k tbn, 2k tbc
     Metadata:
       creation_time   : 2011-02-25 16:50:37
       handler_name    : Apple Alias Data Handler
     Stream #0:3(eng): Video: h264 (Main) (avc1 / 0x31637661), yuv420p, 640x480, 801 kb/s, 15 fps, 
15.08 tbr, 1k tbn, 2k tbc
     Metadata:
       creation_time   : 2011-02-25 16:50:37
       handler_name    : Apple Alias Data Handler
Output #0, mov, to 'foo.video.mov':
   Metadata:
     major_brand     : qt
     minor_version   : 537199360
     compatible_brands: qt
     encoder         : Lavf54.17.100
     Stream #0:0(eng): Video: h264 (avc1 / 0x31637661), yuv420p, 640x480, q=2-31, 350 kb/s, 15 fps, 
1k tbn, 1k tbc
     Metadata:
       creation_time   : 2011-02-25 16:50:37
       handler_name    : Apple Alias Data Handler
     Stream #0:1(eng): Video: h264 (avc1 / 0x31637661), yuv420p, 640x480, q=2-31, 801 kb/s, 15 fps, 
1k tbn, 1k tbc
     Metadata:
       creation_time   : 2011-02-25 16:50:37
       handler_name    : Apple Alias Data Handler
Stream mapping:
   Stream #0:2 -> #0:0 (copy)
   Stream #0:3 -> #0:1 (copy)
Press [q] to stop, [?] for help
frame= 7469 fps=5148 q=-1.0 Lq=-1.0 size=   70195kB time=00:08:17.74 bitrate=1155.3kbits/s
video:70007kB audio:0kB subtitle:0 global headers:0kB muxing overhead 0.267434%

-- 
Love feeling your best ever, all day, every day?
Click http://RadicalHealth.com for the easy way!


More information about the ffmpeg-user mailing list