DIY camera streaming tutorial voor de paasvakantie: hoe te streamen van het imago van uw bewakingscamera naar afgelegen plaatsen (C# broncode) (2 / 5 stap)

Stap 2: Uitvoering van externe camera streaming in C# - MainWindow.xaml.cs (1)

Hebben gedaand de GUI elementen, laten we overgaan tot het MainWindow.xaml.cs-bestand. Na invoegen de nodige via lijnen, is er behoefte aan een aantal variabelen te kunnen omgaan met de toepassing. In de constructor die u wilt initialiseren van de MediaConnector en de BitmapSourceProvider. Daarna moet u maken en instellen van de camera viewer-besturingselement toevoegen aan het raster genaamd Camerabox. Ook moet u het exemplaar van de BitmapSourceProvider ingesteld op de controle van de video-viewer.

Na deze twee regio's komen in de code: de inhoud van de eerste aansluiten en loskoppelen van een USB-camera wordt gebruikt, en de andere een wordt gebruikt om de IP-cameraverbinding en de verbinding wordt verbroken.

Alle nodige methoden en de corresponderende gebeurtenis-handlers is beneden te zien in het codefragment. De rest van het codefragment (na de methoden verbinding/afsluiting) zullen worden gedemonstreerd in stap 4. (Het bijgevoegde voorbeeld-project bevat de volledige broncode met inbegrip van de GUI elementen. Voel je vrij om te gebruiken en wijzigen van het bijgevoegde steekproefprogramma.)

 <p>using System;<br>using System.Collections.Generic; using System.Linq; using System.Runtime.InteropServices; using System.Text; using System.Threading.Tasks; using System.Windows; using System.Windows.Controls; using System.Windows.Data; using System.Windows.Documents; using System.Windows.Input; using System.Windows.Media; using System.Windows.Media.Imaging; using System.Windows.Navigation; using System.Windows.Shapes; using Ozeki.Media.IPCamera; using Ozeki.Media.MediaHandlers; using Ozeki.Media.MediaHandlers.Video; using Ozeki.Media.MJPEGStreaming; using Ozeki.Media.Video.Controls;</p><p>namespace Basic_CameraViewer { /// </p> /// Interaction logic for MainWindow.xaml /// <p> public partial class MainWindow : Window { private VideoViewerWPF _videoViewerWpf;</p><p> private BitmapSourceProvider _provider;</p><p> private IIPCamera _ipCamera;</p><p> private WebCamera _webCamera;</p><p> private MediaConnector _connector;</p><p> private MyServer _server;</p><p> private IVideoSender _videoSender;</p><p> public MainWindow() { InitializeComponent();</p><p> _connector = new MediaConnector();</p><p> _provider = new BitmapSourceProvider();</p><p> _server = new MyServer();</p><p> SetVideoViewer(); }</p><p> private void SetVideoViewer() { _videoViewerWpf = new VideoViewerWPF { HorizontalAlignment = HorizontalAlignment.Stretch, VerticalAlignment = VerticalAlignment.Stretch, Background = Brushes.Black }; CameraBox.Children.Add(_videoViewerWpf);</p><p> _videoViewerWpf.SetImageProvider(_provider); }</p><p> #region USB Camera Connect/Disconnect</p><p> private void ConnectUSBCamera_Click(object sender, RoutedEventArgs e) { _webCamera = WebCamera.GetDefaultDevice(); if (_webCamera == null) return; _connector.Connect(_webCamera, _provider); _videoSender = _webCamera;</p><p> _webCamera.Start(); _videoViewerWpf.Start(); }</p><p> private void DisconnectUSBCamera_Click(object sender, RoutedEventArgs e) { if (_webCamera == null) return; _videoViewerWpf.Stop();</p><p> _webCamera.Stop(); _webCamera.Dispose();</p><p> _connector.Disconnect(_webCamera, _provider); } #endregion</p><p> #region IP Camera Connect/Disconnect</p><p> private void ConnectIPCamera_Click(object sender, RoutedEventArgs e) { var host = HostTextBox.Text; var user = UserTextBox.Text; var pass = Password.Password;</p><p> _ipCamera = IPCameraFactory.GetCamera(host, user, pass); if (_ipCamera == null) return; _connector.Connect(_ipCamera.VideoChannel, _provider); _videoSender = _ipCamera.VideoChannel;</p><p> _ipCamera.Start(); _videoViewerWpf.Start(); }</p><p> private void DisconnectIPCamera_Click(object sender, RoutedEventArgs e) { if (_ipCamera == null) return; _videoViewerWpf.Stop();</p><p> _ipCamera.Disconnect(); _ipCamera.Dispose();</p><p> _connector.Disconnect(_ipCamera.VideoChannel, _provider); }</p><p> #endregion</p><p> private void GuiThread(Action action) { Dispatcher.BeginInvoke(action); }</p><p> private void StartServer_Click(object sender, RoutedEventArgs e) { var ipadress = IpAddressText.Text; var port = int.Parse(PortText.Text); _server.VideoSender = _videoSender;</p><p> _server.OnClientCountChanged += server_OnClientCountChanged;</p><p> _server.Start(); _server.SetListenAddress(ipadress, port); }</p><p> void server_OnClientCountChanged(object sender, EventArgs e) { GuiThread(() => { ConnectedClientList.Items.Clear();</p><p> foreach (var client in _server.ConnectedClients) ConnectedClientList.Items.Add("End point: " + client.TransportInfo.RemoteEndPoint); }); }</p><p> private void StopServer_Click(object sender, RoutedEventArgs e) { _server.OnClientCountChanged -= server_OnClientCountChanged; _server.Stop(); } } }</p> 

Gerelateerde Artikelen

Hoe te streamen van Minecraft te Twitch op een Mac.

Hoe te streamen van Minecraft te Twitch op een Mac.

Dit is een instructable op hoe te streamen van uw gokkenzittingen minecraft te twitch.tv.Om te beginnen dit instructable moet u:1) een gemigreerd minecraft/mojang account (als u zich om minecraft met uw e-mailadres aanmeldt, je hebt dit)2) een twitch
DIY Camera stabilisator Perfect voor het filmen van bewegende objecten

