Re: [osg-users] Quicktime plugin live streaming documentation/examples
Hi any demo / example ? regards 2008/4/3, Mike Greene [EMAIL PROTECTED]: Colin, Success! Using the later version of VDIG that you referenced, I was able to get a live stream to work with osgmovie. I'm using a KOCOM camera running video through a Canopus ADVC 110 A/D video convertor into a firewire cable. This is on Windows XP, OSG 2.3.5, Visual Studio 2005 debug, Quicktime SDK 7.3. Mike Greene ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org -- Adrian Egli ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Quicktime plugin live streaming documentation/examples
Hi Adrian, I've not documented anything on the wiki yet but below is how the result was achieved on Windows XP. See my previous post for any more detail. The demo/example is really just a quad with your live feed playing - so a I've just tweaked osgmovie here to force load the plug-in from a .live association and then interpret the file basename to get a device and input ID - ugly but working... 0. If you have NO QuickTime driver for your device then install http://www.abstractplane.com/products/vdig.jsp Use the latest version and do the manual install from the zip. You will jave to live with the demo mode or fork out some $$$. If your capture device has a QuickTime driver then you do not need this VDIG for Windows thing eg BlackMagic Intensity Pro. 1. Modify the osgmovie.cpp and make sure that the .live extension is associated with the osgdb_qt plugin: osgDB::Registry::instance()-addFileExtensionAlias(live,qt); 2. run osgmovie --devices If you have any live feed devices associated with a QuickTime driver then this will spit out some command line options and associations. It will also spit out any pseudo Windows VDIG wrapped Direct Show devices in the same way eg: ... 4:1.liveBlackmagic HDTV 720Intensity HDTV 720p 59.94 ... 1:4.liveHauppauge WinTV 418 Video Capture (4E384A6E048F0)S-Video 3 UYVY @ 720x480 ... 3. run osgmovie and pass it a pseudo file name that will be translated by the plug-in to point at an input device eg $ osgmovie x:y.live This will force load the osgdb_qt plug-in, and then attempt to decode the x:y.live where x and y are the input and channel of your input - eg 5:0.live I plan to submit to Robert an osgvideo example which wraps some of this up a bit better. Cheers, Colin. Adrian Egli OpenSceneGraph (3D) wrote: Hi any demo / example ? regards 2008/4/3, Mike Greene [EMAIL PROTECTED] mailto:[EMAIL PROTECTED]: Colin, Success! Using the later version of VDIG that you referenced, I was able to get a live stream to work with osgmovie. I'm using a KOCOM camera running video through a Canopus ADVC 110 A/D video convertor into a firewire cable. This is on Windows XP, OSG 2.3.5, Visual Studio 2005 debug, Quicktime SDK 7.3. Mike Greene ___ osg-users mailing list osg-users@lists.openscenegraph.org mailto:osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org -- Adrian Egli ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Quicktime plugin live streaming documentation/examples
Hi Mike, you might want to look here for some more tips: http://processing.org/reference/libraries/video/ Prior to getting a capture card that shipped with a proper QuickTime vdig supported under under Windows XP and XPx64, I also tried a Windows wrapper called WinVDIG which I got from here: http://www.eden.net.nz/7/20071008/ However I found this version also crashed when responding the the QuickTime vdig API calls upon it. Also play close attention to the removal instructions for this stuff as it took me quite a while to clean my machine of WinVDIG and the crashes. Anyway the long and short of it is avoid this version and see below... Stephan wrote: For windows there's one I know of available at http://www.abstractplane.com/products/vdig.jsp I plan to give this other Windows VDIG wrapper from AbstractPlane a go and see if I can help you to track the bugs. It looks far more up to date than the other one and apparently works with QuickTime7. This would be your best solution in the short term and I'll get back to you on this ASAP. The long and short of it is that I found the whole QuickTime SDK and integration with OSG quite a different experience under Windows and OSX. Pending some further funding and time I'd like to extend the current work to upgrade the live/stream work to use optionally DirectShow on Windows, and therefore free up the OSX version to use the newer OpenGL/CoreVideo/Movie QT7 stuff - right now they both share some old-style GWorld SequenceGrabber code to make it work on both platforms - you could say equally well or equally badly - and it creaks - especially the live stuff... Cheers, Colin. On Wed, April 2, 2008 5:59 pm, Mike Greene wrote: Further progress : used WinVIDG to make the bridge between DirectShow devices and quicktime. Seemed to work. Ran osgmovied --devices - got this output: QT QTML: Starting up... QT QTML: initialized successfully QT Movies: Starting up... QT Movies: initialized successfully QT Movies: Closing down... QT Movies: closed successfully QT QTML: Closing down... QT QTML: Closed successfully QT QTML: Starting up... QT QTML: initialized successfully QT Movies: Starting up... QT Movies: initialized successfully available Video DigitizerComponents : 1 Component Name: Microsoft DV Camera and VCR-WDM Desc: Direct Show Proxy for QuickTime Digitizers DigitizerInfo: Digitizer Type : Basic (no clipping) Hardwre Slot : 0 Input Capability: NTSC : true PAL : true Composite : true Component : true SVideo: false Input Current: NTSC : true PAL : true Composite : true Component : true SVideo: false Min destination width,height : 160 120 Max destination width,height : 720 480 NTSC : true PAL : true Composite : true Component : true SVideo: false GenLock : false SECAM : true VTR_Broadcast : false Color : true BW: false *SignalLock* : true VDGetPreferredImageDimensions(aComponent, pref_width, pref_height) - ERROR Number of inputs: 0 VDGetInputName(aComponent,(long)i, name) - ERROR Format of input : compositeIn Currently active input : 0 QT Movies: Closing down... QT Movies: closed successfully QT QTML: Closing down... QT QTML: Closed successfully QT QTML: Starting up... QT QTML: initialized successfully QT Movies: Starting up... QT Movies: initialized successfully available SequenceGrabber Components : 1 Component Name: Movie Grabber Desc: Assists applications recording QuickTime movies SrcVideoBounds: 720 480 Could not get DeviceAndInput names from Video SG ChannelDeviceAndInputNamesNumber: Microsoft DV Camera and VCR-WDM : : 0 DeviceList from Video SG ok DeviceList : 1 devices in total DeviceList : 0 is current device Device ID : 0 : DeviceNameStr : Microsoft DV Camera and VCR-WDM InputList : 1 inputs in total InputList : 0 is current input InputNameStr : 0 Could not get DeviceAndInput names from Sound SG ChannelDeviceAndInputNamesNumber: Microsoft DV Camera and VCR-WDM : : 0 DeviceList from Sound SG ok DeviceList : 1 devices in total DeviceList : 0 is current device Device ID : 0 : DeviceNameStr : waveIn InputList : 1 inputs in total InputList : 0 is current input InputNameStr : 0 Default QT Movies: Closing down... QT Movies: closed successfully QT QTML: Closing down... QT QTML: Closed successfully Then I ran osgmovied 0:0.live --- got this output QT QTML: Starting up... QT QTML: initialized successfully QT Movies: Starting up... QT Movies: initialized successfully QT Movies: Closing down... QT Movies: closed successfully QT QTML: Closing down... QT QTML: Closed successfully QT QTML: Starting up... QT QTML: initialized successfully QT Movies: Starting up... QT Movies: initialized successfully
Re: [osg-users] Quicktime plugin live streaming documentation/examples
Colin, Success! Using the later version of VDIG that you referenced, I was able to get a live stream to work with osgmovie. I'm using a KOCOM camera running video through a Canopus ADVC 110 A/D video convertor into a firewire cable. This is on Windows XP, OSG 2.3.5, Visual Studio 2005 debug, Quicktime SDK 7.3. Mike Greene ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Quicktime plugin live streaming documentation/examples
OK, I've hooked a video input source up to my firewire card. I've made sure that the qt plugin can recognize (.live) extensions. When I run osgmovied.exe --devices, I get messages about QT QTML, QT Movies, and QT QTML (again) starting up and closing down successfully. But the last line output is : available Video DigitizerComponents : 0 I know the video is working because I have a VideoLan Client instance running and it shows the output of the camera feed. Is there there something else (maybe relative to QuickTime) that I need to specify? Mike Greene ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Quicktime plugin live streaming documentation/examples
Hi Mike, Mike Greene schrieb: I know the video is working because I have a VideoLan Client instance running and it shows the output of the camera feed. Is there there something else (maybe relative to QuickTime) that I need to specify? you'll need a vdig-component supporting your camera for Windows. On OS X there are built-in vdigs available for a lot of camera-models. For windows there's one I know of available at http://www.abstractplane.com/products/vdig.jsp cheers, Stephan ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Quicktime plugin live streaming documentation/examples
Further progress : used WinVIDG to make the bridge between DirectShow devices and quicktime. Seemed to work. Ran osgmovied --devices - got this output: QT QTML: Starting up... QT QTML: initialized successfully QT Movies: Starting up... QT Movies: initialized successfully QT Movies: Closing down... QT Movies: closed successfully QT QTML: Closing down... QT QTML: Closed successfully QT QTML: Starting up... QT QTML: initialized successfully QT Movies: Starting up... QT Movies: initialized successfully available Video DigitizerComponents : 1 Component Name: Microsoft DV Camera and VCR-WDM Desc: Direct Show Proxy for QuickTime Digitizers DigitizerInfo: Digitizer Type : Basic (no clipping) Hardwre Slot : 0 Input Capability: NTSC : true PAL : true Composite : true Component : true SVideo: false Input Current: NTSC : true PAL : true Composite : true Component : true SVideo: false Min destination width,height : 160 120 Max destination width,height : 720 480 NTSC : true PAL : true Composite : true Component : true SVideo: false GenLock : false SECAM : true VTR_Broadcast : false Color : true BW: false *SignalLock* : true VDGetPreferredImageDimensions(aComponent, pref_width, pref_height) - ERROR Number of inputs: 0 VDGetInputName(aComponent,(long)i, name) - ERROR Format of input : compositeIn Currently active input : 0 QT Movies: Closing down... QT Movies: closed successfully QT QTML: Closing down... QT QTML: Closed successfully QT QTML: Starting up... QT QTML: initialized successfully QT Movies: Starting up... QT Movies: initialized successfully available SequenceGrabber Components : 1 Component Name: Movie Grabber Desc: Assists applications recording QuickTime movies SrcVideoBounds: 720 480 Could not get DeviceAndInput names from Video SG ChannelDeviceAndInputNamesNumber: Microsoft DV Camera and VCR-WDM : : 0 DeviceList from Video SG ok DeviceList : 1 devices in total DeviceList : 0 is current device Device ID : 0 : DeviceNameStr : Microsoft DV Camera and VCR-WDM InputList : 1 inputs in total InputList : 0 is current input InputNameStr : 0 Could not get DeviceAndInput names from Sound SG ChannelDeviceAndInputNamesNumber: Microsoft DV Camera and VCR-WDM : : 0 DeviceList from Sound SG ok DeviceList : 1 devices in total DeviceList : 0 is current device Device ID : 0 : DeviceNameStr : waveIn InputList : 1 inputs in total InputList : 0 is current input InputNameStr : 0 Default QT Movies: Closing down... QT Movies: closed successfully QT QTML: Closing down... QT QTML: Closed successfully Then I ran osgmovied 0:0.live --- got this output QT QTML: Starting up... QT QTML: initialized successfully QT Movies: Starting up... QT Movies: initialized successfully QT Movies: Closing down... QT Movies: closed successfully QT QTML: Closing down... QT QTML: Closed successfully QT QTML: Starting up... QT QTML: initialized successfully QT Movies: Starting up... QT Movies: initialized successfully SrcVideoBounds: 720 480 QT Movies: Closing down... QT Movies: closed successfully QT QTML: Closing down... QT QTML: Closed successfully VDGetDigitizerInfo(aComponent, vid_info) - ERROR Error: Thread 01C66FCC still running in destructor The app starts up an OSG window, but it is all gray. Any help/ideas? I have seen a few net hits about incompatible versions of Quicktime. I'll look into that next. Mike Greene ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Quicktime plugin live streaming documentation/examples
Mike Greene schrieb: I've been using the QT plugin for sometime now with a pre-recorded movie (.mov). I now want to send it live streams. Is there any documentation/examples on how to do this? I use VideoLan Client to start a multicast stream (udp://@2xx.xxx.xxx.xxx:1234) and can see it remotely, so I know it is streaming correctly. How do I tell the plugin what to look for as far as URL for the incoming stream? I tried using the straight QuickTime player just to see if it would open the stream and have been unsuccessful thus far in giving a correctly formed URL. I glanced through the QT plugin code and saw something about a .live file? The quicktime-plugin live feature is intended to grap a live-feed from a attached usb/firewire cam. Quicktime itself can only stream quicktime-movies via http / rtsp, but I haven't tested it with osg. I am pretty sure, that the current quicktime plugin can't handle streaming over the net, there's some missing functionality, and osgDB::Registry will eat all requests to http and forward it to the .net-plugin, perhaps this has changed with the occurance of the curl-plugin. cheers, Stephan ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Quicktime plugin live streaming documentation/examples
Hi Mike, yup right now it'll work from an attached device as Stephan said but in addition including a capture card, provided the device has a quicktime driver installed. When I wrote the live feed extension part of the work included support for a stream, however I did not get that far and the capture card was sufficient for the client. I wrote some documentation for the .live processing that Robert asked me to put on the wiki - so I should do that tomorrow if you think it would be of use to you. Are you on Windows or Mac BTW? Since you asked about the .live then A=as a ten second piece of documentation off the top of my head start by using a slightly modified osgmovie app until I submit the osgvideo example: 0. Modify the osgmovie.cpp and make sure that the .live extension is associated with the osgdb_qt plugin: osgDB::Registry::instance()-addFileExtensionAlias(live,qt); 1. run osgmovie --devices If you have any live feed devices associated with a QuickTime driver then this will spit out some command line options and associations. eg: ... 4:1.liveBlackmagic HDTV 720Intensity HDTV 720p 59.94 ... 2. run osgmovie x.y.live This will force load the osgdb_qt plugin, and then attempt to open the x.y.live where x and y are the input and channel of your input - eg 5:0.live Sorry I can't help you regarding the streaming using QuickTime at this point in time. Cheers, Colin. Stephan Huber wrote: Mike Greene schrieb: I've been using the QT plugin for sometime now with a pre-recorded movie (.mov). I now want to send it live streams. Is there any documentation/examples on how to do this? I use VideoLan Client to start a multicast stream (udp://@2xx.xxx.xxx.xxx:1234) and can see it remotely, so I know it is streaming correctly. How do I tell the plugin what to look for as far as URL for the incoming stream? I tried using the straight QuickTime player just to see if it would open the stream and have been unsuccessful thus far in giving a correctly formed URL. I glanced through the QT plugin code and saw something about a .live file? The quicktime-plugin live feature is intended to grap a live-feed from a attached usb/firewire cam. Quicktime itself can only stream quicktime-movies via http / rtsp, but I haven't tested it with osg. I am pretty sure, that the current quicktime plugin can't handle streaming over the net, there's some missing functionality, and osgDB::Registry will eat all requests to http and forward it to the .net-plugin, perhaps this has changed with the occurance of the curl-plugin. cheers, Stephan ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org