суббота, 19 июня 2010 г.

Есть ли жизнь без Рulse...

Последние версии Ubuntu (9.10, 10.04) явно каким то своим хитрым курсом пошли. Я очень не люблю, когда мне навязывают, то что мне не нравиться, и не оставляют свободы выбора. Меня всем устраивает ALSA, а от Pulseaudio одни неприятности выходят.Если вы являетесь пользователем Ubuntu и вас устраивает Pulseaudio, то ни в коем случае ни читайте дальше=)
Снести Рulseaudio не трудно, но вот беда, вместе с ним пропадает из системы какой либо контроль звука.

1. прибиваем и удаляем

sudo apt-get remove pulseaudio gstreamer0.10-pulseaudio
killall pulseaudio

Дополнительно:
если в системе присутствуют игры на основе sdl, установлен пакет libsdl1.2debian-pulseaudio, то еще необходимо сделать:

sudo apt-get install libsdl1.2debian-all

Для программ, использующих OpenAL, неплохо бы твикнуть настройку

sudo nano /etc/openal/alsoft.conf

далее ищем строку:

#drivers = alsa,oss,solaris,dsound,winmm,port,pulse,wave

в целях бекапа ее можно не изменять, а следующей строкой просто написать:

drivers = alsa

2. убираем мусор из гномовской сессии:

gnome-session-properties

в открывшемся окне ищем и снимаем галку с gnome-volume-control-applet - он все равно ничего не может, кроме как жаловаться на отсутствие pulseaudio

3. обновляемся из этого PPA: https://launchpad.net/~dtl131/+archive/ppa - восстанавливает микшер, апплет, управление с клавиатуры.

4. добавляем на панель регулятор громкости.

5. приводим в порядок gconf:

gconftool-2 -s --type string /desktop/gnome/sound/default_mixer_device "alsamixer"
gconftool-2 -s --type list --list-type string /desktop/gnome/sound/default_mixer_tracks "[Master]"
gconftool-2 -s --type boolean /desktop/gnome/sound/enable_esd false
gconftool-2 -s --type string /system/gstreamer/0.10/default/audiosink "alsasink"
gconftool-2 -s --type string /system/gstreamer/0.10/default/audiosrc "alsasrc"
gconftool-2 -s --type string /system/gstreamer/0.10/default/chataudiosink "alsasink"
gconftool-2 -s --type string /system/gstreamer/0.10/default/musicaudiosink "alsasink"

6. теперь осталось только перезапустить gnome-settings-daemon, лучше это делать не из терминала, а из диалога запуска alt+F2 или другого командного лончера.

killall gnome-settings-daemon && sleep 2s && gnome-settings-daemon


Далее самое главное. Открываем файл .asoundrc находящийся в папке вашего пользователя. Если его нет - создаём. Строчку в "углвых скобках" <> не трогаем, всё остальное удаляем (хотя там ничего не должно быть) и вписываем

# 2009-08-21

#

#
This .asoundrc will allow the following:

#

# -
upmix stereo files to 5.1 speakers.

# -
playback real 5.1 sounds, on 5.1 speakers,

# -
allow the playback of both stere(oupmixed) and surround(5.1) sources at the same time.

# -
use the 6th and 7th channel (side speakers) as a separate soundcard, i.e. for headphones

# (
This is called the "alternate" output throughout the file, device names prefixed with 'a')

# -
play mono sources in stereo (like skype & ekiga) on the alterate output

#

#

#
Please try the following commands, to make sure everything is working as it should.

#

#
To test stereo upmix : speaker-test -c2 -Ddefault -twav

#
To test surround(5.1): speaker-test -c6 -Dplug:dmix6 -twav

#
To test alternative output: speaker-test -c2 -Daduplex -twav

#
To test mono upmix: speaker-test -c1 -Dmonoduplex -twav

#





#
Define the soundcard to use

pcm.snd_card {

type hw

card 0

device 0

}



# 8
channel dmix - output whatever audio, to all 8 speakers

pcm.dmix8 {

type dmix

ipc_key 1024

ipc_key_add_uid false

ipc_perm 0660

slave {

pcm "snd_card"

rate 48000
#
звуковуха поддерживает до 192 кГц, но в Линуксе не удалось завести больше чем 96 кГц.
# но даже 96 сейчас нигде нету. зато 48 кГц
используется во всех DVD-филмах.

channels 8

period_time 0

period_size 1024
# не трогать. некоторые приложения не смогут работать

buffer_time 0

buffer_size 8192
# от заикания звука. здесь стояло 5120

}



#
It routes the audio to t he correct speakers.
# тут хитрость. в
windows для вывода 5.1 задние колонки подключаются в разъём боковых,
# данный
роутинг сделан для дуал бута, чтоб не перетыкать задние колонки.

bindings {

0 0

1 1

2 6

3 7

4 4

5 5

6 2

7 3
}
}


