问题标签 [amr]

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 回答
462 浏览

windows-phone-7 - windows phone 7中的amr录音

如何在 windows phone 上录制和 AMR 音频剪辑?

Microphone 仅提供 PCM 样本,在写入文件之前需要将其转换为 AMR。

如何进行这种转换?如果有人有任何示例代码,请分享。

0 投票
1 回答
3690 浏览

android - 检测 Android 上支持的音频编码器以防止崩溃“未找到给定的音频编码器 2”

当 Android 设备不支持强制音频编码器时,您会得到:(X=编码器的数字索引)

E/MediaProfiles(4048):找不到给定的音频编码器 X A/AudioSource(4048):frameworks/base/media/libstagefright/AudioSource.cpp:58 CHECK(channels == 1 || channels == 2) 失败。A/libc(4048): 0xdeadbaad (code=1) 处的致命信号 11 (SIGSEGV) 在本机代码中。没有例外的反应。应用程序只是强制关闭。

如果实际支持 AAC AMR-NB 和 AMR-WB,有什么方法可以查询 Android >3.x 设备?文档(http://developer.android.com/guide/appendix/media-formats.html)说这些是核心媒体格式,因此始终受支持。一些实际和普通的手机(主要品牌)没有。

MediaCodec.createByCodecName(String name)Get supported Codec for Android device 仅适用于 API16=Android 4.1 但有问题的设备是 4.0.x 。它也没有列出 AMR-NB 和 AAC。

0 投票
1 回答
365 浏览

windows-phone-7 - 如何录制音频 AMR 格式?

我正在创建一个 Windwows Phone 7 应用程序,它需要来自麦克风的音频应该以 AMR 格式存储。

我能够从麦克风捕捉 MemoryStream,但如何使用 AMR 编解码器保存该流?

0 投票
2 回答
5573 浏览

java - 如何在 Java 中将 Mp3 转换为 Amr 音频格式

我正在编写一个 Java 应用程序,我想将 Mp3 转换为 Amr 音频格式。因此,我无法成功,因为没有文档或库可以提供帮助。如果可能的话,您能否通过示例提示如何处理。

谢谢。

0 投票
0 回答
2232 浏览

android - Android AMR-WB 录音

我正在尝试以这种方式进行录音:

在三星 Galaxy SII (4.0.4) 和三星 Galaxy Nexus (4.2) 上运行完美。但在 SonyEricsson Xperia Pro (4.0.4) 上,它会创建无效的 3gp 文件。在 Android 2.3.* 上,它以错误的速度录制(效果,就像正常录制加速到 3-4 倍)。据我了解,我不能对 AMR 使用setAudioEncodingBitRatesetAudioSamplingRate方法(实际上是对的吗?)。也许有人知道 AMR-WB 的正确 MediaRecorder 曲调(或解决方法),或者我以错误的方式制作了一些东西?

提前致谢

迈克尔

0 投票
0 回答
1734 浏览

android - 使用 MediaPlayer 播放由 MediaRecorder 创建的 AMR 文件失败,muri null

我正在编写一个应用程序,它使用 MediaRecorder 以 AMR 格式从麦克风录制语音,然后使用 MediaPlayer 播放数据。

无论如何,这就是目标。

我相当有信心我的 MediaRecorder 端正在工作,我正在以正确的数据速率在正确的位置生成数据文件。这是我如何启动和停止我的 MediaRecorder

这就像一个魅力。典型的输出类似于

当我开始录制,然后停止录制时,我可以看到文件已创建,并且其中包含与设置正确对应的一定数量的数据。

旁注:运行时我检测到扬声器有奇怪的嗡嗡声。知道那是什么吗?

当我尝试播放文件时,我遇到了无穷无尽的麻烦。我尝试了以下方法:

这导致 MediaPlayer 的以下输出根本没有播放任何内容:

start() mURI 为空

我也尝试过相同的代码,但不同地设置 mPlayer 的数据源:

当使用 java.io.IOException 状态 0x1 调用 prepare 时,这将失败。

我不得不想象我还需要对 MediaPlayer 进行其他操作才能正确设置它。有什么建议么?

0 投票
1 回答
1521 浏览

javascript - 在其他地方播放在 Android Cordova 中录制的 3gp 音频

我希望能够在移动设备上的 Cordova 应用程序中录制音频,然后在 Web 应用程序中的台式计算机上播放。但是,我遇到了一些令人讨厌的编解码器问题。

根据科尔多瓦文档:

Android 设备以自适应多速率格式录制音频。指定的文件应以 .amr 扩展名结尾。

这似乎是错误的。根据此处的信息,.amr 文件应具有以下开头的标题:

但是,我的 Nexus 7 中的音频文件具有如下标题:

这似乎表明它们应该具有 .3gp 扩展名。

此外,我认为这两种格式都没有本机浏览器支持(Cordova 之外)。我找到了一个 JavaScript amr 播放库,但是它不能转换 .3gp 文件(即 android 生成的文件)。我敢打赌,可以使用类似的方法来解码 .3gp 文件,但这似乎是一项艰巨的任务。我希望避免这种情况。如果有人愿意这样做,我将永远感激不尽。

如果无法更改 Cordova Media API 生成的格式,则需要解码器。一个纯 JavaScript 解码解决方案将是理想的,闪存转换器几乎一样好。我考虑过的其他可能性有一些问题:

一种可能性是使用另一个应用程序进行转换。例如,适用于 android 的 ffmpeg。我想避免这种情况,因为从 Cordova 启动意图需要一个 Phonegap Build 不提供的插件,并且用户必须处理安装和操作另一个应用程序。

另一种可能性是在云端进行解码。如果可能的话,我不想运行我自己的任何网络服务。我尝试了 encoding.com 并且能够成功地将我的一个音频文件转换为 mp4,但是他们还没有 Dropbox 文件监视支持。如果音频文件在到达之前需要加密,例如因为 HIPAA,那么云解码会变得非常复杂,如果不是不可能的话。

请帮忙。谢谢你。

0 投票
1 回答
1375 浏览

android - 在 Android 中解码 AMR 音频文件

有没有办法在 Android 中解码 AMR 音频文件并访问原始音频数据?MediaCodec 仅适用于 API 16 及更高版本。我需要可以在 Android 2.2 及更高版本上运行的东西。

0 投票
1 回答
282 浏览

android - 无法使用 AMR 窄带 H.264 编码从 .net 服务器播放文件

  1. AMR 窄带是 Android 2.1 中捕获的视频的默认音频编码
  2. 当我将其上传到我的服务器并尝试在我的 Mac 上的 chrome 网络浏览器中查看它或从我的 iPhone 流式传输时,它不会播放(如果我将它本地复制到我的 mac,它会在 quicktime 中播放)

有没有办法让这个玩?我错过了哑剧类型吗?它在 android 浏览器中的 android 手机上本地播放良好。

0 投票
1 回答
3348 浏览

java - 编码器/解码器 PCM 到 AMR Android

我一直在寻找任何允许我对通过 TCP 套接字连接发送的 PCM-AMR 音频流进行编码和解码的 java 库。无需使用 Android 的 JNI。

有什么可以帮助我的吗?

在最坏的情况下。我如何使用任何带有 JNI 的 C++ 库来做到这一点?(任何关于如何将 ffmpeg 与 JNI 一起使用的参考将不胜感激)

希望您能够帮助我。