Beefy Boxes and Bandwidth Generously Provided by pair Networks
The stupid question is the question not asked
 
PerlMonks  

Re: Tk Apps - Common approaches?

by zentara (Archbishop)
on Dec 06, 2006 at 22:05 UTC ( [id://588213]=note: print w/replies, xml ) Need Help??


in reply to Tk Apps - Common approaches?

Well the problem you had in your last post, about the premature exiting of your SDL script is solved by using the Tk event loop to keep everything alive. So Tk and SDL is an easy combination to put together. The script below is the basic Tk app, using SDL. All you need to do is setup lists, and load different files into the player. If you have a touch screen, it would be very easy to bind to a up / down icon, and scroll thru a list. You could setup volume controls, repeat, auto-play, and all sorts of cool checkbuttons.
#!/usr/bin/perl -w use Tk; use SDL::Mixer; use SDL::Music; my $mw = MainWindow->new(title => "SDL audio"); $mixer = eval { SDL::Mixer->new(-frequency => 44100, -channels => 2, - +size => 1024); }; $mixer->music_volume(100); $music = new SDL::Music './1bb.wav' or die $!; $mixer->play_music($music,-1); #$mixer->play_music($sound,-1); #will not play simultaneously MainLoop;

I'm not really a human, but I play one on earth. Cogito ergo sum a bum

Replies are listed 'Best First'.
Re^2: Tk Apps - Common approaches?
by shotgunefx (Parson) on Dec 06, 2006 at 22:26 UTC
    The SDL::Mixer was a poor example. I've already written the app for the most part(oriented towards touchscreen interface, but I was using XMMS for playback. Too much lag with large playlists on my laptop, so I decided to look at SDL::Mixer. I didn't know if it blocked while playing or was asynchronous. Hence not delaying in the example.

    My thought is to just shell out, edit and reload the playlist at this point. I'm pretty happy with the speed and level of control I have managing the interface myself with SDL.

    -Lee
    "To be civilized is to deny one's nature."

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://588213]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others wandering the Monastery: (3)
As of 2024-04-19 05:35 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found