我正在尝试编写一个程序,用于将音频直播到服务器。 AVAudioRecorder是否具有流功能,还是应该使用任何其他框架?我最好尝试使用apple内置框架。
答案 0 :(得分:3)
我已经使用AVCaptureSession将AVCaptureDevice与AVCaptureDevice耦合作为音频作为输入设备,输出设备作为AVCaptureAudioDataOutput,后者又调用AVCaptureAudioDataOutputSampleBufferDelegate并将数据作为缓冲流。
答案 1 :(得分:0)
根据this document,您必须使用文件路径初始化AVAudioRecorder,这意味着:如果您要进行实时流式传输,则必须等待当前录制完成,或者初始化新的AVAudioRecorder与另一条路径。
我建议您创建多个AVAudioRecorder实例,并根据音频块的大小运行每个实例。 (你也可以根据时间划分它们,但要确保你的缓冲区很大才能保留它们)
并且,只需上传以前的块,然后启动一个新实例以保持录制。