記得以前在“回答問題”那塊問了一個問題,高分求教,但是45分還是未能送出去;
現在我來寫一個解決的辦法,也給大家做個分享;
在百度上查找一下,大多是什么JMF,什么JMF第三方插件,读取文件头几个字节,然后解决,ffmpeg和Mencoder,可以一句话说,搞得晕头晕脑的;
解决办法:
调用DLL文件,只要找到一个可以比较好解析播放时长的DLL,然后JNI调用,CPP或者Delphi都好,只要能实现就oK了,DLL放在BIN目录;
PS:问题解决;
public class CtrlFtpFile {
//读取Dll
static {
System.loadLibrary("GetPlayTime");
}
public native String getMediaTime(String arg);
public static void main(String[] args) {
CtrlFtpFile hw = new CtrlFtpFile();
// System.out.println(hw.getMediaTime("D:\\TDDOWNLOAD\\小强.mp3"));
System.out.println(hw.getMediaTime("file:///G:/tomcat/apache-tomcat-6.0.18/webapps/mbs/ftp/0/real/B1224487037153.mpeg"));
//file:///G:\tomcat\apache-tomcat-6.0.18\webapps\mbs\ftp\0/real/B1224487037153.mpeg
}
}
调用方法:String.valueOf(ftpFile.getPlaytime());因为得到是一个秒数字符串;
结束!这里的DLL是Delphic写的!