失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > php音频转换接口 php如何实现音频格式转换

php音频转换接口 php如何实现音频格式转换

时间:2022-09-03 03:52:12

相关推荐

php音频转换接口 php如何实现音频格式转换

php音频格式转换的实现方法:首先把ffmpeg放在phpStudy的WWW目录下;然后把ffmpeg下的bin目录添加到windows的环境变量中;最后通过ffmpeg转换音频格式即可。

推荐:《PHP视频教程》

windows+php+ffmpeg转换音频格式

近几天在做一个语音识别搜索功能的时候遇到了一个问题 ,发个文章记录一下,萌新第一次发博客,有不对的地方请各位大佬们多多指正!

前端用的微信的sdk生成的录音,然后用阿里的一句话识别转成文字,这里遇到的坑就是阿里不支持微信返回的音频格式,所以这里需要处理一下格式,经过了一顿百度,决定使用ffmpeg进行音频的转换

首先要下载ffmpg工具 [下载地址](/)

我为了方便调试我把ffmpeg放在phpStudy的WWW目录下了 如图:

其中ffmpeg.php是我自己写的,代码贴在下面

之后把ffmpeg下的bin 目录添加到windows的环境变量,具体操作这里就不说了,学过java的都清楚,如记不清了可百度一下

话不多说,直接上代码.<?php

/**

* @api音频文件格式转换-将silk转为wav

* @author wyp

*/

header("content-type:text/html;charset=utf-8");

date_default_timezone_set('Asia/Shanghai');

define('BASE_PATH', str_replace('\', '/', realpath(dirname(__FILE__) . '/')) . "/");

//域名

$domain = $_SERVER['SERVER_NAME'];

/**

* 由于每次访问时会将音频文件上传到服务器上,所以我这里先把之前上传到服务器的音频删除

*/

$dir = scandir('./');

foreach ($dir as $key => $value) {

if (substr($value, -4) == '.wav') {

if ($value == $_GET['filepath']) {

continue;

}

$filemtime = fileatime($value);

if (time() - $filemtime > 10) {

unlink($value);

}

}

}

//接收文件

if (!isset($_GET['filepath'])) {

echo json_encode([

'code' => 400,

'info' => '文件路径为空',

]);

exit;

}

$filepath = $_GET['filepath'];

$in_time = date('Y-m-d-h-i-s', time());

@$copy = copy($filepath, './in_' . $in_time . ".silk");//这里将文件下载到本地服务器

if (!$copy) {

echo json_encode([

'code' => 400,

'info' => '请检查文件路径',

]);

exit;

}

$filepath = "in_" . $in_time . ".silk";

//输出文件名

$rank = "rec";

for ($i = 1; $i < 9; $i++) {

$rank .= rand(0, 9);

}

$outfile = $rank . "-" . date('Y-m-d-h-i-s', time()) . ".wav";

//绝对地址(D://phpstudy/www/...)

$base = BASE_PATH;

//要执行的cmd命令

$cmd = "ffmpeg -i $base" . "$filepath " . "$base$outfile";

//执行cmd命令

exec($cmd);

//删除接收到的文件

unlink('./in_' . $in_time . ".silk");

//返回结果

echo json_encode([

'code' => 200,

'cmd' => $cmd,//执行的cmd

'outfile' => "$domain/ffmpeg/bin/$outfile"//文件路径

]);

?>

如果觉得《php音频转换接口 php如何实现音频格式转换》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。