Сегодня существует великое множество VoIP решений — вспомним хотя бы Skype, Hangouts, TeamSpeak. Большая проблема с ними заключается в том, что решения эти закрыты и часто предоставляются исключительно в виде SaaS. Сама по себе закрытость исходного кода не обязательно означает, что продукт плохой. Многие закрытые продукты я использую каждый день. Но при наличии достойной открытой альтернативы я склонен отдавать предпочтение именно ей. Поэтому сегодня мы познакомимся с совершенно замечательным открытым приложением для голосовых звонков Mumble.
Чем так интересен Mumble
Mumble является приложением с открытым исходным кодом, распространяемым под лицензией BSD. Почему для меня это так важно?
Во-первых, из соображений безопасности. Сделать закладки в приложении с открытым исходном кодом намного сложнее, чем в приложении с закрытым. Во-вторых, из соображений качества. У разработчиков open source проектов, как правило, над душой не стоит манагер, требуя быстрее катить в бой новые фичи, потому что компания должна зарабатывать деньги. Во главе угла стоит счастье пользователей, а не бизнеса. К тому же, поскольку код открыт, обычно code review намного строже, и потому качество кода — выше. Наконец, конкретно SaaS решения плохи тем, что они обновляются прозрачно для пользователя, притом часто не в лучшую сторону и без возможности откатиться. Еще в качестве плюсов открытых решения я бы назвал возможность любому человеку вносить в них изменения. Однако эта возможность используется сравнительно редко.
Возьмем, к примеру, Skype. Качество связи и звука в нем всегда оставляли желать лучшего. Проблемы вроде обрывов связи и пережатого бубнежа вместо голоса являются обычным делом. В нем постоянно что-то ломается — перестают работать звонки , перестают ходить сообщения , становится вообще невозможно залогиниться . Это я только вспомнил проблемы, с которыми приходилось сталкиваться в последние шесть месяцев. Все это с рекламой, спамом как в самом Skype, так и регулярными маркетинговыми рассылками на email пользователей, и по факту отсутствующей безопасностью . Что это, если не отсутствие качества и не стоящие во главе угла интересы бизнеса, а не пользователей?
Помимо открытости исходного кода Mumble также интересен следующим:
- Кроссплатформенность, Mumble есть реально подо все (Linux, FreeBSD, MacOS, Windows, Android, iOS);
- Заметно более качественный звук и более стабильная связь по сравнению со Skype;
- Все передаваемые данные надежно шифруется;
- Можно использовать паблик сервера, заплатить за выделенный или самостоятельно поднять собственный;
- Mumble имеет нормальные дэфолты для обычных пользователей и очень гибкие настройки для продвинутых;
- Есть встроенная поддержка записи звонков в WAV , OGG, FLAC и AU;
- Очень удобный интерфейс, например, видно, кто сейчас на мьюте и кто ведет запись, у кого какой процент потерянных пакетов, на все можно настроить хоткеи и тд;
- Есть позиционирование звука для игр — если игрок находится слева от вас в игре, он будет слышен слева;
Звучит интригующе? Тогда давайте попробуем все это на практике!
Установка клиента
Под Ubuntu Linux клиент Mumble ставится, например, так:
sudo apt-get update
sudo apt-get install mumble
После первого запуска программа предлагает пройти диалог по настройке микрофона. Настройки там из разряда «подвиньте ползунки так, чтобы когда вы говорите максимально громко и максимально тихо звук попадал в зеленый диапазон». В общем, ничего сложного, и занимает от силы пару минут. При необходимости этот диалог можно запустить повторно из меню программы.
Клиент выглядит примерно таким образом:
Как видите, интерфейс очень прост и не содержит ничего лишнего.
Установка сервера
Если по каким-то причинам вы не хотите использовать паблик сервера, то можете поднять свой. Делается это очень просто:
sudo apt-get update
sudo apt-get install mumble-server
Примечание: Серверная часть Mumble называется Murmur (не путать с MurmurHash !), поэтому в вашей ОС или дистрибутиве Linux она может фигурировать именно под таким именем. Например, в портах FreeBSD сервер Mumble называется audio/murmur .
После установки пакета его нужно немного донастроить:
Отвечаем на несложные вопросы вроде запускать ли murmurd при старте системы, следует ли изменить пароль пользователя SuperUser и тд.
Более тонкие настройки лежат в файле /etc/mumble-server.ini. В первую очередь вам, вероятно, захочется поправить:
serverpassword=
Остальные параметры не так важны и их можно поменять позже. Здесь я не буду их все описывать, так как вся необходимая документация есть в комментариях самого конфига.
После правки конфига говорим:
Почему-то reload не поддерживается.
Далее заходим на сервер через клиент под пользователем SuperUser с недавно присвоенным ему паролем. Заводим чат. Затем отключаемся, входим под обычным пользователем с паролем, указанным в параметре serverpassword. Заходим в чат и общаемся! Если прямо сейчас пообщаться не с кем, можно зайти с мобильного телефона и поговорить с самим собой 🙂
Заключение
Некоторые ссылки по теме:
- http://www.mumble.com/ ;
- http://www.mumble.ru/ ;
- https://github.com/mumble-voip/mumble ;
- https://wiki.mumble.info/wiki/Main_Page ;
В общем и целом, после перехода на Mumble моя жизнь стала намного лучше. Все это время я не осозновал, как сильно страдаю со Skype.