Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
[NUMÉRISATION VHS] MENCODER, BTTV BT87x : GEL PC (Résolu)
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index French
View previous topic :: View next topic  
Author Message
pti-rem
Guru
Guru


Joined: 14 Oct 2011
Posts: 482

PostPosted: Fri Oct 14, 2011 4:51 pm    Post subject: [NUMÉRISATION VHS] MENCODER, BTTV BT87x : GEL PC (Résolu) Reply with quote

Bonjour à la communauté,

Je suis en demande d'aide pour arriver à numériser une VHS avec mencoder sans que mon vieux ? PC basé sur une Asus A7N8X-E ne se fige et demande un reset pour redémarrer.

Je n'ai pas ENCORE réussi à dépasser 10 minutes de numérisation.

Je suis un débutant sous Gentoo ... Après des années sous windows, puis Mandrake, Ubuntu et Debian.

Code:

jardin rem # uname -a
Linux jardin 2.6.39-gentoo-r3 #13 SMP Wed Oct 12 23:25:50 CEST 2011 i686 AMD Athlon(tm) XP 3200+ AuthenticAMD GNU/Linux



Le n° de carte de mon périphérique de capture bttv m'est plutôt inconnu (étiquette ou sérigraphie ATI), mais voici le lspci
Code:

# lspci -vnn
        01:08.0 Multimedia video controller [0400]: Brooktree Corporation Bt878 Video Capture [109e:036e] (rev 02)
   Subsystem: ATI Technologies Inc Device [1002:0001]
   Flags: bus master, medium devsel, latency 32, IRQ 18
   Memory at d8000000 (32-bit, prefetchable) [size=4K]
   Kernel driver in use: bttv
   Kernel modules: bttv

01:08.1 Multimedia controller [0480]: Brooktree Corporation Bt878 Audio Capture [109e:0878] (rev 02)
   Subsystem: ATI Technologies Inc TV-Wonder [1002:0001]
   Flags: bus master, medium devsel, latency 32, IRQ 11
   Memory at d8001000 (32-bit, prefetchable) [size=4K]


La mémoire vive (2,5 Go DDR) est testée sans erreur avec plusieurs passes de memtest86.

Je vous cite ensuite le passage du noyau relatif au module bttv, tel qu'il est donné après le démarrage par dmesg :

Code:

bttv: driver version 0.9.18 loaded
bttv: using 8 buffers with 2080k (520 pages) each for capture
bttv: Bt8xx card found (0).
bttv0: Bt878 (rev 2) at 0000:01:08.0, irq: 18, latency: 32, mmio: 0xd8000000
bttv0: detected: ATI TV Wonder [card=63], PCI subsystem ID is 1002:0001
bttv0: using: ATI TV-Wonder [card=63,autodetected]
bttv0: gpio: en=00000000, out=00000000 in=00ffffff [init]
bttv0: tuner type=19
bttv0: audio absent, no audio device found!
i2c-core: driver [tuner] using legacy suspend method
i2c-core: driver [tuner] using legacy resume method
All bytes are equal. It is not a TEA5767
tuner 0-0060: Tuner -1 found with type(s) Radio TV.
tuner-simple 0-0060: creating new instance
tuner-simple 0-0060: type set to 19 (Temic PAL* auto (4006 FN5))
bttv0: registered device video0
bttv0: registered device vbi0
bttv0: PLL: 28636363 => 35468950 .
bttv0: PLL: 28636363 => 35468950 .
bttv0: PLL: 28636363 => 35468950 . ok


Je capture le son de l'entrée d'une carte auxilliaire :

Code:
01:07.0 Multimedia audio controller [0401]: Ensoniq ES1371 [AudioPCI-97] [1274:1371] (rev 09)
   Subsystem: Ensoniq Creative Sound Blaster AudioPCI64V, AudioPCI128 [1274:1371]
   Flags: bus master, slow devsel, latency 32, IRQ 19
   I/O ports at 9800 [size=64]
   Capabilities: [dc] Power Management version 2
   Kernel driver in use: ENS1371


Après moulte butinages dans les docs, plantages répétés et réessayage, j'utilise la commande mencoder suivante :

Code:
mencoder -tv norm=SECAM:driver=v4l2:width=720:height=576:input=1:fps=25:alsa:amode=1:adevice=hw.0,0 tv:// -endpos 00:10:00 -oac lavc -ovc lavc -of mpeg -mpegopts format=dvd -vf pp=lb/ha/va/dr,hqdn3d,scale=720:576,harddup -srate 48000 -af lavcresample=48000 -lavcopts vcodec=mpeg2video:vrc_buf_size=1835:vrc_maxrate=9800:vbitrate=5000:keyint=15:acodec=ac3:abitrate=192:aspect=4/3 -ofps 25 -o film.mpg


Cette commande sature à 75 % mon CPU ; Et cela plante dramatiquement le PC de quelques secondes à quelques minutes après son lancement.

Je sais que j'ai un matériel un peu ancien mais j'aimerai le garder encore et numériser quelques VHS avec, alors voila mes questions ...

- Pourquoi j'obtiens une meilleure image en composite qu'en s-vidéo alors qu'il est indiqué le contraire ? (couleurs bavantes avec câble s-vidéo)
- Les options "no_overlay=1" "gbuffers=32" et "vsfx=1" du module bttv peuvent-elle m'être utiles pour la stabilité ?
- Comment connaitre mon vrai n° de carte pour bttv ? ; L'autodétection est-elle opérationelle ?
- À quoi peu bien me servir l'option "buffersize=64" de mencoder ?
- Quelle sont les raisons qui peuvent amener mencoder à figer l'ordinateur comme une brique ?


Je vous remercie pour ce que vous voudrez bien dire à ce sujet : Merci pour votre apport à mon problème.

Je posterai tout ce que vous pourriez me demander de produire pour m'aider dans sa résolution.

Rémi
_________________
Traduction : le wiki a besoin de vous !


Last edited by pti-rem on Sat Oct 15, 2011 12:23 pm; edited 3 times in total
Back to top
View user's profile Send private message
netfab
Veteran
Veteran


Joined: 03 Mar 2005
Posts: 1947
Location: 127.0.0.1

PostPosted: Fri Oct 14, 2011 6:09 pm    Post subject: Reply with quote

Quote:
La mémoire vive (2,5 Go DDR) est testée sans erreur avec plusieurs passes de memtest86.

Quote:
À quoi peu bien me servir l'option "buffersize=64" de mencoder ?

À mon (humble) avis c'est la quantité de RAM maximum utilisée pour la capture, une fois cette quantité remplie, mencoder se sent obligé d'inscrire les données sur le disque.
En ce moment je fais de la capture vidéo à partir d'un camésccope analogique et d'une carte d'acquisition lambda. Si je ne fixe pas cette variable à une valeur raisonnable, au bout de quelques secondes de capture, plein de frames sont dropped (dans mes souvenirs la charge CPU montait aussi), et la vidéo finale ne ressemble à rien, malgré le fait que la page de manuel indique que le buffersize est ajusté de façon dynamique par défaut.

Je ne suis pas du tout expert en la matière, si tu veux je peux te montrer la commande que j'utilise, la tienne est déjà compliquée par rapport à la mienne et je ne suis pas sûr que çà t'apportera quelque chose, mais en gros j'ai fait comme toi : j'ai construit la commande à partir de quasi-rien, au prix de multiples essais, recherches et RTFM, tout en essayant de garder la commande aussi simple que possible, et en sachant que de toute façon, vu la qualité originale de la vidéo et le matériel utilisé, je ne risquais pas d'obtenir une vidéo finale au format HD :mrgreen:.
Back to top
View user's profile Send private message
pti-rem
Guru
Guru


Joined: 14 Oct 2011
Posts: 482

PostPosted: Fri Oct 14, 2011 6:32 pm    Post subject: Reply with quote

Quote:

Citation: À quoi peu bien me servir l'option "buffersize=64" de mencoder ?

À mon (humble) avis c'est la quantité de RAM maximum utilisée pour la capture, une fois cette quantité remplie, mencoder se sent obligé d'inscrire les données sur le disque.


Oui, je comprends.
Pour celui qui sait : quelles peuvent être les relations à comprendre avec le paramètre gbuffers du module bttv ?

Quote:
plein de frames sont dropped


J'ai constaté cela aussi sans les mises en réserve de mémoire.

Quote:
si tu veux je peux te montrer la commande que j'utilise


Je suis preneur bien sûr !

Quote:
garder la commande aussi simple que possible, et en sachant que de toute façon, vu la qualité originale de la vidéo et le matériel utilisé, je ne risquais pas d'obtenir une vidéo finale au format HD


Je suis d'accord évidemment ; mon but étant de faire une numérisation complète de VHS que je puisse ensuite passer sur un lecteur de DVD de salon classique en ayant la meilleure qualité possible par rapport à celle de la bande ainsi que la synchronisation du son.

Merci à toi.

Rémi
_________________
Traduction : le wiki a besoin de vous !
Back to top
View user's profile Send private message
fb99
l33t
l33t


Joined: 09 Apr 2003
Posts: 998
Location: Le Locle (Suisse,Neuchâtel)

PostPosted: Fri Oct 14, 2011 6:44 pm    Post subject: Reply with quote

là: http://lxr.linux.no/#linux+v3.0.4/Documentation/video4linux/bttv/Insmod-options, tu as toute les options détaillé:

Pour ce qui t'intéresse:

Quote:
gbuffers=2-32 number of capture buffers for mmap'ed capture.
38 default is 4.
39 gbufsize= size of capture buffers. default and
40 maximum value is 0x208000 (~2MB)



Perso, j'y connais rien mais comme le dit netfab, j'irais à taton en essayant de baisser ses valeurs, parce que je pense également que c'est parce qu'il n'a plus de place en ram, qu'il se fige. Essaye peut-être d'augmenter ton swap et regarder à quelle vitesse il se remplit. Mais je mettrais d'abords ses valeurs au minimum pour voir si sa tourne pour soit trouver soit éliminer cette causes à ton problème.

idem pour mendocer: $man mencoder

--> par exemple (sur ton système ou sur un moteur de recherche)
http://linux.die.net/man/1/mencoder

Quote:
buffersize=<value>

maximum size of the capture buffer in megabytes (default: dynamical)



Je pense que tu trouveras ton bonheur pour les spécification de carte avec les commandes indiqué ici :http://www.commentcamarche.net/faq/8386-kit-de-survie-linux#connaitre-son-materiel

[EDIT] ajout complément man mencoder.
[EDIT 2] ajout pour connaitre son matériel.
_________________
L'ami aime en tout temps, et dans le malheur il se montre un frère ( Prov. 17,17 )
L'insensé même, quand il se tait, passe pour sage ( Prov. 17;28a )
Back to top
View user's profile Send private message
guilc
Bodhisattva
Bodhisattva


Joined: 15 Nov 2003
Posts: 3326
Location: Paris - France

PostPosted: Sat Oct 15, 2011 10:49 am    Post subject: Reply with quote

Quand ton système plante tu as bien des logs du noyau dans le syslog ? du genre un OOM killer qui passe pas ? un kernel panic ? un kernel oops ?
Ca permettrait d'être sûr de la cause du plantage...

Sinon, si c'est uniquement un problème de ratio buffer/CPU lors de l'acquisition, il faut arrêter d'encoder à la volée : tu acquiert le flux en RAW sur le disque, puis tu encodes dans un second temps à partir du flux RAW enregistré sur le disque, comme ça, tu te libères du débit imposé par l'acquisition sur la carte, mencoder peut travailler à son rythme tranquillement. Le seul souci est d'avoir suffisamment de disque pour capturer l'intégralité du flux non-compressé sur le disque !

