小编Oli*_*der的帖子

如何在PC中区分耳机与集成音频

我正在使用惊人的NAudio框架来获取音频设备列表.

但正如我所看到的那样,音频设备是PC的集成音频和耳机是不可能的.我的意思是他们有相同的名字,只有当我们插入耳机它才会进入Active状态.

想象一下,如果我使用插入式耳机启动应用程序,我如何知道当前设备是耳机而不是PC的集成音频?

我的意思是我们可以通过NAduio检测到插入的音频设备是外部音频设备并且是耳机本身吗?

var enumerator = new NAudio.CoreAudioApi.MMDeviceEnumerator();

// Allows you to enumerate rendering devices in certain states
var endpoints = enumerator.EnumerateAudioEndPoints(
    DataFlow.Render,
    DeviceState.Unplugged | DeviceState.Active);
foreach (var endpoint in endpoints)
{
    Console.WriteLine("{0} - {1}", endpoint.DeviceFriendlyName, endpoint.State);
}

// Aswell as hook to the actual event
enumerator.RegisterEndpointNotificationCallback(new NotificationClient());
Run Code Online (Sandbox Code Playgroud)

NotificationClient的实现方式如下:

class NotificationClient : NAudio.CoreAudioApi.Interfaces.IMMNotificationClient
{
    void IMMNotificationClient.OnDeviceStateChanged(string deviceId, DeviceState newState)
    {
        Console.WriteLine("OnDeviceStateChanged\n Device Id -->{0} : Device State {1}", deviceId, newState);
    }

    void IMMNotificationClient.OnDeviceAdded(string pwstrDeviceId) …
Run Code Online (Sandbox Code Playgroud)

c# naudio headphones audio-device naudio-framework

9
推荐指数
1
解决办法
606
查看次数

如何使用 Swagger UI 下载文件

我有休息控制器,它以流文件作为内容返回 HttpResponseMessage,如下所示:

public class MyController : ApiController
{
    public HttpResponseMessage GetFile(string id)
    {
        try { 
            var stream = fileSystemUtils.GetFileStream(filePath); //Get Stream
            HttpResponseMessage response = new HttpResponseMessage(HttpStatusCode.OK);
            response.Content = stream;
            return response;
        }
        catch (FileNotFoundException)
        {
            return new HttpResponseMessage(HttpStatusCode.NotFound);
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

当我在浏览器中通过 ULR 调用此方法时,一切正常,我可以下载此文件。现在我想使用 Swagger UI 下载它。有什么简单的方法可以做到这一点吗?

c# asp.net-web-api swagger

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

Indesign Server Scripting Textarea.Contents

我正在创建一个用于Indesign Server(CS3)的Javascript脚本.

试图找到文档中的所有textareas并找到它们的内容.

我可以使用Adobe提供的功能轻松遍历所有textareas.

但是,当我尝试获取TextArea的内容时,我只获取该textarea中可见的内容,而不是输出端口文本.

document.TextAreas[0].contents
Run Code Online (Sandbox Code Playgroud)

换句话说,如果Indesign文档包含带有小加号的textarea,表示有更多文本,但它不适合,那么我的脚本不会返回隐藏文本.

或者,再说一遍.当'textarea'的'overflows'属性为false时,我能获得整个内容吗?

完整代码:

function FindAllTextBoxes(){
        var alertMessage;
        for (var myCounter = myDoc.textFrames.length-1; myCounter >= 0; myCounter--) {
        var myTextFrame = myDoc.textFrames[myCounter];
            alertMessage += "\nTextbox  content: " + myTextFrame.contents;
            alertMessage += "\nOverflow:" + myTextFrame.overflows;
            alert(alertMessage);
        }
}
Run Code Online (Sandbox Code Playgroud)

我怎样才能阅读Textarea的全部内容?

javascript indesign-server

5
推荐指数
1
解决办法
580
查看次数

gamsel R Package错误

我正在尝试使用gamsel R程序包来适应稀疏的广义加性模型,但似乎无法使它用于实际数据。当我按照软件包文档中的描述运行综合数据时,一切运行良好:

library(gamsel)
data=gendata(n=500,p=12,k.lin=3,k.nonlin=3,deg=8,sigma=0.5)
attach(data)
bases=pseudo.bases(X,degree=10,df=6)
gamsel.out=gamsel(X,y,bases=bases)
Run Code Online (Sandbox Code Playgroud)

但是当我在真实数据上运行时,出现以下错误:

library(gamsel)
X = as.matrix(read.csv("X.csv"),header=FALSE)
y = as.matrix(read.csv("y.csv"),header=FALSE)
gam_fit = gamsel(X,y)
Run Code Online (Sandbox Code Playgroud)

if(abs((df-current.df)/ df)<1e-04 |迭代== 1)中的错误return(list(lambda = lambda,:缺少需要TRUE / FALSE的值)

您可以在此处访问将重现此结果的示例数据文件。关于如何解决此错误的任何想法?

r

5
推荐指数
0
解决办法
452
查看次数

未找到 Python cgi 服务器模块

当我运行python -m SimpleHTTPServer 8000python -m CGIHTTPServer 8000在 cmd 中时,出现此错误:

没有名为 SimpleHTTPServer 的模块

或者

没有名为 CGIHTTPServer 的模块

有谁知道为什么会发生这种情况或测试 python cgi-scripts 的另一种方法?

python cgi python-3.x

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

使用纯 Javascript 重复 HTML 代码

有没有办法让 html/javascript 代码重复 html 代码?基本上,我需要使用普通的 javascript,同时我需要在 for 循环中构建 html 元素。所以在html中我可以有:

<div>col1</div>
<div>col2></div>
<div>col3</div>
Run Code Online (Sandbox Code Playgroud)

问题是上面的html代码可以有几组。我现在正在做的是在 javascript 代码中编写 html。我想让它更干净,并拥有它所属的 html 结构,它位于 html 页面中。

html javascript

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