|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
12.10.2008, 22:21 | #1 |
Форумчанин
Регистрация: 24.03.2007
Сообщений: 314
|
звук в файл *.midi
У меня при нажатии на кнопку проигрывается звук.. Как этот звук записать в файл?
|
12.10.2008, 22:24 | #2 |
*
Старожил
Регистрация: 22.11.2006
Сообщений: 9,201
|
А у меня в квартире газ...
Что за кнопка? |
12.10.2008, 22:26 | #3 |
Форумчанин
Регистрация: 24.03.2007
Сообщений: 314
|
ну на самом деле не кнопка, а просто Shape, который реагирует Click.
|
12.10.2008, 23:11 | #4 |
Телепат с дипломом
Старожил
Регистрация: 10.06.2007
Сообщений: 4,929
|
звук откуда проигрывается?
The future is not a tablet with a 9" screen no more than the future was a 9" black & white screen in a box. It’s the paradigm that survives. (Kroc Camen)
Проверь себя! Онлайн тестирование | Мой блог |
14.10.2008, 01:53 | #5 |
Форумчанин
Регистрация: 24.03.2007
Сообщений: 314
|
))))
procedure TForm1.ShB4MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin midiOutShortMsg (hmidi, $5390+((vel) * $10000)); end; procedure TForm1.ShB4MouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin midiOutShortMsg(hmidi,$5380) end; вот так проигрывается... vel - это переменная для регулирования громкости |
15.10.2008, 18:56 | #6 |
Телепат с дипломом
Старожил
Регистрация: 10.06.2007
Сообщений: 4,929
|
Ну тут есть несколько путей.
Первый - посмотреть в MMSystem, может там есть реализация сохранения в файл. Второй - воспользоваться сторонним компонентом, библиотекой. Третий - вручную, самый трудный, изучить структуру MIDI формата и побайтово записывать файл, по сути свой движок сохранения в миди написать. Ну и четвертый - прокрутить эту страницу до конца и посмотреть в похожих темах )
The future is not a tablet with a 9" screen no more than the future was a 9" black & white screen in a box. It’s the paradigm that survives. (Kroc Camen)
Проверь себя! Онлайн тестирование | Мой блог |
19.10.2008, 14:30 | #7 |
Форумчанин
Регистрация: 24.03.2007
Сообщений: 314
|
пытаюсь я сделать запись через функции mmsystem... не могли бы вы мне помочь с некоторыми вопросами, пожалуйста.
1. idfile:=mmioOpen('myfile.mid', 0, MMIO_CREATE); - вот так работает, файл создает, но как указать несколько флагов? idfile:=mmioOpen('myfile.mid', 0, MMIO_CREATE|MMIO_READWRITE); - вот так не работает, пишет, что неразрешенный символ "|". 2. Как я понимаю запись в файл осуществляется с помощью функции mmioWrite(HMMIO hmmio, HPSTR hpBuff, LONG dwBytes); HPSTR hpBuff - указатель на буфер с данными. Откуда этот буфер брать? Заранее спасибо |
19.10.2008, 14:30 | #8 |
Форумчанин
Регистрация: 24.03.2007
Сообщений: 314
|
пытаюсь я сделать запись через функции mmsystem... не могли бы вы мне помочь с некоторыми вопросами, пожалуйста.
1. idfile:=mmioOpen('myfile.mid', 0, MMIO_CREATE); - вот так работает, файл создает, но как указать несколько флагов? idfile:=mmioOpen('myfile.mid', 0, MMIO_CREATE|MMIO_READWRITE); - вот так не работает, пишет, что неразрешенный символ "|". 2. Как я понимаю запись в файл осуществляется с помощью функции mmioWrite(HMMIO hmmio, HPSTR hpBuff, LONG dwBytes); HPSTR hpBuff - указатель на буфер с данными. Откуда этот буфер брать? Заранее спасибо |
22.12.2010, 20:04 | #9 |
Пользователь
Регистрация: 21.06.2010
Сообщений: 49
|
1. Символ "|" - это сишный "or", пиши "or" вместо него.
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Структура midi файлов | lacost | Мультимедиа в Delphi | 6 | 21.08.2011 21:49 |
Циклическое проигрывание midi-файла без разрывов в звучании | LordYuri | Мультимедиа в Delphi | 2 | 23.04.2008 18:09 |
MIDI | Shurik Hacker | Компоненты Delphi | 1 | 21.01.2008 13:54 |
звук и делфи, левый правый звук | snusmumric | Win Api | 2 | 29.10.2007 11:10 |
Воспроизведение Midi-нот | desperado | Общие вопросы Delphi | 2 | 26.06.2007 13:22 |