WebAV icon indicating copy to clipboard operation
WebAV copied to clipboard

MP4Clip AudioDecoder error

Open busyhe opened this issue 7 months ago • 5 comments

问题描述

首先在 mac 实现了 @webav/av-cliper 相关功能 demo, 在 windows chrome 浏览器中运行的时候功能也正常,但执行 await com.output().pipeTo(fileStream); 的时候控制台疯狂报错,想了解是什么原因导致这一错误,好去查询。

您尝试过的解决办法

错误信息或日志

Image

Image

其他信息

windows 10 chrome 131.0.6778.140

busyhe avatar Apr 16 '25 09:04 busyhe

用 ffmpeg 或其它工具检查音频的编码格式,再用 WebCodecs 检查是否支持该格式

hughfenghen avatar Apr 16 '25 14:04 hughfenghen

@hughfenghen 是不是可以从这里得到编码信息,使用 WebCodecs isConfigSupported api 测试是支持的,我查了相关文档说 isConfigSupported 返回并不准确,所以麻烦看下如何解决呢。下面附带问题视频

https://github.com/user-attachments/assets/5c30f074-bb68-432b-a7aa-589f91df4c9e

Image

busyhe avatar Apr 23 '25 08:04 busyhe

应该是不支持的音频编码格式

Image

https://gpac.github.io/mp4box.js/test/filereader.html

hughfenghen avatar Apr 23 '25 14:04 hughfenghen

@hughfenghen 这种不支持的 音频编码格式有前置条件去判断过滤吗?webav 有此类方法判断吗?要不在解析的时候视频正常,音频解析会疯狂报错

busyhe avatar Apr 24 '25 01:04 busyhe

不支持的格式应该在初始化时抛出错误

hughfenghen avatar Apr 24 '25 08:04 hughfenghen

@hughfenghen 目前从上传渠道和 AI 生成控制编码格式先解决这个问题

busyhe avatar Apr 28 '25 09:04 busyhe

这是个bug 后面有空需要尝试修复的,保持open状态挂在这里

hughfenghen avatar Apr 28 '25 12:04 hughfenghen

修正了 audio codec 的解析,现在能正确解析出 mp4a.6b; 在解析阶段检测兼容性,不支持的话打印错误;

但不会中断解析过程,确保不支持音频但支持视频轨道场景(如上例),可以 splitTrack 获取支持的轨道进行后续操作。

hughfenghen avatar Sep 06 '25 16:09 hughfenghen