PS: peux-tu mettre ton titre du topic en conformité avec les conventions de notre forum s'il te plait ? Merci :)
_________________
Merci de respecter les règles du forum.

Mon site perso : https://www.xwing.info
Mon PORTDIR_OVERLAY : https://gentoo.xwing.info ou layman -a xwing
Back to top
View user's profile Send private message
pti-rem
Guru
Guru


Joined: 14 Oct 2011
Posts: 482

PostPosted: Sat Oct 15, 2011 12:20 pm    Post subject: Reply with quote

Quote:
Quand ton système plante tu as bien des logs du noyau dans le syslog ? du genre un OOM killer qui passe pas ? un kernel panic ? un kernel oops ?


Je vais regarder de près mon syslog.

Quote:
il faut arrêter d'encoder à la volée : tu acquiert le flux en RAW sur le disque, puis tu encodes dans un second temps


Après coup, je comprends ton conseil qui est tout à fait justifié ; merci.

Je pense avoir mis mon sujet en conformité ; de rien, c'est normal.

Mon problème de crash du PC semble être résolu.

J'ai fait des recherches avec "bttv crash" comme argument et je suis tombé sur une foule de messages assez anciens qui relatent un problème similaire.

Un auteur indiquait avoir solutionné son problème en changeant de bus pci la carte d'acquisition. J'avais du mal à croire dans une solution aussi simple mais j'ai personnellement essayé cette idée et j'en ai profité pour retirer une PCI LSI LOGIC SYMBIOS SYM 21002 (double SCSI 53C896) qui ne me sert plus.

Et j'ai réussi à numériser la VHS "Mon nom est ' personne ' " en entier sans un seul crash.

Quote:
Sinon, si c'est uniquement un problème de ratio buffer/CPU lors de l'acquisition


J'ai utilisé les commandes suivantes :

Code:
jardin rem # rmmod bttv tuner ; modprobe bttv card=63 pll=1  tuner=24 radio=0 vsfx=1 bttv_verbose=2 bttv_debug=1 gbuffers=32


et

Code:

jardin rem # cat ./vhs-officiel.sh
mencoder -tv norm=SECAM:driver=v4l2:width=720:height=576:input=1:fps=25:alsa:amode=1:adevice=hw.0,0:buffersize=32 tv:// -oac lavc -ovc lavc -of mpeg -mpegopts format=dvd -vf pp=lb/ha/va/dr,hqdn3d,scale=720:576,harddup -srate 48000 -af lavcresample=48000 -lavcopts vcodec=mpeg2video:vrc_buf_size=1835:vrc_maxrate=9800:vbitrate=5000:keyint=15:acodec=ac3:abitrate=192:aspect=4/3 -ofps 25 -o film.mpg



À noter quand même une vingtaine d'erreurs <7> VIDIOC_DQBUFPos lors de la numérisation de ce film ; Mais cela est hors sujet : je vais donc rechercher la signification de ce message.

Pour conclure, je dirais vieille machine et trop de cartes d'extension. Même si ma mobo dispose de 5 connecteurs PCI, rien ne m'oblige à les remplir sans véritable raison. Je ne saurai dire quel est l'aspect logiciel du module bttv qui aurai pu solutionner mon problème.

Merci à vous, encore.

Rémi
_________________
Traduction : le wiki a besoin de vous !
Back to top
View user's profile Send private message
guilc
Bodhisattva
Bodhisattva


Joined: 15 Nov 2003
Posts: 3326
Location: Paris - France

PostPosted: Sat Oct 15, 2011 5:45 pm    Post subject: Reply with quote

Cool, content que ça marche maintenant :)
_________________
Merci de respecter les règles du forum.

Mon site perso : https://www.xwing.info
Mon PORTDIR_OVERLAY : https://gentoo.xwing.info ou layman -a xwing
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index French All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum