1 (edytowany przez kamillo 2011-06-23 21:13:57)

Temat: Przesyłanie audio na żywo

Wykonałem wszystko zgodnie z poradnikiem http://openwrt.pl/doku.php/zastosowania:streaming-audio i na samym końcu pojawiły się problemy:

root@Gargoyle:~$ icecast -b -c /etc/icecast.xml
icecast: can't load library 'libcurl.so.5'
root@Gargoyle:~$ darkice & > /dev/null
root@Gargoyle:~$ darkice: can't load library 'libmp3lame.so.0'

zainstalowałem libcurl z repo, ale dalej to samo sad natomiast czegoś takiego jak libmp3lame nie potrafie znaleźć...
Ktoś posłuży pomocą?

2

Odp: Przesyłanie audio na żywo

opkg install lame-libs

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

3

Odp: Przesyłanie audio na żywo

hmm lame-lib zainstalowane i dalej to samo... z taką różnica że teraz co innego chce przy darkice

root@Gargoyle:~$ icecast -b -c /etc/icecast.xml
icecast: can't load library 'libcurl.so.5'
root@Gargoyle:~$ darkice & > /dev/null
root@Gargoyle:~$ darkice: can't load library 'libstdc++.so.6'

[1]+  Done(16)                   darkice
root@Gargoyle:~$

4

Odp: Przesyłanie audio na żywo

libstdcpp, to pierwsze - libcurl.

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

5

Odp: Przesyłanie audio na żywo

root@Gargoyle:~$ opkg install libcurl
Package libcurl (7.21.3-1) installed in root is up to date.

6

Odp: Przesyłanie audio na żywo

Masz nie taką wersję. W sensie za nową.

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

7

Odp: Przesyłanie audio na żywo

hmm no właśnie w tym problem, że nigdzie w repo nie ma starszej wersji libcurl. Co ciekawe to icecast jest tej samej daty co libcurl w repo... a chce starszego libcurl. Cezary nie posiadasz gdzieś starszej wersji libcurl, lub nie wiesz gdzie moge takową spotkać??

8

Odp: Przesyłanie audio na żywo

Masz przecież je w repo rc4

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

9

Odp: Przesyłanie audio na żywo

hmmm próbowałem z libcurl z repo rc4, rc3, rc2, rc1, później dałem starsze icecast i też próbowałem z różnym libcurl i ciągle

Package libcurl (7.21.3-1) installed in root is up to date.

10

Odp: Przesyłanie audio na żywo

Bo masz zainstalowaną nowszą wersję. Odinstaluj ją i zainstaluj tamte.

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

11

Odp: Przesyłanie audio na żywo

troche się pogubiłem. Mam zainstalować starsze icecast? Domyślam się że tak bo libcurl instaluje sie razem z icecast z tego co zauważyłem. Więc tak w rc4, sytuacja się powtórzyła, bo icecast chyba jest to samo co w rc5. Natomiast w rc3 mam problem z instalacją

root@Gargoyle:~$ opkg install http://downloads.openwrt.org/backfire/10.03.1-rc3/ar71xx/packages/icecast_2.3.2-2_ar71xx.ipk
Downloading http://downloads.openwrt.org/backfire/10.03.1-rc3/ar71xx/packages/icecast_2.3.2-2_ar71xx.ipk.
Installing icecast (2.3.2-2) to root...
Collected errors:
 * opkg_install_pkg: Package icecast md5sum mismatch. Either the opkg or the package index are corrupt. Try 'opkg update'.
 * opkg_install_cmd: Cannot install package icecast.

12

Odp: Przesyłanie audio na żywo

libcurl nie icecast.

A tak w ogóle to zainstaluj oba pakiety z rc5 i tyle.

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

13

Odp: Przesyłanie audio na żywo

hmm dalej problem z instalacją

root@Gargoyle:~$ opkg update
Downloading http://ecco.selfip.net/backfire/packages/Packages.gz.
Inflating http://ecco.selfip.net/backfire/packages/Packages.gz.
Updated list of available packages in /var/opkg-lists/eko1.
Downloading http://downloads.openwrt.org/backfire/10.03.1-rc4/ar71xx/packages/Packages.gz.
Inflating http://downloads.openwrt.org/backfire/10.03.1-rc4/ar71xx/packages/Packages.gz.
Updated list of available packages in /var/opkg-lists/packages.
root@Gargoyle:~$ opkg install http://downloads.openwrt.org/snapshots/backfire/10.03.1-RC5-testing/ar71xx/packages/icecast_2.3.2-2_ar71xx.ipk
Downloading http://downloads.openwrt.org/snapshots/backfire/10.03.1-RC5-testing/ar71xx/packages/icecast_2.3.2-2_ar71xx.ipk.
Installing icecast (2.3.2-2) to root...
Collected errors:
 * opkg_install_pkg: Package icecast md5sum mismatch. Either the opkg or the package index are corrupt. Try 'opkg update'.
 * opkg_install_cmd: Cannot install package icecast.
root@Gargoyle:~$

14

Odp: Przesyłanie audio na żywo

Ale wywal inne repo (bo masz i moje i rc4, a instalujesz z rc5)

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

15

