Пользователь
0,0
рейтинг
12 сентября 2014 в 17:06

Разработка → Skype для Linux версии 4.2, не требующей обновления на более новую

skype_linux_logo
Для собственного удобства и людей сделал пропатченную версию клиент Skype для Linux версии 4.2.0.13, которая может работать в текущих условиях и не требовать обновления на более новую. Что конкретно там исправлено говорить не буду, вы можете сами найти решение в сети. Те кому интересно, могут посмотреть отличия двоичных запускаемых файлов.

Зачем это было сделано


Ни для кого не секрет, что с выходом версии 4.3.0.37 в Skype была выброшена поддержка конфигураций linux без pulseaudio. Такое положение вещей меня крайне не устроило, потому как pulseaudio создает шипение при снятии звука с микрофона на моих компьютерах. Поэтому чистая alsa это мой выбор.

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

Где взять


UPD: тут был ppa, но его удалили из-за нарушений правил launchpad.

Ссылки на deb-файлы:
ge.tt
Yandex.Disk
MEGA
Google Drive
Резервная ссылка

Для совместимости, версии в пакетах изменены на 4.3.0.37, дабы они не обновлялись сами, если у вас ubuntu trusty и подключен репозиторий partner, сама программа внутри версии 4.2.0.13.

Что будет дальше


Видно, что текущий владелец Skype наплевательски относится к своим пользователям на платформе linux и будет бороться с подобного рода исправлениями подконтрольной им программы, поэтому можно ожидать того, что данная версия может попросить обновления в будущем. Я надеюсь, что смогу найти способ обойти будущие защиты.

А есть ли альтернативы


Как уже не раз отмечалось на хабре, есть альтернативы skype, но они пока все не очень готовы, либо доступны не на всех платформах. Сам я надеюсь на проект Tox.
Google hangouts мне не понравился по причине отсутствия отдельной программы под linux (под другие платформы я его не смотрел), отсюда и его слишком большая прожорливость в плане ресурсов.
Viber требует наличия смартфона для активации программы.
Можно сделать вывод, что пока альтернативы skype нет (с такими же функциями и поддержкой платформ).

Заключение


Надеюсь, что компания microsoft внемлет просьбам своих пользователей на linux и выпустит обновленную версию skype с поддержкой alsa и pulseaudio (как это было в версии 4.2.0.13) и мне не пришлось бы искать новых способов обхода ограничений старой версии.

UPD: Хабрапользователь bvn13 выложил ссылку на петицию, чтобы добавили поддержку alsa в будущие версии skype для linux.

UPD: Подборка портативных пропатченных версий для windows.

UPD: Для oss сделали обертку, чтобы подменять библиотеку pulseaudio на вызовы к oss. Возможно кто-то сделает такую же для alsa.

UPD: Рекомендация, как запустить Skype 4.3 через прослойку apulse от пользователя safinaskar

Я поставил себе Skype 4.3 с программой apulse, которая эмулирует pulseaudio ( github.com/i-rinat/apulse, habrahabr.ru/post/241045 ) и всё работает. Если у вас 64-битная ОС, то собирайте с опцией -m32 либо просто соберите в 32-битном chroot'е (во всяком случае у меня в Debian'е эти методы прокатили). Иными словами, программа, эмулирующая pulseaudio уже существует и это здрово! Она пишется нашим российским разработчиком Ринатом Ибрагимовым ( github.com/i-rinat ) как раз для обхода ситуации со Skype'ом.

Собранный deb пакет с интегрированным apulse skype 4.3, проверено на Ubuntu 14.04.
kodx @kodx
карма
11,0
рейтинг 0,0
Реклама помогает поддерживать и развивать наши сервисы

Подробнее
Реклама

Самое читаемое Разработка

