mercoledì 16 novembre 2011

Redirigere audio in riproduzione verso il microfono su Linux parte 2


Come accennato alla fine del precedente articolo, ho trovato una soluzione un po' artigianale all'impossibilità di redirigere l'audio verso il microfono per trasmettere in streaming su siti quali livestream. Con questa soluzione viene rediretto l'audio in modo indipendente dall'applicazione e senza utilizzare alcun software. Ciò che serve per questo scopo sono 2 elementi: un cavo jack 3,5 maschio maschio e uno sdoppiatore jack; si possono trovare entrambi su eBay per una spesa complessiva di 3-4 euro. Il collegamento che ho effettuato è stato il seguente (ho disegnato l'immagine velocemente, giusto per rendere l'idea):
Ho collegato lo sdoppiatore all'uscita audio (quella verde) e successivamente ho collegato la prima uscita dello sdoppiatore all'input per il microfono (entrata rosa) e la seconda uscita alle casse. In questo modo l'audio viene sdoppiato e rediretto sia all'input del microfono, sia alle casse, così possiamo ascoltare l'audio normalmente e contemporaneamente registrare, questa volta anche da siti come livestream. Non sarà una soluzione elegantissima, ma almeno funziona :D Come sempre, spero che questa dritta vi sia stata utile. Alla prossima!

Redirigere audio in riproduzione verso il microfono su Linux


Salve a tutti. A volte capita la necessità di redirigere l'output audio verso l'input del microfono per una serie di motivi, ad esempio per registrare una conversazione su skype o su qualche altro programma di VoIP, oppure per poter effettuare uno streaming live del proprio desktop o ancora (come nel mio caso) per fare uno streaming live di un mix usando Mixxx. Su windows se si seleziona "Stereo Mix" nel controllo volume del microfono, tutti i suoni che vanno in output vengono rediretti verso il microfono. Su Linux è possibile fare una cosa del genere, utilizzando Pulseaudio e pavucontrol. Pulseaudio è installato su tutte le moderne distribuzioni, mentre potrebbe essere necessario installare pavucontrol. Una volta installato, apriamolo cercando "Regolazione del Volume" nel menu. Da pavucontrol è possibile regolare i flussi audio e gestire i volumi in maniera più dettagliata, ad esempio settando un volume di riproduzione diverso per ogni applicazione, a seconda delle nostre esigenze. La parte che ci interessa in questo momento è la scheda "Ingressi". Selezioniamo "monitor" nel menu a tendina in basso e proviamo a riprodurre dell'audio: vedremo la barra muoversi, segno che l'audio è monitorato correttamente.


Ora, se apriamo un'applicazione che permetta di registrare dell'audio, ad esempio Audacity, e cominciamo a registrare, muovendoci nella scheda "Registrazione" vedremo la relativa voce. Selezioniamo "Monitor of Audio interno Stereo analogico" e l'audio in uscita verrà rediretto al programma di registrazione, come se provenisse dal microfono.


Purtroppo non sono riuscito ad utilizzare questo metodo con siti di live streaming come ad esempio livestream, in quanto nella scheda "Registrazione" non compare la voce che permetta di redirigere l'audio all'applicazione in flash che gestisce il microfono (se trovate il modo di farlo scrivetelo in un commento). Ho trovato una soluzione alternativa a quest'ultimo problema e sarà discussa nel prossimo articolo. Rimanete collegati!

fonte

venerdì 11 novembre 2011

[Java] Ogame Moontry Calculator


Salve a tutti :) da un mesetto sto studiando Java e quindi ho deciso di unire l'utile al dilettevole e creare un'applicazioncina per i giocatori di Ogame. L'applicazione in questione calcola la probabilità che si formi una luna, sapendo il numero di navi coinvolte nello scontro. Innanzitutto per poter lanciare il programma è necessario avere installata la Java Virtual Machine, poi per lanciare l'eseguibile basta dare il comando
 java -jar Ogame_Moontry_Calculator_0.1.jar
