Opened 19 years ago

Closed 19 years ago

Last modified 19 years ago

#144 closed defect (fixed)

mplayer freezes when looping and using macosx as the audio out.

Reported by: devchan1@… Owned by: alex@…
Priority: important Component: ao
Version: HEAD Severity: major
Keywords: Cc:
Blocked By: Blocking:
Reproduced by developer: no Analyzed by developer: no

Description

mplayer -loop 2 -ao macosx some_file.mp3
the above command causes mplayer to freeze after playing
the first loop.

I did not compile mplayer with -g, but if one of the developers needs a gdb back
trace I will be happy to obliged.

I see the following in my system.log file:

Nov 23 19:46:48 localhost kernel: IOAudioStream[0x1f68600]::clipIfNecessary() -
Error: attempting to clip to a position more than one buffer ahead of last clip
position (a3,1e5c)->(a4,2467).
Nov 23 19:46:48 localhost kernel: IOAudioStream[0x1f68600]::clipIfNecessary() -
adjusting clipped position to (a4,1e5c)

I see the following output from mplayer:

dave:[~/]$ mplayer Download/music_omicron_space.mp3 -loop 2 -ao macosx -v 1
MPlayer dev-CVS-041120-17:45-3.3 (C) 2000-2004 MPlayer Team
AltiVec found
CPU: PowerPC

73 audio & 178 video codecs
CommandLine: 'Download/music_omicron_space.mp3' '-loop' '2' '-ao' 'macosx' '-v' '1'
init_freetype
get_path('font/font.desc') -> '/Users/dave/.mplayer/font/font.desc'
Font /Users/dave/.mplayer/font/font.desc loaded successfully! (206 chars)
Using Unoptimized OnScreenDisplay
Using Darwin accurate timing
get_path('input.conf') -> '/Users/dave/.mplayer/input.conf'
Can't open input config file /Users/dave/.mplayer/input.conf: No such file or
directory
Can't open input config file /sw/etc/mplayer/input.conf: No such file or directory
Falling back on default (hardcoded) input config
get_path('music_omicron_space.mp3.conf') ->
'/Users/dave/.mplayer/music_omicron_space.mp3.conf'
Playing Download/music_omicron_space.mp3.
[file] File size is 1133535 bytes
STREAM: [file] Download/music_omicron_space.mp3
STREAM: Description: File
STREAM: Author: Albeu
STREAM: Comment: based on the code from ??? (probably Arpi)
Checking for YUV4MPEG2
ASF_check: not ASF guid!
Checking for Nullsoft Streaming Video
Checking for NuppelVideo
Checking for REAL
Checking for SMJPEG
Searching demuxer type for filename Download/music_omicron_space.mp3 ext: .mp3
Trying demuxer 17 based on filename extension
==> Found audio stream: 0
======= WAVE Format =======
Format Tag: 85 (0x55)
Channels: 2
Samplerate: 22050
avg byte/sec: 10000
Block align: 4
bits/sample: 0
cbSize: 12
mp3.wID=256
mp3.fdwFlags=0x2000000
mp3.nBlockSize=256
mp3.nFramesPerBlock=256
mp3.nCodecDelay=28933
===========================
demux_audio: audio data 0x52 - 0x114BDF
Audio file detected.
==========================================================================
Opening audio decoder: [ffmpeg] FFmpeg/libavcodec audio decoders
dec_audio: Allocating 131072 + 65536 = 196608 bytes for output buffer.
FFmpeg's libavcodec audio codec
INFO: libavcodec init OK!
AUDIO: 22050 Hz, 2 ch, 16 bit (0x20), ratio: 10000->88200 (80.0 kbit)
Selected audio codec: [ffmp3] afm:ffmpeg (FFmpeg MPEG layer-3 audio decoder)
==========================================================================
Checking audio filter chain for 22050Hz/2ch/16bit -> 22050Hz/2ch/16bit...
[libaf] Adding filter dummy
[dummy] Was reinitialized, rate=22050Hz, nch = 2, format = 0x00000000 and bps = 2
AF_pre: af format: 2 bps, 2 ch, 22050 hz, big endian signed int
AF_pre: 22050Hz 2ch Signed 16-bit (Big-Endian)
AO: [macosx] hardware format...
AO: [macosx] 44100.000000 mSampleRate
AO: [macosx] lpcm mFormatID
AO: [macosx] 8 mBytesPerPacket
AO: [macosx] 1 mFramesPerPacket
AO: [macosx] 8 mBytesPerFrame
AO: [macosx] 2 mChannelsPerFrame
AO: [macosx] 4096 ao->buffer_len
AO: [macosx] 44100Hz 2ch Floating Point (4 bps)
AO: Description: Darwin/Mac OS X native audio output
AO: Author: Timothy J. Wood & Dan Christiansen
Building audio filter chain for 22050Hz/2ch/16bit -> 44100Hz/2ch/32bit...
[dummy] Was reinitialized, rate=22050Hz, nch = 2, format = 0x00000000 and bps = 2
[libaf] Adding filter resample
[resample] Changing sample rate to 44100Hz
[resample] Using integer processing and inexact frequecy conversion.
[resample] New filter designed up: 2 down: 1
[dummy] Was reinitialized, rate=44100Hz, nch = 2, format = 0x00000000 and bps = 2
[libaf] Adding filter format
[format] Changing sample format from 16bit big endian signed int to 32bit big
endian float
[resample] Using integer processing and inexact frequecy conversion.
[dummy] Was reinitialized, rate=44100Hz, nch = 2, format = 0x00000000 and bps = 2
[format] Changing sample format from 16bit big endian signed int to 32bit big
endian float
Video: no video
Freeing 0 unused video chunks.
Starting playback...
AO: [macosx] Buffer underrun
[libaf] Reallocating memory in module resample, old len = 0, new len = 8196
[libaf] Reallocating memory in module format, old len = 0, new len = 16388
ds_fill_buffer: EOF reached (stream: audio)
loop_times = 1, eof = 1%
AO: [macosx] Buffer underrun
AO: [macosx] Buffer underrun
AO: [macosx] Buffer underrun
AO: [macosx] Buffer underrun
AO: [macosx] Buffer underrun
AO: [macosx] Buffer underrun
AO: [macosx] Buffer underrun
AO: [macosx] Buffer underrun
AO: [macosx] Buffer underrun
AO: [macosx] Buffer underrun

Change History (3)

comment:1 by reimar, 19 years ago

Maybe try with latest CVS. I ported the ao_sdl buffering code, so there are no
mutexes and locking in ao_macosx. I doubt it will help in this case, but you
never know...

comment:2 by devchan1@…, 19 years ago

Well I just tried mplayer. -ao macosx works when the loop parameter is before
and after the file name. In short the bug is fixed for me.
Thanks.

comment:3 by reimar, 19 years ago

Resolution: fixed
Status: newclosed
Note: See TracTickets for help on using tickets.