从Adobe docs“您可以使用Microphone.names属性或Microphone.getMicrophone()方法来检查用户是否安装了声音输入设备。”。
您将如何获取用户音频设备的名称,并允许他们选择他们想要使用的来源?
当前,使用以下代码在流式传输点选择默认音频:
if ( microphone != null)
{
// Tried to list microphones but failed!
//sourceVideoLabel.text = microphone.names;
microphone.rate = 16;
microphone.codec = SoundCodec.SPEEX;
microphone.setSilenceLevel(0, -1);
microphone.setUseEchoSuppression(true);
}
else
{
sourceVideoLabel.text += "No Microphone Found\n";
}
最佳答案
Microphone.names
是一个静态属性,意味着您必须从类本身访问它。您正在尝试从类实例microphone
访问它。你应该做这个:
sourceVideoLabel.text += Microphone.names;
注意大写的
M
,这意味着您要访问的是类而不是实例。另一方面,
Microphone.name
是非静态的,可以通过实例microphone
进行访问以获取当前选定的麦克风:someTextField.text = "The current microphone is " + microphone.name;
(顺便说一句,如果出现混乱,最好避免实例名称与类名称过于相似。像
mic
这样的方法同样适用,很容易区分,而且键入起来也更快。)