26

Odp: Przesyłanie audio na żywo

no dziękuje za zwrócenie uwagi, ale nie o to akurat prosiłem, tylko o pomoc przy moim podsłuchu tongue

27

Odp: Przesyłanie audio na żywo

To że się kończy to albo wynika z jakiegoś błędu albo proces po prostu umiera. Jak chcesz zdalnie to po prostu zrób sobie stronę www na której masz włącz/wyłącz. Lub wyślij polecenie przez ssh (plink...) ze zdalnego komputera który to zrobi. Lub  napisz aplikację na androida który wykona odpowiednie polecnia ssh. Lub wykorzystaj gotowca na androida którego oskryptujesz i masz.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

28

Odp: Przesyłanie audio na żywo

już działa ok. Wina leżała po stronie ustawień darkice, wczoraj za dużo się bawiłem i przypadkiem zmieniłem czas z 0 na 60s, a w tym przypadku 0 oznaczało ciągłe działanie. Co do zdalnego włączania/wyłączania, to widze możliwości jest dużo. Prawdopodobnie będe próbował to zrobić na stronce www, bo już częściowo taka powstała. Dzięki za podpowiedzi smile

29 (edytowany przez mailseb 2012-10-05 22:21:14)

Odp: Przesyłanie audio na żywo

Nie chce zakladac kolejnego tematu a mam 1 z w/w problemów, instaluję wszystko zgodnie z instrukcja z http://openrouter.info/forum/viewtopic. … 8c5a#p3488 , konfiguracja na mp3 czyli z darkice, wszystko instaluje się bez problemow na exroot, icecast odpala się prawidłowo:

icecast -b -c /etc/icecast.xml
Starting icecast2
Detaching from the console
Changed groupid to 65534.
Changed userid to 65534.

ale darkice wysypuje sie z errorem:

# darkice
darkice: can't load library 'libmp3lame.so.0'

probowałem namierzyc rc4/rc5 ale juz nigdzie ich nie ma, masz jakas inna sugestię Cezary?


moje pakiety

