Difference between revisions of "Linux Audio Streaming / Icecast"

From Hackerspace ACKspace
Jump to: navigation, search
Line 1: Line 1:
Omdat linux en audio nog steeds ZUIGT en de documentatie OOK heb ik hier zelf maar een info dump plek&nbsp;:)<br>  
+
Omdat linux en audio nog steeds ZUIGT en de documentatie OOK heb ik hier zelf maar een info dump plek&nbsp;:-)<br>
 +
 
 +
VLC&nbsp;en streaming faalt ook hard omdat je geen deugelijke info kunt achterhalen/instellen.<br>
 +
 
 +
Korte versie :<br>
 +
 
 +
ICECAST - Server<br>
 +
 
 +
DARKICE - Client <br>
 +
 
 +
ALSAMIXER - Instellen input<br>
  
 
<br>  
 
<br>  
 +
 +
<br>
  
 
INPUT&nbsp;:<br>  
 
INPUT&nbsp;:<br>  
Line 27: Line 39:
 
apt-get install icecast2<br>  
 
apt-get install icecast2<br>  
  
<br>
+
<br>  
  
info/handleiding volg
+
info/handleiding volg  
  
((standaard config /etc/icecast.xml))
+
((standaard config /etc/icecast.xml))  
  
<br><br>
+
<br><br>  
  
<br>
+
<br>  
  
Darkice<br>  
+
DARKICE<br>  
  
 
Streaming Client<br>  
 
Streaming Client<br>  
 +
 +
Nodig om line in door te zetten naar icecast server.<br>
 +
 +
apt-get install darkice<br>
 +
 +
Er is een gui-iets genaamd darksnow, maar die is oud en geeft geen juiste config.<br>
 +
 +
Gebruik man darkice.cfg voor de commandos/opties<br>
 +
 +
<br>
 +
 +
Starten :<br>
  
 
darkice -v 10 -c &lt;config&gt;<br>  
 
darkice -v 10 -c &lt;config&gt;<br>  
Line 45: Line 69:
 
<br>  
 
<br>  
  
Opties/commandos&nbsp;:<br>
 
  
man darkice.cfg <br>
 
 
<br>
 
  
 
Voorbeeld config&nbsp;:<br>  
 
Voorbeeld config&nbsp;:<br>  
  
<br>
 
 
see the darkice.cfg man page for details
 
  
this section describes general aspects of the live streaming session
 
  
<br>[general]<br>duration = 0 # duration of encoding, in seconds. 0 means forever<br>bufferSecs = 20 # size of internal slip buffer, in seconds<br>reconnect = yes # reconnect to the server(s) if disconnected  
+
[general]<br>duration = 0 # duration of encoding, in seconds. 0 means forever<br>bufferSecs = 20 # size of internal slip buffer, in seconds<br>reconnect = yes # reconnect to the server(s) if disconnected  
  
this section describes the audio input that will be streamed  
+
# this section describes the audio input that will be streamed  
  
 
<br>[input]<br>device = hw:1,0 # Alsa soundcard device for the audio input<br>sampleRate = 44100 # sample rate in Hz. try 11025, 22050 or 44100<br>bitsPerSample = 16 # bits per sample. try 16<br>channel = 2 # channels. 1 = mono, 2 = stereo  
 
<br>[input]<br>device = hw:1,0 # Alsa soundcard device for the audio input<br>sampleRate = 44100 # sample rate in Hz. try 11025, 22050 or 44100<br>bitsPerSample = 16 # bits per sample. try 16<br>channel = 2 # channels. 1 = mono, 2 = stereo  
  
this section describes a streaming connection to an IceCast2 server<br># there may be up to 8 of these sections, named [icecast2-0] ... [icecast2-7]<br># these can be mixed with [icecast-x] and [shoutcast-x] sections  
+
# this section describes a streaming connection to an IceCast2 server<br># there may be up to 8 of these sections, named [icecast2-0] ... [icecast2-7]<br># these can be mixed with [icecast-x] and [shoutcast-x] sections  
  
 
<br>[icecast2-0]<br>bitrateMode = cbr # constant bit rate<br>bitrate = 192 # bitrate<br>format = mp3 # format of the stream: mp3<br>quality = 1.0 # quality of the stream sent to the server<br>server = ............. # host name of the server<br>port = 8000 # port of the IceCast2 server, usually 8000<br>password = .................&nbsp; # source password to the IceCast2 server<br>mountPoint = test.mp3 # mount point of this stream on the IceCast2 server<br>name = Test # name of the stream<br>description = Test # description of the stream<br>url = http://test.com # URL related to the stream<br>genre = Test # genre of the stream<br>public = no # advertise this stream?<br>localDumpFile = test.mp3 # Record also to a file  
 
