Я пытаюсь преобразовать локальное видео .mp4 в HLS, используя ffmpeg в приложении iOS. Я объединил ffmpeg-оболочку с помощью pods и сгенерировал все сегментированные файлы .ts и файл m3u8, но некоторые из сегментов файла .ts не указаны в файле списка воспроизведения .m3u8, как показано ниже. Он всегда перечисляет последние 5 сегментов видео.
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-TARGETDURATION:2
#EXT-X-MEDIA-SEQUENCE:13
#EXTINF:2,
out13.ts
#EXTINF:1,
out14.ts
#EXTINF:2,
out15.ts
#EXTINF:2,
out16.ts
#EXTINF:1,
out17.ts
#EXT-X-ENDLIST
Я использовал следующие коды для генерации HLS.
FFmpegWrapper *wrapper = [[FFmpegWrapper alloc] init];
[wrapper convertInputPath:inputFilePath outputPath:outputFilePath options:nil progressBlock:^(NSUInteger bytesRead, uint64_t totalBytesRead, uint64_t totalBytesExpectedToRead) {
} completionBlock:^(BOOL success, NSError *error) {
success?NSLog(@"Success...."):NSLog(@"Error : %@",error.localizedDescription);
}];
Есть ли другие методы для этого?