Название: Phonon + очередь Отправлено: bez_glaz от Август 01, 2012, 11:11 Добрый день.
Собственно есть проект, где по определённому событию должны воспроизводиться звуки, но в большом проекте косяк - воспроизводиться только одна аудиозапись, далее на события от колонок нет реакции. Решил накидать простенькую прогу дабы прощупать Phonon. Код: MainWindow::MainWindow(QWidget *parent) : И получается следущая картина маслом. При загрузке программы в лейбле вижу "0" - "LoadingState". При нажатии кнопки лейбл показывает "PlayingState" - звук воспроизводиться. Жду пока закончится дорожка, лейбл показывает "PausedState". Жму ещё раз кнопку - аналогичная ситуация. Всё отрабатывается идеально. Но... Если я жму кнопку когда дорожка ещё не закончила вопроизведение - ничего не происходит, очередь не изменяется. Могу добиться повторного вопроизведения только после окончания дорожки и повторного нажатии клавиши. В чём косяк ? И ещё если я изменяю Код: ... Название: Re: Phonon + очередь Отправлено: Bepec от Август 01, 2012, 12:00 Попробуй между pause и play поставить qApp->processEvents();
Название: Re: Phonon + очередь Отправлено: bez_glaz от Август 01, 2012, 12:12 Попробуй между pause и play поставить qApp->processEvents(); спс помогло, а в кратце можно пояснить что сие есть ?И остался открытым вопрос с очередью!!?? Название: Re: Phonon + очередь Отправлено: Bepec от Август 01, 2012, 12:24 Про очередь не читал. А у вас всё просто - эти функции ставят в очередь сообщений действия пауза и плей. У вас пауза не успевала отработать походу и плей впустую отрабатывал.
processEvents принудительно заставляет обработать сообщения в очереди. И пауза у тебя сейчас нормально отрабатывает. PS c фононом не работал. Цимуса твоего вопроса тоже не понял. Извиняй. Название: Re: Phonon + очередь Отправлено: bez_glaz от Август 01, 2012, 12:35 спс ещё раз
жду ещё ответов по поводу очереди. |