2008/06/21

Musica con ubuntu

DISCLAIMER: while we keep this section for reference, we strongly discourage usage of Ubuntu, in particular those versions released between year 2012 and 2016 officially implementing spyware.
 
A questa pagina si trova una guida dettagliata sul come fare musica con ubuntu. Riporto la descrizione dei programmi consigliati:
- Rosegarden è l'equivalente di Cubase, di Cakewalk, di Sonar, di Finale... È anche più potente e configurabile, ed è gratis.
- Ardour è uno studio di registrazione, molto molto potente.
- Audacity è un ottimo editor audio, disponibile anche per Windows
- Sweep è un altro edito r audio, non multitraccia, può far comodo perché è molto semplice.
- Rezound è un altro editor audio non multitraccia, semplicissimo e coloratissimo, vede tutti i plugin. Io lo metto come default per l'edit delle tracce audio di Rosegarden.
- Qsynth è un programma che permette di prendere dei suoni di strumenti e di usarli con effetti e volumi, trasformando un file di suoni di strumenti musicali in un modulo rack emulato via software. In sostanza vi fa le veci del mio Korg. Anche se avete un modulo rack o una tastiera fichissima piena di suoni, installate lo stesso Qsynth, è sempre utile, e poi non fa solo quello, fa anche mille altre cose strepitose.
- jackd è il cuore di tutto: è una patch bay in sostanza, cioè un programmino che vi mostra tutte le entrate e tutte le uscite dei programmi che avete caricato e della scheda sonora, che voi potete collegare graficamente. Cioè, è come uno scatolotto a cui collegare tutti i cavi provenienti dai vostri strumenti, con combinazioni da scienziato pazzo (Anzi da musicista pazzo): il sogno di ogni musicista...
- qjackctl è l'interfaccia grafica di jackd
- hexter è un VST, cioè l'imitazione software di un apparecchio che produce suoni particolari. In questo caso si tratta dell'imitazione perfetta del Yamaha DX7, quella mitica tastiera anni '80 che è diventata famosa per il suono di "The Final Countdown" degli Europe e di "Jump" dei Van Halen, ma in generale è una figata assurda averlo disponibile fra gli strumenti perché un po' tutta la musica degli anni '80 e inizio '90 ha usato i suoni di questa tastiera.
- xsynth-dssi è un altro VST, che vi imita una perfetta macchina da musica elettronica, proprio come i vecchi Moog, con centinaia di manopoline per sperimentare nuovi suoni, e un bel po' di suoni già fatti, tutti elettronicissimi. C'è anche un perfetto imitatore di theremin. Leggenda.
- Flac è un codec (compressione / decompressione audio), molto usato. Senza installarlo peraltro Rosegarden protesta all'avvio.
- lingot è un accordatore per la vostra chitarra
- Hydrogen è una drum machine che, in rigoroso linguaggio tecnico, spacca i culi.
- hydrogen-drumkits sono dei drumkit per hydrogen... che ve lo dico a fare?
- Jack-rack vi permette di rendere disponibili alcuni plugin audio. Sono simili ai dssi, però sono disponibili per tutte le applicazioni e non solo per Rosegarden
- caps è il re di questi plugin (detti LADSPA), perché è quello che vi simula anche in realtime ogni tipo di ampolificatore e distorsore. Ci sono delle distorsioni valvolari da paura, e con un po' di pazienza potrete far suonare la vostra chitarra come se aveste un Vox AC-30 in stile Brit-pop o un Marshall da burino del metal.
- sox è un codec, serve a far partire Rosegarden.


Nel caso di ubuntu si possono installare con aptitude aggiungento i repository di Medibuntu:

sudo wget http://www.medibuntu.org/sources.list.d/gutsy.list -O /etc/apt/sources.list.d/medibuntu.list
e quindi

sudo apt-get update && sudo apt-get upgrade
Prima conviene però installare un kernel real-time, che gestisce le priorità dei processi in modo da favorire quelli real-time (se non si installa, alcuni programmi come Rosegarden potrebbero "reclamare"):

