WebAV
WebAV copied to clipboard
MP4Clip AudioDecoder error
问题描述
首先在 mac 实现了 @webav/av-cliper 相关功能 demo, 在 windows chrome 浏览器中运行的时候功能也正常,但执行 await com.output().pipeTo(fileStream); 的时候控制台疯狂报错,想了解是什么原因导致这一错误,好去查询。
您尝试过的解决办法
错误信息或日志
其他信息
windows 10 chrome 131.0.6778.140
用 ffmpeg 或其它工具检查音频的编码格式,再用 WebCodecs 检查是否支持该格式
@hughfenghen 是不是可以从这里得到编码信息,使用 WebCodecs isConfigSupported api 测试是支持的,我查了相关文档说 isConfigSupported 返回并不准确,所以麻烦看下如何解决呢。下面附带问题视频
https://github.com/user-attachments/assets/5c30f074-bb68-432b-a7aa-589f91df4c9e
应该是不支持的音频编码格式
https://gpac.github.io/mp4box.js/test/filereader.html
@hughfenghen 这种不支持的 音频编码格式有前置条件去判断过滤吗?webav 有此类方法判断吗?要不在解析的时候视频正常,音频解析会疯狂报错
不支持的格式应该在初始化时抛出错误
@hughfenghen 目前从上传渠道和 AI 生成控制编码格式先解决这个问题
这是个bug 后面有空需要尝试修复的,保持open状态挂在这里
修正了 audio codec 的解析,现在能正确解析出 mp4a.6b; 在解析阶段检测兼容性,不支持的话打印错误;
但不会中断解析过程,确保不支持音频但支持视频轨道场景(如上例),可以 splitTrack 获取支持的轨道进行后续操作。