LINUX.ORG.RU

[Qt][OpenGL]компонент timeline

 ,


0

3

Надо написать компонент для просмотра видеоархивов. Должен он в реальном времени отслеживать положение видео на «временной линии», то есть рисовать надо будет много и часто. Первая моя попытка была с использованием пополам QPainter'a и чистого OpenGL api, но в результате криворукости компонент не хило жрёт проц во время проигрывания. Сейчас решил ещё раз подумать над реализацией в целом, решил попробовать QGraphicsView со всеми вытекающими и QGLWidget в качестве viewport'a, написал маленькую демку, рисующую линейку в пределах и за пределами вьюпорта, чтобы её можно было потягать.
.cpp
http://paste.org.ru/?51huds
.h
http://paste.org.ru/?0lyk0v

Так вот эта простенькая штука жрёт до десяти процентов от интеловского 2.4 code2 duo при наличии nvidia 9600 с блобом. Теперь вопрос, есть ли возможность заставить QGraphicsView не есть лишних ресурсов на скролле или таки надо заняться велосипедостроением и пилить всё самому(под пилением подразумевается оптимизация старого уже набыдлокоденного)?

Отсылкам на любые примеры или доки буду неописуемо рад :)

★★★

Есть такая трабла в Qt что нечто скроллящееся тягающееся кушает проц... Не совсем понял, что у тебя там скроллится и кушает проц, можешь скриншот сюда того что медленно работает, так сложно по тексту понять что ты имеешь ввиду.

I-Love-Microsoft ★★★★★
()
Ответ на: комментарий от I-Love-Microsoft

вот первый вариант компонента
http://piccy.info/view3/1874267/e4e5fbdebaa28663a15b39b70c7827ec/orig/
вот демка, сырцы которой в первом посте
http://piccy.info/view3/1874285/4eed11eface4e0ec7f197b33a6296d32/orig/

тягать белую штуку с линеечной разметкой :)

gavlig ★★★
() автор топика
Ответ на: комментарий от Pavval

да, только что проверил - падает нагрузка на проц при скроллинге :) Офигенная поддержка OpenGL.

gavlig ★★★
() автор топика

попробовал официальную демку «chip», дык она тоже в разы больше ресурсов жрёт в режиме opengl, чем без него. wtf? Как это объяснить и, что ещё более желательно, искоренить? Не должно ж быть такого

gavlig ★★★
() автор топика
Ответ на: комментарий от gavlig

В небольших применениях ты действительно можешь получить больше, чем без него.

Попробуй профайлером прогнать.

Pavval ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.