如何转换PCM音频流以进行在线播放

威廉·罗森布鲁姆

我可以访问PCM音频缓冲区的音频流。我应该清楚我没有访问音频文件的权限。我只能访问4096字节的音频数据块流。

PCM缓冲区具有以下格式:

  • PCM内部16
  • 小端
  • 两个通道
  • 交错式

为了支持标准浏览器上的音频播放,我需要将音频转换为以下格式:

  • PCM浮线32
  • 大端
  • 最多两个频道
  • 去交错

音频来自iOS应用程序,因此我可以使用Swift和Objective C(尽管我对Objective C不太满意...这使得Apple的音频转换器服务几乎无法使用,因为Swift确实不喜欢指针)。

此外,回放将在浏览器上进行,因此我可以使用客户端Javascript或服务器端处理转换。我精通以下服务器端语言来进行转换:

  • Java(首选)
  • 的PHP
  • Node.js
  • Python

如果有人知道用这些语言中的任何一种进行此操作的方法,请告诉我。我已经对此进行了足够长的工作,以至于我什至都不会理解如何执行此操作的非常技术性的描述。

我当前的计划是使用按位运算来解交左右声道,然后使用Web Audio API将Int 16缓冲区转换为Float 32缓冲区这看起来像是个好计划吗?

任何帮助表示赞赏,谢谢。

布拉德

我当前的计划是使用按位运算来解交左右声道,然后使用Web Audio API将Int 16缓冲区转换为Float 32缓冲区。这看起来像是个好计划吗?

是的,这正是您需要做的。我在应用程序中执行的操作完全相同,并且此方法运行良好,并且实际上是唯一可行的方法。由于带宽量大,您不想从服务器向客户端发送32位浮点样本。在客户端进行转换。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用CDN损坏的参考进行在线学习

来自分类Dev

TypeScript拒绝允许jQuery进行在线连接

来自分类Dev

如何保护在线流视频

来自分类Dev

基于Web的广播和音频流服务是否使用Web Audio API进行播放?

来自分类Dev

播放实时音频流-html5

来自分类Dev

在Web Audio中播放原始音频PCM样本

来自分类Dev

如何在线播放音乐

来自分类Dev

FluentValidation,可以进行在线验证吗?

来自分类Dev

顺序在线播放视频文件,而不会在视频之间延迟/缓冲

来自分类Dev

如何通过C在Linux(RPi)中进行音频流处理?

来自分类Dev

如何使用AudioUnit播放来自服务器的音频流?

来自分类Dev

如何从服务器在线获取音频流的持续时间

来自分类Dev

如何在UWP应用上播放原始的pcm音频字节?

来自分类Dev

如何在Vbscript中检查视频或音频流是否在线?

来自分类Dev

实时音频HLS流无法播放

来自分类Dev

如何在Firefox中播放音频和视频流?

来自分类Dev

如何通过命令行在VLC中播放MMS流?

来自分类Dev

如何保护在线流视频

来自分类Dev

使用下拉菜单更改在线播放器播放列表

来自分类Dev

PCM音频流的SDP文件?

来自分类Dev

如何播放从NSData转换的AVAudioPCMBuffer的音频

来自分类Dev

会话超时以进行在线考试

来自分类Dev

如何在UWP应用上播放原始的pcm音频字节?

来自分类Dev

通过DisplayPort进行音频-Windows 10关闭显示器时如何保持音频播放?

来自分类Dev

MPlayer 缓存清空播放音频流

来自分类Dev

使用 shell 脚本进行在线备份

来自分类Dev

如何在 ac# Web 应用程序上在线播放 mp3 音频?

来自分类Dev

TypeScript 记录和播放原始 pcm 音频

来自分类Dev

如何在 javascript web 客户端中播放 PCM 流(通过 UDP)?

Related 相关文章

热门标签

归档