-
當(dāng)前位置:首頁(yè) > 創(chuàng)意學(xué)院 > 短視頻 > 專(zhuān)題列表 > 正文
短視頻解析api(短視頻解析api源碼 非三方)
大家好!今天讓創(chuàng)意嶺的小編來(lái)大家介紹下關(guān)于短視頻解析api的問(wèn)題,以下是小編對(duì)此問(wèn)題的歸納整理,讓我們一起來(lái)看看吧。
開(kāi)始之前先推薦一個(gè)非常厲害的Ai人工智能工具,一鍵生成原創(chuàng)文章、方案、文案、工作計(jì)劃、工作報(bào)告、論文、代碼、作文、做題和對(duì)話答疑等等
只需要輸入關(guān)鍵詞,就能返回你想要的內(nèi)容,越精準(zhǔn),寫(xiě)出的就越詳細(xì),有微信小程序端、在線網(wǎng)頁(yè)版、PC客戶端
官網(wǎng):https://ai.de1919.com
本文目錄:
一、短視頻編輯:可實(shí)時(shí)交互的播放器
如何開(kāi)發(fā)一個(gè)類(lèi)似剪影或抖音的視頻剪輯工具?
其開(kāi)發(fā)任務(wù)如上圖,一個(gè)短視頻生產(chǎn)app的首要任務(wù)在于實(shí)現(xiàn)一個(gè)高度可實(shí)時(shí)交互的播放器,在播放預(yù)覽時(shí)支持多種編輯能力。
最初我們調(diào)研了多種方案,乍一看Android原生播放器肯定不夠用,估計(jì)要在眾多c++的開(kāi)源播放器中尋找參考方案,最好自己實(shí)現(xiàn)一個(gè)播放器,高度靈活高度可控。然而我們發(fā)現(xiàn)exo這個(gè)男團(tuán)播放器的厲害之處,雖然這個(gè)播放器如此常用,但是我們不知道其潛力值爆表,可以拓展得如此強(qiáng)大。
事實(shí)上直到現(xiàn)在,我們?nèi)匀辉谧匝幸曨l剪輯工具中使用exoplayer做編輯預(yù)覽。為什么選擇exoplayer,基于以下幾點(diǎn)原因(一句話,性?xún)r(jià)比高):
使用基于exoplayer播放器進(jìn)行二次開(kāi)發(fā),快速高效實(shí)現(xiàn)視頻剪輯功能。視頻剪輯播放器用于視頻編輯過(guò)程中的實(shí)時(shí)預(yù)覽播放,支持有功能有:
針對(duì)上述視頻剪輯所需要支持的功能,逐一對(duì)照explayer的api文檔,尋找拓展實(shí)現(xiàn)的方法。
其中,視頻旋轉(zhuǎn)、文字貼紙、美顏濾鏡、素材轉(zhuǎn)場(chǎng)需要調(diào)用setVideoSurface控制視頻呈現(xiàn)層,自定義GLSurfaceView,使用opengl實(shí)現(xiàn)對(duì)視頻的旋轉(zhuǎn)、美顏濾鏡、添加貼紙。exoplayer播放輸出的surface與自定義GLSurfaceView的渲染紋理相綁定。
視頻裁剪播放使用ClippingMediaSource設(shè)置裁剪素材,按api文檔傳入起始時(shí)間和結(jié)束時(shí)間。
多個(gè)視頻拼接播放,使用ConcatenatingMediaSource可以用來(lái)無(wú)縫地合并播放多個(gè)素材,為了能對(duì)單個(gè)素材進(jìn)行編輯,isAtomic設(shè)為true。
變速使用setPlaybackParameters設(shè)置速度參數(shù)
這三個(gè)功能使用exoplayer已提供的api就可以實(shí)現(xiàn),相對(duì)容易。在執(zhí)行編輯操作后即時(shí)更新播放器素材和參數(shù)即可。在我們的產(chǎn)品中,有一個(gè)撤銷(xiāo)操作的交互,所以需要保留一份數(shù)據(jù)拷貝,如果用戶撤銷(xiāo)操作則更新為原來(lái)的數(shù)據(jù)。
exoplayer本身不支持圖片格式的素材播放。注入一個(gè)自定義渲染器來(lái)實(shí)現(xiàn)圖片(格式為jpg、png、gif等)
其中ImageRender繼承BaseRenderer,實(shí)現(xiàn)了圖片的自定義渲染。render主要工作是將每幀數(shù)據(jù)解碼流渲染為屏幕圖像。對(duì)于圖片來(lái)說(shuō),我們定義ImageMediaSourceImage、SampleStreamImpl和ImageMediaPeriod,分別繼承于BaseMediaSource、SampleStream和MediaPeriod,從原素材解析并傳送每幀圖片數(shù)據(jù)。圖片不需要真正的解碼,實(shí)現(xiàn)SampleStream的readData方法讀取圖片uri為解碼buffer。
實(shí)現(xiàn)圖片播放的核心在于實(shí)現(xiàn)render接口:
在這個(gè)方法內(nèi),我們創(chuàng)建opengl環(huán)境,將bitmap繪制到屏幕上
添加的文字或貼紙支持移動(dòng)、旋轉(zhuǎn)、縮放和設(shè)置時(shí)間軸。對(duì)于多個(gè)文字貼紙,我們最終包裝為一個(gè)與渲染屏幕同尺寸的bitmap,在這個(gè)bitmap的畫(huà)布上繪制一系列帶坐標(biāo)大小、起止時(shí)間的小bitmap(即stickerItem.getBitmap)。
將這張貼紙畫(huà)布bitmap與原視頻幀像素混合就實(shí)現(xiàn)了所有文字貼紙的繪制。用opengl繪制貼紙,就是對(duì)屏幕上像素做一個(gè)水印濾鏡的運(yùn)算。采用GLSL內(nèi)建的mix函數(shù)做兩個(gè)紋理的混合,以下是水印濾鏡所用的片元著色器。
和文字貼紙一樣,要實(shí)現(xiàn)實(shí)時(shí)的美顏濾鏡效果,必須使用幀緩沖fbo。幀緩沖的每一存儲(chǔ)單元對(duì)應(yīng)著屏幕每一個(gè)像素。而美顏濾鏡涉及較復(fù)雜算法,由部門(mén)內(nèi)的人工智能組提供sdk接入,在繪制過(guò)程中調(diào)用sdk方法如下,就是使用fbo進(jìn)行一次圖像紋理轉(zhuǎn)換。傳入?yún)?shù)為屏幕方向、攝像頭方向和渲染尺寸。
目前產(chǎn)品實(shí)現(xiàn)了左右移、上下移、拉近拉遠(yuǎn)、順時(shí)針逆時(shí)針旋轉(zhuǎn)等幾種轉(zhuǎn)場(chǎng)效果。轉(zhuǎn)場(chǎng)的實(shí)現(xiàn)方法是:對(duì)于兩個(gè)在其中添加了轉(zhuǎn)場(chǎng)的素材,在上一個(gè)素材的最后1000ms繪制轉(zhuǎn)場(chǎng)濾鏡,轉(zhuǎn)場(chǎng)濾鏡即將兩張圖片的像素以一定的規(guī)律進(jìn)行渲染,轉(zhuǎn)場(chǎng)算法由opengl使用glsl著色器實(shí)現(xiàn)。轉(zhuǎn)場(chǎng)基類(lèi)的片元著色器如下,移動(dòng)轉(zhuǎn)場(chǎng)(左右向移動(dòng)和上下移動(dòng))、縮放轉(zhuǎn)場(chǎng)(拉近拉遠(yuǎn))、旋轉(zhuǎn)轉(zhuǎn)場(chǎng)對(duì)getFromColor與getToColor執(zhí)行的行為不同。
以移動(dòng)轉(zhuǎn)場(chǎng)的轉(zhuǎn)場(chǎng)glsl著色器為例
轉(zhuǎn)場(chǎng)的具體實(shí)現(xiàn)參考了GPUImageFilter庫(kù),和美顏濾鏡以及文字貼紙不同的是,轉(zhuǎn)場(chǎng)濾鏡需要在渲染前預(yù)先設(shè)置將下個(gè)素材的首幀圖。
在預(yù)覽編輯過(guò)程中,由于音樂(lè)并不需要真正合成于視頻中,因此可以使用另一個(gè)播放器單獨(dú)播放音頻,我們采用android更原始的MediaPlayer單獨(dú)播放音樂(lè),單獨(dú)支持音樂(lè)的裁剪播放和seek。
抽幀預(yù)覽即每隔固定時(shí)間取視頻的一幀圖片構(gòu)成時(shí)間軸,我們使用ffmpegMediaMetadataRetriever庫(kù)進(jìn)行抽幀 ,使用方法為
該庫(kù)內(nèi)部使用ffmpeg進(jìn)行解碼取幀,接口易用但是其軟件解碼方式效率過(guò)低,相對(duì)較慢。因?yàn)閑xoplayer播放器是默認(rèn)使用硬件解碼的,可以采用另一個(gè)exoplayer播放器快速播放一次素材,然后每隔一段時(shí)間獲取屏幕圖像,但此種方法開(kāi)銷(xiāo)過(guò)大,兩個(gè)exoplayer播放器不利于管理。
最后,我們發(fā)現(xiàn)常用的圖片加載庫(kù)glide也能進(jìn)行視頻抽幀,使用更為簡(jiǎn)單方便,其內(nèi)部采用mediaMetadataRetriever進(jìn)行抽幀。
1.調(diào)整素材,拼接、裁剪、變速
https://vod.cc.163.com/file/5f896ef25655da63cc2d3237.mp4
2.轉(zhuǎn)場(chǎng)、文字貼紙、美顏濾鏡
https://vod.cc.163.com/file/5f896edad70f81a0e3c77dbe.mp4
二、如何解析抖音短視頻?
可以用一些好用的手機(jī)剪輯軟件制作方便快捷,比如我們常見(jiàn)的抖音情感視頻制作等。
1、打開(kāi)手機(jī)軟件【美冊(cè)】的視頻制作功能,點(diǎn)擊【故事視頻功能】或者【視頻加字幕】可以自動(dòng)給手機(jī)添加字幕。
視頻編輯頁(yè)面其他給視頻添加音樂(lè)的功能,加封面等也可以試一下。
2、視頻去水印功能,可以選擇給視頻打馬賽克的方式模糊水印,或者把有水印的視頻裁剪掉。
3、制作抖音3d環(huán)繞視頻,
三、抖音去水印之后是0秒說(shuō)明視頻解析出現(xiàn)錯(cuò)誤
抖音去水印之后是0秒說(shuō)明視頻解析出現(xiàn)錯(cuò)誤,更換程序進(jìn)行解析即可。
工具/原料:
華為mate40
EMUI12
微信11.03
1、打開(kāi)抖音短視頻app,選擇你要去除水印的視頻,點(diǎn)擊“分享“——“復(fù)制鏈接”。
2、打開(kāi)微信里,點(diǎn)擊搜索圖標(biāo),搜【創(chuàng)客手冊(cè)】小程序。
3、進(jìn)入小程序后,選擇去水印,根據(jù)提示,進(jìn)入到界面。
4、進(jìn)入去水印界面后,輸入剛才在抖音復(fù)制的短視頻地址,然后點(diǎn)【解析】,然后解析成功,系統(tǒng)會(huì)有提示,提示成功后,最后點(diǎn)擊【下載】即可。
四、如何解析抖音短視頻
可以用一些好用的手機(jī)剪輯軟件制作方便快捷,比如我們常見(jiàn)的抖音情感視頻制作等。
1、打開(kāi)手機(jī)軟件【美冊(cè)】的視頻制作功能,點(diǎn)擊【故事視頻功能】或者【視頻加字幕】可以自動(dòng)給手機(jī)添加字幕。
視頻編輯頁(yè)面其他給視頻添加音樂(lè)的功能,加封面等也可以試一下。
2、視頻去水印功能,可以選擇給視頻打馬賽克的方式模糊水印,或者把有水印的視頻裁剪掉。
3、制作抖音3d環(huán)繞視頻,
以上就是關(guān)于短視頻解析api相關(guān)問(wèn)題的回答。希望能幫到你,如有更多相關(guān)問(wèn)題,您也可以聯(lián)系我們的客服進(jìn)行咨詢(xún),客服也會(huì)為您講解更多精彩的知識(shí)和內(nèi)容。
推薦閱讀:
家電品牌抖音代運(yùn)營(yíng)短視頻內(nèi)容(內(nèi)容有哪些)
短視頻制作培訓(xùn)課程(短視頻制作培訓(xùn)課程有哪些)
建筑國(guó)企招聘信息網(wǎng)(中國(guó)建筑招聘網(wǎng))
問(wèn)大家
湟中著名的廣告片短視頻拍攝制作有哪些值得上心的事?各位大佬們拜托了
成都抖音自媒體短視頻公司有嗎?成都抖音自媒體運(yùn)營(yíng)公司
湟中優(yōu)秀的廣告片短視頻拍攝制作需要了解哪些事項(xiàng)?在座的筒子們聊一聊
大通熱門(mén)的廣告片短視頻拍攝制作需要關(guān)注什么問(wèn)題?在座的大俠們幫忙回一下
城中服務(wù)好的廣告片短視頻拍攝制作官方手機(jī)號(hào)有么?諸位前輩們幫回答下
城東穩(wěn)妥的廣告片短視頻拍攝制作如何避免踩一些雷?諸位前輩們幫回答下
湟中很強(qiáng)大的廣告片短視頻拍攝制作官方聯(lián)系方式有么?在座的筒子們聊一聊
城東有口皆碑的廣告片短視頻拍攝制作有哪些需要關(guān)心的事?各位資深人士們有沒(méi)有誰(shuí)了解
大通業(yè)內(nèi)數(shù)得著的廣告片短視頻拍攝制作什么規(guī)則需要格外留意?哪位前輩能否告訴我
找對(duì)象靠譜的網(wǎng)站?濟(jì)南,相親征婚交友,婚戀網(wǎng)站找對(duì)象靠譜嗎?
濟(jì)南相親平臺(tái)哪個(gè)最靠譜?濟(jì)南哪個(gè)婚戀網(wǎng)站靠譜又不收費(fèi)呢?