使用AVAudioMix对SCRecorder段应用淡入淡出效果

时间:2016-01-10 11:52:49

标签: ios swift avaudioengine

我试图解决我对iOs的真棒SCRecorder库的问题。问题是,当我用相机录制片段时,我可以听到" pop"或"点击"在每个视频片段的最开始发出声音。

要解决这个问题,我想申请一个" fadeIn"对每个片段开头的音频产生影响,因此我无法听到这些"点击"了。

以下是我的代码:

func setFadeAudioSegments() -> SCRecordSession
{
    let newSession = SCRecordSession()

    for seg in (recorder.session?.segments)! {
        let segment = seg as! SCRecordSessionSegment

        let audioTrack = segment.asset?.tracksWithMediaType(AVMediaTypeAudio).first
        let inputParams = AVMutableAudioMixInputParameters(track: audioTrack)

        let timeR = CMTimeRangeMake(CMTimeMake(0,1), CMTimeMake(5, 1))
        inputParams.setVolumeRampFromStartVolume(0.0, toEndVolume: 1.0, timeRange: timeR)

        newSession.addSegment(segment)
    }

    newSession.fileType = AVFileTypeQuickTimeMovie
    newSession.mergeSegmentsUsingPreset(AVAssetExportPresetHighestQuality, completionHandler: { (url, error) -> Void in
        if error != nil {
            print(error)
        }
    })

    return newSession
}

我没有错误,但它不会使音频淡出。有人能帮助我吗?

谢谢:-)!

0 个答案:

没有答案