Ios 什么可能会阻止使用MTAudioProcessingTap调用进程回调?
我已经准备了一个Ios 什么可能会阻止使用MTAudioProcessingTap调用进程回调?,ios,avfoundation,mediatoolbox,Ios,Avfoundation,Mediatoolbox,我已经准备了一个AVPlayer和avassetxportsession,它们都使用相同的MTAudioProcessingTap,但我无法调用进程回调。如果您能帮助我确定为什么不调用回调而其他回调调用,我将不胜感激 我只是简单地尝试用一个轻敲来处理音频,这样它就可以按比例增加音量。我可以添加audioMix,其中包括audioTapProcessor,但当我运行应用程序时,它只调用init和finalize回调 缺少什么阻止进程回调运行 var callbacks = MTAudioP
AVPlayer
和avassetxportsession
,它们都使用相同的MTAudioProcessingTap
,但我无法调用进程
回调。如果您能帮助我确定为什么不调用回调而其他回调调用,我将不胜感激
我只是简单地尝试用一个轻敲来处理音频,这样它就可以按比例增加音量。我可以添加audioMix
,其中包括audioTapProcessor
,但当我运行应用程序时,它只调用init
和finalize
回调
缺少什么阻止进程
回调运行
var callbacks = MTAudioProcessingTapCallbacks(
version: kMTAudioProcessingTapCallbacksVersion_0,
clientInfo: UnsafeMutableRawPointer(Unmanaged<AnyObject>.passUnretained(self as AnyObject).toOpaque()),
init: tapInit,
finalize: tapFinalize,
prepare: tapPrepare,
unprepare: tapUnprepare,
process: tapProcess)
var tap: Unmanaged<MTAudioProcessingTap>?
let status = MTAudioProcessingTapCreate(kCFAllocatorDefault, &callbacks, kMTAudioProcessingTapCreationFlag_PostEffects, &tap)
if status != noErr {
debugPrint("Failed to create audio processing tap.")
throw BoosterExporterError.failure
}
var callbacks=MTAudioProcessingTapCallbacks(
版本:KMTudioProcessingTapCallbacksVersion\u 0,
clientInfo:UnsafeMutableRawPointer(非托管)您需要找到音频轨迹ID,并将其设置为AVMUTABLEADIOMIXInputParameters以使其正常工作
AVMutableAudioMixInputParameters *audioMixInputParameters = [AVMutableAudioMixInputParameters audioMixInputParametersWithTrack:self.audioAssetTrack];
看看这里苹果的例子