DIY Camera stabilisator Perfect voor het filmen van bewegende objecten

Een camera-stabilisator kan maken zo veel makkelijker te filmen, maar het is altijd duur om te kopen. Hier is hoe te DIY een stabilisator van de camera met behulp van een papieren zak.Stap 1: Certificaat en cadeauzakje die is groot genoeg voor uw cam
Nieuw idee voor sieraden maken-hoe te maken van een Beaded Flower Link Chain ketting

Nieuw idee voor sieraden maken-hoe te maken van een Beaded Flower Link Chain ketting

Vandaag hebben we een nieuw idee voor sieraden maken. Hou je kralen ketting? Hier is een tutorial over hoe te maken van beaded flower link chain ketting. Bent u een liefhebber van sieraden, ben ik zeker dat zal je deze beaded flower link chain kettin
Hoe overdracht contacten van Windows Phone naar Android

Hoe overdracht contacten van Windows Phone naar Android

Wanneer u een Android apparaat naar een Windows Mobile-smartphone, is de overdracht van uw contactpersonen meestal de eerste prioriteit. U bent vrij om een computer te gebruiken om te doen dus dat zou meer comfortabel voor beginners. Echter, dankzij
Hoe te downloaden van een youtube naar mp3mp4 gratis

Hoe te downloaden van een youtube naar mp3mp4 gratis

In deze video laat ik zien hoe download je een youtube-video en ik converteren naar mp3/mp4 kostenloos met geen termijnen
DIY Camera Dolly Rails voor Actionpro X 7, GoPro of elke andere actie of videocamera.

DIY Camera Dolly Rails voor Actionpro X 7, GoPro of elke andere actie of videocamera.

