Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/email/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
FFMPEG Android-将bytebuffer传递给FFMPEG_Android_Streaming_Radio_Aac - Fatal编程技术网

FFMPEG Android-将bytebuffer传递给FFMPEG

FFMPEG Android-将bytebuffer传递给FFMPEG,android,streaming,radio,aac,Android,Streaming,Radio,Aac,我正在尝试ffmpeg,我被困在如何通过考试的问题上 通过FFmpeg方法avcodec\U decode\U audio3 在JNI代码中,我能够通过GetDirectBufferAddress访问bytebuffer,这给了我一个jbyte类型的对象。如何将其传递给ffmpeg的avcodec\U decode\U audio3方法 is avcodec_decode_audio3的方法声明为 以前有人这样做过吗 有人能解释一下吗?如果有人能给我一个如何做到这一点的片段,这将是非常有用的。我

我正在尝试ffmpeg,我被困在如何通过考试的问题上 通过FFmpeg方法avcodec\U decode\U audio3

在JNI代码中,我能够通过GetDirectBufferAddress访问bytebuffer,这给了我一个jbyte类型的对象。如何将其传递给ffmpeg的avcodec\U decode\U audio3方法

is avcodec_decode_audio3的方法声明为

以前有人这样做过吗


有人能解释一下吗?如果有人能给我一个如何做到这一点的片段,这将是非常有用的。

我已经开始了一个简单的项目,我使用ffmpeg解码。我已经设法用Java编译ffmpeg、获取流、解码pcm数据并将其返回到AudioTrack。唯一的问题是我只得到了noize,但我正在努力。在此处检查它

不要将其视为jbyte类型,而是将值转换为unsigned char*pBuffer char*pBuffer=*env->GetDirectBufferAddressenv,buf; 您需要将其类型转换为int16_t*示例的类型 然后将其传递给avcodec\U decode\U audio3。pBuffer

在这里进行复制: memcpysamples,frame.extended_数据[0],平面尺寸

avcodec_decode_audio3(AVCodecContext *avctx, int16_t *samples, int
*frame_size_ptr, AVPacket *avpkt)