|
From: | Leonardo E. Reiter |
Subject: | Re: [Qemu-devel] Re: esd audio output patch and debuging. |
Date: | Thu, 31 Aug 2006 13:19:16 -0400 |
User-agent: | Thunderbird 1.5.0.5 (X11/20060728) |
malc,Other than the lack of error handling and blocking mode, what is the problem with using QEMU's VM clock as the audio clock source? In my experience from older projects using esd (not related to QEMU), it is almost impossible to get reliable timing from ESD, especially if you are transporting over a network. The timing will certainly not be accurate enough for example for Windows guests using Windows Media Player, etc. Plus, you have to factor in socket buffering and underruns due to network latency if you expect anything synchronous on the socket. So what is the reason for objecting to the QEMU vm clock, much like the mute audio driver uses? I just want to know your reasoning for it just to further my own understanding.
Thank you, Leo ReiterP.S. I can attest that using the mute audio driver you used, if the host clock resolution is well above 100Hz such as on Linux and FreeBSD, Windows Media Player guests have no problem with multimedia streams. I keep referring to WMP because it is extremely picky about timing in general, more so than other applications even. It seems that QEMU's vm clock is accurate enough for this task, just FYI.
malc wrote: <snip>
There are several problems with this patch: a. esd_play_stream returns negative values on error (not zero) b. esd_play_stream can return with EINTR c. no error checking whatsoever on write to the socket d. the socket is most likely opened in blocking mode e. i don't think it's wise to use anything other than esd itself as a audio-clock source So basically the only way it can work (given the circumstances) is to have a thread that would perform a blocking write to the esd, and the rest as per coreaudio and sdladuio. P.S. Oh yeah, mixing tabs and spaces is also not a great idea. _______________________________________________ Qemu-devel mailing list address@hidden http://lists.nongnu.org/mailman/listinfo/qemu-devel
-- Leonardo E. Reiter Vice President of Product Development, CTO Win4Lin, Inc. Virtual Computing that means Business Main: +1 512 339 7979 Fax: +1 512 532 6501 http://www.win4lin.com
[Prev in Thread] | Current Thread | [Next in Thread] |