我一直在寻找这个问题的答案,但却陷入了困境。
HTML5音频/视频属性duration
的值是否随着缓冲而膨胀,或者是媒体数据附带的预先计算的元数据值?
测试时,我只收到一个durationchange
事件调用(Chrome首先将持续时间设置为0,然后设置为总媒体长度除外),因此我认为持续时间值是固定的元数据属性。但我不想将此视为理所当然,因为这确实影响了我应该在代码结构中使用的方法。
答案 0 :(得分:1)
duration
属性必须在media resource上以秒为单位返回media timeline结尾的时间。如果没有media data可用,则属性必须返回Not-a-Number(NaN)值。如果不知道media resource是否有界限(例如流媒体广播,或没有宣布结束时间的直播事件),则该属性必须返回正无限值。
由于media resource是规范中的
完整的媒体数据集,例如完整的视频文件或完整的音频文件
然后duration
是一个固定值,而不是随浏览器接收媒体而增长的值。