aptitude install linux-rtPrima di riavviare, bisogna dare i permessi agli utenti per usare il kernel lowlatency, aggiungendo alla fine del file /etc/security/limits.conf le seguenti righe:

@audio - rtprio 99
@audio - nice -10
@audio - memlock 512000
dove l'ultimo numero deve coincidere con la metà della ram (in questo caso 1GB/2=512MB).
Ora bisogna aggiungere a /etc/modules le seguenti righe:

snd-seq-device
snd-seq-midi
snd-seq-oss
snd-seq-midi-event
snd-seq
in modo da poter usare il MIDI. Si può quindi riavviare, eventualmente modificando il grub.

Il programma fondamentale è jackd (con qjackctl come interfaccia grafica). Per utilizzare effetti della chitarra si possono usare creox (facile da usare, ma gli effetti sono scadenti) o jack-rack (più professionale). caps è un plugin molto utile. È comodo inoltre avere un editor audio, ad esempio audacity o Rosegarden (questa guida può essere utile).
Una volta installati

aptitude install jackd qjackctl jack-rack caps audacity


bisogna avviare innanzitutto jackd, e di seguito gli altri programmi che si vogliono usare. La configurazione di default di jackd va bene, ma conviene aggiungere l'opzione Realtime nel menu setup, impostandola ad esempio a 57. Nel caso non si voglia fare solo musica, ma aggiungere anche video conviene modificare le frequenze da 44100 a 48000 (questo vale anche per gli altri programmi).

Dei soundfonts che suonano bene sono gli Unison:
wget ftp://ftp.personalcopy.net/pub/Unison.sf2.gz
mkdir /etc/sounds/
gunzip Unison.sf2.gz
mv Unison.sf2 /etc/sounds/

Per gestirli conviene installare QSynth
aptitude install qsynth
e aggiungere la lista appena scaricata di soundfonts nella apposita tab del menu setup di QSynth.
Una possibile configurazione della finestra connections di qjackctl è la seguente:

O(alsa_pcm) - I(jack_rack)
O(jack_rack) - I(rosegarden)
O(jack_rack) - I(alsa_pcm)
O(qsynth) - I(alsa_pcm)
O(rosegarden) - I(
alsa_pcm)
In questo modo il suono della chitarra, che è l'output del microfono (O(alsa_pcm)) entra in jack-rack, dove sono presenti degli effetti, da cui esce diventando l'input per le casse (I(alsa_pcm)) e per rosegarden. Inoltre qsynth è stato connesso alle casse, per sentire i file midi, e lo stesso vale per rosegarden, per sentire il risultato finale.

Distribuzioni linux dedicate all'elaborazione audio e video:
Ubuntu Studio
Jacklab (derivata da OpenSUSE)
64 Studio
dyne:bolic
Musix

2008/06/14

Video handling

DISCLAIMER: while we keep this post for reference, we strongly discourage the use of proprietary formats, since it violates fundamental user freedoms.


 Estrarre l'audio da un video


Con MPlayer è immediato estrarre l'audio da un video e salvarlo in un file, ad esempio, mp3:

mplayer -dumpaudio video.flv -dumpfile audio.mp3

Convertire Video


Si possono convertire video (ad esempio .flv in .avi) installando ffmpeg. Ad esempio:

ffmpeg -i fileorigine.flv filedestinazione.avi

Mencoder può avere problemi di sincronizzazione risolvibili specificando più opzioni. Ad esempio, per convertire da .avi a .flv:

ffmpeg -i fileorigine.avi -y -ab 56 -ar 44100 -b 200 -r 15 -f flv filedestinazione.flv

Recording video with audio from webcam


The following records a video with audio (using ALSA) from an integrated webcam:

ffmpeg -f alsa -ac 2 -i hw:0,0 -acodec mp3 -f video4linux2 -s 320x240 -i /dev/video0 outvideo.mpg

where /dev/video0 is the video device. One may probably wants to change the resolution, here set to -s 320x240.

