- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
这些是我传入的值,这是我可以使用的唯一值组合。
dataFormat.mSampleRate = 44100;
dataFormat.mFormatID = kAudioFormatLinearPCM;
dataFormat.mFormatFlags = kAudioFormatFlagIsSignedInteger | kLinearPCMFormatFlagIsBigEndian;
dataFormat.mBytesPerPacket = 4;
dataFormat.mFramesPerPacket = 1;
dataFormat.mBytesPerFrame = 4;
dataFormat.mChannelsPerFrame = 2;
dataFormat.mBitsPerChannel = 16;
status = AudioQueueNewInput( &dataFormat, AudioInputCallback, self, NULL, NULL, 0,
&queue);
status = AudioFileCreateWithURL(fileUrl, kAudioFileCAFType, &dataformat, kAudioFileFlags_EraseFile, &audioFile
录音正常,但录音和播放时有很多噪音。和这段代码有什么关系吗?
最佳答案
我发现两个可能的错误。首先,正如 @invalidname 指出的那样,立体声录音可能无法在 iPhone 等单声道设备上使用。好吧,它可能会起作用,但如果它起作用了,你无论如何都会得到双单声道立体声流,那为什么还要麻烦呢?您不妨将流配置为以单声道模式工作,这样可以节省 CPU 开销。
第二个问题可能是声音失真的根源。您的流描述格式标志应该是:
kAudioFormatFlagIsSignedInteger |
kAudioFormatFlagsNativeEndian |
kAudioFormatFlagIsPacked
另外,不要忘记将 mReserved 标志设置为 0。虽然该标志的值可能会被忽略,但为了确保明确将其设置为 0 也没什么坏处。
编辑:在 iPhone 上调试音频的另一个更通用的技巧 - 如果您遇到失真、削波或其他奇怪的效果,请从手机中获取数据有效负载并查看录制内容波浪编辑器。能够缩小并查看各个样本将为您提供很多有关问题所在的线索。
为此,您需要打开“管理器”窗口,单击您的手机,然后展开应用程序旁边的小箭头(位于您通常卸载它的位置)。现在您将看到一个向下的小箭头,如果单击它,Xcode 会将数据有效负载从您的应用程序复制到硬盘驱动器上的某个位置。如果您要将录音转储到磁盘,您会在此处找到提取的文件。
关于iphone - iPhone 录音 - AudioStreamBasicDescription 的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/914536/
我正在尝试了解 AudioStreamBasicDescription 结果。实际上,我能得到的东西对我来说都没有意义。例如: AudioStreamBasicDescription(mSampleR
我正在尝试使用 AudioQueue 从服务器播放 PCM 流数据。 PCM 数据格式: Sample rate = 48000, num of channel = 2, Bit per sample
这些是我传入的值,这是我可以使用的唯一值组合。 dataFormat.mSampleRate = 44100; dataFormat.mFormatID = kAudioFormatLinear
与 EZAudio我想尽可能创建单光音频缓冲区列表。在过去,我每个 audioBuffer 达到 46 个字节,但 bufferDuration 相对较小。首先,如果我使用下面的 AudioStrea
在 AudioStreamBasicDescription 结构中: struct AudioStreamBasicDescription { Float64 mSampleRate;
我正在尝试在 iOS 上播放一个简单的 PCM 文件,但我无法理解 AudioStreamBasicDescription 和这个 link没有提供足够的信息。 我从终端获取这些值 afinfo Bl
我尝试使用更多的 AudioStreamBasicDescription 来处理 m4a 文件格式。我仍然遇到一些问题。 请任何人告诉我 m4a 文件格式的确切 AudioStreamBasicDes
CAStreamBasicDescription 和 AudioStreamBasicDescription 有什么区别?谢谢。 最佳答案 CAStreamBasicDescription 只是 Au
我需要帮助理解以下 ASBD。这是分配给 RemoteIO 的新实例的默认 ASBD (我通过在 AudioUnitGetProperty(..., kAudioUnitProperty_Stream
我想知道如何创建 [String:AnyObject] 的字典来自 UnsafePointer 我想我不明白如何使用 UnsafePointer在Swift .这是我的起点 - AVAudioFile
在 Objective-C 中,您应该始终将新音频流基本描述结构的字段初始化为零,如下所示: AudioStreamBasicDescription myAudioDataFormat = {0};
我正在使用音频单元录制一些 PCM 音频。在回调中,当我有 30 秒的音频时,我想将一个 8000Hz AAC 编码的文件写入磁盘,比特率为 12kb/s。 这是我使用的 AudioStreamBas
由于关于 MTAudioProcessingTap 的文档非常少(实际上几乎没有),我使用的是 Apple's demo app from WWDC 2012 . 我正在尝试在 MTAudioProc
我有这段代码 var dataFormat: AudioStreamBasicDescription? var propSize: UInt32 = UInt32(Me
这是我们用来设置 AudioStreamBasicDescription (ASBD) 的函数。整个类(class)都深受 SpeakHere 的影响。 Apple 的示例应用程序。 这适用于在 iO
我正在编写一个使用 CoreAudio 的音频单元 API 的 iOS 应用程序,并且在某个时候我执行了一个 AudioUnitGetProperty(audioUnit, kAudioUnitPro
我在为上述格式创建描述时遇到了问题,并且尝试了很多方法,但在尝试记录时总是收到无效参数。 有没有人有如何创建这种格式的示例? var audioFileOutputDescription : Audi
我是一名优秀的程序员,十分优秀!