Для тех кто пишет расширения на 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
🎉WOW! What an incredible achievement!🎉 We've reached 500,000 players and 100,000 Twitter followers! 🌟 You are the best tribe in the world! 🥁 Let's keep this celebration going! Don't stop, enjoy the rhythms of your drums https://t.me/@drumtap_bot, and collect #DRUMs! 🔥🪘
Есть такая фишка - заниматься под миксы с выключенными барабанами. На ютубе полно таких композиций. В поиске вводите жанр, темп и drumless. Например, сегодня я набрал "drumless funk 136 bpm", и первой же вылезла вот эта вещь. Включил камеру, и погнали!
Ссылка на оригинал без барабанов:
https://www.youtube.com/watch?v=UaDC2i-G…
#drums#funk
Delegations from 14 countries attended the ‘ALBA Drums’ event in Caracas to showcase varied percussion expressions and the African heritage in the region's culture. The gathering featured debates, workshops and musical performances.
Check out our gallery: https://venezuelanalysis.com/images/venezuela-hosts-alba-drums-gathering-to-celebrate-african-heritage/
#Drums#AfricanDiaspora#Culture#AfricanHeritage
🗣️🎶 Taste of Africa: Язык и музыка
🌟🔔 «Ритмическое путешествие продолжается!» 🥁🌟
Когда речь становится ритмом, а мелодия — смыслом 🥁
В Африке язык и музыка часто звучат как единое целое, и это ощущается даже при первом знакомстве. В ряде языков региона (например, Yorùbá, Igbo и многих других) значение передают и слоги, и высота произнесения.
📌 Тональные языки используют тон (высоту голоса) для различения значений. Одна и та же последовательность звуков, произнесённая выше или ниже (или с другим контуром), передаёт другое слово.
Ключевая мысль рубрики:
🎼 в песне мелодия работает как часть смысла и помогает ему звучать точно.
🎤 1) Как язык задаёт форму вокалу
Тональная речь направляет вокальную линию к смысловой точности, поэтому в музыке часто встречаются такие решения:
🗣️ Вокал как речь: мелодия держится в узком диапазоне, звучит как разговор, уложенный в ритмический узор.
🔁 Хуки‑формулы: важная фраза повторяется, смысл закрепляется и становится общим.
👥 Call-and-response (вопрос–ответ): лидер произносит строку → хор отвечает и поддерживает. Формат создаёт ощущение общинного согласия: “мы услышали, мы повторили, мы поняли”.
🥁 2) Барабаны как продолжение языка
Связь языка и музыки проявляется и через ритм речи. У каждой этнической традиции формируется свой набор привычек:
⏱️ акценты
✂️ паузы
📌 группировки слогов
⚡ ускорения и “перебросы”
🥁 Барабанные рисунки часто отражают эти принципы: ритм становится моделью речи.
Поэтому в ансамблях барабаны звучат как участники диалога:
отвечают голосу “репликой”,
поддерживают ключевую фразу,
закрепляют смысл повтором,
в ряде традиций передают сообщения и статус через говорящие барабаны и кодированные сигналы.
🎧 Как услышать это в треке:
представьте вокальную строку как фразу, произнесённую вслух. Когда перкуссия попадает в те же акценты, возникает ощущение разговора внутри музыки.
🌍 3) Кого послушать сегодня (по странам) 🎶
Под тему отлично подходят артисты, у которых композиция строится на риторике, повторе, коллективном ответе и “говорящем” груве.
🇳🇬 Нигерия
• Fela Kuti — длинная музыкальная “речь” поверх гипнотического грува 🔥
fela-kuti.bandcamp.com
• Seun Kuti & Egypt 80 — лозунг‑фраза ↔ ответ, энергия сообщества 👥
seunkuti.bandcamp.com
🇬🇭 Гана
• Ebo Taylor — highlife/afro-funk, где риффы звучат как реплики 🎸
ebotaylor.bandcamp.com
• Gyedu-Blay Ambolley — речевой фанк/highlife 🗣️
gyedublayambolley.bandcamp.com
🇸🇳 Сенегал
• Orchestra Baobab — ансамбль как разговор: слои ответов и мягкий грув 🧵
orchestrabaobab.bandcamp.com
🇲🇱 Мали
• Ali Farka Touré — фразировка как интонация речи, музыка “рассказывает” 🌀
alifarkatoure.bandcamp.com
• Tinariwen — сила повтора и коллективного звучания 🌙
tinariwen.bandcamp.com
🇬🇳 Гвинея
• Bembeya Jazz National — городская оркестровая традиция, где ритм держит “сюжет” 🎺
bembeyajazznational.bandcamp.com
🇪🇹 Эфиопия
• Mulatu Astatke — этно‑джаз: интонации и паузы как пунктуация 🎷
mulatuastatke.bandcamp.com
🇿🇦 ЮАР
• Hugh Masekela — инструмент “говорит”: вопрос–ответ, паузы, реплики 🗣️🎺
hughmasakela.bandcamp.com
🇹🇿 Танзания
• Siti Muharam — суахили‑песня: текст и интонация ведут аранжировку ✨
sitimuharam.bandcamp.com
🎧 4) Мини‑упражнение (2 минуты)
Выберите любой трек из списка и отметьте:
🎤 где вокал поёт, а где говорит/скандирует
🔁 какие фразы повторяются как “формулы”
🥁 где ритм‑секция отвечает голосу — как подтверждение смысла
🔄 Сохраняйте пост и приглашайте друзей в наше увлекательное путешествие вокруг света африканских ритмов!🎶🌍
#TasteOfAfrica#ЯзыкиАфрики#ЯзыкИМузыка#АфриканскаяМузыка#ТональныеЯзыки#Этномузыка#WorldMusic#AfricanRhythms#Drums#TalkingDrum#Djembe#CallAndResponse#Afrobeat#Highlife#AfroJazz#WestAfrica#EastAfrica#SouthAfrica#Nigeria#Ghana#Senegal#Mali#Guinea#Ethiopia#Tanzania#FelaKuti#SeunKuti#EboTaylor#OrchestraBaobab#AliFarkaToure#Tinariwen#MulatuAstatke#HughMasekela#SitiMuharam