Re: [Pykaraoke-discuss] Progress report

2017-12-02 Thread Kelvin Lawson via Pykaraoke-discuss
Hi Ken,

Sounds excellent, you're bringing it forward significantly. Over the years
lots of people have hoped we would add features for professional KJ use.

Is it still suitable for home use with the new version or should we split
it into two modes (home / KJ)?

Best,
Kelvin.

On Sat, 2 Dec 2017 at 08:34 Ken Williams  wrote:

> I have now got a stage further in all the changes to the PyKaraoke
> source code.
>
> Sorry but the tree browser had to go, someone spent many hours writing
> it, but I think I may have found a nicer solution.
>
> I have also got it to automatically play background music between
> karaoke songs, as it seems to be what all the professional systems do here.
>
> Unfortunately this can only be cdg or kar so far, as it's all pykaraoke
> allows as valid extensions.
>
> I have now got the skeleton of a help system working.
>
> I am planning to remove the printer support, it can always be in a
> separate program, but it does not work on my current Linux system, and
> since for test purposes I have access to the bars hard drive with over
> 100,000 karaoke songs, printing them all out is just not practical.
>
> So basically I have two tabs working so far on the main screen, the
> first tab works in the same way it always has.
>
> Tab two has my equivalent of the tree browser, you use it in a similar
> way, find files, and add them to the right hand play list window, the
> difference it this is the background music, everything in this window
> plays between karaoke songs on the main tab one window.
>
> Ken
>
> --
> Ken Williams.
> Torremar Benidorm & Bella Vista Rhyl.
>
> A Unix/Linux user since 1983.
>
>
>
> --
> Check out the vibrant tech community on one of the world's most
> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
> ___
> Pykaraoke-discuss mailing list
> Pykaraoke-discuss@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss
>
--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] PyKaraoke

2017-10-24 Thread Kelvin Lawson via Pykaraoke-discuss
Hi Ken,


> I have never really used GitHub, so i will have to figure that out and
> post my changes.
>
> I assume I start my own repo called pykaraoke then somehow link it to
> the official one? I really have no idea.
>

There should be some guides on the Github website but essentially you can
create your own "fork" of the PyKaraoke source code via the Github website.
Then you can download the source from your own fork and work with that.
When you're ready, you can submit changes back to the main project by
issuing a Pull Request.

Thanks,
Kelvin.

>
> On holiday at present so using a smaller computer and no printer,
> working with a printer is something we take for granted, but writing
> code with no printer I find hard.
>
> Ken
>
>
> On 10/24/2017 12:21 PM, karaokeamer...@gmail.com wrote:
> > RoxBox and some other commercial programs can do partial string search
> > exactly as you describe. $80 for RoxBox.
> >
> > I am not involved in the company, but I know the guy who makes it as he
> is
> > local to me in Texas:
> > http://www.roxbox.net/store/pc/viewPrd.asp?idproduct=1&idcategory=3
> >
> >
> >
> >
> > -Original Message-
> > From: Ken Williams [mailto:k...@kensmail.uk]
> > Sent: Tuesday, October 24, 2017 3:42 AM
> > To: pykaraoke-discuss@lists.sourceforge.net
> > Subject: [Pykaraoke-discuss] PyKaraoke
> >
> > As an additional comment, i would say that the search on Pykaraoke is
> > brilliant, even as it stands.
> >
> > For example to find "Elvis Presley In The Ghetto" with PyKaraoke you can
> > just enter "elv pre ghe" and you have it.
> >
> > But with the software I used in a local bar here, it will search on a
> title,
> > or a singer, but not both, which shocked me on software that is so
> > expensive.
> >
> > Ken
> >
> > --
> > Ken Williams.
> > Torremar Benidorm & Bella Vista Rhyl.
> >
> > A Unix/Linux user since 1983.
> >
> >
> >
> 
> > --
> > Check out the vibrant tech community on one of the world's most engaging
> > tech sites, Slashdot.org! http://sdm.link/slashdot
> > ___
> > Pykaraoke-discuss mailing list
> > Pykaraoke-discuss@lists.sourceforge.net
> > https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss
> >
>
> --
> Ken Williams.
> Torremar Benidorm & Bella Vista Rhyl.
>
> A Unix/Linux user since 1983.
>
>
>
> --
> Check out the vibrant tech community on one of the world's most
> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
> ___
> Pykaraoke-discuss mailing list
> Pykaraoke-discuss@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss
>
--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] PyKaraoke

2017-10-24 Thread Kelvin Lawson via Pykaraoke-discuss
Hi Ken,


> Anyway I re-wrote a bit of the search routine in PyKaraoke to do a
>
search while typing, and was wondering if anyone out there would be
> interested in trying my changes and giving me a second opinion.
>

The best thing to do would be to submit a pull request on Github:
https://github.com/kelvinlawson/pykaraoke

That way people can easily test out your changes.

Thanks for contributing!

Kelvin.
--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] Welcome to the "Pykaraoke-discuss" mailing list

2013-06-03 Thread Kelvin Lawson
Hi Conor,

I wouldn't rule it out but it seems unlikely because PyKaraoke itself
is pure Python. Once you disable the C-optimised CDG player, the rest
of PyKaraoke is all Python. My money is on SDL/Pygame or some change
they have made to an API which has broken software using old APIs.

How comfortable are you with Python? I wonder if you could put
together a small Python script that calls the relevant SDL/Pygame API
to see how it works.

Kelvin.


On 31 May 2013 00:36, Conor Dowdall  wrote:
> I've done lots of testing and I'm pretty sure it's not SDL_mixer's fault.
>
> My guess is that it is a bug in the 64-bit pykaraoke - I'm not sure how to
> confirm this or how to track it down though - anybody else use 64-bit
> (Fedora [18] specifically)?
>
> Conor
>
> --
> Introducing AppDynamics Lite, a free troubleshooting tool for Java/.NET
> Get 100% visibility into your production application - at no cost.
> Code-level diagnostics for performance bottlenecks with <2% overhead
> Download for free and get started troubleshooting in minutes.
> http://p.sf.net/sfu/appdyn_d2d_ap1
> ___
> Pykaraoke-discuss mailing list
> Pykaraoke-discuss@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss
>

--
Get 100% visibility into Java/.NET code with AppDynamics Lite
It's a free troubleshooting tool designed for production
Get down to code-level detail for bottlenecks, with <2% overhead.
Download for free and get started troubleshooting in minutes.
http://p.sf.net/sfu/appdyn_d2d_ap2
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] Welcome to the "Pykaraoke-discuss" mailing list

2013-05-29 Thread Kelvin Lawson
I'm on Ubuntu here so haven't been doing this myself. I'd advise
trying to find an RPM with MP3 support (is it possible that Fedora
actually includes MP3 support in the library these days anyway?)

Thanks,
Kelvin.


On 29 May 2013 12:55, Conor Dowdall  wrote:
> Yes, I downloaded SDL_mixer-1.2.12.tar.gz from their website and configured
> with mp3 support. After tinkering around for a while I noticed that if I
> first remove the Fedora rpm (actually rpm-sphere)
>
> $ sudo rpm -ev --nodeps SDL_mixer-1.2.12-3.fc18.x86_64
>
> and then configure; make; make install my downloaded package
>
> $ ./configure --prefix=/usr --enable-music-mp3
>
> pykaraoke says it can't find libSDL_mixer-1.2.so
>
> But if I don't remove the original rpm (and configure; make; make install)
> then I get the error with the core dump.
>
> I have a 64-bit system if that matters - am I missing a step?
>
> Thanks so much for your replies,
>
> Conor.
>
> --
> Introducing AppDynamics Lite, a free troubleshooting tool for Java/.NET
> Get 100% visibility into your production application - at no cost.
> Code-level diagnostics for performance bottlenecks with <2% overhead
> Download for free and get started troubleshooting in minutes.
> http://p.sf.net/sfu/appdyn_d2d_ap1
> ___
> Pykaraoke-discuss mailing list
> Pykaraoke-discuss@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss
>

--
Introducing AppDynamics Lite, a free troubleshooting tool for Java/.NET
Get 100% visibility into your production application - at no cost.
Code-level diagnostics for performance bottlenecks with <2% overhead
Download for free and get started troubleshooting in minutes.
http://p.sf.net/sfu/appdyn_d2d_ap1
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] Welcome to the "Pykaraoke-discuss" mailing list

2013-05-28 Thread Kelvin Lawson
Could be: did you download the SDL_mixer sources and build them
yourself? Could be a version mismatch or similar. The instructions for
building that were written quite some time ago and something could
have changed.


On 28 May 2013 17:32, Conor Dowdall  wrote:
> No luck there Kelvin.. thanks for the suggestion.
>
> I see it starts with libc in the backtrace and moves on to libSDL_mixer...
> did I somehow mess up the SDL install with mp3 support???... I'm not too
> familiar with how backtraces work!
>
> Conor.
>
>
> *** glibc detected *** python: double free or corruption (out):
> 0x021f6800 ***
>
> === Backtrace: =
> /lib64/libc.so.6[0x355ac7ca8e]
> /lib/libSDL_mixer-1.2.so.0[0x3af1e0cc13]
> /lib/libSDL_mixer-1.2.so.0[0x3af1e0b2a9]
> /lib/libSDL_mixer-1.2.so.0(Mix_OpenAudio+0x8d)[0x3af1e09b8d]
> /usr/lib64/python2.7/site-packages/pygame/mixer.so(+0x3050)[0x7fcf48be0050]
> /usr/lib64/python2.7/site-packages/pygame/mixer.so(+0x31d6)[0x7fcf48be01d6]
> /lib64/libpython2.7.so.1.0(PyEval_EvalFrameEx+0x4a80)[0x35794dc370]
>
> --
> Try New Relic Now & We'll Send You this Cool Shirt
> New Relic is the only SaaS-based application performance monitoring service
> that delivers powerful full stack analytics. Optimize and monitor your
> browser, app, & servers with just a few lines of code. Try New Relic
> and get this awesome Nerd Life shirt! http://p.sf.net/sfu/newrelic_d2d_may
> ___
> Pykaraoke-discuss mailing list
> Pykaraoke-discuss@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss
>

--
Introducing AppDynamics Lite, a free troubleshooting tool for Java/.NET
Get 100% visibility into your production application - at no cost.
Code-level diagnostics for performance bottlenecks with <2% overhead
Download for free and get started troubleshooting in minutes.
http://p.sf.net/sfu/appdyn_d2d_ap1
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] Welcome to the "Pykaraoke-discuss" mailing list

2013-05-28 Thread Kelvin Lawson
Hi Conor,

There is only one C module used in PyKaraoke (for optimised CDG
playback). It would be nice to rule this out first: please could you
open the PyKaraoke Configuration menu and turn off Optimised C-based
Implementation under the CDG tab?

Thanks,
Kelvin.


On 27 May 2013 21:09, Conor Dowdall  wrote:
> eeek... password changed... thanks!!
>
> it is a fresh install with a fully wiped home directory. I installed it by
> compiling manually at first - which resulted in the exact same problem..
> this was before I realised that Fedora actually has a .rpm in a yum
> repository. It is the latest version of pykaraoke (0.7.5). Not sure what to
> do next... ???
>
> Thanks,
>
> Conor.
>
> --
> Try New Relic Now & We'll Send You this Cool Shirt
> New Relic is the only SaaS-based application performance monitoring service
> that delivers powerful full stack analytics. Optimize and monitor your
> browser, app, & servers with just a few lines of code. Try New Relic
> and get this awesome Nerd Life shirt! http://p.sf.net/sfu/newrelic_d2d_may
> ___
> Pykaraoke-discuss mailing list
> Pykaraoke-discuss@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss
>

--
Try New Relic Now & We'll Send You this Cool Shirt
New Relic is the only SaaS-based application performance monitoring service 
that delivers powerful full stack analytics. Optimize and monitor your
browser, app, & servers with just a few lines of code. Try New Relic
and get this awesome Nerd Life shirt! http://p.sf.net/sfu/newrelic_d2d_may
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] Bug report

2011-11-15 Thread Kelvin Lawson
Hi Pietro,

Yes I haven't updated the website / Sourceforge yet since the move from
Sourceforge to Github. The mailing list is still on Sourceforge but the
development repository and issue tracker are now on Github. Eventually I'll
get everything updated with this new information.

Thanks,
Kelvin.


On 15 November 2011 13:38, Pietro Battiston  wrote:

> Il giorno mar, 15/11/2011 alle 08.56 +, Kelvin Lawson ha scritto:
> > Hi Pietro,
> >
> >
> > Thanks, I have added this to the issues list at Github:
> > https://github.com/kelvinlawson/pykaraoke/issues/
> >
>
> Maybe a link from
> http://kibosh.org/pykaraoke/development.php
> would be convenient?
>
> thanks
>
> Pietro
>
>
> >
> > Best regards,
> > Kelvin.
> >
> > On 14 November 2011 17:41, Pietro Battiston 
> > wrote:
> > Hello,
> >
> > there are some MIDI files (I can provide an example only
> > privately,
> > since they are not free) for which, when played, PyKaraoke
> > only shows
> > the error
> >
> > "ERROR: Could not parse the MIDI file"
> >
> > and then, in another MessageDialog, the error
> >
> > "No lyrics in the track".
> >
> > Now, that would be fair to me... the only problem is that
> > then,
> > pykaraoke is stuck: not unresponsive, but it won't play any
> > other file,
> > and will print forever in the terminal:
> >
> > Traceback (most recent call last):
> >  File "/usr/lib/pymodules/python2.7/pykaraoke.py", line 3815,
> > in
> > handleIdle
> >position = self.Player.GetPos()
> >  File "/usr/lib/pymodules/python2.7/pykar.py", line 1072, in
> > GetPos
> >if self.useMidiTimer:
> > AttributeError: midPlayer instance has no attribute
> > 'useMidiTimer'
> >
> >
> > Interestingly, if I played some MIDI _before_ trying to play
> > the faulty
> > one, then in the background that will play again, but without
> > showing
> > the lyrics (and i will not be able to stop it in any way).
> >
> > You may think it is stupid to play faulty MIDI files, or MIDI
> > files
> > without lyrics... but when I have a huge library it's
> > impossible to try
> > all of them before, and then it's also annoying to have to
> > restart the
> > program (and loose the queue) any time a faulty one is
> > chosen...
> >
> > Maybe an alternative fix could be to (optionally) run some
> > "validity
> > check" on MIDI files when refreshing the library?
> >
> > by the way, thanks for the nice app
> >
> > Pietro
> >
> >
> >
> --
> > RSA(R) Conference 2012
> > Save $700 by Nov 18
> > Register now
> > http://p.sf.net/sfu/rsa-sfdev2dev1
> > ___
> > Pykaraoke-discuss mailing list
> > Pykaraoke-discuss@lists.sourceforge.net
> > https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss
> >
> >
>
>
>
>
> --
> RSA(R) Conference 2012
> Save $700 by Nov 18
> Register now
> http://p.sf.net/sfu/rsa-sfdev2dev1
> ___
> Pykaraoke-discuss mailing list
> Pykaraoke-discuss@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss
>
--
RSA(R) Conference 2012
Save $700 by Nov 18
Register now
http://p.sf.net/sfu/rsa-sfdev2dev1___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] Bug report

2011-11-15 Thread Kelvin Lawson
Hi Pietro,

Thanks, I have added this to the issues list at Github:
https://github.com/kelvinlawson/pykaraoke/issues/

Best regards,
Kelvin.

On 14 November 2011 17:41, Pietro Battiston  wrote:

> Hello,
>
> there are some MIDI files (I can provide an example only privately,
> since they are not free) for which, when played, PyKaraoke only shows
> the error
>
> "ERROR: Could not parse the MIDI file"
>
> and then, in another MessageDialog, the error
>
> "No lyrics in the track".
>
> Now, that would be fair to me... the only problem is that then,
> pykaraoke is stuck: not unresponsive, but it won't play any other file,
> and will print forever in the terminal:
>
> Traceback (most recent call last):
>  File "/usr/lib/pymodules/python2.7/pykaraoke.py", line 3815, in
> handleIdle
>position = self.Player.GetPos()
>  File "/usr/lib/pymodules/python2.7/pykar.py", line 1072, in GetPos
>if self.useMidiTimer:
> AttributeError: midPlayer instance has no attribute 'useMidiTimer'
>
>
> Interestingly, if I played some MIDI _before_ trying to play the faulty
> one, then in the background that will play again, but without showing
> the lyrics (and i will not be able to stop it in any way).
>
> You may think it is stupid to play faulty MIDI files, or MIDI files
> without lyrics... but when I have a huge library it's impossible to try
> all of them before, and then it's also annoying to have to restart the
> program (and loose the queue) any time a faulty one is chosen...
>
> Maybe an alternative fix could be to (optionally) run some "validity
> check" on MIDI files when refreshing the library?
>
> by the way, thanks for the nice app
>
> Pietro
>
>
>
> --
> RSA(R) Conference 2012
> Save $700 by Nov 18
> Register now
> http://p.sf.net/sfu/rsa-sfdev2dev1
> ___
> Pykaraoke-discuss mailing list
> Pykaraoke-discuss@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss
>
--
RSA(R) Conference 2012
Save $700 by Nov 18
Register now
http://p.sf.net/sfu/rsa-sfdev2dev1___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


[Pykaraoke-discuss] PyKaraoke Development

2011-06-19 Thread Kelvin Lawson
All,

If you are involved in developing for PyKaraoke, or you like trying out the
latest development code, please be aware that we have moved the source tree
to Github:
https://github.com/kelvinlawson/pykaraoke

