gpt4 book ai didi

javascript - JavaScript音频持续时间不适用于ALAC文件(HTML音频持续时间属性)

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

我在某些JS代码中使用以下实现来获取加载的音频文件的持续时间:http://jsfiddle.net/derickbailey/s4P2v/(取自https://lostechies.com/derickbailey/2013/09/23/getting-audio-file-information-with-htmls-file-api-and-audio-element/)。

即使使用createObjectURL,我的实现也相同。它适用于MP3,AAC(.m4a)和FLAC fine,但不适用于ALAC(也适用于.m4a)。

let length = 0;
let url = URL.createObjectURL(file);
let audio = new Audio(url);
audio.addEventListener('loadeddata', function () {
length = audio.duration;
}

有谁知道我如何使用纯JavaScript获得 ALAC 文件的持续时间?我没有使用任何框架,对JS还是陌生的。

谢谢

最佳答案

我认为只有Safari才能本地解码ALAC编解码器,并且可以正常工作。

但是在所有其他浏览器中,由于它们无法解码,因此无法为您提供正确的持续时间。

ffmpeg似乎能够对其进行解码并获得其持续时间,因此您可能希望从服务器端获取此信息,或者看看this project旨在将ffmpeg移植到js。
我从未亲自尝试过它,但是它声称已移植了mp4解码器,因此您可能会有些运气。

关于javascript - JavaScript音频持续时间不适用于ALAC文件(HTML音频持续时间属性),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54031930/

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