Как конвертировать аудио файлы (на лету) в браузер?

StackOverflow https://stackoverflow.com/questions/1608571

Вопрос

Я хотел бы иметь возможность конвертировать аудио файлы в MP3 в браузер пользователей на лету. Программное обеспечение, которое я использую: Apache, PHP & amp; FFMPEG в системе Ubuntu. Вот код, который у меня есть до сих пор:

<?php
     header("Content-Transfer-Encoding: binary");
     header("Content-Type: audio/mpeg, audio/x-mpeg, audio/x-mpeg-3, audio/mpeg3");

     passthru('ffmpeg -i song.flac -v 0 -ab 320k -f mp3 -');
?>

При использовании этого кода только первые несколько секунд звука преобразуются, однако, когда я закомментирую функции заголовка, аудиофайл полностью преобразуется, но все двоичные данные передаются на экран (а не помещаются в браузеры mp3-плеер).

Есть мысли?

Это было полезно?

Решение

Ну, я нашел ответ. Вы должны рассчитать размер выходного потока и вывести следующий заголовок (до вывода аудиопотока):

header("Content-Length: {$calculatedFileSize}"); 
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top