Here you will also find a work-in-progress branch that is not quite ready
for release but contains some neat new features (pitch-shifting, lyrics
preview window for KJ hosts, fixes for international filenames). This is all
thanks to Paul Arnett and will hopefully make it into the main release code
soon:
https://github.com/kelvinlawson/pykaraoke/tree/gstreamer

Best regards,
Kelvin.
--
EditLive Enterprise is the world's most technically advanced content
authoring tool. Experience the power of Track Changes, Inline Image
Editing and ensure content is compliant with Accessibility Checking.
http://p.sf.net/sfu/ephox-dev2dev___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] no "Add Songs" button in Ubuntu Maverick & Natty

2011-01-12 Thread Kelvin Lawson
Interesting links, thanks. Ubuntu have introduced a change which breaks the
menu bar on several applications. I'll see what happens when the dust
settles on those changes.

Kelvin.


On 12 January 2011 08:36, Jeffrey Katz  wrote:

> I found 2 temporary workarounds:
>
> export UBUNTU_MENUPROXY=0
>
> found  at http://ubuntuforums.org/showthread.php?t=1632239
>
> and, uninstalling appmenu-gtk
>
> found at
> http://www.techytalk.co.cc/2010/12/ubuntu-maverick-10-10-no-menu-bar-in-some-apps/
>
>
> On Tue, Jan 11, 2011 at 3:37 PM, Kelvin Lawson wrote:
>
>> Hi Jeffrey,
>>
>> Do you mean the "Add new songs to database" option from the File menu?
>> Would you mind sending a screenshot please?
>>
>> Thanks,
>> Kelvin.
>>
>>
>> On 11 January 2011 23:31, Jeffrey Katz  wrote:
>>
>>>  With Ubuntu Maverick & Natty, updated to current, there is no "Add
>>> Songs" button visible.  Launching from the command line doesn't show any
>>> errors.  Building from source has the same problem as the debs in the
>>> depositories.  I've reported this at
>>> https://bugs.launchpad.net/ubuntu/+source/pykaraoke/+bug/701242.  Any
>>> idea which python/wx library is probably to blame?  Is there any chance you
>>> can provide a pykaraoke build with the dependent libraries included?  I'm
>>> using amd64 if that's relevant.
>>>
>>>
>>> --
>>> Protect Your Site and Customers from Malware Attacks
>>> Learn about various malware tactics and how to avoid them. Understand
>>> malware threats, the impact they can have on your business, and how you
>>> can protect your company and customers by using code signing.
>>> http://p.sf.net/sfu/oracle-sfdevnl
>>> ___
>>> Pykaraoke-discuss mailing list
>>> Pykaraoke-discuss@lists.sourceforge.net
>>> https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss
>>>
>>>
>>
>
--
Protect Your Site and Customers from Malware Attacks
Learn about various malware tactics and how to avoid them. Understand 
malware threats, the impact they can have on your business, and how you 
can protect your company and customers by using code signing.
http://p.sf.net/sfu/oracle-sfdevnl___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] no "Add Songs" button in Ubuntu Maverick & Natty

2011-01-11 Thread Kelvin Lawson
Hi Jeffrey,

Do you mean the "Add new songs to database" option from the File menu? Would
you mind sending a screenshot please?

Thanks,
Kelvin.


On 11 January 2011 23:31, Jeffrey Katz  wrote:

> With Ubuntu Maverick & Natty, updated to current, there is no "Add Songs"
> button visible.  Launching from the command line doesn't show any errors.
> Building from source has the same problem as the debs in the depositories.
> I've reported this at
> https://bugs.launchpad.net/ubuntu/+source/pykaraoke/+bug/701242.  Any idea
> which python/wx library is probably to blame?  Is there any chance you can
> provide a pykaraoke build with the dependent libraries included?  I'm using
> amd64 if that's relevant.
>
>
> --
> Protect Your Site and Customers from Malware Attacks
> Learn about various malware tactics and how to avoid them. Understand
> malware threats, the impact they can have on your business, and how you
> can protect your company and customers by using code signing.
> http://p.sf.net/sfu/oracle-sfdevnl
> ___
> Pykaraoke-discuss mailing list
> Pykaraoke-discuss@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss
>
>
--
Protect Your Site and Customers from Malware Attacks
Learn about various malware tactics and how to avoid them. Understand 
malware threats, the impact they can have on your business, and how you 
can protect your company and customers by using code signing.
http://p.sf.net/sfu/oracle-sfdevnl___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] Filename encoding on Linux

2010-12-16 Thread Kelvin Lawson
Hi Matt,

Thanks for taking the time to submit a patch.

> I have attached a patch which converts all directory names to str
> objects before scanning them. It makes thing work here. I have not
> tested it out on other platforms, but I believe since I remain with
> str objects, all encoding issues should be effectively bypassed, so it
> should work everywhere.

This is actually how PyKaraoke used to behave but users with unicode
directory names found that the str() conversion made the scan fail.
The previous implementation (the same as yours) compared to the new
can be seen here:
http://pykaraoke.cvs.sourceforge.net/viewvc/pykaraoke/pykaraoke/pykdb.py?r1=1.35&r2=1.36

This fixed scanning of folders with unicode names, and I confirmed it
to work on my machine, so I cannot reinstate the str() as is. Is there
an alternative patch that would work in both environments? Could it be
that the path needs to be encoded using the file system encoding for
example (fileList[i].encode(sys.getfilesystemencoding()))?

Thanks again for spending the time to dig into the sources, much appreciated.

Kelvin.

--
Lotusphere 2011
Register now for Lotusphere 2011 and learn how
to connect the dots, take your collaborative environment
to the next level, and enter the era of Social Business.
http://p.sf.net/sfu/lotusphere-d2d
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] pykaraoke windows developer

2010-05-13 Thread Kelvin Lawson
Hi Steve,

> Thanks for the quick response Kelvin.  I'm glad to hear that pykaraoke is
> still kicking.  I would definitely like to contribute back at least what we

It's still going, just at a slower pace now that the core karaoke
playback functionality is finished and stable. You may have seen that
I released v0.7.3 this week.

> the night I have more time than I know what to do with :)  I have a Vista &
> Win7 box and I've used pykaraoke enough that I think I could look over the
> Windows port.

That would be great thanks.

> My wife and I worked mainly on modifying the gui so that you could play a
> song while adding other songs.  When she was singing I couldn't look up
> another song without her video freezing while the gui was occupied.  I think
> it mainly comprised kicking off the video window in it's own thread.  Has
> something like this been worked on in the past?  Commit access btw would be

This would be useful. The player threads do make callbacks when songs
are completed, though, which is something to be aware of (i.e. may
need proper IPC between the GUI thread and the player thread). Which
reminds me: someone did report an issue with a multicore CPU on
Windows, which I suspected at the time was due to the callbacks
between the Pygame player and the GUI. What you have done there sounds
like it could be useful for that.

> great.  I'll probably throw the patch your way first anyway, but first
> things first I'll find my old code & setup pykaraoke on Vista & see how it
> goes.  I'll probably be taking baby steps contributing since my free time to
> code is pretty small.

No problem, anything you feel like contributing is appreciated.

Thanks,
Kelvin.


> As for other features, I do have some other ideas written in an email
> somewhere.  I'll try to find them & get back to you.
>
> Steve
>
> On Tue, May 4, 2010 at 4:29 PM, Kelvin Lawson  wrote:
>>
>> Hi Steve,
>> Good to hear from you.
>>
>>> I was reading the http://kibosh.org/blog/ and saw a couple posts about
>>> the project looking for a developer to look over the Windows port.  Has a
>>> developer been found yet?  I'm a developer by day and a while ago hacked on
>>> the pykaraoke source to make some improvements for my wife and I's setup at
>>> home.  Unfortunately, we never got around to rolling those improvements back
>>> upstream :( sorry.  Is there still some active development going on these
>>> days or any high level goals for the project?
>>
>> As yet we don't have a Windows developer: if you have any spare moments to
>> contribute (however small) then that would be much appreciated. I'd be happy
>> to give you commit access to the repository at Sourceforge.
>> There probably isn't a huge amount to do that is Windows-specific. I have
>> run it in a VM occasionally and the main thing I noticed was that a few of
>> the popup windows were badly sized. Also I only have XP here so it would be
>> good to have someone with Vista on board to cover that. I have heard, for
>> example, that songs cannot be cancelled part-way through playback on Vista,
>> but don't have a copy to try it out.
>> Building release installers for Windows is pretty easy these days. I
>> documented the procedure here:
>> http://kibosh.org/pykaraoke-development-windows-installer/
>> Once you have the prerequisites installed, it's just a couple of commands
>> to build the entire installer.
>> Any features you think are lacking would be gratefully received, and
>> generally these would work on any platform. If you don't have Linux over
>> there then I can easily run your changes here to make sure they work
>> cross-platform.
>> Do you have any thoughts on useful features to add to the roadmap? Some of
>> the things I'd like to add, but haven't had the time to do yet, are:
>> * More KJ features (singer tracking etc, splash screen between songs)
>> * Playback of LRC & other formats
>> * Progress bar
>> Would be interested to hear any other ideas you have.
>> Best regards,
>> Kelvin.
>>>
>>> Steve
>>>
>>>
>>>
>>>
>>>
>>> --
>>>
>>> ___
>>> Pykaraoke-discuss mailing list
>>> Pykaraoke-discuss@lists.sourceforge.net
>>> https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss
>>>
>>
>
>

--

___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] pykaraoke windows developer

2010-05-04 Thread Kelvin Lawson
Hi Steve,

Good to hear from you.

I was reading the http://kibosh.org/blog/ and saw a couple posts about the
> project looking for a developer to look over the Windows port.  Has a
> developer been found yet?  I'm a developer by day and a while ago hacked on
> the pykaraoke source to make some improvements for my wife and I's setup at
> home.  Unfortunately, we never got around to rolling those improvements back
> upstream :( sorry.  Is there still some active development going on these
> days or any high level goals for the project?
>

As yet we don't have a Windows developer: if you have any spare moments to
contribute (however small) then that would be much appreciated. I'd be happy
to give you commit access to the repository at Sourceforge.

There probably isn't a huge amount to do that is Windows-specific. I have
run it in a VM occasionally and the main thing I noticed was that a few of
the popup windows were badly sized. Also I only have XP here so it would be
good to have someone with Vista on board to cover that. I have heard, for
example, that songs cannot be cancelled part-way through playback on Vista,
but don't have a copy to try it out.

Building release installers for Windows is pretty easy these days. I
documented the procedure here:
http://kibosh.org/pykaraoke-development-windows-installer/

Once you have the prerequisites installed, it's just a couple of commands to
build the entire installer.

Any features you think are lacking would be gratefully received, and
generally these would work on any platform. If you don't have Linux over
there then I can easily run your changes here to make sure they work
cross-platform.

Do you have any thoughts on useful features to add to the roadmap? Some of
the things I'd like to add, but haven't had the time to do yet, are:

* More KJ features (singer tracking etc, splash screen between songs)
* Playback of LRC & other formats
* Progress bar

Would be interested to hear any other ideas you have.

Best regards,
Kelvin.


> Steve
>
>
>
>
>
> --
>
> ___
> Pykaraoke-discuss mailing list
> Pykaraoke-discuss@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss
>
>
--
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] installation problem on linux

2009-08-30 Thread Kelvin Lawson
Hi Francesco,

Fedora splits pygame up into a pygame and pygame-devel package. In order to
compile the fast CDG playback module you need to also install the
pygame-devel package.

Thanks,
Kelvin.


2009/8/30 Francesco Ruvolo 

> Hello,
>
> I'm trying to install on Fedora 11, I have:
>
> python 2.6
> pygame 1.8.1
> wxPython 2.8.9
> sdl 1.2.13
> mutagen 1.16
>
> when I try to run setup.py i get this error (I also added it in
> attachment):
>
> $ sudo python setup.py install
> /usr/lib/python2.6/site-packages/wx-2.8-gtk2-unicode/wx/_core.py:14450:
> UserWarning: wxPython/wxWidgets release number mismatch
>  warnings.warn("wxPython/wxWidgets release number mismatch")
> running install
> running build
> running build_py
> running build_ext
> building '_pycdgAux' extension
> gcc -pthread -fno-strict-aliasing -DNDEBUG -O2 -g -pipe -Wall
> -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector
> --param=ssp-buffer-size=4 -m32 -march=i586 -mtune=generic
> -fasynchronous-unwind-tables -D_GNU_SOURCE -fPIC -fPIC -I/usr/include/SDL
> -I/usr/include/python2.6 -c _pycdgAux.c -o
> build/temp.linux-i686-2.6/_pycdgAux.o
> _pycdgAux.c:37:27: error: pygame/pygame.h: No such file or directory
> _pycdgAux.c: In function ‘CdgPacketReader_init’:
> _pycdgAux.c:194: warning: implicit declaration of function
> ‘PySurface_AsSurface’
> _pycdgAux.c:194: warning: assignment makes pointer from integer without a
> cast
> _pycdgAux.c: In function ‘CdgPacketReader_FillTile’:
> _pycdgAux.c:349: warning: assignment makes pointer from integer without a
> cast
> error: command 'gcc' failed with exit status 1
>
> Someone can help me? Thank you
>
> Bye
> Francesco
>
>
> --
> Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
> trial. Simplify your report design, integration and deployment - and focus
> on
> what you do best, core application coding. Discover what's new with
> Crystal Reports now.  http://p.sf.net/sfu/bobj-july
> ___
> Pykaraoke-discuss mailing list
> Pykaraoke-discuss@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss
>
>
--
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus on 
what you do best, core application coding. Discover what's new with 
Crystal Reports now.  http://p.sf.net/sfu/bobj-july___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] Extended Debate

2009-08-01 Thread Kelvin Lawson
Hi John,

2009/7/31 John Schneiderman 

> There's some debate here where I work about moving forward with the
> PyKaraoke
> project. At this time nothing has been decided or set in stone. We want to
> open up communications to see if our goals fit the community. We are
> looking
> for a karaoke player that we can use in a professional capacity. To that
> end,
> we have contributed several enhancements and bug fixes to this project. The
> two major concerns we have are the usage of the LGPL for the GUI code, and
> the lack of modularity in the overall architecture. The issue with the GUI
> code being LGPL is the possibility of the company's work being used against
> it to be built into a larger system. Though this was a concern even in the
> beginning, it is increasingly becoming a sore spot as each new enhancement
> is
> given. The other issue is the architecture of the system. It appears to be
> more and more fragile with each new enhancement. The possible corrections
> for
> this are to re-write/re-design the architecture itself. Once again, let me
> say nothing has been decided. We actively wish to discuss these concerns
> and
> see if any possible solutions can be made to address them.
>


Interesting question. From the start I always intended for PyKaraoke to be
usable in commercial projects. To that end I deliberately avoided GPL to
remove any restrictions / concerns that commercial projects may have about
whether they are free to use it. Rather than go with a BSD-style license,
however, I settled on LGPL so that anyone could use it within their products
but any changes to the core code should be submitted back. Essentially I'm
happy for people to use it in any kind of product, but I'd like to encourage
people to submit back improvements for everyone else's benefit.

My concern about the GPL is that this discourages people from using
PyKaraoke as the underlying playback library in their products when I am not
interested in forcing people to release all of the rest of their source code
just because they combine it with PyKaraoke. Using LGPL restricts the burden
of sending code back to only the PyKaraoke code itself.

However I can see that there may be an argument for not applying the same
license to the GUI itself. While I think the above is a sensible approach
for the CDG, KAR etc playback modules it might not necessarily make sense
for the GUI. So I am not against applying the GPL to the GUI, but I wanted
to let you know my original thoughts from a few years back when I started
the project and to gauge general opinion as well. If anyone has any opinion
on this then please let us know.

Regards,
Kelvin.
--
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus on 
what you do best, core application coding. Discover what's new with 
Crystal Reports now.  http://p.sf.net/sfu/bobj-july___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] DJ Player Progress

2009-03-09 Thread Kelvin Lawson
> If, for example, my company takes a GPLd program and modifies it, we could use
> it in-house with impunity, but we could not distribute it to anyone else
> without including *the sources for any changes we made*.
> 
> We aren't compelled to distribute those changes, though, merely because
> we *made* them to GPLd code.

While we're on the subject, I'll chip in with the reason I chose LGPL 
for PyKaraoke. In the interest of widespread usage of the PyKaraoke 
modules, I specifically wanted to allow anyone to import and use it 
within their own applications without fear of having to open up the rest 
of their code (i.e. the non-PyKaraoke parts). I'm not sure what the 
consensus is with respect to GPL on whether importing a Python module 
would cause the rest of your code to be GPL, but for the avoidance of 
doubt I went with LGPL.

Cheers,
Kelvin.

--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] DJ Player Progress

2009-03-09 Thread Kelvin Lawson
Hi John,

> On Wednesday 4 March 2009 18:30:20 Kelvin Lawson wrote:
>> Thanks for keeping us posted. Did you implement a new frontend or is it
>> an extension of the main Wx GUI? Either way I'm happy to incorporate any
>> new features within PyKaraoke.
> 
>   I've actually done both. I've created a standalone front-end that can 
> also be 
> incorporated into the main PyKaraoke GUI as well. Allowing for maximum 
> flexibility. The player itself would be under the GPLv3+.

I haven't really followed the progress of GPLv3 - I made PyKaraoke LGPL 
because it's fairly open and I wanted to encourage people to use it both 
privately and commercially. I guess it could go mixed license to 
incorporate your standalone player, or it could be an additional 
package. If you player requires the PyKaraoke underlying libraries I'd 
prefer to maintain them in one tree rather than try to maintain separate 
forks.

Look forward to seeing what you have.

Kelvin.

--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] DJ Player Progress

