ffmpeg изменяет метаданные временного кода внутри видеофайла

#ffmpeg

#ffmpeg

Вопрос:

У меня возникли проблемы с изменением временного кода внутри метаданных видеофайла «mov»

  ffmpeg -i input.mov -ss 0 -map 0 -acodec copy -vcodec copy -timecode 01:20:10:00 -metadata:s:2:0 timecode=01:20:10:00 -metadata:s:1:0 timecode=01:20:10:00 -metadata:s:0:2 -metadata:s:0:2  timecode=01:10:10:00 output.mov
 

Мне нужно поместить свой собственный тайм-код в файл, но эта команда не работает.

Консоль дает мне:

   mov @ 00000225287fdc00] You requested a copy of the original timecode track so timecode metadata are now ignored
Output #0, mov, to 'convert_A019_02230134_C186.mov':
  Metadata:
    major_brand     : qt  
    minor_version   : 537199360
    compatible_brands: qt  
    timecode        : 01:20:10:00
    encoder         : Lavf58.11.101
    Stream #0:0(eng): Video: prores (apcn / 0x6E637061), yuv422p10le(bt709, progressive), 1920x1080 [SAR 1:1 DAR 16:9], q=2-31, 122315 kb/s, 25 fps, 25 tbr, 12800 tbn, 25 tbc (default)
    Metadata:
      creation_time   : 01:10:10:00
      handler_name    : ?Apple Alias Data Handler
      encoder         : Apple ProRes 422
      timecode        : 01:10:10:00
    Stream #0:1(eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz, stereo, s32 (24 bit), 2304 kb/s (default)
    Metadata:
      creation_time   : 2020-02-23T00:34:02.000000Z
      handler_name    : ?Apple Alias Data Handler
      timecode        : 01:20:10:00
    Stream #0:2(eng): Data: none (tmcd / 0x64636D74), 0 kb/s (default)
    Metadata:
      creation_time   : 2020-02-23T00:34:02.000000Z
      handler_name    : ?Apple Alias Data Handler
      timecode        : 01:20:10:00
Stream mapping:
  Stream #0:0 -> #0:0 (copy)
  Stream #0:1 -> #0:1 (copy)
  Stream #0:2 -> #0:2 (copy)
Press [q] to stop, [?] for help
frame=  467 fps=0.0 q=-1.0 Lsize=  281452kB time=00:00:18.64 bitrate=123693.3kbits/s speed=71.1x    
video:278913kB audio:2531kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.002533%
 

Я не понимаю, почему он не изменяет временной код в файле mov. Старый таймкод остается.

Комментарии:

1. Попробуйте -timecode 01:30:10:00

2. НЕТ, не работает, также включает эту команду =»ffmpeg -i » nombre » -ss 0 -map 0 -acodec copy -vcodec copy -timecode 01:20:10:00 -метаданные: s: 2:0 timecode= 01:20:10:00 -метаданные: s: 2:0 timecode = 01:20:10:00 -метаданные:s:1:0 timecode = 01:20:10:00 -метаданные: s: 0:2 creation_time= 01:10:10:00 -метаданные: s: 0:2 timecode=01:10:10:00″ » convert_» номбре

3. В вашем первоначальном вопросе было неясно, что вы хотите применить 2 разных значения временного кода.

4. Привет, Нет, я хотел бы изменить тайм-код для открытия в Davinci проблема в том, что после изменения метаданных скопируйте поток #0:0 -> #0:0 ( копировать) Поток #0:1 -> #0:1 ( копия) при пересмотре она остается такой же, как и раньше

5. Да, у вас есть причина — работает тайм-код 01:30:10:00

Ответ №1:

Исключите исходные данные таймкода, используя отрицательное отображение.

 ffmpeg -i input.mov -map 0 -map -0:d -c copy -timecode 01:20:10:00 output.mov