"/dev/video1: Aucun périphérique de ce type"

Bonjour,

voilà mon but est de redirigé une vidéo vers un périphérique video virtuel
j’ai donc crée le fichier video1 dans le repertoire /dev de cette façon :

et j’ai donnée des droits nécessaires

le problème est que lorsque je lance ce type de commande :

j’obtiens cette erreur :

alors je comprends pas, puisque je l’ai crée.
Vous auriez une idée ?

as-tu essayé avec ça :
cat mavideo.avi >> /dev/video1

Ca me donne la même erreur
je me suis un peu plongé dans la documentation en ce concerne les périphériques, j’avoue que certains points reste flou
D’après ce que j’ai compris lorsque branche un périphérique cela provoque une entrée dans le répertoire /dev
j’ai essayé de simuler un périphérique virtuel mais apparemment debian ne se contente pas de vérifier l’existence du fichier dans /dev, est ce qu’il essaierait de ce connecter au matériel?

et en créant un dossier réel ds lequel tu TC ton fichier .avi ?

excuse moi je n’ai pas compris ce que tu proposes, qu’est ce que un dossier réel? et TC ?

slt

tu veux en faire quoi exactement de ton /dev/video1 ?

ta commande mknode a créé un buffer ca c’est ok mais il te faut quelque chose derrière pour gérer ton écriture, type module character device assurant les fonctions lecture, écriture, passage de commande
c’est peut-être pour ca que ton cat ne fonctionne pas : il n’y a personne en face

Je voudrais que le /dev/video1 servent de buffer intermédiaire, entre un programme qui écris dedans et un autre qui y lise
je pensais que l’écriture pouvait se faire simplement avec cat et une redirection … tu me conseillerais quoi à la place ?
et sinon tu dis qu’il ya personne en face… mais est que ça pose vraiment un problème que les données ne soient pas immédiatement lu ?
voilà sinon si vous connaissez de bonne doc à ce sujet je suis preneur

excuse moi je n’ai pas compris ce que tu proposes, qu’est ce que un dossier réel? et TC ?[/quote]Au lieu de mknode, mkdir, ds lequel tu placerais ton fichier.
TC = DL mais en FR :wink:

[quote=“Vishnou”]Je voudrais que le /dev/video1 servent de buffer intermédiaire, entre un programme qui écris dedans et un autre qui y lise
je pensais que l’écriture pouvait se faire simplement avec cat et une redirection … tu me conseillerais quoi à la place ?
et sinon tu dis qu’il ya personne en face… mais est que ça pose vraiment un problème que les données ne soient pas immédiatement lu ?
voilà sinon si vous connaissez de bonne doc à ce sujet je suis preneur[/quote]

pour le dialogue inter-processus il y a d’autres méthodes permettant aux programmes de parler entre eux, tu peux regarder autour de l’IPC par exemple
de mon coté en dev j’ai utilisé ce type de fichier spécial pour parler à un module du noyau
c’est une possibilité dans ton cas :
ton appli fille 1 envoie des données au kernel via un character device, le kernel bufferise et laisse les données à dispo pour d’autres applis
il te faut alors écrire un petit module qui gère l’affaire

mais mon histoire relève peut-être de l’usine à gaz dans ton cas
regarde d’abord du coté de l’IPC et des tubes, attention c’est un peu lourd quand tes process ne sont pas forkés

sinon concernant ton idée première : personne n’a une idée ? moi je n’ai pas encore jardiné sur le sujet.

@ricardo, j’ai essayé et ça me donne toujours la même erreur

@antalgeek, en faite je n’ai pas vraiment le choix de choisir une autre méthode, je ne contrôle pas le processus qui lit le fichier dans /dev
merci de vos réponses en tous cas, je continue à chercher

Salut.
Je dirais tout simplement que le périphérique est mal créer.Si je ne dis pas de bétises cat te renvoie des données brutes le type de périphérique n’est pas c mais b (cf manpage)mknod /dev/videoX b 81 1

Tiens et puis tant que j’y pense si cat ne marche pas, utilise dd là c’est sur ce sera des données brutes :wink:

Alors, yoshi j’ai essayé ce que tu proposes
j’ai crée video2 qui est de type bloc, avec le cat j’obtiens ça :

et avec le dd :

dd if=MOV06770.MPG of=video2 dd: ouverture de `video2': Aucun périphérique ou adresse
bref j’avance pas trop :confused: