//
archives

C#

This category contains 2 posts

Aplikasi WebCam Sederhana dengan Silverlight 4


Ada yang quotes sih katanya, “Ikatlah ilmu dengan menuliskannya”. Tertarik dengan fitur baru yang ada di Silverlight 4, yaitu kita dapat mengakses webcam secara langsung. Info ini saya dapatkan ketika mengikuti sharing
technology update di ITB hari Minggu (21/11/2010). Saya menggunakan Visual Studio 2010 untuk mendemokan aplikasi ini. Silverlight 4 ini berkembang beriringan dengan munculnya .NET Framework 4.

Pertama kita mulai dengan membaca Bismillahirrahmanirrahim sebelum memulai aktivias ini J. Lalu, buatlah sebuah project Silverlight Application dengan nama SimpleWebcam di Visual Studio 2010. Saya menggunakan bahasa pemrograman C# dalam contoh ini. Secara otomatis akan dibuatkan 2 buah project: project Silverlight dan project Web. Terlihat seperti gambar berikut.


Terdapat MainPage.xaml yang di dalamnya terdapat anak MainPage.xaml.cs, apakah itu? File yang berekstensi .xaml adalah file dimana kita mendesain UI (untuk desainer) dan .xaml.cs adalah untuk kita membuat untaian algoritma sebagai control dari aplikasi yang kita buat (untuk developer). Meskipun file .xaml
ditujukan untuk mendesain UI dari aplikasi kita, didalamnya akan menghasilkan kode-kode yang nantinya dapat dimengerti oleh developer saat akan mengembangkan aplikasi kita. Jadi, XAML ini berfungsi sebagai perantara/jembatan antara developer dan desainer.

Selanjutnya, buatlah kode program berikut pada file MainPage.xaml.

<UserControl x:Class=”SimpleWebcam.MainPage”


xmlns=”http://schemas.microsoft.com/winfx/2006/xaml/presentation&#8221;


xmlns:x=”http://schemas.microsoft.com/winfx/2006/xaml&#8221;


xmlns:d=”http://schemas.microsoft.com/expression/blend/2008&#8243;


xmlns:mc=”http://schemas.openxmlformats.org/markup-compatibility/2006&#8243;


mc:Ignorable=”d”


d:DesignHeight=”429″ d:DesignWidth=”798″>


<Grid x:Name=”LayoutRoot” Background=”White” Height=”406″ Width=”730″>


<Rectangle Height=”229″ HorizontalAlignment=”Left” Name=”viewCam” Stroke=”#FFFF1717″ StrokeThickness=”1″ VerticalAlignment=”Top” Width=”346″ />


<Button Content=”Start” Height=”37″ HorizontalAlignment=”Left” Margin=”231,250,0,0″ Name=”btnStart” VerticalAlignment=”Top” Width=”75″ Click=”btnStart_Click” />


<Button Content=”Stop” Height=”37″ HorizontalAlignment=”Left” Margin=”324,250,0,0″ Name=”btnStop” VerticalAlignment=”Top” Width=”75″ Click=”btnStop_Click” />


<Rectangle Height=”229″ HorizontalAlignment=”Left” Margin=”373,1,0,0″ Name=”viewFoto” Stroke=”#FFEF0909″ StrokeThickness=”1″ VerticalAlignment=”Top” Width=”357″ />


<Button Content=”Capture” Height=”37″ HorizontalAlignment=”Left” Margin=”416,250,0,0″ Name=”btnCapture” VerticalAlignment=”Top” Width=”75″ Click=”btnCapture_Click” />


</Grid>

</UserControl>

Syair diatas akan menghasilkan tampilan seperti gambar berikut.

Nah, sekarang kita masuk ke halaman MainPage.xaml.cs. Tuliskan isikan halaman tersebut dengan kode berikut.

using System;

using System.Collections.Generic;

using System.Linq;

using System.Net;

using System.Windows;

using System.Windows.Controls;

using System.Windows.Documents;

using System.Windows.Input;

using System.Windows.Media;

using System.Windows.Media.Animation;

using System.Windows.Shapes;

namespace SimpleWebcam

