diff options
author | reimar <reimar@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2008-04-07 17:39:41 +0000 |
---|---|---|
committer | reimar <reimar@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2008-04-07 17:39:41 +0000 |
commit | 9623100d13788f98b610becf110bceb3d2c686b5 (patch) | |
tree | df9bf9ba8ffcfd0eb3b124d21378bb32bfae4fdd /libao2/ao_sun.c | |
parent | 885709eadda14524d0fe12ce423f6cc17b2c1e6b (diff) | |
download | mpv-9623100d13788f98b610becf110bceb3d2c686b5.tar.bz2 mpv-9623100d13788f98b610becf110bceb3d2c686b5.tar.xz |
reset() should not senselessly close and reopen
the device but instead just call flush_audio()
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@26345 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libao2/ao_sun.c')
-rw-r--r-- | libao2/ao_sun.c | 24 |
1 files changed, 1 insertions, 23 deletions
diff --git a/libao2/ao_sun.c b/libao2/ao_sun.c index 773f0d0d4a..55691705bd 100644 --- a/libao2/ao_sun.c +++ b/libao2/ao_sun.c @@ -588,29 +588,7 @@ static void uninit(int immed){ // stop playing and empty buffers (for seeking/pause) static void reset(void){ - audio_info_t info; - - uninit(1); - audio_fd=open(audio_dev, O_WRONLY); - if(audio_fd<0){ - mp_msg(MSGT_AO, MSGL_FATAL, MSGTR_AO_SUN_CantReopenReset, strerror(errno)); - return; - } - - ioctl(audio_fd, AUDIO_DRAIN, 0); - - AUDIO_INITINFO(&info); - info.play.encoding = af2sunfmt(ao_data.format); - info.play.precision = - (ao_data.format==AF_FORMAT_S16_NE - ? AUDIO_PRECISION_16 - : AUDIO_PRECISION_8); - info.play.channels = ao_data.channels; - info.play.sample_rate = ao_data.samplerate; - info.play.samples = 0; - info.play.eof = 0; - info.play.error = 0; - ioctl (audio_fd, AUDIO_SETINFO, &info); + flush_audio(audio_fd); queued_bursts = 0; queued_samples = 0; } |