Utilisez l'API de messagerie LINE pour obtenir la durée du fichier vocal lors de la liaison * du compte LINE officiel avec notre outil de chat de service Web appelé Channel Talk. Au fait, j'ai trébuché, alors partagez-le.
Afin de synchroniser le fichier audio téléchargé par Channel Talk avec le compte officiel LINE afin qu'il puisse être vu du côté de l'utilisateur final, le fichier audio est envoyé à l'API de messagerie, mais la longueur du fichier audio doit également être envoyée.
Cependant, il n'y a pas d'API pour obtenir la longueur de ce fichier audio à partir du fichier.
Mais la méthode est simple. Vous pouvez le mettre en œuvre vous-même. Il peut être calculé à partir du nombre total d'images pouvant être obtenues à partir du fichier audio et de la fréquence d'images.
File file = new File(fileUrl);
try {
//Préparation à l'obtention des métadonnées du fichier audio
AudioInputStream stream = AudioSystem.getAudioInputStream(file);
//Nombre total d'images pour le fichier audio
long length = stream.getFrameLength();
AudioFormat format = stream.getFormat();
// frame ->Nombre d'images traitées par seconde
float frame = format.getSampleRate();
//Nombre total d'images ➗ Nombre d'images traitées par seconde=longueur
int duration = (int)(length/frame);
} catch (UnsupportedAudioFileException e) {
return false;
}
J'aurais peut-être dû le faire depuis le début sans rien chercher. .. .. C'était plus facile que ce à quoi je m'attendais!