Home >Backend Development >PHP Tutorial >使用七牛将amr格式的录音转成mp3格式后,提示文件已经损坏
<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左右,是微信录音
你的问题解决了吗?我也遇到这样的问题 求帮忙