You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用VueJS和.NET播放数据库中的AMR格式BLOB音频文件?

问题解决方案

一、支持MP3和AMR播放的前端NPM库推荐

以下两个库可满足Vue2项目中同时播放两种音频格式的需求:

  • amr.js:专门处理AMR格式的解码工具,能将AMR的Base64/Blob转换为浏览器可播放的音频数据。MP3格式可直接通过浏览器原生Audio API播放,两者结合即可覆盖需求。
  • howler.js:功能全面的音频库,搭配howler-amr插件后可支持AMR解码,同时原生兼容MP3。它提供统一的API接口,无需分别处理两种格式,集成到Vue2中更便捷。

二、.NET后端将AMR转换为MP3返回的实现

可以在后端直接完成AMR到MP3的格式转换,客户端无需处理多格式兼容问题,具体实现:

  1. 依赖第三方库:推荐使用基于FFmpeg的FFmpeg.AutoGen,或NAudio(需搭配AMR解码组件)。
  2. 核心代码示例:
// 读取AMR字节数据
byte[] amrBytes = resultDto.MediaContent;
// 调用转码方法将AMR转为MP3
byte[] mp3Bytes = AmrToMp3Converter.Convert(amrBytes);
// 返回MP3格式文件
return File(mp3Bytes, "audio/mp3");

注意:服务器需提前部署FFmpeg环境,或使用封装好的.NET集成包。

问题根源说明

你遇到的格式切换后无法播放的问题,本质是浏览器原生不支持AMR格式,必须通过前端解码库处理;而直接在后端转为MP3返回,浏览器和现有播放器库都能正常识别播放,这是更省心的兼容方案。

内容的提问来源于stack exchange,提问作者snotra634

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 07:15:30