{


public
partial
class
MainPage : UserControl

{


public
VideoBrush webcamBrush;


public
ImageBrush capturedImage;


public
CaptureSource captureSource = new
CaptureSource();


public MainPage()

{

InitializeComponent();


VideoCaptureDevice webcam;

webcam = CaptureDeviceConfiguration.GetDefaultVideoCaptureDevice();

capturedImage = new
ImageBrush();


if (webcam != null)

{

captureSource.VideoCaptureDevice = webcam;

webcamBrush = new
VideoBrush();

webcamBrush.SetSource(captureSource);

viewCam.Fill = webcamBrush;

viewFoto.Fill = capturedImage;

captureSource.CaptureFailed += new
EventHandler<ExceptionRoutedEventArgs>(CaptureSource_CaptureFailed);

captureSource.CaptureImageCompleted += new
EventHandler<CaptureImageCompletedEventArgs>(CaptureSource_CaptureImageCompleted);

}

}


private
void btnStart_Click(object sender, RoutedEventArgs e)

{


if (CaptureDeviceConfiguration.RequestDeviceAccess() && captureSource.VideoCaptureDevice != null)

{

captureSource.Start();

}

}


private
void btnStop_Click(object sender, RoutedEventArgs e)

{


if (captureSource.VideoCaptureDevice != null)

{

captureSource.Stop();

}

}


private
void CaptureSource_CaptureImageCompleted(object sender, CaptureImageCompletedEventArgs e)

{

capturedImage.ImageSource = e.Result;

}


private
void CaptureSource_CaptureFailed(object sender, ExceptionRoutedEventArgs e)

{


MessageBox.Show(string.Format(“Failed to capture image: {0}”, e.ErrorException.Message));

}


private
void btnCapture_Click(object sender, RoutedEventArgs e)

{


if (captureSource.VideoCaptureDevice != null && captureSource.State == CaptureState.Started)

{

captureSource.CaptureImageAsync();

}

}

}

}

Setelah semua selesai simpan project. Lalu Run dengan menekan tombol F5 pada keyboard Anda, atau tekan tombol . Dan hasilnya akan seperti gambar berikut.

Selamat mencoba.

CMIIW.

J

Iklan

Mengenal Windows® MultiPoint®Mouse


Pertama kenal ‘istilah’ ini waktu di MIC ITB, waktu itu MIC sempet ngadain pelatihan Windows MultiPoint Mouse, tapi menyesal saya ga bisa datang L. Berawal dari situlah mulai mempelajari Windows MultiPointMouse, ditambah lagi tuntutan buat ngasih materi tentang aplikasi teknologi Microsoft di dunia pendidikan. Nah, saya rasa ini bisa mewakili salah satu aplikasi tersebut. So, apa itu Windows MultiPointMouse? Ya! Adalah sebuah tools pengembangan aplikasi yang memungkinkan kita untuk menggunakan banyak mouse (multipointing devices) secara simultan/bersamaan dalam satu komputer.

Microsoft mengeluarkan sebuah tools bernama Windows®MultiPoint®MouseSDK, berikut gambaran secara umum:

SDK 1.1

SDK 1.5.1

Windows Vista atau Windows XP SP2 Windows 7 (32-bit/64-bit), Windows Vista, Windows XP SP3, Windows Server 2008
.NET Framework 3.0 (atau versi lain yang lebih tinggu) .NET Framework 3.5 (atau versi lain yang lebih tinggi)
Visual Studio 2005 dengan extensi WPF yang terinstall atau Visual Studio 2008. Visual Studio 2008, Visual Studio 2010, Visual Studio Express Editions
125 MB RAM (disarankan 256 MB atau lebih tinggi) Mendukung trackpad/PS2, dan bluetooth mouse
16 MB Video RAM (disarankan (32 MB atau lebih tinggi) Mendukung instalasi di notebook
Resolusi 800 x 600 dengan environment 32-bit Pengurangan library dari 5 menjadi 2 (Microsoft.Multipoint.Sdk.dll dan Microsoft.Multipoint.Sdk.Controls.dll.

Sebenarnya masih banyak lagi improvement lainnya mengenai Software Development Kit, silahkan mencari atau kunjungi: Situs Windows MultiPointMouse.

Windows MultiPointMouse ini dibangun diatas WPF dan tidak mendukung Windows Forms UI. Aplikasi ini bisa dikembangkan dengan bahasa C#, dan Visual Basic.

Keuntungan Windows MultiPointMouse untuk Dunia Pendidikan

  • Menyajikan konten-konten pendidikan dengan cara yang lebih interaktif dan inovatif
  • Dengan budget yang murah, semua siswa dapat menikmati teknologi komputer. (1 PC untuk semua siswa)
  • Menjadikan setiap siswa lebih aktif dalam belajar.
  • Mendukung Collaborative Learning sehingga menghasilkan lingkungan belajar yang lebih menyenangkan.

Download tools gratis yang dapat digunakan untuk mengembangkan aplikasi ini:

Visual Studio 2008 Express Edition

Windows MultiPointMouse SDK 1.1 untuk Windows XP

Windows MultiPointMouse SDK 1.5.1 untuk Windows 7/Vista

%d blogger menyukai ini: