android使用cpu软解,Android 使用自带的MediaCodec 框架进行本地视频压缩,速度嗖嗖的,亲测有效!!!...
如果您覺(jué)得本項(xiàng)目對(duì)你有用,請(qǐng)隨手star,謝謝
Android 視頻壓縮常見3種方案:(1)FFmpeg,(2)mp4praser,(3)MediaCodec. 本demo是用android 自帶的MediaCodec 框架
本人試了一下,一個(gè)大小為656M的視頻,壓縮只要3分鐘,可以通過(guò)改變分辨率和碼率來(lái)進(jìn)行壓縮,有進(jìn)度條提示。如果使用ffmpeg需要大概10分鐘左右,而且因?yàn)榘鼤?huì)比較大。
如果說(shuō)只要使用視頻壓縮的功能的話,使用本項(xiàng)目是最適合不過(guò)了,如果還需要裁切,拼接,音頻相關(guān)的處理還會(huì)建議使用ffmpeg,它的功能才叫做強(qiáng)大,而且網(wǎng)上有很多教程和開源的代碼
如果壓縮后覺(jué)得視頻不夠清楚,可以參考本人的另一個(gè)demo使用ffmpeg做的視頻壓縮demo,效果會(huì)好很多,demo地址:https://github.com/tangpeng/FFmpegDemo
##如果您覺(jué)得本項(xiàng)目對(duì)你有用,請(qǐng)隨手star,謝謝
Demo
###一句代碼搞定 可以修改分辨率或者碼率
VideoCompressTask task = VideoCompress.compressVideoLow(tv_input.getText().toString(), destPath, new VideoCompress.CompressListener() {
@Override
public void onStart() {
//Start Compress
}
@Override
public void onSuccess() {
//Finish successfully
}
@Override
public void onFail() {
//Failed
}
@Override
public void onProgress(float percent) {
//Progress
}
});
硬件解碼跟軟件解碼我們通常稱為硬解跟軟解,是通過(guò)移動(dòng)設(shè)備觀看視頻時(shí)會(huì)碰到的一個(gè)概念。 首先來(lái)說(shuō)下兩者的區(qū)別: 硬件解碼:硬件解碼從字面意思很容易理解,就是通過(guò)硬件進(jìn)行視頻的解碼工作,其中硬件解碼是由GPU來(lái)進(jìn)行的,使用GPU解碼能夠降低CPU的工作負(fù)荷,降低功耗。 軟件解碼:軟件解碼則是通過(guò)軟件本身占用的CPU進(jìn)行解碼,所以會(huì)增加CPU工作負(fù)荷,提升功耗, 硬解及軟解的優(yōu)點(diǎn)跟缺點(diǎn): 硬解優(yōu)點(diǎn):播放出來(lái)的視頻較為流暢,并且能夠延長(zhǎng)移動(dòng)設(shè)備播放視頻的時(shí)間; 硬解缺點(diǎn):所解碼視頻格式收到GPU影響,無(wú)法部分全部視頻,畫質(zhì)也不夠清晰。 軟解優(yōu)點(diǎn):軟解能夠解碼所有視頻格式文件,且畫質(zhì)更加清晰; 軟解缺點(diǎn):由于軟解加大CPU工作負(fù)荷,會(huì)占用過(guò)多的移動(dòng)CPU資源,如果CPU能力不足,則軟件也將受到影響。
總結(jié)
以上是生活随笔為你收集整理的android使用cpu软解,Android 使用自带的MediaCodec 框架进行本地视频压缩,速度嗖嗖的,亲测有效!!!...的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 微信支付服务端下单获取prepay_id
- 下一篇: Android重定向,还原短链接为长链接