2013-04-30 4 views
2

У меня есть один файл midi, и я хочу воспроизвести этот файл на веб-странице, в настоящее время я использую плеер midi.js для игры, но он не работает в мобильных браузерах.Convert midi to mp3

Пожалуйста, руководство меня, как играть в файл, или же, как я могу играть миди или конвертировать его в mp3

Вот мой код

$data = fopen ($midi, 'rb'); 
$size= filesize($midi); 
$contents = fread ($data, $size); 
fclose($data); 
$encoded= base64_encode($contents); 

$encode = "'data:audio/midi;base64,".$encoded."=='"; 

и, наконец, передавая значение base64 в midi.js

ответ

-2

Audacity - аудио конвертер с открытым исходным кодом.

+0

Audacity не обрабатывает MIDI-файлы. – cleong

+0

Их Wiki говорит, что они ... http://wiki.audacityteam.org/wiki/Midi – Frank

+0

Я не могу найти какой-либо код на смелость ... вы можете мне помочь – chitranjna

1

Гадание вы на Linux машине ... Самый простой способ играть с робостью и трубой выходного FFmpeg:

timidity song.mid -Ow -o - | ffmpeg -i - -acodec libmp3lame -ab 64k song.mp3 
+0

сейчас phreaknerd я хочу играть на этой мелодии на веб-странице – chitranjna

+0

Вы просили конвертировать mp3 прямо сейчас? Вы должны преобразовать это локально в mp3, если у вас нет доступа root/admin к серверу. Alternativley вы могли бы сделать это, как предложено [здесь] (http://stackoverflow.com/questions/7677366/about-embed-midi-files-on-a-webpage) – phreaknerd

+0

Я использовал этот код для игры midi, но не работал chitranjna

1

я столкнулся аналогичный вопрос с MIDI.js не работает в мобильном браузере. Оказалось, что я включил файлы ogg, но мне не хватало mp3 (по какой-то причине MIDI.js предоставляет только версии ogg synth_drum).

Файлы инструментов для всех 128 общих MIDI-звуков вы найдете по адресу https://github.com/gleitz/midi-js-soundfonts.

0

Если вы используете Linux, используйте avconv вместо FFmpeg, потому что FFmpeg является устаревшим:

timidity input.midi -Ow -o - | avconv -i - -acodec libmp3lame -b 64k output.mp3 

Или хромой:

timidity -Ow -o - input.midi | lame - output.mp3