2012-05-14 2 views
4

Je suis en train de coder une seule image générée sur un PC vers H.264, en l'envoyant sur le réseau à l'iPad et je veux la décoder. Le cycle du côté iPad sera:Décodage des images uniques encodées en H.264 sur iOS

  1. Grab cadre du réseau
  2. décodent.
  3. L'afficher.

Cependant, je ne peux pas trouver une API qui donné un seul tampon d'une trame codée, je peux décoder à l'image originale. Je veux profiter du décodage matériel sur l'iPad. Mon plan de dernier recours est de créer un fichier mappé en mémoire, d'écrire cette image unique dans ce fichier et d'utiliser ce fichier en tant qu'entrée dans MPMoviePlayerController. C'est une solution vraiment hacky.

Est-ce que quelqu'un pourrait suggérer comment je peux prendre un tampon codé en mémoire et le décoder en utilisant du matériel dans un autre tampon en mémoire?

Merci

Répondre

1

Cela ressemble à un travail plus adapté au format JPG ou PNG sur le côté PC. Les trames de codage H.264 ne sont pas nécessairement autonomes comme le format PNG ou JPG. Ils dépendent de la dernière image clé et des images delta intermédiaires.

Si vous voulez toujours le format H.264, essayez d'examiner le framework AVFoundation et plus particulièrement la classe AVAssetReader. AVFoundation est le remplacement des anciennes API QuickTime. Les vidéos WWDC '11 de la session 405 et de la session 415 sont un bon point de départ. Le code AVEditDemoIPad n'est disponible que si vous avez participé à la WWDC l'année dernière, mais la démo d'Asset est disponible sur iTunes.

+0

Merci pour votre commentaire. J'utilise pour l'instant des i-frames qui n'utilisent pas d'informations sur l'image précédente. Je voulais profiter du décodage matériel. – Cthutu

+0

Si vous êtes sûr de cela, je pense que la classe AVAssetReader est ce que vous voulez. Bonne chance. – Mark

+0

C'est la première étape d'un flux vidéo en temps réel et en temps réel, je veux dire en temps réel REAL, pas HTTP Live Streaming. J'ai un fichier .264 image unique étant envoyé sur le réseau et j'ai besoin de le décoder. Et la chance est définitivement ce dont j'ai besoin :) – Cthutu