小编Cak*_*ter的帖子

使用ffmpeg编码高质量视频

我有一组视频帧保存为目录中的图像,我正在尝试将这些视频帧编码为高质量的视频,但是我尝试的每个设置和每种格式都会产生非常明显的伪像.

基本命令是这样的:

ffmpeg -r 25 -i %4d.png myvideo.mpg
Run Code Online (Sandbox Code Playgroud)

我已经尝试了minrate和maxrate标志.任何{mpg,avi,mov,flv}格式都可以.

有关设置的建议吗?最终文件大小不是问题.

video ffmpeg video-encoding

90
推荐指数
4
解决办法
14万
查看次数

Matlab - 在不打开GUI的情况下运行文件,然后退出

我希望Matlab运行一些.m文件,该文件写入文本文件.我不希望GUI启动,我不希望命令行解释器运行.我有

matlab -nodisplay -r myfile
Run Code Online (Sandbox Code Playgroud)

但这仍然是翻译.我应该使用哪些选项?

unix linux matlab

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

在OpenGL中投影纹理

通过近裁剪平面为1,而不是0设置固定(不知道为什么会那样.与启动).请参阅骨架代码的问题,以及Adrian对其工作原理和原因的回答.

我有几个不同的相机位置,我的场景由一个四边形组成.

四边形使得它完全投影到第一帧中的视口/窗口.我想将纹理从这个相机位置投射到四边形上.纹理还完全覆盖了视口.

我做的第一件事就是

    // GL_QUADS...
    glTexCoord2f( /*one corner of s,t space*/);
    glVertex3f(/* appropriate vertex */);;
Run Code Online (Sandbox Code Playgroud)

并最终得到像(图片不是我的) 替代文字

然后我意识到是的,当然,它需要是一个投射变换.根据这些说明:

  1. 用于定向场景中投影的模型视图变换.
  2. 投影变换(透视或正交).
  3. 用于将近剪裁平面映射到纹理坐标的比例和偏差.

既然它有效,这里是代码的粗略实现:

// in init code
glEnable(GL_TEXTURE_2D);
glTexEnvf(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_DECAL);

double ratio = width/height;

// set up FROM modelview matrix
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();


gluPerspective(pcam._fov/ratio, ratio, 1, far_z);
gluLookAt(/* FROM camera's parameters */);

glTexGeni(GL_Q, GL_TEXTURE_GEN_MODE, GL_EYE_LINEAR); //S, T, R and Q
GLfloat Splane[] = {1.f, 0.f, 0.f, 0.f}; //S, T, R and Q, diagonal
glTexGenfv(GL_S,GL_EYE_PLANE,Splane); //S, T, R …
Run Code Online (Sandbox Code Playgroud)

c++ opengl 3d graphics

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

为QGraphicsView小部件设置纯背景颜色

我试图显示一个小方块的纯色.

我创建了一个QGraphicsView小部件myGraphicsView并调用:

ui->myGraphicsView->setBackgroundBrush(QBrush(Qt::red, Qt::SolidPattern));
Run Code Online (Sandbox Code Playgroud)

但它保持白色.我究竟做错了什么?

c++ qt qt4 qt-creator qt-designer

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

标签 统计

c++ ×2

3d ×1

ffmpeg ×1

graphics ×1

linux ×1

matlab ×1

opengl ×1

qt ×1

qt-creator ×1

qt-designer ×1

qt4 ×1

unix ×1

video ×1

video-encoding ×1