Samsung YP-P2: réencoder la vidéo

Lis moi avec webReader

Me suis acheté un Samsung YP-P2, hier. Parce que je pouvais l’avoir pas cher, parce qu’il a une bonne bouille, plein de mémoire, qu’il est tactile, qu’il lit le ogg et qu’on peut facilement s’affranchir de cette connerie de MTP qui ne fonctionne QUE sous ‘doz et pas sous Linux ou MacOS pour ne garder que l’UMS (qui fonctionne évidemment partout)

Comme d’hab, le logiciel pour gérer l’appareil est uniquement sous Windows. Y compris le bazar qui réencode la vidéo.

Autant gérer l’appareil on s’en fout un peu, des fois, autant réencoder de la vidéo, ça c’est important.

Vla donc le fichier mencoder.conf à mettre dans votre $HOME/.mplayer.

Rendons à César ce qui est à César, c’est Nono qui m’a filé son fichier de conf mencoder.

[mp3-base]
srate=44100
mc=0.1
oac=mp3lame=true
lameopts=cbr=true:br=128
af=resample=44100
[sub-base]
utf8=yes
ffactor=2
subpos=95
subalign=2
subfont-autoscale=2
subfont-blur=0.2
subfont-outline=1.7
subfont-text-scale=3.1
[svi-deinterlace]
vf=scale=362:272::::::1:,harddup,mcdeint=1
[svi-narrow]
vf=scale=-3:272::::::1:,harddup
[svi-wide]
vf=scale=480:-3::::::1:,harddup
[svi-178]
vf=scale=480:270::::::1:,harddup
[svi-man]
vf=scale=362:272::::::1:,harddup
[svi-med-pass1]
profile=sub-base
ofps=22
ovc=xvid=true
xvidencopts=max_bframes=0:quant_type=mpeg:bitrate=682:trellis=true:me_quality=6:vhq=4:pass=1
nosound=true
o=/dev/null
[svi-med-pass2]
profile=sub-base
profile=mp3-base
ovc=xvid=true
ofps=22
xvidencopts=max_bframes=0:quant_type=mpeg:bitrate=682:trellis=true:me_quality=6:vhq=4:pass=2
[svi-low]
profile=mp3-base
profile=sub-base
ofps=15
ovc=xvid=true
xvidencopts=max_bframes=0:quant_type=mpeg:bitrate=341
vf=scale=-3:272::::::1:,harddup
[svi-medium]
profile=mp3-base
profile=sub-base
ofps=22
ovc=xvid=true
xvidencopts=max_bframes=0:quant_type=mpeg:bitrate=682
[svi-high]
profile=mp3-base
profile=sub-base
ofps=30
ovc=xvid=true
xvidencopts=max_bframes=0:quant_type=mpeg:bitrate=1024

Pour l’utiliser:
mencoder plop.avi -profile svi-medium,svi-wide -o plop.svi

Les profiles svi-high, medium et low définissent la qualité, les autres tunent d’autres paramètres:

  • wide: pour mettre la vidéo pleine largeur (480), mais la hauteur risque de ne pas tenir dans l’écran
  • narrow: pour mettre la vidéo en plein hauteur (272), mais la largeur risque de ne pas prendre tout l’écran
  • man: dimensions manuelle (362×272)
  • 178: dimensions: 480×270 (soit un rapport l/h de 1.78)
  • deinterlace: détrentrelace la vidéo
Posted in Divers | Tagged , , , | 2 Comments

screen, ou le dont d’ubiquité

Lis moi avec webReader

Dans mon ‘ancienne vie’ un estimé collègue m’a introduit à un petit logiciel complétement génial: screen.

screen est un multiplexeur de terminal en ligne de commande.

screen avec deux terminaux ouvert

Vous allez me demande à quoi ça sert puisqu’en mode graphique il suffit soit de se connecter plusieurs fois, soit de lancer plusieur terminaux; et si vous accéder à la machine à distance de s’y connecter plusieurs fois.

Sauf que vous allez voir que vous n’allez plus pouvoir vous en passer.

Une fois lancé, screen ne quitte que lorsque vous avez fermé le dernier terminal. Mais vous pouvez vous en détacher … pour vous y rattacher ensuite.