#
upmixing - duplicate stereo data to all 6 channels

pcm.ch51dup {

type route

slave.pcm dmix8

slave.channels 8

ttable.0.0 1

ttable.1.1 1

ttable.0.2 1

ttable.1.3 1

ttable.0.4 0.5

ttable.1.4 0.5

ttable.0.5 0.5

ttable.1.5 0.5

}



#
this creates a six channel soundcard

#
and outputs to the eight channel one

# i.e.
for usage in mplayer I had to define in ~/.mplayer/config:

#
ao=alsa:device=dmix6

#
channels=6

pcm.dmix6 {

type route

slave.pcm dmix8

slave.channels 8

ttable.0.0 1

ttable.1.1 1

ttable.2.2 1

ttable.3.3 1

ttable.4.4 1

ttable.5.5 1

}



#
share the microphone, i.e. because virtualbox grabs it by default

pcm.microphone {

type dsnoop

ipc_key 1027

slave {

pcm "snd_card"

period_time 0

period_size 1024


}

}



#
rate conversion, needed i.e. for wine

pcm.2chplug {

type plug

slave.pcm "ch51dup"

}

pcm.a2chplug {

type plug

slave.pcm "dmix8"

}



#
routes the channel for the alternative

# 2
channel output, which becomes the 7th and 8th channel

#
on the real soundcard

pcm.alt2ch {

type route

slave.pcm "a2chplug"

slave.channels 8

ttable.0.6 1

ttable.1.7 1

}



#
skype and ekiga are only mono, so route left channel to the right channel

#
note: this gets routed to the alternative 2 channels

pcm.mono_playback {

type route

slave.pcm "a2chplug"

slave.channels 8

#
Send Skype channel 0 to the L and R speakers at full volume

ttable.0.6 1

ttable.0.7 1

}



# '
full-duplex' device for use with aoss

pcm.duplex {

type asym

playback.pcm "2chplug"

capture.pcm "microphone"

}



pcm.aduplex {

type asym

playback.pcm "alt2ch"

capture.pcm "microphone"

}



pcm.monoduplex {

type asym

playback.pcm "mono_playback"

capture.pcm "microphone"

}






#
for aoss

pcm.dsp0 "duplex"

ctl.mixer0 "duplex"



#
softvol manages volume in alsa

# i.e.
wine likes this

pcm.mainvol {

type softvol

slave.pcm "duplex"

control {

name "2ch-Upmix Master"

card 0

}

}


pcm.!surround51 dmix6
# вот оно!!! здесь вместо стандартного
surround51
#
используется dmix6 который использует софтовое микширование

#
pcm.!surround71 dmix8
# наверное это тоже нужно, но так как у меня нету 8ми канальной системы
# то не уверен







#
pcm.!default "mainvol"



#
set the default device according to the environment

#
variable ALSA_DEFAULT_PCM and default to mainvol

pcm.!default {

@
func refer

name { @func concat

strings [ "pcm."

{ @func
getenv

vars [ ALSA_DEFAULT_PCM ]

default "mainvol"

}

]

}

}

Сохраняем файл. Хотелось бы сразу заметить, что фаил отредактирован под конкретную звуковую карту - ASUS XONAR D2. Перезагружаемся. Заходим в микшер - параметры. Ставим галочку напротив 2ch-Upmix Master.

Всё! Всё везде работает!

Данные материалы взяты с форума ubuntu.ru
Написал больше для себя, чтоб не забыть, но может кому ещё пригодиться.

среда, 22 июля 2009 г.

Каракури.

Сегодня, хотя нет, уже вчера, наткнулся на новый магазин игрушек. Там в продаже есть каракури(karakuri, яп.) Это японские механические куклы. Зачем я это пишу - сам не знаю, просто прикольно. Вот видео лучника.

суббота, 11 июля 2009 г.


Сегодня ночью, хоть и запоздало, я открыл сезон ночных покатушек по городу. Проклятое воспаление лёгких. Доволен как удав после кормёжки=)

суббота, 20 июня 2009 г.



Сегодня купил новую звуковушку. ASUS XONAR D2.

вторник, 16 июня 2009 г.

Вот... Подумал, чем я хуже других, и решил завести себе страничку в блоге. Пока не знаю зачем правда =)