[Webinar] Learn how to a build a cloud-first strategyRegister Now

x
?
Solved

Pegasus Capture Pro v3 Video capture component, Hauppauge WinTv PVR USB2 and Video Capturing with a VB.NET solution

Posted on 2005-04-27
4
Medium Priority
?
944 Views
Last Modified: 2012-08-14
To whom is brave,

I am a co-op student programming a video capture program. I have been working on this thing for 3 months now and have one last major issue. I am using a video component with a USB hardware device to capture video for later play back. I am using the USB device because this will make video capture portable across laptops and PC's alike. I need to know if this is the best solution because rightnow I can not get this component to work with this hardware device. I can retreive the name of the device programmably, the input names, everything, but I can not connect to the device to retrieve the video signal. Is there a combination of a VB.NET video component and a USB hardware device that you can suggest? Or if I supply source code, can I get help with it? Thank you very much for your time!

Kevin Jackson
0
Comment
Question by:Shine56
  • 3
4 Comments
 

Author Comment

by:Shine56
ID: 13895620
OK, some more info

Private Sub btnList_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnList.Click
        Dim k As Integer

        k = CInt(txtDevice.Text)


        lstDeviceProperties.Items.Clear()
        lstDeviceProperties.Items.Add("<<<<<<>>>>>>>>>")
        lstDeviceProperties.Items.Add("Device" & k)

        'THIS LISTS ALL THE PROPERTIES OF INTEREST FOR USE IN PROGRAM
        Try
            lstDeviceProperties.Items.Add(PicCapturePro1.ObtainDeviceName(k) & "_1")
        Catch
            lstDeviceProperties.Items.Add("no obtain device name_1")
        End Try
        Try
            lstDeviceProperties.Items.Add(PicCapturePro1.ObtainVideoDeviceName(k) & "_2")
        Catch
            lstDeviceProperties.Items.Add("no obtain video device name_2")
        End Try
        Try
            lstDeviceProperties.Items.Add(PicCapturePro1.TVInput & "_3")
        Catch
            lstDeviceProperties.Items.Add("no tv input_3")
        End Try
        Try
            lstDeviceProperties.Items.Add(PicCapturePro1.HasTVTuner & "_4")
        Catch
            lstDeviceProperties.Items.Add("no tv tuner_4")
        End Try
        Try
            lstDeviceProperties.Items.Add(PicCapturePro1.VideoDeviceIndex & "_5")
        Catch
            lstDeviceProperties.Items.Add("no video device index_5")
        End Try
        Try
            lstDeviceProperties.Items.Add(PicCapturePro1.ObtainVideoInputName(k) & "_6")
        Catch
            lstDeviceProperties.Items.Add("no video input name_6")
        End Try
        Try
            lstDeviceProperties.Items.Add(PicCapturePro1.VideoInputIndex & "_7")
        Catch
            lstDeviceProperties.Items.Add("no video input index_7")
        End Try
        Try
            lstDeviceProperties.Items.Add(PicCapturePro1.HasDlgVideoDisplay & "_8")
        Catch
            lstDeviceProperties.Items.Add("no dialog video disply_8")
        End Try
        Try
            lstDeviceProperties.Items.Add(PicCapturePro1.HasDlgVideoFormat & "_9")
        Catch
            lstDeviceProperties.Items.Add("no dialog video format_9")
        End Try
        Try
            lstDeviceProperties.Items.Add(PicCapturePro1.HasDlgVideoSource & "_10")
        Catch
            lstDeviceProperties.Items.Add("no dialog video source_10")
        End Try

        lstDeviceProperties.Items.Add("<<<<<<>>>>>>>>>")


    End Sub

    Private Sub Pegasus_CapturePro_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        'SHOWS THE NUMBER OF DEVICES FOR USE IN CONNECTING
        MessageBox.Show("The number of devices present is: " & (PicCapturePro1.NumDevices + 1))
        MessageBox.Show("The number of video devices present is: " & (PicCapturePro1.NumVideoDevices + 1))

    End Sub

    Private Sub btnConnect_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnConnect.Click
        Dim z As Integer
        Dim ChainIndex As Long, FilterIndex As Long

        Dim FilterCategory As String, FilterName As String


        z = CInt(txtDevice.Text)
        'CONNECT TO THE DEVICE AND THEN DISPLAY DEVICE PROPERTIES FOR EDIT DURING RUN TIME

        PicCapturePro1.Connect(z)

        For ChainIndex = 0 To 4

            FilterIndex = PicCapturePro1.ObtainVideoProcFilterIndex(ChainIndex)

            If FilterIndex >= 0 Then

                FilterCategory = PicCapturePro1.ObtainVideoProcFilterCategory(ChainIndex)

                FilterName = PicCapturePro1.ObtainFilterName(FilterCategory, FilterIndex)

            End If

        Next ChainIndex
        PicCapturePro1.ShowFilterPropertyPage(PegasusImaging.WinForms.CapturePro3.FILTERPROPTYPE.FILTERPROP_VIDEO_PROC_1, "")

        PicCapturePro1.ShowVideoCompressionDlg()
        PicCapturePro1.ShowVideoDisplayDlg()
        PicCapturePro1.ShowVideoSourceDlg()
        PicCapturePro1.Preview = True

    End Sub

