问题标签 [pcm]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1023 浏览

delphi - 如何使用 delphi 代码将 MP3 转换为 PCM?

我有来自http://www.un4seen.com/bass.html的低音组件。我加载 mp3 并尝试将格式更改为 PCM,但它什么也不做?

或任何建议将不胜感激。

0 投票
4 回答
176 浏览

c - 使用 add + shift 将 pcm16 转换为 pcm14

我正在研究一种声音转换算法,其中接收到一系列签名短裤。
在算法的给定点,它将样本从 16 位转换为 14 位,它是这样进行的:

对我来说,很明显需要进行移位,因为我们想要摆脱至少 2 个有效位,但是+2那里呢?

0 投票
2 回答
16294 浏览

audio - 解码 G711(PCM u-law)

请多多包涵,因为我对音频编解码器的理解有限。我有来自 IPCAM 的音频源(通过 htto//... CGI 接口)。我正在尝试编写几个客户端程序来在 Windows、MAC 以及 Android 手机上播放此音频源。音频以 G711 (PCM ulaw) 编码。

我是否需要将 PCM 音频数据解码为原始音频数据,然后才能将其传递给音频引擎进行播放?如果是这样,是否有一些关于如何解码的示例代码?我很困惑,因为我相信 PCM 已经是 RAW。例如,我可以直接将它提供给 Android 上的音频引擎吗?

提前非常感谢

0 投票
6 回答
6222 浏览

c - 写入 16 位原始 PCM 文件的问题

作为一个小型实验音乐作品,我正在尝试用标准 C 编写一首歌曲。代码输出一个原始 PCM 文件,可以将其导入 Audacity。目前一切都按预期工作,但我在尝试将每个样本写入 16 位而不是我正在使用的当前 8 位时遇到问题。

在写入之前,当前样本被计算为浮点数,其边界几乎保持在有符号 8 位整数的范围内。然后在对下一个样本重复该过程之前将其写入为 8 位整数。这可以正常工作并且可以正常播放。当我尝试将其写为 16 位原始 PCM 文件时会出现问题 - 我将浮点数乘以 256 并将结果复制到一个整数,然后我使用 fwrite 写入生成的 16 位整数。这在导入时没有给出预期的结果,导致我所期望的高度失真的版本。

我在下面添加了有效代码,因为问题只发生在写作阶段。

工作8位代码:

不工作的 16 位代码:

我可能只是遗漏了一些明显的东西,但我一直在努力解决几个小时。提前致谢!

0 投票
2 回答
666 浏览

delphi - 如何在delphi中比较.wav样本?

我想.wav通过比较两个文件来开始研究样本。比如以百分比返回持续时间、口音、发音的结果。等或任何比较/分析.wav.

0 投票
1 回答
4354 浏览

python - 使用 (Python) Gstreamer 解码音频(到 PCM 数据)

我正在编写一个使用 Python Gstreamer 绑定来播放音频的应用程序,但我现在也在尝试解码音频——也就是说,我想使用 a 读取数据decodebin并接收原始 PCM 缓冲区。具体来说,我想以增量方式读取文件的块,而不是将整个文件读入内存。

一些具体问题:如何使用 Gstreamer 完成此任务?特别是pygst?我需要使用特定的“接收器”元素从流中读取数据吗?是否有从pygstBuffer对象读取数据的首选方法?如何控制我使用数据的速率(而不是仅仅进入“主循环”)?

0 投票
2 回答
7468 浏览

header - 为什么整数字节向后存储?这是否仅适用于标题?

我目前正在尝试破译 WAV 文件。从标头到 PCM 数据。

我找到了一个 PDF ( http://www.tdt.com/T2Support/technical_notes/tn0132.pdf ),详细介绍了 WAV 文件的结构,并且我已经能够使用以下方法提取并理解适当的标题数据Ghex2。但我的问题是:

为什么整数字节向后存储?即十二月。20 存储为 0x14000000 而不是 0x00000014。

PCM数据的整数是否也向后存储?

0 投票
2 回答
2412 浏览

objective-c - Core Audio AudioFIleReadPackets... looking for raw audio

I'm trying to get raw audio data from a file (i'm used to seeing floating point values between -1 and 1).

I'm trying to pull this data out of the buffers in real time so that I can provide some type of metering for the app.

I'm basically reading the whole file into memory using AudioFileReadPackets. I've create a RemoteIO audio unit to do playback and inside of the playbackCallback, i'm supplying the mData to the AudioBuffer so that it can be sent to hardware.

The big problem I'm having is that the data being sent to the buffers from my array of data (from AudioFileReadPackets) is UInt32... I'm really confused. It looks like it's 32-bits and I've set the packets/frames to be 4bytes each. How the heck to I get my raw audio data (from -1 to 1) out of this?

This is my Format description

I am reading a wave file currently.

Thanks!

0 投票
1 回答
3148 浏览

c# - 如何在 .NET 中将 AMR 声音流转换为 PCM 未压缩流

我需要将手机中记录的 AMR(自适应多速率)音频文件(作为 Stream 对象)转换为 PCM 未压缩的 wav 音频流,以便之后对其进行处理以进行语音识别。语音识别不喜欢 AMR 格式。这将是一个使用Microsoft Speech Platform的服务器应用程序。我不确定在 .

现在我正在研究 NAudio 和 DirectShowNet,看看它们是否可以帮助我完成这个任务,但希望有人能指出正确的方向。

0 投票
1 回答
2278 浏览

java - 什么是 MIDI 音库?

我是 MIDI 的新手。MIDI 音库是否包含 MIDI 合成器转换为 PCM 音频的“指令”[原文如此]?

我有许多可变持续时间的音频(目前在 PCM 中,因此是我的问题),我想根据服务器生成的时间线对它们进行排序(如果你愿意的话)并提供播放(和混合它们)的指令。MIDI 在逻辑上似乎是答案,尽管我对究竟什么是音库以及它是否确实只是一组 PCM 声音有点模糊?


更新:我最初是从 Java 看这个。