Boostez votre Apple TV, la totale...

par Alynpier - compilation et mise à jour le 4 juin 2008

En relisant mes précédents articles concernant AppleTV, vous constaterez que les principaux reproches que je lui faisais étaient d'une part une trop faible capacité de disque dur (j'ai un modèle 40 Go, ce qui laisse en réalité 32 Go à l'utilisateur) et d'autre part le fait qu'il ne prenne pas en compte d'autres formats de lecture video, plus courants que le H.264. On pense bien sûr au Divx (et ses dérivés...) et pourquoi pas au WMV.
Et il y a encore bien d'autres choses que cette petite boîte peut faire...

Bon nombre de bidouilleurs se sont depuis sa sortie attelés à la tâche, et pour l'avoir enfin réalisé sur mon propre appareil, je vais vous en détailler les différentes étapes. Rassurez-vous, ça reste suffisament simple et à la porté de (pratiquement) tout le monde ! Comme à l'époque des flashages de graveur de DVD !!!
Je n'ai rien inventé, j'ai suivi tout cela avec un grand intérêt, et tout se trouve sur le très bon site de iClarified où je me suis contenté d'adapter, de traduire et de tester...
De plus, les derniers développements font que toutes ces opérations sont devenues très simples.

Bien évidemment, Mac & Video ne serait être tenu pour responsable d'une défaillance éventuelle... (humaine ou matérielle)
 
Toutes les opérations qui suivent ont été effectués sur mon AppleTV (un des premiers modèles 40 Go) sur lequel j'ai appliqué la dernière mise à jour logicielle disponible, à savoir la 2.0.2, accessible directement par le menu de l'appareil.
Ce qui suit s'applique donc parfaitement à un AppleTV mis à jour.

Il est possible à tout moment de restaurer votre AppleTV dans ses réglages strictement d'origine, en choisissant le menu "Réglages/Général/Réinitialiser les réglages/Retour aux réglages d'origine". Bien sûr dans ce cas, on recommence tout à zéro, comme si l'AppleTV sortait de sa boîte : tout y passe... Recherche de réseau, demande de mot de passe réseau, connexion, code d'accès iTunes Store, et nous voilà revenu en version 1.0. Bien évidemment, le disque a été vidé, et il faudra refaire une synchronisation complète audio-photo-video-contacts.
Première chose à faire, mettre à jour l'AppleTV en téléchargeant la dernière version via "Réglages/Mise à jour de logiciels/Mise à jour AppleTV".
Nous voilà revenu au début, en version 2.0.2, comme si rien ne s'était passé... On va pouvoir tout recommencer !
Evidemment que je l'ai fait (!), ce qui m'a permis de mettre complètement à jour ces articles. ;-) et de tout regrouper en un seul.


      Ce que nous allons faire :

Nous allons tout d'abord "patcher" l'AppleTV afin qu'il accepte d'installer des commandes supplémentaires.
Puis nous allons y installer les codecs de lecture Divx, Xvid et WMV, le support de disque externe USB et un explorateur de fichiers.
Dès lors, l'appareil pourra par exemple lire un fichier Divx présent sur un disque dur externe branché en USB...
Ensuite, nous lui ajouterons un plug-in de gestion... des plug-ins (!) qui fait aussi office d'installateur. Ce qui nous permettra entre autres de surveiller certaines mises à jour et d'installer un navigateur Web.


Pour tout ça, il nous faut :

- une clé USB : quelques dizaines de Mo suffisent, évitez les trop grosses capacités (au delà de 1 Go). A priori, toutes ne fonctionnent pas...
- un CD d'installation de Tiger (Mac OS X Install Disc 1) : vous en avez reçu un avec votre Mac, il faut une version "récente" (au moins 10.4.8 a priori); si la vôtre est trop ancienne, il risque de vous manquer certains fichiers. Vous n'avez pas un copain qui a un Mac récent ? ;-)
-
une application freeware : Fugu, interface de transfert sécurisé
- télécharger quelques fichiers : autant le faire avant de commencer, on sera tranquille pour la suite.
fichiers de patch Patchstick 2.0 
• Take2USB
• MàJ 10.4.9 Combo Intel
MàJ AppleTV
Sapphire
nitoTV
codecs Divx, Xvid, WMV : Perian, Flip4Mac, A52 codecs

Petite préparation :

