gpt4 book ai didi

ffmpeg - 了解 ffmpeg map 选项

转载 作者:行者123 更新时间:2023-12-04 23:01:38 24 4
gpt4 key购买 nike

我在 blog post 中遇到了以下命令它创建了不同质量的视频流,这些视频流通过 dash muxer 打包成 DASH 格式.

ffmpeg -i $VIDEO_IN \
-preset $PRESET_P -keyint_min $GOP_SIZE -g $GOP_SIZE -sc_threshold 0 \
-r $FPS -c:v libx264 -pix_fmt yuv420p -c:a aac -b:a 128k -ac 1 -ar 44100 \
-map v:0 -s:0 $V_SIZE_1 -b:v:0 2M -maxrate:0 2.14M -bufsize:0 3.5M \
-map v:0 -s:1 $V_SIZE_2 -b:v:1 145k -maxrate:1 155k -bufsize:1 220k \
-map v:0 -s:2 $V_SIZE_3 -b:v:2 365k -maxrate:2 390k -bufsize:2 640k \
-map v:0 -s:3 $V_SIZE_4 -b:v:3 730k -maxrate:3 781k -bufsize:3 1278k \
-map v:0 -s:4 $V_SIZE_4 -b:v:4 1.1M -maxrate:4 1.17M -bufsize:4 2M \
-map v:0 -s:5 $V_SIZE_5 -b:v:5 3M -maxrate:5 3.21M -bufsize:5 5.5M \
-map v:0 -s:6 $V_SIZE_5 -b:v:6 4.5M -maxrate:6 4.8M -bufsize:6 8M \
-map v:0 -s:7 $V_SIZE_6 -b:v:7 6M -maxrate:7 6.42M -bufsize:7 11M \
-map v:0 -s:8 $V_SIZE_6 -b:v:8 7.8M -maxrate:8 8.3M -bufsize:8 14M \
-map 0:a \
-init_seg_name init\$RepresentationID\$.\$ext\$ -media_seg_name chunk\$RepresentationID\$-\$Number%05d\$.\$ext\$ \
-use_template 1 -use_timeline 1 \
-seg_duration 4 -adaptation_sets "id=0,streams=v id=1,streams=a" \
-f dash Dash/dash.mpd
我很难理解的是 map 是如何工作的。我已阅读 Map docs但他们似乎没有可比的例子。
  • 为什么 -map v:0 用于每个视频流?
  • 为什么第一个映射行在流 0 上运行(例如 -b:v:0),而下一个映射行在流 1 上运行(例如 -b:v:1)等等。

  • 真的很感激崩溃。

    最佳答案

    Why is -map v:0 used for every video stream?


    正确的字符串应该是 -map 0:v:0 .文件索引被省略,因此被隐式解释为文件索引 0。最好避免使用这种语法。

    Why does the first map line operate on stream 0 (e.g. -b:v:0)


    不要考虑与 map 相关的线条或选项的接近程度。 -b:v:0 中的 0是流说明符和目标的一部分,将流输出到目标。

    What the different between -b:v <target bitrate> and -b <target bitrate> FFmpeg flags?
    https://superuser.com/q/1219784/

    关于ffmpeg - 了解 ffmpeg map 选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66977880/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com