標籤:war 上傳視頻 warnings time str on() 關閉 int code
前端上傳視頻之後,根據上傳的視頻檔案擷取視頻的大小和時間長度
1、擷取視頻時間長度
private String ReadVideoTime(File source) {
Encoder encoder = new Encoder();
String length = "";
try {
MultimediaInfo m = encoder.getInfo(source);
long ls = m.getDuration()/1000;
int hour = (int) (ls/3600);
int minute = (int) (ls%3600)/60;
int second = (int) (ls-hour*3600-minute*60);
length = hour+"‘"+minute+"‘‘"+second+"‘‘‘";
} catch (Exception e) {
e.printStackTrace();
}
return length;
}
2、擷取視頻大小
/**
* 擷取視頻大小
* @param source
* @return
*/
private String ReadVideoSize(File source) {
FileChannel fc= null;
String size = "";
try {
@SuppressWarnings("resource")
FileInputStream fis = new FileInputStream(source);
fc= fis.getChannel();
BigDecimal fileSize = new BigDecimal(fc.size());
size = fileSize.divide(new BigDecimal(1048576), 2, RoundingMode.HALF_UP) + "MB";
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} finally {
if (null!=fc){
try{
fc.close();
}catch(IOException e){
e.printStackTrace();
}
}
}
return size;
}
***擷取視頻大小的時候,由於用到了流,使用完之後一定要及時的關閉流,避免無法刪除視頻檔案***
Java擷取視頻的大小、時間長度