diumenge, 24 d’abril del 2011

AppleTV2 + Ipad o Iphone + Air Video Server + Airplay = Media center pràctic

L'operació de Jailbreak a un dispositiu AppleTV2 no surt sempre tan bé com un desitjaria. Si no us atreviu o simplement no en teniu ganes, podeu salvar la limitació dels formats de video de l'aparell amb una simple operació:
AppleTV2 + (iPad o iPhone) + Air Video + Air Play
L'app Air video, permet enviar video des del vostre PC (Macintosh o PC amb Windows o una Beta amb Linux) al vostre dispositiu iOs iPad o iPhone. Està doncs format per dues parts, d'una banda el Air video server que instaleu gratuitament al PC. La versio en Linux és una beta però funciona. I una app que podeu comprar a l'Apple Store per uns molt pocs euros per al vostre iPad o iPhone. Així doncs, al server li indiqueu quines carpetes ha de controlar del vostre disc dur, on hi haurà la vostra col·lecció digital i  a la pantalla de l'iPhone podreu triar quin arxiu voleu reproduir.
L'Air Video Server ja s'encarrega de convertir els formats en el format que els dispositius iOs entenen. I això si voleu ho pot fer mentre està reproduint que ho vagi convertint en viu, o posar en una cua de conversió i que ho faci en diferit al servidor. L'endemà per exemple ja tindreu llest una copia del fitxer per a reproduir directament. Si ho feu en viu, segons el fitxer, que sigui necessitareu un servidor més o menys potent. Per la meva experiència, amb un mini-itx ASUS AT5NM10 Atom D510 n'hi ha prou per reproduir fitxers .avi d'1Gb i mig sense cap problema. Ara, quan és tracta d'un .mkv HD 720p amb codec x264 no podia. També s'ha de dir que el pobre Atom té pics contínuos de 99%.

Fins aquí podeu reproduir-ho al iPhone i prou, ara be lo bo. Gràcies a la nova funcionalitat que incorpora el iOs 4.3.1, el AirPlay, que permet enviar video i audio des del iPhone/iPad a altres dispositius iOS com ara el AppleTV2, doncs sumem dos i dos i ja ho tenim. Ara bé, no és si no a la versió Beta 2.4.5-beta3 que incorpora la opció de fer AirPlay des de la app de Air Video quan està apunt de reproduïr.
Així doncs, com aniria el tema?
Suposem que el servidor ja està funcionant que ja és això el que ha de fer.
- Engeguem la TV i el Home Cinema
- Obrim al iPhone l'app AirVideo
- Triem la pel·lícula que volem veure
- Li donem al play i al botó de l'Airplay on es desplega la llista de dispositius on podem enviar el video.
- Triem el AppleTV2 i zas,... 
- La pel·lícula apareixerà a la nostra TV. És molt pràctic i funciona molt bé.
No cal interficie gràfica a la TV, ja la tenim a l'iPhone.
Hi ha però algunes coses a millorar, com ara que, en una conversió en calent no funciona gaire bé lo de guardar la posició on has parat, però no oblidem que és tracta d'una versió beta.

Arquitectures de Media center client-servidor

