Thu Oct 27 19:09:05 2011: Request 71996 was acted upon.
Transaction: Ticket created by steve.cook...@sca-uk.com
       Queue: Wx
     Subject: Wx::MediaCtrl EVT_MEDIA_PLAY error
   Broken in: 0.9902
    Severity: Normal
       Owner: Nobody
  Requestors: steve.cook...@sca-uk.com
      Status: new
 Ticket <URL: https://rt.cpan.org/Ticket/Display.html?id=71996 >


Hi Mattia, Mark

This is taken from an entry I made on PerlMonks.

I'm running wxPerl with MediaCtrl under Kubuntu 10.04. It doesn't work
at all as far as I can see on 10.10+ but I'm looking into it.

I'm getting a strange error with the following line of Perl:

Wx::Event::EVT_MEDIA_PLAY( $i_frame, $i_frame->{Ctl_Media},
\&buttons_on_media_played );

Which gives me: Error while autoloading 'Wx::wxEVT_MEDIA_PLAY' at
/usr/local/lib/perl/5.10.1/Wx/Media.pm line 47

If I track through to the module in question, I find this stretch of code:

43 sub EVT_MEDIA_LOADED($$$) { $_[0]->Connect( $_[1], -1,
&Wx::wxEVT_MEDIA_LOADED, $_[2] ) }; 44 sub EVT_MEDIA_FINISHED($$$) {
$_[0]->Connect( $_[1], -1, &Wx::wxEVT +_MEDIA_FINISHED, $_[2] ) }; 45
sub EVT_MEDIA_STOP($$$) { $_[0]->Connect( $_[1], -1,
&Wx::wxEVT_MEDIA_STOP, $_[2] ) }; 46 sub EVT_MEDIA_PAUSE($$$) {
$_[0]->Connect( $_[1], -1, &Wx::wxEVT_ME +DIA_PAUSE, $_[2] ) }; 47 sub
EVT_MEDIA_PLAY($$$) { $_[0]->Connect( $_[1], -1, &Wx::wxEVT_MEDIA_PLAY,
$_[2] ) }; 48 sub EVT_MEDIA_STATECHANGED($$$) { $_[0]->Connect( $_[1],
-1, &Wx::wxEVT_MEDIA_STATECHANGED, $_[2] ) };

What have I got here? I'm guessing it might be a wrapping bug, or even a
GStreamer bug :(

What are your thoughts?

In the meantime I have written a little loop using ->GetState to test
the status and call buttons_on_media_played where appropriate.

It works a treat, although it seems a shame that the documented feature
doesn't work and it's a little heavy on CPU cycles.

Regards

Steve 

Reply via email to