dalla directory in cui si trova il programma.
L'interfaccia è molto semplice: è presente l'elenco di tutte le navi di Ogame e per ogni nave un riquadro per inserire il numero di navi di quel tipo. Una volta inseriti tutti i dati, basta premere il tasto "calcola" e verrà visualizzata la probabilità di formazione della luna.


In futuro magari aggiungerò anche la possibilità di selezionare i vari metodi di calcolo dei detriti (se contare anche le difese o no, quale percentuale delle risorse finisce in detriti...) visto che per ora viene usato il metodo "standard" del 30% di detriti sulle risorse e difese non contate. Spero che qualcuno possa trovare quest'applicazione utile e non esitate a contattarmi se trovate qualche bug :) Di seguito il link per scaricare il programma:

Ogame Moontry Calculator

domenica 16 ottobre 2011

Installare Mixxx e Hercules Mp3 e2 su Fedora 15


Salve a tutti. In un mio precedente post avevo illustrato come installare Mixxx su Ubuntu e come utilizzare il controller MIDI Hercules Mp3 e2 per controllarlo. In questi giorni sto provando un po' Fedora nella versione 15 e quindi ho pensato di scrivere questo post per illustrare come installare il tutto anche sotto questa distribuzione. Come prima cosa bisogna installare Mixxx: non lo troveremo nei repository ufficiali Fedora in quanto utilizza delle librerie statiche per la riproduzione degli mp3 che sono in contrasto con la filosofia open della distribuzione. Per installare Mixxx dovremo quindi ricorrere al repository RPM Fusion, configurabile seguendo le istruzioni che si trovano sul sito del repository in questione. Dopo aver configurato RPM Fusion, si può procedere all'installazione di Mixxx digitando da terminale
 su -c 'yum install mixxx'
a questo punto il programma dovrebbe essere installato e correttamente funzionante e rimane da installare soltanto il controller MIDI. Per fare questo occorre scaricare il pacchetto DKMS contenente il driver ed installarlo. DKMS sta per Dynamic Kernel Module Support e quindi il driver verrà ricompilato ad ogni aggiornamento del kernel. Passiamo all'installazione:
  1. scarichiamo il pacchetto contenente il driver
     wget http://slist.lilotux.net/linux/deejay/mixxx/hdjmod-1.31-source-only.dkms.tar.gz
  2. installiamo DKMS se non è già installato
     su -c 'yum install dkms'
  3. carichiamo il pacchetto nell'albero di DKMS
     su -c 'dkms ldtarball --archive=hdjmod-1.31-source-only.dkms.tar.gz'
  4. rimuoviamo un'eventuale versione più vecchia del driver
     su -c 'dkms remove -m hdjmod -v 1.30 --all'
  5. compiliamo il driver
     su -c 'dkms build -m hdjmod -v 1.31'
  6. ed infine installiamolo
     su -c 'dkms install -m hdjmod -v 1.31'
  7. per controllare che il modulo sia caricato basta digitare
     dkms status
    e controllare che hdjmod sia nella lista
A questo punto dovrebbe essere tutto a posto e potrete cominciare a mixare con Mixxx e il vostro controller. Buon mix con Mixxx!

martedì 11 ottobre 2011

Wallpaper Ubuntu 11.10 Oneiric Ocelot

Più o meno una settimana fa sono stati svelati i wallpaper per la nuova distribuzione di casa Canonical. Sono tutti veramente di alta qualità, ma uno in particolare ha attirato la mia attenzione: sicuramente lo terrò sul mio desktop per un bel po'.

Installare e configurare l'emulatore Play Station ePSXe per Linux


