Une remarque: essayer de poser cette question sur la liste des utilisateurs de ffmpeg. Vous y trouverez certainement des ffmpeg gurus.
J'utilise principalement ffmpeg pour encoder/décoder de la vidéo. Pour décoder, les "avcodec_decode_ *" sont les bonnes choses à utiliser pour ... décoder. Ce que vous obtenez est ... 16 bits PCM. Ce que je veux dire, c'est que le décodage d'un flux multimédia peut être difficile et ffmpeg est un lib bas niveau. Il est difficile d'être plus précis avec juste la ligne de code que vous donnez (au moins vous devriez être plus précis sur vos paramètres). Ce qu'il faut faire attention, c'est que lorsque vous lisez un flux multimédia, vous devez d'abord démultiplexer votre flux (parfois même s'il n'y a qu'un seul flux dans votre conteneur) et ensuite le décoder avec le bon codec. Si vous avez correctement demuxed votre flux, correctement initialisé le contexte de votre codec/codec vous pouvez appeler avcodec_decode et il sera fonctionne :)
Comme vous le mentionnez C++ dans vos tags, vous pouvez essayer un C++ emballage pour ffmpeg: FOBS Le l'utilisation est beaucoup plus simple mais bien sûr, vous perdez le contrôle précis ...
J'espère que cela aide.