Results 1 to 15 of 15

Thread: Pulseaudio на роутере Asus

  1. #1

    Lightbulb Pulseaudio на роутере Asus

    Кто-нибудь пробовал собрать pulseaudio?
    Я собрал с костылями, udev не удалось собрать, ругается на отсутствующие хедеры linux/bsg.h
    Ругался так же на json >= 0.9, изменил в configure.ac json => json-c и собралось, но при запуске pulseaudio ругается на отсутствие модулей module-alsa-sink, и т.д. хотя они присутствуют в директории и module-detect pulseaudio подгружает

    Ubuntu 12.04 x64
    Last edited by hawok; 04-07-2013 at 08:46.

  2. #2
    Join Date
    Nov 2006
    Location
    Russia, Moscow
    Posts
    3,640
    Quote Originally Posted by hawok View Post
    Кто-нибудь пробовал собрать pulseaudio?
    Думаю, что и не получится. Этот монстр едва на десктопе с костылями ворочается, а уж на embedded...

    ALSA должно работать.

  3. #3
    Quote Originally Posted by lly View Post
    Думаю, что и не получится. Этот монстр едва на десктопе с костылями ворочается, а уж на embedded...

    ALSA должно работать.
    в репозитории openwrt он есть и люди ставили http://habrahabr.ru/post/184110/ так, что должно завестись
    ALSA и ESD работают, но esd мне не подходит
    Last edited by hawok; 04-07-2013 at 13:33.

  4. #4
    таки получилось собрать и запустить pulseaudio, могу поделиться успехами с сообществом, если мэйнтейнеры позволят

  5. #5
    Quote Originally Posted by hawok View Post
    таки получилось собрать и запустить pulseaudio, могу поделиться успехами с сообществом, если мэйнтейнеры позволят
    Для творчества не нужно ничьё разрешение! Всегда пожалуйста.

    Тем более, раз доказана работоспособность, добавим в репозиторий.

  6. #6
    Что тогда от меня требуется? пакет и все или еще, что то?

  7. #7
    Join Date
    Oct 2009
    Posts
    529
    Blog Entries
    1
    Quote Originally Posted by hawok View Post
    Что тогда от меня требуется? пакет и все или еще, что то?
    потребуется файл Makefile для пакета (и патчи, если делались)

  8. #8
    Join Date
    Jan 2011
    Location
    Нижний Новгород
    Posts
    543
    step by step or howto
    главное, чтоб entware team смогли воспроизвести и запечатлеть Ваши действия ))
    DIR-320 & RTN-r3297 from USB>r3478>r3539>r3722>r3815>r3877>r4051>r4990>r5163

  9. #9
    Quote Originally Posted by MercuryV View Post
    потребуется файл Makefile для пакета (и патчи, если делались)
    Makefile
    Code:
    #
    # Copyright (C) 2011 OpenWrt.org
    #
    # This is free software, licensed under the GNU General Public License v2.
    # See /LICENSE for more information.
    #
    
    include $(TOPDIR)/rules.mk
    
    PKG_NAME:=pulseaudio
    PKG_VERSION:=4.0
    PKG_RELEASE:=1
    
    PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
    PKG_SOURCE_URL:=http://freedesktop.org/software/pulseaudio/releases/
    PKG_MD5SUM:=591f211db2790a7e4d222f2dc6858db3
    
    PKG_BUILD_DIR=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION)
    PKG_BUILD_DEPENDS:=intltool/host
    
    PKG_FIXUP:=autoreconf
    
    PKG_INSTALL = 1
    
    include $(INCLUDE_DIR)/package.mk
    include $(INCLUDE_DIR)/nls.mk
    
    #TODO: split pulse into executable and library (or even better into several libraries since they're used as loadable modules, so not linked into)
    define Package/pulseaudio/Default
      SECTION:=sound
      CATEGORY:=Sound
      DEPENDS:=+libspeexdsp +libsndfile +libltdl +libpthread \
            +librt +alsa-lib +libjson +libopenssl $(ICONV_DEPENDS) $(INTL_DEPENDS)
      TITLE:=Network sound server
      URL:=http://www.pulseaudio.org
      PROVIDES:=pulseaudio
    endef
    
    define Package/pulseaudio-daemon
      $(call Package/pulseaudio/Default)
      VARIANT:=noavahi
    endef
    
    define Package/pulseaudio-daemon-avahi
      $(call Package/pulseaudio/Default)
      DEPENDS+=+dbus +libavahi-client +avahi-daemon
      TITLE+= (avahi)
      VARIANT:=avahi
    endef
    
    define Package/pulseaudio/Default/description
      PulseAudio (formerly Polypaudio) is a cross-platform, networked sound server.
    endef
    
    define Package/pulseaudio-daemon/description
      $(call Package/pulseaudio/Default/description)
    endef
    
    define Package/pulseaudio-daemon-avahi/description
      $(call Package/pulseaudio/Default/description)
      This package is compiled against dbus and avahi.
    endef
    
    define Package/pulseaudio-daemon/conffiles
    /etc/pulse/client.conf
    /etc/pulse/daemon.conf
    /etc/pulse/default.pa
    /etc/pulse/system.pa
    endef
    
    define Package/pulseaudio-daemon-avahi/conffiles
    /etc/pulse/client.conf
    /etc/pulse/daemon.conf
    /etc/pulse/default.pa
    /etc/pulse/system.pa
    endef
    
    define Package/pulseaudio-tools
      SECTION:=sound
      CATEGORY:=Sound
      DEPENDS:=+libsndfile pulseaudio
      TITLE:=Tools for Pulseaudio
      URL:=http://www.pulseaudio.org
      VARIANT:=noavahi
    endef
    
    define Package/pulseaudio-profiles
      SECTION:=sound
      CATEGORY:=Sound
      DEPENDS:=pulseaudio
      TITLE:=Profiles for Pulseaudio
      URL:=http://www.pulseaudio.org
    endef
    
    CONFIGURE_ARGS += \
            --with-system-user=pulse \
            --with-system-group=pulse \
            --with-access-group=audio \
            --with-database=simple \
            --enable-alsa \
            --disable-hal \
            --disable-gconf \
            --disable-tcpwrap \
            --disable-nls \
            --disable-manpages \
            --enable-oss-output \
            --disable-oss-wrapper \
            --disable-samplerate \
            --disable-per-user-esound-socket \
            --disable-solaris \
            --disable-gtk2 \
            --disable-glib2 \
            --disable-jack \
            --disable-asyncns \
            --disable-lirc \
            --disable-bluez \
            --without-caps \
            --without-fftw
    
    ifeq ($(BUILD_VARIANT),avahi)
    CONFIGURE_ARGS += \
            --enable-avahi \
            --enable-dbus
    endif
    
    ifeq ($(BUILD_VARIANT),noavahi)
    CONFIGURE_ARGS += \
            --disable-avahi \
            --disable-dbus
    endif
    
    CONFIGURE_VARS += \
            PKG_CONFIG_LIBDIR="$(STAGING_DIR)/opt/lib/pkgconfig"
    
    #SUPP_LIBS:=-L$(INTL_PREFIX)/lib -L$(ICONV_PREFIX)/lib
    TARGET_CFLAGS += -std=gnu99
    
    define Build/InstallDev
            $(INSTALL_DIR) \
                    $(1)/opt/lib/pkgconfig \
                    $(1)/opt/include/pulse \
                    $(1)/opt/lib \
                    $(1)/opt/lib/pulseaudio
            $(CP) \
                    $(PKG_INSTALL_DIR)/opt/include/pulse/* \
                    $(1)/opt/include/pulse
            $(CP) \
                    $(PKG_INSTALL_DIR)/opt/lib/pkgconfig/*.pc \
                    $(1)/opt/lib/pkgconfig
            $(CP) \
                    $(PKG_INSTALL_DIR)/opt/lib/*.so* \
                    $(1)/opt/lib/
            $(CP) \
                    $(PKG_INSTALL_DIR)/opt/lib/pulseaudio/* \
                    $(1)/opt/lib/pulseaudio/
    endef
    
    define Package/pulseaudio-daemon/install
            $(INSTALL_DIR) \
                    $(1)/opt/etc/pulse \
                    $(1)/opt/etc/init.d \
                    $(1)/opt/bin \
                    $(1)/opt/lib \
                    $(1)/opt/lib/pulseaudio \
                    $(1)/opt/lib/pulse-$(PKG_VERSION)/modules
    
            $(INSTALL_BIN) \
                    $(PKG_INSTALL_DIR)/opt/bin/pulseaudio \
                    $(1)/opt/bin/pulseaudio
    
            $(INSTALL_BIN) \
                    ./files/pulseaudio.init \
                    $(1)/opt/etc/init.d/S100pulseaudio
    
            $(INSTALL_CONF) \
                    $(PKG_INSTALL_DIR)/opt/etc/pulse/* \
                    $(1)/opt/etc/pulse
    
            $(CP) \
                    $(PKG_INSTALL_DIR)/opt/lib/*.so* \
                    $(1)/opt/lib/
    
            $(CP) \
                    $(PKG_INSTALL_DIR)/opt/lib/pulseaudio/* \
                    $(1)/opt/lib/pulseaudio/
    
            $(CP) \
                    $(PKG_INSTALL_DIR)/opt/lib/pulse-$(PKG_VERSION)/modules/lib*.so \
                    $(1)/opt/lib/
    
            $(CP) \
                    $(PKG_INSTALL_DIR)/opt/lib/pulse-$(PKG_VERSION)/modules/module*.so \
                    $(1)/opt/lib/pulse-$(PKG_VERSION)/modules/
    
            chmod -R 0644 $(1)/opt/etc/pulse/*
    endef
    
    define Package/pulseaudio-daemon-avahi/install
            $(INSTALL_DIR) \
                    $(1)/opt/etc/pulse \
                    $(1)/opt/etc/init.d \
                    $(1)/opt/bin \
                    $(1)/opt/lib \
                    $(1)/opt/lib/pulseaudio \
                    $(1)/opt/lib/pulse-$(PKG_VERSION)/modules \
                    $(1)/opt/etc/dbus-1/system.d
    
            $(INSTALL_BIN) \
                    $(PKG_INSTALL_DIR)/opt/bin/pulseaudio \
                    $(1)/opt/bin/pulseaudio
    
            $(INSTALL_BIN) \
                    ./files/pulseaudio.init \
                    $(1)/opt/etc/init.d/pulseaudio
    
            $(INSTALL_CONF) \
                    $(PKG_INSTALL_DIR)/opt/etc/pulse/* \
                    $(1)/opt/etc/pulse
    
            $(CP) \
                    $(PKG_INSTALL_DIR)/opt/lib/*.so* \
                    $(1)/opt/lib/
    
            $(CP) \
                    $(PKG_INSTALL_DIR)/opt/lib/pulseaudio/* \
                    $(1)/opt/lib/pulseaudio/
    
            $(CP) \
                    $(PKG_INSTALL_DIR)/opt/lib/pulse-$(PKG_VERSION)/modules/lib*.so \
                    $(1)/opt/lib/
    
            $(CP) \
                    $(PKG_INSTALL_DIR)/opt/lib/pulse-$(PKG_VERSION)/modules/module*.so \
                    $(1)/opt/lib/pulse-$(PKG_VERSION)/modules/
    
            $(INSTALL_CONF) \
                    $(PKG_INSTALL_DIR)/opt/etc/dbus-1/system.d/pulseaudio-system.conf \
                    $(1)/opt/etc/dbus-1/system.d/pulseaudio-system.conf
    
            chmod -R 0644 $(1)/opt/etc/pulse/* $(1)/opt/etc/dbus-1/system.d/pulseaudio-system.conf
    endef
    
    define Package/pulseaudio-tools/install
            $(INSTALL_DIR) \
                    $(1)/opt/bin
    
            $(INSTALL_BIN) \
                    $(PKG_INSTALL_DIR)/opt/bin/pa* \
                    $(1)/opt/bin/
    endef
    
    define Package/pulseaudio-profiles/install
            $(INSTALL_DIR) \
                    $(1)/opt/share/pulseaudio/alsa-mixer/paths \
                    $(1)/opt/share/pulseaudio/alsa-mixer/profile-sets
    
            $(INSTALL_CONF) \
                    $(PKG_INSTALL_DIR)/opt/share/pulseaudio/alsa-mixer/paths/* \
                    $(1)/opt/share/pulseaudio/alsa-mixer/paths
    
            $(INSTALL_CONF) \
                    $(PKG_INSTALL_DIR)/opt/share/pulseaudio/alsa-mixer/profile-sets/* \
                    $(1)/opt/share/pulseaudio/alsa-mixer/profile-sets
    endef
    
    $(eval $(call BuildPackage,pulseaudio-daemon))
    $(eval $(call BuildPackage,pulseaudio-daemon-avahi))
    $(eval $(call BuildPackage,pulseaudio-tools))
    $(eval $(call BuildPackage,pulseaudio-profiles))
    files/pulseaudio.init
    Code:
    #!/bin/sh
    
    ENABLED=yes
    PROCS=pulseaudio
    ARGS=" --daemonize --system --disallow-exit --disallow-module-loading --disable-shm --exit-idle-time=-1"
    PRECMD="chmod 777 /dev/snd/*"
    PREARGS=""
    DESC=$PROCS
    PATH=/opt/sbin:/opt/bin:/opt/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
    
    . /opt/etc/init.d/rc.func
    так же необходимо добавить юзера в /etc/passwd
    pulse:!:1000:1000::/home/pulse:

    и группу pulse и audio(должна быть добавлена, после установки alsa)
    в группу audio необходимо добавить юзера pulse
    /etc/group

    pulse:!:1000:
    audio:x:1001ulse

    как это сделать в пакете я не знаю, добавлял сам вручную, делал все на прошивке энтузиастов на RT-N16

    P.S: собрал gstreamer, liboil из репозитория openwrt, и сделал Makefile для gmrender-resurrect, удобная вещь для стриминга аудио, фото, видео на комп (в роутере конечно будет работать только аудио), при помощи upnp(dlna), использую для воспроизведения музыки с телефона (android) тоже могу поделиться. еще собрал поисковый движок sphinx, очень быстрый, решил, что раз уж Mysql есть то и сфинкс не помешает.
    каким образом вам это все передавать? в ЛС?
    Last edited by hawok; 09-07-2013 at 23:39.

  10. #10
    Join Date
    Oct 2009
    Posts
    529
    Blog Entries
    1
    Quote Originally Posted by hawok View Post
    каким образом вам это все передавать? в ЛС?
    см. ЛС
    передал контакты для связи

  11. #11

    А где пакет?

    Я что то не так делаю?
    Code:
    Collected errors:
     * opkg_install_cmd: Cannot install package pulseaudio-daemon.
    Или пакет пока еще не собран?
    От других прошивок (типа OpenWRT) он не встанет на Олеговскую?

  12. #12
    Спасибо MercuryV, я поставил тулчейн и запустил компиляцию.
    все зависимости собрались, кажеться, нормально, а вот сам pulseaudio выдает:
    Code:
    <...>
    Reading makefile `/home/user/Entware/openwrt_trunk/include/autotools.mk' (search path) (no ~ expansion)...
    Reading makefile `/home/user/Entware/openwrt_trunk/include/nls.mk' (search path) (no ~ expansion)...
    make[2]: Entering directory `/home/user/Entware/openwrt_trunk/feeds/packages/sound/pulseaudio'
    Makefile:269: *** missing separator.  Stop.
    Makefile использовал из этой темы...

  13. #13
    Join Date
    Oct 2009
    Posts
    529
    Blog Entries
    1
    Quote Originally Posted by Toher View Post
    Makefile:269: *** missing separator. Stop.
    при помощи libastral предполагаю, что в 269 строке потеряна закрывающая скобка
    На всякий случай: отступы в начале строк в Makefile должны быть не пробелами, а табуляцией.
    Я рекомендую самостоятельно модифицировать существующий опенвртшный Makefile по образу и подобию того, что в теме.

  14. #14
    Еще раз Большое Человеческое Спасибо.
    Не имея соответствующих знаний, приходится именно "танцевать с бубном". То есть выполнять кучу случайных действий, которые иногда приводят к успеху.
    Эх, если б у меня тоже была такая либа, я в ней узнал бы все ответы... 42.
    К делу:
    Часа через 2 сравнивания скобок я на это забил и стал править openwrt-шный Makefile.
    /etc заменил на /opt/etc
    /opt/usr на роутере не нашел, поэтому /usr поменял на /opt

    Собралось... установилось без ошибок, все зависимости скачались из основного репозитория.
    Пока не разобрался со скриптом запуска в init.d
    при старте в ручную /opt/bin/pulseaudio -D --system
    вылетает с ошибкой "Daemon startup failed", пока буду ковырять сам. (libastral и libtelepat, на текущий момент, в зависимостях не значаться)
    Attached Files Attached Files
    Last edited by Toher; 21-12-2013 at 07:26.

  15. #15
    Кому-нибудь еще требуется помощь с pulseaudio? у меня настроено все и работает вполне неплохо

Similar Threads

  1. Нужно получить 2 ip адреса и 2 vlan на роутере Asus
    By muxeu in forum Russian Discussion - РУССКИЙ (RU)
    Replies: 117
    Last Post: 11-11-2015, 01:27
  2. Настройка DynDNS на роутере Asus
    By idtelecom in forum Russian Discussion - РУССКИЙ (RU)
    Replies: 360
    Last Post: 23-08-2015, 16:31
  3. SSD вместо HDD на роутере Asus
    By BuHT in forum Russian Discussion - РУССКИЙ (RU)
    Replies: 72
    Last Post: 14-12-2014, 00:23
  4. Проблема с Huawei E392 от Мегафон/МТС/Yota на роутере Asus
    By bagira in forum Russian Discussion - РУССКИЙ (RU)
    Replies: 75
    Last Post: 05-11-2013, 12:29
  5. WiMax Yota + Comstar (SWC-U200/BCS200) на роутере Asus
    By Frogy_f in forum Russian Discussion - РУССКИЙ (RU)
    Replies: 101
    Last Post: 25-05-2012, 10:13

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •