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

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

WBOY
WBOYOriginal
2016-06-06 20:27:312199browse

<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左右,是微信录音

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

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn