From ed856102c684b065e3ba35a4c9d28e3f108722e5 Mon Sep 17 00:00:00 2001 From: atmos4 Date: Wed, 3 Jul 2002 21:17:31 +0000 Subject: =?UTF-8?q?Patch=20to=20improve=20bufferhandling=20on=20OpenBSD=20?= =?UTF-8?q?and=20NetBSD,=20by=20Bj=C3=B6rn=20Sandell=20and=20Bernd=20Ernes?= =?UTF-8?q?ti=20?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@6631 b3059339-0415-0410-9bf9-f77b7e298cf2 --- libao2/ao_sun.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'libao2/ao_sun.c') diff --git a/libao2/ao_sun.c b/libao2/ao_sun.c index 6f43343d5b..861f35e13e 100644 --- a/libao2/ao_sun.c +++ b/libao2/ao_sun.c @@ -445,13 +445,19 @@ static int get_space(){ } #endif -#ifndef __OpenBSD__ +#if !defined (__OpenBSD__) && !defined(__NetBSD__) ioctl(audio_fd, AUDIO_GETINFO, &info); if (queued_bursts - info.play.eof > 2) return 0; #endif +#if defined(__NetBSD__) || defined(__OpenBSD__) + ioctl(audio_fd, AUDIO_GETINFO, &info); + return info.hiwat * info.blocksize - info.play.seek; +#else return ao_data.outburst; +#endif + } // plays 'len' bytes of 'data' @@ -507,7 +513,7 @@ static int play(void* data,int len,int flags){ static float get_delay(){ audio_info_t info; ioctl(audio_fd, AUDIO_GETINFO, &info); -#ifdef __OpenBSD__ +#if defined (__OpenBSD__) || defined(__NetBSD__) return (float) info.play.seek/ (float)byte_per_sec ; #else if (info.play.samples && enable_sample_timing == RTSC_ENABLED) -- cgit v1.2.3