Activer Frame buffer pour Mplayer

Bonjour,

 Je rencontre quelques problèmes avec mplayer et notamment pour le faire fonctionner avec l'option frame buffer (-vo fbdev). J'ai également un problème pour lire les fichiers volumineux, mais j'aimerais tout d'abord voir si ca ne vient de l'option de lecture que j'utilise. 

Donc, lorsque je lance la commande “mplayer -vo fbdev video.avi” il me sort l’erreur :

[quote]MPlayer 1.0rc1-4.1.2-DFSG-free © 2000-2006 MPlayer Team
CPU: Intel® Pentium® D CPU 2.66GHz (Family: 15, Model: 4, Stepping: 7)
CPUflags: MMX: 1 MMX2: 1 3DNow: 0 3DNow2: 0 SSE: 1 SSE2: 1
Compiled with runtime CPU detection.
mplayer: could not connect to socket
mplayer: No such file or directory
Failed to open LIRC support. You will not be able to use your remote control.

Playing myfilm.avi.
AVI file format detected.
VIDEO: [XVID] 640x272 24bpp 25.000 fps 710.8 kbps (86.8 kbyte/s)
Clip info:
Software: VirtualDubMod 1.5.10.2 Fr | trad-fr.com || (build 2540/release)

Opening video decoder: [ffmpeg] FFmpeg’s libavcodec codec family
Selected video codec: [ffodivx] vfm: ffmpeg (FFmpeg MPEG-4)

==========================================================================
Opening audio decoder: [mp3lib] MPEG layer-2, layer-3
AUDIO: 44100 Hz, 2 ch, s16le, 128.0 kbit/9.07% (ratio: 16000->176400)
Selected audio codec: [mp3] afm: mp3lib (mp3lib MPEG layer-2, layer-3)

[AO OSS] audio_setup: Can’t open audio device /dev/dsp: No such file or directory
AO: [alsa] 48000Hz 2ch s16le (2 bytes per sample)
Starting playback…
VDec: vo config request - 640 x 272 (preferred colorspace: Planar YV12)
Could not find matching colorspace - retrying with -vf scale…
Opening video filter: [scale]
VDec: using Planar YV12 as output csp (no 0)
Movie-Aspect is 2.40:1 - prescaling to correct movie aspect.
SwScaler: using unscaled yuv420p -> bgr24 special converter
VO: [fbdev] 640x272 => 652x272 BGR 24-bit
Can’t put VSCREENINFO: Invalid argument
FATAL: Cannot initialize video driver.

FATAL: Could not initialize video filters (-vf) or video output (-vo).

Exiting… (End of file)[/quote]

Pourtant j’arrive à lire des vidéos avec l’option -vo SVGA.

Quels sont les différentes étapes pour activer le frame buffer ?

P.S. : j’utilise mplayer en ligne de commande.

Moute

première étape, le faire tourner en console, pas simplement en ligne de commande.
il faut que tu charges le framebuffer correspondant à ta carte graphique.
c’est quoi comme carte ?
As tu un ou des pingouins au boot ?

En fait, je n’ai pas de serveur X et ne souhaite pas en installer, donc ce n’est pas possible d’essayer de le faire tourner en console.

Ma carte graphique est une ATI RADEON X300 SE VPU.

Qu’entends tu par “un ou des pingouins au boot” ? Tu veux savoir si j’ai plusieurs distributions ?

Moute

[quote=“moute”]En fait, je n’ai pas de serveur X et ne souhaite pas en installer, donc ce n’est pas possible d’essayer de le faire tourner en console[/quote]Ben si, justement, c’est ce que je voulais dire: en console = sans X (à ne pas confondre avec une console virtuelle sous X). Tant mieux si tu ne veux pas de X, c’est là que le fb est utile.[quote=“moute”]Ma carte graphique est une ATI RADEON X300 SE VPU.[/quote]Essayes un modprobe radeonfb, et fais un essai de mplayer.
sinon, rmmod radeonfb pour l’enlever (pas sur que ça ne plante pas ton affichage console), puis tu pourras tester eventuellement atyfb ou au pire vesafb, si ça n’est pas ça.

[quote=“moute”]Qu’entends tu par “un ou des pingouins au boot” ? Tu veux savoir si j’ai plusieurs distributions ?(…)[/quote]Quand tu actives le framebuffer dés le boot, pour chaque coeur de processeur (deux si tu es en dual core, en HT, ou en multiprocesseur) apparait un pingouin.
C’est possible que ça n’apparaisse qu’en compilant le module dans le noyau, je ne sais plus, mais en tous cas, ce sont des jolis pingouins.

