android videoview播放視頻前獲取視頻時長(根據視頻路徑獲取)

最近項目中開發videoview視頻上傳,在上傳之前要判斷上傳時長,時長過短或過長的都不能上傳。剛開始看videoview的api,有一個getDuration()的方法是獲取時長,但是每次拿到的值都是-1,後來查了相關資料,大概是說必須要在視頻準備完成開始播放的時候才能拿到時長。可是在我項目裏面上傳視頻的時候不需要播放。後來用如下方法解決,代碼如下:(音頻文件也可以用此種方式獲取時長)

MediaMetadataRetriever mmr = new MediaMetadataRetriever();
mmr.setDataSource(path);
String duration = mmr.extractMetadata(MediaMetadataRetriever.METADATA_KEY_DURATION); // 播放時長單位爲毫秒

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章