Com ja vaig comentar en el post anterior, el dispositiu de la casa Apple, AppleTV2, té les seves limitacions. Pel que sembla, només amb els formats MPEG-4 i MOV utilitza la descodificació per Hardware. Lo qual vol dir que en cas de Jailbreak, el XBMC no pot descodificar suficientment ràpid segons quins arxius produint-se incòmodes talls. Això ens obliga a replantejar-nos l'arquitectura del sistema. El client no pot ser l'encarregat de la tasca dura de descodificar segons quins arxius. S'ha de relegar al servidor. 
Tenim doncs, dos paradigmes d' arquitectura client-servidor. Entenem doncs, que el servidor és la font multimedia, qui conté tots els fitxers de video/audio centralitzats. I els clients són la interficie entre l'usuari (mitjançant l'aparell de TV) i el servidor.
Una arquitectura client-servidor en la que és el client qui és l'encarregat de la tasca més dura: (hard client) Descodificar els arxius de video i audio. I el servidor és un simple magatzem de dades multimedia, que serveix els fitxers via protocol SMB per exemple, i també pot ocupar-se d'altres tasques de manteniment, com ara  backups dels arxius.

 Una arquitectura client-servidor en la que el client és lleuger, (thin client) que rep les dades ja treballades i l'únic que ha de fer és reproduir-les i enviar-les a la sortida de video i audio corresponent. Ha de proporcionar també una interficie mes o menys sofisticada, que permeti a l'usuari seleccionar l'arxiu, i aturar, engegar la reproducció. El servidor és qui s'encarrega de descodificar els arxius i proporcionar-los al client en la forma més adequada per a que el seu processament sigui lleuger. Aquesta arquitectura lògicament és més adequada quan més clients hi hagi, doncs per sentit comú han de ser més barats al no requerir tanta potència. Un altre aventatge d'aquesta solució és la immediatesa d'accés. El client lleuger no costa d'engegar i no consumeix tanta energia, com tot un ordinador "normal" que, si no és vol deixar en hibernació, tarda en carregar el sistema operatiu i preparar el software de media center, actualitzar la llista d'arxius, etc...
Doncs bé, prou de teoria, el Apple TV2 és un thin-client vulguis o no, per tant necessitem un servidor més potent que li serveixi la informació una mica mastegada o adaptada si més no. 
Però bé, la cosa no és tan preocupant, qualsevol mini-itx ens serviria per a videos de definició normal. El problema és quan pujem a definició HD, (720p) aquí (també segons el format que hagi de traduïr mkv amb codec x264 per exemple) la cosa és complica.



dilluns, 11 d’abril del 2011

APPLE TV2


APPLE TV2 és un "Media Center" de reduït tamany, baix consum i 120 euros (baix preu , per ser Apple), que et cap a la mà. Diguem que els de Cupertino han aplicat el que han aprés amb la tecnologia del iphone i iPad i l'han convertit en un accessori per a dotar la TV de casa, d'un accés als serveis de xarxa i video, YouTube, streaming de video etc... i la possibilitat d'oferir lloguer de pel·lícules a un 'mòdic' preu. A més a més és l'extensió del iPhone i iPad amb la tecnologia AirPlay. Pots emetre des d'aquests aparells video o música directament a l'AppleTV i per tant a la tele.

L'AppleTV és molt simple. Una caixa on tot just hi cap, una connexió a la corrent, una sortida HDMI, un port MicroUSB, una sortida de sò òptica i una sortida Ethernet, i un comandament molt simple estil MAC.
El menú també és molt senzill:
  • un primer menú per llogar pel·lícules. Si són HD 720p, valen uns 6 euros. 
  • Un altre menú d'accés a Youtube, radios, partits de beisbol, trailers
  • un altre menú per a connectar-te a ordinadors de la teva propia xarxa i compartir fitxers de video i música amb iTunes. 
  • Un altre de configuració i poca cosa mes.
Quines limítacions té:
  • No permet reproduïr videos de 1080p, com a molt 720p. Sembla que és una limítació de hardware. Que no dona més de si.
  • Només permet formats de video dels que admet els aparells mòbils Apple, o sigui,  .m4v, .mp4, i .mov
Aleshores, si et mantens en un entorn completament Apple, (o sigui, donant l'esquena a la realitat que ens envolta) és "perfecte" però si estas acostumat a moure't amb fitxers de video de tots els formats possibles tindràs un problema.



diumenge, 27 de febrer del 2011

Gravar Imagenio amb VLC

A hores d'ara ja deveu haver trobat mil blogs on explica com veure Imagenio a l'ordinador utilitzant VLC. D'aquests mil, uns quants s'inclouen dins la cerca 'amb linux' i bastants d'aquests entrarien dins el subconjunt 'amb Ubuntu'. Ara bé,  quan busquem gravar ademés de veure, ja no hi ha tants exemples.
Imaginem que ja veiem Imagenio amb VLC i amb Ubuntu 10.10. (De fet, jo només he necessitat canviar a les adreces de cada canal el protocol udp per rtp i ja m'ha funcionat). Que s'ha de fer per a grabar. Resulta que el VLC incorpora més funcionalitats que les que a simple vista permet la seva interficie gràfica. Per accedir-hi, es pot fer mitjançant altres interficies que proveeix, com per exemple el telnet.
Per activar la interficie telnet, anem al menu del VLC : view -> add interface -> telnet.
Un cop activada, obrim una consola ssh i executem:

> telnet localhost 4212

localhost si és la pròpia màquina. La adreça IP si accedim des d'una altra.
Ara programem el que anomenen un broadcast, que seria com una emissió

> new el_meu broadcast enabled
 
Tot seguit li assignem una sèrie de propietats al nostre broadcast, primer el input que correspon a la adreça IP del canal de Imagenio que volem:

> setup el_meu input rtp://@239.0.0.42:8208

Desprès el output, que seria el fitxer de sortida on volem grabar:

>setup el_meu output /home/media100r/gravacio.mpeg

Molt bé, si ara volem començar a grabar en viu, executem:

> control el_meu play

i per parar:

> control el_meu stop

Però el que volem és diferir la gravació. Imagineu que juga el Barça per GolTV i quina mala sort! no hi podeu ser. Doncs, desprès de crear el broadcast que hem fet en els passos anteriors, hem de crear un schedule de la mateixa manera:

> new schedule enabled

També necessitarem dotar-lo d'unes propietats. La data d'inici de gravació seria una bona idea:

> setup date 2011/02/27-20:00:00

El format de la data és el següent:
(any sencer)/(mes)/(dia)-(hora):(minuts):(segons)
Lliguem el schedule al broadcast amb la propietat append, a la que segueix tota la sentència d'allò que vulguem executar, en aquest cas li donem al play:

> setup append control el_meu play

Quan arribi la data i l'hora, s'executarà la comanda i el partit del Barça es volcarà al fitxer que hem definit al broadcast: gravacio.mpeg
Però ademés també volem que pari. Hem de crear un altre schedule per a parar:

> new schedule enabled

La data que volem que executi el schedule:

> setup date 2011/02/27-22:00:00

i finalment afegim la comanda de parada:

> setup append control el_meu stop

i ja està. Un cop finalitzat tindreu el partit gravat. Sobretot no oblideu deixar l'ordinador i el VLC obert, es clar.

dimecres, 16 de febrer del 2011

Linux revolutions (3)

PC desktop: Efectiiiivament!!! Adéu a Fedora. Hola Ubuntu. Em va ser impossible canviar els drivers d'una tarja a l'altra i mantenir el Fedora (i el seny) al mateix temps. Potser soc jo que no ho se fer però me'n vaig cansar. Bé, com no hi tenia gran cosa, vaig reinstal·lar el Ubuntu amb la tarja ATI HD Radeon 4830. Desprès d'uns inicis un xic complicats, doncs no m'arrancava tampoc l'entorn gràfic, (vaig haver d'instal·lar els drivers propietaris des de la consola), finàlment me'n vaig sortir. Ara es qüestió d'anar configurant el Ubuntu i anar pulint els detalls.

Substitució de AirVideo per Windows.
Al NAS hi tenia instal·lat l'Airvideo, una aplicació que permet fer streaming/transcoding en temps real dels teus fitxers de video de l'ordinador (en qualsevol format) al iPad. Estava mooolt be i funcionava molt be. Aquí hi ha dues possibilitats: instal·lar la versió per a linux del Airvideo Server, ó instal·lar el Airvideo per a Windows i el Wine.
Finalment vaig optar per l'opció en Linux. Les instruccions les vaig trobar en aquesta pàgina.
S'ha de baixar el ffmpeg que ells mateixos han degut modificar i compilar-lo.
Va força be de moment.

diumenge, 13 de febrer del 2011

Linux revolution (2)

Com era d'esperar, arriba l'hora dels problemes. Com vaig dir el darrer cop, aparentment havia instal·lat un ubuntu 10.10 amb el XBMC i semblava anar tot be. Però a la que comences a escarvar una mica comencen a sortir els problemes. El problema és que quan no els solventen fàcilment intentes esquivar el problema i això genera nous problemes que es van escalant.
La situació és la següent:
Tinc una placa Gigabyte que du integrat la tarja gràfica (crec que és una ATI Radeon 3200 o quelcom similar perquè no ho diu enlloc) amb una sortida HDMI. I també hi vaig ficar una tarja gràfica PCI Express ATI Radeon HD4830 però que no té sortida HDMI. Fins ara, funcionava amb aquesta, amb un conversor de la sortida DVI a HDMI a la tele. Com que per aquí no es podia treure el so, només imatge, el treia per la sortida òptica S/PDIF de la placa base.

1er problema: No em funciona el so a la sortida òptica que va a la TV. Hi he donat mil voltes, els drivers hi son, em deixa escollir la sortida per pantalla el Ubuntu, però no es sent res. Es més, en les primeres proves he utilitzat un film que treu la sortida AC3 5.1 i jo diria que ha funcionat, però he passat a un altre film amb Stereo i ja res. He començat a toquejar opcions i ara ja no em funciona absolutament res. He buscat per internet en mil i un foros i res.

Per a solventar el problema 1 podria fer que enlloc de treure el so per la sortida òptica de la placa, ho faci per l'HDMI, això em solventaria dues coses, d'una banda el problema 1 i a més, podria arreglar una altra cosa que em molesta bastant, i es que quan canvío per la tele de la sortida de la TV normal o de la de Imagenio, a la del media center, he de canviar també la sortida de sò de la TV a la òptica pel comandament. Que tiquismiquis direu, però es que fer-ho a les fosques és una mica emprenyador. D'aquesta manera el so estaria unificat tot a través de la TV via els diferents HDMIs cap al Home Cinema.

Som-hi doncs:
  • Entro al setup de la Bios i canvio la assignació de la tarja gràfica. Enlloc de la PCI que usi la interna.
  • Trec el cable DVI i connecto el HDMI a la placa base.
  • Aplico els canvis de drivers des de l'escriptori mateix.
  • Funciona, ara la imatge surt per l'HDMI sense cap problema. També m'ha detectat la nova sortida de so sense problemes. Ja està!!!!
  • Ara ja puc treure la tarja PCI, no es necessaria i consumeix energia i fa més soroll. La extrec amb més o menys facilitat.
  • No, no està! :-( ara resulta que si canvio la sortida externa pel comandament de la tele, (quelcom que faig molt habitualment, per exemple, per veure que fan a la tele normal i torno a la sortida de l'ordinador, una mena de zapping entre les diferents sortides (Imagenio - TV - Media center), doncs es perd la senyal al tornar a l'ordinador. Tot negre. No es veu res. Recordo vagament aquest problema amb les tarjes ATI velles. Això ja m'ha passat abans. Busco i rebusco per internet i trobo molta gent que li passa el mateix, però no trobo cap sol·lució acceptable. Crec que la majoria han canviat de tarja.
  • Idea: la tarja gràfica de l'altre ordinador (el del despatx) si que té sortida HDMI. És una NVIDIA EN9400GT. Podria afegir-la i utilitzar aquesta enlloc de la integrada.
  • Obro l'ordinador del despatx i extrec la tarja sense problemes. Penso massa tard que en aquest ordinador al que acabo de extirpar-li la tarja, hi ha ara mateix dos Windows i un Fedora 14 que deixaran de funcionar. No l'engegaré fins que no hagi decidit no tornar-la a ficar. Així si em faig enrere no caldrà reinstal·lar res.
  • Instal·lo la tarja nova al Media Center.
  • Canvio el setup de la Bios per a que arrenqui amb la tarja NVidia.
  • Instal·lo els drivers de la NVidia a l'Ubuntu (els propietaris)
  • Quina sorollada que fa aquesta tarja. Ecsss.
  • El so no va. Era d'esperar, no hi ha cap lligam entre la tarja de so integrada a la placa i la tarja de video d'on surt la connexió HDMI.
  • S'ha d'afegir un cable de pins intern entre ambdos components. No em fa gens de gràcia. Son d'aquells cables que és poden col·locar de moltes maneres diferents.
  • Desprès d'estudiar l'esquema del manual de la placa base, connecto els pins a la sortida S/PDIF Out interna i la placa gràfica.
  • No va el so. Tot i que es sent un pet als altaveus que em donava esperança. L'icona de l'altaveu de l'Ubuntu està activa cosa que abans no. Però no va el so!!!!!!
  • A sobre que fa soroll, no va el so. Per lo menys no perdo la senyal al canviar la tele. Ho deixo està. El dilluns preguntaré a la botiga com va aquest cable o m'acabaré comprant una tarja nova? Segur q serà aquesta segona opció, però aixo no em garanteix que no porti altres problemes. grrrrrr.
  • Que faig amb l'altra tarja? La ATI Radeon HD4830. La fico enlloc de la del PC del despatx? S'haurà de reconfigurar. El Windows no hi haurà massa problema però el Fedora... Ja em veig reinstal·lant...

dimecres, 9 de febrer del 2011

Control remot d'escriptoris

La idea a partir d'ara en la Linux Revolution que he iniciat (veure post anterior), és poc a poc anar recuperant totes les funcionalitats que tenia amb Windows.
Una d'aquestes era el control remot d'escriptoris des de qualsevol punt de la meva xarxa d'ordinadors/tablets. El tenir un punt de sortida (el media center) situat a l'altell, fa molt recomanable el poder manegar, configurar-lo des del PC, més que res per comoditat i perquè hi ha coses que millor no fer-les des del sofà, tot i que la pantalla sigui de 50'', amb una resolució de 1080p, les lletres continuen sent petites.
Amb Ubuntu i Fedora, ja ho tenim tot preparat. El sistema ja t'instal·la el Vinagre, un programa per a control remot d'escriptori fàcilment. Però, vet aquí que m'he trobat amb un obstacle imprevist. M'he pogut connectar a l'escriptori del Media center, però no sembla respondre a les meves ordres, o almenys no s'actualitza la pantalla remota, perquè si em desconecto i em torno a connectar si que veig que he produït algun canvi. Puc moure el ratolí, això si.
He buscat per internet i sembla que hi ha algun problema entre el Compiz (per a millorar els efectes d'escriptori) i el VNC. Alguns deien que la sol·lució és desactivar els efectes d'escriptori, però no m'ha funcionat. Finalment he trobat la sol·lució. Es tracta d'executar el programa gconf-editor. Si no esta instal·lat, es pot executant des del terminal de Fedora amb:
yum install gconf-editor
El programa gconf-editor ens permetrà configurar característiques de gnome fàcilment. Ens presenta una finestra amb un arbre d'opcions a l'esquerra. Despleguem Desktop -> gnome -> remote_access i sel·leccionem la casella disable_xdamage. Això ho hem de fer a ambdòs escriptoris, tant el servidor com el client. I ja està, ara ja funciona correctament.