A quoi ça sert? Ouvrez un terminal (Eterm, aterm, ou n’importe quoi d’autre), lancer une compilation du pépin linux, fermez le terminal. Il se passe quoi? vous avez, en fermant le terminal, interrompu la compilation.

Ouvrez un terminal, lancer screen, lancer une compilation, fermez le terminal. Il se passe quoi? vous vous êtes détaché de screen, mais screen continue à faire tourner la compilation!

Pour récupérer le screen que vous avez lâchement abandonné, lancer un terminal et faite ‘screen -Dr’. Si vous n’avez pas lancé plusieurs screen, cette commande va vous rattacher au seul screen lancé: celui que vous avez abandonné.

Et ça marche aussi à distance: connectez-vous à un serveur depuis votre ordi, lancer screen, éteignez votre ordi, partez en vacances, revenez, reconnectez-vous au serveur d’une manière ou d’une autre (en locale, à distance depuis votre ordi ou un autre), faites ‘screen -Dr’ et pof! vous récupérez votre screen!

Vous pouvez aussi imbriquer les screen: lancer-en un sur votre ordi, dans un des terminaux connectez-vous à une autre machine, lancer screen sur cette machine.

Je vais pas vous décrire ici les raccourcis clavier pour créer, renommer, se détacher, toussa. Je vous laisse regarder la page man, qui est très compléte.

Ah oui: vous pouvez aussi faire du Chat, avec screen: lancez-en un, disons en tant que root, demandez à une autre personne de se connecter à la machine sur laquelle il y a le screen, de passer root, puis de faire ‘screen -x’. Vous voilà tous les deux dans les même terminaux: ce que tape l’un est visible par l’autre, et vice versa.

Perso, ça m’a super servi: je montrais ainsi à distance au client comment faire certaines choses en ligne de commande: on se connectait tous les deux sur la même machine avec le même compte, je lançais un screen, il s’y rattachait, et pendant que je l’avais au téléphone je lui montrait en ligne de commande. Trop pratique!

Tout ceux à qui j’ai présenté screen l’ont adopté, et ne peuvent plus s’en passer depuis :)

Posted in Divers | Tagged , | Leave a comment

Carte son, zappette et enceintes

Lis moi avec webReader

Un pote m’a « prêté » (en vue de me vendre) des enceintes de monitoring.

Pour des problèmes de câblage que je vous épargne, je suis obligé de brancher ces enceintes sur la sortie casque du boîtier de ma carte son (une Audigy 2 platinum avec boîtier externe, pour lequel j’ai dû galérer pour le faire fonctionner).

Or, je règle le son non pas par le moniteur de son de Gnome mais par le bouton des enceintes (pas de monitoring, les autres, celles de base) : je laisse le son de Gnome toujours au même niveau.

Et ce bouton ne règle pas le volume du casque, of course (puisque le bouton des enceintes n’a rien à voir avec le son à la sortie de la carte son), et il n’y a pas de volume de son pour le casque.

Ca fait quelque temps que lirc est installé sur mon ordi, sans qu’il serve à quoi que ce soit (à part m’avoir fait couché tard pas mal de soirs, et avoir la satisfaction que la zappette du boîtier externe fonctionne) (oui, lirc est le seul qui permette de savoir ce que fait le boîtier externe, me demandez pas pourquoi…). lirc permet de lancer des commandes à la réception de signaux. Je l’avait donc configuré, juste pour le fun, pour qu’il fasse previous/next sur mpd.

Et là, je veux que le bouton de volume du boîtier externe règle le son, au lieu de rester bêtement inactif.

Or ce volume doit être indépendant de mpd (mpd permet aussi de régler le volume, mais si mpd n’est pas lancé je veux que le bouton fonctionne tout de même). Exit donc les commandes du genre ‘mpc volume +1′

Et c’est parti pour une baston contre alsa.

Alsa est génial, certes, mais la doc n’est pas son point fort. Néanmoins il permet de tout faire en ligne de commande. Absolument tout, jusque dans les moindres détails: gérer les bass/treble, canal gauche/droite, volume casque, micro, spdif, tout. Suffit de savoir lui parler.

