小编Cha*_*tha的帖子

如何在Web环境Web应用程序(如Google Hangouts或OpenTokRTC)中禁用自动增益控制(AGC)

在WebRTC之前的googletalkplugin时代,可以通过添加audio-flags: 1到配置文件来禁用AGC(麦克风的自动增益控制).但是,由于Google Hangouts现在使用的是WebRTC,因此在我与某人聊天时,我的麦克风级别会一直向下拍摄,以至于我在另一方面或多或少保持沉默.我也有通讯员,他的麦克风音量一直在增加,反复.

我在http://opentokrtc.com/上也重现了这种行为,它也使用了WebRTC.通过在我的麦克风中发出响亮的砰砰声,我可以通过几个步骤让关卡完全降低.我可以在Chrome 38和FireFox 34 beta上做到这一点.

但是,当我在我的Ubuntu 14.04.1机器上使用本地应用程序(如Audacity)时,我无法通过发出响亮的砰砰声来影响麦克风级别.换句话说,它看起来真的像WebRTC是罪魁祸首.

似乎在Chrome的实现中,可以通过传递googAutoGainControlgetUserMedia()调用来配置WebRTC AGC .在FireFox上我找不到相应的东西.

我的问题是:作为WebRTC 最终用户,我如何配置我的浏览器(Chrome或FireFox)以禁用AGC,因为AGC在我的设置上无法正常工作?

javascript firefox google-chrome webrtc getusermedia

17
推荐指数
1
解决办法
5697
查看次数

多个注释和术语产生膨胀的答案

在下面的设置中,我想要一个带有项目列表的QuerySet,每个项目都注释了所有任务持续时间(作为tasks_duration)的总和以及所有任务的子任务持续时间的总和(asasasks_duration).我的模型(简化)看起来像这样:

class Project(models.Model):
    pass

class Task(models.Model):
    project = models.ForeignKey(Project)
    duration = models.IntegerField(blank=True, null=True)

class SubTask(models.Model):
    task = models.ForeignKey(Task)
    duration = models.IntegerField(blank=True, null=True)
Run Code Online (Sandbox Code Playgroud)

我像这样制作我的QuerySet:

Projects.objects.annotate(tasks_duration=Sum('task__duration'), subtasks_duration=Sum('task__subtask__duration'))
Run Code Online (Sandbox Code Playgroud)

Django annotate()中解释的行为相关的多次导致错误的答案我得到的task_duration比它应该高得多.多个annotate(Sum())子句在结果SQL中产生多个左内连接.对于tasks_duration只有一个注释(Sum())项,结果是正确的.但是,我想同时拥有tasks_duration和subtasks_duration.

什么是适合这种查询的方法?我有一个工作解决方案,按项目执行,但预计会非常缓慢.我也有类似的工作与extra()调用,但我真的想知道我想要的纯粹Django是否可能.

django annotate django-queryset

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

如何使用QML Scale Element进行不同来源的增量缩放

我正在尝试使用QML Scale Element来围绕用户点击的点执行视图缩放,但它并不总是按照记录的方式工作.

要重现该问题,请运行下面的最小QML示例(我在Ubuntu 14.04 x86_64上使用Qt 5.3.1)然后:

  • 单击左上角蓝色矩形的中心.
  • 看到所有内容都按比例放大,但蓝色矩形的中心仍保留在您的点击位置.这是在http://doc.qt.io/qt-5/qml-qtquick-scale.html中记录的 - "[原点]保持项目缩放的点(即,保持固定的点)相对于父项,随着项目的其余部分增长)."
  • 现在单击红色矩形的中心.
  • 看到所有内容都按比例放大,但红色矩形的中心没有保留在您的点击位置,它被向上和向左平移.这不是记录在案的.

我的目标是让它始终正确缩放,将点击点保持为原点,如文档中所述.

PS有趣的是,如果您现在再次点击红色矩形的中心,它会按照承诺在该点附近放大.现在再次单击蓝色矩形的中心,您会看到相同的意外翻译行为.

PPS我正在开发一个应用程序,用户可以在包含矩形的任何地方鼠标滚动/捏住,内部的所有内容都应该在鼠标/捏合位置周围向上或向下缩放.许多应用程序都有这种行为.参见例如inkscape.

import QtQuick 2.2
import QtQuick.Controls 1.1

ApplicationWindow {
    visible: true
    width: 640
    height: 480
    title: qsTr("Hello World")

    Rectangle {
        x: 100
        y: 100
        width: 300
        height: 300

        transform: Scale {
            id: tform
        }

        MouseArea {
            anchors.fill: parent
            onClicked: {
                console.log(mouse.x + " " + mouse.y)
                tform.xScale += 0.5
                tform.yScale += 0.5
                tform.origin.x = mouse.x
                tform.origin.y = mouse.y
            }
        } …
Run Code Online (Sandbox Code Playgroud)

qt qml qt-quick

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