首頁 >後端開發 >php教程 >使用七牛将amr格式的录音转成mp3格式后,提示文件已经损坏

使用七牛将amr格式的录音转成mp3格式后,提示文件已经损坏

WBOY
WBOY原創
2016-06-06 20:27:312207瀏覽

<code>刚开始用七牛,把一个amr音频转mp3,用的是php的sdk。这段程序执行完后bucket里面是有生成了
999.mp3,但是下载到本地用jplayer放,提示无法解码。用firefox浏览器直接打开,提示文件已
损坏。请教高手。

摘选了一段主要的代码是这样的:
</code>
<code>$auth = new Auth($accessKey, $secretKey);
// 要上传的空间
$bucket = 'mp3url';
//执行的格式转换
$pfopOps = "avthumb/mp3/ab/64k/ar/22050"; 

$policy = array(
    'persistentOps' => $pfopOps,
    'persistentNotifyUrl' => 'http://',
);
// 生成上传 Token
$token = $auth->uploadToken($bucket);
// 要上传文件的本地路径
$filePath = './20150504121658533.amr';
// 上传到七牛后保存的文件名
$key = '999.mp3';
// 初始化 UploadManager 对象并进行文件的上传。
$uploadMgr = new UploadManager();
list($ret, $err) = $uploadMgr->putFile($token, $key, $filePath);
echo "\n====> putFile result: \n";
if ($err !== null) {
    var_dump($err);
} else {
    var_dump($ret);
}</code>

回复内容:

<code>刚开始用七牛,把一个amr音频转mp3,用的是php的sdk。这段程序执行完后bucket里面是有生成了
999.mp3,但是下载到本地用jplayer放,提示无法解码。用firefox浏览器直接打开,提示文件已
损坏。请教高手。

摘选了一段主要的代码是这样的:
</code>
<code>$auth = new Auth($accessKey, $secretKey);
// 要上传的空间
$bucket = 'mp3url';
//执行的格式转换
$pfopOps = "avthumb/mp3/ab/64k/ar/22050"; 

$policy = array(
    'persistentOps' => $pfopOps,
    'persistentNotifyUrl' => 'http://',
);
// 生成上传 Token
$token = $auth->uploadToken($bucket);
// 要上传文件的本地路径
$filePath = './20150504121658533.amr';
// 上传到七牛后保存的文件名
$key = '999.mp3';
// 初始化 UploadManager 对象并进行文件的上传。
$uploadMgr = new UploadManager();
list($ret, $err) = $uploadMgr->putFile($token, $key, $filePath);
echo "\n====> putFile result: \n";
if ($err !== null) {
    var_dump($err);
} else {
    var_dump($ret);
}</code>

补充下,我的amr文件大概5kb左右,是微信录音

你的问题解决了吗?我也遇到这样的问题 求帮忙

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn