28 мая 2009

низкий уровень звука в maemo

Продолжая ковырять таблетку.
Как уже неоднократно убеждались владельцы, использовать maemo девайсы в качестве плеера крайне неудобно - они тихие.
А дело в том, что каждый раз при втыкании и вытыкании наушников программым методом снижается уровень pcm канала. Понаблюдать и порулить этим можно из миксера aumix, который водится в том же треде. И как одно из решений - тем же самым аумиксом по крону устанавливать звук на максимум (не бойтесь, не оглохнете - плеера управляют другим каналом):

aumix -w + 100

Это решение универсально и гарантированно выжмет максимум во всех приложениях. Правда, не кардинально, но ощутимо.

Ещё один путь - сорвать к чертям программный микшер, что, например, позволяет делать mplayer:
cat ~/.mplayer/config
softvol=1
softvol-max=300

300% от нормального - уже достаточно для мегаполиса и поездов с идущей в комплекте гарнитурой (даже слегка слишком - появляются шумы, которые слышны даже моему отдавленному взводом медведей уху). Минус - шумы, не все плееры поддерживают вывод через mplayer (kagu умеет).

В принципе, этого достаточно, хотя остаётся ещё несколько путей - replay gain, HAL, крутейшие наушники KOSS - но я уже слегка оглох...

27 мая 2009

идентификация ОС

Байка: в одном продукте под ОС семейства видовс версия ОС определялась по наличию в корне диска c: папок с именами windows, winnt и т.п., что приводило к странным флуктуациям при наличии нескольких или отсутствию таковых.

Призказка: работал на n810 плеер kagu, да и перестал. И UKMP тоже перестал. А без kagu n810 вообще не плеер, поскольку была в kagu самая главная возможность любого плеера - быстро поставить его на паузу (аппаратной кнопкой на корпусе или на родной гарнитуре).

Сказка: а причина была как в той самой байке - из-за странного способа идентификации ОС: по наличию определённого пути (который я удалил, дабы в автодополнении шелла не мешал). Вот так:

#/usr/bin/MediaCenter.py
if os.name=="posix" and os.path.exists('/media/mmc1'): ISMAEMO=1

Из-за этого устанавливалась неправильная глубина цвета и любое приложение, использовавшее pygame, падало.

Мораль: надо определять ОС другим способом. Хотя бы по ядру:
uname -a
Linux Nokia-N810-23-14 2.6.21-omap1 #2 Wed Jul 16 12:29:11 EEST 2008 armv6l unknown