g# opkg list-installed
alsa-lib - 1.0.24.1-1
base-files - 43.32-r29592
busybox - 1.15.3-3.4
crda - 1.1.1-1
darkice - 1.0-2
dnsmasq - 2.55-6.1
dropbear - 0.53.1-5
firewall - 2-34.8
glib2 - 2.26.1-2
hotplug2 - 1.0-beta-3
icecast - 2.3.2-2
iptables - 1.4.6-3.1
iptables-mod-conntrack - 1.4.6-3.1
iptables-mod-nat - 1.4.6-3.1
iw - 0.9.22-2
kernel - 2.6.32.27-1
kmod-ath - 2.6.32.27+2011-11-15-1
kmod-ath9k - 2.6.32.27+2011-11-15-1
kmod-ath9k-common - 2.6.32.27+2011-11-15-1
kmod-button-hotplug - 2.6.32.27-1
kmod-cfg80211 - 2.6.32.27+2011-11-15-1
kmod-crc-ccitt - 2.6.32.27-1
kmod-crypto-aes - 2.6.32.27-1
kmod-crypto-arc4 - 2.6.32.27-1
kmod-crypto-core - 2.6.32.27-1
kmod-i2c-core - 2.6.32.27-1
kmod-input-core - 2.6.32.27-1
kmod-input-gpio-buttons - 2.6.32.27-1
kmod-input-polldev - 2.6.32.27-1
kmod-ipt-conntrack - 2.6.32.27-1
kmod-ipt-core - 2.6.32.27-1
kmod-ipt-nat - 2.6.32.27-1
kmod-ipt-nathelper - 2.6.32.27-1
kmod-leds-gpio - 2.6.32.27-1
kmod-mac80211 - 2.6.32.27+2011-11-15-1
kmod-nls-base - 2.6.32.27-1
kmod-ppp - 2.6.32.27-1
kmod-pppoe - 2.6.32.27-1
kmod-sound-core - 2.6.32.27-1
kmod-usb-audio - 2.6.32.27-1
kmod-usb-core - 2.6.32.27-1
kmod-usb-ohci - 2.6.32.27-1
kmod-usb2 - 2.6.32.27-1
kmod-video-core - 2.6.32.27-1
kmod-video-gspca-core - 2.6.32.27-1
kmod-video-uvc - 2.6.32.27-1
lame - 398-2-3
libc - 0.9.30.1-43.32
libcurl - 7.21.7-1
libgcc - 4.3.3+cs-43.32
libiconv - 5
libip4tc - 1.4.6-3.1
libiwinfo - 18
libiwinfo-lua - 18
libjpeg - 6b-1
liblua - 5.1.4-7
libncurses - 5.7-2
libnl-tiny - 0.1-1
libogg - 1.1.4-2
libopenssl - 0.9.8r-1
libpthread - 0.9.30.1-43.32
librt - 0.9.30.1-43.32
libstdcpp - 4.3.3+cs-43.32
libuci - 12012009.7-4
libuci-lua - 12012009.7-4
libvorbis - 1.2.3-1
libxml2 - 2.7.8-1
libxslt - 1.1.26-1
libxtables - 1.4.6-3.1
lua - 5.1.4-7
luci - 0.10.0-1
luci-app-firewall - 0.10.0-1
luci-i18n-english - 0.10.0-1
luci-lib-core - 0.10.0-1
luci-lib-ipkg - 0.10.0-1
luci-lib-lmo - 0.10.0-1
luci-lib-nixio - 0.10.0-1
luci-lib-sys - 0.10.0-1
luci-lib-web - 0.10.0-1
luci-mod-admin-core - 0.10.0-1
luci-mod-admin-full - 0.10.0-1
luci-proto-core - 0.10.0-1
luci-proto-ppp - 0.10.0-1
luci-sgi-cgi - 0.10.0-1
luci-theme-base - 0.10.0-1
luci-theme-openwrt - 0.10.0-1
mc - 4.7.5.2-1
mjpg-streamer - r136-1
mtd - 13
opkg - 576-2
ppp - 2.4.4-16.1
ppp-mod-pppoe - 2.4.4-16.1
swconfig - 9
uci - 12012009.7-4
udevtrigger - 106-1
uhttpd - 28
wireless-tools - 29-4
wpad-mini - 20111103-2
zlib - 1.2.3-5

30

Odp: Przesyłanie audio na żywo

lame-lib zainstaluj...

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

31

Odp: Przesyłanie audio na żywo

neutral faktycznie instalacja pomogłą, próbowałem zainstalować lame-lib wcześniej, po updat'cie opkg ale zgłaszało mi brak pakietu, może jakąś literówkę zrobiłem hmm. Ten problem rozwiązany.

Teraz mam problem z obciążeniem, może wiesz co jest przyczyną? Po starcie darkice'a obciążenie wzrasta odrazu na maksa, konfiguracja darkice/icecast, taka sama jak w instrukcji (poniżej dołączone). Uruchamiam to na 1043nd z podpiętym pendrivem 8gb

# darkice
DarkIce 1.0 live audio streamer, http://code.google.com/p/darkice/
Copyright (c) 2000-2007, Tyrell Hungary, http://tyrell.hu/
Copyright (c) 2008-2010, Akos Maroy and Rafael Diniz
This is free software, and you are welcome to redistribute it
under the terms of The GNU General Public License version 3 or
any later version.

Using config file: /etc/darkice.cfg
Using OSS DSP input device: /dev/dsp
Using POSIX real-time scheduling, priority 98


druga konsola z top:
 PID  PPID USER     STAT   VSZ %MEM %CPU COMMAND
3302  3301 root     R     3532  12%  94% darkice
3299  1405 root     S     3532  12%   1% darkice

# ps aux | grep dark
 3299 root      3532 S    darkice
 3301 root      3532 S    darkice
 3302 root      3532 R    darkice

# free
              total         used         free       shared      buffers
  Mem:        29428        27536         1892            0         1128
 Swap:            0            0            0
Total:        29428        27536         1892
# cat /etc/darkice.cfg
# sample DarkIce configuration file, edit for your needs before using
# see the darkice.cfg man page for details