Le salut est venu de amixer. Amixer permet de trifouiller les paramètres de la carte son: volume d’entrée et de sortie, bass, treble, tout le tintouin.

Tapez ‘amixer’ dans un terminal et vous aurez un aperçu de ce qu’il peut contrôler.

Juste pour l’exemple:

$ amixer get Master
Simple mixer control 'Master',0
Capabilities: pvolume pswitch
Playback channels: Front Left - Front Right
Limits: Playback 0 - 31
Mono:
Front Left: Playback 5 [16%] [-39.00dB] [on]
Front Right: Playback 5 [16%] [-39.00dB] [on]

Et:

$ amixer set Master 6
Simple mixer control 'Master',0
Capabilities: pvolume pswitch
Playback channels: Front Left - Front Right
Limits: Playback 0 - 31
Mono:
Front Left: Playback 6 [19%] [-37.50dB] [on]
Front Right: Playback 6 [19%] [-37.50dB] [on]

Magique :)

Mais c’est pas ce que je veux. Je veux qu’en tournant ça augment ou baisse le son. Du coup:

$ amixer set Master 1%-

Ou:

$ amixer set Master 1%+

Ca, c’est fait :)

Maintenant, je veux qu’en appuyant sur le bouton de volume, ca fasse mute (le bouton est prévu pour). Là, faut fouiller un peu plus parce que l’option ‘toggle’ ou ‘mute’ de ‘amixer set’ ne fonctionne pas.

Faites donc ‘amixer controls’ et recherchez la ligne ‘Master Volume quelque chose’

Moi, ça a le numid 28.

Juste pour vérifier:

$ amixer cget numid=28
numid=28,iface=MIXER,name='Master Playback Volume'
; type=INTEGER,access=rw---R--,values=1,min=0,max=100,step=0
: values=32
| dBscale-min=-40.00dB,step=0.40dB,mute=1

‘amixer cset numid=28 6′ a le même effet que ‘amixer set Master 6′ :)

Et ‘amixer cset’ accepte l’option toggle!

Plus qu’à mettre tout ça dans /etc/lircrc:

begin
remote = rm1500
prog = irexec
button = mute
config = /usr/bin/amixer cset numid=28 toggle
repeat = 1
end

begin
remote = audigy_io_hub
prog = irexec
button = mute
config = /usr/bin/amixer cset numid=28 toggle
repeat = 1
end

begin
remote = rm1500
prog = irexec
button = vol-
config = /usr/bin/amixer sset Master,0 1%-
repeat = 1
end

begin
remote = audigy_io_hub
prog = irexec
button = vol-
config = /usr/bin/amixer sset Master,0 1%-
repeat = 1
end

begin
remote = rm1500
prog = irexec
button = vol+
config = /usr/bin/amixer sset Master,0 1%+
repeat = 1
end

begin
remote = audigy_io_hub
prog = irexec
button = vol+
config = /usr/bin/amixer sset Master,0 1%+
repeat = 1
end

Un petit ‘/etc/init.d/irexec restart’ (sur ma Gentoo, je sais pas chez vous) et hop! le volume se règle à la zappette et au bouton de volume du boîtier externe, et en même temps ca fait bouger les barres de volume dans le moniteur de son de Gnome :)

Quand j’appuie sur le bouton, ça fait bien mute, mais une seconde pression ne remet pas le volume à son niveau initial: il faut que j’augmente le volume ‘à la main’ (à la zappette ou au bouton).

Bug or feature?

Posted in Divers | Tagged , , , | 1 Comment

Monter ses disques avec des uuid

Lis moi avec webReader

Depuis quelques temps mon gros ordi (celui qui a plein de disques durs) plantait sérieusement au bout d’un temps pas si long (plusieurs heures, mais moins d’une journée). La faute à un disque dur qui paniquait le noyau. Historiquement c’est le premier disque qu’a eu mon ordi; celui sur lequel il y a Windows

J’ai essayé en ne montant pas les partitions de ce disque, et en déplaçant le swap (qui était sur une partition de ce disque)

