視頻編輯
最近項(xiàng)目一直在做這個(gè)舆驶,對(duì)標(biāo)是抖音拓轻,剪影瞬铸,微視以及b站的必剪批幌。陸陸續(xù)續(xù)看了不少項(xiàng)目,按開發(fā)歷程記錄如下
1.https://github.com/shaopx/VideoClipEditViewTest
用原生MediaCodec, Opengl對(duì)視頻進(jìn)行處理嗓节,裁剪荧缘,濾鏡,特效拦宣,抽幀等關(guān)鍵功能在項(xiàng)目初期給了我很多幫助截粗。作者使用mediaPlayer進(jìn)行播放預(yù)覽,我們采用exoPlayer,拓展性要好很多恢着。這個(gè)項(xiàng)目還包含閃電毛刺等特效桐愉。
2.https://github.com/MasayukiSuda/ExoPlayerFilter
基于exoPlayer播放器各種濾鏡效果,上面那個(gè)半成品項(xiàng)目也是抄的這個(gè)掰派,很多類似的視頻編輯項(xiàng)目都抄這個(gè)从诲,比較經(jīng)典吧。其實(shí)各種濾鏡效果跟exo沒什么關(guān)系靡羡,參考的就是這些特效的opengl實(shí)現(xiàn)系洛,在Android中的接入。
3.https://github.com/aserbao/AndroidCamera
這個(gè)demo跑起來效果不錯(cuò)(相對(duì)來講)略步,支持動(dòng)態(tài)貼紙(就是gif)特效描扯,start數(shù)有1.6K,文字貼紙的交互接近成品了趟薄,文字貼紙這部分很值得一抄绽诚。拍照部分總是掛。播放器采用mediaPlayer,抽幀使用MediaMetadataRetriever。斷定錄制時(shí)使用com.googlecode.mp4parse做多段音視頻合并(因?yàn)橐粢曨l格式采樣率什么的當(dāng)然是一致的恩够,用這個(gè)庫合并也合理)卒落。(有空把自己項(xiàng)目錄制的這個(gè)參考整理一下呀)他引入了EpMedia 這個(gè)庫執(zhí)行ffmpeg命令。他還用了FMOD音頻引擎蜂桶,用來做大叔蘿莉等音效變聲儡毕,但是demo沒有發(fā)現(xiàn)變聲入口。
4.https://github.com/wlanjie/trinity
用kotlin和c++編寫扑媚,除了界面腰湾,所有音視頻處理功能都用C++實(shí)現(xiàn)的,短視頻這塊的c++源碼很少見開源的疆股,非常難得费坊,而且同時(shí)支持軟編解碼和硬編解碼。涉及功能非常全面旬痹,幾乎覆蓋抖音視頻編輯的全部功能葵萎。不過問題也很多,距離正式搬到生產(chǎn)環(huán)境還有距離唱凯。這個(gè)項(xiàng)目我磕過一個(gè)月左右,因?yàn)橄氪钜粋€(gè)跨平臺(tái)視頻編輯sdk谎痢,(項(xiàng)目初期確實(shí)想走跨平臺(tái)方向的磕昼,后來走偏了...)。我把基于這個(gè)項(xiàng)目所做的二次開發(fā)(逐幀預(yù)覽节猿、文字貼紙票从、修bug等),整理到了github上滨嘱,地址https://github.com/meiliqin/GoldenVideoClip峰鄙。
5.https://github.com/krazykira/VidEffects
一些視頻特效,可作為GPUImageFilter的補(bǔ)充太雨,一些filter與其實(shí)現(xiàn)不同吟榴,但看起來似乎效果更好(比如高斯模糊)
鼻祖級(jí)項(xiàng)目
1.https://github.com/cats-oss/android-gpuimage
上百種濾鏡效果,熟悉的GPUImageFilter囊扳,很多java做opengl處理的項(xiàng)目做濾鏡都是抄的這里的glsl吩翻。
2.https://github.com/google/grafika
官方opengl各種用法,初學(xué)理解
相機(jī)
1.https://github.com/CainKernel/CainCamera
美顏相機(jī)锥咸,這個(gè)項(xiàng)目4年前(可能是16-17年)我就有關(guān)注過狭瞎,當(dāng)時(shí)抖音還沒有大火,我在做一個(gè)貼紙相機(jī)并生成表情包的功能搏予,當(dāng)時(shí)對(duì)標(biāo)的是美顏相機(jī)熊锭,faceu,B6132,當(dāng)時(shí)這一票app很熱門碗殷,女生拍照必備精绎,后來被抖音淹沒了...呵,.技術(shù)的發(fā)展真快亿扁。
2.https://github.com/robertlevonyan/CameraXDemo
關(guān)于cameraX的一個(gè)好demo,cameraX各模塊各功能都有涉及捺典,研究cameraX主要是因?yàn)樗囊粋€(gè)牛逼之處:CameraX-extension。這個(gè)拓展可以使用硬件廠商提供的相機(jī)功能api从祝,比如Oppo的相機(jī)美顏啊夜景拍照啊做那么好襟己,我開放第三方app相機(jī)預(yù)覽也可以使用它提供的美顏接口。但是搗騰了半天僅測(cè)得一款oppo手機(jī)提供了該接口牍陌。
3.https://github.com/saki4510t/AudioVideoRecordingSample
錄制和編碼方面的一個(gè)基礎(chǔ)項(xiàng)目擎浴,能夠?qū)?Camera 采集的視頻和音頻內(nèi)容編碼成一個(gè) MP4 文件。
直播推流
https://github.com/hypeapps/Endoscope
我的rtsp初體驗(yàn)項(xiàng)目毒涧,很不錯(cuò)贮预,修改了其中視頻流尺寸支持,獲取相機(jī)預(yù)覽和手機(jī)編碼器支持尺寸(各設(shè)備各有不同)契讲。另外仿吞,pc要裝一個(gè)vcl,直播玩起來捡偏。
自研視頻播放器
1.https://github.com/CarGuo/GSYVideoPlayer.git
基于IJKplayer唤冈、ExoPlayer等播放器框架的二次開發(fā),實(shí)現(xiàn)android上多種熱門播放器效果银伟,其實(shí)跟我們做的事情差不多你虹。
2.https://github.com/bilibili/ijkplayer.git
3.https://github.com/rockcarry/fanplayer.git
同上,開源視頻播放器引擎
音頻處理
1.https://github.com/CrazyZty/ComposeAudio
詳解如何使用代碼進(jìn)行音頻合成
-
https://github.com/meiliqin/AndroidSoundTouch
自己整理的soundtouch變速項(xiàng)目
其他
1.https://github.com/xufuji456/FFmpegAndroid
ffmpeg學(xué)習(xí)項(xiàng)目
2.https://github.com/yangjie10930/EpMedia
ffmpeg很好的android封裝
作者:梅芳姑
鏈接:http://www.reibang.com/p/e74970e85aa7
來源:簡書
著作權(quán)歸作者所有彤避。商業(yè)轉(zhuǎn)載請(qǐng)聯(lián)系作者獲得授權(quán)傅物,非商業(yè)轉(zhuǎn)載請(qǐng)注明出處。