简体   繁体   English

使用 ffmpeg 传输自定义(所有)元数据

[英]Transfer custom (all) metadata using ffmpeg

How to transfer metadata using FFMPEG or other tools with CMD?如何使用FFMPEG或其他工具与CMD传输元数据?

I'm trying to encode video/audio and since they already have metadata inside obviously i want to preserve them into my new file我正在尝试对视频/音频进行编码,因为它们内部已经有元数据,显然我想将它们保存到我的新文件中

btw since i'm using mediamonkey as main player, there's also some Custom metadata.顺便说一句,因为我使用 mediamonkey 作为主要播放器,所以还有一些自定义元数据。 this is the one who wont transfer这是一个不会转移的人

  • for Video output file using mp4/mkv (using x264)对于视频 output 文件,使用 mp4/mkv(使用 x264)
  • for Audio output file using m4a (using neroAac)对于使用 m4a 的音频 output 文件(使用 neroAac)

Thank You!谢谢你!

ps.附言。 which container is best for neroAac and x264?哪个容器最适合neroAac和 x264? since i can't seem to edit mkv metadata (when i remove from mediamonkey playlist, they're all gone), mp4 is fine though and i can't seem to play AAC, although it's fine when muxed into video因为我似乎无法编辑 mkv 元数据(当我从 mediamonkey 播放列表中删除时,它们都消失了),虽然 mp4 很好,但我似乎无法播放 AAC,虽然它在混合到视频中时很好

使用以下命令复制所有自定义和全局元数据标签信息:

ffmpeg <inputfile> -movflags use_metadata_tags -c copy  <outputfile>

It seems the following parameter did not work for reel_name.似乎以下参数不适用于 reel_name。

'-movflags use_metadata_tags' '-metadata:s:v reel_name=ABCDE12345' '-map_metadata 0' '-map_metadata 0:g' '-movflags use_metadata_tags' '-metadata:s:v reel_name=ABCDE12345' '-map_metadata 0' '-map_metadata 0:g'

Please advice请指教

as follow, please kindly find the testing result如下,请查看测试结果

Output #0, mp4, to 'afile_720p.mp4':
  Metadata:
    major_brand     : qt
    minor_version   : 512
    compatible_brands: qt
    encoder         : Lavf59.16.100
  Stream #0:0: Video: h264 (avc1 / 0x31637661), yuv422p10le(tv, bt709, progressive), 1280x720 [SAR 1:1 DAR 16:9], q=2-31, 24 fps, 12288 tbn (default)
    Metadata:
      creation_time   : 2022-01-21T06:26:22.000000Z
      handler_name    : VideoHandler
      vendor_id       : appl
      timecode        : 10:35:45:08
      reel_name       : ABCDE12345
      encoder         : Lavc59.18.100 libx264
    Side data:
      cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: N/A


ffprobe  -print_format xml -show_error -show_format -show_streams -show_chapters afile_720p.mp4

ffprobe version n5.0.1-4-ga5ebb3d25e-20220519 Copyright (c) 2007-2022 the FFmpeg developers
  built with gcc 11.2.0 (crosstool-NG 1.24.0.533_681aaef)
  configuration: --prefix=/ffbuild/prefix --pkg-config-flags=--static --pkg-config=pkg-config --cross-prefix=x86_64-w64-mingw32- --arch=x86_64 --target-os=mingw32 --enable-gpl --enable-version3 --disable-debug --disable-w32threads --enable-pthreads --enable-iconv --enable-libxml2 --enable-zlib --enable-libfreetype --enable-libfribidi --enable-gmp --enable-lzma --enable-fontconfig --enable-libvorbis --enable-opencl --disable-libpulse --enable-libvmaf --disable-libxcb --disable-xlib --enable-amf --enable-libaom --enable-libaribb24 --enable-avisynth --enable-libdav1d --enable-libdavs2 --disable-libfdk-aac --enable-ffnvcodec --enable-cuda-llvm --enable-frei0r --enable-libgme --enable-libass --enable-libbluray --enable-libmp3lame --enable-libopus --enable-librist --enable-libtheora --enable-libvpx --enable-libwebp --enable-lv2 --enable-libmfx --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenh264 --enable-libopenjpeg --enable-libopenmpt --enable-librav1e --enable-librubberband --enable-schannel --enable-sdl2 --enable-libsoxr --enable-libsrt --enable-libsvtav1 --enable-libtwolame --enable-libuavs3d --disable-libdrm --disable-vaapi --enable-libvidstab --enable-vulkan --enable-libshaderc --enable-libplacebo --enable-libx264 --enable-libx265 --enable-libxavs2 --enable-libxvid --enable-libzimg --enable-libzvbi --extra-cflags=-DLIBTWOLAME_STATIC --extra-cxxflags= --extra-ldflags=-pthread --extra-ldexeflags= --extra-libs=-lgomp --extra-version=20220519
  libavutil      57. 17.100 / 57. 17.100
  libavcodec     59. 18.100 / 59. 18.100
  libavformat    59. 16.100 / 59. 16.100
  libavdevice    59.  4.100 / 59.  4.100
  libavfilter     8. 24.100 /  8. 24.100
  libswscale      6.  4.100 /  6.  4.100
  libswresample   4.  3.100 /  4.  3.100
  libpostproc    56.  3.100 / 56.  3.100
<?xml version="1.0" encoding="UTF-8"?>
<ffprobe>
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'afile_720p.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf59.16.100
  Duration: 00:00:40.71, start: 0.000000, bitrate: 891 kb/s
  Stream #0:0[0x1](und): Video: h264 (High 4:2:2) (avc1 / 0x31637661), yuv422p10le(tv, bt709, progressive), 1280x720 [SAR 1:1 DAR 16:9], 889 kb/s, 24 fps, 24 tbr, 12288 tbn (default)
    Metadata:
      handler_name    : VideoHandler
      vendor_id       : [0][0][0][0]
      timecode        : 10:35:45:08
  Stream #0:1[0x2](eng): Data: none (tmcd / 0x64636D74)
    Metadata:
      handler_name    : VideoHandler
      timecode        : 10:35:45:08
Unsupported codec with id 0 for input stream 1
    <streams>
        <stream index="0" codec_name="h264" codec_long_name="H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10" profile="High 4:2:2" codec_type="video" codec_tag_string="avc1" codec_tag="0x31637661" width="1280" height="720" coded_width="1280" coded_height="720" closed_captions="0" film_grain="0" has_b_frames="2" sample_aspect_ratio="1:1" display_aspect_ratio="16:9" pix_fmt="yuv422p10le" level="31" color_range="tv" color_space="bt709" color_transfer="bt709" color_primaries="bt709" chroma_location="left" field_order="progressive" refs="1" is_avc="true" nal_length_size="4" id="0x1" r_frame_rate="24/1" avg_frame_rate="24/1" time_base="1/12288" start_pts="0" start_time="0.000000" duration_ts="500224" duration="40.708333" bit_rate="889080" bits_per_raw_sample="10" nb_frames="977" extradata_size="50">
            <disposition default="1" dub="0" original="0" comment="0" lyrics="0" karaoke="0" forced="0" hearing_impaired="0" visual_impaired="0" clean_effects="0" attached_pic="0" timed_thumbnails="0" captions="0" descriptions="0" metadata="0" dependent="0" still_image="0"/>
            <tag key="language" value="und"/>
            <tag key="handler_name" value="VideoHandler"/>
            <tag key="vendor_id" value="[0][0][0][0]"/>
            <tag key="timecode" value="10:35:45:08"/>
        </stream>
        <stream index="1" codec_type="data" codec_tag_string="tmcd" codec_tag="0x64636d74" id="0x2" r_frame_rate="0/0" avg_frame_rate="12288/512" time_base="1/12288" start_pts="0" start_time="0.000000" duration_ts="500224" duration="40.708333" nb_frames="1" extradata_size="20">
            <disposition default="0" dub="0" original="0" comment="0" lyrics="0" karaoke="0" forced="0" hearing_impaired="0" visual_impaired="0" clean_effects="0" attached_pic="0" timed_thumbnails="0" captions="0" descriptions="0" metadata="0" dependent="0" still_image="0"/>
            <tag key="language" value="eng"/>
            <tag key="handler_name" value="VideoHandler"/>
            <tag key="timecode" value="10:35:45:08"/>
        </stream>
    </streams>

    <chapters>
    </chapters>

    <format filename="afile_720p.mp4" nb_streams="2" nb_programs="0" format_name="mov,mp4,m4a,3gp,3g2,mj2" format_long_name="QuickTime / MOV" start_time="0.000000" duration="40.709000" size="4537208" bit_rate="891637" probe_score="100">
        <tag key="major_brand" value="isom"/>
        <tag key="minor_version" value="512"/>
        <tag key="compatible_brands" value="isomiso2avc1mp41"/>
        <tag key="encoder" value="Lavf59.16.100"/>
    </format>
</ffprobe>

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM