Какое-то время назад возникла проблема играть из программы звук в нечеловеческих форматах. Кроссплатформено. Сначала я хотел использовать существующие библиотеки (Audiere например), но в конце-концов решил использовать MPlayer в slave mode. Всё работает БОДРЯЧКОМ под Linux естественно. А под Windows?
Новая проблема возникла далее - MPlayer просто не запускался. Если программа запускается из консоли или собирается с помощью py2exe как console - всё ОК, но как GUI не работает. Проблема оказалась снова в пайпах. Решение - при создании процесса с помощью subprocess.Popen задать все потоки (stdin, stdout, stderr), а не только нужные нам.
В итоге всё даже работает. Осталось только поизучать исходники SMPlayer'а чтобы узнать как обойтись без хаков. А всё почему? Потому что Windows - говно.
Комментариев нет:
Отправить комментарий