2008/05/17

LaTex

Tex full installation on Debian

A full installation of LaTex is provided by the package texlive-full. However, as it is cumbersome mostly due to the languages packages, one may select the languages gaining a lot of space and time.
The following command install Tex with English, French and Italian language packages:

sudo apt-get install cm-super cm-super-minimal context dvipng feynmf fragmaster ko.tex-extra-hlfont latexmk lcdf-typetools libreadline5 libruby1.8 musixtex pfb2t1c2pfb psutils ruby ruby1.8 swath t1utils tex-gyre tex4ht tex4ht-common texinfo texlive-bibtex-extra texlive-doc-en texlive-fonts-extra texlive-fonts-extra-doc texlive-formats-extra texlive-games texlive-generic-extra texlive-humanities texlive-humanities-doc texlive-lang-french texlive-lang-italian texlive-lang-ukenglish texlive-lang-vietnamese texlive-latex3 texlive-math-extra texlive-metapost texlive-metapost-doc texlive-music texlive-omega texlive-plain-extra texlive-publishers texlive-publishers-doc texlive-science texlive-science-doc texlive-xetex thailatex ttf-gfs-artemisia ttf-gfs-baskerville ttf-gfs-bodoni-classic ttf-gfs-didot ttf-gfs-didot-classic ttf-gfs-gazis ttf-gfs-neohellenic ttf-gfs-olga ttf-gfs-porson ttf-gfs-solomos ttf-gfs-theokritos ttf-sil-gentium

Prototipo per LaTex

Il seguente script:

#! /bin/bash
echo Nome del documento:
read NOME
cp /percorso/prototipo.tex ./$NOME
nano ./$NOME &

chiede il nome da dare al nuovo documento che si vuole creare nella cartella corrente, e copia il file prototipo.tex (contenuto in /percorso) nella cartella corrente, rinominandolo come appena specificato. Comodo nel caso di documenti .tex, in cui si vuole utilizzare un preambolo personalizzato (scritto in prototipo.tex).

Esempio di prototipo.tex:

[ UPDATING ]

Stato batteria e temperature

Con debian, per visualizzare lo stato della batteria e le temperature:
$ acpi -V
In generale questo tipo di informazioni sono contenute nei file presenti nelle cartelle di /proc/acpi.
Uno script (costruito su zenwalk) che fornisce queste informazioni:
#!/bin/sh

#Batteria
BATREMAIN=`grep "remaining capacity" /proc/acpi/battery/C238/state | sed "s/remaining capacity:\(.*\) mAh/\1/"`
BATFULL=`grep "full capacity" /proc/acpi/battery/C238/info | sed "s/last full capacity:\(.*\) mAh/\1/"`
BATPCT=`echo "scale=2; $BATREMAIN / $BATFULL *100" | bc`
echo "Battery is" $BATPCT "% full."

#Temperature
TZ0=`grep "temperature" /proc/acpi/thermal_zone/TZ0/temperature | sed "s/temperature://"`
TZ1=`grep "temperature" /proc/acpi/thermal_zone/TZ1/temperature | sed "s/temperature://"`
TZ3=`grep "temperature" /proc/acpi/thermal_zone/TZ3/temperature | sed "s/temperature://"`
TZ4=`grep "temperature" /proc/acpi/thermal_zone/TZ4/temperature | sed "s/temperature://"`
TZ5=`grep "temperature" /proc/acpi/thermal_zone/TZ5/temperature | sed "s/temperature://"`
echo "TZ0:" $TZ0
echo "TZ1:" $TZ1
echo "TZ3:" $TZ3
echo "TZ4:" $TZ4
echo "TZ5:" $TZ5
Il nomi delle cartelle contenute in /proc/acpi/battery ed in /proc/acpi/thermal_zone (in questo caso C238 e TZ*) non sono canonici, e possono cambiare anche per versioni diverse della stessa distro. Nel caso in cui il laptop abbia più di una batteria, vanno aggiunte le cartelle corrispondenti.

