v4l2 de capture vidéo exemple

ceci est mon premier post ici et j'espère que je peux trouver de l'aide

Je travaille sur linux embarqué sur samsung ok6410 conseil d'administration et ov9650 appareil-photo de cmos

J'ai pour capturer une vidéo et l'enregistrer sur une carte SD

Je veux utiliser un tampon circulaire qui capture vidéo et, quand il est plein, de permettre de nouvelles données permettra de remplacer l'ancien.

Il y a un drapeau qui, lorsqu'ils sont soulevés, la capture continue pendant 10 secondes, puis s'arrête. La vidéo est enregistrée sur la carte sd doit contenir les 10 secondes avant de lever le drapeau et 10 secondes après la levée de.

J'ai lu la capture d'exemple sur le site officiel de v4l2 les spécifications API ici

http://free-electrons.com/kerneldoc/latest/video4linux/API.html

mais il y a certains points que je ne comprends pas ou ne sais pas si je comprends bien

  1. Dans cet exemple,il y a 4 tampons de trame,chaque mémoire tampon peut contenir une image. Est-ce vrai?
  2. Il y a une variable (frame_count)qui est initialisé à 70,est-ce à dire que par la finition de ce programme, je ferai une vidéo qui contient 70 cadres?
  3. Que faire de la fns (boucle principale) et (lecture d'image)? Je sais ce qu'ils doivent faire, mais ne peut pas comprendre le code écrit ,les boucles, etc ...
  4. Comment puis-je régler le fps dans ce code ? ou, devrais-je écrire la valeur dans l'appareil photo enregistre?
  5. Après la capture de la vidéo je vais avoir un tampon, qui est rempli avec des données brutes, je veux compresser ou d'utiliser des codecs pour les enregistrer en MPEG , puis-je modifier le nombre de pixels de format de compression (MPEG par exemple) au lieu de YUYV? ou que dois-je faire pour compresser la vidéo? codecs ou quoi?
  6. Puis-je écrire ces données dans la mémoire tampon dans un fichier .yuv? J'ai trouvé un logiciel qui peut lire les vidéos de ce format.
  7. Est-il possible d'utiliser des mémoires tampon circulaire plutôt que linéaire tampons pour tenir la vidéo capturée?

Je sais que mon post est trop long, mais je suis un débutant et ne peuvent pas trouver des tutoriels qui peuvent m'aider à écrire mon code.

merci d'avance

un autre lien à partir des électrons libres: free-electrons.com/kerneldoc/latest/DocBook/media_api/...
tous les liens sont cassés

OriginalL'auteur Rehab11 | 2012-02-25