[FFmpeg-user] Copy all metadata fields?

Peter B. pb at das-werkstatt.com
Wed Mar 18 08:49:26 EET 2020


Hi everyone!

Is it possible to ask/force FFmpeg to keep as many metadata fields as 
technically possible when transcoding or rewrapping?

I understand that not all (container-)formats support the same metadata 
fields, but I've noticed for example that when rewrapping, not all 
metadata fields that were populated in the input are then present in the 
output - even if the format is identical.


Here is an example of rewrapping MOV to MOV where I've noticed the 
following data missing in the output (commandline and output see below):

   * color information (smpte170m/bt470bg/bt709)
   * creation_time (*)


I'm grateful for any hints or suggestions!
Thank you in advance,
Peter

(*) Copying "creation_time" may be controversial, but it would be 
amazing to be able to preserve this information in the output (e.g. map 
it to a different field?).




Files were created with the following command:
// ------------------------
$ ffmpeg -i in.mov -c copy -map 0 out.mov
// ------------------------


Then metadata checked as follows:
// ------------------------
$ ffmpeg -i in.mov -i out.mov -hide_banner
// ------------------------



Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'in.mov':
   Metadata:
     major_brand     : qt
     minor_version   : 0
     compatible_brands: qt
     creation_time   : 2012-01-18T12:50:53.000000Z
   Duration: 00:03:54.80, start: 0.000000, bitrate: 30453 kb/s
     Stream #0:0(und): Video: dvvideo (dvcp / 0x70637664), 
yuv420p(smpte170m/bt470bg/bt709, bottom coded first (swapped)), 720x576 
[SAR 16:15 DAR 4:3], 28800 kb/s, SAR 59:54 DAR 295:216, 25 fps, 25 tbr, 
25k tbn, 25 tbc (default)
     Metadata:
       creation_time   : 2012-01-18T12:50:53.000000Z
       handler_name    : Core Media Video
       encoder         : DV - PAL
       timecode        : 00:37:50:04
     Stream #0:1(und): Audio: pcm_s16le (sowt / 0x74776F73), 48000 Hz, 
stereo, s16, 1536 kb/s (default)
     Metadata:
       creation_time   : 2012-01-18T12:50:53.000000Z
       handler_name    : Core Media Audio
     Stream #0:2(und): Data: none (tmcd / 0x64636D74)
     Metadata:
       creation_time   : 2012-01-18T12:50:53.000000Z
       handler_name    : Core Media Time Code
       reel_name       : 2001-11-10_KveldsseteKaarvatn
       timecode        : 00:37:50:04


Input #1, mov,mp4,m4a,3gp,3g2,mj2, from 'out.mov':
   Metadata:
     major_brand     : qt
     minor_version   : 512
     compatible_brands: qt
     encoder         : Lavf58.33.100
   Duration: 00:03:54.84, start: 0.000000, bitrate: 30333 kb/s
     Stream #1:0: Video: dvvideo (dvcp / 0x70637664), yuv420p(bottom 
coded first (swapped)), 720x576 [SAR 16:15 DAR 4:3], 28800 kb/s, SAR 
59:54 DAR 295:216, 25 fps, 25 tbr, 25k tbn, 25 tbc (default)
     Metadata:
       handler_name    : Core Media Video
       encoder         : DV - PAL
       timecode        : 00:37:50:04
     Stream #1:1: Audio: pcm_s16le (sowt / 0x74776F73), 48000 Hz, 
stereo, s16, 1536 kb/s (default)
     Metadata:
       handler_name    : Core Media Audio
     Stream #1:2: Data: none (tmcd / 0x64636D74)
     Metadata:
       handler_name    : Core Media Time Code
       reel_name       : 2001-11-10_KveldsseteKaarvatn
       timecode        : 00:37:50:04
At least one output file must be specified











More information about the ffmpeg-user mailing list