Odp: Przesyłanie audio na żywo

a jak wywalić to repo i dodać rc5??

16

Odp: Przesyłanie audio na żywo

z /etc/opkg.conf

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

17

Odp: Przesyłanie audio na żywo

ok udało się zainstalować, najpierw zrobiłem libcurl, a później icecast i poszło, ale... znowu problemy sad

root@Gargoyle:~$ icecast -b -c /etc/icecast.xml
Starting icecast2
Detaching from the console
root@Gargoyle:~$ Changed groupid to 65534.
Changed userid to 65534.
FATAL: could not open error logging (/var/log/icecast/error.log): No such file o                    r directory
FATAL: could not open access logging (/var/log/icecast/access.log): No such file                     or directory
FATAL: Could not start logging

nawet nie mam takiego katalogu var/log/icecast

18

Odp: Przesyłanie audio na żywo

mkdir -p /var/log/icecast/

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

19

Odp: Przesyłanie audio na żywo

streaming audio działa juz ok. Mam jeszcze kilka pytań. Po każdym resecie musze od nowa wykonywać operacje:

root@Gargoyle:~$ mkdir /var/log/icecast
root@Gargoyle:~$ chown nobody.nogroup /var/log/icecast
root@Gargoyle:~$ icecast -b -c /etc/icecast.xml
Starting icecast2
Detaching from the console
root@Gargoyle:~$ Changed groupid to 65534.
Changed userid to 65534.

root@Gargoyle:~$ darkice & > /dev/null
root@Gargoyle:~$ 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

root@Gargoyle:~$


1. Jak zrobić, aby wykonywały się one automatycznie wraz z uruchamianiem routera.
2. Czy nagranie które jest przechowywane na dysku po pewnym czasie się nadpisuje/kasuje, czy będzie mi tak długo nagrywać aż zapełni dysk?

20

Odp: Przesyłanie audio na żywo

1. w /etc/rc.local to umieść
2. raczej do wyczerpania miejsca.

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

21

Odp: Przesyłanie audio na żywo

witam po dłuższej przerwie smile wracając do tematu steamingu audio... Chciałbym mieć możliwość włanczania i wyłanczania podsłuchu, ponieważ nie zawsze jest potrzebny, a bardzo obciąża mi router... doszedłem do wniosku że wystarczyłoby włanczać i wyłanczać źródło, a reszta może się urucamiac od razu z /etc/rc.local. Źródło uruchamia się poleceniem

darkice & > /dev/null

, a czy mógłbym prosić o podpowiedź jak powinno wyglądac to polecenie później, aby wyłączyć źródło?? da sie tak? W ogóle to opcja uruchamiania i wyłanczania źródła poleceniami przez putty wydaje mi się troche bez sensu. Czy można to samo zrobić przez WinScp? Tzn chodzi mi o to czy da się to wykonać np zmieniając zawartość danego pliku konfiguracyjnego. Wtedy mógłbym zrobić obsługę na mojej stronce w html, że po kliknięciu przycisku zmieniałaby się zawartość pliku na serwerze ftp. Troche to poplątane tongue jeśli jest jakaś inna łatwiejsza opcja wyłanczania podsłuchu, to bardzo prosze o podpowiedzi smile z góry dzięki!

22

Odp: Przesyłanie audio na żywo

killall darkice

Możesz to zrobić pod przyciskiem, opisane na eko.one.pl

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

23

Odp: Przesyłanie audio na żywo

Edycja pliku nic nie da. Skąd program ma wiedzieć, że coś go zmieniło? Poza tym co ma plik konfiguracyjny do komendy uruchamianej "z palca"?
Po drugie: edycja pliku przez stronkę w html? Dziwne imo.
Możesz coś napisać w php lub bashu, co wywoływało komendę i postawić serwer.

24 (edytowany przez kamillo 2011-09-14 22:37:42)

Odp: Przesyłanie audio na żywo

dziękuje bardzo za podpowiedź smile na przycisku jak najbardziej mi zadziałało włączanie i wyłączanie. Tylko właśnie mam problem bo nie do końca tak by to miało wyglądac, bo potrzebuje zdalnie to robić, czyli "wirtualnym" przyciskiem... No i druga rzecz jaka mi się pojawiła to po ok 1minucie podsłuchu, nagle traci mi się połączenie i trzeba włanczać od nowa źródło( w moim przypadku teraz przyciskiem). Moje ustawienia wyglądają tak:
W etc/rc.local mam

mkdir /var/log/icecast
chown nobody.nogroup /var/log/icecast
icecast -b -c /etc/icecast.xml
Changed groupid to 65534

natomiast mój przycisk w etc/config/system wygląda tak

config 'button'
    option 'button' 'BTN_1'
    option 'action' 'released'
    option 'handler' 'darkice & > /dev/null'
    option 'min' '0'
    option 'max' '3'
config 'button' 'BTN_1'
    option 'button' 'BTN_1'
    option 'action' 'released'
    option 'handler' 'killall darkice'
    option 'min' '4'
    option 'max' '90'

teraz nie wiem, albo coś pomieszałem w rc.local ?

25

Odp: Przesyłanie audio na żywo

(Kamillo włancz sobie słownik.)