Connessione aliceadsl - Sclackware

Configurazione della connessione adsl di Alice:
# pppoe-setup

usando i parametri:
USER NAME aliceadsl
INTERFACE eth0
DNS primario 212.216.112.112
secondario 212.216.172.62
PASSWORD
FIREWALLING


Per attivare la connessione, oltre a
# pppoe-start

è necessario cancellare la rotta di default (quella verso cui vengono diretti i pacchetti se non sono destinati a reti direttamente connesse):
# route del default

e fare in modo che la rotta diventi uguale a quella raggiungibile tramite ppp0:
# route add default dev ppp0


Dato che il reindirizzamento è da fare ad ogni connessione, è comodo questo script:
#!/bin/bash
#connessione aliceadsl

stato_conn(){
/usr/sbin/pppoe-status >/dev/null
if [ \( \( $? -eq 0 \) -a \( "$1" = "u" \) \) -o \( \( $? -eq 1 \) -a \( "$1" = "d" \) \) ]
then
return 1
else
return 0
fi
}
con_up(){
var=`/usr/sbin/pppoe-start`
if [ $? -eq 0 ]
then
/sbin/route del default
numero=`/sbin/route -n | grep "ppp." -o | uniq`
/sbin/route add default dev $numero
echo ok
else
echo $var
fi
}
con_down(){
/usr/sbin/pppoe-stop
}
case $1 in
"u")
stato_conn u
if [ $? -eq 1 ]
then
echo "connessione già attiva!"
exit 1
else
con_up
exit 0
fi
;;
"d")
stato_conn d
if [ $? -eq 1 ]
then
echo "connessione già disattivata!"
exit 1
else
con_down
exit 0
fi
;;
*)
stato_conn u
if [ $? -eq 1 ]
then
echo "connessione già attiva!"
exit 1
else
con_up
exit 0
fi
;;
esac

2008/05/06

Streaming

DISCLAIMER: while we keep this post for reference, we strongly discourage the use of proprietary formats, since it violates fundamental user freedoms.


Mplayer


Manuale Mplayer: MPlayer - The Movie Player.
In particolare, 3.1. Command line e 3.4. Streaming from network or pipes.

Protocolli supportati da MPlayer: HTTP, FTP, MMS, RTSP/RTP.
Per ascoltarli inserire l'URL nella linea di comando.
Per esempio:

$ mplayer url_stream

Per salvare lo stream in un file si può usare l'opzione -dumpstream.
Per esempio:

$ mplayer url_stream -dumpstream -dumpfile miofile.mp3/.avi

Indirizzi streaming
  • AfriRadio (Nigrizia)
    mms://89.163.146.192:9000/afriradio
  • AfriRhythms Radio
    http://64.191.64.229:6720
  • Alternative/Indie
    mms://media-wm.cac.washington.edu/KEXP-Live
  • Australian Country
    mms://media3.abc.net.au/digcountry
  • Cowboy Up Radio:
    http://radio.cowboyupradio.com:8011/
  • Indie-rock:
    http://stream.nadaje.com:8006
  • KPOA Hawaiian Radio
    http://jeff.wm-live.abacast.com/pacificradio-kpoa-32

  • SuperAlterative
    http://174.36.1.6/superlow
  • Virgin Radio:
    mms://viplagardere.yacast.net/encodereurope2
  • Virgin Radio Alternative
    mms://viplagardere.yacast.net/vra_webradio01
  • Virgin Radio Française
    mms://viplagardere.yacast.net/vra_webradio02
  • Virgin Radio Italia:
    http://151.1.245.1/20


Ref: Mike's Radio World


"Rippers"


  • Download di video da youtube: youtube-dl

  • Last.fm: The Last Ripper
    (richiede un account a last.fm. Durante la registrazione dell'account, come si vede dai termini di servizio, non è obbligatorio inserire l'email!).
    L'indirizzo della stazione si trova sul sorgente della pagina web di lastfm che la trasmette. È del tipo
    lastfm://globaltags/indie