[FFmpeg-trac] #4308(undetermined:new): Clip & re-wrap of ProRes

FFmpeg trac at avcodec.org
Wed Feb 11 23:28:41 CET 2015


#4308: Clip & re-wrap of ProRes
-------------------------------------+-------------------------------------
             Reporter:  chrisj       |                     Type:  defect
               Status:  new          |                 Priority:  normal
            Component:               |                  Version:
  undetermined                       |  unspecified
             Keywords:               |               Blocked By:
             Blocking:               |  Reproduced by developer:  0
Analyzed by developer:  0            |
-------------------------------------+-------------------------------------
 I am having a minor issue when using FFMPEG to do frame accurate clip &
 re-wrapping of a ProRes 422 (LT) source. I created a ProRes 422 (LT) 1080p
 23.98 MOV with timecode burn-in & different sections that have green or
 purple. My goal was to test FFMPEG to clip & re-wrap these sections to new
 files and confirm the clip was accurate to what I was trying to pull. With
 a 1080p23.98 source file, the second clip I made from the source showed
 the incorrect in-point. I calculated the in-point (-ss) & duration (-t)
 based on a duration of each frame at 23.976 being 41.708 milliseconds. For
 the two clips I made, the clip that was an even 15 seconds had no issues,
 but the second clip I made, had some odd behavior which was different
 based on the QuickTime application used.

 In Adobe Premiere CC 2014, the purple clip has no issues and displays
 normally from 01:00:00:00 to 01:00:14:23. The green clip has an issue and
 shows the starting frame as 01:00:36:16 instead of 01:00:36:17, the
 timecode start was set to 01:00:36:17 which causes the clip to be off by
 one frame. At the end of the file the frame 01:01:46:15 dos[;aus twice.

 With Avid Media Composer 8.2, the purple clip has no issues and works
 normally. The green clip when loaded into Media Composer starts on the
 correct frame 01:00:36:17, but after 01:01:46:16 it displays the frame
 01:01:46:15 twice.

 QuickTime Player X displays the purple clip without issue. The green clip
 starts a frame early the same as with Adobe Premiere. Unlike Premiere
 QuickTime X displays the last frame 01:01:46:16 correctly.

 QuickTime Player 7 displays the purple clip without issue. The green clip
 starts a frame early and the timecode reader window in QuickTime 7 does
 not advance when going from frame 0 to 1. QuickTime player 7 displays the
 last frame of video (01:01:46:16) times. For two of these frames the
 timecode value stays at 01:01:46:16, but the last frame displays
 01:01:46:17.

 Comparing the purple clip to the green clip based on the ffprobe output, I
 can see that the green clip has negative values set for start_pts &
 start_time for the audio and video tracks, except for the timecode track.

 Purple segment start timecode 01:00:00:00:
 In point for frame 360 is 15014.88 milliseconds: 00:00:15.015
 Out point for frame 720 is 30029.76 millisecods: 00:00:30.029
 Duration of clip is 15014.88 milliseconds: 00:00:15.015

 ffmpeg -ss 00:00:15.015 -i D:\clipping\timecode_test_1080p2398.mov -t
 00:00:15.015 -map 0:v -vcodec copy -map 0:a -acodec copy -timecode
 01:00:00:00 D:\clipping\timecode_test_1080p2398_purple.mov

 ffmpeg version N-69672-g078be09 Copyright (c) 2000-2015 the FFmpeg
 developers
   built with gcc 4.9.2 (GCC)
   configuration: --enable-gpl --enable-version3 --disable-w32threads
 --enable-avisynth --enable-bzlib --enable-fontconfig --enable-frei0r
 --enable-gnutls --enable-iconv --enable-libass --enable-libbluray
 --enable-libbs2b --enable-libcaca --enable-libfreetype --enable-libgme
 --enable-libgsm --enable-libilbc --enable-libmodplug --enable-libmp3lame
 --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg
 --enable-libopus --enable-librtmp --enable-libschroedinger --enable-
 libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --enable-
 libvidstab --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-
 libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-
 libx264 --enable-libx265 --enable-libxavs --enable-libxvid --enable-lzma
 --enable-decklink --enable-zlib
   libavutil      54. 18.100 / 54. 18.100
   libavcodec     56. 21.102 / 56. 21.102
   libavformat    56. 19.100 / 56. 19.100
   libavdevice    56.  4.100 / 56.  4.100
   libavfilter     5.  9.104 /  5.  9.104
   libswscale      3.  1.101 /  3.  1.101
   libswresample   1.  1.100 /  1.  1.100
   libpostproc    53.  3.100 / 53.  3.100
 Guessed Channel Layout for  Input Stream #0.1 : mono
 Guessed Channel Layout for  Input Stream #0.2 : mono
 Guessed Channel Layout for  Input Stream #0.3 : mono
 Guessed Channel Layout for  Input Stream #0.4 : mono
 Input #0, mov,mp4,m4a,3gp,3g2,mj2, from
 'D:\clipping\timecode_test_1080p2398.mov':
   Metadata:
     major_brand     : qt
     minor_version   : 537199360
     compatible_brands: qt
     creation_time   : 2015-02-11 17:16:03
   Duration: 00:03:00.18, start: 0.000000, bitrate: 21996 kb/s
     Stream #0:0(eng): Video: prores (apcs / 0x73637061),
 yuv422p10le(bt709), 1920x1080, 17373 kb/s, SAR 1:1 DAR 16:9, 23.98 fps,
 23.98 tbr, 23976 tbn, 23976 tbc (default)
     Metadata:
       creation_time   : 2015-02-11 17:16:03
       handler_name    : Apple Alias Data Handler
       encoder         : Apple ProRes 422 LT
       timecode        : 00:59:45:00
     Stream #0:1(eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz, 1
 channels, s32 (24 bit), 1152 kb/s (default)
     Metadata:
       creation_time   : 2015-02-11 17:16:03
       handler_name    : Apple Alias Data Handler
     Stream #0:2(eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz, 1
 channels, s32 (24 bit), 1152 kb/s (default)
     Metadata:
       creation_time   : 2015-02-11 17:16:03
       handler_name    : Apple Alias Data Handler
     Stream #0:3(eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz, 1
 channels, s32 (24 bit), 1152 kb/s (default)
     Metadata:
       creation_time   : 2015-02-11 17:16:03
       handler_name    : Apple Alias Data Handler
     Stream #0:4(eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz, 1
 channels, s32 (24 bit), 1152 kb/s (default)
     Metadata:
       creation_time   : 2015-02-11 17:16:03
       handler_name    : Apple Alias Data Handler
     Stream #0:5(eng): Data: none (tmcd / 0x64636D74) (default)
     Metadata:
       creation_time   : 2015-02-11 17:21:45
       handler_name    : Apple Alias Data Handler
       timecode        : 00:59:45:00
 Output #0, mov, to 'D:\clipping\timecode_test_1080p2398_purple.mov':
   Metadata:
     major_brand     : qt
     minor_version   : 537199360
     compatible_brands: qt
     timecode        : 01:00:00:00
     encoder         : Lavf56.19.100
     Stream #0:0(eng): Video: prores (apcs / 0x73637061), yuv422p10le,
 1920x1080 [SAR 1:1 DAR 16:9], q=2-31, 17373 kb/s, 23.98 fps, 23.98 tbr,
 23976 tbn, 23976 tbc (default)
     Metadata:
       creation_time   : 2015-02-11 17:16:03
       handler_name    : Apple Alias Data Handler
       encoder         : Apple ProRes 422 LT
       timecode        : 00:59:45:00
     Stream #0:1(eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz, mono
 (24 bit), 1152 kb/s (default)
     Metadata:
       creation_time   : 2015-02-11 17:16:03
       handler_name    : Apple Alias Data Handler
     Stream #0:2(eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz, mono
 (24 bit), 1152 kb/s (default)
     Metadata:
       creation_time   : 2015-02-11 17:16:03
       handler_name    : Apple Alias Data Handler
     Stream #0:3(eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz, mono
 (24 bit), 1152 kb/s (default)
     Metadata:
       creation_time   : 2015-02-11 17:16:03
       handler_name    : Apple Alias Data Handler
     Stream #0:4(eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz, mono
 (24 bit), 1152 kb/s (default)
     Metadata:
       creation_time   : 2015-02-11 17:16:03
       handler_name    : Apple Alias Data Handler
 Stream mapping:
   Stream #0:0 -> #0:0 (copy)
   Stream #0:1 -> #0:1 (copy)
   Stream #0:2 -> #0:2 (copy)
   Stream #0:3 -> #0:3 (copy)
   Stream #0:4 -> #0:4 (copy)
 Press [q] to stop, [?] for help
 frame=  360 fps=0.0 q=-1.0 Lsize=   43896kB time=00:00:15.01
 bitrate=23949.0kbits/s
 video:35431kB audio:8446kB subtitle:0kB other streams:0kB global
 headers:0kB muxing overhead: 0.042288%

 Green segment start timecode 01:00:36:17:
 In point for frame 1241 is 51759.628: 00:00:51.760
 Out point for frame 2921 is 121829.068: 00:02:01.829
 Duration of clip is 70069.44: 00:01:10.069

 ffmpeg -ss 00:00:51.760 -i D:\clipping\timecode_test_1080p2398.mov -t
 00:01:10.069 -map 0:v -vcodec copy -map 0:a -acodec copy -timecode
 01:00:36:17 D:\clipping\timecode_test_1080p2398_green.mov

 ffmpeg version N-69672-g078be09 Copyright (c) 2000-2015 the FFmpeg
 developers
   built with gcc 4.9.2 (GCC)
   configuration: --enable-gpl --enable-version3 --disable-w32threads
 --enable-avisynth --enable-bzlib --enable-fontconfig --enable-frei0r
 --enable-gnutls --enable-iconv --enable-libass --enable-libbluray
 --enable-libbs2b --enable-libcaca --enable-libfreetype --enable-libgme
 --enable-libgsm --enable-libilbc --enable-libmodplug --enable-libmp3lame
 --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg
 --enable-libopus --enable-librtmp --enable-libschroedinger --enable-
 libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --enable-
 libvidstab --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-
 libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-
 libx264 --enable-libx265 --enable-libxavs --enable-libxvid --enable-lzma
 --enable-decklink --enable-zlib
   libavutil      54. 18.100 / 54. 18.100
   libavcodec     56. 21.102 / 56. 21.102
   libavformat    56. 19.100 / 56. 19.100
   libavdevice    56.  4.100 / 56.  4.100
   libavfilter     5.  9.104 /  5.  9.104
   libswscale      3.  1.101 /  3.  1.101
   libswresample   1.  1.100 /  1.  1.100
   libpostproc    53.  3.100 / 53.  3.100
 Guessed Channel Layout for  Input Stream #0.1 : mono
 Guessed Channel Layout for  Input Stream #0.2 : mono
 Guessed Channel Layout for  Input Stream #0.3 : mono
 Guessed Channel Layout for  Input Stream #0.4 : mono
 Input #0, mov,mp4,m4a,3gp,3g2,mj2, from
 'D:\clipping\timecode_test_1080p2398.mov':
   Metadata:
     major_brand     : qt
     minor_version   : 537199360
     compatible_brands: qt
     creation_time   : 2015-02-11 17:16:03
   Duration: 00:03:00.18, start: 0.000000, bitrate: 21996 kb/s
     Stream #0:0(eng): Video: prores (apcs / 0x73637061),
 yuv422p10le(bt709), 1920x1080, 17373 kb/s, SAR 1:1 DAR 16:9, 23.98 fps,
 23.98 tbr, 23976 tbn, 23976 tbc (default)
     Metadata:
       creation_time   : 2015-02-11 17:16:03
       handler_name    : Apple Alias Data Handler
       encoder         : Apple ProRes 422 LT
       timecode        : 00:59:45:00
     Stream #0:1(eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz, 1
 channels, s32 (24 bit), 1152 kb/s (default)
     Metadata:
       creation_time   : 2015-02-11 17:16:03
       handler_name    : Apple Alias Data Handler
     Stream #0:2(eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz, 1
 channels, s32 (24 bit), 1152 kb/s (default)
     Metadata:
       creation_time   : 2015-02-11 17:16:03
       handler_name    : Apple Alias Data Handler
     Stream #0:3(eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz, 1
 channels, s32 (24 bit), 1152 kb/s (default)
     Metadata:
       creation_time   : 2015-02-11 17:16:03
       handler_name    : Apple Alias Data Handler
     Stream #0:4(eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz, 1
 channels, s32 (24 bit), 1152 kb/s (default)
     Metadata:
       creation_time   : 2015-02-11 17:16:03
       handler_name    : Apple Alias Data Handler
     Stream #0:5(eng): Data: none (tmcd / 0x64636D74) (default)
     Metadata:
       creation_time   : 2015-02-11 17:21:45
       handler_name    : Apple Alias Data Handler
       timecode        : 00:59:45:00
 Output #0, mov, to 'D:\clipping\timecode_test_1080p2398_green.mov':
   Metadata:
     major_brand     : qt
     minor_version   : 537199360
     compatible_brands: qt
     timecode        : 01:00:36:17
     encoder         : Lavf56.19.100
     Stream #0:0(eng): Video: prores (apcs / 0x73637061), yuv422p10le,
 1920x1080 [SAR 1:1 DAR 16:9], q=2-31, 17373 kb/s, 23.98 fps, 23.98 tbr,
 23976 tbn, 23976 tbc (default)
     Metadata:
       creation_time   : 2015-02-11 17:16:03
       handler_name    : Apple Alias Data Handler
       encoder         : Apple ProRes 422 LT
       timecode        : 00:59:45:00
     Stream #0:1(eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz, mono
 (24 bit), 1152 kb/s (default)
     Metadata:
       creation_time   : 2015-02-11 17:16:03
       handler_name    : Apple Alias Data Handler
     Stream #0:2(eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz, mono
 (24 bit), 1152 kb/s (default)
     Metadata:
       creation_time   : 2015-02-11 17:16:03
       handler_name    : Apple Alias Data Handler
     Stream #0:3(eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz, mono
 (24 bit), 1152 kb/s (default)
     Metadata:
       creation_time   : 2015-02-11 17:16:03
       handler_name    : Apple Alias Data Handler
     Stream #0:4(eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz, mono
 (24 bit), 1152 kb/s (default)
     Metadata:
       creation_time   : 2015-02-11 17:16:03
       handler_name    : Apple Alias Data Handler
 Stream mapping:
   Stream #0:0 -> #0:0 (copy)
   Stream #0:1 -> #0:1 (copy)
   Stream #0:2 -> #0:2 (copy)
   Stream #0:3 -> #0:3 (copy)
   Stream #0:4 -> #0:4 (copy)
 Press [q] to stop, [?] for help
 frame= 1681 fps=0.0 q=-1.0 Lsize=  219795kB time=00:01:10.08
 bitrate=25690.6kbits/s
 video:180270kB audio:39450kB subtitle:0kB other streams:0kB global
 headers:0kB muxing overhead: 0.033914%

--
Ticket URL: <https://trac.ffmpeg.org/ticket/4308>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker


More information about the FFmpeg-trac mailing list