Android 獲取視頻可播放時長

前言

? ? ? ? 最近項目開會時,領導提出某視頻要求15/20秒的倍數,但不可超過多少分鐘需求,但是要求前端實現,然后我也處理了一下,這里記錄一下。

? ? ? ? 視頻獲取時長其實官方已經提供其方法,得到的是毫秒,我們只需要對應的計算一下就可以了。

正題:

MediaPlayer playe = new MediaPlayer();//這個是眾所周知的不多解釋

AssetFileDescriptor afd = getAssets().openFd("test.mp4");//我測試把視頻文件放在了assets下,這是獲取方式

player.setDataSource(afd.getFileDescriptor(), afd.getStartOffset(), afd.getLength());//把文件的信息配置到MediaPlayer中

player.prepare();//這里需要準備一下了

ok,下面可以得到需要的東西了

double mediaDuration = player.getDuration();//這里得到的是毫秒數

整合一下公式(其實感覺沒必要說這些):

總秒數 = 總毫秒數/1000;

分鐘數 = 總秒數/60;

秒數 = 總秒數%60;

以下得到結果:

double media_S = (mediaDuration/1000);//總秒數

int media_m = (int)media_ms/60;分鐘數

int media_s = (int)media_ms%60;秒數

下面是打印結果:

LogUtils("總毫秒數:"+ mediaDuration +",全部秒數:"+ media_S +" ,"+ media_m +"分"+ media_s+"秒");

如有欠缺或需要修改的地方,歡迎補充

新手勿噴

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容