2009-03-04 Thread Kelvin Lawson
Hi John,

>   Just giving an update on the DJ player progress. It's moving along 
> nicely. 
> Should have something to show in the next few days. Is this something that as 
> a community we would like to be a part of PyKaraoke, or would it be best to 
> spin it off as a separate project?

Thanks for keeping us posted. Did you implement a new frontend or is it 
an extension of the main Wx GUI? Either way I'm happy to incorporate any 
new features within PyKaraoke.

Regards,
Kelvin.

--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] cdgtools - static

2009-02-16 Thread Kelvin Lawson
Hi Tim,

You could ascertain whether it was the MP3 encode by fiddling with the 
cdgrip() function in cdgrip.py. It saves a raw WAV file, then encodes to 
MP3. If you're comfortable modifying the Python code then you could try 
omitting the MP3 encode step to see whether the raw WAV works (you can 
play WAV files in PyKaraoke but obviously they take up a good deal more 
room). If endianness is to blame, you can also pass different parameters 
to lame to swap endianness.

Cheers,
Kelvin.


>> I think it is possible to use cdparanoia for making the
>> mp3 files. Maybe the cdg and the mp3 files are out
>> of sync, but I don't expect there will be any troubles.
> 
> Yup, this actually worked pretty well.  I just used cdparanoia to rip
> the audio to .wav and now it sounds great and is in sync, as far as I
> can tell.  My wife is much happier. =)
> 
> I wonder if there's some endian issue that cdrdao had that cdparanoia
> picked up on.  Seems to be a likely explanation given the fact that the
> broken MP3 tracks would actually start the audio (static) at the correct
> time.
> 
> Anyway, I'm up and running.  Thanks again,
> tim
> 
> --
> Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
> -OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
> -Strategies to boost innovation and cut costs with open source participation
> -Receive a $600 discount off the registration fee with the source code: SFAD
> http://p.sf.net/sfu/XcvMzF8H
> ___
> Pykaraoke-discuss mailing list
> Pykaraoke-discuss@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss
> 


--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] Next Feature

2008-11-03 Thread Kelvin Lawson
Hi John,

> I was thinking the next feature I'm going to tackle is having the ability to 
> add the singers name in the play-list. Thoughts?

I get contacted regularly by people who would like to use PyKaraoke for 
professional hosting, so I think you would make a lot of friends with 
this. I'll dig out some of the comments I've received in this area for 
you to have a quick look over.

Thanks,
Kelvin.

-
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] error when trying to install in debian

2008-10-13 Thread Kelvin Lawson
No problem Nick.

Kelvin.


> Surelly, haha
> 
> Good Kelvin, good.
> 
> apt-get install python-dev
> 
> solve my problem.
> 
> Thanks for all!
> 
> 
> On Mon, Oct 13, 2008 at 8:13 AM, Kelvin Lawson <[EMAIL PROTECTED]> wrote:
>> Hi Nick,
>>
>> It looks like you are missing several important header files like Python.h
>> and SDL.h. Did you install the libraries which are required by PyKaraoke?
>>
>>http://kibosh.org/pykaraoke/installation.php
>>
>> The Debian instructions there are:
>>
>>apt-get install python-dev python-pygame libwxgtk-python libsdl-dev
>>
>> Cheers,
>> Kelvin.
> 


-
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] error when trying to install in debian

2008-10-13 Thread Kelvin Lawson
Hi Nick,

It looks like you are missing several important header files like 
Python.h and SDL.h. Did you install the libraries which are required by 
PyKaraoke?

http://kibosh.org/pykaraoke/installation.php

The Debian instructions there are:

apt-get install python-dev python-pygame libwxgtk-python libsdl-dev

Cheers,
Kelvin.


> anybody maybe help me with this error.
> 
> pykaraoke-0.6# python setup.py install
> running install
> running build
> running build_py
> creating build
> creating build/lib.linux-x86_64-2.5
> copying pycdgAux.py -> build/lib.linux-x86_64-2.5
> copying pycdg.py -> build/lib.linux-x86_64-2.5
> copying pykaraoke_mini.py -> build/lib.linux-x86_64-2.5
> copying pykaraoke.py -> build/lib.linux-x86_64-2.5
> copying pykar.py -> build/lib.linux-x86_64-2.5
> copying pykconstants.py -> build/lib.linux-x86_64-2.5
> copying pykdb.py -> build/lib.linux-x86_64-2.5
> copying pykenv.py -> build/lib.linux-x86_64-2.5
> copying pykmanager.py -> build/lib.linux-x86_64-2.5
> copying pykplayer.py -> build/lib.linux-x86_64-2.5
> copying pykversion.py -> build/lib.linux-x86_64-2.5
> copying pympg.py -> build/lib.linux-x86_64-2.5
> running build_ext
> building '_pycdgAux' extension
> creating build/temp.linux-x86_64-2.5
> gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall
> -Wstrict-prototypes -fPIC -I/usr/include/SDL -I/usr/include/python2.5
> -c _pycdgAux.c -o build/temp.linux-x86_64-2.5/_pycdgAux.o
> _pycdgAux.c:33:20: error: Python.h: Arquivo ou diretório não encontrado
> _pycdgAux.c:35:26: error: structmember.h: Arquivo ou diretório não encontrado
> _pycdgAux.c:36:17: error: SDL.h: Arquivo ou diretório não encontrado
> In file included from _pycdgAux.c:37:
> /usr/include/python2.5/pygame/pygame.h:149: error: expected
> specifier-qualifier-list before 'PyObject_HEAD'
> /usr/include/python2.5/pygame/pygame.h:181: error: expected
> specifier-qualifier-list before 'PyObject_HEAD'
> /usr/include/python2.5/pygame/pygame.h:206: error: expected
> specifier-qualifier-list before 'PyObject_HEAD'
> /usr/include/python2.5/pygame/pygame.h:232: error: expected
> specifier-qualifier-list before 'PyObject_HEAD'
> /usr/include/python2.5/pygame/pygame.h:258: error: expected
> specifier-qualifier-list before 'PyObject_HEAD'
> /usr/include/python2.5/pygame/pygame.h:298: error: expected
> specifier-qualifier-list before 'PyObject'
> /usr/include/python2.5/pygame/pygame.h:316: error: expected
> specifier-qualifier-list before 'PyObject_HEAD'
> _pycdgAux.c:96: error: expected specifier-qualifier-list before 
> 'PyObject_HEAD'
> _pycdgAux.c: In function 'CdgPacketReader_dealloc':
> _pycdgAux.c:149: error: 'CdgPacketReader' has no member named '__cdgData'
> _pycdgAux.c:150: warning: implicit declaration of function 'free'
> _pycdgAux.c:150: warning: incompatible implicit declaration of
> built-in function 'free'
> _pycdgAux.c:150: error: 'CdgPacketReader' has no member named '__cdgData'
> _pycdgAux.c:151: error: 'CdgPacketReader' has no member named '__cdgData'
> _pycdgAux.c:153: error: 'CdgPacketReader' has no member named 'ob_type'
> _pycdgAux.c:153: error: 'PyObject' undeclared (first use in this function)
> _pycdgAux.c:153: error: (Each undeclared identifier is reported only once
> _pycdgAux.c:153: error: for each function it appears in.)
> _pycdgAux.c:153: error: expected expression before ')' token
> _pycdgAux.c: At top level:
> _pycdgAux.c:158: error: expected '=', ',', ';', 'asm' or
> '__attribute__' before '*' token
> _pycdgAux.c:174: error: expected declaration specifiers or '...'
> before 'PyObject'
> _pycdgAux.c:174: error: expected declaration specifiers or '...'
> before 'PyObject'
> _pycdgAux.c: In function 'CdgPacketReader_init':
> _pycdgAux.c:180: error: 'PyObject' undeclared (first use in this function)
> _pycdgAux.c:180: error: 'mapperSurface' undeclared (first use in this 
> function)
> _pycdgAux.c:181: warning: implicit declaration of function
> 'PyArg_ParseTupleAndKeywords'
> _pycdgAux.c:181: error: 'args' undeclared (first use in this function)
> _pycdgAux.c:181: error: 'kwds' undeclared (first use in this function)
> _pycdgAux.c:190: warning: implicit declaration of function 'assert'
> _pycdgAux.c:190: error: 'CdgPacketReader' has no member named '__cdgData'
> _pycdgAux.c:191: error: 'CdgPacketReader' has no member named '__cdgData'
> _pycdgAux.c:191: warning: implicit declaration of function 'malloc'
> _pycdgAux.c:191: warning: incompatible implicit declaration of
> built-in function 'malloc'
> _pycdgAux.c:192: warning: implicit declaration of function 'memcpy'
> _pycdgAux.c:192: warning: incompatible implicit declaration of
> built-in function 'memcpy'
> _pycdgAux.c:192: error: 'CdgPacketReader' has no member named '__cdgData'
> _pycdgAux.c:193: error: 'CdgPacketReader' has no member named '__cdgDataLen'
> _pycdgAux.c:194: error: 'CdgPacketReader' has no member named 
> '__mapperSurface'
> _pycdgAux.c: At top level:
> _pycdgAux.c:204: error: expected '=', ',', ';', 'asm

Re: [Pykaraoke-discuss] Time Left

2008-09-24 Thread Kelvin Lawson
Hi John,

> Forgot to add that the format for the status message I'm considering is:
> [Current Time/Time Remaining] Artist - Title

Sounds good to me, the "Playing" text is redundant.

Thanks,
Kelvin.

-
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] kar2mpg

2008-09-22 Thread Kelvin Lawson
Handy script, thanks for contributing Zoltan.

Kelvin.


> First, congratulations to all developers for making such a nice piece of 
> software. It brought a lot of happy hours to this home ;-)
> 
> I'd like to contribute a UNIX shell script that converts .kar file to 
> .mpg. I know, it's not much, but still... Maybe someone finds it useful.
> 
> 
> Regards,
> Zoltan
> 
> 
> 
> 
> -
> This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
> Build the coolest Linux based applications with Moblin SDK & win great prizes
> Grand prize is a trip for two to an Open Source event anywhere in the world
> http://moblin-contest.org/redirect.php?banner_id=100&url=/
> 
> 
> 
> 
> ___
> Pykaraoke-discuss mailing list
> Pykaraoke-discuss@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


-
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] MP3s encoded at 22050hz play at double speed

2008-09-17 Thread Kelvin Lawson
Hi Dave,

> Hello, all.  I'm new to the list so this may have already been 
> mentioned, but if you have a mp3+G (zipped or unzipped) it plays the 
> audio at double speed but the .cdg graphics plays at the proper normal 
> speed.  Is there a solution to this other than re-encoding the mp3s to 
> 44100Hz?

There is some code in there to detect the samplerate, but you can also 
override it (on a global basis) from the Configuration window. Does it 
work if you override the samplerate? If so, it looks like the detection 
code could do with some tweaking.

Thanks,
Kelvin.

-
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] Support for zipped cdg's mp3's

2008-08-20 Thread Kelvin Lawson
Hi Holmes,

> Unzipped files and zipped files with the CDGs and MP3s are also supported. If 
> a file is corrupted it will not be added to the database. I would run the 
> scan again, and watch the output from the command line. See what errors it 
> gives you.

As John suggests above, keep your eye on the command-line. There are 
certain ZIP compression styles which are not supported by Python. Those 
files cannot be decompressed and hence won't be added to the database. 
If this is the case you'll see messages about this on the command-line.

Someone once sent me a script to rezip an entire set of files into a 
format more acceptable to Python. I could dig this out if this is your 
problem.

Kelvin.

-
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] Patch Submitted

2008-08-19 Thread Kelvin Lawson
> I've submitted the patch. I gave a detailed description of what the patch 
> does. I have tested it of course. More on the way. :D

For those of you not watching CVS John has added support for the following:

  * A kamikaze button to enter random songs in your playlist.
  * Ability to stop after each song in the playlist, rather than move 
through them all automatically.
  * Automatic parsing of filenames in your database to fill in the 
Title/Artist etc fields.

All three can be enabled from the Configuration window.

Many thanks for your efforts John. The new features are available in CVS 
now and will be in the next release.

Kelvin.

-
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] Timidity SoundFonts

2008-06-30 Thread Kelvin Lawson
Hi,

> thank you for great work you've done with pykaraoke!
> This is my problem: pykaraoke works well with default timidity's
> settings, but if i change timidity's configuration to use other
> Soundfonts files, pykaraoke don't output any sound.
> Of course i try to use new SoundFont file with timidity only, and it
> works well. 

There used to be a good HowTo which a PyKaraoke user recommended to me 
for setting up timidity (for eawpats in his case). Unfortunately the 
link seems to be down:
http://www.think-future.de/wiki/index.php?title=MIDI

I've emailed the site owner to ask whether he can provide the page text, 
I'll let you know what comes back.

Meanwhile as this is really down to Pygame which is used under the hood 
of PyKaraoke, you might get some help from the Pygame mailing list.

Cheers,
Kelvin.

-
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://sourceforge.net/services/buy/index.php
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] Patches

2008-06-30 Thread Kelvin Lawson
Hi John,

Good to hear from you. We certainly welcome patches and for prolific 
developers we normally open up CVS for commits as well. You can send 
patches to me, or via the Sourceforge project page:
http://sourceforge.net/tracker/?func=add&group_id=123242&atid=695886

What did you have in mind?

Kelvin.


> I work for a karaoke company that is interested in using this player. How 
> does 
> your project accept patches? 
> 
> John S.
> 
> -
> Check out the new SourceForge.net Marketplace.
> It's the best place to buy or sell services for
> just about anything Open Source.
> http://sourceforge.net/services/buy/index.php
> ___
> Pykaraoke-discuss mailing list
> Pykaraoke-discuss@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss
> 


-
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://sourceforge.net/services/buy/index.php
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


[Pykaraoke-discuss] PyKaraoke v0.6 Released

2008-06-26 Thread Kelvin Lawson
Hi Folks,

We are please to announce the release of PyKaraoke v0.6.

There are many new features and improvements in this version. Here are 
some of the highlights:

* Much improved GUI with many new features and additional configuration 
options.
* Launch external media players to play other formats such as DIVX, XVID etc
* Export karaoke files to MPEG format (command line only).
* Many enhancements on the GP2X platform.
* Now confirmed to work with OSX.
* Internal improvements and fixes in the CDG and KAR players.

And much more, see the full changelog here: 
http://sourceforge.net/project/shownotes.php?group_id=123242&release_id=609671

Download it at the usual place:
http://kibosh.org/pykaraoke

Thanks to David Rose for more stellar work on this release.

Kelvin.

-
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://sourceforge.net/services/buy/index.php
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] CDG C implementation

2008-06-24 Thread Kelvin Lawson
Hi John,

> How do I get PyKaraoke to use the C implementation and not the python 
> implementation. I'm running GNU/Linux.

It should build and use the C implementation if you use "python setup.py 
install" to install it. This must be run with root privs.

If you see the message "Using Python implementation of CDG interpreter" 
on a terminal when you launch it then the above didn't work. Do you 
still see this message after running setup.py?

Cheers,
Kelvin.

-
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://sourceforge.net/services/buy/index.php
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] how to display Polish chars from *.kar?

2008-02-26 Thread Kelvin Lawson
Hi Maciek,

It turns out that one of the recent releases removed support for 
international chars from the kar player - it will be fixed in the next 
release.

Regards,
Kelvin.


> New Pykaraoke user here. Hello to Everyone!
> 
> I need to play *.kar with Polish characters. No matter what
> is typed in Config -> Default charset, Pykaraoke 0.5.1 on
> Ubuntu Dapper renders Polish characters wrong. I tried
> iso-8859-2, cp-1250, UTF-8 and still those characters are
> garbled, in the same way all time, like if the charset
> definition was ignored.
> 
> Is thare anything that could be done about it? New Year's
> Eve is coming :).
> 
> A sample kar file I tried is attached if anyone wants to test.
> 
> Maciek
> 
> 
> 
> 
> -
> SF.Net email is sponsored by:
> Check out the new SourceForge.net Marketplace.
> It's the best place to buy or sell services
> for just about anything Open Source.
> http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace
> 
> 
> 
> 
> ___
> Pykaraoke-discuss mailing list
> Pykaraoke-discuss@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


-
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] So, what's everyone doing with PYK?

2008-01-21 Thread Kelvin Lawson
Hey Will,

Good to hear from you.

> PYK has always been pretty good :) The patches I submitted back (I 
> think) in 2005 (yeesh, has it really been that long already?!?!) made it 
> do pretty much everything I ever wanted it to do; the only thing it's 
> missing now from a raw functionality perspective is key changing / pitch 
> shifting, changeable at runtime with a keystroke or on the command line.

Presumably you can still use JACK to do the pitch-shifting while pycdg 
doesn't support it natively?

> I'm still very keen to build a real GUI and automation chain for the 
> rotation management side of things, though.

I've heard from quite a few people over the years who are keen to have 
something like this. Hopefully there will be someone out there listening 
who feels they can lend a hand.

Cheers,
Kelvin.

-
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] So, what's everyone doing with PYK?

2008-01-18 Thread Kelvin Lawson
Hey Jay,

> There hasn't been a lot of traffic on this list lately, which means one
> of two things:
> 
> 1) everyone's given up, or
> 2) PYK is Good Enough now.  :-)
> 
> Ok, people, which is it?

It's perfect of course :-)

> Myself, I'm just about to implement, having lined up a potential show
> at a restaurant a friend just bought.  Kelvin: did we ever look into
> the "break the playback window apart from the management window" thing?

