« Numériser une cassette VHS sous Linux » : différence entre les versions

De Lea Linux
Aller à la navigation Aller à la recherche
m (Premier jet de l'article (inachevé !))
 
(2ème jet (toujours pas fini))
Ligne 3 : Ligne 3 :
La solution matérielle passe par le boîtier d'acquisition vidéo Dazzle DVD Recorder, que l'on trouve facilement dans le commerce (FNAC, Surcouf, etc...), pour le prix relativement modique de 59 euros.  
La solution matérielle passe par le boîtier d'acquisition vidéo Dazzle DVD Recorder, que l'on trouve facilement dans le commerce (FNAC, Surcouf, etc...), pour le prix relativement modique de 59 euros.  


'''!!! Cet article est en cours de rédaction !!!'''


== Le boîtier d'acquisition vidéo ''Dazzle DVD Recorder'' ==
== Le boîtier d'acquisition vidéo ''Dazzle DVD Recorder'' ==
Ligne 16 : Ligne 17 :


Pour faire fonctionner le boîtier ''Dazzle DVD Recorder'', il est nécessaire d'installer des modules du noyau Linux, issus du projet Video4Linux. Nous décrivons ci-après la procédure d'installation pour une distribution Mandriva 2007, l'adaption à une autre distribution Linux ne devant pas poser de problème.
Pour faire fonctionner le boîtier ''Dazzle DVD Recorder'', il est nécessaire d'installer des modules du noyau Linux, issus du projet Video4Linux. Nous décrivons ci-après la procédure d'installation pour une distribution Mandriva 2007, l'adaption à une autre distribution Linux ne devant pas poser de problème.
----
'''1ère étape : installation des sources du noyau Linux'''
Les sources du noyau sont nécessaires pour la compilation des modules Video4Linux. Dans le cas présent (Mandriva 2007), il suffit du paquetage  kernel-source-2.6.17.5mdv-1-1mdv2007.0
----
'''2ème étape: installation des sources des modules v4l (Video4Linux)'''
Les sources des modules v4l s'installent via le logiciel mercurial (gestionnaire de codes sources). Aussi, il faut installer ce dernier au réalable. Dans le cas de la Mandriva 2007, il suffit d'installer le paquetage mercurial-0.9-1mdk. On peut ensuite lancer le téléchargement des sources en tapant la commande <br />
<div class="code">  hg clone <nowiki>http://linuxtv.org/hg/~mrechberger/v4l-dvb-kernel-history</nowiki> </div><br />
Cela crée le sous-répertoire v4l-dvb-kernel dans le répertoire courant. En tant que ''su'' (utilisateur root), déplacer ce répertoire vers /usr/local/src: <br />
<div class="code"> mv v4l-dvb-kernel /usr/local/src </div><br />
----
'''3ème étape: modification des sources des modules v4l'''
a/ Pour régler un problème de compilation avec le fichier dvb_net.c, on remplace ce fichier par celui des sources de la Mandriva 2007: <br />
<div class="code"> cp /usr/src/linux-2.6.17-5mdv/drivers/media/dvb/dvb-core/dvb_net.c \
/usr/local/src/v4l-dvb-kernel/linux/drivers/media/dvb/dvb-core/ </div><br />
b/ Il faut ajouter le mode SECAM au driver em28xx/DVC 100 : à cette fin, éditer le fichier
/usr/local/src/v4l-dvb-kernel/linux/drivers/media/video/em28xx/em28xx-cards.c,
chercher la ligne contenant EM2820_BOARD_PINNACLE_DVC_100
et ajouter
<div class="code"> { <br /> .name = "SECAM", <br /> .id = V4L2_STD_SECAM, <br />}</div><br />
dans la liste .tvnorms, de sorte qu'elle devienne
<div class="code"> .tvnorms = { <br />{ <br /> .name = "SECAM", <br /> .id = V4L2_STD_SECAM,<br />},{<br />.name = "PAL-BG",<br />.id = V4L2_STD_PAL_BG,<br /> }}, </div><br />
au lieu de
<div class="code"> .tvnorms = { <br />{ <br />.name = "PAL-BG",<br /> .id = V4L2_STD_PAL_BG,<br />}}, </div><br />
Pour vérification, voici le passage considéré après modification:
<div class="code"> [EM2820_BOARD_PINNACLE_DVC_100] = {<br /> .name        = "Pinnacle Dazzle DVC 100",<br />.vchannels    = 3,<br />.norm        = V4L2_STD_PAL_BG,<br />.has_tuner    = 0,<br />.decoder      = EM28XX_SAA7113,<br />.dev_modes      = EM28XX_VIDEO,<br />.input          = {{<br />.type    = EM28XX_VMUX_COMPOSITE1,<br /> .vmux    = SAA7115_COMPOSITE0,<br />.amux    = 1,<br />},{<br />.type    = EM28XX_VMUX_SVIDEO,<br />.vmux    = SAA7115_SVIDEO3,<br />.amux    = 1,<br />}},<br />.tvnorms = {<br />{<br />.name = "SECAM",<br />.id = V4L2_STD_SECAM,<br />},{<br />.name = "PAL-BG",<br />.id = V4L2_STD_PAL_BG,<br />}},<br />}, </div><br />
----
'''4ème étape: compilation et installation des modules v4l'''
On lance la compilation par :
<div class="code"> cd /usr/local/src/v4l-dvb-kernel <br />make</div>
Avant de procéder à l'installation des modules fraîchement compilés, une petite sauvegarde s'impose:
<div class="code"> cd /lib/modules<br />tar -cvf modules_2.6.17-5mdv.tar 2.6.17-5mdv</div>
Pour éviter des conflits entre ancien_module.ko.gz et nouveau_module.ko, on efface au préalable les anciens modules:
<div class="code">rm -fr /lib/modules/2.6.17-5mdv/kernel/drivers/media</div>
L'installation peut alors avoir lieu:
<div class="code"> cd /usr/local/src/v4l-dvb-kernel <br />make install</div>

Version du 3 juin 2007 à 18:53

Résumé

Cet article propose une solution matérielle et logicielle simple pour numériser des cassettes VHS sous Linux. Les fichiers obtenus peuvent ensuite être édités par un logiciel de montage vidéo comme kino et être gravés sur un DVD, par exemple en utilisant l'excellent mandvd. La solution matérielle passe par le boîtier d'acquisition vidéo Dazzle DVD Recorder, que l'on trouve facilement dans le commerce (FNAC, Surcouf, etc...), pour le prix relativement modique de 59 euros.

!!! Cet article est en cours de rédaction !!!

Le boîtier d'acquisition vidéo Dazzle DVD Recorder

À moins que la carte vidéo de votre ordinateur ne soit équipée d'une entrée analogique (carte vidéo haut de gamme), il est nécessaire d'utiliser un boîtier d'acquisition vidéo comme interface entre votre magnétoscope (ou camescope VHS) et votre ordinateur. Ce boîtier va en effet transformer le signal analogique VHS en un signal numérique vers le port USB de l'ordinateur. La solution adoptée ici repose sur le Dazzle DVD Recorder (nom commercial), également connu sous le nom de Pinnacle Dazzle DVC 100 (nom technique). Il y a trois raisons à ce choix:

1/ sa disponibilité en France: on le trouve notamment à la FNAC et chez Surcouf

2/ son faible prix: 59 euros

3/ il est suporté par le noyau Linux ! (moyenant une petite modification, décrite ci-desous, pour la lecture en mode SECAM).

Installations logicielles nécessaires

Pour faire fonctionner le boîtier Dazzle DVD Recorder, il est nécessaire d'installer des modules du noyau Linux, issus du projet Video4Linux. Nous décrivons ci-après la procédure d'installation pour une distribution Mandriva 2007, l'adaption à une autre distribution Linux ne devant pas poser de problème.


1ère étape : installation des sources du noyau Linux

Les sources du noyau sont nécessaires pour la compilation des modules Video4Linux. Dans le cas présent (Mandriva 2007), il suffit du paquetage kernel-source-2.6.17.5mdv-1-1mdv2007.0


2ème étape: installation des sources des modules v4l (Video4Linux)

Les sources des modules v4l s'installent via le logiciel mercurial (gestionnaire de codes sources). Aussi, il faut installer ce dernier au réalable. Dans le cas de la Mandriva 2007, il suffit d'installer le paquetage mercurial-0.9-1mdk. On peut ensuite lancer le téléchargement des sources en tapant la commande

hg clone http://linuxtv.org/hg/~mrechberger/v4l-dvb-kernel-history


Cela crée le sous-répertoire v4l-dvb-kernel dans le répertoire courant. En tant que su (utilisateur root), déplacer ce répertoire vers /usr/local/src:

mv v4l-dvb-kernel /usr/local/src



3ème étape: modification des sources des modules v4l

a/ Pour régler un problème de compilation avec le fichier dvb_net.c, on remplace ce fichier par celui des sources de la Mandriva 2007:

cp /usr/src/linux-2.6.17-5mdv/drivers/media/dvb/dvb-core/dvb_net.c \ /usr/local/src/v4l-dvb-kernel/linux/drivers/media/dvb/dvb-core/


b/ Il faut ajouter le mode SECAM au driver em28xx/DVC 100 : à cette fin, éditer le fichier /usr/local/src/v4l-dvb-kernel/linux/drivers/media/video/em28xx/em28xx-cards.c, chercher la ligne contenant EM2820_BOARD_PINNACLE_DVC_100 et ajouter

{
.name = "SECAM",
.id = V4L2_STD_SECAM,
}


dans la liste .tvnorms, de sorte qu'elle devienne

.tvnorms = {
{
.name = "SECAM",
.id = V4L2_STD_SECAM,
},{
.name = "PAL-BG",
.id = V4L2_STD_PAL_BG,
}},


au lieu de

.tvnorms = {
{
.name = "PAL-BG",
.id = V4L2_STD_PAL_BG,
}},


Pour vérification, voici le passage considéré après modification:

[EM2820_BOARD_PINNACLE_DVC_100] = {
.name = "Pinnacle Dazzle DVC 100",
.vchannels = 3,
.norm = V4L2_STD_PAL_BG,
.has_tuner = 0,
.decoder = EM28XX_SAA7113,
.dev_modes = EM28XX_VIDEO,
.input = {{
.type = EM28XX_VMUX_COMPOSITE1,
.vmux = SAA7115_COMPOSITE0,
.amux = 1,
},{
.type = EM28XX_VMUX_SVIDEO,
.vmux = SAA7115_SVIDEO3,
.amux = 1,
}},
.tvnorms = {
{
.name = "SECAM",
.id = V4L2_STD_SECAM,
},{
.name = "PAL-BG",
.id = V4L2_STD_PAL_BG,
}},
},



4ème étape: compilation et installation des modules v4l

On lance la compilation par :

cd /usr/local/src/v4l-dvb-kernel
make

Avant de procéder à l'installation des modules fraîchement compilés, une petite sauvegarde s'impose:

cd /lib/modules
tar -cvf modules_2.6.17-5mdv.tar 2.6.17-5mdv

Pour éviter des conflits entre ancien_module.ko.gz et nouveau_module.ko, on efface au préalable les anciens modules:

rm -fr /lib/modules/2.6.17-5mdv/kernel/drivers/media

L'installation peut alors avoir lieu:

cd /usr/local/src/v4l-dvb-kernel
make install