Mp3-файлы можно обрабатывать с помощью этого mp3 SPI support, но я не нахожу что-то похожее на файлы mp4.Есть ли Java API для файлов mp4?
Любая помощь будет оценена по достоинству.
--update
То, что я хочу сделать, это получить размер файла, как я с волновыми файлами, используя этот код:
AudioInputStream audioInputStream = AudioSystem.getAudioInputStream(file);
AudioFormat format = audioInputStream.getFormat();
long audioFileLength = file.length();
int frameSize = format.getFrameSize();
float frameRate = format.getFrameRate();
float durationInSeconds = (audioFileLength/(frameSize * frameRate));
--ANSWER
Вот ответ кода с использованием намек @mdma (IBM инструментарий):
/**
* Use IBMPlayerForMpeg4SDK to get mp4 file duration.
*
* @return the mp4File duration in milliseconds.
*/
public static long getMp4Duration(File mp4File) throws IllegalStateException, IOException {
PlayerControl playerControl = PlayerFactory.createLightweightMPEG4Player();
playerControl.open(mp4File.getAbsolutePath());
long mili = playerControl.getDuration();
// int sec = (int) ((mili/1000) % 60);
// int min = (int) ((mili/1000)/60);
// System.out.println("IBM Tookit result = " + min + ":" + sec);
return mili;
}
-
Связанные, независимый язык, вопрос: Anyone familiar with mp4 data structure?
Проект mp4parser не имеет svn или загрузок. Я пытаюсь использовать JMF + Jffmpeg, но мне сложно с этим справиться. –
@Tom - Есть источники mp4parser - я только что проверил источники из http://mp4parser.googlecode.com/svn/trunk/ – mdma
@TomBrito Я действительно пытаюсь, но этот проект слишком низок в документации .. –