2013-04-24 36 views
2

我试图制作一个Android应用程序,该应用程序使用FFMPEG解码Android不支持的视频(至少并非所有设备):MPEG-TS & h264 Main简介。 因此,到目前为止,我能够使用JNI中的FFMPEG解码具有上述规格的一些本地视频,但我的目标是使FFMPEG从流式URL(http://127.0.0.1:1666/)解码数据,我将在该URL上发送来自android的缓冲区服务(由于某些原因)FFMPEG&JNI:如何从URL解码

所以,基本上,我有两个问题:

  • 我如何能够从一个流网址做解码,因为我无法找到任何好的例子吗?

  • 解码我的本地MPEG-TS视频时,我注意到播放速度很慢,并且它发生了一段时间的视频冻结,即使Dolphin Player(基于FFMPEG)也具有相同的行为,我不知道是否有解决方案。任何建议?

我感谢您的帮助。

回答

1

可以采取此作为例子可以按照

iobuffer     = (unsigned char*) av_malloc(bufferSize);    
pFormatCtx    = avformat_alloc_context(); 
pFormatCtx->pb   = avio_alloc_context(iobuffer, bufferSize, 0,receiver, IORead, NULL,); 

ERR = avformat_open_input(& pFormatCtx “”,NULL,NULL);

其中pFormatCtx是AvFormatContext和ioread是从接收机

填满你的缓冲区对于你的第二个问题,我也面临着同样的问题,可惜我没找到解决办法希望你觉得它的功能并分享它