我正在尝试在Android手机中通过RTSP协议传输视频。我创建了一个通过RTSP协议接收数据包的应用程序,使用FFMPEG进行解码,并使用SDL 2.0将其呈现给窗口。在该应用程序中,创建SDL窗口和SDL纹理如下所示:
screen = SDL_CreateWindow ("Test ffmpeg",SDL_WINDOWPOS_UNDEFINED, SDL_WINDOWPOS_UNDEFINED, 1280, 720, SDL_WINDOW_SHOWN|SDL_WINDOW_FULLSCREEN );
bmp = SDL_CreateTexture (renderer, SDL_PIXELFORMAT_IYUV, SDL_TEXTUREACCESS_STREAMING, 1280, 720);
这个应用程序在三星Galaxy S3上运行顺畅(没有任何闪烁或扭曲)(但带有红色叠加),但在HTC感觉xe,三星galaxy grand,sony xperia S上,有很多闪烁和扭曲。当我试图降低上述两种功能的分辨率时(即)创建纹理和创建窗口(HTC感觉xe中的640 * 360和三星galaxy grand中的800 * 480),应用程序运行顺畅。现在我有两个问题
答案 0 :(得分:2)
Re 2,我通过禁用开发人员选项菜单中的硬件覆盖选项解决了三星galaxy s3手机上的红色显示问题(设置 - >开发者选项 - >检查“禁用硬件覆盖”复选框)