crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

> Простой beep (звук) под Linux, QApplication::beep(), QSound, Phonon...
512es
  опции профиля:
сообщение 14.9.2010, 13:36
Сообщение #1


Участник
**

Группа: Участник
Сообщений: 135
Регистрация: 31.10.2008
Пользователь №: 407

Спасибо сказали: 5 раз(а)




Репутация:   0  


Народ, подскажите пожалуйста, как на Qt под линукс надёжнее всего и быстрее играть звуки?

Требования очень простые. Чтобы проигрывался писк (beep). Можно из динамика, можно из колонок, всё равно. Главное чтобы работало это на винде и линуксе без бубна.

QApplication::beep() работает хорошо на винде, а на линуксе не знаю чего ему не хватает.
QSound так и не завёлся. Да и желания ставить NAS что то нет..
Phonon - работает. Но это стрельба из пушки по воробьям.. Не айс как то..

Ось Gentoo.
Вот даже не знаю, ковырять снова beep() или QSound...
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
512es
  опции профиля:
сообщение 15.9.2010, 0:54
Сообщение #2


Участник
**

Группа: Участник
Сообщений: 135
Регистрация: 31.10.2008
Пользователь №: 407

Спасибо сказали: 5 раз(а)




Репутация:   0  


Спасибо всем за ответы и поддержку))
Поделюсь полученным плеером. Мне не жалко))

void MainWindow::clicker()
{
#ifdef Q_OS_WIN32
    QApplication::beep();
#else
    QProcess player;
    QFile snd(":/sound/blip2.wav");
    if (!snd.open(QIODevice::ReadOnly)) return;
    player.start("aplay -q");
    if (player.write(snd.readAll()) == -1) return;
    player.closeWriteChannel();
    snd.close();
    if (!player.waitForFinished(5000)) player.kill();
#endif
}


Звук играется прямо из ресурсов.
Если за 5 секунд плеер не завершился мы его убиваем.
На винде используем стандартный бип.

Работает быстро, надёжно и универсально!) Задача решена!
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
grio
  опции профиля:
сообщение 2.7.2011, 19:53
Сообщение #3


Студент
*

Группа: Участник
Сообщений: 87
Регистрация: 11.11.2009
Пользователь №: 1221

Спасибо сказали: 6 раз(а)




Репутация:   0  


Цитата(512es @ 15.9.2010, 1:54) *
Работает быстро, надёжно и универсально!) Задача решена!


Спасибо за альтернативное решение.
Сам я пользуюсь Фононом. Прекрасно работает и в Линуксе и под Виндой.

#include <phonon/MediaObject>
..

YoMain::YoMain(QWidget *parent)
{
..
    audioOutput = new Phonon::AudioOutput(Phonon::NotificationCategory);
}

void YoMain::MetronomeTick()
{
..
    metronomeSound->setCurrentSource (Phonon::MediaSource ("./click.wav"));
    metronomeSound->play ();
..
}


Рабочий пример здесь
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме
- 512es   Простой beep (звук) под Linux   14.9.2010, 13:36
- - kwisp   Цитата(512es @ 14.9.2010, 14:36) Ось Gent...   14.9.2010, 13:51
|- - 512es   Цитата(kwisp @ 14.9.2010, 13:51) :) не мо...   14.9.2010, 13:58
- - kwisp   Цитата(512es @ 14.9.2010, 14:58) Ядро 2.6...   14.9.2010, 14:06
- - maint   я в федоре плюнул и вывожу звук через SDL_sound в ...   14.9.2010, 14:12
|- - 512es   Цитата(kwisp @ 14.9.2010, 15:06) grep -i ...   14.9.2010, 14:17
- - kwisp   512es, вообще конечно на линуксе. вопросов со зву...   14.9.2010, 14:14
- - kwisp   Цитата(512es @ 14.9.2010, 15:17) у меня т...   14.9.2010, 14:19
|- - 512es   Цитата(kwisp @ 14.9.2010, 15:19) какие ис...   14.9.2010, 14:26
- - kuzulis   А напрямую писать в линухе в регистры таймера (как...   14.9.2010, 14:26
- - kwisp   а с этим что?   14.9.2010, 14:48
|- - 512es   Цитата(kwisp @ 14.9.2010, 15:48) а с этим...   14.9.2010, 15:47
- - kwisp   512es, миксера аудио какой? когда бипаешь другие ...   14.9.2010, 16:29
|- - 512es   Цитата(kwisp @ 14.9.2010, 17:29) 512es, ...   14.9.2010, 16:39
- - kwisp   давай права смотреть на утилиту beep ls -l /usr/bi...   14.9.2010, 17:02
|- - 512es   Цитата(kwisp @ 14.9.2010, 18:02) давай пр...   14.9.2010, 23:23
- - 512es   Итак, я кажется нашёл отличное решение этой пробле...   15.9.2010, 0:10
- - 512es   Спасибо всем за ответы и поддержку)) Поделюсь полу...   15.9.2010, 0:54
|- - grio   Цитата(512es @ 15.9.2010, 1:54) Работает ...   2.7.2011, 19:53
- - molchanoviv   А если у пользователя нет ALSA? Вдруг OSS стоит, и...   15.9.2010, 7:51
|- - 512es   Цитата(molchanoviv @ 15.9.2010, 8:51) А е...   15.9.2010, 13:39
- - Mimokrokodil   Ребята, вы точно извращенцы. Linux: echo -e ...   19.10.2012, 8:41
- - Алексей1153   Mimokrokodil, ответ: кроссплатформа. См. сообщение...   19.10.2012, 8:49
- - Iron Bug   Цитата(Mimokrokodil @ 19.10.2012, 11:41) ...   19.10.2012, 15:05
- - Litkevich Yuriy   да он что-то вообще мимо темы.   19.10.2012, 21:41


Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 23.4.2024, 12:50