# this section describes general aspects of the live streaming session
[general]
duration        = 0         # duration of encoding, in seconds. 0 means forever
bufferSecs      = 25        # size of internal slip buffer, in seconds
reconnect       = yes       # reconnect to the server(s) if disconnected

# this section describes the audio input that will be streamed
[input]
device          = /dev/dsp  # OSS DSP soundcard device for the audio input
sampleRate      = 22050     # sample rate in Hz. try 11025, 22050 or 44100
bitsPerSample   = 16        # bits per sample. try 16
channel         = 1         # channels. 1 = mono, 2 = stereo

# this section describes a streaming connection to an IceCast2 server
# there may be up to 8 of these sections, named [icecast2-0] ... [icecast2-7]
# these can be mixed with [icecast-x] and [shoutcast-x] sections
[icecast2-0]
bitrateMode     = cbr       # average bit rate
format          = mp3       # format of the stream: ogg vorbis
bitrate         = 64        # bitrate of the stream sent to the server
server          = localhost
                            # host name of the server
port            = 8000      # port of the IceCast2 server, usually 8000
password        = hackme    # source password to the IceCast2 server
mountPoint      = mic.mp3   # mount point of this stream on the IceCast2 server
name            = Pluskwa
                            # name of the stream
description     = Audio openwrt
                            # description of the stream
url             = http://www.yourserver.com
                            # URL related to the stream
genre           = mowa      # genre of the stream
public          = yes       # advertise this stream?
localDumpFile   = /overlay/dump.mp3  # local dump file
# df -h
Filesystem                Size      Used Available Use% Mounted on
/dev/root                 1.9M      1.9M         0 100% /rom
tmpfs                    14.4M    152.0K     14.2M   1% /tmp
tmpfs                   512.0K         0    512.0K   0% /dev
/dev/sda2                 6.9G    155.9M      6.8G   2% /overlay
mini_fo:/overlay          1.9M      1.9M         0 100% /
~# cat /etc/icecast.xml
<icecast>
    <limits>
        <clients>5</clients>
        <sources>1</sources>
        <threadpool>1</threadpool>
        <queue-size>524288</queue-size>
        <client-timeout>30</client-timeout>
        <header-timeout>15</header-timeout>
        <source-timeout>20</source-timeout>
        <!-- If enabled, this will provide a burst of data when a client
             first connects, thereby significantly reducing the startup
             time for listeners that do substantial buffering. However,
             it also significantly increases latency between the source
             client and listening client.  For low-latency setups, you
             might want to disable this. -->
        <burst-on-connect>1</burst-on-connect>
        <!-- same as burst-on-connect, but this allows for being more
             specific on how much to burst. Most people won't need to
             change from the default 64k. Applies to all mountpoints  -->
        <burst-size>65535</burst-size>
    </limits>

    <authentication>
        <!-- Sources log in with username 'source' -->
        <source-password>hackme</source-password>
        <!-- Relays log in username 'relay' -->
        <relay-password>hackme</relay-password>

        <!-- Admin logs in with the username given below -->
        <admin-user>admin</admin-user>
        <admin-password>hackme</admin-password>
    </authentication>
    <hostname>localhost</hostname>
    <fileserve>1</fileserve>

    <paths>
                <!-- basedir is only used if chroot is enabled -->
        <basedir>/usr/share/icecast</basedir>

        <!-- Note that if <chroot> is turned on below, these paths must both
             be relative to the new root, not the original root -->
        <logdir>/var/log/icecast</logdir>
        <webroot>/usr/share/icecast/web</webroot>
        <adminroot>/usr/share/icecast/admin</adminroot>
        <alias source="/" dest="/status.xsl"/>
    </paths>

    <logging>
        <accesslog>access.log</accesslog>
        <errorlog>error.log</errorlog>
        <!-- <playlistlog>playlist.log</playlistlog> -->
        <loglevel>3</loglevel> <!-- 4 Debug, 3 Info, 2 Warn, 1 Error -->
        <logsize>10000</logsize> <!-- Max size of a logfile -->
        <!-- If logarchive is enabled (1), then when logsize is reached
             the logfile will be moved to [error|access|playlist].log.DATESTAMP,
             otherwise it will be moved to [error|access|playlist].log.old.
             Default is non-archive mode (i.e. overwrite)
        -->
        <!-- <logarchive>0</logarchive> -->
    </logging>

    <security>
        <chroot>0</chroot>
        <changeowner>
            <user>nobody</user>
            <group>nogroup</group>
        </changeowner>
    </security>