This is my test program that I have built around the Pegasus Capture Pro v3 component. The problem is that I can not connect to the USB device. I get an error;

Microsoft Visual C++ Runtime Library
 
Runtime Error!
 
Program: ...t\VideoGrab\COdeTest\Video_Pegasus\bin\Video_Pegasus.exe
 
This application has requested the Runtime to terminate it in an unusual way. Please contact the application's support team for more information.

I've asked Pegasus for assistence today so I hope they can help. Apparently they don't do alot of hardware testing so I might not be able to use that component. Thats why I need others. I've tried IC Imaging, but I have the same problem.

Kevin Jackson
0
 

Author Comment

by:Shine56
ID: 13897696
Apparently from Pegasus Imaging "Capture Pro was never ment to do hardware MPEG 2..." so the definit problem now is what video component do I use with this device!

0
 

Author Comment

by:Shine56
ID: 13911175
To anyone who's been following,

I came across an older video component found at www.LeadTools.com. It was built for VB6 but with a little work I've got the LeadTools video component to do the trick. The best part about this component, if I'm mistaken, it's a one time licencing fee of 495 dollars, which isn't bad for me because I'm not buying it, my company is. Anyway, the problem with the Pegasus component and my USB hardware device is that the hardware device encodes signals right off the hop with MPEG2 compression. The Pegasus component can not handle that. The LeadTools component allows you to generate a configuration window before connection to a device, thus allowing for MPEG2.

AxltmmCaptureCtrl1.VideoDevices.Selection = intDeviceNumber
AxltmmCaptureCtrl1.ShowDialog(16, 0)

The number 16 is from a list of constraints that are predefined and found within the help file encluded with the component. 16 in this case is the Video_Device_cfg dialog. This dialog will change with each different device you use with the component and is set by selecting the device number first.

Also, this video package comes with a player control and a conversion control. Handy to have if you need a total video capture/conversion/playing solution, which I do! Anyways, for anyone reading this, I hope this helps!
0
 

Accepted Solution

by:
PAQ_Man earned 0 total points
ID: 13914853
Question Closed, 500 points refunded.
PAQ_Man
Community Support Moderator
0

Featured Post

Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Well, all of us have seen the multiple EXCEL.EXE's in task manager that won't die even if you call the .close, .dispose methods. Try this method to kill any excels in memory. You can copy the kill function to create a check function and replace the …
1.0 - Introduction Converting Visual Basic 6.0 (VB6) to Visual Basic 2008+ (VB.NET). If ever there was a subject full of murkiness and bad decisions, it is this one!   The first problem seems to be that people considering this task of converting…
This video shows how to quickly and easily deploy an email signature for all users in Office 365 and prevent it from being added to replies and forwards. (the resulting signature is applied on the server level in Exchange Online) The email signat…
When cloud platforms entered the scene, users and companies jumped on board to take advantage of the many benefits, like the ability to work and connect with company information from various locations. What many didn't foresee was the increased risk…
Suggested Courses

865 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question