Alzi la mano chi ha passato ore davanti a questa scatoletta grigia. Penso che le mani rimaste abbassate siano veramente poche, infatti la Play Station è stata parte della cultura degli anni '90 ed ogni ragazzo più o meno della mia età sarà sicuramente molto affezionato alla console di casa Sony. Ormai le nostre scrivanie o i nostri scaffali ospitano le ben più potenti Ps3 o Xbox o Wii del caso, ma i più nostalgici, come il sottoscritto, a volte sentono il bisogno di tornare alle origini e cimentarsi nuovamente nelle avventure che ci hanno tenuto tanta compagnia quando eravamo piccini. Per questo motivo in questo articolo parlerò dell'emulatore ePSXe, ovvero (come si intuisce dal nome) un emulatore per giochi PSX. Alcuni di voi potrebbero chiedersi il perchè dell'usare un emulatore, quando si può giocare direttamente con la console, quindi vorrei fornire i 2 motivi che hanno giustificato la mia scelta in questo senso:
  1. Se installato su un portatile ci posso giocare ovunque vada
  2. La grafica sull'emulatore viene migliorata di molto grazie a plugin e filtri e secondo me diventa comparabile con quella dei primi giochi PS2
Ora che sapete le mie motivazioni (ma chi voleva saperle?) possiamo passare a vedere i passaggi necessari ad installare e configurare questo emulatore su un sistema Linux (nel mio caso Ubuntu).
In questa guida cercherò di fornire la maggior parte dei comandi da terminale, in modo da rendere le operazioni più facili da eseguire per chi legge. Pronti? Via.
Cominciamo scaricando l'emulatore dal sito ufficiale. Apriamo dunque il terminale e scriviamo il seguente comando
 wget http://www.epsxe.com/files/epsxe160lin.zip
che scaricherà nella home l'archivio contentente il programma. L'ultima versione per linux al momento è la 1.60. Creiamo quindi una cartella dove andremo poi ad estrarre l'archivio con
 mkdir epsxe
ed infine estraiamo
 unzip epsxe160lin.zip -d epsxe
a questo punto possiamo già far partire l'emulatore spostandoci nella cartella creata con
 cd epsxe
e facendo partire l'eseguibile
 ./epsxe
se l'eseguibile non dovesse partire potrebbe essere necessario settare i permessi del file per consentirne l'esecuzione. Diamo quindi un bel
 chmod +x epsxe
e proviamo a far ripartire l'eseguibile. Se tutto è stato fatto correttamente dovrebbe aprirsi la finestra principale dell'emulatore, che è quella che si vede in figura:


Anche se l'emulatore parte, non accadrà lo stesso se si prova ad avviare un gioco, infatti è necessario configurare l'emulatore in alcuni punti per renderlo funzionante ed ottimizzarlo. Senza perderci in ulteriori chiacchiere vediamo come fare: innanzitutto ci servono i plugin audio e video di cui parlavo all'inizio. Ce ne sono molti, ma i migliori sono quelli di Pete. Torniamo quindi al nostro terminale (non l'avrete mica chiuso vero?) e scarichiamo i plugin che ci interessano:
 cd ..
per tornare indietro nella home dalla directory epsxe
 mkdir plugin
per creare la cartella nella quale inseriremo i nostri plugin
 cd plugin
