小编Dev*_*ull的帖子

top显示高用户空间CPU利用率,但所有进程显示0

关于为什么负载将通过屋顶,顶部的任何想法显示每个CPU用户空间利用率为85%或更高,但没有任何进程被标记为任何CPU利用率?

我第一次看到这个.我们有一台平均负载为20的服务器,每个CPU的故障都非常高(> 85%),但列表中没有任何进程具有任何 CPU%利用率.这是一个示例,是的,这是从最高到最低CPU利用率排序的进程 - 每次在蓝色月亮中我们实际上会看到一个显示"1"作为CPU%的进程.

这是一个mysql服务器盒.

top - 16:08:48 up 185 days, 15:27,  5 users,  load average: 20.60, 17.20, 13.17
Tasks: 221 total,   2 running, 219 sleeping,   0 stopped,   0 zombie
Cpu0  : 90.3%us,  5.8%sy,  0.0%ni,  3.2%id,  0.6%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu1  : 89.1%us,  5.8%sy,  0.0%ni,  4.5%id,  0.6%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu2  : 86.4%us,  5.0%sy,  0.9%ni,  6.9%id,  0.6%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu3  : 88.1%us,  5.8%sy,  1.3%ni,  4.8%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu4  : 89.8%us,  7.2%sy,  0.0%ni, …
Run Code Online (Sandbox Code Playgroud)

linux cpu-usage

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

如何将 mjpeg 从网络摄像头更改为 yuyv422 到 v4l2loopback?

背景故事:我使用的一个直播网站不够智能,无法检测我的网络摄像头(Logitech Brio,4k)的功能,而是使用默认的每秒帧数设置,即 5fps。

(答案中的完整解决方案演练)

我能想到的最佳解决方案(除了更改直播提供商之外)是使用 v4l2loopback 创建一个环回虚拟网络摄像头,我可以强制使用我想在该直播网站上使用的确切设置。

对于 brio,更高的帧率来自 mjpeg,而不是默认的 yuyv。

问题1:

我可以很容易地阅读 mjpeg,但不幸的是我的头一直撞在墙上,因为 v4l2loopback 显然只想要 yuyv。

我试过这样的事情:

ffmpeg -f v4l2              \
       -input_format mjpeg  \
       -framerate 30        \
       -video_size 1280x720 \
       -i /dev/video0       \
       -vcodec copy         \
       -f v4l2 /dev/video6
Run Code Online (Sandbox Code Playgroud)

ffmpeg -f v4l2              \
       -input_format mjpeg  \
       -framerate 30        \
       -video_size 1280x720 \
       -i /dev/video0       \
       -vcodec yuyv422      \ # this line changed (even tried "copy")
       -f v4l2 /dev/video6
Run Code Online (Sandbox Code Playgroud)

但他们不会工作。我收到如下错误:

与 yuvj422p 等效的未知 V4L2 像素格式

...使用过时的像素格式,请确保您正确设置了范围...

...V4L2 输出设备仅支持单个原始视频流... …

linux ffmpeg live-streaming v4l2 v4l2loopback

4
推荐指数
1
解决办法
6953
查看次数

为什么新的 javascript 数组有“未定义”条目?

这是一个示例,它演示了一个数组,当您填充它时,它也会在其中获取所有类型的未定义条目。

这是在 Firefox 19.0/firebug 上,不确定它是否发生在其他浏览器上。

基本流程:

  1. 对象已初始化(最底部)
  2. 它称为“负载”
  3. 当 ajax 在加载中返回时,data.objects 包含一个 json 对象数组。该数组上没有未定义的条目。
  4. setObjects 被调用,其中来自 ajax 调用的所有对象都被复制到 this.objects。
  5. 当它们被复制时,我可以看到未定义的条目显示在萤火虫中,如果我没有第二次传递数组并拼接出未定义的条目,它会在尝试访问模板中的数组元素时破坏胡须。

为什么 javascript 会自动用未定义的条目填充 this.objects 数组?

这是代码:

function MailerFromProfile( )
{
    // privileged
    this.objects = [];
    this.load( );
}

MailerFromProfile.prototype.setObjects = function( objects )
{
    for( var i in objects )
    {
        if( 'undefined' !== objects[ i ] )
        {
            this.objects[ objects[ i ].id ] = objects[ i ];
        }
    }
    // I should not have to …
Run Code Online (Sandbox Code Playgroud)

javascript undefined

3
推荐指数
1
解决办法
3158
查看次数