The main driving force behind me doing it was to get the player running 
with Wx 2.8. Some distros are now packing Wx 2.8 as standard and pygame 
just didn't play well with it at all - splitting the two up looked like 
a good way to kill two birds with one stone. As I found a workaround for 
this which fixed the pygame vs Wx 2.8 problem, it wasn't quite so urgent 
to split the two up. The fix for Wx 2.8 went into the latest release a 
few weeks ago by the way.

Of course it would still be very handy to split them up, but at the 
moment I'm just too busy to do this myself. I would of course be happy 
to give hints to anyone who has the time to look into it.

Kelvin.

> Will?  How were you dealing with that?
> 
> Cheers,
> - jra


-
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] Kar to cdg

2008-01-18 Thread Kelvin Lawson
Hi Mathias,

> And thanks for a great piece of software! One question - is it possible 
> to use anything in the pykaraoke bundle to create cdg files from kar 
> files. I'm thinking of testing creating some better versions (mp3 
> backgrounds) of some kar-files I've got around. Would rule if it was 
> possible to split the lyrics into cdg files and then use the mp3 
> backgrounds I've created based on the .kar files.

At present there is nothing in the PyKaraoke bundle to convert KAR to 
CDG. If anyone would like to take up the challenge I'd be happy to 
provide some pointers on how to go about it.

Cheers,
Kelvin.


> Does anyone know of any other solution for this?
> 
> Regards,
> lunarshuttle
> 
> 
> 
> 
> 
> 
> -
> This SF.net email is sponsored by: Microsoft
> Defy all challenges. Microsoft(R) Visual Studio 2008.
> http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/
> 
> 
> 
> 
> ___
> Pykaraoke-discuss mailing list
> Pykaraoke-discuss@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


-
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] Command line options for song window

2007-11-26 Thread Kelvin Lawson
Hi,

> I'm using PyKaraoke 0.5 on Ubuntu 7.10 with nVidia Twinview enabled. I want 
> the song window to appear on the second screen. No matter what I do, the song 
> window always appears on the screen where the main PyKaraoke search window 
> resides.  I am using the following command line options: pykaraoke 
> --window-x=1300 --window-y=80 --width=1000 --height=560. I have been unable 
> to figure out why what is wrong.  Does anyone know how to resolve this?  The 
> command line options for PyKaraoke indicate this should be possible 
> (pykaraoke --help).  Thanks.

Does it work when you launch the song directly via the player? (e.g. 
pycdg song.cdg for a CDG file).

Thanks,
Kelvin.

-
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] [EMAIL PROTECTED]: mac osx tiger]

2007-11-25 Thread Kelvin Lawson
Hi Jay,

>> As usual a new version of WxPython has brought with it new 
>> incompatibilities... I'm seriously considering shifting to a different 
>> framework for the GUI.
> 
> Was it WX, or something underneath it, that made difficult putting the
> air interface and the control interface on separate display adapters?

It was the fact that both Wx and Pygame run in the same process. 
Supporting separate X displays is another good reason for using 
different processes for the GUI and the players.

Short term we could add a small glue layer between the Wx GUI and the 
players that starts the players in a separate process and communicates 
via some IPC mechanism. A while ago I knocked something up that used 
plain old sockets to do this, but didn't end up going further with it. 
Perhaps it's time to bring that back in. That would certainly please 
those wanting separate X displays and kill the Wx2.8 compatibility problem.

Longer term I'd like to do away with Wx completely though. Can anyone 
recommend a good alternative GUI framework that's readily available on 
the major platforms? Does anyone have time to think about such a 
project? It might be a good time to add some of the pro hosting features 
that some of you have been talking about.

> I may be *finally* about to do something productive with the silly
> program; I have a soft-launch gig coming up in January at a restaurant
> a friend of mine bought recently.

Well if you're offering :-)

Kelvin.

-
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] [EMAIL PROTECTED]: mac osx tiger]

2007-11-22 Thread Kelvin Lawson
Hi Ralph,

>> hi! I am having trouble running pykaraoke on my mac . i've attached the
>> output . It seems to be that the pygame module can't find my sdl header.
>> I dont know how to fix this. 
> 
> Got it to work .Installed some missing libraries like Numeric and
> wxpython.

Good news. Thanks for letting us know.

> Wxpython has to be ver 2.6. 2.8 gives me type errors

I've just committed a fix to CVS for the type error with Wx 2.8 (it 
seems we were using a variable name that was not allowed as it 
conflicted with an internal variable name now used by Wx). Although the 
GUI is working, there seems to be a problem running the players though. 
They're updating very slowly, at least on my Linux machine here. The 
players work fine on their own, but not when launched from the PyKaraoke 
GUI. My suspicion: there is something different about the main loop in 
Wx 2.8 that means it doesn't coexist nicely with Pygame within the same 
process. I'd be interested to hear if it works OK on Mac with Wx 2.8.

As usual a new version of WxPython has brought with it new 
incompatibilities... I'm seriously considering shifting to a different 
framework for the GUI.

Regards,
Kelvin.

> I still can't use the C version though.
> 
> 
> -
> This SF.net email is sponsored by: Splunk Inc.
> Still grepping through log files to find problems?  Stop.
> Now Search log events and configuration files using AJAX and a browser.
> Download your FREE copy of Splunk now >> http://get.splunk.com/
> ___
> Pykaraoke-discuss mailing list
> Pykaraoke-discuss@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss
> 


-
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] Show the lyrics on an other monitor

2007-08-20 Thread Kelvin Lawson
Hi Floris,

> I've found that pygame hasn't support for multiple displays so I guess the
> problem have to be solved with something like os.system('DISPLAY=:0.1 ').
> Unfortunately I can't figure out the point where the "database window" opens
> the "lyrics window"

The playlist GUI (pykaroake.py) calls out to MakePlayer() in pykdb.py to 
start the players. This in turn uses either pycdg.py, pykar.py or 
pympg.py depending on the songfile type. All of these eventually make 
use of InitPlayer() in pykmanager.py to initialise pygame if necessary. 
You may find InitPlayer() is a useful place to do something like this.

That said, I don't know whether it is even possible to set the X display 
in this way. I strongly suspect that it won't be possible to have the 
same process utilising two different X displays (one for WxWidgets and 
one for Pygmae), but I don't know what the rules are there with X. It 
might be necessary to spawn a new process to handle the player windows 
rather than run them as a thread within the existing process. It should 
be possible to insert a different interface between the playlist and the 
players such that two separate processes communicate using something 
like a socket. You'd need to implement two-way communication such that 
the playlist can tell the player process to play/pause etc. and when the 
song finishes the player can callback to the playlist to notify it. 
Hopefully the interface will be clean enough such that you can drop in a 
replacement glue layer to handle the interprocess communication

If you're interested in taking this up I'd be happy to provide further 
info on how it all fits together.

Kelvin.

-
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >>  http://get.splunk.com/
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] Minor PyKaraoke modifications

2007-06-19 Thread Kelvin Lawson
Hi Marcus,

Thanks for sending in your changes. Are you interested in submitting 
them for use by the project? I'll take a look.

I haven't done any Windows releases myself since the compilation stage 
was added, but have you tried using the free Visual Studio Express?

Kelvin.


> Basically, my changes
> are simple interface changes.  My mods will show the zip and cdg file
> names in the search and playlist views if they are different and then
> I've added a dropdown box to select who will be singing the next song. 
> So, whatever name is in the dropdown box when you right click -> Add
> To Playlist, will show up in the first column.  All of my changes are
> marked with MDP.  Anyway, I'd like to compile this and turn it
> into a Windows executable, but I don't have VS2003.  is there any
> chance that someone on this mailing list could compile these changes
> for me?  I'd attach the code to this email, but I'm not sure that the
> list manager will accept it, so if you want it or can help me, just
> email me and I'll send the program.
> 
> 
> 
> Thanks.
> 
> Marcus
> 
> 
> 
>
> 
> Get the free Yahoo! toolbar and rest assured with the added security of 
> spyware protection.
> http://new.toolbar.yahoo.com/toolbar/features/norton/index.php
> 
> -
> This SF.net email is sponsored by DB2 Express
> Download DB2 Express C - the FREE version of DB2 express and take
> control of your XML. No limits. Just data. Click to get it now.
> http://sourceforge.net/powerbar/db2/


-
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] pycdg segfault on amd64

2007-02-02 Thread Kelvin Lawson
Hey Martin,

> My Java version encountered the same problem, but Java's exception handling
> just complained for that iteration of the loop and moved on. It seems that
> the tile location data is particularly problematic in terms of quality of
> rip, but I've also seen tile paint commands (xor and regular) that don't
> properly index into the palette, so you might want to check for those too. I
> have occaisonally also seen CDG commands that have a sub-command that is
> invalid, but that's fairly rare.

Yep, I've seen those invalid commands as well. Maybe I'll add some kind 
of universal sanity-checker on the input data.

> As a separate note, I've been playing with the Java OpenGL bindings
> ("JOGL"), and I was wondering if any of you had considered throwing in a
> PyOpenGl capable renderer? It looks like it works well with PyGame... 

Not on the radar at the moment, but if anyone listening is interested in 
working on it...

Cheers,
Kelvin.

-
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier.
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] pycdg segfault on amd64

2007-02-01 Thread Kelvin Lawson
Hey Will,

> I suspect this is either a numeric thing or a pygame thing -- aren't 
> there some compiled bits in those libraries for speed purposes on some 
> systems? I recall having a 64-bit problem myself when I was first 
> mucking with PyKaraoke myself ;)

Yep I believe that one was a pygame vs 64-bit bug.

In this case there are no libraries involved, however. It's just our own 
C module _pycdgAux.c which is reading the CDG bytes read directly from 
the CDG file. The problem is that it's reading an x,y offset from the 
CDG file which is outside of the 300x216 screen size, i.e. the data in 
the file at this location isn't a perfect rip of the original CDG 
command. The C code was then using this x,y offset to index into an 
array sized at 300x216. This was what caused the seg fault that Daniel 
sent the debug info on. It won't necessarily cause a seg fault on all 
machines though, as I found on my PC. It would have just been stomping 
on some memory somewhere that it probably shouldn't :-)

It turns out that both of these files fail when using the pure Python 
implementation of pycdg as well, for the same reason: array index out of 
bounds. I'd better fix that one up too. The lesson here is to 
sanity-check the CDG commands as they aren't always perfectly ripped.

Kelvin.

-
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier.
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] pycdg segfault on amd64

2007-02-01 Thread Kelvin Lawson
Hi Daniel,

> I patched the code as you indicated, and the segfaults are gone.

Excellent news, the fix is now in CVS.

> This problem was indeed happening with multiple .cdg files, though I can't 
> say if it applied to them all. Because pykaraoke worked with the same files 
> on x86 without incident, however, I doubt that corrupted/rogue data is the 
> issue.
> 
> I'll send you a private e-mail re: obtaining the OGG+CDG files in
> question for testing purposes.

I tried these CDGs on my AMD64 and they worked fine. I guess it's system 
dependent whether the out of bounds array access will hit somewhere that 
will cause a seg fault.

I did notice that both those files had classic symptoms of errors in 
rips. Odd bits of graphics the wrong colour etc, which is why I'm pretty 
sure that these odd pixel values are coming from a very slightly 
corrupted rip. They both play for a minute or two before one of these 
out-of-bounds pixel offsets occur. This is pretty common though, so it's 
a good thing we've nailed it.

Thanks for an excellent bug report by the way. There have been 
mutterings of AMD64 problems since the optimised C version came out, but 
nothing with all of the detail necessary to fix it, so thanks!

Kelvin.

-
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier.
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] pycdg segfault on amd64

2007-01-31 Thread Kelvin Lawson
Hi Daniel,

I've been moving house the last couple of weeks so have just got round 
to looking into this.

I originally thought this looked like a sizeof(int) discrepancy 
somewhere. I thought perhaps one component (pygame, SDL or _pycdgAux.c) 
had been built as 32-bit, or perhaps one of the underlying libraries is 
not 64-bit safe in some places.

Anyway, on looking into it further I see that the row_index value is 378 
(thanks for all the excellent debug info by the way). This is an invalid 
index into the array, as the CDG screen width and hence cdgSurfarray[][] 
is only max 300. For some reason this line in cdgTileBlockCommon() is 
reading an attempt to set pixel offset 378:

row_index = ((packd->data[3] & 0x3f) * 6);

CDG rips occasionally contain corrupted bytes, so I could well imagine 
that this could happen on the odd CDG file but it sounds like this 
probably happens on all files (please correct me if I'm wrong there).

Whether it's corrupted data or not, we really should be range-checking 
the row and column index here anyway. Could you try adding the following 
lines in cdgTileBlockCommon() please:

   // 2 lines of current code below
   column_index = ((packd->data[2] & 0x1f) * 12);
   row_index = ((packd->data[3] & 0x3f) * 6);

   // Enter the following 4 lines
   if (column_index > (CDG_FULL_HEIGHT - 12))
 column_index = (CDG_FULL_HEIGHT - 12);
   if (row_index > (CDG_FULL_WIDTH - 6))
 row_index = (CDG_FULL_WIDTH - 6);

If it's rogue data, then hopefully this will fix the seg fault. If it's 
not rogue data and somehow we're reading the CDG data out incorrectly, 
well we'll find that out. I hope you don't mind trying this out - I do 
actually have an AMD64 machine here but unfortunately I can't reproduce 
the problem. Perhaps if you could send the offending cdg+ogg files I 
could reproduce it.

Many thanks,
Kelvin.


> I've confirmed this with pykaraoke built from current CVS code. If anyone 
> needs it, I can provide the cdg+ogg files used below.
> 
> BEGIN (slightly edited) GDB SESSION
> $ PYTHONPATH=lib/python2.4/site-packages gdb /usr/bin/python2.4
> GNU gdb 6.4.90-debian
> Copyright (C) 2006 Free Software Foundation, Inc.
> 
> (gdb) run bin/pycdg 02--Jolly_Holiday--karaoke.cdg
> Starting program: /usr/bin/python2.4 bin/pycdg 02--Jolly_Holiday--karaoke.cdg
> (no debugging symbols found)
> [Thread debugging using libthread_db enabled]
> [New Thread 47461752184672 (LWP 10233)]
> (no debugging symbols found)
> [New Thread 1082132832 (LWP 10236)]
> [New Thread 1090525536 (LWP 10237)]
> [Thread 1090525536 (zombie) exited]
> [New Thread 1090525536 (LWP 10239)]
> 
> Program received signal SIGSEGV, Segmentation fault.
> [Switching to Thread 47461752184672 (LWP 10233)]
> 0x2b2a90ba6489 in __cdgTileBlockCommon (self=0x2ae18010,
> packd=0x7fff1e4879c0, xor=1) at _pycdgAux.c:783
> 783   self->__cdgSurfarray[row_index + j][column_index + i] = 
> self->__cdgColourTable[new_col];
> (gdb) p row_index
> $2 = 378
> (gdb) p j
> $3 = 0
> (gdb) p column_index
> $4 = 36
> (gdb) p i
> $5 = 0
> (gdb) p new_col
> $6 = 0
> (gdb) p self->__cdgColourTable[new_col]
> $7 = 11149824
> (gdb) p self->__cdgSurfarray[row_index + j][column_index + i]
> Cannot access memory at address 0x2ae779fc
> (gdb) where
> #0  0x2b2a90ba6489 in __cdgTileBlockCommon (self=0x2ae18010,
> packd=0x7fff1e4879c0, xor=1) at _pycdgAux.c:783
> #1  0x2b2a90ba583f in __cdgPacketProcess (self=0x2ae18010,
> packd=0x7fff1e4879c0) at _pycdgAux.c:464
> #2  0x2b2a90ba53bd in CdgPacketReader_DoPackets (self=0x2ae18010,
> args=0x2b2a8c69e050, kwds=0x0) at _pycdgAux.c:316
> #3  0x00474517 in PyEval_EvalFrame ()
> #4  0x00472c72 in PyEval_EvalFrame ()
> #5  0x00472c72 in PyEval_EvalFrame ()
> #6  0x00472c72 in PyEval_EvalFrame ()
> #7  0x00472c72 in PyEval_EvalFrame ()
> #8  0x0047505c in PyEval_EvalCodeEx ()
> #9  0x00475182 in PyEval_EvalCode ()
> #10 0x00498da2 in PyRun_FileExFlags ()
> #11 0x00498fa0 in PyRun_SimpleFileExFlags ()
> #12 0x00410a5f in Py_Main ()
> #13 0x2b2a8cbf04ca in __libc_start_main () from /lib/libc.so.6
> #14 0x0040ff3a in _start ()
> END GDB SESSION
> 
> pykaraoke 0.5 handled this same file without a problem on an i386 system, 
> so some 64-bit snafu is likely at fault.
> 
> (Please Cc: any replies to me, as I am not subscribed to this list)
> 
> 
> --Daniel
> 
> 


-
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier.
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://

[Pykaraoke-discuss] CDG Player Seg Faults

2007-01-07 Thread Kelvin Lawson
Folks,

I recently started getting seg faults when running pykaraoke/pycdg from 
source. The version installed into /usr was still running correctly, but 
I got seg faults when attempting to run from the source directory.

I narrowed it down to the external compiled module (_pycdgAux.c), and 
after a recompile ("python setup.py install" in the pykaraoke directory) 
it's working again. I haven't done much work with Python C bindings but 
I presume this means my Python version has changed and you need to 
recompile any bindings when this happens.

-
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] Quick Question

2006-12-31 Thread Kelvin Lawson
Hi Ryan,

> I am wondering if someone can help me out.  I want to put together a 
> simple python script or windows executable that can be passed a zipped 
> cdg+mp3 as a command line argument.  Play the file (perhaps have an 
> option to select fullscreen or windowed playback on the command line).  
> I am a perl programmer and have zero experience with python but when 
> using the source distro and the info on the site I couldnt get past it 
> saying that the Numeric library couldnt be found even though I installed 
> it.  This should be a simple script using pycdg.py and playing the file 
> then exiting when it is complete. 