• Monter le volume A52Codec Universal.dmg sur le Bureau, y récupérer les deux composants "A52Codec.component" et "AC3MovieImport.component" qu'on placera dans un dossier "Codecs".

• Monter WM Components 2.2.0.49.dmg, et procéder à l'installation. Ainsi votre Mac pourra également lire les WMV.
"
Flip4Mac WMV Import.component" se trouve alors dans "/Library/QuickTime/". Copiez le dans votre dossier "Codecs".

• Enfin, monter Perian_1.1.dmg, et procédez à l'installation : il suffit de double-cliquer sur "Perian.prefPane".
Ainsi votre Mac pourra également lire les Divx/Xvid. 
"
Perian.component" se trouve alors dans "/Library/QuickTime/". Copiez le aussi dans votre dossier "Codecs".

On dispose donc maintenant d'un dossier complet pour démarrer les opérations. On peut même le poser sur le Bureau :

      Première étape obligatoire : installer SSH avec une clé USB

1/ formater la clé USB

en Mac OS Etendu (journalisé), en utilisant Utilitaire De Disque. Vous la nommez comme vous voulez, mais il faudra repérer le nom par la suite...
Est il également nécessaire de vous préciser de sauvegarder le contenu de celle-ci (si vous y tenez) avant de la formater ?

Note : certains ont eu des soucis avec certaines clés. Il en ressort qu'il vaut mieux éviter les trop grandes capacités (>1 Go) et peut-être même certaines marques... Ma clé est une Verbatim 1 Go rouge... mais à mon avis, la couleur n'intervient pas ;-)))



Au passage, on peut noter sa position en disk4
Quitter
Utilitaire De Disque.

2/ préparer les fichiers

• Extraire le dossier Patchstick depuis Patchstick2.0.zip et le poser sur le Bureau :

• Insérer le CD Install 1 Tiger dans le Mac (le mien est un 10.4.10 livré avec mon iMac Intel en février dernier), et vérifier qu'il soit bien monté :

• Ouvrir la mise à jour OSX MacOSXUpdCombo10.4.9Intel.dmg, et vérifier là aussi que le volume soit bien monté (ne pas lancer le pkg !) :

