gpt4 book ai didi

html - HTML5音频/视频标签如何确定持续时间

转载 作者:行者123 更新时间:2023-12-02 23:03:14 25 4
gpt4 key购买 nike

HTML5的<audio><video>标签支持 duration 属性。我很好奇,在不下载整个音频/视频源文件的情况下,浏览器如何确定媒体的持续时间?

我问是因为我想在我编写的后端服务中实现相同的功能,该功能将:

  • 接受mp3网址
  • 确定文件的长度(以秒为单位),而无需下载整个文件
  • 最佳答案

    大多数视频容器既包含视觉和音频元素,又包含描述诸如持续时间,色彩空间,使用的编解码器和每帧偏移(查找时有用)之类的元数据块。在以MP4格式编码为网络的典型视频中,该块(也称为MOOV原子)默认为文件末尾(因为直到末尾才知道帧位置),除非已执行第二遍操作将其移动到前面例如:

    ffmpeg -i source.mp4 -c:a copy -c:v copy -movflags faststart destination.mp4

    (原样复制音频和视频,只需将元数据移到开头即可实现更快的访问)

    您可能会遇到一些网络视频,几乎可以在其中使用MP4进行搜索,而在某些视频中,直到文件完全加载后您才可以准确地进行搜索...这是因为浏览器必须做出“猜测”,直到接收到元数据

    对于mp3文件,您可以使用 this之类的东西-请求服务器只给您ID3标签和 eTag数据(最后127个字节和227个字节),而不必下载整个文件

    关于html - HTML5音频/视频标签如何确定持续时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53916512/

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