diff options
author | arpi <arpi@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2002-04-27 22:42:27 +0000 |
---|---|---|
committer | arpi <arpi@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2002-04-27 22:42:27 +0000 |
commit | 30d0116d16a40b641a4fc772435e0cbb09fe3e83 (patch) | |
tree | 814b49212bb351300b13dd77272b6c80f850e34c /libao2 | |
parent | 38a7d8e282893074240754cce4d00a9237d557e5 (diff) | |
download | mpv-30d0116d16a40b641a4fc772435e0cbb09fe3e83.tar.bz2 mpv-30d0116d16a40b641a4fc772435e0cbb09fe3e83.tar.xz |
OpenBSD, NetBSD portability patches by
Björn Sandell <biorn@dce.chalmers.se>
Marcus <core@antbear.org>
Bernd Ernesti <mplayer@lists.veego.de>
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@5873 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libao2')
-rw-r--r-- | libao2/afmt.h | 4 | ||||
-rw-r--r-- | libao2/ao_oss.c | 2 | ||||
-rw-r--r-- | libao2/ao_sun.c | 6 |
3 files changed, 12 insertions, 0 deletions
diff --git a/libao2/afmt.h b/libao2/afmt.h index 29f2de1912..1772606554 100644 --- a/libao2/afmt.h +++ b/libao2/afmt.h @@ -3,6 +3,10 @@ #ifdef HAVE_SYS_SOUNDCARD_H #include <sys/soundcard.h> /* For AFMT_* on linux */ +#else +#ifdef HAVE_SOUNDCARD_H +#include <soundcard.h> /* OpenBSD have this instead of <sys/soundcard> */ +#endif #endif /* standard, old OSS audio formats */ diff --git a/libao2/ao_oss.c b/libao2/ao_oss.c index 17e6fc4fd5..c7233733a8 100644 --- a/libao2/ao_oss.c +++ b/libao2/ao_oss.c @@ -292,9 +292,11 @@ static int audio_delay_method=2; static float get_delay(){ /* Calculate how many bytes/second is sent out */ if(audio_delay_method==2){ +#ifdef SNDCTL_DSP_GETODELAY int r=0; if(ioctl(audio_fd, SNDCTL_DSP_GETODELAY, &r)!=-1) return ((float)r)/(float)ao_data.bps; +#endif audio_delay_method=1; // fallback if not supported } if(audio_delay_method==1){ diff --git a/libao2/ao_sun.c b/libao2/ao_sun.c index f4d94edb41..16dbf23865 100644 --- a/libao2/ao_sun.c +++ b/libao2/ao_sun.c @@ -440,9 +440,11 @@ static int get_space(){ } #endif +#ifndef __OpenBSD__ ioctl(audio_fd, AUDIO_GETINFO, &info); if (queued_bursts - info.play.eof > 2) return 0; +#endif return ao_data.outburst; } @@ -500,9 +502,13 @@ 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__ + return (float) info.play.seek/ (float)byte_per_sec ; +#else if (info.play.samples && enable_sample_timing == RTSC_ENABLED) return (float)(queued_samples - info.play.samples) / (float)byte_per_sec; else return (float)((queued_bursts - info.play.eof) * ao_data.outburst) / (float)byte_per_sec; +#endif } |