| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C++ Builder > TMediaPlayer не проигрывает аудио файлы( |
| Автор: Superklug 1.3.2008, 18:55 | ||||||
| Здравствуйте! К меня появилась необходимость воспроизводить mp3 файлы. Решил использовать компонент TMediaPlayer. Кинул его на форму, сделал прозрачным. В OnCreate формы присвоил параметру FileName адрес нужного звука. Файл должен был проигрываться при выполнении определенных условий, которые я проверяю по таймеру. Т.о. у меня есть две функции:
и обработка события OnTimer:
Остановка сигнала должна происходить по клику мышкой на форме, поэтому писал так:
По непонятным мне причинам воспроизведение файла не происходит! Самое интересное, что если расположить на форме две кнопки и в обработчики событий OnClick вставить функции StartSignal и StopSignal, все прекрасно работает... Пожалуйста объясните в чем дело? Может я не правильно использую MediaPlayer? P.S. Если кто-то знает более разумный способ воспроизведения mp3, напишите. Буду очень рад. |
| Автор: Sharkfire 1.3.2008, 20:44 |
| Пробвал делать отладку чтобы проверить как оно ваще работает? |
| Автор: Craft 1.3.2008, 21:45 |
| Я б тебе не советовал вызивать свою функцыю из таймера. Просто он вызивается каждую секунду и может я думаю это и визывает что у тебя не проигрывается mp3. Что тебе мешает сделать кнопки для воспроизведения и нормально их оформить? |
| Автор: THandle 2.3.2008, 23:34 | ||
| Superklug, как понять не происходит проигрывание файла? MediaPlayer->Open делаешь? Извиняюсь, что на Делфи, но Билдера просто под рукой нет.
Отлично работает. Файл воспроизводится. |
| Автор: Craft 2.3.2008, 23:47 |
| Посмотри http://www.delphirus.com/modules.php?name=News&new_topic=6 Может этот вариант подойдет. Но здесь тоже с использованием MediaPlayer. Можеш попробовать через PlaySound(). В противном случае если тебя не устраивает MediaPlayer то можеш воспроизводить mp3 через DirectSound. Вариантов много. |
| Автор: Superklug 3.3.2008, 17:25 |
Я еще больше запутался... В вашем примере все работает. У меня практически тоже самое( Попробую найти ошибку. |
| Автор: Superklug 3.3.2008, 17:42 |
| Ребята, спосибо всем за помощь! Оказывается я сам намудрил) Забыл в потоке Synchronize прописать))) Теперь наконец-то все работает! |