我正在创建一个我希望用户能够录制视频但具有来自预先录制的音频文件的音频的应用程序。我已经实现了视频捕获,甚至可以在录制时播放音频,但是我不想打开麦克风,我希望音频来自文件。
我目前正在像这样添加音频输入设备:
let audioInputDevice = AVCaptureDevice.defaultDeviceWithMediaType(AVMediaTypeAudio)
do
{
let audioInput = try AVCaptureDeviceInput(device: audioInputDevice)
if captureSession.canAddInput(audioInput)
{
captureSession.addInput(audioInput)
}
else
{
// can't add audio
}
}
catch let error
{
print("error getting AVCaptureDeviceInput: \(error)")
}
我正在按以下方式配置会话:
let audioCaptureDevice = AVCaptureDevice.default(for: AVMediaType.audio)
do
{
let audioCaptureDeviceInput = try AVCaptureDeviceInput(device: audioCaptureDevice!)
if captureSession.canAddInput(audioCaptureDeviceInput)
{
captureSession.addInput(audioCaptureDeviceInput)
}
else
{
// can't add audio input
}
}
catch let error
{
print("error getting AVCaptureDeviceInput: \(error)")
}
我的问题呢?
1)有什么方法可以将输入设备指定为音频文件?
2)应该使用AVAssetWriter还是其他方法来完成此操作?
3)有人能找到线索吗?
感谢您的帮助!