• Monter sur le Bureau la mise à jour AppleTV 2Z694-5428-3.dmg (il s'appelle OSBoot) :

On doit donc avoir ça :


3/ ouvrir le Terminal et exécuter les commandes suivantes (validées par ENTER, une par une)

Terminal se trouve dans le dossiers "Applications/Utilitaires"; il fait partie de l'installation d'OSX.
Je vous conseille de copier/coller les commandes en italique et en rouge...

Au besoin, entrez votre mot de passe Administrateur. Je précise (on m'a posé la question) que le mot de passe se tape "en aveugle", c'est à dire sans écho dans le Terminal (ne pas se tromper donc) et qu'il faut le valider avec la touche ENTER.

cd ~/Desktop/Patchstick/Files

sudo sh script.sh

La machine extrait alors les fichiers nécessaires (ça dure quelques minutes), jusqu'à afficher : Set permissions: Completed avec retour au prompt.

Si vous avez des "warnings" à ce stade, c'est qu'il vous manque des fichiers; ne cherchez pas plus loin, c'est votre version de Mac OSX qui n'est pas "compatible". Demandez à un copain qui a un Mac plus récent que le vôtre qu'il vous prête son CD d'install... Pas d'autre solution, hélas !

cd ~/Desktop/Patchstick

sudo ./createPatchstick

On notera que la liste indique la totalité des volumes montés.
Faire bien attention à noter avec soin l'emplacement de la clé USB (ici disk4) :

sudo ./createPatchstick /dev/disk4

Au besoin, vous changerez en indiquant la position exacte de votre clé.
Puis, sur une confirmation pour la partition de la clé USB, taper yes puis ENTER



Le script va alors partitionner la clé puis y copier les fichiers nécessaires.

Votre clé USB est prête, elle s'appelle maintenant "Patchstick". Quittez le Terminal et éjectez la clé :

Vous êtes désormais prêt à patcher votre AppleTV !

4/ patcher l'AppleTV

Insérez la clé à l'arrière de votre AppleTV.
Pressez et maintenez les touches "-" et "Menu" jusqu'à ce qu'AppleTV reboote.

Ce qu'on voit alors à l'écran :



Ne vous inquiétez pas, ça se passe très rapidement et je n'ai eu que le temps d'essayer de faire une photo avec mon APN !



Il faut moins d'une minute pour terminer ce processus.

Une fois terminé, débrancher l'alim' de AppleTV, enlever la clé USB, et rebrancher l'AppleTV.
C'est fini !

On est maintenant prêt pour les opérations suivantes....


       Installer les codecs Divx, Xvid, WMV
  
Il faut impérativement avoir au préalable installé SSH (première étape).

1/ préparer les fichiers

Placer le dossier "Codecs" sur le Bureau

2/ ouvrir le Terminal et exécuter les commandes suivantes (validées par ENTER, une par une)

Copie des fichiers sur l'AppleTV.
Lorsqu'on vous demandera un mot de passe, indiquez frontrow (validé par ENTER)

------------------------
Notez qu'il est également possible de changer AppleTV.local par l'adresse IP de votre AppleTV, si vous le désirez. Certains problèmes de connexion ont ainsi été résolus. Il arrive aussi parfois que vous ayez ce type de message :

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@    WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!     @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that the RSA1 host key has just been changed.
The fingerprint for the RSA1 key sent by the remote host is
da:0b:9b:0a:f4:b4:e0:95:2d:b9:f1:99:f3:08:c9:bb.
Please contact your system administrator.
Add correct host key in /Users/alynpier/.ssh/known_hosts to get rid of this message.
Offending key in /Users/alynpier/.ssh/known_hosts:1
RSA1 host key for appletv.local has changed and you have requested strict checking.
Host key verification failed.

Dans ce cas, le plus simple qu'on ait trouvé a été d'effacer ce fichier "/Users/votrenom/.ssh/known_hosts"; le souci, c'est que .ssh est un dossier caché et qu'il faut donc le "révéler" avec un utilitaire comme File Buddy par exemple. Une fois le fichier effacé, l'authentification de l'hôte se passe normalement :

The authenticity of host 'appletv.local (192.168.0.3)' can't be established.
RSA1 key fingerprint is da:0b:9b:0a:f4:b4:e0:95:2d:b9:f1:99:f3:08:c9:bb.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'appletv.local,192.168.0.3' (RSA1) to the list of known hosts.
------------------------

On revient à nos fichiers :

scp -1 -r ~/Desktop/Codecs/A52Codec.component frontrow@AppleTV.local:~

scp -1 -r ~/Desktop/Codecs/AC3MovieImport.component frontrow@AppleTV.local:~

scp -1 -r ~/Desktop/Codecs/Flip4Mac\ WMV\ Import.component frontrow@AppleTV.local:~

scp -1 -r ~/Desktop/Codecs/Perian.component frontrow@AppleTV.local:~


Déplacement des fichiers au bon endroit :

ssh -1 frontrow@AppleTV.local

mot de passe : frontrow



sudo mount -uw /

sudo mv ~/AC3MovieImport.component /Library/Quicktime/

sudo mv ~/Flip4Mac\ WMV\ Import.component /Library/Quicktime/

sudo mv ~/Perian.component /Library/Quicktime/

sudo mv ~/A52Codec.component /Library/Audio/Plug-Ins/Components/



C'est tout ! A ce stade, Perian et tous ses codecs Divx sont installés... et même Flip4Mac qui permet de lire des fichiers WMV.
Quitter le Terminal.


        Installer le support de disque externe USB

Il faut impérativement avoir au préalable installé SSH (première étape).
Et on en profite pour découvrir Fugu, une très agréable interface de transfert sécurisé.

Via le Terminal, on commence par ouvrir la connexion SSH :

ssh -1 frontrow@AppleTV.local

Il arrive que ça marche mieux avec l'adresse IP de l'AppleTV. Celle-ci peut être facilement relevée dans "Réglages/Général/Réseau/Adresse IP" de votre appareil. Elle est de la forme "192.168.0.3". Dans ce cas, on se connectera comme ça :

ssh -1 frontrow@192.168.0.3

On établit les permissions d'écriture :

sudo mount -o remount,rw /dev/disk0s3 /

On ouvre alors Fugu qu'on renseigne comme suit (ou là aussi avec l'IP au lieu de AppleTV.local) :



Pensez à l'ajouter aux favoris, ça vous évitera de tout retaper à chaque fois...
Mot de passe : frontrow



Et éventellement d'ajouter votre mot de passe.

On copie le fichier Take2USB.tar dans "frontrow" par simple cliquer-glisser :



Puis dans le Terminal :


tar xvf Take2USB.tar

cd Take2USB

sudo ./putfiles.sh




L'installation est terminée, quitter le Terminal et vous pouvez débrancher votre AppleTV pour le redémarrer.
Ou, sans avoir à le débrancher, maintenir les deux touches "Menu" et "-" de la télécommande pendant quelques secondes, jusqu'à ce qu'il redémarre.
Il est maintenant doté d'une connexion USB parfaitement fonctionnelle...
Seulement voilà, comment accéder à ces fichiers présents sur le port USB ?
Nous allons devoir installer un menu supplémentaire...


      Sapphire, l'explorateur indispensable...

Sapphire est un superbe explorateur de fichiers. Je vous laisse le découvrir sur le site de l'auteur, où de nombreuses copies d'écran sont disponibles. Nous allons donc l'installer.
Vous êtes maintenant familier de ces opérations, et vous connaissez le mot de passe : frontrow

On commence par dézipper le fichier chargé "Sapphire_1.0b6.1.zip" en un dossier nommé "Sapphire.frappliance".

Terminal :

ssh -1 frontrow@AppleTV.local

sudo mount -o remount,rw /dev/disk0s3 /

Fugu, et puisque vous avez suivi mon conseil, votre connexion est directement accessible ici :



Puis on copie Sapphire.frappliance dans frontrow :



Comme il s'agit d'un plug-in du Finder, on le place au bon endroit :

sudo mv Sapphire.frappliance/ /System/Library/CoreServices/Finder.app/Contents/PlugIns

Puis on relance le Finder :

ps ax | grep Finder

Qui nous renvoie le "pid". Attention, si vous avez plusieurs lignes, il s'agit bien de celle qui concerne Finder et donc qui se termine par MacO



-> 284 (attention, chez vous, ça sera sûrement un autre !), et donc :

kill 284

Je vous laisse découvrir ce nouveau plug-in, vous ne serez pas déçu !



A noter : en mode "Lecture" des Divx/Xvid, on a accès avec la télécommande à des sauts rapides (comme des marqueurs de chapitre sur un DVD). En plus bien sûr des touches AV/AR de lecture rapide. AppleTV pose 20 marqueurs de durée égale, soit l'équivalent de 1 toutes les 5 mn sur un film d'1h40. En mode "Pause", les sauts AV/AR sont de 10 secondes.
Grâce à cette "découpe", on retrouve très facilement un endroit précis du film, ce qui pose en général difficulté sur des Divx.
Egalement intéressant, AppleTV se souvient de l'endroit où le film a été interrompu et propose lors d'une lecture suivante de reprendre là où il a été arrêté.


Enfin, lors d'un arrêt, AppleTV propose soit de retourner à la liste des fichiers, soit de reprendre le film, ou d'aller au film suivant :



On dispose en fait des mêmes commandes que celles disponibles lors de la lecture des seuls fichiers H.264 qu'AppleTV acceptait.


      nitoTV 0.4

Ce plug-in aurait pu tout compte fait être le premier à installer, puisqu'il permet d'en installer (et de mettre à jour) pas mal d'autres, y compris les codecs de lecture Divx... Par contre, je rencontre un souci en lecture à partir de sa commande "Fichiers" que je n'ai pas avec Sapphire. Je conserve donc nitoTV pour les installations (et les mises à jour) de plug-ins externes et Sapphire pour la navigation dans mes fichiers.
nitoTV va également permettre de créer, organiser et lire des "playlist", ainsi que de lire directement des VIDEO_TS ou des ISO.

ATTENTION : Le fichier téléchargé "nitoTVInstaller_tt.zip" a été dézippé en un dossier nommé "nitoTV Take Two"; or il y a un gros problème avec les espaces dans les noms de fichiers, aussi j'ai dû le renommer en "nitoTV" tout simplement.

Terminal

ssh -1 frontrow@AppleTV.local

sudo mount -o remount,rw /dev/disk0s3 /

Comme d'hab', copier le dossier nitoTV dans frontrow à l'aide de Fugu



Puis pointer sur le dossier chargé :

cd ~/nitoTV

et lancer l'installeur :

sudo ./installme

-bash-2.05b$ sudo ./installme
Password:
installer: Package name is nitoTV 0.4
installer: Installing onto volume mounted at /.
installer: The install was successful.
Restarting Finder...
-bash-2.05b$

Après l'installation, le Finder est redémarré et nitoTV disponible dans les menus; ce qui va nous permettre de régler de très nombreux paramètres, mais aussi d'installer de nombreux plug-ins. On choisit "nitoTV/Settings" :




Si on ne l'avait pas déjà fait, on aurait pu installer les codecs Perian directement ici ! Tant pis, on peut tout de même vérifier qu'ils sont à jour... les miens le sont.



Idem pour les codecs mplayer, mais plus intéressant, l'installation (ou la mise à jour) de Couch Surfer.


C'est tout de même plus simple comme ça, avec la télécommande de l'AppleTV que via le Terminal, où on a toujours un peu peur de faire une bêtise !
Il ne nous reste plus qu'à choisir Couch Surfer dans le menu, puis par exemple de faire une recherche Google :



Pour arriver sur une page de résultats et là, bien sûr :



Bon, on ne regardera peut-être pas toujours les infos comme ça, mais quand y a du monde, ça le fait !  ;-)

      "One more thing..."

