我希望能够动态地将音频文件转换为MP3到用户浏览器。我使用的软件是:Apache,PHP&在ubuntu系统上的FFMPEG。这是我到目前为止的代码:
<?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播放器)。
有什么想法吗?
答案 0 :(得分:2)
我找到了答案。您必须计算输出流大小并输出以下标头(在音频流输出之前):
header("Content-Length: {$calculatedFileSize}");