Bonjour,
Dans le cadre de la construction d'un logiciel, je suis amené à créer décoder des vidéos issues d'une caméra streamer via un flux RTP.
Mon client RTP fonctionne bien : je reçois tous les paquets et arrive à afficher la vidéo via la librairie libavccodec.
Cependant la qualité obtenue ne me convient pas et je souhaite trouver une autre solution grâce à DirecShow.
Pour ce faire, j'ai créé un filtre source qui doit permettre de remplir via FillBuffer() la pile de sample (samples qui vont par la suite passer au décoder). J'ai cependant un problème sur la façon de procéder. Je voudrais votre avis sur ce que je compte faire:
- inclure dans la méhode FillBuffer() de mon filtre source un algorithme de la forme
Code C/C++ :
tant que (réception de paquet RTP) faire
remplir un sample avec le paquet reçu
fin de faire
Est-ce que cette méthode va permetre à mon filtre de diffuser tous mes paquets au reste du graphe ?
Si non, quelle est la meilleure façon de procéder.
J'ai étudier le code source du filtre source RTP de Morgan, mais il n'utilise pas du tout cette façon de faire, et de plus, je ne comprend pas comment il passe les paquets reçus au décoder.