Puisqu'il nous est possible de lire des Divx et que nous avons à disposition une appli qui nous permet de charger (ou décharger d'ailleurs) facilement des fichiers (Fugu), pourquoi s'en priver ? On attrape un clip sur le Mac et on le glisse dans le dossier Movies de l'AppleTV :



C'est aussi simple que ça...
Et pour l'enlever, il y a un Bouton Delete :






      Gestion de l'USB par la voie des airs...

Et voilà, plus besoin de débrancher/déplacer le disque dur, on va pouvoir tout faire à distance.
On lance Fugu et on se connecte par le menu "rapide" :



Celui-ci se connecte directement dans le dossier "frontrow" qui est en fait le dossier utilisateur de l'AppleTV :



Et bien sûr, on peut y naviguer à loisir, par exemple remonter à la racine du disque, choisir l'alias "Volumes" :



pour accéder aux différents volumes montés, qui sont OSBoot pour l'AppleTV et soit un disque dur 3,5" avec une alim' externe, comme ici :



soit une simple clé USB :



Par contre, il n'était pas forcément évident que la connexion USB fournisse suffisament de jus pour permettre l'utilisation d'un disque externe 2,5" auto-alimenté... Je dispose d'un Western Digital Passport 160 Go noir (WDXMS1600TE), et j'ai pu m'apercevoir à plusieurs reprises qu'il ne fonctionnait pas partout. Ici, pas le moindre problème, ça fonctionne !