I can't help much on the Windows side of things, but it's odd that 
you're getting this Numeric error. Have you perhaps installed Numeric 
for a different version of Python? (e.g. installed Numeric for Python 
2.3 but are running Python 2.4?)

Another point: If you use the compiled version of the CDG player you 
don't need Numeric, but you need to have a suitable C compiler 
installed. Again, I haven't done this on a Windows machine, but I'm told 
you'll need Visual Studio - presumably there's a free version with just 
the compiler. And you'll need some development libraries, at least 
SDL-devel. This is a bit more of a pain than just using the uncompiled 
CDG player which requires Numeric.

> I am planning to write my own frontend using perl and the win32 gui 
> modules with a MySQL db holding all tracks and calling this script when 
> a song is selected.  The finished product of course will be released to 
> the community.

Great.

Let us know how you get on.

Kelvin.


-
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] Pykaraoke for OSX

2006-12-11 Thread Kelvin Lawson
Hi Rob,

I've spoken with a PyKaraoke user who has got it running on OSX.

You'll need to install Python (www.python.org), Pygame, WxPython and 
Numeric. I think the latter three are available from here:
http://pythonmac.org/packages/

He didn't get the compile/install working and we haven't investigated 
why yet, but it's possible to run it without installing by just 
unpacking PyKaraoke and typing:

python pykaraoke.py

It looks pretty nice on OSX, but the config window was a strange size. 
You can fix this by changing the CONFIG_WINDOW_SIZE parameter in 
pykaraoke.py to 240,90.

Would be interested to hear how you get on.

Kelvin.


Stief Robert wrote:

> Hi there,
> 
> i´m interested on Pykaraoke for OSX. If there´s a chance for testing  
> a Beta i would be glad to do this for you.
> I usually used Winamp and a CDG plugin but now i´ve changed to an imac.
> 
> Sorry for my bad english, i´m a native german speaker.
> 
> greets
> Rob
> -
> Take Surveys. Earn Cash. Influence the Future of IT
> Join SourceForge.net's Techsay panel and you'll get the chance to share your
> opinions on IT & business topics through brief surveys - and earn cash
> http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
> ___
> Pykaraoke-discuss mailing list
> Pykaraoke-discuss@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss
> 


-
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


[Pykaraoke-discuss] PyKaraoke goes to your head

2006-12-11 Thread Kelvin Lawson
How's this for a novel usage of PyKaraoke?

http://www.robotcowboy.com/?p=67%22
http://www.youtube.com/watch?v=xnUqrcUB8oc

Kelvin.

-
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] mythtv

2006-11-26 Thread Kelvin Lawson
Hi Ralph,

> Hi! do you have any plans in including a Pykaraoke module in MythTV?

There are no current plans but if you're interested in having a go at 
it, I'd be happy to give you guidance.

Alternatively, one of the PyKaraoke users has apparently integrated it 
into MythTV by treating it as a MythGame emulator. You might get some 
mileage out of this approach.

Kelvin.

-
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] pykaraoke hardware requirements

2006-11-08 Thread Kelvin Lawson
Hi Martin,

> what are the minimum hardware requirements for pykaraoke? i
> have a pentium one box around here, i don't know exactly the
> mhz and amount of ram, and i supppose it has an old pci
> video card.

I'm not sure what the minimum requirements are I'm afraid. The latest 
version received some big performance improvements, but I would think 
that PyKaraoke would still struggle on a Pentium One. Suck it and see?

> i would install gentoo on it. or do you know of a better
> distro (because gentoo has only the newest packages, and
> perhaps pykaraoke could probably work better on a slow
> machine with the lowest versions of its dependencies...).

The latest release of PyKaraoke (i.e. the one with the optimisations) 
requires a relatively recent version of WxPython (2.5) so an old distro 
probably wouldn't fit the bill.

All the best,
Kelvin.

-
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] Newbie

2006-09-06 Thread Kelvin Lawson
Hi Paul,

As you've probably guessed I was away last month so am just catching up 
on the PyKaraoke mods tonight.

 > Having no answer I then renamed the individual files to the Track 
name e.g. mv 80s Hits-Vol000.mpg Don’t\ You\ Want\ Me
 >
 > Now when I search for Wham I see two entries in the list for each 
track. I’m guessing the search matches on both the filename and the 
track name from the titles. So question the second is:-
 >2. Can you remove duplicates from the search results?

I haven't been able to reproduce this here. I created a titles.txt file 
with the same keywords for title and artist as are contained in the 
filename, but it only shows up once. That is certainly the intended 
behaviour and I'm not sure yet why this happens for you.

 >3. and subsequently can you display only the filename and artist in
 >   the result list?

I was thinking about making it possible to reorder the columns or only 
show certain ones, but while looking I realised that the column sizing 
wasn't particularly friendly anyway. What I've done instead is to make 
the column sizing more sensible so that the filename, title and artist 
columns always show up without any horizontal scrolling necessary. Long 
filenames get truncated to make room for the title and artist, but you 
can resize the columns as you wish.

It also doesn't auto-resize every time you change the window size now, 
so if you resize your columns they'll stay that way until you perform a 
new search. The sizing is rejigged every time you do a new search 
because it's based on the length of the strings in the results, so if 
you have only short strings in the artists column, for instance, then 
that column will be suitably small.

One side effect of these changes is that users who don't use a 
titles.txt will still see the Title and Artist column in their search 
results, although they will be small. I figure that we might want to 
start filling this in with info from ID3 tags in future, though, so it's 
probably no bad thing.

The change is committed to CVS, so it would be good if you could grab it 
and have a play around with it. It may be that the new results layout 
fits your needs without adding configuration knobs for hiding or moving 
columns.

As for the duplicate results, could you let me know if you're still 
getting this problem. I can't reproduce it here so I thought I'd check 
whether you've made any progress on that since you last wrote.

Cheers,
Kelvin.

-
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] Questions regarding MID playback features

2006-08-16 Thread Kelvin Lawson
Hi Carlos,

> I checked it today, and now I got it. You are using PyGame's engine to 
> pay MIDI, and that makes it hard to support something like whats done on 
> the Windows MIDI API, which is pretty flexible.

That's right, we don't have much control over MIDI playback. That said, 
we did have to write a fair bit of code for parsing MIDI files in order 
to rip the lyrics and timing info out, so we may be able to leverage 
some of that.

> I think that the best way to solve the problem is to implement a 
> entirely new MIDI playback system. It's not that hard as it may seem, 
> because there's a lot of functionality that can be reused, but it surely 
> involves a lot of time, which is a luxury that I don't have right now 
> (or in the foreseeable future).

I'm in a similar position at the moment but if anyone is interested in 
having a stab at it, I'd be happy to incorporate it in PyKaraoke, 
provide support etc.

> Anyway, thanks for your time and attention. I'll try to make some time 
> to play with PyKaraoke and I'll let you know of any progress that I do.

Great. By the way, I forgot to give you the URL for Will's 
pitch-shifting FAQ:

http://willfe.com/index.php/Pitch-shifting_With_PyKaraoke_and_JACK_HOWTO

All the best,
Kelvin.

-
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] Questions regarding MID playback features

2006-08-15 Thread Kelvin Lawson
Hi Carlos,

Apologies for the delay, I've been on holiday.

> I am interested in knowing the state of MID/KAR support in PyKaraoke. 
> MID files make it easy to support pitch & tempo adjustments; also, I 
> would like to have the ability to mute a few instruments to play along 
> with my guitar. Depending on the quality of the track, it's a real 
> pleasure to play with a bass & drums accompaniment. Any pointers in this 
> direction - like old posts or any documentation - will be highly 
> appreciated.

MID/KAR is currently supported by PyKaraoke. Will Ferrell wrote a FAQ on 
using PyKaraoke together with JACK to support pitch-shifting - this was 
based on CD+G but it may be possible to use the same framework for MIDI, 
I'm not sure.

Tempo adjustment and muting of instruments, however, is not currently 
supported and I don't think that we have enough control over the 
timidity playback engine to do this with the current design.

Cheers,
Kelvin.

-
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] PyKaraoke v0.5 Released

2006-07-17 Thread Kelvin Lawson
Hi Drew,

Any chance you could temporarily remove the compat libraries to see if 
that's what's causing it?

If it is, then it appears that we can force the Wx version used by 
adding the top two lines below to pykaraoke.py:

import wxversion
wxversion.select('2.6')
import os, string, wx, sys

They may need to be added to pykdb.py as well.

Let me know how you get on,
Kelvin.


Drew wrote:
> On Mon, 2006-07-17 at 09:50 -0700, David Rose wrote:
>> Oh, my mistake.  It appears that Fedora *does* provide a separate 
>> pygame-devel distribution.  You'll need to install that one, sorry about 
>> that.
>>
>> David
>>
> Hi David,
> 
> I installed the pygame-devel package and tried again.
> 
> Everything seemed to go fine this time. It did the compilation step and
> exited without any error.
> 
> However, I still can't make it run. I get this:
> 
> $ pykaraoke
> Traceback (most recent call last):
>   File "/usr/bin/pykaraoke", line 3, in ?
> pykaraoke.main()
>   File "/usr/lib/python2.4/site-packages/pykaraoke.py", line 1530, in
> main
> Mgr = PyKaraokeManager()
>   File "/usr/lib/python2.4/site-packages/pykaraoke.py", line 1384, in
> __init__
> self.Frame = PyKaraokeWindow(None, -1, "PyKaraoke " +
> pykversion.PYKARAOKE_VERSION_STRING, self)
>   File "/usr/lib/python2.4/site-packages/pykaraoke.py", line 1271, in
> __init__
> self.TreePanel = FileTree(self, -1, KaraokeMgr, 0, 0)
>   File "/usr/lib/python2.4/site-packages/pykaraoke.py", line 491, in
> __init__
> self.FileTree.Bind(wx.EVT_TREE_BEGIN_DRAG, self.OnBeginDrag)
> AttributeError: wxTreeCtrl instance has no attribute 'Bind'
> 
> 
> I get this when I run yum list *wx*
> 
> Installed Packages
> compat-wxGTK.i3862.4.2-17.fc4  installed
> compat-wxGTK-common.i386 2.4.2-17.fc4  installed
> compat-wxGTK2.i386   2.4.2-17.fc4  installed
> compat-wxGTK2-gl.i3862.4.2-17.fc4  installed
> compat-wxPythonGTK2.i386 2.4.2.4-10.fc4installed
> wxGTK.i386   2.6.3-2.6.3.2.2.fc4   installed
> wxGTK-devel.i386 2.6.3-2.6.3.2.2.fc4   installed
> wxGTK-gl.i3862.6.3-2.6.3.2.2.fc4   installed
> wxPython.i3862.6.3.2-1.fc4 installed
> wxPython-devel.i386  2.6.3.2-1.fc4 installed
> 
> Not sure what all that compat stuff means, any ideas?
> 
> 
> Drew
> 
> 
> 
> 
> -
> Using Tomcat but need to do more? Need to support web services, security?
> Get stuff done quickly with pre-integrated technology to make your job easier
> Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
> http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
> ___
> Pykaraoke-discuss mailing list
> Pykaraoke-discuss@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss
> 


-
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys -- and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


[Pykaraoke-discuss] PyKaraoke v0.5 Released

2006-07-13 Thread Kelvin Lawson
Hi Folks,

Thanks to the excellent efforts of David Rose, we've just released 
PyKaraoke v0.5. Download it at the usual place:

http://kibosh.org/pykaraoke

Changes in this release are:

* Added support for GP2X
* CDG: Much improved performance by porting down to C
* CDG: Smoother scrolling and fixed horizontal scrolling
* MIDI: Fixed mid-song tempo changes
* MIDI: Smoother font-scaling and word-wrap
* pykaraoke_mini: New simple GUI for simpler environments (suitable for 
smaller screens and simple joystick control, or for use on a TV with a 
remote-control)
* Many other internal changes

As testament to the portability of PyKaraoke, it now runs on Windwos, 
Linux, FreeBSD and GP2X. Please let us know if you are interested in 
bringing PyKaraoke to other platforms.

Since the last release PyKaraoke has been added to the Debian, Arch 
Linux, Ubuntu "Edgy" and FreeBSD repositories. If you are interested in 
providing packages for other distros then let us know.

Kelvin.


-
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


[Pykaraoke-discuss] PyKaraoke v0.5 Imminent

2006-07-10 Thread Kelvin Lawson
Folks,

Thanks to a whole host of excellent new features and fixes from David 
Rose I'll be looking to put out a v0.5 shortly. If anyone has time to 
try out what's in CVS before we sign on the dotted line that would be good.

Some of changes in this release are:

* Added support for GP2X
* CDG: Much improved performance by porting down to C
* CDG: Smoother scrolling and fixed horizontal scrolling
* MIDI: Fixed mid-song tempo changes
* MIDI: Smoother font-scaling and word-wrap
* pykaraoke_mini: New simple GUI for simpler environments (suitable for 
smaller screens and simple joystick control, or for use on a TV with a 
remote-control)
* Many other internal changes

I'll give it a few days and if we're happy then the current CVS code 
will become v0.5.

Enjoy,
Kelvin.


-
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] RW vs RW_RAW (was New ripper)

2006-07-02 Thread Kelvin Lawson
>> You notice it says "cooked R-W" NOT "cooked P-W"
>>
>> Does this mean it's excluding the p and q channels? that would mean it
>> is returning 6 out of 8 subcode bits which would account for the subcode
>> only being 72 bytes and not 96 (3/4 of the size). How it would arrange
>> these 6 bit I don't know.
> 
> I entirely think it could mean that, yes, and it would probably
> just bit-pack them.  Recording some identifiable data, as you have, and
> checking to see what comes back on a bit-by-bit basis would probably
> prove it.

Judging from the RW_RAW vs RW rip I made, it doesn't look like it's 
packing the bits together in that way. After looking at a few CDG 
blocks, it became pretty easy to recognise and pick out the 24-byte CDG 
packets, and in the RW version it looked very much like 3 CDG packets 
(with the first 72 bytes exactly the same in both RW and RW_RAW mode).

So we have one drive that doesn't include any CDG bytes (the NEC), one 
which gives 96 bytes but modified audio (Liteon) and one which only 
gives 72 bytes and does some byte-swapping (CyberDrv). It sounds like 
we're going to have trouble getting RW mode working reliably on a range 
of drives, unless we've just been unlucky in our selection of drives. 
The Liteon seems to be the most promising so far, but I don't see how we 
can progress with the other two. Perhaps we could find a drive which is 
known to work in RW mode and continue with that, but meanwhile I'm 
inclined to agree with Drew that RW_RAW mode is what we should be 
concentrating on, particularly if it's the case that all CDG-capable 
drives can do RW_RAW (don't know whether this is true). It would be nice 
to get some error-correction in there though.

Kelvin.

Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] RW vs RW_RAW (was New ripper)

2006-06-29 Thread Kelvin Lawson
> without any complaints. Looking at the hex, the CDG data appears to be 
> there but is shorter, possibly with the parity bytes removed. I'll 
> experiment further tomorrow but by the look of things, this drive does 
> support RW mode, but we need to do a little something to the data to 
> bump it up to 96 bytes per sector.

I've just compared the RW vs RW_RAW output from my drive, and it appears 
that the RW version has 72 byte CDG sections vs 96 bytes for RW_RAW. I 
initially thought that must be the 96 bytes of CDG data without the 24 
parity bytes, but it turns out that strangely the drive is returning 
only the first 3 24-byte CDG packets (including the parity bytes), and 
missing the fourth. So it's only giving me 3 out of every 4 CDG packets 
in RW mode. It also happens to swap the bytes in every 16 bit word.

So it looks like this drive is giving me dud data in RW mode. Maybe it 
expects to send 72 bytes due to dropping the parity bytes, but just 
forgets to drop the parity bytes. Given your experience with your NEC 
drive purporting to send RW data but sending nothing of the sort, I'm 
thinking that this is an issue with my drive. I'll be interested to hear 
what you're getting out of your other drive. Hopefully it will either be 
the full 96 bytes, or 72 bytes but with the parity bytes removed.

Cheers,
Kelvin.


Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] RW vs RW_RAW (was New ripper)

2006-06-29 Thread Kelvin Lawson
> I've made two very interesting discoveries

Great. I've also just tried RW mode on my drive (CyberDrv CW880D) which 
for some reason I assumed didn't support RW mode. cdrdao ripped it 
without any complaints. Looking at the hex, the CDG data appears to be 
there but is shorter, possibly with the parity bytes removed. I'll 
experiment further tomorrow but by the look of things, this drive does 
support RW mode, but we need to do a little something to the data to 
bump it up to 96 bytes per sector.

Kelvin.

Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] RW vs RW_RAW (was New ripper)

2006-06-29 Thread Kelvin Lawson
> The end of the RW file is full of zeros. As far as I can tell the last
> non zero data is at 641378399 (0x263AA85Fh).
> 
> Both files are 642511872 bytes. 

The abundance of zeroes towards the end of the RW file indicates there 
might be some data in the RW_RAW file which is missing in the RW file.

The RW_RAW file contains 262464 blocks (of 2448 bytes each). The RW file 
is 641378400 bytes up to the zero section. Assuming the data in the RW 
file is still 262464 blocks, but with some padding at the end we get 
between 2443 and 2444 bytes per block. Could it be that the CDG data is 
in there somewhere, but the parity bytes have been removed or shortened? 
  There are 6 parity bytes per 96 byte block, which makes 2442 bytes per 