Je viens d’essayer modprobe radeonfb, et il me renvoie qu’il ne trouve pas le module radeonfb (ce qui n’est pas anormal puisque qu’il est installé en natif et pas en module dans mon kernel).

Par contre, je n’ai aucun pingouin au démarrage alors que je devrais en avoir deux puisque j’ai un dual core.

J’ai pourtant bien compilé mon kernel avec les driver de ma carte graphique en natif ! Par contre, je l’ai fait sans l’option initrd …

Comment puis-je faire ?

Moute

un peu de lecture:

roc@roc:~$ man -k mkinitramfs initramfs-tools (8) - an introduction to writing scripts for mkinitramfs initramfs.conf (5) - configuration file for mkinitramfs mkinitramfs (8) - generate an initramfs image mkinitramfs-kpkg (8) - generates an initramfs image for kernel-packagemais tu veux peut être dire que tu as désactivé carrément le support des modules ? noooon :wink:
AMA, un simple mkinitramfs uname -r devrait te créer ton initrd.
Mais je ne sais pas si ça changerait quelque chose de charger en plus un initrd si tu t’en passes.
En fait, il faut aussi activer le logo de boot en plus du framebuffer dans la config, et je viens de m’apercevoir que dans la sous section Console display driver support il y a un flag Framebuffer Console support qui peut t’interresser. pour mon 2.6.22 tout du moins.

Euh juste comme ça, pourquoi faire utiliser fbdev? \o/

c’est la seule alternative à la svgalib pour faire de la VDO en console, non ?

Mais encore ? Je voit pas l’intéret…

se passer de tout le temps cpu et la mêmoire bouffés par X pour regarder un film ?

tu bouffera certainement plus de CPU avec l’utilisation du framebuffer, plutot que xvmc…

Pas forcément, avec du matos vraiment compatible framebuffer, genre LCD sur DVI. Je crois me souvenir que certains écrans de portable ont ce genre de hard aussi. Si je me souviens bien, dans l’embarqué il y a beaucoup de LCD framebuffer.
Et il me semble aussi que ce genre de matos va se multiplier.

Voici quelques nouvelles.

En trifouillant dans make menuconfig de mon kernel 2.6.18 dans la section graphic driver j’ai trouvé comment afficher les pingouins. J’ai donc rajouté l’option et je vois désormais 2 magnifiques pingouins due à mon dual core !!

Donc ca veut dire que mon framebuffer est activé, c’est ca ?

Moute

oui.

Je viens de refaire le test et ca fonctionne nikel !!!

Par contre, ca ne le met pas en plein écran … Y a-t-il un moyen de diriger le flux video en plein écran, en elevant tout le texte ?

Moute

man fbset ?

[quote=“moute”]Je viens de refaire le test et ca fonctionne nikel !!!
Par contre, ca ne le met pas en plein écran … Y a-t-il un moyen de diriger le flux video en plein écran, en elevant tout le texte ?
Moute[/quote]

Option -fs (=full screen ) de mplayer.

Ca fonctionne chez moi dans les TTY ( consoles avec CTRL+ALT+F1 …).

Ca cache le texte de la console et centre la vidéos, mais j’arrive pas a la faire vraiment afficher sur tout l’écran.

Sinon y’a une option -zoom , je ne vois pas son effet :confused:

Si une personne sait comment agrandir la vidéo en framebuffer ?

Je doute que ce soit possible avec MPlayer…
Peut-être la version console de VLC le peut-elle ?

x largeur, y hauteur , zoom

xy valeur égale
-xy 2 -zoom
ou x et y aux valeurs distinctes
-x 2 -y 1 -zoom

Testé avec succès sur sortie vidéo fbdev2 en tty.

$ mplayer -x 3 -y 2 -zoom -fs -vo fbdev2 video.ogv

J’ai fait ca :

mplayer -xy 600 -zoom -fs oiseauquisefaitdechiqueterparunsanglier.ogg

Ca fonctionne niquel, vidéo plein écran en tty avec mplayer.

Je sais pas à quoi sert fbdev2, moi je crois que ca utilise fbdev j’ai mis mon user dans le groupe video c’est tout ce que je sais.

Merci etxeberrizahar :023