Если условие что в 2 секунды любое аудио декодируется и вам нужно лишь правильно отправлять все через ajax, то formdata js в помощь
~JS
var formData = new FormData();
formData.append('file', fileInput.files[0]);
$.ajax({
url: 'upload.php',
method: 'POST',
data: formData,
contentType: false,
processData: false,
success: function(response) {
console.log('File uploaded successfully');
},
error: function(jqXHR, textStatus, errorMessage) {
console.log('File upload failed: ' + errorMessage);
}
});
~PHP
require_once '/public_html/vendor/autoload.php';
$ffmpeg = FFMpeg\FFMpeg::create();
$mp3Format = new FFMpeg\Format\Audio\Mp3();
$videoFolderPath='/public_html';
if(!isset($_FILES['file'])) {
return 'no file';
}
$tempName = $_FILES['file']['tmp_name'];
$audioObj = $ffmpeg->open($tempName);
$audioObj->save($mp3Format, $videoFolderPath.'/myfile.mp3');