<br>[icecast2-0]<br>bitrateMode = cbr # constant bit rate<br>bitrate = 192 # bitrate<br>format = mp3 # format of the stream: mp3<br>quality = 1.0 # quality of the stream sent to the server<br>server = ............. # host name of the server<br>port = 8000 # port of the IceCast2 server, usually 8000<br>password = .................&nbsp; # source password to the IceCast2 server<br>mountPoint = test.mp3 # mount point of this stream on the IceCast2 server<br>name = Test # name of the stream<br>description = Test # description of the stream<br>url = http://test.com # URL related to the stream<br>genre = Test # genre of the stream<br>public = no # advertise this stream?<br>localDumpFile = test.mp3 # Record also to a file  

Revision as of 18:23, 16 December 2012

Omdat linux en audio nog steeds ZUIGT en de documentatie OOK heb ik hier zelf maar een info dump plek :-)

VLC en streaming faalt ook hard omdat je geen deugelijke info kunt achterhalen/instellen.

Korte versie :

ICECAST - Server

DARKICE - Client

ALSAMIXER - Instellen input



INPUT :

root@ACK:/etc/icecast2# arecord --list-devices
**** List of CAPTURE Hardware Devices ****
card 0: SB [HDA ATI SB], device 0: ALC662 rev1 Analog [ALC662 rev1 Analog]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: SB [HDA ATI SB], device 2: ALC662 rev1 Analog [ALC662 rev1 Analog]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: Live [SB Live! Value [CT4832]], device 0: emu10k1 [ADC Capture/Standard PCM Playback]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: Live [SB Live! Value [CT4832]], device 1: emu10k1 mic [Mic Capture]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: Live [SB Live! Value [CT4832]], device 2: emu10k1 efx [Multichannel Capture/PT Playback]
Subdevices: 1/1
Subdevice #0: subdevice #0
root@ACK:/etc/icecast2#

Als je de line in van de SBLive wil hebben, kies je in dit voorbeeld hw1:0, de rest gaat uit van dit device.

Met alsamixer kun je record devices en niveau instellen

root@ACK:/etc/icecast2# alsamixer -c 1 -V capture

Met spatie kun  je device kiezen en met pijltjes volume instellen




ICECAST

Als je zelf streaming server wil draaien

apt-get install icecast2


info/handleiding volg

((standaard config /etc/icecast.xml))




DARKICE

Streaming Client

Nodig om line in door te zetten naar icecast server.

apt-get install darkice

Er is een gui-iets genaamd darksnow, maar die is oud en geeft geen juiste config.

Gebruik man darkice.cfg voor de commandos/opties


Starten :

darkice -v 10 -c <config>



Voorbeeld config :


[general]
duration = 0 # duration of encoding, in seconds. 0 means forever
bufferSecs = 20 # size of internal slip buffer, in seconds
reconnect = yes # reconnect to the server(s) if disconnected

  1. this section describes the audio input that will be streamed


[input]
device = hw:1,0 # Alsa soundcard device for the audio input
sampleRate = 44100 # sample rate in Hz. try 11025, 22050 or 44100
bitsPerSample = 16 # bits per sample. try 16
channel = 2 # channels. 1 = mono, 2 = stereo

  1. 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 # constant bit rate
bitrate = 192 # bitrate
format = mp3 # format of the stream: mp3
quality = 1.0 # quality of the stream sent to the server
server = ............. # host name of the server
port = 8000 # port of the IceCast2 server, usually 8000
password = .................  # source password to the IceCast2 server
mountPoint = test.mp3 # mount point of this stream on the IceCast2 server
name = Test # name of the stream
description = Test # description of the stream
url = http://test.com # URL related to the stream
genre = Test # genre of the stream
public = no # advertise this stream?
localDumpFile = test.mp3 # Record also to a file

[icecast2-1]
bitrateMode = cbr # constant bit rate
bitrate = 192 # bitrate
format = vorbis # format of the stream: mp3
quality = 1.0 # quality of the stream sent to the server
server = ...........  # host name of the server
port = 8000 # port of the IceCast2 server, usually 8000
password = ....................  # source password to the IceCast2 server
mountPoint = test.ogg # mount point of this stream on the IceCast2 server
name = Test # name of the stream
description = Test # description of the stream
url = http://test.com # URL related to the stream
genre = Test # genre of the stream
public = no # advertise this stream?
localDumpFile = test.ogg # Record also to a file