我正在尝试找到任何可以帮助我验证音频是否静音的内容。
网络驱动程序中会有一个Flash视频,我需要知道视频之前的广告是否处于静音状态!有可能做那样的事吗?
答案 0 :(得分:0)
Selenium本身并没有帮助,但Java确实如此。看一下Java AudioSystem类。
Port lineIn;
FloatControl volCtrl;
try {
Mixer mixer = AudioSystem.getMixer(null);
lineIn = (Port)mixer.getLine(Port.Info.LINE_IN);
lineIn.open();
volCtrl = (FloatControl) lineIn.getControl(
FloatControl.Type.VOLUME);
// Assuming getControl call succeeds,
// we now have our LINE_IN VOLUME control.
} catch (Exception e) {
System.out.println("Failed trying to find LINE_IN"
+ " VOLUME control: exception = " + e);
}
请参阅here进行讨论(搜索静音)。
答案 1 :(得分:0)
您的HTML表示该网页正在播放HTML5视频而不是Flash,并且该播放器是VIDEOJS(http://videojs.com)。 他们的文档表明API符合HTML5,因此这适用于您的情况:
boolean isMuted = ((JavascriptExecutor)driver).executeScript(
"return window.videojs('vjs_video_3_html5_api').muted()");
请注意,在执行此代码之前,您必须将上下文设置为父框架。