dj magazine  



Search DJzone

This Issue
Daily News


Issue Archives
DJ Games
DJ Musiclists
DJ Book Store
Gear Mall
DJ Software





Reducing gaps and jumps when playing MP3 music

The MPEG Layer 3 Compression Standard

Over the last few years, new data compression technologies have made it possible to compress digital audio and video by a factor 10 or more. One of the most popular compression standards is the MPEG standard, which compresses video and audio data. MPEG Layer 3 is, also known as MP3, is the MPEG standard currently used for compressing audio data and is by far the most popular format for compressed music and other audio files. The MP3 compression scheme is fairly complex and includes a number of compression algorithms, but essentially it removes all parts of the sounds that are less likely to be percepted by human ears. For example, if there's a loud drum you probably won't hear a person whispering in the background, and consequently the whispering person can be removed without much difference in percepted quality. The result is similar to an oil painting where most of the pencil strokes are used to paint the foreground objects that are likely to catch your attention.

MP3 Audio streams and buffering

Like most popular compression technologies, MP3 is fairly complicated in terms of the number of calculations needed to turn your MP3 files back into music. Unlike other many other compression algorithms though, you usually expect to hear the result as soon as you select a new file. To make this possible, mp3 decoders uses a technique known as streaming, which means that the CPU will decode the mp3 file on the fly. Since modern computers can usually decode mp3 audio streams much faster than you can listen to them, this is rarely a problem. To ensure that the song will continue to play even when mp3 software is interrupted for a brief period time (This happens many times per second in a multitasking OS like Windows.), the mp3 decoder usually works a little faster than the playback speed and buffers the audio data that will be played within the next few seconds. Although this buffer is long enough to remove most gaps and jumps, it is still a possible in Windows for some other program to use the CPU for more than a few seconds. For example, when you start a large and complex program like Word or plays a game there might not be enough CPU time left for the MP3 decoder to keep the audio buffer filled, resulting in a buffer underrun error. This often causes the MP3 player to skip a few kilobytes of audio data, or to stop playing for a few milliseconds. The result can be some very annoying gaps and jump or loud clicks in the music (If you skip a part of a digitally sampled continuous sound wave, you will get a discrete jump which sounds like a loud, high frequent clicking noise to human ears)

Avoiding gaps and noises

Most operating systems that support multitasking, also assigns different priorities to different tasks, so that you can tell the system which tasks are more important. Windows is no exception and, even though many users are not aware of this, you can assign different priorities to different processes in Windows 98 as well as Windows XP and Windows 2000 if you have the right tools. WinTasks 4 will not only help you change the priority of any process, but it will also give you valuable information on system processes and other processes to help you decide what to modify without crashing the system. This information can also be very useful when tracking down a specific problem. Sometimes you may also have to terminate some unnecessary processes to free up other resources like memory, but assigning the right priorities will usually be sufficient. If you are running Windows NT, 2000 or XP, WinTasks will give you detailed logs on the CPU and memory usage for each process during the last 24 hours. This information is often critical when you want to optimize your system to run smoothly for longer periods of time.

Things to consider when you are having problems playing mp3 files: 

1. If the computer has been running for a very long time, reboot it to make sure the system is completely stable. 

2. Assign a higher priority to the MP3 player process, and if there are other processes running at a high priority that requires a lot of CPU time, lower their priorities to normal. I recommend using WinTasks to help you decide exactly which processes to modify without causing stability problems. Since WinTasks assigns user friendly names to most processes, it will also be a lot easier to actually find the process you are locking for.

3. Terminate all programs that aren't absolutely necessary. You will be surprised by the number of processes running in the backgroung on most systems, consuming valuable resources. Try creating a WinTasks preset so that you won't have to repeat this step every time you reboot. Or if you have WinTasks 4 Professional you could use the WinTasks autostart feature to permanently remove any unwanted processes.

4. Make sure you have the latest drivers installed for your sound card. Drivers can usually be found at the manufacturers web site.

5. Defrag your hard drive to improve access times, or if you are playing MP3s from a CD, make sure you have the latest drivers and the correct settings for your CD drive.

Of course, don't forget to get a good, fast MP3 player that is optimized for the latest processors. 

Written by Emil Malmberg, Senior Software Developer for LIUtilities



powered by



web hosting | how to advertise | submit an article  

  about DJzone

DJzone network: | | | | | | | |

   DJzone | letters to the editor | features | reviews | daily music news | classifieds | resources

Copyright © 2001 DJzone, Inc. All rights reserved.