<div>Hi.<br></div><div><br></div><div>I am trying to create a new backend. I have a set of multimedia libraries that I am trying to wrap up in a plugin. I have had some success and some problems.</div><div><br></div><div>I am more of a C driver person so I may be making bad assumptions and obvious mistakes :-)</div>
<div><br></div><div>I am using QT embedded 4.5.2 with gstreamer plugin as a base. I removed most of the gstreamer stuff and I am only trying to get minimum functionality going at the moment (i.e. play something fullscreen without any seek or volume control etc.).  I am using the demo mediaplayer app to test my stuff. I have got some fullscreen video playing, but it crashes shortly after. I have tried to use the Xine and Mplayer phonon plugins as a guide, but I don't fully understand everything.</div>
<div><br></div><div>What happens:</div><div>I can start the mediaplayer app and select a media file to play. It starts playing full screen. If I move </div><div>the mouse the app crashes and I get :</div><div><br></div><div>
---</div><div>ASSERT failure in QCoreApplication::sendEvent: "Cannot send events to objects owned by a different thread. Current thread 84f2ee0. Receiver '' (of type 'QSocketNotifier') was created in thread 805e6b8"</div>
<div>---</div><div><br></div><div>Currently I use the 'setsource' call to call the library init(<path-to-file>). When I do not call init() the mediaplayer app does not crash. It looks like the init() spawns a seperate thread in the background. I have tried to put the library init() in a Qthread, but it crashes in the same way. </div>
<div><br></div><div>I have read that QT does not like to send/receive events from threads that are not under its control. This I can understand. Is there a easy way to wrap up a 'library thread' so QT does not try to send/receive events? Do I need to wrap the library up in a Qprocess?</div>
<div><br></div><div>Regards,</div><div>Harry</div><div><br></div><div><br></div>