Sorry, I meant to copy this list:

Hi Guys,

I now have a version of wxMediaCtrl running under wxGTK playing and
recording a webcam nicely.  The details are:

- It continues to use playbin (updated to playbin2 for later versions of
GStreamer).

- It creates a new GstBin, configured to play and to record simultaneously,
which can be plugged into the video-sink property in playbin.

- It produces high quality video which can then be further processed by
other systems.

- It works through wxPerl too (but not other distros yet).

I'd like to start migrating some of it back into the main wxWidgets library,
but there is an issue with the api that still needs sorting and really I'd
like some help with testing and bug-fixing.  

The issue is that really the api should work like the DoLoad function (in
this case I've called it DeviceCapture):

- stop playback

- load new playback file/uri (or in this case load new video-sink)

- restart playback.

However it doesn't work this way.  I get a second window popping up and
playing the image, rather than the wxMediaCtrl window created earlier.
Something to do with XOverlay? I don't know.

The only way it works is for the video-sink to be created at the same time
as the rest of the control.  This is fine for me, but not good enough for
distribution.  It also means that additional parameters like desired
filename for saving, camera id, encoding routines and quality attributes
can't be passed as parameters to DeviceCapture as they should be.

I get round the problem of knowing when to play or record by the
unforgiveable hack of passing '-1' in the file name to switch on
DeviceCapture mode.  Sorry.

If anyone would be interested in pooling resources, please let me know.  If
we had two or three people working on this it would be quite nice.  I have
(I believe) sorted out wrapping issues for wxPerl (at least for me I have),
but if we had someone using wxRuby, wxPython et al, then we could deal with
the wrapping issues for these distros too.

Regards

Steve

<<Blank Bkgrd.gif>>

Reply via email to