Sei al primo accesso?

Ti piace l'idea? Registrati ora!

Vantaggi se ti iscrivi:

  • Puoi diventare un "Editore" per i contenuti Didattici
  • Partecipare al Forum
  • Accesso a tutti i file aggiunti dagli utenti stessi

Linux & MP3: accoppiata vincente per iTux

ritratto di nixw0rm

iTux: LINUX MUSICA & JUKEBOX
by nixw0rm (smashing script member)

INTRODUZIONE

Negli ultimi anni lo sviluppo della tecnologia, l'aumento della banda di internet, e lo sviluppo di applicativi web implementate su piattaforme unix ha reso la possibilità di dar sfogo alla creatività di molti sviluppatori, sistemisti e appassionati di informatica.
Basta pensare, ad esempio, a progetti come youtube, alle radio on line, o anche a veri e propri sistemi operativi on line come EyeOS... Beh, bisogna dire che arrivare a questo punto non è stato per niente facile, anzi, è stato grazie a persone che hanno avuto pazienza, sacrificio e notti insonni a provare e riprovare finchè non funziona.....
In quest'articolo ci concentreremo su come è possibile creare un jukebox musicale da mettere in salotto, usando semplicemente il vecchio PC che avete in soffitta (un pentium 1 con scheda di rete e scheda audio è perfetto!!!!) e una distribuzione di Linux..

MATERIALE

Cosa ci serve? ecco l'hardware occorrente:

Un vecchio PC che rispetti i requisiti minimi:
Processore Pentium a 120Mhz o superiore
32 MB ram o superiore
scheda di rete da 10Mbps (consigliati 100Mbps)
Hard disk da 4GB (meglio se più grande per mettere più MP3)
Scheda audio a 16 bit o superiore
cdrom da 8x (almeno)
un buon impianto audio (meglio se avete un hi-fi)

SISTEMA OPERATIVO

Il sistema che installeremo nel jukebox sarà linux debian la versione minima...
Prima di tutto dobbiamo scaricare i cd d'installazione... a dire la verità il cd è uno:
faremo un'installazione base e aggiungeremo i pacchetti che ci servono tramite rete
(è preferibile una connessione internet adsl)... Per chi non dispone di tale connessione
dovrà procurarsi i cd interi di debian...
I cd si possono scaricare da http://www.debian.org, ma l'installazione a cui faremo riferimento è
quella minimale con funzionalità aggiuntive via rete.. ecco il download per tale cd:

http://cdimage.debian.org/debian-cd/4.0_r3/i386/iso-cd/debian-40r3-i386-...

scaricate tale immagine e masterizzatela con nero su un cd vuoto. Ora riavviamo il (futuro) jukebox
facendo il boot dal nuovo CD... Fatto ciò si avvierà l'installazione di debian che ovviamente è intuitiva
e quindi non mi soffermerò molto a parlare di essa. Selezionate la vostra lingua, partizionate l'hard disk
e installate solo i pacchetti necessari ad un sistema minimale con il server openssh server e client, ed eventualmente che lo desidera può configurare un server lamp (per tale guida fare riferimento a quella di kiuz:

http://kiuzdesign.altervista.org/cms/?q=node/23

mi sembra piuttosto semplice :-)), aggiungete un nuovo utente, installate il boot-loader e riavviate...
Ora fate il log in con l'account di root ed installiamo i pacchetti necessari:

aggiorniamo il database dei pacchetti:


# apt-get update

installiamo ssh client e server per effettuare il log-in:


# apt-get install ssh

Supponiamo per ipotesi che la vostra scheda audio funziona (in caso contrario lanciate alsaconf), installiamo i programmi necessari a regolare il volume, disattivare alcune uscite....


# apt-get install alsa-utils

ed infine installiamo i software necessari per ascoltare gli mp3:


# apt-get install mp3blaster mpg321 mpg123

Fatto ciò ora non ci rimane che impostare la cartella degli mp3..
Dobbiamo caricare la musica sul jukebox o tramite un cd, una pen drive oppure tramite rete
(via ftp o tramite ssh con il comando scp).

Supponiamo che la musica sia stata caricata in /home/utente/musica dove utente è il vostro nomeutente per accedere al jukebox, prepariamo la lista dei brani da ascoltare con il comando find:


# cd /home/utente/musica

# find ./ | grep mp3 > lista.lst

# chmod o+w lista.lst

Regoliamo i volumi con alsamixer:


# alsamixer

fatto ciò potete collegare l'uscita della scheda audio del jukebox agli ingressi AUX del vostro hi-fi (vendono degli appositi cavetti, da 3 euro circa, fatti apposta) e alla linea della scheda audio del jukebox collegate (non è necessario) qualche altra periferica audio (tipo la tv, il lettore mp3, o il vostro pc fisso).

Per quanto riguarda la rete ci sono vari modi: collegate il jukebox con un cavo ethernet al vostro router, impostate l'ip statico e fate il login tramite ssh dal vostro pc fisso (per chi usa windows può scaricare putty
dal sito http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html e fare il login con esso)

Se per esempio l'ip del jukebox è 10.0.0.2 e quello del pc fisso è 10.0.0.1, digitate da terminale (linux) del pc fisso:


$ ssh 10.0.0.1 -l utente --- utente va sostituito con il vostro nomeutente -----

Se vi viene chiesto di accettare la chiave digitate yes ed immettete la password.

Entrati dentro entriamo in musica e lanciamo mp3blaster:


$ cd musica

$ mp3blaster -l lista.lst

e vi appare un'interfaccia (semi) grafica con la lista dei vostri mp3 preferiti...
I tasti sono:

5 = play/pause

4 = prev

6 = next

2 = stop

3 = ffwd

1 = rew

per far partire il programma automaticamente al log in creiamo un file di script con

# echo > .profile

apriamo il file con un editor di testo:

# pico .profile

e aggiungiamo le seguenti righe:


cd musica/
find ./ | grep mp3 > lista.lst &
mp3blaster -l lista.lst

premiamo la combinazione tasti CTRL+X e poi Y e salviamo il file.
Fatto ciò il vostro jukebox aggiornerà automaticamente la lista man mano che caricherete la musica
e al login partirà direttamente mp3blaster....

ATTENZIONE: Se dal vostro PC fisso chiudete il terminale su cui è aperto ssh allora il jukebox smette di suonare, in quanto chiudendo ssh la sessione viene chiusa... Per ovviare a questo inconveniente sto cercando ( a tempo libero ) di implementare un interfaccia PHP via web che permetterà al jukebox di continuare anche se chiudete il browser o spegnete il pc fisso.... (autonomia al jukebox)... Mi serve tempo.... Vi prometto che presto sarà on-line... per ora accontentatevi quanto detto finora :-)

nixw0rm