Da qualche tempo mi diletto a bazzicare per mondi virtuali con Secondlife ma la mia Debian ha sempre avuto problemi con lo streaming audio, il suono era sfasato, come a singhiozzi (credo si dica choppy), mi vedevo cosi costretto a ripiegare su Ubuntu o Windows 7 (che tenevo appositamente in vita per queste cosine..).
Premessa: Viewer e Grid
Imprudence è un viewer, ovvero un programma che si connette ad una grid o rete.
Esistono varie grid, open e non, quelle gestite dalla Lindeln Lab si chiamano agni e aditi (vedi blog del grande Tonyno) e vari viewer.
Eccone alcuni fra i più famosi: Secondlife, Snowglobe,Hippo OpenSim,Openmetaverse
In questo articolo parleremo di Imprudence un viewer opensource multipiattaforma (Linux,Mac,Windows) il cui motto stabilito nel Manifesto è to greatly improve the usability of the Viewer.
Si tratta di un progetto comunitario, teso a superare i limiti dell’approccio aziendalistico della Lindeln Lab che, secondo gli sviluppatori di Imprudence, non investirebbe in miglioramenti sostanziali per preservare la sua leadership e mantenere inalterato il suo target di utenti.
Imprudence aggiunge nuove features e sviluppa un viewer che migliora col tempo grazie al contributo di ogni membro della comunità e non in maniera chiusa come il viewer ufficiale.
Il risultato dichiarato è lo sviluppo di nuove funzioni per migliorare l’usabilità e l’effetto emotivo sugli utilizzatori.
Al di la di tutte queste belle parole bisogna dire che il lavoro effettuato è notevole e finalmente (a parte openmetaverse) abbiamo una versione specifica precompilata per il 64 bit.
Ecco come attivare il famigerato streaming audio su Debian 64 bit per chi avesse il fastidioso effetto singhiozzo:
I viewer precompilati comunemente distribuiti hanno al loro interno molte librerie audio/video necessarie al corretto funzionamento.
Per quanto riguarda l’audio è possibile effettuare una selezione del dispositivo da usare editando il file eseguibile nella cartella dell’applicazione.
Non toccando nulla verrà utilizzato openal mentre de-commentando (togliendo il cancelletto #) davanti al rispettivo rigo si eviterà di usare il dispositivo corrispondente.
Es: togliendo il cancelletto da export LL_BAD_OPENAL_DRIVER=x si esclude openal e si passa al secondo dispositivo fmod e cosi via.
Debian nella mia “configurazione openal” non riproduce lo streaming, mentre con fmod lo distorce.
La soluzione è compilarsi l’ultima versione openal e copiare o linkare le librerie create nel viewer.
Ecco come procedere:
Al momento sono disponibili Imprudence 1.3.0 beta 2 e Openal-Soft-1.11.753.
Scarichiamo Imprudence 64 bit da questo indirizzo e scompattiamolo sul Desktop.
Installiamo le dipendenze necessarie:
# apt-get install build-essential cmake libasound2-dev
Scarichiamo openal-soft da questo indirizzo e scompattiamolo sul Desktop.
Compiliamo e installiamo:
$ cd ~/Desktop/openal-soft $ cmake ~/Desktop/openal-soft $ make $ su # make install
Sostituiamo la nuova libreria a quella del viewer:
$ rm ~/Desktop/Imprudence-1.3.0-beta-2-Linux-x86_64/lib64/libopenal.so $ cd /usr/local/lib $ su # cp libopenal.so libopenal.so.1 libopenal.so.1.11.753 ~/Desktop/ Imprudence-1.3.0-beta-2-Linux-x86_64/lib64
Per comodità creiamo il link alla path di sistema:
Piazziamo la cartella Imprudence-1.3.0-beta-2-Linux-x86_64 nella home e poi:
$ cd /usr/bin $ su # ln -s ~/Imprudence-1.3.0-beta-2-Linux-x86_64/imprudence
Avviamolo creando un lanciatore sul destkop che usi il comando imprudence e ripeschiamo l’icona nella cartella del viewer.
In caso di errore
./imprudence: regel 132: 3555 Segmentatiefout LD_LIBRARY_PATH="`pwd` "/lib64:"`pwd`"/lib32:"`pwd`"/app_settings/mozilla-runtime-linux-x86_64:"${LD_LI BRARY_PATH}" $LL_WRAPPER bin/do-not-directly-run-imprudence-bin *** Bad shutdown. ***
Usiamo il comando:
imprudence --disabledbus
Rinunceremo al lancio diretto del viewer cliccando sui link slurl in attesa di un fix ufficiale.
In caso di errore:
...2010-03-24T00:03:58Z INFO: LLVoiceClient::stateMachine: /..../...../ ......./Imprudence-1.3.0-beta-2-Linux-x86_64/bin/SLVoice not found. ..... 010-03-24T00:03:58Z INFO: print: updateImages line: 578 2010-03-24T00:03:58Z INFO: print: updateImages line: 573 2010-03-24T00:03:58Z INFO: print: updateImages line: 555 2010-03-24T00:03:58Z INFO: print: *************** END OF LL CALL STACKS
Disattivate il voice dal menu prima di loggarvi.
Nota: su sistemi a 32 bit chi avesse problemi di streaming può tentare di copiare le librerie in tutti i viewer a 32 bit supportati.
Screenshots:
[nggallery id=20].
Ilmenuatortaeantico says
Questa guida riassume in poche righe cosa sia SL, un viewer (come se fosse l’unico), e come si compila il source per avere una build ah hoc.
In pratica, non serve un cazzo.
fabrixx says
Bhè il tuo commento invece è molto utile…
Parlo di Imprudence, non dei viewer in generale, ne sono citati altri se leggi bene.
Non parla di come si compila una build ma solo di come si compilano le nuove librerie openal da linkare alla al posto di quelle gia presenti nel pacchetto.
Tra l’altro le ultime versioni di Imprudence non presentano più il problema.
Scrivi una guida tu e illuminami con la tua profonda conoscenza di SL.
Ti pregherei di usare termini corretti e di non intervenire più qui per lasciare questo genere di commenti inutili.
Chiudo.