diff options
author | atmos4 <atmos4@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2002-07-03 21:17:31 +0000 |
---|---|---|
committer | atmos4 <atmos4@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2002-07-03 21:17:31 +0000 |
commit | ed856102c684b065e3ba35a4c9d28e3f108722e5 (patch) | |
tree | 56df4ee6b4f629b177003f43784cf3a347ab0ff9 /libao2 | |
parent | 723b351573a1213416cc8e3914c8964c0fbf5a12 (diff) | |
download | mpv-ed856102c684b065e3ba35a4c9d28e3f108722e5.tar.bz2 mpv-ed856102c684b065e3ba35a4c9d28e3f108722e5.tar.xz |
Patch to improve bufferhandling on OpenBSD and NetBSD, by Björn Sandell and Bernd Ernesti <mplayer at lists.veego.de>
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@6631 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libao2')
-rw-r--r-- | libao2/ao_sun.c | 10 |
1 files changed, 8 insertions, 2 deletions
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) |