ios视频转码(支持AAC,MP3,H264,MP4,TS)

本来叫工作中遇到的转码问题,后来发现一个比较牛的三方歪果仁写的(地址 https://github.com/Keemotion/TS2MP4),如题,支持的格式,感觉包含了用到的多数,所以就改了下标题

一、互相转换    (GPAC4iOS + Classes文件共13兆左右)  下载地址https://github.com/YanZeqin/TsToMp4.git

pod 中导入  pod 'GPAC4iOS'    pod 'TS2MP4' (TS2MP4依赖的库必须要有)

build phases 中 Link Binary With Libraries入中加UIKit.framework 以及libz.tbd

从demo中拖出Classes文件 拖入工程,在原demo中进行了部分修改,这样用的时候避免了很多坑

在用到的类中导入头文件 #import "KMMedia.h"

附代码简单易懂

ios视频转码(支持AAC,MP3,H264,MP4,TS)_第1张图片

注:如果遇到以下问题看解决办法

1、build phases 中 Link Binary With Libraries入加 libc++.tbd库

ios视频转码(支持AAC,MP3,H264,MP4,TS)_第2张图片

2、build settings中 other linker flags中加  $(inherited)


二、mp4转ts  (FFmpegWrapper还支持什么格式不知道,望知道的留言,互相学习)(FFmpeg + FFmpegWrapper  110多兆)

下载地址    略大(130多兆)包含了ffmpeg  https://github.com/YanZeqin/VideoConversion

Podfile中加入FFmpeg

pod 'FFmpegWrapper', '~> 1.0'

这时FFmpeg,FFmpegWrapper这俩文件主要用后者

导入头文件#import "FFmpegWrapper.h"

创建 FFmpegWrapper *wrapper = [[FFmpegWrapper alloc] init];

- (void) convertInputPath:(NSString*)inputPath outputPath:(NSString*)outputPath options:(NSDictionary*)options progressBlock:(FFmpegWrapperProgressBlock)progressBlock completionBlock:(FFmpegWrapperCompletionBlock)completionBlock

使用该方法  inputPath需要转换的mp4文件路径 ,outputPath转换后的路径  options没用到,也没深入研究

第一个回调里会返回文件大小    以及转换的大小

第二个回调里是成功失败  

附代码

ios视频转码(支持AAC,MP3,H264,MP4,TS)_第3张图片

你可能感兴趣的:(ios视频转码(支持AAC,MP3,H264,MP4,TS))