如何在 iOS 中从开始时间到结束时间修剪或播放音频?

Posted

技术标签:

【中文标题】如何在 iOS 中从开始时间到结束时间修剪或播放音频?【英文标题】:how to trim or play a audio from begin time to end time in iOS? 【发布时间】:2013-08-02 09:46:02 【问题描述】:

这类似于iTunes的修剪功能,传递以下两个参数以获得我想要的修剪音频。

例如。 开始时间:00:23.12

停止时间:01:33.54

如果有帮助,不胜感激!

【问题讨论】:

【参考方案1】:

同一主题有多种问题可供选择:

ios Audio Trimming

How to trim audio file in iPhone?

How to trim audio data?

How to crop audio in ios

这是一个示例代码:

http://code4app.net/ios/Trim-Control/51121a886803fa071d000001

希望这可以帮助您实现您的功能。

【讨论】:

我找不到任何关于如何从音频文件中删除的答案,例如,如果我想从第二个 3 到 10 删除。你可以检查这个问题吗:***.com/questions/53928988/…【参考方案2】:

如果您在 2016 年阅读本文并且正在寻找解决方案。它对我有用(swift 2.3):

let exporter = AVAssetExportSession(asset: composition, presetName: AVAssetExportPresetAppleM4A)
    exporter!.outputURL = soundFile1
    exporter!.outputFileType = AVFileTypeAppleM4A
    let duration = CMTimeGetSeconds(avAsset1.duration)
    print(duration)
    if (duration < 5.0) 
        print("sound is not long enough")
        return
    
    // e.g. the first 30 seconds
    let startTime = CMTimeMake(0, 1)
    let stopTime = CMTimeMake(30,1)
    let exportTimeRange = CMTimeRangeFromTimeToTime(startTime, stopTime)
    print(exportTimeRange)
    exporter!.timeRange = exportTimeRange
    print(exporter!.timeRange)

【讨论】:

究竟是 5.0 分钟或秒 ?? 如果我想修剪音频但时间不到 5 分钟,请回复。

以上是关于如何在 iOS 中从开始时间到结束时间修剪或播放音频?的主要内容,如果未能解决你的问题,请参考以下文章

如何在iOS(目标C)中将字符从一个位置修剪到另一个位置?

iOS 在特定时间停止音频播放(AVAudioPlayer 结束时间)

当本地通知在特定时间触发时如何在 xamarin ios 中播放警报音

如何在pygame中从特定时间开始播放音频文件

使用 Sox 开始和结束音频批量修剪

如何在IOS目标c中重复从数组开始数据到结束数据的数据并再次开始数据