2007-04-22

Encodage vidéo suite...

Alors avec le beau fichier de config trouvé dans la page de manuel j'ai eu un autre succès avec mencoder. (Les essais avec vlc n'ont rien donnés malgré ma bonne volonté).

reste à trouver comment avoir le son et voir les options d'encodage pour la taille et la qualité.

À suivre.

la ligne de commande (désarmant):
mencoder tv://

le fichier de config à mettre dans ~/.mplayer/mencoder.conf :

# fichier de sortie par défaut
o=essai.avi
# Les 4 lignes suivantes permettant à mencoder tv:// de capturer immédiatement.
oac=pcm=yes
ovc=lavc=yes
lavcopts=vcodec=mjpeg
tv=driver=v4l2:input=1:width=768:height=576:device=/dev/video0:audiorate=48000
# des options d'encodage plus complexes.
lavcopts=vcodec=mpeg4:autoaspect=1
lameopts=aq=2:vbr=4
ovc=lavc=1
oac=lavc=1
passlogfile=pass1stats.log
noautoexpand=1
subfont-autoscale=3
subfont-osd-scale=6
subfont-text-scale=4
subalign=2
subpos=96
spuaa=20

2007-04-10

Chercher dans des documents openoffice

find . -name "*.odt" -exec unzip -p {} content.xml \; -print0 | grep -i "picard" | grep -o '\./.*\.odt'

ça c'est pour chercher picard dans tous les documents odt en dessous du répertoire courant.

Les explications:
  • le find prend tous les fichiers se terminant par .odt
  • ensuite il execute dessus un unzip qui sort le résultat dans un pipe (-p) et qui extrait uniquement le fichier "content.xml" de l'archive zip qu'est le fichier odt (openoffice)
  • ensuite, toujours le find, affiche le nom du fichier courant sur la même ligne que le résultat du unzip (-print0 c'est un zéro)
  • ensuite le résultat de tout ça, c'est-àdire le contenu de tous les fichier odt qui sont dans l'arborescence du répertoire courant, est passé dans deux grep
  • le premier grep est pour trouver la chaine recherchée, (le -i c'Est pour case-insensitive)
  • le deuxième grep est pour n'afficher que le nom des fichier, le contenu étant assez indigeste. (il suffit d'enlever le deuxième grep pour avoir le contenu.) (le -o c'est pour ne montrer que le patern qui correspond à la recherche)
voili, voilou, pas super simple quand même.

2007-04-09

créer un fichier vidéo à partir d'un flux

On dirait que cette page explique comment faire avec vlc.

Je n'ai pas cherché pour mplayer et mencoder, je pense que c'est aussi simple les deux programmes doivent utiliser les même librairie en dessous.

Toujours à suivre.

acquisition de vidéos

Là je joue avec la carte tv pour acquérir de la vidéo sous linux.

la carte d'après lspci: 00:0a.0 Multimedia controller: Philips Semiconductors SAA7133/SAA7135 Video Broadcast Decoder (rev d1)

Ce que voit le noyau:

saa7130/34: v4l2 driver version 0.2.14 loaded
ACPI: PCI Interrupt 0000:00:0a.0[A] -> GSI 18 (level, low) -> IRQ 177
saa7133[0]: found at 0000:00:0a.0, rev: 209, irq: 177, latency: 32, mmio: 0xea000000
saa7133[0]: subsystem: 1462:6231, board: MSI TV@Anywhere plus [card=82,autodetected]
saa7133[0]: board init: gpio is 40
saa7133[0]: i2c eeprom 00: 62 14 31 62 10 28 ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 10: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 20: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 30: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 40: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 50: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 60: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 70: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
tuner 1-004b: chip found @ 0x96 (saa7133[0])
tuner 1-004b: setting tuner address to 61
tuner 1-004b: type set to tda8290+75a
saa7133[0]: registered device video0 [v4l2]
saa7133[0]: registered device vbi0
saa7133[0]: registered device radio0



Alors, j'ai un bon progrès : je suis capable de voir ce que la caméra envoie dans deux programmes:
mplayer et vlc.
pour mplayer la ligne:
mplayer -tv driver=v4l2:input=2:width=640:height=480:outfmt=i420 -vc rawi420 -vo xv tv://

et pour vlc:
vlc -vvv --color v4l:/dev/video0:norm=0:channel=2:size=640x480

Reste à trouver comment encoder pour que tout le monde puisse lire facilement et que ce soit pas trop gros.

Voilà,

à suivre.