This is a sample raw AC3 file that demonstrates the liba52 SSE/3Dnow optimization bugs. Just play the .ac3 file with mplayer and hear the cracks. I have tried by disabling SSE and 3DNow extensions in the code and the cracks disappear indeed. What follows is a -v log of mplayer playing that file. Ignacy Gawedzki MPlayer 1.0rc2-4.1.3 (C) 2000-2007 MPlayer Team CPU: AMD Athlon(tm) 64 Processor 3200+ (Family: 15, Model: 31, Stepping: 0) CPUflags: MMX: 1 MMX2: 1 3DNow: 1 3DNow2: 1 SSE: 1 SSE2: 1 Compiled with runtime CPU detection. get_path('codecs.conf') -> '/opt/users/ig/.mplayer/codecs.conf' Reading /opt/users/ig/.mplayer/codecs.conf: 115 audio & 237 video codecs Configuration: --prefix=/usr --confdir=/etc/mplayer --mandir=/usr/share/man --win32codecsdir=/usr/lib/win32 --enable-runtime-cpudetection --enable-largefiles --disable-libdvdcss-internal --enable-smb --enable-ftp --enable-cdparanoia --enable-radio --enable-lirc --enable-joystick --enable-xf86keysym --disable-tremor-internal --enable-liba52 --enable-musepack --enable-speex --enable-libvorbis --enable-mad --enable-mp3lib --enable-theora --enable-libdv --enable-libmpeg2 --enable-tv-v4l2 --enable-alsa --enable-ossaudio --enable-esd --enable-arts --enable-pulse --enable-nas --enable-xinerama --enable-menu --enable-xv --enable-vm --enable-gl --enable-xmga --enable-mga --enable-3dfx --enable-tdfxfb --enable-sdl --enable-aa --enable-caca --enable-dxr3 --enable-xvmc --with-xvmclib=XvMCW --enable-ggi --enable-fbdev --enable-freetype --enable-gif --enable-png --enable-jpeg --enable-liblzo --enable-fribidi --enable-ladspa --enable-gui --enable-mencoder CommandLine: '-quiet' '-v' 'liba52-cracks-sample.ac3' init_freetype font: can't open file: Verdana Cannot load bitmap font: Verdana Using MMX (with tiny bit MMX2) Optimized OnScreenDisplay get_path('fonts') -> '/opt/users/ig/.mplayer/fonts' Using nanosleep() timing get_path('input.conf') -> '/opt/users/ig/.mplayer/input.conf' Parsing input config file /opt/users/ig/.mplayer/input.conf Input config file /opt/users/ig/.mplayer/input.conf parsed: 0 binds Setting up LIRC support... get_path('liba52-cracks-sample.ac3.conf') -> '/opt/users/ig/.mplayer/liba52-cracks-sample.ac3.conf' Playing liba52-cracks-sample.ac3. get_path('sub/') -> '/opt/users/ig/.mplayer/sub/' [file] File size is 262144 bytes STREAM: [file] liba52-cracks-sample.ac3 STREAM: Description: File STREAM: Author: Albeu STREAM: Comment: based on the code from ??? (probably Arpi) LAVF_check: raw ac3 Checking for YUV4MPEG2 ASF_check: not ASF guid! Checking for NuppelVideo Checking for REAL Checking for SMJPEG Searching demuxer type for filename liba52-cracks-sample.ac3 ext: .ac3 Trying demuxer 35 based on filename extension LAVF_check: raw ac3 libavformat file format detected. ==> Found audio stream: 0 [lavf] Audio stream found, -aid 0 ======= WAVE Format ======= Format Tag: 8192 (0x2000) Channels: 2 Samplerate: 48000 avg byte/sec: 32000 Block align: 1 bits/sample: 0 cbSize: 0 ========================================================================== LAVF: 1 audio and 0 video streams found LAVF: build 3345920 ========================================================================== Forced audio codec: mad Opening audio decoder: [liba52] AC3 decoding with liba52 dec_audio: Allocating 3840 bytes for input buffer. dec_audio: Allocating 6144 + 65536 = 71680 bytes for output buffer. Using SSE optimized IMDCT transform AC3: 2.0 (stereo) 48000 Hz 256.0 kbit/s A52 flags before a52_frame: 0x2A A52 flags after a52_frame: 0x2 Using MMX optimized resampler AUDIO: 48000 Hz, 2 ch, s16le, 256.0 kbit/16.67% (ratio: 32000->192000) Selected audio codec: [a52] afm: liba52 (AC3-liba52) ========================================================================== Building audio filter chain for 48000Hz/2ch/s16le -> 0Hz/0ch/??... [libaf] Adding filter dummy [dummy] Was reinitialized: 48000Hz/2ch/s16le [dummy] Was reinitialized: 48000Hz/2ch/s16le alsa-init: requested format: 48000 Hz, 2 channels, 9 alsa-init: using ALSA 1.0.14a alsa-init: setup for 1/2 channel(s) alsa-init: using device default alsa-init: pcm opened in blocking mode alsa-init: chunksize set to 1024 alsa-init: fragcount=16 alsa-init: got buffersize=65536 alsa-init: got period size 1024 alsa: 48000 Hz/2 channels/4 bpf/65536 bytes buffer/Signed 16 bit Little Endian AO: [alsa] 48000Hz 2ch s16le (2 bytes per sample) AO: Description: ALSA-0.9.x-1.x audio output AO: Author: Alex Beregszaszi, Zsolt Barat AO: Comment: under developement Building audio filter chain for 48000Hz/2ch/s16le -> 48000Hz/2ch/s16le... [dummy] Was reinitialized: 48000Hz/2ch/s16le [dummy] Was reinitialized: 48000Hz/2ch/s16le Video: no video Freeing 0 unused video chunks. Starting playback... ds_fill_buffer: EOF reached (stream: audio) ds_fill_buffer: EOF reached (stream: audio) ds_fill_buffer: EOF reached (stream: audio) EOF code: 1 Uninit audio filters... [libaf] Removing filter dummy Uninit audio: liba52 alsa-uninit: pcm closed vo: x11 uninit called but X11 not inited.. Exiting... (End of file)