在 iPhone 上录制“Apple 无损”音频

Posted

技术标签:

【中文标题】在 iPhone 上录制“Apple 无损”音频【英文标题】:Record "Apple lossless" audio on the iPhone 【发布时间】:2009-05-17 19:06:12 【问题描述】:

你能告诉我 docs/sn-ps/blogs,它解释了 请问如何在iPhone上录制Apple无损音频文件?

我检查了 Apple 的录音机示例 开发中心,但不知道我有哪个设置 用于无损音频。

问候,

斯蒂芬

【问题讨论】:

【参考方案1】:

iPhone OS 支持使用多种不同的压缩音频编码格式录制 .caf 文件:

Apple Lossless - kAudioFormatAppleLossless

iLBC(互联网低比特率编解码器)-kAudioFormatiLBC

IMA/ADPCM(又名 IMA4)-kAudioFormatAppleIMA4

µLaw - kAudioFormatULaw

aLaw - kAudioFormatALaw

- (id) initWithURL: fileURL 
    NSLog (@"initializing a recorder object.");
    self = [super init];

    if (self != nil) 

        // define the audio stream basic description for the file to record into

        // record audio at the current hardware sample rate
        // make sure the audio session is active before asking for properties
        UInt32 propertySize = sizeof(audioFormat.mSampleRate);
        AudiosessionGetProperty(kAudioSessionProperty_CurrentHardwareSampleRate,
                                &propertySize,
                                &audioFormat.mSampleRate);

        audioFormat.mFormatID           = kAudioFormatAppleIMA4; // record using IMA4 codec
        audioFormat.mChannelsPerFrame   = 1;

        AudioQueueNewInput(&audioFormat, ... );

        ...

    

    return self;

您一定会想阅读Audio Queue Services Programming Guide

【讨论】:

【参考方案2】:

查看 Apple iPhone 开发中心的 SpeakHere 示例。

【讨论】:

我已经用过 SpeakHere。但它是用于录制 CAF,遗憾的是不是 MP4 无损。无论如何,谢谢。【参考方案3】:

我将 iTalk Recorder Premium 用于 .aiff(未压缩),然后导出到笔记本电脑并使用 flac 对其进行压缩 - 默认情况下会保留时间戳

flac --best *.aiff

【讨论】:

以上是关于在 iPhone 上录制“Apple 无损”音频的主要内容,如果未能解决你的问题,请参考以下文章

如何在 iPad/iPhone 上通过蓝牙耳机录制音频?

有没有办法在 iPhone 上录制设备音频?

在iphone上录制音频的教程?

在 iPhone 上录制音频并使用 NSOutputStream 通过网络发送

如何在 iPhone 上录制 AMR 音频格式?

在 iPhone 上使用 AudioQueue 录制/播放