You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
43 lines
1.4 KiB
PHP
43 lines
1.4 KiB
PHP
<?php
|
|
|
|
ini_set('display_startup_errors', 1);
|
|
ini_set('display_errors', 1);
|
|
error_reporting(-1);
|
|
|
|
ini_set("display_errors", "On");
|
|
// requires php5
|
|
define('UPLOAD_DIR', '../uploads/5/');
|
|
define('DISTORT_DIR', 'python-audio-effects/');
|
|
$img = $_POST['base64'];
|
|
$img = str_replace('data:audio/mp3;base64,', '', $img);
|
|
$img = str_replace(' ', '+', $img);
|
|
$data = base64_decode($img);
|
|
#$file = UPLOAD_DIR . uniqid() . '.mp3';
|
|
$file = UPLOAD_DIR . $_POST['name'] . '_'.$_POST['type'] .'.mp3';
|
|
// $file = DISTORT_DIR . $_POST['name'] . '_'.$_POST['type'] .'.mp3';
|
|
$success = file_put_contents($file, $data);
|
|
$wavfile = $file.'.wav';
|
|
$distortedfile = $wavfile.'.wav';
|
|
|
|
// $command = escapeshellcmd('/home/lain/virtualenvs/radioactive/bin/python3 python-audio-effects/echo.py '.$file);
|
|
// $output = shell_exec($command);
|
|
// echo $output;
|
|
|
|
// if type=echo "string";
|
|
shell_exec('ffmpeg -i "'.$file.'" "'.$wavfile.'"');
|
|
|
|
|
|
$command = '/home/lain/virtualenvs/radioactive/bin/python3 python-audio-effects/echo.py "'.$wavfile.'" "'.$distortedfile.'"';
|
|
$output=shell_exec($command);
|
|
print $output;
|
|
|
|
|
|
|
|
# make a database of recordings
|
|
$item=array('name'=>$_POST['name'],'type'=>$_POST['type'],'date'=>date("d/m/Y"), 'file'=>$distortedfile);
|
|
$handle=fopen('../uploads/5/index.jsons','a');
|
|
fwrite($handle,json_encode($item)."\n");
|
|
fclose($handle);
|
|
print $success ? $distortedfile : 'Unable to save the file.';
|
|
?>
|