[Silverlight] 如何開啟視訊
2010/11/18
因為重點是寫如何擷取視訊圖片..
但是要先能夠開啟視訊...
其實很多老師都寫過如何開啟視訊...
這邊也不贅述單純筆記一下:
版面配置介紹:
因為許多範例都是用Image 去接視訊,我改程式用Canvas 去接用筆刷方式塗上去..
按下btnEnableWebCam之後就會啟動視訊
XAML Code :
<UserControl x:Class="UseWebCam.MainPage" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" mc:Ignorable="d" d:DesignHeight="300" d:DesignWidth="400"> <Grid x:Name="LayoutRoot" Background="White"> <Button Content="啟動WebCam" Height="23" HorizontalAlignment="Left" Margin="12,255,0,0" Name="btnEnableWebCam" VerticalAlignment="Top" Width="95" Click="btnEnableWebCam_Click" /> <Canvas Height="197" HorizontalAlignment="Left" Margin="72,40,0,0" Name="cvsMain" VerticalAlignment="Top" Width="270" > </Canvas> </Grid> </UserControl>
再來就是 C# Code 部份..
using System.Windows; using System.Windows.Controls; using System.Windows.Media; namespace UseWebCam { public partial class MainPage : UserControl { public MainPage() { InitializeComponent(); } private void btnEnableWebCam_Click(object sender, RoutedEventArgs e) { //RequestDeviceAccess() //要求存取用戶端系統上所有可用的擷取裝置 (音訊或視訊)。 //如果使用者依據對存取要求對話方塊提示的回應授與裝置存取,或要求在某些情況下自動授與,則為 true。如果使用者未授與存取或存取遭其他因數拒絕,則為 false //AllowedDeviceAccess //取得值,這個值會報告使用者先前是否曾依據對裝置存取 UI 提示的儲存回應授與裝置存取。 //如果使用者曾依據對存取要求對話方塊提示的回應授與裝置存取,或要求在某些情況下自動授與,則為 true。如果使用者未授與存取或存取遭其他因數拒絕,則為 false。 if (CaptureDeviceConfiguration.RequestDeviceAccess() || CaptureDeviceConfiguration.AllowedDeviceAccess ) { CaptureSource captureSource = new CaptureSource(); //製作一支影像的筆刷 VideoBrush videoBrush = new VideoBrush(); //將Canvas 背景換成那支筆刷 this.cvsMain.Background = videoBrush; videoBrush.SetSource(captureSource); captureSource.Start(); } else { MessageBox.Show("讀取視訊發生問題"); } } } }
說明我就寫在註解裡面了..
測試一下:
成功…
讚一下:
範例下載:
範例預覽:
標籤:
Silverlight
|
This entry was posted on 下午6:48
and is filed under
Silverlight
.
You can follow any responses to this entry through
the RSS 2.0 feed.
You can leave a response,
or trackback from your own site.
訂閱:
張貼留言 (Atom)
0 意見:
張貼留言