Onderdelen, gereedschappen en alle activiteiten die nodig zijn om uw eigen Camera Dolly voor uw actioncamera zoals GoPro, Actionpro of elke andere video-camera / DSLR die ondersteuning bieden voor standaard driepoot conector. Camera kan worden aanges
[Tutorial voor 4DIY.ORG] - Hoe maak je een draadloze lamp van meerdere kleuren

[Tutorial voor 4DIY.ORG] - Hoe maak je een draadloze lamp van meerdere kleuren

het is zo prachtig wanneer u een handgemaakte cadeau voor uw familie en uw vriend in dit nieuwe jaar. Die gift Toon niet alleen uw slimme Behendigheid maar ook uw boodschap "ik altijd hou en geven de beste wensen voor mijn familie".Na onderstaan
[Tutorial voor 4DIY.ORG] - hoe u kunt bijhouden van vochtigheid en temperatuur met behulp van DHT Sensor en iphone

[Tutorial voor 4DIY.ORG] - hoe u kunt bijhouden van vochtigheid en temperatuur met behulp van DHT Sensor en iphone

Stap 1: Materialen en gereedschappen 1. 1 x [4DIY.ORG] Core Board.2. 1 x DHT-Sensor.3. 1 x batterij Shield.4. [4DIY.ORG]-toepassingStap 2: Upload schets naar [4DIY.ORG] met behulp van FT232 Shield Stap 3: Aansluiten Hardware Stap 4: Volg [4DIY.ORG] o
DIY Autowassen schuim pistool voor 15 dollar, plus de gedeelten rond het huis

DIY Autowassen schuim pistool voor 15 dollar, plus de gedeelten rond het huis

Video met behulp van de injector groen aarde ongeveer de helft vol met zeep met mijn schuim pistool: http://www.youtube.com/watch?v=HXIeXq20Btk&feature=youtu.beIk zal later bijwerken met betere, hogere psi lucht, water en zeep een video in de dag.Dit
Hoe te downloaden van youtube video naar iPod-apparaat

Hoe te downloaden van youtube video naar iPod-apparaat

In het kort, zullen wij u tonen hoe te downliad YouTube vudeo naar iPod in dit artikel.Er is geen twijfel dat het inhoud van de populaire video website YouTube heeft trok onze aandacht. Meestal, video bezoekers van de YouTube streaming via Internet. 
Hoe te trekken van de "DVD naar het gezicht Prank"

Hoe te trekken van de "DVD naar het gezicht Prank"

dus een dag je verveeld en beslissen u wilt een filmpje, ga je naar uw DVD rack en kies uit een van uw favoriete films.Zonder te weten de DVD is vak booby gevangen, open je het en ineens de schijf binnen komt vliegen en slaat uw recht tussen de ogen.
Hoe te importeren van CD-nummers naar uw iTunes-bibliotheek?

Hoe te importeren van CD-nummers naar uw iTunes-bibliotheek?

Hebt u een muziek-CD die u gekocht lang geleden en nooit de kans gehad om te importeren naar uw iTunes-bibliotheek, deze eenvoudige stapsgewijze gids zal u hoe tonen.Als je dit artikel tot het einde leest, misschien u ook wel geïnteresseerd in hoe:IT
Hoe te streamen van mediabestanden naar TV (Infographic)

Hoe te streamen van mediabestanden naar TV (Infographic)

Streaming media op TV is leuk. Als je problemen onderweg tegenkomt, of u nog steeds een newbie op dit gebied bent, bent u op de juiste plaats te vinden van de grote en gedetailleerde gids en tips.
Hoe te verbeteren van een cassette naar MP3 conveter

Hoe te verbeteren van een cassette naar MP3 conveter

Ik gebruikte microfoon om opnames te maken op een zeer goede cassette-recorder ongeveer 30 jaar geleden. Nu is het tijd om op te slaan van de muziek in een andere indeling. Vandaag is het moeilijk te vinden een hoge klasse converter. Ik vond deze opl