On Feb 11, 6:40 pm, [EMAIL PROTECTED] wrote:
> Currently, I have all of the above "working", although I'm running
> into some serious timing issues. When I run the program, I get
> irregular timing for my metronome (if it sounds at all), as well as
> irregular timing in writing to the external dev
On 12 Feb 2007 06:21:39 -0800, Ross Ridge <[EMAIL PROTECTED]> wrote:
>
>Paul Rubin wrote:
>> I think you can't really do that, not just because of Python but also
>> as a result of using a multitasking OS that's not especially designed
>> for real time. You have to rely on some buffering in the au
[EMAIL PROTECTED] a écrit :
> As mentioned above, my application deals with music training. I have a
> Tkinter GUI, which communicates via pyserial with an external device I
> built myself. The code reads in a MIDI file and converts the song to
> "output data " for the external device and the GUI,
Paul Rubin wrote:
> I think you can't really do that, not just because of Python but also
> as a result of using a multitasking OS that's not especially designed
> for real time. You have to rely on some buffering in the audio
> hardware, so you don't have to be sample-accurate with the timings.
[EMAIL PROTECTED] writes:
> So, for a music-based application where it's crucial to have real-time
> execution of serial writeouts and audio, as well as keeping a
> continual poll on the input from the same portcan this be done
> successfully in Python? Does using Tkinter have anything to do w
Perhaps boosting priorities for time critical threads will help.
I don't know about MacOS but for Win32 something like that helps:
thread = win32api.GetCurrentThread()
win32process.SetThreadPriority(thread,
win32process.THREAD_PRIORITY_TIME_CRITICAL)
current_process = win32pr
I've been working on a Python-based music training application for a
few months, and have recently run into what I believe are some basic
limitations (or at least constraints) of Python with regards to
timing. I'll try and give a decently thorough description, and
hopefully some of you can process