[sisyphus] Видеоконференции на ноутбуках ( лаптопах )

info =?iso-8859-1?q?5740_=CE=C1_mail=2Eru?=
Вт Дек 16 16:39:08 MSK 2003


Имел я тут веселую работку - ставить Linux на 6 ноутбуков в 
локальной сети одной фирмы, да так, чтобы с видеоконференцией.

Впечатлениями и хочу поделиться. Может, кому-то окажется 
полезным.

1.

Прежде всего, в ALTLinux только одна видеоконференция, и та под 
Gnome. Под KDE gnomemeeting ставится кривовато, посему поискал 
в инете - и нашел видеоконференцию под KDE в составе одного 
малоизвестного дистрибутива (ARK Linux). Продукт так и 
называется - videoconference. Правда, собрать его 
самостоятельно из сырцов не сумел (.configure проходило 
нормально, а дальше почему-то компилер не мог найти ptlib.h), а 
готовые rpm-ы поставить нельзя: в Сизифусе glibc 2.2.6, а эти 
rpm-ы собраны уже под следующую версию glibc.

Cсылка, откуда я взял srpm этого пакета (а потом вытащил из него 
tar.gz) - http://darkstar.ist.utl.pt/arklinux.  

Может, кто попробует, что это за зверь?

2. 

Далее. На ноутбуках обнаружен следующий эффект: вебкамера, после 
некоторого весьма непродолжительного времени нормальной работы, 
вдруг останавливает видеограббинг. Долгие поиски позволини 
найти причину: ACPI. Любое обращение к 
/proc/acpi/battery/BAT0/state (это проверка 
заряда батарей) приводит к срыву видеограббинга на любом 
приложении v4l - даже xawtv, который, если его запустить из 
консоли в режиме debug, выдает вот такое сообщение:

v4l: timeout (got SIGALRM), hardware/driver problems?
ioctl: VIDIOCSYNC(int=0): Interrupted system call
v4l: timeout (got SIGALRM), hardware/driver problems?
ioctl: VIDIOCSYNC(int=1): Interrupted system call 

Остальные не выдают ничего, просто картинка останавливается.

Имейте это в виду все, кто захочет запускать видеокамеру на 
ноутбуках.

Workаround-решение - перед запуском видеоприложения на лаптопе 
убивать нах всё то, что проверяет заряд батарей (klaptopdaemon, 
например). Так, я вынужден запускать gnomemeeting не напрямую, 
а из shell-скрипта:

#! /bin/bash
kill `ps -C "kdeinit" x | grep -v "grep" | grep "kdeinit: 
klaptopdaemon" | cut -d " " -f2`
kill `ps x | grep -v "grep" | grep "artsd" | cut -d " "  -f2`
exec /usr/bin/gnomemeeting&

3.
Этот же скрипт, как видно, убивает artsd, без чего gnomemeeting 
под KDE не запустится. Пытаться делать что-нибудь вроде artsdsp 
gnomemeeting бесполезно: gnomemeeting - не единый процесс, у 
него штук пять подпроцессов, и до них artsdsp не доходит. 

Как workaround-решение сие вполне проходит, но сидеть с 
gnomemeeting в трее в ожидании возможного вызова, и попутно 
слушать mp3 - не получится. 

4.
Далее, Gnomemeeting использует gnome events для звукового 
сигнала при поступлении вызова, а под KDE гномовские события, 
естественно, не обрабатываются. Посему - звонок при вызове не 
работает. Как заставить его заработать - не разобрался. Если 
кто знает - посоветуйте.

5. И последнее. По крайней мере в той версии gnomemeeting, 
которая в Сизифусе, видеокамера на останавливается, когда 
gnomemeeting свернут в трей. Сие дает бесцельную загрузку 
процессора примерно в 10%. Также не ставится на mute и 
микрофон. 


Я уже написал все это в gnomemeeting-list на gnome.org; посмотрим, 
как среагируют.

Георгий




Подробная информация о списке рассылки Sisyphus