Como faço para obter o tempo total de um arquivo de som em Java?

Como faço para obter o tempo total de um arquivo de som em Java?

–ATUALIZAR

Parece que este código funciona: long audioFileLength = audioFile.length ();

recordedTimeInSec = audioFileLength / (frameSize * frameRate); 

Eu sei como obter o tamanho do arquivo, mas eu não estou encontrando como obter a taxa de frameworks do arquivo de som e tamanho do quadro … Alguma idéia ou link?

– ATUALIZAÇÃO

Mais um código de trabalho (usando as dicas do @mdma):

  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)); 

Dado um File você pode escrever

 File file = ...; AudioInputStream audioInputStream = AudioSystem.getAudioInputStream(file); AudioFormat format = audioInputStream.getFormat(); long frames = audioInputStream.getFrameLength(); double durationInSeconds = (frames+0.0) / format.getFrameRate();