ffmpeg使用php变量将wav转换为mp3

时间:2016-01-17 08:18:25

标签: php audio ffmpeg

我正在使用php函数上传.wav并在同一个文件夹中创建它的.mp3版本。到目前为止,除了我尝试使用时,一切都正常工作:

 shell_exec('ffmpeg -i ' . $file_path . '-f mp2 ' . $mp3name); 

在函数中它没有在beats文件夹中创建.mp3。

我试过

shell_exec('ffmpeg -i test.wav -f mp2 test.mp3'); 

本身就很有效。

php功能:

function upload_a_sound($user_id, $file_temp, $file_extn, $name, $uploader, $keywords) {
    $timecode = substr(md5(time()), 0, 10);
    $mp3name = 'beats/' . $timecode . '.mp3';
    $file_path = 'beats/' . $timecode . '.' . $file_extn;
    //$date = date('m-d-Y');
    move_uploaded_file($file_temp, $file_path);
    shell_exec('ffmpeg -i ' . $file_path . '-f mp2 ' . $mp3name); 
    require ('classAudioFile.php');
    $AF = new AudioFile;
    $AF->loadFile($file_path);
    $AF->visual_width=200;
    $AF->visual_height=200;
    $AF->visual_graph_color="#c491db";
    $AF->visual_background_color="#000000";
    $AF->visual_grid=false;
    $AF->visual_border=false;
    $AF->visual_graph_mode=0;
    $AF->getVisualization ('images/song/' . $timecode . '.png');
    $imageloc = 'images/song/' . $timecode . '.png';
    mysql_query("INSERT INTO `content` VALUES ('', '', '$name', '$uploader', '$keywords', '$file_path', '$imageloc', '$mp3name')");

}

1 个答案:

答案 0 :(得分:1)

这是代码的工作版本,我相信这是一个语法,我不得不把'after $ mp3name shell执行

close!