audio+CDG block if the parity bytes were removed. 2443-4 is not far off 
that, so even though there are a bunch of zeroes at the end there is 
still enough space up to the zeroes to hold the payload of the CDG data 
(without some of the parity bytes).

Not sure if it's significant but thought I'd mention it as an observation.

A useful thing to do with the two rips might be to knock up a little 
program to compare each of the audio sectors at 2352 and 2448 in turn, 
until we find the first one that is different. It would be interesting 
if this was at some significant boundary (say 32 blocks), and if it was 
followed by some CDG-looking bytes in the RW file.

Cheers,
Kelvin.

Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] RW vs RW_RAW (was New ripper)

2006-06-29 Thread Kelvin Lawson
> This was the first thing I tried but with the toc file generated when I
> ripped the bin file originally. It's got RW_RAW where you've got RW.
> 
> cdrdao told be the drive doesn't recognise the cue sheet variant.
> 
> Then I tried chaning all the RW_RAW to RW and the burn failed.

How about using the RW image you ripped earlier, and searching for some 
of the CDG bytes you can see in the RW_RAW version? If a number of 96 
byte CDG blocks are grouped together somewhere, we might be able to find 
the location this way.

Kelvin.


Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] RW vs RW_RAW (was New ripper)

2006-06-29 Thread Kelvin Lawson
> I've had an idea, I'll write a program to inject some recognisable
> subcode into a RW_RAW image. Then I'll burn the image with the injected
> subcode, read it back with cdrdao in RW mode and look for the sub code
> in the image.

Sounds like a very good plan.

Kelvin.

Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] New ripper

2006-06-28 Thread Kelvin Lawson
> Well, I haven't actually gotten a drive yet, but shortly.
> 
> Unless you meant for me to do it on the Toshiba internal...

When you get a new drive - it would be good to get some examples from 
another device. Out of interest have you tried cdrdao on the Toshiba's 
drive? Probably won't do RW if it doesn't work with CDRWIN but may be 
worth a shot if you have the time.

Kelvin.

Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] New ripper

2006-06-26 Thread Kelvin Lawson
> Could some testing software be whipped up?  I wouldn't object to
> spending the money on some specific CD+G disc (so that we all have the
> same baseline) if there was something I could run against that disc to
> diagnose what the drive was shipping over...

Cheers Jay. I don't think we'll need to all rip the same disc now, 
judging by what Drew sent out tonight. If you have time, it would be 
good if you could pick any disc and do a rip in both RW and RW_RAW mode, 
and send along the first 100KB or so of each rip.

Kelvin.

Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] New ripper

2006-06-25 Thread Kelvin Lawson
> Yes, absolutely. I would like to know if anyone else has successfully
> compiled and test it.

Great, I can feel a v0.4 coming on. We're in the middle of buying a 
house at the moment so time is limited, but I'll have a go at building 
it here and fitting it into a sensible release package.

> When I had extracted the .bin image I ran it through dcdgrip to split it
> but the results were not as expected. The CDG info was garbage and the
> audio was very badly distorted (like samples were missing and maybe cdg
> data was still present)

Interesting. I certainly didn't expect the audio to be affected by using 
RW mode. I'm inclined to go with your reason 3 as well - that the data 
is not arriving in the expected order. Could the CDG data be smaller 
because the parity bytes have been removed?

 From reading about other people who have tackled the 
software-deinterleave process (e.g. the Audiograbber guy) my 
understanding was that this was a pain-in-the-ass that you can avoid by 
using RW drives. I'd be surprised if there was anything particularly 
complicated to do so we must be missing something simple. You said you 
looked at the bin file - did you compare it with the RW_RAW output from 
the same disk? If you have an example of the first few KB output using 
both modes I'd be interested to see it.

Cheers,
Kelvin.

Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] subcode and deinterleaving question

2006-06-25 Thread Kelvin Lawson
> The point I was making was that the interleaving of the CDG was separate
> from the interleaving that goes on at a lower level as part of the error
> correction mechanism of all CDs. I'm not convinced either way but in
> either case we already know the offsets and we know that the
> de-interleaving of RW_RAW data works in cdgrip. What we don't know is
> what RW data looks like. 

Yes it would be nice to nail this one on the head. It sounds like Jay is 
about to buy a new drive so hopefully he'll get another RW-capable one 
that we can test against.

> Yes. I'm going to have to try to read up on the format of the parity
> bytes in the cdg packet and how they are generated from the rest of the
> cdg data (I assume pykaraoke just ignores these bytes Although I haven't
> checked :) ).  If they are a checksum type arrangement the drives which
> deal with de-interleaving may look at them and re-read the disk if the
> check fails. 

As you suspect pycdg doesn't do anything with the parity bytes, so if 
you could deal with this during the rip that would be good. That said, 
it's worth merging any work you do into pycdg as well so that it can 
deal with errors in .cdgs from other rippers. I like your idea about 
making educated guesses on the content by the way.

Kelvin.

Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] subcode and deinterleaving question

2006-06-21 Thread Kelvin Lawson

>>http://club.cdfreaks.com/showpost.php?p=719361&postcount=13
> 
> Very interesting link. That's where you got your mysterious offsets form
> then I suppose.

Sure is.

> What I found was that in bin file (which was extracted with RW_RAW and
> so would need the karaoke info deinterleaving) has the q-channel subcode
> bits (bit 6) in the right place and in the right order already (ie they
> are do not need deinterleaving)

Could it be that the q data is deinterleaved by the drive or cdrdao, 
while the rw data isn't?

> The R-W channels ARE interleaved. Judging by the offsets, across two
> sectors.
> 
> I do not know if the interleaving of the CDG data matches up the bytes
> in any way with scrambling of the audio sectors.
> 
> I think it is likely that the interleaving in the R-W channels is part
> of a completely separate error correction system added by the inventors
> of CDG.

I'm not so sure about this because some Windows CDG rippers boast of 
their software deinterleaving support. They say that some drives can 
return the CDG data ready-deinterleaved, while others need an extra 
software deinterleave. Check out the following message from the 
Audiograbber author (make sure you also scroll down to look at his reply 
about the deinterleave process):

http://www.karaokeplayground.co.uk/ubbcgi/ultimatebb.cgi?ubb=print_topic;f=9;t=001020

> Have you noticed that the 24 byte DG packet contains 6 "parity"
> bytes it would be nice if these could be used to correct broken cdg
> files.

Definitely worth a try. According to the Audiograbber author's message 
above he gets more errors when using software deinterleave as the 
deinterleave-capable drives seem to be error-correcting. I guess we're 
missing that stage in the software-deinterleave.

Apologies for the tardy response by the way, I tend to work on this in 
bursts.

Kelvin.

All the advantages of Linux Managed Hosting--Without the Cost and Risk!
Fully trained technicians. The highest number of Red Hat certifications in
the hosting industry. Fanatical Support. Click to learn more
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=107521&bid=248729&dat=121642
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] New ripper

2006-06-21 Thread Kelvin Lawson
Hello Folks,

Thanks a lot for posting your code Drew, glad to hear you got it 
working. If you don't want the hassle of packaging it up yourself in a 
release it sounds like a good addition to the cdgtools suite. I tend to 
use Python for home projects simply because I find it quicker to get 
something functional, but I see no reason why C code shouldn't go into 
cdgtools. Let me know if you're interested (cdgtools is LGPL by the way).

> It decodes the q channel and checks to see if the track number has
> changed.
> 
> If it has the program then does a CRC check (there is a CRC value built
> into the q channel) and if the CRC is bad the change of track is
> ignored. Initially I didn't include the CRC checking but I found that
> the q data was often corrupted in one or two sectors in the track so the
> CRC eliminates these erroneous track boundaries. 

This is good stuff.

> dcdgrip doesn't do this yet but... as such. If I'm understanding you
> correctly you want to read one track and then split and encode it.
> 
> I have already thought of adding an option to select which tracks you
> want to rip (from the complete bin file) but it shouldn't be too hard to
> make it encode from a bin file containing just one track (will cdrdao do
> this?)

I just had a look through the cdrdao man page and to my surprise there 
doesn't seem to be an option to rip single tracks. Anyone know of any 
other suitable rippers?

>>Yeah, drives are very random and finicky about this part of things.
>>Figuring out whether you've been handed raw or cooked subchannel data
>>is a pain in the [EMAIL PROTECTED] :) 
> 
> I'm not totally convinced that it's just a drive problem. Has anyone on
> the list every got RW data to work?

My drive returns the data interleaved, so I've only ever tested rw_raw 
mode (using the software-deinterleave) hence the note of caution in the 
instructions for rw mode. My thinking was that the data returned in rw 
mode would need nothing doing to it at all, it could be written straight 
out to the CDG file as it came from the CD drive. Have you found this 
not to be the case? Could it be that the drives concerned don't support 
rw mode?

Cheers,
Kelvin.

All the advantages of Linux Managed Hosting--Without the Cost and Risk!
Fully trained technicians. The highest number of Red Hat certifications in
the hosting industry. Fanatical Support. Click to learn more
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=107521&bid=248729&dat=121642
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] pykaraoke can't play mpg's [sorry for incomplete mail before]

2006-04-24 Thread Kelvin Lawson

Hi Cyrill,


It works now...


Glad to hear it!

Does this change the resolution for playing? 


Sorry, I'm not sure what you mean?

Quite cool... But it would also have worked just with mplayer or so :) But its 
easy to be able to start the movies from the same tool.


This is true. The MPEG support is really just a bonus feature - in 
future I've been planning to add support for external players to the 
GUI. That way you could add support to the database/GUI for a large 
range of movie formats and spawn off an mplayer process to handle them.


All the best,
Kelvin.


---
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] pykaraoke can't play mpg's [sorry for incomplete mail before]

2006-04-24 Thread Kelvin Lawson

Hi Cyrill,


 Available versions:  1.5.3 1.5.5 1.5.6 1.6 1.6.2 ~1.7.1
 Installed:   1.6.2


Is it possible to upgrade to v1.7.1 through this package manager? I see 
it's there but appears to be masked. If not then I'd advise getting the 
latest version from pygame.org. I'm pretty sure MPEG was fixed by v1.7.1.


Thanks,
Kelvin.


---
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] pykaraoke can't play mpg's [sorry for incomplete mail before]

2006-04-23 Thread Kelvin Lawson

Hi Cyrill,

Could you check which version of pygame you have installed? I believe 
that MPG support was broken in some of the recent versions of pygame.


Thanks,
Kelvin.


Cyrill Helg wrote:

Hi again

I try to play some mpgs with pykaraoke and I get the following error:
"Error starting player"

Thats the output on the console:

/usr/lib/python2.4/site-packages/pympg.py:190: RuntimeWarning: use movieext: 
No module named movieext

  self.Movie = pygame.movie.Movie(self.mpgFileName)


Thanks for any help!

Cyrill Helg


---
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss





---
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] [HOWTO] Implementing pitch-shifting and crossfading (for filler music/other sources) for PyKaraoke on Linux with JACK

2006-04-10 Thread Kelvin Lawson
I'd need to rewrite it in C but it should translate fairly easily, 
especially given what we now know about CD+G.


Which, presumably, is more than you did before the first cut.  :-)


Yeah, it was easy enough to knock something up that worked on my small 
collection of tracks, but since then I've had a few people (you 
included) send me CD+Gs that interpreted the spec differently. It's been 
all quiet for some time now, so it must be perfect .



Hmmm... Is there a standardized way to get raw tracks off a Redbook CD
in Linux?  Doesn't XMMS do some of this?


Pass. When I wrote cdgtools, the only useful tool I could find for 
reading subchannel data was cdrdao. We can presumably package up ATAPI 
commands and pass them to the relevant Linux driver, but cdrdao might 
take away the pain of handling a range of drives with different 
supported commands etc.


rip just the CD+G data without any MP3 encoding. You can then play this 
back as usual with pycdg.py while the CD track plays. Should be 
relatively quick to implement but you pay the price of the time spent 
doing the rip before playback.


Could you sync it, though?


Well there's the new "no audio" option in pycdg. This uses the system 
clock to play the CD+G in real time. It would need to know if you had 
paused or rewound etc, but it could probably do the job. You can also 
poll the pygame CD playback to find out the current playtime but it's 
only one second accuracy.


Cheers,
Kelvin.


---
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=110944&bid=241720&dat=121642
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] subcode and deinterleaving question

2006-04-10 Thread Kelvin Lawson

Hi Drew,


I've been reading all the info I can find but I must admit I'm getting a
little confused partly because the terms "frame" and "sector" do not
seem to be used consistently. For instance the ECMA-130 standard seems
to refer to 588 bits burnt on to the disk as a frame.


Thanks for the headsup, I hadn't seen that ECMA 130 before. I thought 
the gory details were to be found in the Red Book which costs money, so 
it's great to find this info available for download.


I've just had a scan through it, and it distinguishes between sections, 
sectors and frames. We've used sector and frame to describe the same 
thing in the cdgtools code - as the 2352 bytes of audio + (2 * 392) 
bytes error correction/detection + 98 bytes subchannel data. Looks like 
we should replace "frame" by "sector" throughout the code.


Some of the above is filtered out to get the data returned by cdrdao. We 
get the 2352 bytes of audio data, plus 96 bytes of subchannel data. (The 
first two bytes of subchannel data appear to be sync bytes, hence 
getting 96 instead of 98). The subchannel data is contained in the 
"control byte" discussed in the document.



I know a certain amount of interleaving goes on in the audio data prior
to it being written onto the disk but I was under the impression that
the same could not be said about subcode?


It looks that way from the document. The CIRC coding is done before the 
control bytes are added, but perhaps the control bytes are then added in 
the relevant place, i.e. they are not added in order because they are 
placed according to the position of the CIRC-encoded data? I haven't 
read deeply enough yet to figure that out.


As you can probably tell from the above, I'm pretty much in the dark 
about the interleaving process. When writing cdgtools I noticed that my 
drive was returning data that looked almost correct but with the bytes 
spread around. I couldn't find any information on the interleaving 
process, and believed it to be in the Red Book, but came across the 
following:


http://club.cdfreaks.com/showpost.php?p=719361&postcount=13

This guy was in the same position as me, but had the patience to sit 
down and reverse engineer which bytes went where.



Is it just the r to w channels which are interleaved or is it the whole
subcode byte? (including the p and q channels).


I'm not sure because I mask out only the P and Q subchannels. Are you 
asking because the CIRC section discusses encoding of P and Q bytes? The 
way I read that was that these are parity bytes, unrelated to the p-w 
subchannels (confusing terminology).


My (probably flawed) thinking is that the control bytes containing 
subchannel data are not put through the CIRC process, but are matched up 
with the new position of the relevant frame after CIRC encoding, and so 
are effectively interleaved. Bear in mind I don't even know if the 
deinterleaving code in cdgtools is actually reversing the CIRC 
cross-interleaving, or if it's some other magic altogether. It would be 
great if you had the time and inclination to check this out :-)


Hope that helps,
Kelvin.


---
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=110944&bid=241720&dat=121642
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] [HOWTO] Implementing pitch-shifting and crossfading (for filler music/other sources) for PyKaraoke on Linux with JACK

2006-04-10 Thread Kelvin Lawson

In fact the only missing piece apart from digital mixing is a lack of
straight-from-CD CD+G player, which is something I'm interested in
doing anyway, and I think Python can do it. Any hints or thoughts,
Kelvin?


I've given it some consideration in the past but not in great detail. 
Pygame can play audio tracks on a CD but (unsurprisingly) there is no 
facility to read the subchannel data.


Initial thoughts on the simplest thing to implement would be to combine 
a cdrdao/cdgrip pass with pygame's CD playback. It's just a hack but it 
buys you something. After selecting a track, you spawn off a process to 
rip just the CD+G data without any MP3 encoding. You can then play this 
back as usual with pycdg.py while the CD track plays. Should be 
relatively quick to implement but you pay the price of the time spent 
doing the rip before playback.


Doing it *properly*.. that's a different thing. I don't know, for 
instance, what the usual method would be for extracting the subchannel 
data on Linux. Whether you'd need to use a library like cdrdao, or 
whether it's just as easy to get what you need straight from the OS. I'm 
thinking something like Python bindings for cdrdao to read the 
subchannel data - and if you're doing this in real time then presumably 
you'd want to read the audio data at the same time, rather than have two 
proceses seeking around the disk. I'd need a deeper look into the likes 
of cdrdao to comment any further than that.



The link is Coral Cache-ified by the way because I'm expecting heavy
traffic in a few days; a not-so-friendly company is threatening to sue
me because I posted my experience with them on my site, and
negotiations broke down recently. I went public with the details, and
Tom Martino (the "Troubleshooter") is going to have me on his radio
program Monday to hash this stuff out. Heh. This should get
interesting fast :)


Itching to hear how this pans out.

Kelvin.


---
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=110944&bid=241720&dat=121642
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] [HOWTO] Implementing pitch-shifting and crossfading (for filler music/other sources) for PyKaraoke on Linux with JACK

2006-04-10 Thread Kelvin Lawson

Here's a curious idea: I wonder how hard it would be to recast Kelvin's
rendering code as an Mplayer codec?  Did we already talk about this?


I've fancied doing this for some time but haven't got round to it yet. 
Making an mplayer/ffmpeg codec would give you CD+G for free with a whole 
bunch of video players, as well as those commercial DVD players and 
other devices that use ffmpeg.


I'd need to rewrite it in C but it should translate fairly easily, 
especially given what we now know about CD+G.


Kelvin.


---
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=110944&bid=241720&dat=121642
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] [HOWTO] Implementing pitch-shifting and crossfading (for filler music/other sources) for PyKaraoke on Linux with JACK

2006-04-10 Thread Kelvin Lawson