Avantage, sa petitesse et son absence d'alim'. Dispo en noir, bleu, rouge ou blanc en 120, 160, 250 et 320 Go à des prix très raisonnables (faites vous même une recherche "Western Digital Passport" sur Google), ça me semble même être proche du compagnon idéal.
Pensez simplement qu'il faut mettre 100€ de plus pour acquérir un AppleTV 160 Go au lieu du modèle 40 Go (120 Go de plus donc), alors qu'un WD Passport 160 se trouve à 79€, et le 250 à moins de 100€ chez notre partenaire Pixmania... Think different !



Autre avantage de ce petit disque auto-alimenté, il est beaucoup plus facile à déplacer !

Si on ouvre le menu d'un volume monté, et qu'on y copie un clip video depuis le Mac (par simple cliquer-glisser), il sera instantanément disponible en lecture:



Bien sûr, ça n'est pas ce qu'il y a de plus rapide ! Pour info, il m'a fallu 54 secondes pour copier ce fichier de 72 Mo, soit une bonne grosse dizaine de minutes pour copier 1 Go... (c'est à dire en gros un film entier), mais bon, puisqu'on fait autre chose en même temps...

De même, il sera extrêmement simple de supprimer des fichiers (par exemple ceux qu'on a déjà vus), en les sélectionnant puis en utilisant la commande "Delete" :



Ainsi, nous n'aurons plus besoin de déplacer le disque dur externe pour en gérer le contenu. Il devient alors très tentant de multiplier ces disques, en y stockant nos videos par thèmes.
En ce qui me concerne, c'est ce que je vais faire, j'ai un "vieux" stock de disques externes USB...