فيه مكتبات متخصصة بهيك شغلات.
كود :
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
AxVideoChatSender1.VideoDevice = 0
AxVideoChatSender1.AudioDevice = 0
AxVideoChatSender1.VideoFormat = 0
AxVideoChatSender1.FrameRate = 15
AxVideoChatSender1.VideoBitrate = 128000
AxVideoChatSender1.AudioComplexity = 0
AxVideoChatSender1.AudioQuality = 8
AxVideoChatSender1.SendAudioStream = True
AxVideoChatSender1.SendVideoStream = True
AxVideoChatSender1.ConferenceNumber = 5000
AxVideoChatSender1.ConferenceUserID = 10000
AxVideoChatSender1.Connect("127.0.0.1", 1234)
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
AxVideoChatReceiver1.ReceiveAudioStream = True
AxVideoChatReceiver1.ReceiveVideoStream = True
AxVideoChatReceiver1.Listen("127.0.0.1", 1234)
End Sub
End Class
كود :
Public Class Form1
Dim myIp As String
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Try
myIp = IConfServerDotNet1.GetLocalIp()(0)
IConfServerDotNet1.InitializeAudioSystem(iConfServer.NET.iConfServerDotNet.audioType.DirectSound, -1, -1, 16000, 10)
IConfServerDotNet1.SelectVideoDevice(0)
'Dim lst As ArrayList = IConfServerDotNet1.GetVideoSizes
IConfServerDotNet1.StartPreview(0)
Catch ex As Exception
MessageBox.Show(String.Format("Error initializing {0}", ex.Message))
End Try
End Sub
Private Sub Form1_FormClosing(sender As Object, e As FormClosingEventArgs) Handles Me.FormClosing
IConfServerDotNet1.Listen(False, myIp, 9990, 17860, 17861)
IConfServerDotNet1.StopPreview()
End Sub
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim ipToCall As String = myIp
Dim videoPort As Integer = 9990
Dim audioTcpPort As Integer = 17860
Dim audioUdpPort As Integer = 17861
IConfClientDotNet1.AutoReconnect = True
IConfClientDotNet1.Call(ipToCall, videoPort, 0, 0, "test", IConfServerDotNet1.CallBackId, myIp, videoPort, audioTcpPort, audioUdpPort, "")
End Sub
Private Sub IConfServerDotNet1_IncomingCall(sender As Object, authenticationData As String, socketHandle As Integer, callbackid As String, callbackipaddress As String, callbackvideoport As Integer, callbackaudiotcpport As Integer, callbackaudiudpport As Integer) Handles IConfServerDotNet1.IncomingCall
Invoke(New MethodInvoker(Sub()
'accept the incoming call
IConfServerDotNet1.AcceptCall("n/a", socketHandle)
'call back to have a 1 on one video conference
IConfClientDotNet1.Call(callbackipaddress, callbackvideoport, 0, 0, "n/a", callbackid, myIp, 0, 0, 0, "")
End Sub))
End Sub
Private Sub IConfServerDotNet1_ClientDisconnected(sender As Object, ipAddress As String, port As Integer) Handles IConfServerDotNet1.ClientDisconnected
Invoke(New MethodInvoker(Sub() IConfClientDotNet1.Disconnect()))
End Sub
Private Sub IConfServerDotNet1_CannotRunGraph() Handles IConfServerDotNet1.CannotRunGraph
MessageBox.Show("Video Capture device might be in use")
End Sub
Private Sub IConfServerDotNet1_VideoPreviewStarted(videoWidth As Integer, videoHeight As Integer, deviceName As String) Handles IConfServerDotNet1.VideoPreviewStarted
Invoke(New MethodInvoker(Sub()
Me.Text = String.Format("Simple IP 2 IP Demo - {0}x{1}", videoWidth, videoHeight)
IConfServerDotNet1.VideoRateControl = iConfServer.NET.iConfServerDotNet.RateControl.ConstantQuality
'Initialize Codec
IConfServerDotNet1.SetEncoderProperties(iConfServer.NET.HelperClasses.VideoCodecs.MPEG4, 20, 8000, 0, 0, 0)
If Not IConfServerDotNet1.IsListening Then
'listen for incoming connections
IConfServerDotNet1.Listen(True, myIp, 9990, 17860, 17861)
End If
End Sub))
End Sub
End Class