Комментарии (118)

  • +6
    Большое спасибо тебе добрый человек!
  • +7
    Кому надо, тот и так найдет через минуту как вы обошли ограничение. А могло быть неплохое описание.
    • +1
      Если бы это действительно было изыскание и копание в коде, то я бы описал, но это решение я сам нашел в сети, просто собрал это все вместе для удобства.
      • +7
        Тем более, если способ публичен, то ссылка на него никак не отсрочит принятие мер против него. Поэтому совершенно не понятно, зачем вы его «скрываете».
    • +4
      Не понятно, что решил скрыть автор, учитывая, что метод легко гуглится и уже несколько раз всплывал даже на community.skype.com.
  • –1
    Я однажды увидел сообщение, что надо обновить Skype, иначе некоторые сообщения мне не будут доставлены.
    Поэтому делать такие «стоп-версии» как минимум опасно.
    • +7
      Используйте на свой страх и риск, все как обычно.
    • +6
      Тонкость в том, что никто не гарантирует вам, что даже если вы обновите Skype, все сообщения вам будут доставлены. Вы никак это не можете проверить и уж тем более на это повлиять.
      • +2
        Skype вооще не гарантирует что все сообщения вам будут доставлены. И что хоть какие-то сообщения вам будут доставлены, Skype тоже не гарантирует. Skype вообще ничего не гарантирует. Вы никак это не можете проверить и уж тем более на это повлиять.
        • +1
          Именно это я и имел ввиду.
    • 0
      Это скорее всего относилось к старому обновлению (по-моему с Skype для Linux 4.0 на 4.2 или что-то такое). Там действительно в новой версии (вроде 4.2) пофиксили баг, при котором в старой версии (вроде 4.0) могли пропадать сообщения. Однако, они пропадали не потому, что Microsoft специально их подтирала, чтобы заставить тебя перейти на новую версию, а просто потому что это был баг. Баг вроде заключался в том, что сообщения пропадали, если если кто-то из участников разговора использовал сразу несколько Skype-клиентов, например, один на телефоне, другой на компе. Приходит ему сообщение, скажем, на телефон, и там и сохраняется в истории переписки, а на комп уже не придёт. (Правда, я не понял, где именно это баг — в каком-то из его клиентов, или в клиенте собеседника.)
  • +9
    Есть вопрос, а не стоит ли параллельно попинать команду pulseaudio, чтобы они исправили баги(шипение) со своей стороны?
    • +5
      Лично я карайне скептически отношусь ко всем программам от Леннарта, поэтому пинать их не вижу смысла(надеюсь они сами загнутся).
      По сути они сделали jack, только более тормозной и кривой, такому ПО вообще не место в линуксе, но благодаря людям из RedHat это теперь пихают везде.
      Да и на моем оборудовании с pulseaudio появляется задержка при проигрывании звука, а при просмотре видео идет рассинхрон звука и видео.
      Раздельное управление громкостью было и в alsa, а другого применения pulseaudio я, для себя, не вижу.
      • +4
        А еще они совершенно не знают о существовании multiseat-конфигураций. +1 к нанять киллера для Леннарта
        • 0
          1. Экстремизм.
          2. Леннарта там уже давно нет.
          • 0
            2. Значит, давно уже можно было всё переделать по-человечески? Почему это не было сделано?
            • 0
              1. Потому что для приведения проекта в нормальное состояние таких продуктивных программистов, как Леннарт, еще поискать надо.
              2. Потому что вообще в любом проекте разрушение уже сделанного — задача практически невыполнимая по политическим причинам. Это означает опровержение всех первоначальных доводов, ломку всей накопившейся пропаганды и переубеждение прозомбированных разработчиков.
              3. Потому что патчи вида «обойти баг в другой библиотеке» не принимаются. А это именно баг в alsa-lib.

              По поводу пункта 2 у меня план такой: убеждать их для разных случаев, что tsched и rewind неприменимы в данном конкретном случае. Почле достаточного количества итераций от них останется (утрирую) только один случай (воспроизведение одного источника без обработки на snd-hda-intel), который работает.
              • 0
                1. Потому что для приведения проекта в нормальное состояние таких продуктивных программистов, как Леннарт, еще поискать надо.

                не стоит за продуктивность принимать способность производить тонны говнокода, к тому же идущего вразрез с принятыми в системе принципами построения архитектуры и решающего неясные задачи (я имею ввиду монолитный systemd с встроенным генератором qr-кодов)

                2. Потому что вообще в любом проекте разрушение уже сделанного — задача практически невыполнимая по политическим причинам. Это означает опровержение всех первоначальных доводов, ломку всей накопившейся пропаганды и переубеждение прозомбированных разработчиков.

                а это именно то, чего не хватает pulseaudio. Сломать до основания и сделать всё как положено. Да, проблема микширования была, но к моменту появления Pulseaudio она уже была решена несколькими способами. Откиньтесь на спинку кресла, обратите внимание, как развивался звук на десктопах (я всё это лично наблюдал, линуксом пользуюсь с 99): в 2000 году были глюки, только-только появилась alsa, большинство ещё в oss. К 2003 году oss постепенно сдувается, к 2005 году его фактически уже нет. Всё это время процветают системы а-ля arts, которые типа «абстрагируют интерфейс». Что тут скрывать, arts ужасен в качестве десктопного звукового сервиса, и это понимают все, кто-то его не ставит, а в конце концов и команда разработчиков от него отказывается (Ура!). Все начинают ориентироваться непосредственно на alsa, и г 2007 году в ней решаются проблемы, наконец-то «у всех всё работает». Но нет, тут всплывает pulseaudio и понеслось по-новой: новый протокол, всё шипит и глючит. pulseaudio очень напоминает arts, правда, всё-таки он чуть получше — слава богу, отвязан от DE, а с другой стороны он хуже — припомним неоднократно обнаружившиеся системные уязвимости, связанные с pulseaudio (с arts такого не было).
                И вот, спустя N лет разработки, pulseaudio появляется везде. СЕМЬ ЛЕТ прошло, проблемы шипения ДО СИХ ПОР НЕ РЕШЕНЫ! Проблемы со звуком в звуковом сервере! При том, что на том же самом оборудовании другие звуковые системы звучат нормально! При том, сервер до сих пор по удобству эксплуатации на уровне arts.

                Да, по моему мнению его и начинать разрабатывать не стоило. Он появился как раз тогда, когда стало ясно, что в большинстве случаев необходимости в подобном сервере нет. И «опровержение первоначальных доводов» — это единственно верное, что можно сделать в этой ситуации. Да, последует «ломка» и осознание, что столько сил потрачено зря, но уж лучше похоронить, как arts, сейчас, чем продолжать и похоронить через пять лет, потратив ещё пять лет усилий.
                • +1
                  А вот это неправда. Проблемы в ALSA есть, и они нерешаемые, кроме как путем переписывания всего слоя преобразования-микширования. Что и пытался сделать PulseAudio, безуспешно. Я понимаю, что PulseAudio плох, но возврат к dmix — это тоже не вариант.

                  А проблемы в ALSA такие (причем это только то, что задело лично меня):

                  1. Все кишки вынесены наружу в конфиг. В итоге по интернету разбрелось множество глупых конфигов. А авторам приложений ни на какие гарантии надеяться стало просто невозможно, т.к. pcm.default может быть чем угодно — в том числе голым hw без микширования, регулировки громкости и преобразования форматов.

                  2. Для микширования поверх HDMI или SPDIF приходится писать конфиг.

                  3. dmix работает только поверх устройств с очень специфичными требованиями: они должны (а) поддерживать mmap и (б) правильно работать, даже если приложение не уведомляет нижестоящие слои о том, куда именно в этот mmap оно записало. Т.е. без вызовов snd_pcm_mmap_begin() и snd_pcm_mmap_commit(). А такие устройства — это, по сути, только классические аппаратные PCI-карты (причем 6-канальная emu10k1 уже не является классической, т.к. физически состоит из трех стереокарт, к которым надо применять плугин multi, который уже не удовлетворяет второму требованию). И по той же причине никаких тебе bluetooth и софтовых многоканальных кодеков для spdif (P.S. я являюсь автором одного из двух таких кодеков) — т.е. смикшировать звук поверх 6-канального DTS-кодека для SPDIF средствами ALSA просто невозможно!
      • +1
        Не совсем так.
        Драйвер звуковой карты должен поддерживать аппаратное микширование для того чтобы программы могли слать на одно устройство все сразу. Но не всегда оно работает. На Jack можно поднять в виде сервисов и PulseAudio и Alsa, и OSS. Это даст совместимость со всеми абсолютно программами. И шипения можно избежать.
        • +2
          Я знаю, что должна быть поддержка на уровне железа. Тут встает вопрос — зачем вообще надо было делать pulseaudio, когда есть хорошо работающий и проверенный Jack.
          • +2
            За тем же, зачем и делали jack при существовании проверенного Arts. Под конкретные задачи.
            Пульсаудио хорошо подходит там где стоит заморачиваться о энергопотреблении, а задержки могут быть не столь критичны. Его фича — он может на ходу менять значения дискретизации, задержки (размер буфера). Jack такого не умеет. Решение о создании Pulseaudio вполне логичное. Вопрос о качестве реализации остается открытым.
    • +28
      Hello, this is Linus Torvalds, and I pronounce PulseAudio as Pu.psh.sAddia...u..psh.
    • +23
      Написать в рассылку pulseaudio-discuss. Или мне лично на patrakov@gmail.com. Приложить улики:

      1. 1 секунду записи микрофонного шипения через PulseAudio (parec) в wav.
      2. 1 секунду записи микрофонного шипения через ALSA (arecord) в wav. Обе записи должны быть с теми же параметрами касательно частоты дискретизации и числа каналов, как делает Skype. Подсмотреть можно в pacmd list-source-outputs.
      3. Конфиг PulseAudio: /etc/pulse/*
      4. Настройки ALSA-микшера как во время записи через ALSA, так и во время записи через PulseAudio: amixer -c0
      5. Вывод pacmd list-sources

      Основной кандидат в виновники шипения — это неоптимальное раскидывание усиления по ступеням в звуковой карте.

      Еще есть маловероятная гипотеза, что это плохой ресемплер скидывает весь шум от микрофона в узкий диапазон, используемый для VoIP. Попробуйте заменить на speex-float-5 в /etc/pulse/daemon.conf.
      • +1
        А кого попинать по поводу работы PulseAudio по сети?
        Простое воспроизведение звука работает нормально, но при попытке просмотра ролика на YouTube — получаем пару секунд рассинхрона и остановку видео.
        При этом jack почему-то отлично работает в тех же условиях…
        • +3
          Никого пинать не надо. Модуль для туннелирования звука по сети сейчас переписывают. Результат доступен как module-tunnel-sink-new в PulseAudio 5.0, и он лучше справляется с плохой сетью. А вот почему новая реализация не используется по умолчанию: bugs.freedesktop.org/show_bug.cgi?id=73426
          • +1
            Спасибо, надеюсь, он будет работать лучше.
            И да, сеть у меня хорошая, рядом стоят комп, ноут и роутер. Так что проблема явно во взаимодействии Flash/HTML5-плеера с PulseAudio, и проявляется только при использовании сети.
            Кстати, вариант с PULSE_SERVER=x.x.x.x работает чуть лучше — глючит через раз, а не всегда.
            • +1
              Для Flash баг уже заведен: bugs.freedesktop.org/show_bug.cgi?id=79778. Для себя я проблему решил путем перехода на Pipelight (т.е. путем запуска Windows-версии Flash).

              Edit: ответил не совсем в тему (т.к. сеть в этом баге ни при чем), но пусть будет.
          • 0
            Что-то у меня -new заикается каждую минуту секунд 5. Использую 5ГГц Wi-Fi, задержки минимальны. Обычный туннель работал почти всегда идеально. Полагаю, нужно увеличить latency (сейчас 20мс)?.. Как? sink_properties=device.latency=50? Подскажите, пожалуйста, где взять весь список парамтеров sink_properties?

            Должен отметить, на моей машине PulseAudio локально работает идеально.
            • 0
              По wi-fi у меня баг с затыком воспроизводится, удалось заснять wireshark'ом и разобраться.

              По поводу latency — этот sink не позволяет ей управлять вручную вообще никак, а применяет общие правила для DYNAMIC_LATCNCY: выставляет в latency от самого требовательного проигрываемого потока, или потока, записываемого с monitor source. Поэтому совет: закройте pavucontrol, чтобы избавиться от записи с monitor source (а там по умолчанию стоит latency = 10 ms), и воспользуйтесь плеером, который не выставляет на своем потоке latency = 20 ms. Только тогда другой баг вылезет: mpv начнет отсчет времени с "-10 секунд". Причина этого бага тоже известна и будет обсуждаться с разработчиками вживую 15 октября.

              Все универсальные элементы proplist'ов можно посмотреть в src/pulse/proplist.h (или онлайн тут: freedesktop.org/software/pulseaudio/doxygen/proplist_8h.html#details ). Только там много лишнего, и, например, на device.latency сам PulseAudio не реагирует (только сам ставит, когда захочет). Это в основном для информирования других приложений и для отладки.

              ALSA-специфичные элементы можно посмотреть в src/modules/alsa/alsa-ucm.h — но это только для UCM, который работает только на мобильных платформах. Т.е. для десктопов и ноутбуков совсем нерелевантно.
        • 0
          Hack:
          1) Запустите видео на локальном звуке
          2) Перенесите его на удаленный

          Никаких рассинхронов и запинов не будет.
          • +1
            Оно бы и хорошо, только для этого надо пройти квест:
            1) Научить этому жену
            2) Убедить её, что это необходимо и иначе никак :)
            Мне оказалось проще настроить Jack.
      • +2
        О. Хоть кто-то сможет ответить, почему для каждого второго приложения надо ставить костыли вида PULSE_LATENCY_MSEC=30.
        • +3
          Потому что каждое второе приложение на вашем компьютере полагается на размеры периода и буфера по умолчанию, доставшиеся в наследство от dmix'а (в смысле не выставляет совсем и совершенно зря надеется на результаты, гарантирующие приемлемую отзывчивость). А выставлять малое значение задержки по умолчанию нельзя, так как при этом вы же будете жаловаться на больший расход батарейки, чем в других операционных системах.

          P.S. Понимаю, что проблема на самом деле социальная (непонимание того, что перерасход батарейки мнимый, т.к. его в вашем и не только в вашем случае не избежать). Решать социальные проблемы не умею.
          • +1
            А почему при использовании alsa без pulseaudio размеры периода такие, а проблем с батарейкой не наблюдается?
            • 0
              Официальный ответ: пропаганда: они есть, просто вы их не замечаете, так как не с чем сравнивать.
              • +1
                А может это потому что вы аппаратный микшер не задействуете?
                • –1
                  При чем здесь аппаратный микшер? Его уже давно нет ни на одной из выпускаемых звуковых карт для портебительского сегмента (а в профессиональном сегменте на энергосбережение наплевать). Речь идет о сравнении цепочки plug:softvol:dmix и pulseaudio.

                  [весь текст ниже является пропагандой]

                  В цепочке plug:softvol:dmix размеры периода и буфера заданы жестко в конфиге, а приложение их как-либо поменять не может. Раз в период процессор должен проснуться. Соответственно, при настройках по умолчанию он должен проснуться 47 раз в секунду, даже если приложению такая отзывчивость (21 мс) не нужна. А не нужна она даже видеоплееру (там достаточно 33 мс). Лишние пробуждения процессора = лишний расход батарейки. Но в то же время такая схема с линейной записью в буфер и с фиксированным размером периода очень простая, и поэтому практически не имеет шансов нарваться на баги драйвера или оборудования. Все то же самое относится к JACK.

                  В случае с PulseAudio, прерывания от звуковой карты вообще выключены. Пробуждение процессора осуществляется по таймеру, частоту срабатывания которого (в отличие от частоты прерываний от звуковой карты) можно менять на лету. Поэтому от лишнего расхода батарейки, связанного с излишне высокой частотой пробуждений процессора, можно избавиться. А чтобы кукушку от ICQ вы слышали сразу, а не через пару секунд, приходится идти на такой трюк («динамическую задержку»): при появлении нового звука для микширования, необходимо записать новый смикшированный звук поверх уже отправленного для воспроизведения. Т.е. отмотать буфер назад с помощью функции snd_pcm_rewind(). Вот эта функция и является плохо отлаженной, и может при неправильной реализации приводить к глюкам при воспроизведении. К тому же известно несколько ситуаций, когда PulseAudio, за неимением правильной информации о состоянии буфера и ограничениях оборудования, пытается перемотать назад больше, чем можно.

                  Происхождение пшика при записи до конца не известно. У меня его нет, но у меня нет и скайпа. Улики до сих пор ни мне, ни в рассылку, никто не прислал. Если не пришлют в течение месяца — буду считать проблему выдуманной. См. также bugs.freedesktop.org/show_bug.cgi?id=83557 — если workaround в виде проигрывания тишины через module-echo-cancel помогает, то это оно (согласно этой теории, пшик в записанном появляется, когда Skype закрывает и переоткрывает свой поток проигрывания).

                  Сейчас у меня есть план, как функцию snd_pcm_rewind починить, а также дать PulseAudio правильную информацию о состоянии буфера и ограничениях оборудования. Я над этим работаю, но, к сожалению, натыкаюсь либо на непонимание, либо на неконструктивную (но справедливую) критику со стороны разработчиков ALSA. Подробности тут: comments.gmane.org/gmane.linux.alsa.devel/127246
                  • +1
                    При чем здесь аппаратный микшер? Его уже давно нет ни на одной из выпускаемых звуковых карт для портебительского сегмента (а
                    У меня для прослушивания музыки куплена Xonar ST, в ней всё есть.
                    Поэтому от лишнего расхода батарейки, связанного с излишне высокой частотой пробуждений процессора, можно избавиться
                    А можно этот режим отключать при работе от сети? На стационарных компьютерах энергопотребление не интересно, да и на ноутбуке игры и работающий с аудио софт обычно запускают при наличии внешнего питания. Или pulseaudio предназначен только для мобилок и ноутбуков в машине?
                  • +3
                    Нет, серьёзно, если оно будет шипеть только при работе от батарейки, жалоб будет меньше на порядок, а то и на два. Ну и рецепт лечения проблем тоже прост — принудительное переключение на прожорливый, но безбажный режим в настройках.
                    • 0
                      А давайте не будем зря теоретизировать и напрямую проверим гипотезу, что ваши проблемы действительно связаны с snd_pcm_rewind? Мне самому интересно, т.к. этот факт может понадобиться для дискуссии на конференции.

                      Прошу пересобрать и установить PulseAudio (ровно ту же версию, что в дистрибутиве, и с теми же патчами и опциями сборки) из исходников с одним изменением: в src/modules/alsa/alsa-util.c, надо заменить тело функции pa_alsa_pcm_is_hw() на «return false;». Тогда он вообще никогда не будет пытаться отматывать.

                      Кроме того, в /etc/pulse/daemon.conf прошу выставить:

                      default-fragments = 4
                      default-fragment-size-msec = 10

                      и отдельно еще попробовать, чтобы нагрузить процессор:

                      resample-method = speex-float-5

                      Если глюки не пропадут, то надо будет разбираться дальше. Только желательно не на хабре, а через почту или XMPP.

                      Ну и еще насчет вашей карты: там особо хитрый тип элемента управления «Master» (6 каналов вместо обычных одного или двух), который PulseAudio пока не поддерживает. Поэтому управление громкостью получается полностью софтовым и 16-битным, что тоже может давать слышимые искажения в особо тихой комнате. Это баг.
                  • 0
                    При чем здесь аппаратный микшер? Его уже давно нет ни на одной из выпускаемых звуковых карт для портебительского сегмента (а в профессиональном сегменте на энергосбережение наплевать). Речь идет о сравнении цепочки plug:softvol:dmix и pulseaudio.

                    На встроенном в ноутбук Intel HDA есть. И вообще что-то я давно не видел карты, которая хотя бы два потока не сможет смешать. Или это хотя бы делает драйвер.
          • +2
            Скайп для linux, кстати, жрёт батарею, не стесняясь. Но можно слегка поумерить аппетиты, перехватив несколько функций с помощью LD_PRELOAD.
            • 0
              а можно поподробнее: я никогда не обращал внимание?
              • +1
                Возможно проблема проявляется не у всех, проверить легко: запускаем скайп, запускаем top (на ноутбуке работающем от батареи наглядней будет powertop) и смотрим сколько он отъедает cpu.

                Я долго не возился, придавил только poll, увеличив timeout. Это даёт наибольший выигрыш (уменьшая %CPU скайпа раз в 5), но наверное можно лучше.
                • 0
                  процента 3-4 отъедает. это много?
                  • +3
                    3-4% загрузки современного процессора в idle (т.е. абсолютно ничего не делая), да это много. По-хорошему должно быть в районе 0.
      • +1
        Даже если я запишу эти данные, то принимать участия в их решении не собираюсь, у меня на это просто нет времени.
        Лично для меня тут типичный случай:
        alsa — все работает нормально и без проблем
        pulseaudio — создает нагрузку на процессор(и после этого заявляют, что для мобильных платформ создан), шипит в микрофон

        Так или иначе — спасибо за участие.
    • +1
      Есть подозрение, что проблемы с шипением вызваны кривым дистром/железом. Сколько на линуксе сижу — всегда пользовался пульсом — проблемы были только в Ubuntu 10.10. Во всех же остальных случаях — на сотнях разных машин и десятках разных дистров все работало идеально, в т.ч. и там, где проблемы были даже на венде. И со скайпом любых версий проблем тоже не припомню.
      • +1
        Нетбуки на Atom старом — вполне стабильно заикается и шипит на всех дистрибах. В целом любые платформы, где не хватает процессора.
        • +1
          Могу в ответ сказать что моем старом Atom нетбуке все как раз ОК только при использовании PA.
      • 0
        Пробовал pulseaudio уже давно, как только он появился в убунте. В debian тоже пробовал — всегда вылазили какие-то косяки.
        Я уже сменил не один компьютер, а проблемы остаются всегда, поэтому я просто удаляю эту программу(либо не ставлю), чтобы не напороться на очередные глюки.
        Основываясь на этом опыте считаю, что pulseaudio не место в linux. Если уж решили делать нечто подобное, то сразу бы на уровне ядра, там и квалификация получше нужна и к качеству кода отношение серьезнее.
  • +3
    Потихоньку семью перевожу на собственный джаббер, благо psi+ + psimedia plugin работают отлично.
    • +1
      Да, неплохой вариант, только вот мобильные платформы не поддерживает.
      • 0
        Увы, да.
  • –1
    По теме c MS врядли удасться стясти больше чем они сами захотят дать. Единственный способ завалить службу поддержки с письмами о неработающем PA. Отсюда вытекает оффтопик:
    Я честное слово не понимаю чем всем так насолил PA? Может конечно он в gnome/xfce и еще где-то такой неконфигурабельный, но в KDE с ним все ок. Еще и софтварным микшированием занимается. Да понятно, что это aka MS-way — внутренности похожи на говно, сделать что либо без UI себе дороже, но работает. У меня 5 различных конфигураций, из них 3 лэптопа и 2 десктопа и на всех PA работает вменяемо. Что например не могу сказать о сыром alsa, который на старом лэптопе не микширует звук, потому что нет HW микшера. В общем истерия по поводу PA имхо сильно преувеличена…
    PS: шипения пропали уже месяца 2 как, на всех конфигурациях.
    • +3
      А я на PA полностью перешел уже много лет как, и проблем вообще не было ни на одной машине (3 ноута) с ним.
      • 0
        Ну у меня были шипелки в скайпе, на лэптопе месяца 1,5 — 2 назад. Но с одним из обновлений прошли. А так да я перешел на PA с момента выхода, именно потому что нужно было софт-микширование на старом лэптопе.
    • +2
      Конкретно у меня:
      — увеличивается нагрузка на процессор на 10-15%
      — шипит микрофон (что я только не пытался делать)
      — рассинхрон при проигрывании видео (звук начинает отставать)

      По мелочи — у меня уже есть утилита управления звуком, которую я сам написал (не использую ни один из имеющихся DE, потому как считаю их непригодными для себя) и на переделывание на работу с pulseaudio потребуется время.
      • 0
        Попробуйте:
        alsamixer -c0
        F4
        Уменьшаем усиление микрофона либо до нуля, либо почти до нуля (смотреть уровень можно через pavucontrol). У меня микрофон не усиливается при 30% в PulseAudio (а в ALSA это выглядит как 100% микрофона и 28% усиления).
        • +2
          Как я понимаю, это помогает на вашем ноутбуке. Давайте сделаем, чтобы это было по умолчанию? Нужно только прислать мне на e-mail убедительное доказательство, что это правильно:

          1. Вывод amixer -c0 с настройками по умолчанию, которые делает PulseAudio для микрофона.
          2. Одну секунду записи микрофонного шипения с этими настройками в wav-файл.
          3. Вывод amixer -c0 после предложенных манипуляций с alsamixer, чтобы я мог посмотреть, что общее усиление не изменилось.
          4. Одну секунду записи микрофонного шипения с этими настройками в wav-файл, чтобы я мог посмотреть, что шума действительно стало меньше.
          • 0
            А что делать по умолчанию-то? Pulseaudio считает 100% громкостью микрофона 100% громкость микрофона со 100% усилением. И это правильно, я считаю. Просто alsa позволяет уменьшить отдельно громкость микрофона и отдельно усиление, а в Pulseaudio это управляется общей громкостью микрофона.
            • 0
              Вот и надо понять (и самому, и другим объяснить), что надо при уменьшении громкости микрофона уменьшать на уровне ALSA в первую очередь, а что во вторую. Сейчас код написан «как проще», без учета особенностей, связанных с шумом.
        • +1
          Может быть выберу не самую лучшую позицию в данном вопросе, но предпочитаю подождать еще лет 6, пока исправят детские болезни PA и оно доберется до уровня, когда им можно пользоваться или загнется.
          Все равно — спасибо за совет.
    • 0
      Можно не только пинать службу поддержки. Один товарищ с ресурса LOR составил петицию в Микрософт. Не знаю, одобряет ли сообщество Хабры такие средства, но, думаю, что ссылку здесь можно оставить. Кому нужна поддержка альсы в скайпе, думаю, подпишут.
      • 0
        Спасибо за ссылку на петицию, добавил в статью и подписал сам.
    • 0
      В том, что если не надо передавать звук по сети, оно, вобщем-то, вообще не нужно. Еще меня возмущает что они совершенно забили на multiseat режим работы и приходится запускать system-wide демон, про что в документации она написали, дословно «если вы так делаете, то вы идиот». Неприятно ощущать себя идиотом.
      А про HW миксер, у меня тоже возникала проблема, вот решение: thinkdifferent.su/gordon01/delete-pulseaudio/
    • 0
      Моя внешнеяя аудиокарта не умеет с ним работать. А режим эмуляции alsa не спасает. Вот такие дела :(
      • 0
        а что за карта, работает только с ffado?
        • 0
          Любая FireWire
        • 0
          • 0
            Офигеть. Интересно, с jack-ом она работает?
            • 0
              jack умеет работать через ffado. Это на сегодняшний день рекомендуемый способ использования любых FireWire-карт под linux.
              • 0
                AEP, вы по ссылке ходили? Обсуждаем USB-карту, правда, она не PCM, а DSD и DXD-потоками рулит.
                • 0
                  Не ходил. Но ffado умеет работать только с FireWire. Так что что-то здесь не так.
                  • 0
                    Я прекрасно знаю, что такое ffado. Не понимаю, чего вы прицепились к нему и почему пытаетесь меня образовать. Я сам кому хочешь про звук в линуксе могу лекцию прочитать :) Разве что с пульсом у меня никак не складывается, поэтому я его очень не люблю.

                    Никто не говорил, что карта работает с ffado. Собственно, я спросил, работает ли карта только с ffado, предполагая, что она может быть Firewire и поэтому никакого пульса. Утвердительного ответа не было, вместо этого была ссылка на описание карты, которая оказалась USB.
                    • 0
                      Понял, спасибо за объяснение
            • 0
              Могу ошибиться, но вроде бы я пытался и завести не получилось.
              • 0
                Я просто к тому, что Jack с DSD работать не умеет. Надо проверить, конечно, но не должно работать.
                • 0
                  Проверил. Не работает.
  • +1
    А вообще есть шансы запустить вторую версию скайпа? Уже месяц прошел, а я до сих пор бешусь четвертого скайпа от линукса.
    • 0
      Если будет время — попробую и такое сделать.
      Только вот помню там были сообщения, что они переходили со структуры супернод на централизованную(гибридную), и вторая версия может оказаться совершенно нерабочей в текущих реалиях.
    • 0
      Можно, если вы общаетесь исключительно с пользователями скайпа. Рецепт тот же: запускаете 4.3, логинитесь и quit, затем не разлогиниваясь используете 2. Ломается при попытке позвонить на телефон.
  • +12
    Что то я вижу никто не задумывается о безопасности, так то ставите бекдор себе, а оптом бац вам емайл в списке емайлов с паролям с гмайла, яндекса и майла.
    Если способ простой то проще сделать самому, а не ставить неизвестный софт себе на комп.
    • 0
      Нужно проверять, согласен полностью.
      Поэтому предлагаю скачать официальный пакет и сравнить с моим. А также сравнить бинарные файлы, что конкретно там было изменено.
      • +1
        С оригинальным тоже не все так хорошо. Некоторое время назад ходили слухи, что скайп иногда шарит в неположенных для него местах на файловой системе.
    • +8
      Всегда удивляло с какой лёгкостью люди запускают у себя бинарники взятые из сомнительных источников.
    • +7
      Все проприетарные программы нужно запускать в AppArmor.
      Вот пример конфига для скайпа: eternalwalkabout.wordpress.com/2012/08/07/skype-4-0-on-ubuntu-12-04-apparmor/
      • +1
        Вот тут еще варианты (AppArmor, Docker, tomoyo, отдельный юзер, песочница).
  • 0
    Вот это спасибо вам, 4.3 жутко неудобный, так по 4.2 скучал :)
  • +7
    «Что конкретно там исправлено говорить не буду, вы можете сами найти решение в сети. „

    Приехали, вы на хабрахабр пишете или куда? А так, спасибо конечно.
  • +1
    PS: если кому интересно, могу попробовать сделать версию для windows.

    Да, очень интересно. Очень-очень =)
    • 0
      Вот только нужно делать сразу кучу патченных версий. Потому что многим людям нравятся разные старые версии скайпа под Windows.
      Мне, например, очень хотелось бы назад Windows-версию 4.2 версии.
      • 0
        Я думаю, что можно начать именно с версии 4.2 — а остальные версии делать по мере появления желающих.
        • 0
          Или я что-то не понял… Но все уже давно есть, 4.2, 5.5, 5.9 например, тут. Сам источник похоже с forum.ru-board.com.
    • 0
      Есть уже собранные портативные версии под windows rutracker.org/forum/viewtopic.php?t=4393745.
      • 0
        Ооо, спасибо, работает =)
  • 0
    Спешу сообщить, что не работает. Логи привести не могу: пишу из дома, а не работает на 14.04, ни свежий 4.3, ни 4.2 с патчем. (попробую в понедельник обратиться к админу, но у руководителя на федорке всё ок)
    • 0
      Официальный тоже не работает?
      • 0
        Неа, я и из реп ставил, и руками с оффсайта.
  • 0
    Viber не требует активации через смартфон. Там можно активировать кодом, который присылается по смс или надиктовывается роботом. Сам использую его на ПК, не имея на телефоне.
  • 0
    При установке последних версий скайпа — skypetab работал «неполностью», вкладки были, но контакт-лист плавал отдельно.

    Спасибо за сборку. Теперь skypetab работает как надо.

    ЗЫ А кто знает ещё какие-нить плюшки, типа skypetab и совместимый с оным?
  • 0
    А как насчёт обновления протокола связи? Мне, к примеру. пришлось обновляться вовсе не из-за звука, а банально из-за отсутствия возможности войти в.
    • +1
      Эта версия и была сделана для того, чтобы можно было войти в старую версию skype. Похоже протокол они не обновляли, раз работает старая версия.
  • 0
    Что-то сломалось в сборке.
    Или это только у меня проблемы со входом?
    • 0
      У меня работает.

      Какую ошибку выдает? Что именно не работает?
      • 0
        Не удается соединится с сервером.
        В общем как при насильном обновление клиента.
        Поставил последнюю версию из репозитария — зашел сразу.
        • 0
          тЬся :D

          В общем:
          — Вчера в начале вечера отказал скайп, после дисконекта (перезагрузки роутера) интернета. Вылетело окно «логина и пароля» и писало «не удается соединиться с сервером». Я забил.
          — Сегодня утром не захотело также заходить. Я пробовал переустановить ещё раз скайп на пакет из топика, не снося, поверх. Результат не изменился.
          — Установил поверх из репозитария. Получилось войти.
          — Сейчас снёс скайп, иначе не ставился поверх данный пакет. Установили и о чудеса, вошел без проблем!
          • 0
            Это очень тревожный звонок, я буду смотреть как оно себя дальше будет вести, но есть вероятность, что придется искать другой способ обхода.

            Есть вариант — сделать новую версию со встроенным apulse, но это на крайний случай, если совсем работать перестанет старая версия.

            По поводу того, что помогла установка новой версии, а потом переустановка на старую — про это уже писали, через какое-то время этот способ перестает работать, так что будьте готовы на всякий случай.
            • 0
              Я выше писал, что это ради skypetab, поэтому новая версия, сами понимаете, без разницы какая и выбор будет в пользу официальной.
          • 0
            Продолжаю держать всех вкурсе!

            Сегодня опять слетел, пока спал :)
            Переустановка на новую и откат не помогли.

            Полез на сайт PPA скайптаба в надежде, что kekekeks выпустил новую. И оказывается действительно есть от июня месяца, а у меня оказывается PPA был отключен. В итоге обновил и скайптаб заработал как надо с новым скайпом.

            Так что с вашей модификацией, уважаемый kodx, придется попращаться. Спасибо за вашу модификацию.
            • 0
              Рад, что кому-то было полезно.
              Если работает с новой версией, то имеет смысл на неё перейти. Тем более, что было и так понятно, что это не навсегда.

              Сам пользуюсь своей версией и уже пережил несколько слётов. Решалось всё корректировкой файла конфигурации. Если совсем перестанет работать, то перейду на apulse+skype.
              • 0
                apulse+skype реально хорош, особенно если речь идёт о 32-битном хосте
                • 0
                  А какие проблемы могут быть на 64-битной системе?
                  • 0
                    32-битный скайп в моём случае требует 32-битный апульс. Который требует 32-битный alsa-что-то-там. А это оказалось геморроем.

                    Может быть, вам окажется проще.
                    • 0
                      Собрал пакет нового skype вместе с apulse(все в одном пакете), работа проверялась на ubuntu trusty.
                      Ссылка на мега.

                      Если используете профиль для apparmor, то нужно будет прописать
                      /usr/bin/skype-bin
                      и доступ в каталог /usr/lib/skype
                      Если что-то не сработает — напишите мне в личку, чтобы тут не засорять.
  • 0
    Спасибо
  • 0
    Для тех, у кого слетел этот скайп

    Я поставил себе Skype 4.3 с программой apulse, которая эмулирует pulseaudio ( github.com/i-rinat/apulse, habrahabr.ru/post/241045 ) и всё работает. Если у вас 64-битная ОС, то собирайте с опцией -m32 либо просто соберите в 32-битном chroot'е (во всяком случае у меня в Debian'е эти методы прокатили). Иными словами, программа, эмулирующая pulseaudio уже существует и это здрово! Она пишется нашим российским разработчиком Ринатом Ибрагимовым ( github.com/i-rinat ) как раз для обхода ситуации со Skype'ом

Только зарегистрированные пользователи могут оставлять комментарии. Войдите, пожалуйста.