</icecast>

32

Odp: Przesyłanie audio na żywo

u mnie też ten problem występował. Darkicie strasznie zamulało 1043. Nie doszedłem do tego dlaczego tak się działo, ale może to być poprostu wina za słabego sprzętu smile ja nie potrzebowałem przesyłania audio cały czas, tylko wtedy gdy wchodziłem na stronke, więc wykonałem sobie zdalne uruchamianie podsłuchu przez www. Tutaj jest coś na ten temat http://eko.one.pl/forum/viewtopic.php?id=2631. Dodatkowo proces ten uruchamiam i ubijam za pomocą przycisku routera, co już masz opisane w poradnikach jak to zrobić.

33

Odp: Przesyłanie audio na żywo

Wygląda na to że ustawienia sample rate ma tutaj największy wpływ na obciążenie, przy 22050 albo wyższym zazwyczaj jest w granicach >95%, przy 11025 (słabsza jakość) oscyluje w granicach ~  58%, przy 16000 jest chyba w granicach >85%. Używam 11025 do czasu aż znajdę coś lepszego.

34

Odp: Przesyłanie audio na żywo

tak zgadza się, ustawieniami można troche odciążyć router

35

Odp: Przesyłanie audio na żywo

Podepnę się pod temat aby nie zakładać nowego. Kamerka z mikrofonem USB. Odpaliłem serwer według tego artykułu: Przesyłanie audio na żywo. Ustawiłem savefile na na pendrive'a. Jak odpalam serwer:

icecast -b -c /etc/icecast.xml

to pojawiają się jakieś ostrzeżenia ale serwer startuje:

Starting icecast2
Detaching from the console
root@OpenWrt:~# [2016-09-09  09:56:14] WARN CONFIG/_parse_root Warning, <hostname> not configured, using default value "localhost". This will cause problems, e.g. with YP directory listings.
[2016-09-09  09:56:14] WARN CONFIG/_parse_root Warning, <location> not configured, using default value "Earth".
[2016-09-09  09:56:14] WARN CONFIG/_parse_root Warning, <admin> contact not configured, using default value "icemaster@localhost".
Changed groupid to 65534.
Changed supplementary groups based on user: nobody.
Changed userid to 65534.
[2016-09-09  09:56:14] WARN fserve/fserve_recheck_mime_types Cannot open mime types file /etc/mime.types

Następnie odpalam ices /etc/ices.xml

Po wejściu na stronę http://IP_routera:8000 strona działa i coś tam słychać jak kliknę Play ale słychać tylko 5 sekund i później nic nie słychać, po 20 sekundach znowu słuchać ze 3 sekundy i tak w kółko. Zmieniłem samplerate na 8000 ale nadal to samo. Tego się nie da używać. Czy nie da się czegoś z tym zrobić aby był ciągły strumień jak jest w MJPG-streamer z obrazem?

Czegoś tu nie rozumiem, po co jest plik stream_mic.ogg skoro dźwięk ma być strumieniowany a nie zapisywany na nośnik?

W nagraniu słychać jakieś buczenie - jakby pracę procesora - a na Windows tego nie ma i mikrofon nagrywa całkiem przyzwoicie.

Da się coś z tym zrobić, a może istnieją inne lepsze rozwiązania do strumieniowania? Próbowałem też artykułu podsłuch w openwrt? i tam też słychać to buczenie i jak załapie to arecord nagrywa nawet przyzwoicie ale tylko po pierwszym uruchomieniu nagrywania. W następnych nagraniach jest jakby czkawa i jakieś zakłócenia. Tylko co któreś uruchomienie nagrywania nagrywa w miarę czysty dźwięk.

Odpalone inne usługi: tftp, samba, vsftpd, p910nd, uhttpd, NFS, MJPG-Streamer ale po wyłączeniu MJPG-Streamera to samo.