|
@@ -408,7 +408,7 @@ public class PQMovieInput: ImageSource {
|
|
|
|
|
|
let readerAudioTrackOutput = AVAssetReaderTrackOutput(track: audioTrack, outputSettings: audioSettings)
|
|
|
readerAudioTrackOutput.alwaysCopiesSampleData = false
|
|
|
- // 不按照顺序读取
|
|
|
+ // 不按照顺序读取 是否支持重新设置数据的读取时间范围,即能否修改 reader 的 timeRange 属性
|
|
|
// readerVideoTrackOutput.supportsRandomAccess = true
|
|
|
assetReader.add(readerAudioTrackOutput)
|
|
|
|
|
@@ -423,7 +423,7 @@ public class PQMovieInput: ImageSource {
|
|
|
}
|
|
|
|
|
|
assetReader.timeRange = playeTimeRange
|
|
|
- FilterLog(message: "播放器开始时间\(CMTimeGetSeconds(assetReader.timeRange.start)) 结束时间\(CMTimeGetSeconds(assetReader.timeRange.end))")
|
|
|
+ FilterLog(message: "初始化播放器开始时间\(CMTimeGetSeconds(assetReader.timeRange.start)) 结束时间\(CMTimeGetSeconds(assetReader.timeRange.end)) 音乐的总时长\(asset.duration.seconds)")
|
|
|
|
|
|
|
|
|
actualStartTime = nil
|
|
@@ -436,6 +436,9 @@ public class PQMovieInput: ImageSource {
|
|
|
}
|
|
|
|
|
|
func readNextVideoFrame(with _: AVAssetReader) {
|
|
|
+
|
|
|
+ FilterLog(message: "视频解码状态\(assetReader.status.rawValue)")
|
|
|
+
|
|
|
autoreleasepool {
|
|
|
synchronizedEncodingDebugPrint("Process frame input")
|
|
|
|
|
@@ -466,7 +469,12 @@ public class PQMovieInput: ImageSource {
|
|
|
case failed = 3
|
|
|
case cancelled = 4
|
|
|
*/
|
|
|
- FilterLog(message: "解码状态\(assetReader.status.rawValue)")
|
|
|
+ FilterLog(message: "音频解码状态\(assetReader.status.rawValue)")
|
|
|
+ if(assetReader.status == .completed){
|
|
|
+ FilterLog(message: "提前结束的了!!!!\(assetReader.error)")
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
autoreleasepool {
|
|
|
guard let sampleBuffer = audioTrackOutput.copyNextSampleBuffer() else {
|
|
|
if let movieOutput = synchronizedMovieOutput {
|
|
@@ -489,6 +497,8 @@ public class PQMovieInput: ImageSource {
|
|
|
// https://www.itdaan.com/blog/2013/11/28/deb10f90970a5ea33f185c9faf2a0ab3.html
|
|
|
if !mFreeBuffer {
|
|
|
audioEncodingTarget?.processAudioBuffer(sampleBuffer)
|
|
|
+ }else{
|
|
|
+ BFLog(message: "不播放音频!!!!")
|
|
|
}
|
|
|
}
|
|
|
}
|