per spostarci nella cartella appena creata. Ora siamo pronti a scaricare: cominciamo con il plugin video (Pete's XGL2 2.9)
 wget http://www.pbernert.com/gpupetexgl209.tar.gz
e i relativi file di configurazione:
 wget http://www.pbernert.com/petegpucfg_V2-9_V1-77_V1-18.tar.gz
poi il plugin audio (P.E.Op.S. SPU 1.9)
 wget http://www.pbernert.com/spupeopsoss109.tar.gz
questi sono i plugin migliori, ma ce ne sono anche altri per sistemi un po' più datati. Se doveste avere problemi scaricate le alternative.
Ok ora abbiamo i plugin audio e video. Possono bastare, ma se avete intenzione di giocare con un joypad avrete bisogno anche di un plugin per questo. Anche qua vale lo stesso di scorso di prima, ovvero che ci sono molti plugin tra cui scegliere. Personalmente mi trovo bene con padjoy, quindi andiamo a scaricarlo:
 wget http://members.chello.at/erich.kitzmueller/ammoq/down/padJoy082.tgz
e scarichiamo anche il file di configurazione
 wget http://members.chello.at/erich.kitzmueller/ammoq/down/padJoy.cfg
Ok ora abbiamo veramente tutti i plugin che ci servono, quindi estraiamo e buttiamo tutto nel calderone
 tar -zxvf gpupetexgl209.tar.gz && tar -zxvf spupeopsoss109.tar.gz && tar -zxvf padJoy082.tgz && tar -zxvf petegpucfg_V2-9_V1-77_V1-18.tar.gz
adesso dobbiamo copiare i vari file nelle directory dell'emulatore: in particolare i file verrano posizionati nelle cartelle "plugins" e "cfg"
 cp libgpuPeteXGL2.so.2.0.9 ../epsxe/plugins/ && cp libspuPeopsOSS.so.1.0.9 ../epsxe/plugins/ && cp padJoy/bin/libpadJoy-0.8.so ../epsxe/plugins/
e poi
 cp cfg/cfgPeteXGL2 ../epsxe/cfg/ && cp cfgPeopsOSS ../epsxe/cfg/ && cp padJoy/bin/cfgPadJoy ../epsxe/cfg/ && cp gpuPeteXGL2.cfg ../epsxe/cfg/ && cp spuPeopsOSS.cfg ../epsxe/cfg/ && cp padJoy.cfg ../epsxe/cfg/
alla fine di queste operazioni dovremmo avere questi file nella cartella "plugins":
  • libgpuPeteXGL2.so.2.0.9  
  • libpadJoy-0.8.so 
  • libspuPeopsOSS.so.1.0.9 
e questi nella cartella "cfg":
  • cfgPadJoy    
  • cfgPeteXGL2  
  • gpuPeteXGL2.cfg  
  • spuPeopsOSS.cfg
  • cfgPeopsOSS  
  • padJoy.cfg
A questo punto non ci resta che configurare l'emulatore: spostiamoci nella cartella epsxe
 cd ../epsxe
e lanciamo l'eseguibile
 ./epsxe
ora andiamo in config->video e selezioniamo il plugin Pete XGL2. Settiamo valori in questo modo:


poi andiamo in config->audio, selezioniamo il plugin Pete OSS Audio e settiamolo in questo modo:


questi sono i valori che uso io. Mi trovo abbastanza bene, però se volete potete smanettare un po' con le configurazioni per trovare il giusto compromesso che fa per voi. per quanto riguarda il joypad, bisogna andare in config->External joypad ed impostare i tasti. Non posto nessuna foto perchè è banale.
Siamo quasi arrivati alla fine: come ultima cosa rimane da settare il BIOS, ma purtroppo per questo non posso aiutarvi e sarete costretti a prelevarlo dalla vostra Play Station.
Ora che siamo arrivati alla fine mancano i ritocchi finali: ripuliamo tutto dai file che non ci servono più
 cd ~ && rm -r plugin
per tornare alla home e rimuovere la cartella plugin e tutto ciè che contiene
Se tutto è andato per il verso giusto adesso siete pronti per lunghe sessioni a FFVII o RE. Buon divertimento!

Unire file video con avimerge su Ubuntu


Spesso capita di dover fare operazioni su file video, come ad esempio dei semplici montaggi. In questo caso non è molto comodo usare un complesso editor e si può ricorrere ad un semplice programma che concatena dei file video in entrata e genera un file video in uscita. Il programma in questione è avimerge ed è possibile installarlo in maniera molto semplice sotto Ubuntu:

1. Apriamo il terminale e scriviamo il seguente comando per installare il pacchetto transcode che contiene avimerge
 sudo apt-get install transcode
2. Dopo averlo installato, ci si sposta nella cartella dove sono contenuti i file
 cd /percorso_file
3. Infine si lancia il comando vero e proprio
 avimerge -i file1.avi file2.avi -o file_uscita.avi
dove file1.avi e file2.avi sono i file sorgente che verranno uniti, mentre il file_uscita.avi è il file video generato in output.