麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁(yè) > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

微信錄音amr音頻文件轉(zhuǎn)mp3格式

2019-11-10 19:37:13
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

直到現(xiàn)在,仍然不存在一項(xiàng)旨在網(wǎng)頁(yè)上播放音頻的標(biāo)準(zhǔn)。HTML5 規(guī)定了一種通過(guò) audio 元素來(lái)包含音頻的標(biāo)準(zhǔn)方法。audio 元素能夠播放聲音文件或者音頻流。當(dāng)前,audio 元素支持三種音頻格式:MP3 ,Wav ,Ogg Vorbis。

微信錄音的音頻為amr格式,不支持網(wǎng)頁(yè)播放,且上傳語(yǔ)音有效期3天,可用微信多媒體接口下載語(yǔ)音到自己的服務(wù)器,然后轉(zhuǎn)碼轉(zhuǎn)成MP3格式,途徑有兩種:

一.在服務(wù)器上搭建ffmpeg

很多項(xiàng)目不一定放在自己服務(wù)器上,而且很多碼農(nóng)并不熟悉服務(wù)器方面的配置,所以沒(méi)辦法去搭建ffmpeg,但是對(duì)于網(wǎng)絡(luò)接口的調(diào)用并不陌生,所以我著重講一下使用七牛php框架將微信 amr音頻轉(zhuǎn)mp3。

二.使用七牛云存儲(chǔ)框架轉(zhuǎn)碼存儲(chǔ)

(1)下載七牛SDK,下載地址:https://developer.qiniu.com/sdk

(2)將下載的整個(gè)SDK包解壓之后放入項(xiàng)目中

(3)引入入口文件,并寫好相應(yīng)要使用的模塊命名空間

require_once 'qiniusdk/autoload.php'; use Qiniu/Auth; use Qiniu/Storage/UploadManager; use Qiniu/Storage/BucketManager; (4)將微信錄音amr文件下載到本地(自己的服務(wù)器)

PRivate function savemedia($serverid){ $token = $this->_token; //微信請(qǐng)求素材的Token $mediaid = $serverid; //語(yǔ)音素材的mediaid $url = 'http://file.api.weixin.QQ.com/cgi-bin/media/get?access_token='.$token.'&media_id='.$mediaid; $content = ihttp_get($url); //get請(qǐng)求 if (!is_error($content)){ $prefix = explode("/", $content['headers']["Content-Type"]); $filename = $mediaid.".".$prefix[1]; $dateStr = date('Y-m-d',time()); $currdir = "/upload/".$dateStr.'/'; $dir = getcwd().$currdir; if (!is_dir($dir)){ //創(chuàng)建保存文件的目錄 mkdir(iconv("UTF-8", "GBK", $dir),0777,true); } $currfile = $currdir.$filename; $path = getcwd().$currfile; if(file_exists($path)){ unlink($path); //如果文件已經(jīng)存在則刪除已有的 } $fp = fopen($path, 'w'); $state=fwrite($fp, $content['content']); //寫入數(shù)據(jù) fclose($fp); } }(5)將本地amr音頻文件上傳至七牛云并轉(zhuǎn)碼生成MP3文件

private function upchange($filePath,$mediaid){ $accessKey = trim($reply['accessKey']); //七牛公鑰 $secretKey = trim($reply['secretKey']); //七牛私鑰 $auth = new Auth($accessKey, $secretKey); $bucket = trim($reply['bucket']); //數(shù)據(jù)處理隊(duì)列名稱,不設(shè)置代表不使用私有隊(duì)列,使用公有隊(duì)列。 $pipeline = trim($reply['pipeline']); //通過(guò)添加'|saveas'參數(shù),指定處理后的文件保存的bucket和key //不指定默認(rèn)保存在當(dāng)前空間,bucket為目標(biāo)空間,后一個(gè)參數(shù)為轉(zhuǎn)碼之后文件名 $savekey = Qiniu/base64_urlSafeEncode($bucket.':'.$mediaid.'.mp3'); //設(shè)置轉(zhuǎn)碼參數(shù) $fops = "avthumb/mp3/ab/320k/ar/44100/acodec/libmp3lame"; $fops = $fops.'|saveas/'.$savekey; if(!empty($pipeline)){ //使用私有隊(duì)列 $policy = array( 'persistentOps' => $fops, 'persistentPipeline' => $pipeline ); }else{ //使用公有隊(duì)列 $policy = array( 'persistentOps' => $fops ); } //指定上傳轉(zhuǎn)碼命令 $uptoken = $auth->uploadToken($bucket, null, 3600, $policy); $key = $mediaid.'.amr'; //七牛云中保存的amr文件名 $uploadMgr = new UploadManager(); //上傳文件并轉(zhuǎn)碼$filePath為本地文件路徑 list($ret, $err) = $uploadMgr->putFile($uptoken, $key, $filePath); if ($err !== null) { return false; }else { //此時(shí)七牛云中同一段音頻文件有amr和MP3兩個(gè)格式的兩個(gè)文件同時(shí)存在 $bucketMgr = new BucketManager($auth); //為節(jié)省空間,刪除amr格式文件 $bucketMgr->delete($bucket, $key); return $ret['key']; } }

此時(shí)七牛云空間就已經(jīng)有了保存的MP3文件了。


發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 精品一区二区三区欧美 | 久久人人爽人人爽人人片av高清 | 亚洲一级网站 | 欧美一级视屏 | av免费不卡国产观看 | 99在线免费观看视频 | 热re91久久精品国产99热 | 成人福利在线免费观看 | 中文字幕亚洲欧美 | 性毛片视频 | aaaaa国产欧美一区二区 | 国产精品视频不卡 | 成人免费一区二区三区在线观看 | 热久久成人| 欧美日韩在线播放一区 | 毛片a片| 999久久国产| 午夜精品在线视频 | 国产在线欧美日韩 | 夜间福利视频 | 日本中文字幕网址 | 国产日韩在线观看一区 | 久久久久国产一区二区三区不卡 | 日夜操天天干 | 本站只有精品 | 精品一区二区久久久久久按摩 | 精品一区二区三区电影 | 视频h在线| 欧美18—19sex性hd | 毛片中文字幕 | 鲁人人人鲁人人鲁精品 | 伊人一二三四区 | av在线日韩 | 一级电影免费看 | chengrenyingshi | 精品一区二区三区在线观看国产 | 久久久久久久爱 | 250pp久久新 黄色网址免费在线播放 | 国产午夜精品久久久久婷 | www.99久久久 | 欧美日韩亚洲国产精品 |