簡(jiǎn)介
本文的編碼器實(shí)現(xiàn)了YUV420P的數(shù)據(jù)編碼為JPEG圖片。本著簡(jiǎn)單的原則,代碼基本上精簡(jiǎn)到了極限。使用了2017年5月10號(hào)編譯的的FFMPEG2.8類庫(kù)。
程序很簡(jiǎn)單,打開(kāi)工程后直接運(yùn)行即可將YUV數(shù)據(jù)編碼為JPEG。本程序十分靈活,可以根據(jù)需要修改成編碼各種圖像格式的編碼器,比如PNG,GIF等等。平臺(tái)使用mac下x-code->macOS->Command Line Tool和iOS->Single View Application工程。
之前iOS版本的好做,但是移植到macOS版本,編譯時(shí)一只報(bào)錯(cuò)Undefined symbols for architecture x86_64:
"_OBJC_CLASS_$_AVCaptureVideoDataOutput", referenced from:
objc-class-ref in CameraSource.o
"_OBJC_CLASS_$_AVCaptureDeviceInput", referenced from:
objc-class-ref in CameraSource.o
后來(lái)用了ffmpeg2.8版本編譯的ARCHS="arm64 armv7 x86_64 i386"平臺(tái)ffmpeg庫(kù)就可以運(yùn)行了,浪費(fèi)了許多周折;
demo的功能可以參考雷神的http://blog.csdn.net/leixiaohua1020/article/details/25346147
移植前一只在想iOS版的ffmpeg庫(kù)和macOS版的庫(kù)能不能通用呢?
后來(lái)實(shí)踐證明只要庫(kù)支持arm64 armv7 x86_64 i386這些架構(gòu),是可以移植到macOS的
我的demo地址: