Welcome
Guest
, you are in:
<root>
Elements
•
Login
EventIDE Wiki
Navigation
¶
Main Page
Random Page
Create a new Page
All Pages
Categories
Navigation Paths
Administration
File Management
Create Account
Search the wiki
Back
EE Webcam Element
Modified on 2018/08/02 23:56
by
Administrator
Categorized as
Elements
,
Monitoring
<div style="margin-right: 10px; margin-left: 16px; margin-bottom:10px; float: right; width: 500px; overflow: hidden; height: auto; padding: 0px; background: #fafafa; background: -webkit-gradient(linear, left top, left bottom, from(#fbfbfb), to(#fafafa));background: -moz-linear-gradient(top, #fbfbfb, #fafafa);border: 1px dashed #ddd;box-shadow: 0 0 0 3px #fff, 0 0 0 5px #ddd, 0 0 0 10px #fff, 0 0 2px 10px #eee;"> == Summary == {s:Element Info Panel | title=EE Webcam | category=Monitoring | icon=[image|Element Icon|{UP(Webcam-Element)}EE-Webcam-Element-Icon.png] | author= OkazoLab | addin= Surveillance | scope= Experiment | usage= Snippets | ownsnippets= None } == Properties == {| |- ! Name ! Description ! Constraints ! Type ! On<br/>runtime<br/>change |- | colspan="5" bgcolor="#AADDDDD" | Settings |- | Video Device | | {s:atNormal} | String | |- | Edit Camera Settings | Opens a window with OS settings of the selected video device. | {s:atDesign} | Boolean | |- | Select Video Format | Opens a window with the pin settings of the selected video device. | {s:atDesign} | Boolean | |- | colspan="5" bgcolor="#AADDDDD" | Custom Settings |- | Use Custom Settings | Define whether custom frame size and framerate are used in capturing video. Using the custom settings is only possible, if it's supported by the selected video device. Otherwise, the device's default settings will be are applied. | {s:atNormal} | Boolean | |- | Resolution | Define the resolution of a captured video. The video frames can be scaled to any size in rendering, but choosing a larger resolution improves rendering quality with some cost in performance. | {s:atNormal} | clSize | |- | Frame Rate | Define the framerate of video capturing, in frames per second | {s:atNormal} | Int32 | |- | colspan="5" bgcolor="#AADDDDD" | Runtime Status |- | XAML Video Viewport | Returns a live XAML control that renders the captured video. The control can be used for data binding to the Content property of the XAML ContentControl element, e.g. <ContentControl Content='{Binding VideoOutput}'/>. The ContentControl can be added to the status screen or to the GUI Layout element. | {s:atNormal} | UIElem.. | |- | Actual Settings | Returns the actual resolution and framerate of the current video capture. The property is updated at the start of every experiment run. | {s:atStatus} | String | |- | colspan="5" bgcolor="#AADDDDD" | Control |- | Is Enabled | If set to false the element is completely omitted when the experiment is run | {s:atDesign} | Boolean | |- | Title | Title of the element | {s:atDesign} | String | |- |} == == </div> <!--*****************************************************************************************************************************************************************************--> <!--*****************************************************************************************************************************************************************************--> <!--*****************************************************************************************************************************************************************************--> <!--*****************************************************************************************************************************************************************************--> <!--*****************************************************************************************************************************************************************************--> <!--*****************************************************************************************************************************************************************************--> <!--*****************************************************************************************************************************************************************************--> <!--*****************************************************************************************************************************************************************************--> <!--*****************************************************************************************************************************************************************************--> <!--*****************************************************************************************************************************************************************************--> <!--*****************************************************************************************************************************************************************************--> <!--*****************************************************************************************************************************************************************************--> <!--*****************************************************************************************************************************************************************************--> <!--*****************************************************************************************************************************************************************************--> '''Webcam Element''' captures and renders an output of a computer video devices, e.g. web-camera. This elements uses the Microsoft Expression Encoder engine, which has to be installed on a computer. For the OpenCV-based video capturing use the OpenCV Webcam element. The captured video frames can be rendered on the stimulus or status screen, via an auto-generated XAML widget ('XAML Video Viewport') provided by the element.<br> {TOC} == Description == Webcam element is capable of capturing output of computer video devices, e.g. web-cameras, at the background of running experiment. On the majority of modern computers a work of the element should not cause an impact on timing accuracy in an experiment, however, you should check timing accuracy on your setup, when the Webcam element is used. == Snapshots == {| | [imageleft|Web camera capture <br/> on the EventIDE status screen|{UP(Webcam-Element)}webcam_sm.png|{UP(Webcam-Element)}webcam-fs.png] |} == Practical Use == === Technique 1 === # Add new Webcam element to any event in your experiment # Click on the Webcam element and select a video device from the device list in the property grid # Add a proxy variable to the Video Output property of the Webcam element # Create a XAML ContentControl on the status screen and set its binding to the VideoOutput proxy variable: @@ xml // you can place the content control inside of any parent container <ContentControl Width="640" Height="480" Content='{Binding VideoOutput}'/> @@ # Make sure that camera working and run an experiment. The video output will be rendered scaled to the area of the Content Control on the Status Screen == Notes == * You can not share the video device among multiple Webcam elements. However, you may use multiple cameras assigned to different Webcam elements. * Be careful in using the Webcam element in experiments that require accurate timing. Video capture is hardware-accelerated on modern computers but a high processor load still can be induced, which, in turn, may potentially disrupt timing in an experiment. We suggest to always double check timing accuracy while the Webcam element is engaged. Alternatively, you may select the lowest settings for the resolution and framerate capture on a video device. * If you have the Webcam element, whose Video Output is not bound to the status Screen, there is no performance costs for rendering. However, video capturing is running in the background, when the Webcam element exists in an experiment.
Meta Keywords:
Meta Description:
Change Comment:
ScrewTurn Wiki
version 5.2.0.8. Some of the icons created by
FamFamFam
.