gpt4 book ai didi

带有缩略图 block 的 FFMPEG Dash

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

从 DASH-IF IOP 4.2 版开始,第 6.2.6 节定义了 DASH 中基于图像的轨道的概念:
https://dashif.org/docs/DASH-IF-IOP-v4.3.pdf .

这是一种由 mime 类型图像组成的适应集的能力,这些图像本身就是一条低分辨率的缩略图。
当用户将鼠标悬停在视频时间线上并获得
以该近似时间码预览帧。

Theo播放器网站有一个专门用于播放此功能的页面:
https://www.theoplayer.com/blog/in-stream-thumbnail-support-dvr-dash-streams

我需要使用 ffmpeg 生成一个破折号流(非实时),其中还包含这些缩略图。
我已经有一个 ffmpeg 命令,它将生成 jpgs 的电影片段,它每 5 秒输入一个视频输出一个缩略图,并将其中的 5 个连接到一个 jpg 中:
ffmpeg -i INPUT -q:v 20 -vf "select=not(mod(n\,125)),scale=480:270,tile=5x1" -vsync vfr output%d.jpg
和 mpeg 破折号本身:
ffmpeg -i INPUT -y -map 0 -acodec aac -ac 2 -ar 48000 -s 960x540 -vcodec libx264 -f dash -preset veryfast -b:v:2 1500k -seg_duration 2 output.mpd
但是我在 ffmpeg 中找不到将缩略图包含在 dash mpd 文件中的方法。

最佳答案

我已经使用这种精确的方法来生成平铺缩略图,但我必须手动将适配集注入(inject)到 output.mpd 中。 BaseURL 指向存储平铺图像的静态图像服务器,视频/音频/字幕由流服务器提供。您需要确保 Adaptation set id 不会与 list 中的任何其他值发生冲突。
这是我添加到 DASH 期间的适配集示例。

<AdaptationSet contentType="image" id="5" mimeType="image/jpeg">
<BaseURL>
http://origin.yourdomain.com/storage/thumbs/video_id/
</BaseURL>
<SegmentTemplate duration="120" media="$RepresentationID$/number/tile$Number%03d$.jpg" startNumber="1"/>
<Representation bandwidth="12895" height="432" id="thumbnails_256x144" width="1024">
<EssentialProperty schemeIdUri="http://dashif.org/guidelines/thumbnail_tile" value="4x3"/>
</Representation>
</AdaptationSet>

关于带有缩略图 block 的 FFMPEG Dash,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60429301/

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