读取二进制数据并将其转换为.wav或mp3音频文件

时间:2010-12-14 09:52:11

标签: php

我正在开发一个Web应用程序,我必须从数据库库中读取二进制文件,实际上这是以表格或二进制形式保存的音频。如何将这个二进制文件转换为wav或mp3文件

2 个答案:

答案 0 :(得分:2)

如果你没有触摸二进制数据并且它仍然是原始的二进制wav / mp3格式,那么你拥有音频文件。只需将其写入文件即可使其成为实际文件:

file_put_contents('sound.wav', $binaryData);

答案 1 :(得分:0)

您不需要“转换”它,但如果您想允许用户下载mp3或wav文件,则需要设置正确的标题。

您可以使用以下代码设置mp3下载的标题。

header('Expires: Sat, 26 Jul 1997 05:00:00 GMT');
header('Last-Modified: ' . gmdate( 'D, d M Y H:i:s' ) . ' GMT');
header('Cache-Control: no-store, no-cache, must-revalidate');
header('Cache-Control: post-check=0, pre-check=0', false);
header('Pragma: no-cache'); 
header("Content-Type: audio/mpeg");
header("Content-Length: " . $len);

注意,您需要知道mp3数据的长度。

有关设置标题的详细信息,请参阅http://php.net/manual/en/function.header.php