PyKaraoke doesn't currently support pitch-shifting natively during
song playback, and this is about the only missing feature that
prevents PyKaraoke from being a complete digital replacement for the
traditional analog CD+G player.


Thanks Will, excellent HOWTO. Will put a link on the PyKaraoke web site.

Kelvin.


---
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=110944&bid=241720&dat=121642
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] PyKaraoke v0.4.2

2006-04-02 Thread Kelvin Lawson

It's a good solution for Linux, though I don't think JACK or the other
stuff runs on Win32 though; it's *possible* you could build a similar
kind of toolchain on Win32 though with whatever SDL is using for sound
delivery.


Well I think all of the calls for pitch-shifting so far have come from 
Linux users so this should be OK for now. Built-in pitch shifting could 
be a longer term goal if nothing is available on Windows.



I'd be glad to write up a howto. It was fairly easy to do once I
figured out the little gotchas. I'll post it in the next few days.


Great, thanks.


If that's still true, then yeah, I just need to update the
UpdatedTiles chunk to tell it I've written changes there. Of course,
the way I was doing it, I was just drawing the text on every frame
anyway. I think I saved the rendered text and only changed *it* when
necessary, then blitted it onto the finished output buffer right
before it got displayed.

Bleh. I need to dig some more to remember how I did it :)


OK, let me know if you need any pointers.

Kelvin.


---
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=110944&bid=241720&dat=121642
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] PyKaraoke v0.4.2

2006-04-02 Thread Kelvin Lawson

Hey Will, long time no speak.


I've been experimenting a lot lately with trying to get pitch shifting
working, and I've made a pleasant discovery that, at least in Linux,
makes it a snap to implement. I'm totally jazzed about this :)


Yeah I spotted this on your blog the other day. Kudos! This is a great 
solution as it saves reinventing the wheel. Any chance you could post a 
little HOWTO to the list on setting this up? :-)



More directly PyKaraoke-related, I wrote a patch against v0.3 that
added a configurable on-screen display (showing player status, time in
the song, etc.); anybody at all interested in that kind of feature, or
am I just being a showoff at the local shows? :)

I'd need to probably refactor it to work properly in v0.4 since that
introduced the segmented display scheme; though I was just overlaying
FreeType font stuff onto the buffer right before it gets flushed to
the display device, so it may still just apply and work.


If you're modifying the cdgSurfArray, then it just now needs to set 
appropriate bitfields in UpdatedTiles to specify which tiles have been 
modified. Then cdgDisplayUpdate() will automatically work on only the 
updated tiles. If it's not obvious what to do then I'd be happy to do 
the merge.


Thinking about it, it's probably not appropriate to blit the text into 
cdgSurfArray as it would get scrolled if there was any scrolling in the 
CDG. Better to do this to the unscaled_tiles array immediately before 
scaling and output. This way it won't be left hanging around in the main 
cdgSurfArray for use by the scrolling code.


Cheers,
Kelvin.



---
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=110944&bid=241720&dat=121642
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] Pykaraoke, ogg and an intro

2006-03-29 Thread Kelvin Lawson
Well that was fast! 
That fixed it!


Excellent!


Above the pygame.init() call in pycdg.py and it seems to solve the
problem.


If only I'd waited half an hour before releasing v0.4.2 :-) Mind you I'd 
like to do some testing on this before releasing it anyway. It'll go in 
the next version.



I don't have mp3 playback set up, I read in the documentation somewhere
that it required recompiling SDL (and I could be arsed as didn't want to
use mp3 anyway)


Yes it can be a pain on some distros. If you change your mind there are 
some step-by-step instructions on the website that worked on a recent FC 
release.


Thanks for letting me know,
Kelvin.


---
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=110944&bid=241720&dat=121642
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


[Pykaraoke-discuss] PyKaraoke v0.4.2

2006-03-29 Thread Kelvin Lawson
That reminds me... I've had v0.4.2 ready to go for some time now. Tthe 
Linux/source release is on Sourceforge now. The Windows installer will 
follow later.


Changes in this release are:

* pycdg: Support starting files without .cdg extension for tab-completion
* Fix Border Preset commands (don't clear entire screen)
* pycdg: play CDGs without an MP3 file for test purposes
* pycdg: Fix FutureWarning on 0xs
* pycdg: Fix option type 'str' for optparse
* GUI: Reorder Playlist (drag & drop)
* GUI: Drag and drop from Search View to Playlist
* GUI: Drag and drop from Folder View to Playlist
* GUI: Made some of the GUI features reusable by other scripts (Craig Rindy)
* GUI: Fix non-ASCII characters in filenames (Craig Rindy)

Cheers,
Kelvin.


---
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=110944&bid=241720&dat=121642
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] Pykaraoke, ogg and an intro

2006-03-29 Thread Kelvin Lawson

Hi,

Welcome aboard.

Could you send me the offending ogg file please? I'll see if I can 
reproduce the problem here.


There's a note in the Pygame documentation about "scratchy" playback due 
to a lack of buffering. It's apparently a bug on Windows, and it's also 
not clear if it applies to the mixer.music module, but it might be worth 
a go anyway:


http://www.pygame.org/docs/ref/mixer.html#pygame.mixer.init

The suggestion is to do this before the pygame.init() call:

pygame.mixer.pre_init(44100,-16,2, 1024 * 3)

Cheers,
Kelvin.


Drew wrote:

Hello, I hope I'm posting this to the right list, feel free to shout
nasty things at me if I'm not :)

First a little intro:
A few years ago I got interested in CDG disks and how they work. Long
story short, I ended up learning a bit about it for the few resources
which were available on the internet at the time (it seems much better
these days). I wrote some code (including some to read Q channel data
for some stupid reason) and then gave up without every completing
anything useful.

Recently I've started thinking about making a karaoke device. I started
looking around to see what was available in the open source world these
days and found pykaraoke and cdgtools both very impressive tools.

I've never coded in python before but it all seems very logical when you
start looking at the code.


Anyway on to my main point :)

I was trying not to use mp3 with a view to keeping everything patent
free and open source.

I'm having a small problem with ogg and pykaraoke:

I modified cdgrip.py to work with oggenc by just switching th encoder
line at first I got good cdg files but white noise ogg files. I soon
realised it was an endainness problem. For some reason oggenc seems to
work the opposite way to lame (little endian by default I think) I used
the --raw-endianness 1 switch and it seemed cured.

The problem I'm having now is one of quality when playing the files back
with pykaraoke, there seems to be noticeable distortion in the playback.
This doesn't happen if I play back the encoded ogg in XMMS. 


I wonder if anyone has any idea about what is going on?

thanks in advance..

vv



---
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=110944&bid=241720&dat=121642
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss





---
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=110944&bid=241720&dat=121642
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] Fast chirping sound when tryingt to play a song

2006-03-13 Thread Kelvin Lawson

Hi Harry,

We recently had some trouble getting the graphics to sync up with the 
audio on lower spec machines. We made a lot of improvements but I'm not 
convinced that would extend down to 400MHz. That said, I'm surprised 
it's the audio that's failing.


On Windows you should get better results from an application that takes 
advantage of hardware accelerated graphics etc. PyKaraoke currently 
takes advantage of Python and some Python-based libraries so that we can 
run the same code on many platforms. Unfortunately this raises the bar a 
little in terms of minimum requirements, and I suspect that a 400MHz 
machine will not be suitable.


All the best,
Kelvin.


Harry Gambardella(HG Entertainment) wrote:

Hi,
I've installed the lastest version of PyKaroke on a 400mhz Toshiba 
laptop running Windows 2000pro.


It installed and opens OK.

I searched my folder of a handful of MP3+g files.  I can open the song 
up, it will display the text of the CDG file, but I cannot hear the 
music.  All I hear is a loud CHIRPING sound.


Is there something I'm doing wrong?  Can I run this program on this laptop?

Thank you,
Harry



*HG Entertainment*
Harry Gambardella (Entertainment Specialist/DJ)
*Outstanding DJ Fun!
*http://HG-Entertainment.com
(203) 238-4895




---
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=110944&bid=241720&dat=121642
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] Runtime error

2006-02-13 Thread Kelvin Lawson

Hi Jay, long time no speak.


It did it to me, too, Kelvin; I'd forgotten to say anything.  XPPro.
First time.


OK thanks. You're using XPPro and Mark is using 98SE so no clues there. 
I'm planning to put out a v0.4.2 shortly, so I'll see if I can reproduce 
it when building the installer.


All the best,
Kelvin.


---
This SF.net email is sponsored by: Splunk Inc. Do you grep through log files
for problems?  Stop!  Download the new AJAX search engine that makes
searching your log files as easy as surfing the  web.  DOWNLOAD SPLUNK!
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=103432&bid=230486&dat=121642
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] Runtime error

2006-02-12 Thread Kelvin Lawson

Hi Mark,

This application has asked the Runtime to it in an unusual way. Please 
contact the application's support team for more information.


This is a new one on me. Could you let me know which version of Windows 
you're using please? Also was it working previously or did this happen 
the first time you ran it?


Thanks,
Kelvin.


---
This SF.net email is sponsored by: Splunk Inc. Do you grep through log files
for problems?  Stop!  Download the new AJAX search engine that makes
searching your log files as easy as surfing the  web.  DOWNLOAD SPLUNK!
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=103432&bid=230486&dat=121642
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


[Pykaraoke-discuss] Re: RPM for v0.4.1

2006-01-04 Thread Kelvin Lawson

Hi Chris,


...Sorry, I think I mis-spoke (mis-wrote). What I meant by this is that
the RPM installs just fine (I know you need root privileges for that). I
meant to say that PyKaraoke itself, when installed from the RPM, runs as
expected only when logged on as root. If you try and run it as a normal
user, it errors out. By contrast, the non-RPM installed version appears
to work on FC4 with normal user rights.


Ah apologies, I misread your message.

Hopefully this will be fixed in the new RPM. I used to make distutils 
build a ZIP file for the source, but that trashed all the file 
permissions etc. It may be that this also affected the RPM I built then. 
With any luck this problem will have gone away now that I've told 
distutils to use a tar.gz.



Hope that helps and thanks! I'll try the updated RPM in a bit - I just
got "that little talk" from my wife about being on the computer... :)


Oh I know that talk only too well.

Thanks for your help,
Kelvin.



---
This SF.net email is sponsored by: Splunk Inc. Do you grep through log files
for problems?  Stop!  Download the new AJAX search engine that makes
searching your log files as easy as surfing the  web.  DOWNLOAD SPLUNK!
http://ads.osdn.com/?ad_id=7637&alloc_id=16865&op=click
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] RPM for v0.4.1

2005-12-31 Thread Kelvin Lawson

Hi Chris,


I tried downloading the RPM. It seems for some reason that Firefox and
Konqueror on FC4 wants to recognize it as a RealPlayer type file and
opens it with a media player instead of saving the file. I know there's
a way to specify a preferred mime type with the file on the Web server,
but I don't remember off hand how to do it. VMware has the same problem
by the way when downloading their RPMs. They really need to fix it.


Thanks for letting me know. I've added a .bin extension on there now:

http://www.kibosh.org/pykaraoke/pykaraoke-0.4.1-1.noarch.rpm.bin

If you still have no luck maybe you could grab it with wget.


Also, I noticed the other day that the first RPM file installs and runs
properly on FC4 as long as you are root, but doesn't work properly with
normal user rights. I'll see if I can dig up the exact error next
opportunity.


It needs to run as root so it can install into /usr/bin and friends.

Thanks for giving it a go, look forward to hearing how it goes.
Kelvin.


---
This SF.net email is sponsored by: Splunk Inc. Do you grep through log files
for problems?  Stop!  Download the new AJAX search engine that makes
searching your log files as easy as surfing the  web.  DOWNLOAD SPLUNK!
http://ads.osdn.com/?ad_id=7637&alloc_id=16865&op=click
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


[Pykaraoke-discuss] RPM for v0.4.1

2005-12-29 Thread Kelvin Lawson

Hi,

I've built an RPM in case anyone gets a chance to try it out:

http://www.kibosh.org/pykaraoke/pykaraoke-0.4.1-1.noarch.rpm

I don't expect there to be much trouble with the actual install 
procedure - more likely the dependencies. i.e. picking the correct 
package-names for the relevant repository.


Thanks,
Kelvin.


---
This SF.net email is sponsored by: Splunk Inc. Do you grep through log files
for problems?  Stop!  Download the new AJAX search engine that makes
searching your log files as easy as surfing the  web.  DOWNLOAD SPLUNK!
http://ads.osdn.com/?ad_id=7637&alloc_id=16865&op=click
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


[Pykaraoke-discuss] PyKaraoke v0.4.1

2005-12-29 Thread Kelvin Lawson

Hi Folks,

I've just released v0.4.1 of PyKaraoke. Thanks for all your patches and 
testing. Main changes are:


* Better pycdg performance through tiled scaling/blitting.
* Linux install script (run "python setup.py install").
* A few GUI fixes for wx-2.6, and MIDI playback within ZIPs.

The full changelog is here:
http://sourceforge.net/project/shownotes.php?group_id=123242&release_id=381511

I've defaulted the frames per second to 10, with the expectation that 
those that want higher can use the --fps parameter. I'll add a 
configuration knob for this to the GUI in the next release.


I'd like to see about getting this release into the distro package 
managers so if anyone can help with testing out debs and rpms that would 
be good. I'll create an RPM and send it out soon.


Thanks again,
Kelvin.


---
This SF.net email is sponsored by: Splunk Inc. Do you grep through log files
for problems?  Stop!  Download the new AJAX search engine that makes
searching your log files as easy as surfing the  web.  DOWNLOAD SPLUNK!
http://ads.osdn.com/?ad_id=7637&alloc_id=16865&op=click
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] CAVS' "Super CD+G" format

2005-12-20 Thread Kelvin Lawson

The problem, as I note, is that the commercial ones are packaged in
this encrypted .DAT file, that I'm going to have to crack first.


OK well let us know if you find time to look further into it. After I 
get this new release out I'd like to concentrate on getting pycdg 
working with pymedia and libsoundtouch. After that lrc, kok, cavs and 
The World :-)



pykaraoke.wikispaces.com


Aw.  Not MediaWiki.  Denied.


Heh, well it was a question of time and benefit. Saved a couple of hours 
of setting up mysql and mediawiki at my hosting providers.


Kelvin.


---
This SF.net email is sponsored by: Splunk Inc. Do you grep through log files
for problems?  Stop!  Download the new AJAX search engine that makes
searching your log files as easy as surfing the  web.  DOWNLOAD SPLUNK!
http://ads.osdn.com/?ad_id=7637&alloc_id=16865&op=click
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] Re: FINALLY -- ghod I hate SuSE

2005-12-20 Thread Kelvin Lawson

Hi Jay,


This version seems also to keep up, and only boosted my load average
from .44 to .88 or so.  I think that's better.  :-)


Sounds like a goer to me.

As we got a decent improvement out of 4 tiles, I've had another bash at 
it tonight. The attached version uses 24 update tiles (a grid of 6x4). 
If anyone gets the chance, could you try it out and let me know the 
results. If all goes well I'll see about putting out a new release 
towards the end of the week.


Kelvin.

#!/usr/bin/env python

# pycdg - CDG/MP3+G Karaoke Player

# Copyright (C) 2005  Kelvin Lawson ([EMAIL PROTECTED])
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
#
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA


# OVERVIEW
#
# pycdg is a CDG karaoke player which supports MP3+G and OGG+G tracks.
#
# The player uses the pygame library (www.pygame.org), and can therefore
# run on any operating system that runs pygame (currently Linux, Windows
# and OSX).
#
# You can use this file as a standalone player, or together with
# PyKaraoke. PyKaraoke provides a graphical user interface, playlists,
# searchable song database etc.
#
# For those writing a media player or similar project who would like
# CDG support, this module has been designed to be easily incorporated
# into such projects and is released under the LGPL.


# REQUIREMENTS
#
# pycdg requires the following to be installed on your system:
# . Python (www.python.org)
# . Pygame (www.pygame.org)
# . Numeric module (numpy.sourceforge.net)


# USAGE INSTRUCTIONS
#
# To start the player, pass the CDG filename/path on the command line:
# 		python pycdg.py /songs/theboxer.cdg
#
# You can also incorporate a CDG player in your own projects by
# importing this module. The class cdgPlayer is exported by the
# module. You can import and start it as follows:
#	import pycdg
#	player = pycdg.cdgPlayer("/songs/theboxer.cdg")
#	player.Play()
#
# The class also exports Close(), Pause(), Rewind(), GetPos().
#
# There are two optional parameters to the initialiser, errorNotifyCallback
# and doneCallback:
#
# errorNotifyCallback, if provided, will be used to print out any error
# messages (e.g. song file not found). This allows the module to fit 
# together well with GUI playlist managers by utilising the same GUI's
# error popup window mechanism (or similar). If no callback is provided,
# errors are printed to stdout. errorNotifyCallback should take one 
# parameter, the error string, e.g.:
# 	def errorPopup (ErrorString):
#		msgBox (ErrorString)
#
# doneCallback can be used to register a callback so that the player
# calls you back when the song is finished playing. The callback should
# take no parameters, e.g.:
# 	def songFinishedCallback():
#		msgBox ("Song is finished")
#
# To register callbacks, pass the functions in to the initialiser:
# 	cdgPlayer ("/songs/theboxer.cdg", errorPopup, songFinishedCallback)
# These parameters are optional and default to None.
#
# If the initialiser fails (e.g. the song file is not present), __init__
# raises an exception.


