流媒体播放器又叫流式媒体,是指边传边播的媒体软件。流媒体中的“流”指的是一种传输方式。流媒体播放器一般指能把视频文件经过流式传输的方式在Internet播放的播放器。用户经过一边不断接受数据而后一遍播放数据达到一个流媒体的传输方式。canvas
EasyPlayerPro是一款简单精炼,易用,高效,稳定的流媒体播放器,支持RTSP(TCP / UDP上的RTP),RTMP,HTTP,HLS,TCP,UDP等多种流媒体协议,支持多种编码格式的流媒体音视频直播流,点播流,文件播放。函数
对于每一位用户反馈、咨询的问题,咱们通常都会尽快进行排查和解决。以前有用户反馈有部分视频源在全屏模式下显示黑屏,咱们接到反馈的同时立刻协同开发人员进行检查。编码
通过咱们的开发检测,发现实际上是1080P的视频在全屏状态下会显示黑屏,且显示器分辨率恰好是1080P,而且是在GDI的显示模式下。spa
GDI显示视频使用的是DrawDibDraw函数, 后经调试, 是坐标的问题,修改如下三行代码:调试
SetWindowExtEx(gdiRenderObj.canvas.hDCMemRender, 1, -1, &szWindowExt); ::SetViewportOrgEx(gdiRenderObj.canvas.hDCMemRender, rcWindow.left, rcWindow.bottom, &ptOrg); //2017.11.28 rcWindow.bottom-1, 解决显示时顶部一条黑线问题 ::SetViewportExtEx(gdiRenderObj.canvas.hDCMemRender, 1, 1, &szViewportExt);
而后在DrawDibDraw函数中将height-1(必须,不然不能正常显示);code
BOOL bRet = ::DrawDibDraw(gdiRenderObj.hDrawDIB, gdiRenderObj.canvas.hDCMemRender, dstL,//rc.left, // dest : left pos dstT,//rc.top, // dest : top pos //-1, // don't zoom x //-1, // don't zoom y dstW, dstH-1, pbih, // bmp header info pBuf, // bmp data iSrcLeft, // src :left iSrcTop, // src :top iSrcWidth, // src : width iSrcHeight, // src : height 0//DDF_SAME_DRAW // use prev params.... );