Hello all,

i played around recently a lot with finding the best proxy format for editing with Adobe Premiere Pro (CC).

My hardware/OS specs:

* Windows 7 Pro 64bit
* ffmpeg version N-66639-g6b347f5

I tried a lot of different formats, including:

1. ProRes MOV's
2. MJPEG MOV's
3. I-frame only MPEG2

There are several problems with these: Premiere skips randomly loading 1.'s when importing many of them, crashes from time to time with 2. and 3. worked best but from time to time i get playback errors and skipped frames.

So i really want to go with MJPEG in an AVI container. I like MJPEG for the speed/size/quality. And Premiere likes AVI.

The only problem: I don't get ffmpeg to write a correct timecode inside the avi's.

So, here i have 3 files:

a) N_EFST_X102_000.mov: the original source file, ProRes 422
b) N_EFST_X102_000_adobe.avi: Uncompressed avi (resized to 640x360 for size reasons) encoded from Adobe After Effects c) N_EFST_X102_000_ffmpeg.avi: MJPEG AVI, encoded with ffmpeg with the following command:

(The timecode given is just for testing purposes, i would read it later via ffprobe)

ffmpeg -report -y -i N_EFST_X102_000.mov -timecode 15:59:59:20 -metadata timecode="15:59:59:20" -c:v mjpeg -qscale:v 6 -c:a mp3 N_EFST_X102_000_ffmpeg.avi

When i import file b) in Premiere, it has the original timecode from the source file a) even though there appears no timecode in ffprobe's output of b) When i import file c) in Premiere, timecode is always 00:00:00:00, even though there IS a timecode in the metadata

So here is my question(s):

How can i write correct timecode inside an AVI container, so that Premiere supports it?
Is this even possible? I've read something that AVI doesn't support TC...
How does Adobe manage to do it (see file b))?

Here is the ffprobe output of the 3 files mentioned:

Thanks, Dietmar

--------------------------------------------------------------------------------------------------------------------------------------

ffprobe -report N_EFST_X102_000.mov
ffprobe version N-66639-g6b347f5 Copyright (c) 2007-2014 the FFmpeg developers
  built on Oct  5 2014 22:10:17 with gcc 4.9.1 (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-zlib
  libavutil      54.  9.100 / 54.  9.100
  libavcodec     56.  2.101 / 56.  2.101
  libavformat    56.  7.104 / 56.  7.104
  libavdevice    56.  1.100 / 56.  1.100
  libavfilter     5.  1.102 /  5.  1.102
  libswscale      3.  1.100 /  3.  1.100
  libswresample   1.  1.100 /  1.  1.100
  libpostproc    53.  1.100 / 53.  1.100
[mov,mp4,m4a,3gp,3g2,mj2 @ 0000000002b557a0] Format mov,mp4,m4a,3gp,3g2,mj2 probed with size=2048 and score=100 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000000002b557a0] ISO: File Type Major Brand: qt [mov,mp4,m4a,3gp,3g2,mj2 @ 0000000002b557a0] Before avformat_find_stream_info() pos: 139916477 bytes read:197115 seeks:7
[mov,mp4,m4a,3gp,3g2,mj2 @ 0000000002b557a0] All info found
[mov,mp4,m4a,3gp,3g2,mj2 @ 0000000002b557a0] After avformat_find_stream_info() pos: 3031040 bytes read:1188327 seeks:9 frames:3
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'N_EFST_X102_000.mov':
  Metadata:
    major_brand     : qt
    minor_version   : 537331968
    compatible_brands: qt  CDes
    creation_time   : 2008-06-06 20:25:39
    timecode        : 15:31:59:07
  Duration: 00:00:05.68, start: 0.000000, bitrate: 197065 kb/s
Stream #0:0(eng), 1, 1/25: Video: prores (apch / 0x68637061), yuv422p10le, 1920x1080, 185648 kb/s, SAR 1:1 DAR 16:9, 25 fps, 25 tbr, 25 tbn, 25 tbc (default)
    Metadata:
      creation_time   : 2008-06-06 20:25:39
      encoder         : Apple ProRes 422 (HQ)
