win32: do not use all cpu time
[qemu] / oss.c
diff --git a/oss.c b/oss.c
index 4210799..81de93b 100644 (file)
--- a/oss.c
+++ b/oss.c
@@ -21,6 +21,9 @@
  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
  * THE SOFTWARE.
  */
+#include "vl.h"
+
+#ifndef _WIN32
 #include <fcntl.h>
 #include <errno.h>
 #include <stdio.h>
@@ -33,7 +36,6 @@
 #include <sys/ioctl.h>
 #include <sys/soundcard.h>
 
-#include "vl.h"
 
 /* http://www.df.lth.se/~john_e/gems/gem002d.html */
 /* http://www.multi-platforms.com/Tips/PopCount.htm */
@@ -459,11 +461,11 @@ int AUD_get_free (void)
             uint64_t ua_elapsed;
             uint64_t al_elapsed;
 
-            ticks = cpu_get_ticks ();
+            ticks = qemu_get_clock(rt_clock);
             delta = ticks - old_ticks;
             old_ticks = ticks;
 
-            ua_elapsed = (delta * bytes_per_second) / ticks_per_sec;
+            ua_elapsed = (delta * bytes_per_second) / 1000;
             al_elapsed = ua_elapsed & ~3ULL;
 
             ldebug ("tid elapsed %llu bytes\n", ua_elapsed);
@@ -510,3 +512,43 @@ void AUD_init (void)
 
     conf_fragsize = lsbindex (fsp);
 }
+
+#else
+
+void AUD_run (void)
+{
+}
+
+int AUD_write (void *in_buf, int size)
+{
+    return 0;
+}
+
+void AUD_reset (int rfreq, int rnchannels, audfmt_e rfmt)
+{
+}
+
+void AUD_adjust_estimate (int _leftover)
+{
+}
+
+int AUD_get_free (void)
+{
+    return 0;
+}
+
+int AUD_get_live (void)
+{
+    return 0;
+}
+
+int AUD_get_buffer_size (void)
+{
+    return 0;
+}
+
+void AUD_init (void)
+{
+}
+
+#endif