小编Tal*_*rom的帖子

打开全屏OpenGL窗口

我想在linux red-hat上使用GLFW打开一个OpenGL全屏窗口.我的桌面跨越两台显示器,总分辨率为3840*1080.

我有两个问题:1.窗口只在一台显示器上打开,最大窗口宽度为1920(单个显示器的宽度).2.窗口的最大高度为1003(我认为是屏幕的高度减去任务栏和顶部栏的高度).

这是我用来打开窗口的代码:

if (glfwInit() == GL_FALSE)
    std::cout<< "Unable to initialize GLFW\n";
glfwOpenWindowHint(GLFW_STEREO, GL_FALSE);
if (glfwOpenWindow(3840,1080,8,8,8,0,24,0,GLFW_FULLSCREEN) == GL_FALSE)
    std::cout<< "Unable to open window\n";
int width, height;
glfwGetWindowSize(&width, &height);
std::cout << "width = " << width << " height = " << height << "\n";
Run Code Online (Sandbox Code Playgroud)

输出:宽度= 1920高度= 1003

编辑:我使用xrandr检查可用的屏幕模式,并获得:

屏幕0:最小3840 x 1080,当前3840 x 1080,最大3840 x 1080默认连接3840x1080 + 0 + 0 0mm x 0mm 3840x1080 50.0*

EDIT2:我已经改变了我的代码,使用X11打开窗口

int doubleBufferAttributes[] = {
GLX_DRAWABLE_TYPE, GLX_WINDOW_BIT,
GLX_RENDER_TYPE,   GLX_RGBA_BIT,
GLX_DOUBLEBUFFER,  True,  /* Request a double-buffered …
Run Code Online (Sandbox Code Playgroud)

x11 opengl nvidia glfw

7
推荐指数
1
解决办法
7196
查看次数

将视频流式传输到 gstreamer rtsp 服务器

我正在尝试基于 gstreamer 构建一个 rtsp 视频服务器。在我的情况下,我需要客户端连接到服务器并开始将视频流式传输到服务器。

我已经阅读了一些关于这个主题的教程,尤其是这个:http : //www.ip-sense.com/linuxsense/how-to-develop-a-rtsp-server-in-linux-using-gstreamer/

在本教程中,视频从服务器流式传输到客户端,我需要更改它,以便视频将从客户端流式传输到服务器。

编辑:在演示中,此管道已启动:

gst_rtsp_media_factory_set_launch (factory, "( "
          "videotestsrc ! video/x-raw-yuv,width=320,height=240,framerate=10/1 ! "
          "x264enc ! queue ! rtph264pay name=pay0 pt=96 ! audiotestsrc ! audio/x-raw-int,rate=8000 ! alawenc ! rtppcmapay name=pay1 pt=97 "")");
Run Code Online (Sandbox Code Playgroud)

管道从视频和音频测试源开始,并将它们编码为有效载荷 0 和 1。我需要做相反的事情 - 获取 rtsp 有效载荷并对其进行解码。

rtsp video-streaming gstreamer

2
推荐指数
1
解决办法
9989
查看次数

检测传入套接字连接

我正在编写服务器应用程序并且select在插槽上遇到问题.select即使客户端尝试连接,服务器端也始终返回0.当我评论select并直接到accept线时一切正常(但我的应用程序被阻止)

服务器代码(在C中):

int sockfd = socket(AF_INET, SOCK_STREAM, 0);
memset((char *) &serv_addr, 0, sizeof (serv_addr));
serv_addr.sin_family = AF_INET;
serv_addr.sin_addr.s_addr = INADDR_ANY;
serv_addr.sin_port = htons(System_->commParams.port);
bind(sockfd, (struct sockaddr *) &serv_addr, sizeof (serv_addr));
fd_set fds;
timeval tv;
FD_ZERO(&fds);
FD_SET(sockfd, &fds);
int retval = 0;
tv.tv_sec = 1;
tv.tv_usec = 0;
listen(sockfd, 5);
while (retval == 0)
{
   retval = select(1, &fds, NULL, NULL, &tv);
   tv.tv_sec = 1;
   tv.tv_usec = 0;
   FD_ZERO(&fds);
   FD_SET(sockfd, &fds);        
}
unsigned …
Run Code Online (Sandbox Code Playgroud)

c sockets

0
推荐指数
1
解决办法
287
查看次数

标签 统计

c ×1

glfw ×1

gstreamer ×1

nvidia ×1

opengl ×1

rtsp ×1

sockets ×1

video-streaming ×1

x11 ×1