# IMPLEMENTATION DETAILS
#
# pycdg is implemented as one python module. It performs all
# of the CDG file decoding locally, and gets audio playback
# and video display capabilities from the pygame library.
# It also uses the python Numeric module, which provides
# fast handling of the arrays of pixel data for the display.
#
# All of the information on the CDG file format was learned
# from the fabulous "CDG Revealed" tutorial at www.jbum.com.
#
# The player is run within a thread to allow for easy
# integration with media player programs. The thread starts
# the pygame MP3/OGG playback, and then monitors the current
# time in the song. It reads the CDG file at the correct
# location for the current position of the song, and decodes
# the CDG commands stored there. If the CDG command requires
# a screen update, a local array of pixels is updated to
# reflect the new graphic information. Rather than update
# directly to the screen for every command, this local array
# is output to the screen ten times per second (configurable).
# Doing an actual screen refresh for every command consumes
# a lot of CPU horsepower.
#
# NOTE: Pygame does not currently support querying the length
# of an MP3 track, therefore the GetLength() method is not
# currently implemented.
#
# There

Re: [Pykaraoke-discuss] CAVS' "Super CD+G" format

2005-12-19 Thread Kelvin Lawson

Any insights here would be welcome.  I infer from the patent that if I
can get to MCG files, they might be reasonably parseable with the
current engine...


I'd definitely like to learn more about this. Do you know if any players 
other than CAVS have managed to decode it? I haven't heard of any.


I'd also like to add .kok and .lrc support, though those are probably 
less interesting to you KJs.


Which reminds me... I set up a little wiki page to note down requested 
features for PyKaraoke. If you'd like to add anything (or even better 
tick some off the list :-)) it's at:


pykaraoke.wikispaces.com

Feel free to chip in, add a separate section for a professional player etc.

Kelvin.


---
This SF.net email is sponsored by: Splunk Inc. Do you grep through log files
for problems?  Stop!  Download the new AJAX search engine that makes
searching your log files as easy as surfing the  web.  DOWNLOAD SPLUNK!
http://ads.osdn.com/?ad_id=7637&alloc_id=16865&op=click
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] Re: FINALLY -- ghod I hate SuSE

2005-12-19 Thread Kelvin Lawson

This one (I'm calling it pycdg3.py) keeps up with the Doobie Brothers
track at full screen size, with no changes.  The noticeable pause seems
gone, and my load average went from ca .61 to ca 1.25 on this C-IV
1400.


Fab! Now the question is, was it the reduced display update mods, or the 
removed delay that made it better. Sorry to have you trying out all 
these versions, but if you could try out the attached version (with the 
delay back in) we might be on the home straight :-)


If it is the delay, it might explain why I haven't had any reports of 
syncing problems in the past. The delay code was a fairly late addition.



Noice.


I'll say.


Well, remember, it may *take* 100% of available CPU; that's ok.  The
question is, what does it do when something else is running.


And if it turns out to be the delay causing problems, I'll need to find 
some other solution to stop it using 100% CPU when it's not actually 
doing anything.


Kelvin.
#!/usr/bin/env python

# pycdg - CDG/MP3+G Karaoke Player

# Copyright (C) 2005  Kelvin Lawson ([EMAIL PROTECTED])
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
#
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA


# OVERVIEW
#
# pycdg is a CDG karaoke player which supports MP3+G and OGG+G tracks.
#
# The player uses the pygame library (www.pygame.org), and can therefore
# run on any operating system that runs pygame (currently Linux, Windows
# and OSX).
#
# You can use this file as a standalone player, or together with
# PyKaraoke. PyKaraoke provides a graphical user interface, playlists,
# searchable song database etc.
#
# For those writing a media player or similar project who would like
# CDG support, this module has been designed to be easily incorporated
# into such projects and is released under the LGPL.


# REQUIREMENTS
#
# pycdg requires the following to be installed on your system:
# . Python (www.python.org)
# . Pygame (www.pygame.org)
# . Numeric module (numpy.sourceforge.net)


# USAGE INSTRUCTIONS
#
# To start the player, pass the CDG filename/path on the command line:
# 		python pycdg.py /songs/theboxer.cdg
#
# You can also incorporate a CDG player in your own projects by
# importing this module. The class cdgPlayer is exported by the
# module. You can import and start it as follows:
#	import pycdg
#	player = pycdg.cdgPlayer("/songs/theboxer.cdg")
#	player.Play()
#
# The class also exports Close(), Pause(), Rewind(), GetPos().
#
# There are two optional parameters to the initialiser, errorNotifyCallback
# and doneCallback:
#
# errorNotifyCallback, if provided, will be used to print out any error
# messages (e.g. song file not found). This allows the module to fit 
# together well with GUI playlist managers by utilising the same GUI's
# error popup window mechanism (or similar). If no callback is provided,
# errors are printed to stdout. errorNotifyCallback should take one 
# parameter, the error string, e.g.:
# 	def errorPopup (ErrorString):
#		msgBox (ErrorString)
#
# doneCallback can be used to register a callback so that the player
# calls you back when the song is finished playing. The callback should
# take no parameters, e.g.:
# 	def songFinishedCallback():
#		msgBox ("Song is finished")
#
# To register callbacks, pass the functions in to the initialiser:
# 	cdgPlayer ("/songs/theboxer.cdg", errorPopup, songFinishedCallback)
# These parameters are optional and default to None.
#
# If the initialiser fails (e.g. the song file is not present), __init__
# raises an exception.


# IMPLEMENTATION DETAILS
#
# pycdg is implemented as one python module. It performs all
# of the CDG file decoding locally, and gets audio playback
# and video display capabilities from the pygame library.
# It also uses the python Numeric module, which provides
# fast handling of the arrays of pixel data for the display.
#
# All of the information on the CDG file format was learned
# from the fabulous "CDG Revealed" tutorial at www.jbum.com.
#
# The player is run within a thread to allow for easy
# integration with media player programs. The thread starts
# the pygame MP3/OGG playback, and then monitors the current
# time in the song. It reads the CDG file at the correct
# location for the current position of the song, and decodes
# the CDG commands stored there. If the CDG command 

Re: [Pykaraoke-discuss] *Creating* CDG files

2005-12-19 Thread Kelvin Lawson

Anyway, the format's pretty simple, so generating the final output
isn't too hard. It's coming up with what to show in the first place
that's the challenge :) It basically just means coming up with a
decent palette (fairly easy), picking a readable but fast-to-display
font, and timing things so the words are on the screen *before* they
need to be sung and getting them to highlight as they're sung.

'tis fun :)

Kelvin probably has more input, too :)


I agree. Given our experience from pycdg, generating the correct CD+G 
commands shouldn't cause us any difficulty.


I reckon the main effort would be in creating the GUI to control it all, 
building up the on-screen graphics etc. I don't get much pleasure from 
writing GUI applications, but if someone was interested in developing 
that side I'd be happy to help out with the CD+G generation side.


Kelvin.


---
This SF.net email is sponsored by: Splunk Inc. Do you grep through log files
for problems?  Stop!  Download the new AJAX search engine that makes
searching your log files as easy as surfing the  web.  DOWNLOAD SPLUNK!
http://ads.osdn.com/?ad_id=7637&alloc_id=16865&op=click
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] Re: FINALLY -- ghod I hate SuSE

2005-12-19 Thread Kelvin Lawson

Oh, it's definitely better,  It's not perfect, but it's imperfect in a
substantially less annoying way.  :-)


This is good news. If I get the chance tomorrow I'll split the screen up 
into more tiles and maybe we can squeeze some more performance out.


I'd be interested to hear how the new version goes, to see whether the 
delay was causing any damage. I'd like to put that back in otherwise 
we'll end up with reports of 100% CPU usage.


Thanks,
Kelvin.


---
This SF.net email is sponsored by: Splunk Inc. Do you grep through log files
for problems?  Stop!  Download the new AJAX search engine that makes
searching your log files as easy as surfing the  web.  DOWNLOAD SPLUNK!
http://ads.osdn.com/?ad_id=7637&alloc_id=16865&op=click
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] Re: FINALLY -- ghod I hate SuSE

2005-12-19 Thread Kelvin Lawson

Hi Jay,

Thanks for the feedback. So do you think this is an improvement on the 
previous performance? If it's difficult to tell with the new 1/4 second 
display-dropping code then let me know and I'll take it out.


If it's an improvement then maybe the thing to do is divide the screen 
into smaller segments.


I've made a few updates tonight, if you could help by trying them out 
that would be great. Although the last version only scaled the modified 
tiles, it still did a full update() on the entire screen. This one only 
updates the modified tile.


I've also removed a small delay that was in there to reduce CPU load 
(which stops it constantly polling for the current song time). I'm 
wondering whether some systems can hit this and block for a long time, 
doing no work at all. It will take your CPU load up to 100% if it wasn't 
already.


I also added some profiling code in there using the hotshot module. It 
hasn't turned out to be useful unfortunately - according to the 
documentation it doesn't play well with threads. The accumulated time it 
spews out is totally incorrect for instance. I've disabled it in there 
for now.


Cheers,
Kelvin.



At the 15 fps you set it to, it can just about keep up with SC8119-1,
but I can see the pauses.  Again, this is at:

screen #0:
  print screen:no
  dimensions:1280x1024 pixels (361x271 millimeters)
  resolution:90x96 dots per inch
  depths (7):24, 1, 4, 8, 15, 16, 32
  root window id:0x60
  depth of root window:24 planes
  number of colormaps:minimum 1, maximum 1
  default colormap:0x20
  default number of colormap cells:256
  preallocated pixels:black 0, white 16777215
  options:backing-store NO, save-unders NO
  largest cursor:64x64
  current input event mask:0xfa4031
KeyPressMask EnterWindowMask  LeaveWindowMask
KeymapStateMask  StructureNotifyMask
SubstructureNotifyMask
SubstructureRedirectMask FocusChangeMask
PropertyChangeMask
ColormapChangeMask
  number of visuals:8
  default visual id:  0x23
  visual:
visual id:0x23
class:TrueColor
depth:24 planes
available colormap entries:256 per subfield
red, green, blue masks:0xff, 0xff00, 0xff
significant bits in color specification:8 bits

Hope that's informative enough.  Have you profiled it?  Can you profile
it?  Can I profile it?  :-)

Cheers,
-- jra


#!/usr/bin/env python

# pycdg - CDG/MP3+G Karaoke Player

# Copyright (C) 2005  Kelvin Lawson ([EMAIL PROTECTED])
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
#
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA


# OVERVIEW
#
# pycdg is a CDG karaoke player which supports MP3+G and OGG+G tracks.
#
# The player uses the pygame library (www.pygame.org), and can therefore
# run on any operating system that runs pygame (currently Linux, Windows
# and OSX).
#
# You can use this file as a standalone player, or together with
# PyKaraoke. PyKaraoke provides a graphical user interface, playlists,
# searchable song database etc.
#
# For those writing a media player or similar project who would like
# CDG support, this module has been designed to be easily incorporated
# into such projects and is released under the LGPL.


# REQUIREMENTS
#
# pycdg requires the following to be installed on your system:
# . Python (www.python.org)
# . Pygame (www.pygame.org)
# . Numeric module (numpy.sourceforge.net)


# USAGE INSTRUCTIONS
#
# To start the player, pass the CDG filename/path on the command line:
# 		python pycdg.py /songs/theboxer.cdg
#
# You can also incorporate a CDG player in your own projects by
# importing this module. The class cdgPlayer is exported by the
# module. You can import and start it as follows:
#	import pycdg
#	player = pycdg.cdgPlayer("/songs/theboxer.cdg")
#	player.Play()
#
# The class also exports Close(), Pause(), Rewind(), GetPos().
#
# There are two optional parameters to the initialiser, errorNotifyCallback
# and doneCallback:
#
# errorNotifyCallback, if provided, will be used to print out any error
# messages (e.g. song file not found). This allows the module to fit 
# together well with GUI playlist managers by utilising the same GUI's
# error popup window mechanism (or similar). If no callback is provide

Re: [Pykaraoke-discuss] Re: FINALLY -- ghod I hate SuSE

2005-12-15 Thread Kelvin Lawson
OK chaps I've knocked up a quick proof of concept. Jay, could you try 
out the attached pycdg.py please? Basically I've just divided the screen 
into four segments. I now only do the scaling on the segments that have 
been updated. I'm not sure how it will pan out, so before I tidy it up 
and do it properly, could you give this one a go? FPS is set to 30.


That first draft was a little rough round the edges. Amongst other 
things, it didn't update the screen on Preset commands. I've attached 
the latest version for your testing pleasure.


Beware that this one includes some code to bar any screen updates if the 
decoding gets 1/4 second behind the music. I figure the best thing to do 
in these situations is to not add insult to injury by carrying on 
performing slow output scaling. If there's a spell of heavy CPU activity 
it'll stop doing any updates, allowing the CPU to catch up quicker. The 
thinking is that a spell of no updates is better than a spell of out of 
sync updates.


Cheers,
Kelvin.

#!/usr/bin/env python

# pycdg - CDG/MP3+G Karaoke Player

# Copyright (C) 2005  Kelvin Lawson ([EMAIL PROTECTED])
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
#
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA


# OVERVIEW
#
# pycdg is a CDG karaoke player which supports MP3+G and OGG+G tracks.
#
# The player uses the pygame library (www.pygame.org), and can therefore
# run on any operating system that runs pygame (currently Linux, Windows
# and OSX).
#
# You can use this file as a standalone player, or together with
# PyKaraoke. PyKaraoke provides a graphical user interface, playlists,
# searchable song database etc.
#
# For those writing a media player or similar project who would like
# CDG support, this module has been designed to be easily incorporated
# into such projects and is released under the LGPL.


# REQUIREMENTS
#
# pycdg requires the following to be installed on your system:
# . Python (www.python.org)
# . Pygame (www.pygame.org)
# . Numeric module (numpy.sourceforge.net)


# USAGE INSTRUCTIONS
#
# To start the player, pass the CDG filename/path on the command line:
# 		python pycdg.py /songs/theboxer.cdg
#
# You can also incorporate a CDG player in your own projects by
# importing this module. The class cdgPlayer is exported by the
# module. You can import and start it as follows:
#	import pycdg
#	player = pycdg.cdgPlayer("/songs/theboxer.cdg")
#	player.Play()
#
# The class also exports Close(), Pause(), Rewind(), GetPos().
#
# There are two optional parameters to the initialiser, errorNotifyCallback
# and doneCallback:
#
# errorNotifyCallback, if provided, will be used to print out any error
# messages (e.g. song file not found). This allows the module to fit 
# together well with GUI playlist managers by utilising the same GUI's
# error popup window mechanism (or similar). If no callback is provided,
# errors are printed to stdout. errorNotifyCallback should take one 
# parameter, the error string, e.g.:
# 	def errorPopup (ErrorString):
#		msgBox (ErrorString)
#
# doneCallback can be used to register a callback so that the player
# calls you back when the song is finished playing. The callback should
# take no parameters, e.g.:
# 	def songFinishedCallback():
#		msgBox ("Song is finished")
#
# To register callbacks, pass the functions in to the initialiser:
# 	cdgPlayer ("/songs/theboxer.cdg", errorPopup, songFinishedCallback)
# These parameters are optional and default to None.
#
# If the initialiser fails (e.g. the song file is not present), __init__
# raises an exception.


# IMPLEMENTATION DETAILS
#
# pycdg is implemented as one python module. It performs all
# of the CDG file decoding locally, and gets audio playback
# and video display capabilities from the pygame library.
# It also uses the python Numeric module, which provides
# fast handling of the arrays of pixel data for the display.
#
# All of the information on the CDG file format was learned
# from the fabulous "CDG Revealed" tutorial at www.jbum.com.
#
# The player is run within a thread to allow for easy
# integration with media player programs. The thread starts
# the pygame MP3/OGG playback, and then monitors the current
# time in the song. It reads the CDG file at the correct
# location for the current position of the song, and

Re: [Pykaraoke-discuss] Re: FINALLY -- ghod I hate SuSE

2005-12-14 Thread Kelvin Lawson

Let me confirm this: *you're* doing the scaling, manually?  I would
have thought the {mumble} library was doing it for you?


Semi-manually. I paint into unscaled segments and then call 
pygame.transform.scale() at update-time which does all the scaling for 
you. I'm not aware of any pygame feature that auto-scales your output 
surface.


Previously I scaled up the entire surface on every update. Now I'm only 
scaling up the segments that have changed, leaving the other segments 
totally unmodified and unscaled.


With four segments this should give us an *up to* 4x performance 
improvement in the scaling part of the code. Thanks to the fact that 
CD+G tends to roll across the screen it's not very often that you'll 
have to scale more than one segment in one update.


Kelvin.


---
This SF.net email is sponsored by: Splunk Inc. Do you grep through log files
for problems?  Stop!  Download the new AJAX search engine that makes
searching your log files as easy as surfing the  web.  DOWNLOAD SPLUNK!
http://ads.osdn.com/?ad_id=7637&alloc_id=16865&op=click
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


Re: [Pykaraoke-discuss] Re: FINALLY -- ghod I hate SuSE

2005-12-14 Thread Kelvin Lawson

I've downloaded it; I'll check it today.  Saw your note about depth;
I'll play with that too.


Cheers, looking forward to hearing from you.

If it's an improvement but still not quite enough, I can divide the 
screen into smaller segments. If it's worse.. well at least we tried.


Kelvin.


---
This SF.net email is sponsored by: Splunk Inc. Do you grep through log files
for problems?  Stop!  Download the new AJAX search engine that makes
searching your log files as easy as surfing the  web.  DOWNLOAD SPLUNK!
http://ads.osdn.com/?ad_id=7637&alloc_id=16865&op=click
___
Pykaraoke-discuss mailing list
Pykaraoke-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pykaraoke-discuss


  1   2   >