Evgenij LegotskojJan. 27, 2016, 10:27 a.m.

Использование Qt 3D для визуализации музыки

Перевод официальной новости, автор Titta Heikkala

Так как идёт развитие Qt 3D модуля, Мы хотели бы предоставить его на проверку и тестирование того, как можно визуализировать музыку, используя этот модуль. Результатом этого эксперимента стал новый пример, Audio Visualizer Example, для Qt 3D модуля.

Пример показывает, как вы можете использовать Qt 3D rendering с элементами Qt Quick. 3D контент отрисовывается с использованием типа Scene3D. Колонки являются объектами в NodeInstantiator и они анимируются визуализацией величины амплитуды частот проигрываемой музыки. На верхнем слое сцены мы поместили кнопки pause/play и stop. Эти кнопки являются элементами Qt Quick. Музыка проигрывается с использованием MediaPlayer, который предоставляется модулем Qt Multimedia.

В этом примере имеется кривая линия, огибающая 3D объекты для отображения прогресса, основанного на длительности трека. Также имеется 3D призма, показывающая заголовок примера и песни. Призма показывает заголовок песни в то время, как песня проигрывается, а заголовок примера отображается, когда песня остановлена. Заголовки помещены на различные грани призмы и разворот призмы анимируется тогда, когда необходимо изменить заголовок.

Если желаете опробовать пример, то вы можете найти его на codereview.qt-project.org в примерах \qt3d\audio-visualizer-qml. Мы знаем, что всё ещё требуются улучшения производительности backend-части, чтобы сделать анимацию колонок более плавной, но так как Qt 3D является рассматриваемой технологией в предстоящем выпуске Qt 5.6, то скорее всего эти улучшения весьма вероятны.

Этот пример был создан, чтобы дать представление о том, что вы можете создать, используя Qt 3D.
Мы надеемся, что Вам понравится!

Источник Qt Blog

We recommend hosting TIMEWEB
We recommend hosting TIMEWEB
Stable hosting, on which the social network EVILEG is located. For projects on Django we recommend VDS hosting.
Support the author Donate

Comments

Only authorized users can post comments.
Please, Log in or Sign up
Timeweb

Let me recommend you the excellent hosting on which EVILEG is located.

For many years, Timeweb has been proving his stability.

For projects on Django I recommend VDS hosting

View Hosting
ZK

C ++ - Test 004. Pointers, Arrays and Loops

  • Result:60points,
  • Rating points-1
V

C ++ - Test 004. Pointers, Arrays and Loops

  • Result:70points,
  • Rating points1
V

C++ - Тест 003. Условия и циклы

  • Result:71points,
  • Rating points1
Popular publications in the last 90 Days
Last comments
RS

Django - Tutorial 007. Adding Pagination based on django-bootstrap3

а как быть если нет базы и запроса в БД, а данные приходят по запросу в api стороннего сервера, а клиент серверное приложение на django и я хочу реализовать пагинацию на стороне django. В апи я …
e
  • ethen
  • Aug. 28, 2021, 3:49 p.m.

Release of the C++/Qt and QML application deployment utility CQtDeployer v1.5.0

Благодарю. Действительно, подменил файлы от версии 4.0, и все заработало)

Release of the C++/Qt and QML application deployment utility CQtDeployer v1.5.0

На данный момент Qt Installer Framework не поддерживает Windows 7 смотрите баг #2224
  • 4X_Pro
  • Aug. 26, 2021, 7:32 a.m.

Распознавание изображений на Python с помощью TensorFlow и Keras

Понимаю. А ещё понимаю, что не потратить время нельзя. День всё равно пройдёт, и вопрос только в том, на что он будет потрачен: на то, что приносит в жизни удовольствие или нет. Насчёт заст…
KS

Qt/C++ - Lesson 023. Moving QGraphicsItem on QGraphicsScene with mouse help

здравствуйте! Подскажите, пожалуйста, как можно на Вашем примере реализовать вывод контекстного меню при нажатии на квадрат правой кнопкой мыши с целью решения задач: изменить объект и удалить? …
Now discuss on the forum
EK

HTTP server на Qt

Мой файл webapp1.ini [listener];host=192.168.0.100port=8080minThreads=4maxThreads=100cleanupInterval=60000readTimeout=60000maxRequestSize=16000maxMultiPartSize=10000000…

QScrollArea dynamically add QCheckBoxes

Всё правильно. Это просто спамер, который отправился в вечный бан.
a
  • ad40
  • Sept. 15, 2021, 3:32 a.m.

Qt proxyModel

Добрый день! Разобрался с задачей! (иногда отвлеченное участие приводит к нахождению решения , так что не могу не выразить благодарность участникам данного форума) Все оказаолось дов…
JaM

Update data | Django, Ajax

Привет, добрался я к реализации системы общения, тут как раз получилось что попал на ваши статейки, все работает как часы, но осталась одна маленькая деталь, как обновлять сообщения в диалоге и …
DCh

Вызов функции Python с Qml

Всем здравствуйте. Незамысловатая задача появилась у меня - вызвать функцию Python с Qml. Смотрел уроки на этом сайте, но что-то я не понимаю. Сверял код Qt C++, вроде как всё также, …
About
Services
© EVILEG 2015-2021
Recommend hosting TIMEWEB