Etant passé à la libata depuis pas longtemps (2.6.24), tous mes disques (IDE et SATA) se sont trouvés en sd*. C’était bien beau mais il devenait impossible de désactiver le disque fautif à partir d’une option du noyau… Et enlever physiquement le disque allait déplacer tous mes sd*, et donc foutre le dawa dans mon montage

J’ai demandé de l’aide à des collègues, qui ne m’ont pas trouvés la solution pour désactiver un disque dans le noyau, mais quand j’ai parlé à l’un d’eux du problème qu’il y a à enlever physiquement un disque (décalage des sd*), il m’a sorti: « Ah, bah c’est parce que tu monte pas tes disques avec les UUID! » Dediou, mais suis-je con…

Les uuid c’est marrant: ça fait une très longue chaîne de caractère impossible à retenir. Jusqu’ici je ne voyais pas vraiment l’utilité. Je savais que les partitions en avait un, qu’on pouvait monter une partition en utilisant son uuid, mais à part ça…

L’avantage, l’IMMENSE avantage à monter une partition en utilisant son uuid c’est que même si le disque change de nappe ide, de slot sata, se balade en firewire, en usb ou pcmcia, les partitions gardent leurs uuid. Et ça, ça règle mon problème de sd* qui se fait décaler :)

Faites un tour dans /dev/disk/by-uuid et vous comprendrez.

Alors ni une ni deux, j’ai passé mon /etc/fstab avec des uuid.

Ce qui auparavant était:

/dev/sda1 / reiserfs defaults 0 1

Moyenant:

$ blkid /dev/sda1
/dev/sda1: UUID= »8b7ed797-6971-4eb8-90f3-f05555f614f3″ TYPE= »ext2″ LABEL= »boot »

Devient:

UUID=8b7ed797-6971-4eb8-90f3-f05555f614f3 / reiserfs defaults 0 1

Et hop, un reboot plus tard, et tout est comme avant. Faut juste pas oublier de faire la même chose avec le swap et les périphérique chiffrés.

Tiens par ailleurs: le fichier de conf de dmcrypt n’acceptant pas les montages à uuid, au lieu d’indiquer /dev/sdMachin, il faut lui indiquer /dev/disk/by-uuid/<UUID>

Par ailleurs encore: si vos disques ont des labels, vous pouvez les monter avec. Au lieu de ‘UUID=’, dans fstab, il faut indiquer ‘LABEL=’. Là encore, la commande blkid vous aidera.

Et pour finir: autant que je sache les uuid identifient une partition et si vous changez le système de fichier (avec mkfs.{xfs,jfs,reiserfs,ext2,and-so-on…}) l’uuid dégage. Il a cependant moyen de le forcer pour ne pas laisser le mkfs en créer un autre. RTFM :)

PS: reste un soucis: autant que je sache, udev n’est pas lancé quand le noyau cherche à monter sa partition racine. Donc l’option ‘root=’ du noyau est un /dev/machin old-school, et pas de uuid qui tiennent. Quelqu’un a une idée géniale? sans initrd, of course: trop simple :)

Posted in Divers | Tagged , , , | Leave a comment

Faciliter l’utilisation des .torrent en les transformant en .exe

Lis moi avec webReader

Lien vers le site www.torrent2exe.com

Encore un bon plan rapporté par Mr Korben pour faciliter l’utilisation des .torrent pour les gens pas forcemment super calé en informatique comme ma grand mère ou mon pote videur à la boîte de nuit du coin !

Il s’agit tout simplement de lui proposer un .exe autonome, lui évitant ainsi l’installation d’un logiciel de torrent, …

Mais comment me direz vous : tout simplement en utilisant Torrent2exe, que vous pourrez trouver à cette adresse : http://www.torrent2exe.com/

Rien de plus simple donc ! Vous collez sur le site l’url vers le .torrent ou vous uploadez votre propre torrent. Ensuite, vous choisissez un client qui fonctionne complétement en standalone (environ 700 Ko) ou qui télécharge des composants additionnels depuis internet (environ 70 Ko) et c’est parti !

C’était tellement simple ! Il suffisait d’y penser !

Bon partage …

Posted in Divers | Tagged , | 1 Comment