Stream #0:1(eng), 1, 1/48000: Audio: pcm_s32be (lpcm / 0x6D63706C), 48000 Hz, 2 channels, s32, 3072 kb/s (default)
    Metadata:
      creation_time   : 2008-06-06 20:25:39
Stream #0:2(eng), 1, 1/25: Data: none (tmcd / 0x64636D74), 0 kb/s (default)
    Metadata:
      creation_time   : 2008-06-06 20:25:39
      reel_name       : Odyssey
      timecode        : 15:31:59:07
detected 12 logical cores
Unsupported codec with id 0 for input stream 2
[AVIOContext @ 0000000002b5de60] Statistics: 1188327 bytes read, 9 seeks

--------------------------------------------------------------------------------------------------------------------------------------

ffprobe -report N_EFST_X102_000_adobe.avi
ffprobe version N-66639-g6b347f5 Copyright (c) 2007-2014 the FFmpeg developers
  built on Oct  5 2014 22:10:17 with gcc 4.9.1 (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-zlib
  libavutil      54.  9.100 / 54.  9.100
  libavcodec     56.  2.101 / 56.  2.101
  libavformat    56.  7.104 / 56.  7.104
  libavdevice    56.  1.100 / 56.  1.100
  libavfilter     5.  1.102 /  5.  1.102
  libswscale      3.  1.100 /  3.  1.100
  libswresample   1.  1.100 /  1.  1.100
  libpostproc    53.  1.100 / 53.  1.100
[avi @ 0000000002b55fe0] Format avi probed with size=2048 and score=100
[avi @ 0000000002b4a460] use odml:1
st:1 removing common factor 4 from timebase
[avi @ 0000000002b55fe0] Before avformat_find_stream_info() pos: 11900 bytes read:168584 seeks:6 [avi @ 0000000002b55fe0] parser not found for codec rawvideo, packets or times may be invalid. [avi @ 0000000002b55fe0] parser not found for codec pcm_s16le, packets or times may be invalid. [avi @ 0000000002b55fe0] parser not found for codec pcm_s16le, packets or times may be invalid. [avi @ 0000000002b55fe0] parser not found for codec rawvideo, packets or times may be invalid.
[avi @ 0000000002b55fe0] All info found
[avi @ 0000000002b55fe0] After avformat_find_stream_info() pos: 895116 bytes read:1030932 seeks:6 frames:48
Input #0, avi, from 'N_EFST_X102_000_adobe.avi':
  Metadata:
    date            : 2014-12-12T14:01:15.00581
    encoder         : Adobe After Effects CC 2014 (Windows)
  Duration: 00:00:05.68, start: 0.000000, bitrate: 139797 kb/s
Stream #0:0, 1, 1/25: Video: rawvideo, bgr24, 640x360, 139220 kb/s, 25 fps, 25 tbr, 25 tbn, 25 tbc Stream #0:1, 47, 1/48000: Audio: pcm_s16le ([1][0][0][0] / 0x0001), 48000 H

--------------------------------------------------------------------------------------------------------------------------------------

ffprobe -report N_EFST_X102_000_ffmpeg.avi
ffprobe version N-66639-g6b347f5 Copyright (c) 2007-2014 the FFmpeg developers
  built on Oct  5 2014 22:10:17 with gcc 4.9.1 (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-zlib
  libavutil      54.  9.100 / 54.  9.100
  libavcodec     56.  2.101 / 56.  2.101
  libavformat    56.  7.104 / 56.  7.104
  libavdevice    56.  1.100 / 56.  1.100
  libavfilter     5.  1.102 /  5.  1.102
  libswscale      3.  1.100 /  3.  1.100
  libswresample   1.  1.100 /  1.  1.100
  libpostproc    53.  1.100 / 53.  1.100
[avi @ 0000000002b55fe0] Format avi probed with size=2048 and score=100
[avi @ 0000000002b4a460] use odml:1
[avi @ 0000000002b55fe0] Before avformat_find_stream_info() pos: 10008 bytes read:110504 seeks:4
[mjpeg @ 0000000002b670a0] marker=d8 avail_size_in_buf=74461
[mjpeg @ 0000000002b670a0] marker parser used 0 bytes (0 bits)
[mjpeg @ 0000000002b670a0] marker=e0 avail_size_in_buf=74459
[mjpeg @ 0000000002b670a0] marker parser used 16 bytes (128 bits)
[mjpeg @ 0000000002b670a0] marker=fe avail_size_in_buf=74441
[mjpeg @ 0000000002b670a0] marker parser used 15 bytes (120 bits)
[mjpeg @ 0000000002b670a0] marker=db avail_size_in_buf=74424
[mjpeg @ 0000000002b670a0] index=0
[mjpeg @ 0000000002b670a0] qscale[0]: 8
[mjpeg @ 0000000002b670a0] marker parser used 67 bytes (536 bits)
[mjpeg @ 0000000002b670a0] marker=c4 avail_size_in_buf=74355
[mjpeg @ 0000000002b670a0] class=0 index=0 nb_codes=12
[mjpeg @ 0000000002b670a0] class=0 index=1 nb_codes=12
[mjpeg @ 0000000002b670a0] class=1 index=0 nb_codes=251
[mjpeg @ 0000000002b670a0] class=1 index=1 nb_codes=251
[mjpeg @ 0000000002b670a0] marker parser used 418 bytes (3344 bits)
[mjpeg @ 0000000002b670a0] marker=c0 avail_size_in_buf=73935
[mjpeg @ 0000000002b670a0] sof0: picture: 1920x1080
[mjpeg @ 0000000002b670a0] component 0 2:2 id: 0 quant:0
[mjpeg @ 0000000002b670a0] component 1 1:2 id: 1 quant:0
[mjpeg @ 0000000002b670a0] component 2 1:2 id: 2 quant:0
[mjpeg @ 0000000002b670a0] pix fmt id 22121200
[mjpeg @ 0000000002b670a0] marker parser used 17 bytes (136 bits)
[mjpeg @ 0000000002b670a0] escaping removed 23 bytes
[mjpeg @ 0000000002b670a0] marker=da avail_size_in_buf=73916
[mjpeg @ 0000000002b670a0] component: 0
[mjpeg @ 0000000002b670a0] component: 1
[mjpeg @ 0000000002b670a0] component: 2
[mjpeg @ 0000000002b670a0] marker parser used 73892 bytes (591129 bits)
[mjpeg @ 0000000002b670a0] marker=d9 avail_size_in_buf=0
[mjpeg @ 0000000002b670a0] decode frame unused 0 bytes
[avi @ 0000000002b55fe0] All info found
[avi @ 0000000002b55fe0] After avformat_find_stream_info() pos: 84871 bytes read:152599 seeks:4 frames:2
Input #0, avi, from 'N_EFST_X102_000_ffmpeg.avi':
  Metadata:
    encoder         : Lavf56.7.104
    timecode        : 15:59:59:20
  Duration: 00:00:05.72, start: 0.000000, bitrate: 15472 kb/s
Stream #0:0, 1, 1/25: Video: mjpeg (MJPG / 0x47504A4D), yuvj422p(pc, bt470bg), 1920x1080 [SAR 1:1 DAR 16:9], 15425 kb/s, 25 fps, 25 tbr, 25 tbn, 25 tbc Stream #0:1, 1, 3/125: Audio: mp3 (U[0][0][0] / 0x0055), 48000 Hz, stereo, s16p, 128 kb/s
[AVIOContext @ 0000000002b5e740] Statistics: 152599 bytes read, 4 seeks
_______________________________________________
ffmpeg-user mailing list
[email protected]
http://ffmpeg.org/mailman/listinfo/ffmpeg-user

Reply via email to