Question

J'utilise cette fonction pour l'audio de décodage, mais il n'y a pas de son:

int decodedBytes;
decodedBytes = avcodec_decode_audio4(myData->pCodecCtx, myData->myFrame, &data_size, &myData->pkt);

Les données sont téléchargées avec succès, mais je ne sais pas où aller d'ici, car il n'y a pas de son du tout.

Était-ce utile?

La solution

Si vous utilisez avcodec_decode_audio3 à la place il coutures au travail:

decodedBytes = avcodec_decode_audio3(myData->pCodecCtx, samples, &data_size, &myData->pkt);

Mais vous devriez probablement utiliser avcodec_decode_audio4 comme coutures avcodec_decode_audio3 à désapprouvés. Je ne sais pas grand-chose à propos de ffmpeg / libav mais je suppose que le Audio4 utilise le système tampon libav au lieu de vous faire passer dans un tampon.

Peut-être que cette diff donnera une indication comment utiliser Audio4:

http://git.libav.org/? p = libav.git; a = commitdiff; h = f199f38573c4c02753f03ba8db04481038fa6f2e

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top