Для тех кто пишет расширения на PyQt/PySide для CG-софтов.
Когда я только начинал писать тулзы под Maya (тогда еще версия 2010-2011) мне приходилось ручками ставить PyQt4 под Maya. Даже написал мануалы по установке на своём сайте. Но потом стал доступен из коробки PySide и позже он обновится до PySide2. Для некоторых систем была поддержка PyQt5.
И как простому разработчику поддерживать этот зоопарк? Ведь хочется чтобы тул работал на любой версии (вы тоже делали модуль что-то типа import_qt.py?😁)
На помощь приходит проект Qt.py который поставил себе цель унифицировать использование Qt-биндингов вне зависимости от среды где запускается код. Те, кто давно пишут на Qt, скорее всего знают этот проект.
Он стал стандартом для CG-индустрии и используется в топовых студиях и проектах.
Qt․py помогает запускать один и тот же код на разных платформах с разными вариантами Qt-библиотек. Это может быть как интеграция в CG-софт, так и переносимость стендалонов между разными платформами с разными версиями Python.
Я решил рассказать о некоторых особенностях работы с этой библиотекой.
Сегодня о том, как установить и использовать Qt․py и что это вам даёт.
Установка
pip install Qt.py
Чтобы начать использовать Qt․py в коде достаточно заменить импорт вашего варианта Qt-биндинга на Qt․py
from [PySide|PyQt4|PySide2|PyQt5] import QtWidgets
=>
from Qt import QtWidgets
Теперь ваш код будет поддерживать любой вариант биндинга Qt в Python.
При этом не потребуется использовать if-else конструкции под разные версии. Все вызовы теперь одинаковы.
Всё что нужно сделать, это написать его по правилам PySide2. Именно эта версия была взята за основу.
Приоритет импорта такой:
1. PySide2
2. PyQt5
3. PySide
4. PyQt4
Что именно загрузилось можно посмотреть в переменной __binding__
>>> import Qt
>>> Qt.__binding__
'PySide2'
Приоритет имопрта можно изменить через переменные QT_PREFERRED_BINDING и QT_PREFERRED_BINDING_JSON. Причем под каждый проект оверрайды можно настраивать индивидеально.
#qt#libs
Various Artists — Rajasthan Street Music (Sublime Frequencies, 2022)
#traditional#field_recording#tabla#dhol#harmonium#Rajasthan#India
Раджастан (राजस्थान), что значит «страна раджей» — самый большой штат в Индии, расположен на северо-западе страны. Суровыми просторами пустыни Тар он разделен с пакистанскими провинциями Синд и Пенджаб, а на юге граничит с индийским штатом Гуджарат.
Века непрерывных вторжений и жестоких битв, правление скифов, маурьев, сатрапов, гурджаров, моголов, раджпутов и британцев оставили свой след в местном фольклоре. В наши дни, из-за постоянных сбоев в подаче электроэнергии, длительных засух, пересыхающих рек и постоянно наступающего опустынивания, Раджастан остается не самым приветливым местом для жизни. Тяготы прошлого и настоящего наделили народ Раджастана гордым характером, который чувствуется и в музыке штата.
Себ Басслир записал компиляцию Rajasthan Street Music в различных городах, деревнях и отдаленных районах Раджастана в рамках двухмесячного путешествия. Этот сборник не является исчерпывающим фольклорным исследованием или этномузыковедческим проектом. Он скорее представляет музыкальный пейзаж Раджастана середины нулевых, срез звуковой среды за пределами академического подхода к раджастанской музыке.
Bandcamp | Telegram
Shakti — NPR Music Tiny Desk Concert (2023)
#jazz#carnatic#hindustani#tabla#dhol#video#India#United_States
Записав первый за 48 лет альбом This Moment, джаз-фьюжн группа Shakti отправилась в мировое турне и по дороге заскочила на Tiny Desk, чтобы презентавать новое творчество.
Shakti — это группа, созданная английским гитаристом Джоном Маклафлином, индийским скрипачом Л. Шанкаром, перкуссионистами Закиром Хуссейном и Т. Х. «Викку» Винайакрамом в 1973 году. Группа исполняла акустический фьюжн, сочетая индийскую музыку с элементами джаза, перестала существовать в 1978 году, и только в 2020 году собралась вновь в немного измененном составе.
YouTube
Benik Abovian & Zaven Azibekian — Traditional Musicians From Tavush (Maison Des Cultures Du Monde, 2002)
#traditional#field_recording#dhol#duduk#zurna#sring#dam#Armenia
Опираясь на географическое положение Армении и многонациональную историю Кавказа, армянскую народную музыку можно считать частью ближневосточного музыкального наследия. Однако, на протяжении веков армянская музыка находила свое вдохновение в сельских и пастушеских мелодиях, средневековых христианских религиозных монодиях, а также в городских традициях гусанов — бардов сасанидского, парфийского и, конечно, армянского происхождения. Этот путь дал начало глубокой и разнообразной музыкальной культуре, которая сохраняет свой уникальный характер.
Современные армянские народные музыканты гордятся этим разнообразным наследием, которое значительно обогатилось в XIX и XX веках. Период потрясений того времени, в частности, геноцид 1915 года, а также политика урбанизации в советской Армении, способствовали тому, что народная музыка, как сельская, так и городская, была сохранена и увековечена деревенскими музыкантами.
Тавушская область, расположенная на северо-востоке Армении, недалеко от границ с Грузией и Азербайджаном, не является исключением. Как и во многих других регионах Армении, народная музыка здесь до сих пор исполняется в деревнях во время свадеб, фестивалей и похорон.
Последователи древних традиций, гусаны Беник Абовян и Завен Азибекян признаны одними из лучших исполнителей тавушской народной музыки. В 2001 году в деревне Кирантц и городке Ноемберян Николас Бергер записал игру музыкантов для французского Института мировых культур. В течение всего альбома звучат импровизации музыкантов на разнообразных духовых инструментах, таких как зурна, дудук и сринг, сопровождаемые ритмами доула.
🔗Spotify | AppleMusic | Telegram
The Ensemble Of Rahim Takhari — Shirin Dahani / Sweet Lips: Music of North Afghanistan (Pan Records, 1996)
#traditional#rubab#dhol#zerbaghali#ghaychak#dutar#dambura#Afghanistan
«Shirin Dahani», что значит «сладкоголосие», — редкая запись, посвященная музыкальным традициям севера Афганистана. Там эта страна граничит с Таджикистаном и Узбекистаном, поэтому в музыке можно услышать влияние фольклорных традиций этих стран, а персидский элемент представлен ярче, чем на юге. Музыку на этом альбоме исполняет ансамбль Рахима Тахари, певца, исполнителя на дутаре и гайчаке. В его ансамбле также есть рубаб, дамбура, зербагали и дол. Исполнитель на рубабе, кстати, учился у знаменитого Устада Мохаммада Омара. Все песни исполнены на языке дари. Некоторые из них являются положенными на музыку газелями и рубаями, а некоторые — народными произведениями. Часть инструментальных композиций позаимствована из узбекских и пуштунских песен.
Spotify | AppleMusic | Soundcloud