use*_*626 7 php audio converter
我在localhost中使用windows 7和xampp.我想通过php脚本将mp3音频转换为ogg音频.我下载了'ffmpegConverter_v0.2'zip文件,其中文件夹结构是:
ffmpegConverter_v0.2
--consoleConversor
--consoleConversor
--consoleConversor.exe
--ffmpeg.dll
--consoleMonitor
--consoleMonitor
--consoleMonitor.exe
--ffmpeg.dll
--Queue.xml
--serviceConversor
--ffmpeg.dll
--serviceConversor
--serviceConversor.exe
--serviceMonitor
--ffmpeg.dll
--Queue.xml
--serviceMonitor
--serviceMonitor.exe
--LEEME.txt
--README.txt
Run Code Online (Sandbox Code Playgroud)
我将'ffmpegConverter_v0.2'文件夹,mp.php和'a.mp3'保存在同一文件夹中,并在mp.php中使用以下代码:
<?php
exec("ffmpegConverter_v0.2\serviceConversor\serviceConversor.exe -i a.mp3 -acodec libvorbis ap.ogg");
?>
Run Code Online (Sandbox Code Playgroud)
然后收到以下错误消息:

我做错了什么?什么是安装ffmpeg的确切方法?在php脚本中编写命令的确切方法是什么?如何在在线服务器中使用?还有其他更好的转换器吗?
-谢谢.
编辑:
当我使用以下行时
<?php
exec("ffmpegConverter_v0.2\consoleConversor\consoleConversor.exe -i a.mp3 -acodec libvorbis ap.ogg");
?>
Run Code Online (Sandbox Code Playgroud)
然后我收到了这条消息

我也试过这个:
<?php
exec("c:\Windows\Microsoft.NET\Framework\v2.0.50727\InstallUtil.exe serviceConversor.exe");
exec("ffmpegConverter_v0.2\serviceConversor\serviceConversor.exe -i a.mp3 -vcodec libtheora -acodec libvorbis ap.ogg");
?>
Run Code Online (Sandbox Code Playgroud)
然后得到了与第一张照片相同的信息.
忘记那serviceConversor件事吧。
获取适用于 Windows 的 FFmpeg 构建(与您的体系结构相匹配的静态构建应该是避免其他 DLL/等问题的良好开端)。
然后使用exec:
<?php
$retCode = exec('C:\\path\\to\\ffmpeg.exe -y -i file.mp3 -acodec libvorbis file.ogg');
?>
Run Code Online (Sandbox Code Playgroud)
不要忘记转义反斜杠 ( \\);你的问题中没有。
exec会返回FFmpeg的返回码(我放在$retCode这里),0表示成功。
正如一些人指出的,您可以添加-aq选项来设置 VBR 转码的 OGG 输出质量。
libvorbis 内置于静态 FFmpeg 版本;我刚刚检查使用ffmpeg.exe -codecs:
DEA.L. vorbis Vorbis (decoders: vorbis libvorbis )
Run Code Online (Sandbox Code Playgroud)
其中 DE 表示该编解码器支持解码和编码。
| 归档时间: |
|
| 查看次数: |
5752 次 |
| 最近记录: |