想学习有关于网络视频的传输,比如说QQ的视频聊天,不知道这方面的怎么解决啊,愿意着能提供源代码,感激不尽啊。[email protected]

解决方案 »

  1.   

    its screenshot url: 
    http://free.efile.com.cn/huangtao/ScreenEnglishShot.jpg
    http://free.efile.com.cn/huangtao/ScreenShot.jpgsource download url:
    http://free.efile.com.cn/huangtao/SmartmailSource.rar
      

  2.   

    有...http://www.vckbase.com/document/viewdoc/?id=1179
      

  3.   

    Option Explicit
        Private g_bCapturing As Boolean
        Private m_iCameraID(4) As Long'==================
    '连接设备
    '==================
    Private Sub Form_Load()
        Dim iCardID As Long
        
        '#########################################
        '在这里,仅仅演示了Preview模式的显示
        '如果要Overlay显示,将Connect的参数改为True
        '#########################################
        iCardID = sdk2000.Connect(False)
        If iCardID < 0 Then
            Caption = "未连接"
            mnuOperate.Enabled = False
            MsgBox "无设备可连接!"
        End If
        
        g_bCapturing = False
        sdk2000.Left = 0
        sdk2000.Top = 0
        mnuNormalSize_Click
        
        m_iCameraID(0) = 0
        m_iCameraID(1) = 1
        m_iCameraID(2) = 2
        m_iCameraID(3) = 3
    End SubPrivate Sub Form_Resize()
        sdk2000.Width = Me.ScaleWidth
        sdk2000.Height = Me.ScaleHeight
    End Sub'==================
    '断开设备
    '==================
    Private Sub Form_Unload(Cancel As Integer)
        sdk2000.Disconnect
    End Sub'==================
    '4Video(Plus)卡特性
    '==================
    Private Sub mnu4VideoPlus_Click()
        Load dlg4VideoPlus
        dlg4VideoPlus.SetCameraID m_iCameraID(0), m_iCameraID(1), m_iCameraID(2), m_iCameraID(3)
        dlg4VideoPlus.Initialize sdk2000
        dlg4VideoPlus.Show vbModal
        Unload dlg4VideoPlus
    End Sub'==================
    '是否捕捉音频
    '==================
    Private Sub mnuCaptureAudio_Click()
        sdk2000.CaptureAudio = Not mnuCaptureAudio.Checked
    End Sub'==================
    '选择视频压缩算法
    '==================
    Private Sub mnuChooseCompressor_Click()
        Load dlgChooseCompressor
        dlgChooseCompressor.Initialize sdk2000
        dlgChooseCompressor.Show vbModal
        Unload dlgChooseCompressor
    End Sub'==================
    '设置视频参数
    '==================
    Private Sub mnuConfig_Click()
        Load dlgConfig
        dlgConfig.Initialize sdk2000
        dlgConfig.Show vbModal
        Unload dlgConfig
        mnuNormalSize_Click
    End SubPrivate Sub mnuDlgCaptureFilter_Click()
        sdk2000.DlgVideoProperty
    End SubPrivate Sub mnuDlgCapturePin_Click()
        sdk2000.DlgCaptureFormat
    End SubPrivate Sub mnuDlgCrossbar_Click()
        sdk2000.DlgVideoSource
    End SubPrivate Sub mnuDlgPreviewPin_Click()
        sdk2000.DlgPreviewFormat
        mnuNormalSize_Click
    End Sub'==================
    '图像存入粘贴板
    '==================
    Private Sub mnuEditCopy_Click()
        Dim ok As Boolean
        ok = sdk2000.EditCopy
        If ok Then
            MsgBox "图像已存入粘贴板"
        Else
            MsgBox "保存失败!"
        End If
    End SubPrivate Sub mnuFileExit_Click()
        Unload Me
    End Sub'==================
    '新建
    '==================
    Private Sub mnuFileNew_Click()
        Dim frmD As frmDocument
        Set frmD = New frmDocument
        frmD.Show
    End Sub'==================
    '设置Logo
    '==================
    Private Sub mnuLogo_Click()
        Load dlgLogo
        dlgLogo.Initialize sdk2000
        dlgLogo.Show vbModal
        Unload dlgLogo
    End Sub'==================
    '标准尺寸
    '==================
    Private Sub mnuNormalSize_Click()
        Dim normalWidth, normalHeight As Long
        Dim wt, ht, wp, hp As Long
        Dim aw, ah As Long
        Dim iCardID As Long
        
        If Me.WindowState = vbMaximized Then
            Me.WindowState = vbNormal
        End If
        
        normalWidth = sdk2000.GetPreviewWidth()
        normalHeight = sdk2000.GetPreviewHeight()
        
        Me.ScaleMode = vbTwips
        wt = Me.ScaleWidth
        ht = Me.ScaleHeight
        aw = Me.Width - wt
        ah = Me.Height - ht
        
        Me.ScaleMode = vbPixels
        wp = Me.ScaleWidth
        hp = Me.ScaleHeight
        
        Me.Width = aw + normalWidth * wt / wp
        Me.Height = ah + normalHeight * ht / hp    '========================================
        '并非再次连接,仅仅是得到已连接的设备的卡号
        '========================================
        iCardID = sdk2000.Connect(False)
        Caption = "第" & CStr(iCardID) & "路: " & CStr(normalWidth) & " x " & CStr(normalHeight)
    End SubPrivate Sub mnuOperate_Click()
        mnuShowDlg.Enabled = Not g_bCapturing
        mnuStreamState.Enabled = Not g_bCapturing
        mnuStartCapture.Enabled = Not g_bCapturing
        mnuStopCapture.Enabled = g_bCapturing
        mnuCaptureAudio.Checked = sdk2000.CaptureAudio
    End SubPrivate Sub mnuPause_Click()
        sdk2000.Pause
    End SubPrivate Sub mnuRun_Click()
        sdk2000.Run
    End Sub'=================
    '图像存盘:BMP
    '=================
    Private Sub mnuSaveBMP_Click()
        Dim ok As Boolean
        ok = sdk2000.SaveImageToBmp("C:\Capture.bmp")
        If ok Then
            MsgBox "图像存为 C:\Capture.bmp"
        Else
            MsgBox "保存失败!"
        End If
    End Sub'=================
    '图像存盘:JPG
    '=================
    Private Sub mnuSaveJPG_Click()
        Dim ok As Boolean
        ok = sdk2000.SaveImageToJpg("C:\Capture.jpg", 65)
        If ok Then
            MsgBox "图像存为 C:\Capture.jpg"
        Else
            MsgBox "保存失败!"
        End If
    End Sub'=================
    '开始录像
    '=================
    Private Sub mnuStartCapture_Click()
        Dim ok As Boolean
        
        If g_bCapturing = False Then
            MsgBox "按“确定”开始录像到文件:C:\Capture.avi"
            ok = sdk2000.StartCapture("C:\capture.avi")
            If ok Then
                g_bCapturing = True
            Else
                MsgBox "录像失败! 请查看文件是否正在被别的程序使用"
            End If
        End If
    End SubPrivate Sub mnuStop_Click()
        sdk2000.Stop
    End Sub'=================
    '停止录像
    '=================
    Private Sub mnuStopCapture_Click()
        If g_bCapturing Then
            g_bCapturing = False
            sdk2000.StopCapture
        End If
    End Sub