Table of Contents
![Mixxx Mixxx](https://www.mixxx.org/wiki/lib/exe/fetch.php/skinning:creating_skins:mixxx1.9_gui_positioning_outline.png)
If you were directed here from the Sound Hardware preferences in Mixxx, see Adjusting Audio Latency.
If you've got a question that's not answered here, please post in the forums. Please be sure you are using the latest version of Mixxx before you ask for help. The latest version is available on the download page.
Broadcasting or recording signal is silent
Check if you have anything configured for the Record/Broadcast input in the Sound Hardware section of the Preferences. When this input is configured, Mixxx will broadcast and record the signal from it instead of the output of Mixxx. This is for recording and broadcasting from an external hardware mixer or an audio interface with a loopback input. If you are not using either of those, do not configure the Record/Broadcast input. You probably want to use a Microphone input instead. Refer to the Using Microphones section of the manual for more information.
Graphical user interface (GUI) is too big or too small
@dolcevita This is the first time in my whole life I'm dealing with xml files (well in fact, before october this year, I did not even writte a single line of code, except some macros in MS Office programs), so could you explain it a little bit more what are the xml features, or at least where to find a.
As of Mixxx 2.2, Mixxx uses Qt's automatic scaling for high pixel density screens. Unfortunately, this does not always work well. Sometimes it uses scaling to make the GUI too big on screens that do not need scaling, or if your screen does require scaling you may prefer a different size than the automatically determined default. You can disable automatic scaling with…
Linux
Open a shell console and type:
- As for now I know of a little workaround for this. Make a backupcopy of the.mixxxtrack.xml file in which you have created your set. After this you can open the original.mixxxtrack.xml file with an editor of your choice and replace all occurances of the old path with the new path.
- Start mixxx and under settings change your music folder to the new one. If you want you can do a rescan to check that the music files do not turn up twice suddenly (if you are on linux, do especially check music files which where in symbolically linked directory). Check if bpm and other meta infomation like cue points are still stored with the files.
- XPath Path Expressions. XPath uses path expressions to select nodes or node-sets in an XML document. These path expressions look very much like the expressions you see when you work with a traditional computer file system. XPath expressions can be used in JavaScript, Java, XML Schema, PHP, Python, C and C, and lots of other languages.
before running Mixxx from that shell. Alternatively, you can manually set a scale factor by running
To avoid needing to run these commands every time you run Mixxx, you can add them to /etc/profile or ~/.bashrc (assuming you are using Bash as your shell), log out, and log back in.
Windows
Open a command prompt ( cmd ) and type:
You can also manually set a scale factor by running
Then type the full path to your Mixxx.exe file, or cd to the directory where it is and run it. Usually “C:Program FilesMixxxMixxx.exe”
To avoid needing to run these commands every time you run Mixxx, you can create batch file (which is a text file with the extensions .bat or .cmd) with the set QT_AUTO_SCREEN_SCALE_FACTOR=0 line, and the full path to Mixxx.exe. Then doubleclick this file instead of Mixxx shortcut to launch it.
Refer to Qt's documentation for details.
Other programs do not make sound while Mixxx is running
On GNU/Linux, running Mixxx from a GUI menu or from the launcher icon automatically suspends PulseAudio while Mixxx is running so Mixxx can use your sound card with ALSA directly. To keep other programs playing sound, either they all need to use JACK, or you can try using the “pulse” virtual ALSA device with Mixxx when running Mixxx on the command line without pasuspender. Refer to the Mixxx manual for more information about sound APIs. If you use JACK and do not want Mixxx to pause PulseAudio, you can edit /usr/share/applications/mixxx.desktop to change the line:
Exec=sh -c “pasuspender – mixxx || mixxx”
to
Exec=mixxx
On Windows, the recommended ASIO sound API typically requires that only one program uses a sound card at a time. Refer to the Mixxx manual for more information about sound APIs.
I can't select my sound card in the Sound Hardware preferences
Check that your sound card is plugged in. If it has its own power supply, make sure that is plugged in too. If it has a power switch, check that it is switched on.
Mixxx only detects sound cards on startup. If you plugged your sound card in after starting Mixxx, restart Mixxx and look again under Sound Hardware in Options > Preferences.
Windows
On Windows, you need to have a driver for each sound sound card you are trying to use with the sound API you have configured. Generally, consumer grade sound cards like those built into computer motherboards and external monitors do not have ASIO drivers. Check the sound card manufacturer's website for an ASIO driver to download and install. If there is no ASIO driver for your sound card, it might be possible to use ASIO4ALL, but ASIO4ALL is a wrapper around WDM-KS, so it may be better to use WDM-KS directly. ASIO4ALL can be helpful for using a sound card that has an ASIO driver together with another sound card that does not have an ASIO driver. Refer to the manual for more information about different sound APIs.
If you are running Mixxx on Windows 10, try following these suggestions from Audacity. Mixxx and Audacity both use the PortAudio library to access sound cards on multiple OSs, so those suggestions apply to both programs.
If you are considering what sound card to get for use with Mixxx, read the DJ Hardware Guide.
GNU/Linux
If you are starting Mixxx from a command line on GNU/Linux, you probably need to suspend or disable PulseAudio. On most GNU/Linux distributions today, the PulseAudio sound server is automatically started upon logging in. PulseAudio is convenient for most desktop audio use, but it is not good for audio use that requires low latency like Mixxx. The PulseAudio daemon occupies the ALSA device while it is running. To temporarily disable PulseAudio while Mixxx is running, start it with
pasuspender mixxx
. The .desktop launcher icon for Mixxx does this automatically. To run Mixxx with command line options, such as --mididebug
, put --
between pasuspender
and the rest of the command. For example, run pasuspender -- mixxx --mididebug
Bluetooth audio is delayed
Bluetooth audio always has a high latency and is not recommended for DJing. Bluetooth audio also uses lossy compression which reduces the audio quality. Use wired connections instead.
What should I do to get Mixxx to run the best it can on my computer?
First, try each option for waveform renderer in Preferences > Waveforms > Summary type and Overview type. Different options will work better on different combinations of video card, video driver, and operating system. Lower the framerate to the lowest it needs to be before you notice the waveforms flicker. Also see Adjusting Audio Latency.
How can I get Mixxx to run well on an old or slow computer?
In Preferences > Sound Hardware, select “Soundtouch (faster)” for Keylock/Pitch-Bending Engine. Be careful not to make big changes in tempo to a track with keylock on because it will not sound good with Soundtouch. See also What should I do to get Mixxx to run the best it can on my computer?
Master signal is silent or too low
In Preferences > Equalizers, check if the master EQ is enabled. Disable or reset to defaults to test whether this is the cause.
In Preferences > Normalization, check if both target Loudness and Initial Boost are at reasonable values. If in doubt, reset the page to default values.
In the skin, check if microphone talkover ducking is enabled (set to Auto or Manual). Even with no microphone configured this setting could affect Master volume to the extent that Master is silent if the Ducking knob is turned all the way to the left. In case you have such a knob on your controller, check that as well, as its position might be read the next time you start Mixxx.
My controller does not work
To use a MIDI or HID controller with Mixxx, enable the device and load a mapping. Go to Options > Preferences in Mixxx and look for your controller under the “Controllers” label on the left. Check the “Enabled” box, select a mapping from the drop down menu and press “Ok”. If Mixxx did not come with a mapping for your controller, search the forum to see if anyone has made one. If not, you can map it yourself.
If your controller does not show up under “Controllers” on the left side of Mixxx's preferences window, Mixxx did not detect your controller. Check that your controller is plugged into your computer. If your controller has its own power supply, check that the power supply is plugged in. If your controller has a power switch, make sure it is on. Note that Mixxx will only detect controllers on start up, so if you plugged in your controller after starting Mixxx, restart Mixxx and go back to the Preferences window.
If you are sure your controller is connected but it still does not show up in Mixxx, read the appropriate section below. If you do not know whether your controller is a MIDI controller or HID controller, search for it on the DJ Hardware Guide. If it is not listed there, it is most likely a MIDI device.
Some controllers have their own pecularities that are noted on their own wiki pages. If the information below does not solve your problem, check the wiki page for your controller, which you can find a link to on the DJ Hardware Guide.
MIDI controllers on GNU/Linux
Make sure that the snd-seq-midi kernel module has been loaded. Open a console and run
lsmod | grep snd_seq_midi
to check if the module has been loaded. If it has not, run modprobe snd-seq-midi
as root and restart Mixxx.HID and USB Bulk controllers on GNU/Linux
If your controller does not appear in the list of controllers on the left pane of Mixxx's Preferences (under the “Controllers” section), Mixxx may not have permission to use your HID or USB Bulk device. (Mixxx will say something to this effect in the log when it scans for controllers.) Mixxx should automatically install a udev rule to give users in the group called “users” permission to use HID and USB Bulk devices. It is installed with the Ubuntu PPA and RPMFusion package as well as when installing Mixxx from source (if you have write access to /etc/udev/rules.d when running
scons install
), however packages for other distributions might not install it correctly.Up to version 2.2.x
If you still do not see your controller on the left side of Mixxx's Preferences, check that your user account is in the group “users”. Open a console and run the command
groups
to find out what groups your user is in. If users
is not listed, run usermod -aG users YOUR-USER-NAME
as root to add YOUR-USER-NAME to the “users” group, log out, and log back in.If you did not install Mixxx from the Ubuntu PPA or RPMFusion, you may need to save save this file to
/etc/udev/rules.d/mixxx-usb-uaccess.rules
. You will need root privileges (use sudo
or su
) to copy the file to that location. Then, restart your computer.Version 2.3 and later
Please refer to the instructions in the udev .rules file. Both install location and target file name depend on your Linux distribution.
Mixxx says my sound card does not support the sample format
First try using each of the Sample Rate options on the Audio Hardware page in Mixxx's preferences. (You have to press OK or Apply after changing the setting for it to take effect.) Nearly all sound interfaces support at least one of 48000 Hz or 44100 Hz so try both of those first.
If that doesn't help and you're on Linux, try opening a console and running
export PA_ALSA_PLUGHW=1
before running mixxx
(or pasuspender mixxx
, see above). To avoid having to do this every time you run Mixxx, add export PA_ALSA_PLUGHW=1
to the end of /etc/profile or ~/.bashrc, log out, and log back in. This will tell PortAudio, the library Mixxx uses to interact with sound hardware on multiple operating systems, to use ALSA's plughw devices rather than hw. plughw automatically converts audio streams to a sample format supported by the sound card.I can't preview tracks in headphones
This requires either a sound card with 4 (mono) output channels, multiple sound cards, or a DJ splitter cable. See the DJ Hardware Guide for more information. Both the Master and Headphones outputs must be configured in the Sound Hardware section of Options > Preferences.
To make the track playing in your headphones not play on the main output, turn the volume down on the deck you do not want your audience to hear yet (or push the crossfader all the way to the opposite side) then press the headphone ('PFL') button for that deck. This will not turn down the volume in your headphones; it will only turn down the volume on the main output.
I hear crackling
Your audio latency may be set lower than your system can handle. See the Adjusting Audio Latency page for tips on adjusting your latency.
There is a delay before I hear a change in the audio
Your audio latency may be set too high. See the Adjusting Audio Latency page for tips on adjusting your latency.
My sound card randomly stops working
This can happen when poor quality USB cables pick up electromagnetic interference. Some sound cards are bundled with poor quality USB cables. Sending digital audio over USB requires a clear, uninterrupted signal transmitted at regular time intervals (isochronus transfer). This is more sensitive to interference than most USB signals. Try using a different USB cable if you have one. If that does not work, consider getting a Chroma Cable from DJ Tech Tools. These are high quality USB cables made specifically for DJs with a ferrite bead on each end to dissipate high frequency interference as heat. Additionally, try to avoid having your USB cables near sources of interference like other devices' power cables.
Also see this guide from Native Instruments for identifying USB cables that are better for DJ gear.
I have some other issue with sound on Windows
Try different options for the sound API. If the manufacturer of your sound card provides an ASIO driver, it is recommended to install that and use ASIO. Select which sound API to use in Options > Preferences > Sound Hardware. See the manual for an explanation of the different sound APIs.
I hear the microphone input echoed back with a delay
Refer to the Using Microphones chapter of the manual.
BPM of tracks is not shown in my library
Scanning and analyzing the library are separate steps because analyzing tracks takes a lot of CPU resources and time. When a track that has not been analyzed is loaded, Mixxx will analyze its BPM and Replay Gain as well as generate the waveform. You can analyze your whole library in advance so you can see the BPM of every track in your library before loading it. When you have time to let your computer run for a long time (for example, before you go to sleep), go to “Analyze” on the left panel of the library display in Mixxx's main window. Select the “All” button on the top left, click the “Select All” button on the top right, then click the “Analyze” button in the top right.
New songs are not shown in my library
Click Library→Rescan library, wait for the scan to finish, and search for your new music.
My music was not detected by the library scanner
Mixxx supports the following audio file formats:
- OGG/Vorbis (as OGG files, not OGA)
- MP3
- AIFF
- WavPack (WV) (with plugin)
If your music isn't currently in one of these formats (or you don't have a suitable plugin installed) it won't show up in the Mixxx library. You'll need to use a program like Sox, Audacity, or ffmpeg to convert it.
What do I enter for the user name in Live Broadcasting?
- For an Icecast2 server, the user name is source by default.
- For a Shoutcast server, the user name is admin by default.
Beatgrid is not aligned with the beats
If the detected BPM of a track is correct but the beat markers are not in the correct place, seek the track to where a beat starts. Click the “Adjust beatgrid” icon in the grid of icons to the right of the overview waveform. This is the bottom left icon in the grid.
BPM detection is wrong
Try adjusting the BPM analyzer's range. Go to Options > Preferences > Beat Detection, adjust the numbers, and press okay. Reanalyze your tracks.
I have a decently fast system & video card. Why does Mixxx seem to crawl or pin the CPU?
We've seen this a few times and it has always been a video driver problem. Make sure you have the latest drivers for your card. (You may need to get them from the chipset maker (nVidia, AMD/ATI) rather than the system board or computer manufacturer, since the manufacturer drivers aren't always the latest.) Also, if you're on Windows, make sure you have the latest DirectX installed. See also What should I do to get Mixxx to run the best it can on my computer?
Xml File Example
Mixxx freezes, crashes, or otherwise misbehaves and I have an nVidia graphics card
Before you try anything else, please update or reinstall your nVidia graphics driver. (This applies to all OSes.) Even if it is the same exact version, apparently it is fickle and needs to be rebuilt/reinstalled any time things change in the OS. Try this first before going any further. You might also try getting the latest driver from nVidia's web site instead of your PC/card manufacturer since they may be newer.
If you are using GNU/Linux, try uninstalling the proprietary nVidia driver and using the free nouveau driver.
Errors on starting Mixxx
Could not open xml file: “/usr/local/share/mixxx/schema.xml”
happens to people that have built Mixxx from source but didn't do the install step. You can either do that (with sudo scons install
) or explicitly tell Mixxx where to look for resources with the -
-resourcePath
command line parameter, like so: ./mixxx -
-resourcePath res/
How can I move my music to another folder or hard drive without losing information like BPM or cue points?
Unfortunately, this does not yet work automagically but needs some manual fiddling with the music configuration files. Here is one way of doing it:
- Backup your mixxx configuration files (under Linux, this is
.mixxx/
in the home folder) - Move your music folder to the new folder or new hard drive
- Install SQLite Manager, which is a Firefox extension that lets you manipulate the mixxx database: https://addons.mozilla.org/de/firefox/addon/sqlite-manager/
- Open the SQLite Manager from within firefox. Within SQLite Manager open the file
mixxxdb.sqlite
that can be found in your mixxx configuration folder - Go on
Execute SQL
and enter:where the old and new paths point to your corresponding music folders. - Then hit
Run SQL
. The above statements will replace all instances of/old/path/DJ/Music/
to/new/path/DJ/Music/
in the field of location and directory of track_locations table. - Start
mixxx
and under settings change your music folder to the new one. If you want you can do a rescan to check that the music files do not turn up twice suddenly (if you are on linux, do especially check music files which where in symbolically linked directory). Check if bpm and other meta infomation like cue points are still stored with the files.
Starting with a new configuration
Sometimes an old or invalid configuration setting can cause Mixxx to do strange or unexpected things. It's always a good idea to try with a fresh, clean default configuration to see if your problem disappears.
First, close Mixxx completely. Then rename your Mixxx configuration directory:
Xml File Converter
- Linux: The configuration is stored in a hidden directory called
.mixxx
off of your home directory. Rename it using the console command - Open a File Explorer window and browse to
%LOCALAPPDATA%
. - Rename the
Mixxx
folder there to something else likeMixxx-Backup
.
- macOS: Rename your Mixxx configuration directory by opening a Terminal (under Applications → Utilities) and entering
Then start Mixxx again and test to see if your problem still exists. (You can rename or copy the directory back to restore your settings when you're done testing.)
Mixxx on Wayland
Some Linux distributions like Fedora 31 switched to using QtWayland as the default platform plugin for Qt applications in a Wayland desktop environment. This does not work as expected for Mixxx. There are two options to enforce using the X11 platform plugin
xcb
instead of wayland
:- Start Mixxx with the command-line argument
-platform xcb
The desktop launchers in the source repository already include this fix.
Troubleshooting other issues (Finding the mixxx.log file)
Translations of this page:
Xml File Format
Hi there,I have the next problem when I trying to compile the app under windows 7:
- Code: Select all
Checking for C library vamp-sdk.. no
WE ARE IN: C:UsersAriMau-JinnDocumentsMixer Projecttrunkmixxxwin32_build
scons: done reading SConscript files.
scons: Building targets ..
protoc -Isrc --cpp_out=win32_build srcprotobeats.proto
'protoc' is not recognized as an internal or external command,
operable program or batch file.
scons: *** [win32_buildprotobeats.pb.cc] Error 1
scons: building terminated because of errors.
I'm using this command to compile with scons:
- Code: Select all
C:UsersAriMau-JinnDocumentsMixer Projecttrunkmixxx>scons toolchain=msvs winlib=C:mixxx-win32lib-msvc90-release force32=1
scons: Reading SConscript files ..
INFO:root:Target Platform: windows
INFO:root:Target Machine: x86
INFO:root:Build: debug
INFO:root:Toolchain: msvs
INFO:root:Crosscompile: NO
INFO:root:Static dependencies: NO
INFO:root:MSVC Debug build: NO
INFO:root:Qt path: C:Qt4.8.3
Loading qt4 tool..
Deleting deprecated build file: C:UsersAriMau-JinnDocumentsMixer Projecttrunkmixxxsrcbuild.h
Configuring MixxxCore
Configuring SoundTouch
Configuring ReplayGain
Configuring PortAudio
Checking for C library portaudio.. yes
Configuring PortMIDI
Checking for C library porttime.. yes
Checking for C library portmidi_s.. no
Checking for C library portmidi.. yes
Checking for C header file portmidi.h.. yes
Configuring Qt
Configuring FidLib
Configuring SndFile
Checking for C library sndfile.. yes
Configuring FLAC
Checking for C header file FLAC/stream_decoder.h.. yes
Checking for C library libFLAC.. yes
Configuring OggVorbis
Checking for C library libvorbisfile.. yes
Checking for C library libvorbis.. yes
Checking for C library libogg.. yes
Configuring OpenGL
Checking for C library GL.. no
Checking for C library opengl32.. yes
Checking for C library GLU.. no
Checking for C library glu32.. yes
Configuring TagLib
Checking for C library tag.. yes
Configuring ProtoBuf
Checking for C library libprotobuf-lite.. yes
Configuring HifiEq
Configuring Mad
Checking for C library libmad.. yes
Checking for C library libid3tag.. yes
Configuring CoreAudio
Configuring MediaFoundation
Configuring HSS1394
Checking for C library libhss1394.. no
Checking for C library hss1394.. yes
Configuring HID
Checking for C library setupapi.. yes
Configuring Bulk
Configuring VinylControl
Configuring Shoutcast
Checking for C library libshout.. yes
Configuring Profiling
Configuring Tuned
Configuring QDebug
Configuring Verbose
Configuring Optimize
Configuring FAAD
Configuring WavPack
Configuring TestSuite
Configuring LADSPA
Configuring MSVCDebug
Configuring MSVSHacks
Configuring Vamp
Checking for C library vamp-hostsdk.. no
Checking for C header file fftw3.h.. no
Checking for C library fftw3.. no
Configuring PerfTools
Configuring AsmLib
Configuring Tonal
Configuring IPod
Configuring FFMPEG
Features Summary:
Mixxx Core Features.. Enabled
High quality EQs.. Enabled
MAD MP3 Decoder.. Enabled
CoreAudio MP3/AAC Decoder.. Disabled
Media Foundation AAC Decoder Plugin.. Disabled
HSS1394 MIDI device support.. Enabled
HID controller support.. Enabled
USB Bulk controller support.. Disabled
Vinyl Control.. Enabled
Shoutcast Broadcasting (OGG/MP3).. Enabled
gprof/Saturn profiling support.. Disabled
Optimizing for this CPU.. Disabled
Debugging message output.. Enabled
Verbose compilation output.. Enabled
Optimization and Tuning.. Enabled -- Maximize Speed (/O2)
FAAD AAC audio file decoder plugin.. Disabled
WavPack audio file support plugin.. Disabled
Mixxx Test Suite.. Disabled
Experimental LADSPA Support.. Disabled
MSVC Debugging.. Disabled
MSVS 2005 hacks.. Disabled
Vamp Analysers support.. Enabled
Google PerfTools.. Disabled
Agner Fog's ASMLIB.. Disabled
NOT-WORKING Tonal Audio Detection.. Disabled
NOT-WORKING iPod Support.. Disabled
NOT-WORKING FFMPEG support.. Disabled
Building with flags: hid hifieq hss1394 mad optimize qdebug shoutcast sqlitedll vamp verbose vinylcontrol
Building with CC: cl
Building with CXX: $CC
Building with CCFLAGS: /nologo /GL /MP /fp:fast /Gy /O2 /MD
Building with CPPDEFINES: -Dx86 -D__WINDOWS__ -D_ATL_MIN_CRT -DUNICODE -DWIN32 -DSETTINGS_PATH='Local Settings/Application Data/Mixxx/' -DBPMSCHEME_FILE='mix
xxbpmscheme.xml' -DSETTINGS_FILE='mixxx.cfg' -DTRACK_FILE='mixxxtrack.xml' -DWIN32 -D__PORTAUDIO__ -DQT_SHARED -DQT_TABLET_SUPPORT -D__SNDFILE__ -D__MAD__
-D__HSS1394__ -D__HID__ -D__VINYLCONTROL__ -D__SHOUTCAST__ -D__VAMP__
Building with CXXFLAGS: $( /TP $) /Zc:wchar_t-
Building with LINKFLAGS: /nologo /MACHINE:x86 /LTCG:STATUS /OPT:REF /OPT:ICF /MANIFEST /nodefaultlib:LIBCMT.lib /nodefaultlib:LIBCMTd.lib /entry:mainCRTStartup
/subsystem:windows /manifest
Building with LIBS: shell32 portaudio porttime portmidi QtCore4 QtGui4 QtOpenGL4 QtXml4 QtWebKit4 QtNetwork4 QtXmlPatterns4 QtSql4 QtScript4 sndfile libFLAC lib
vorbisfile libvorbis libogg opengl32 glu32 tag libprotobuf-lite libmad libid3tag hss1394 setupapi libshout
Checking for C library vamp-sdk.. no
WE ARE IN: C:UsersAriMau-JinnDocumentsMixer Projecttrunkmixxxwin32_build
scons: done reading SConscript files.
scons: Building targets ..
protoc -Isrc --cpp_out=win32_build srcprotobeats.proto
'protoc' is not recognized as an internal or external command,
operable program or batch file.
scons: *** [win32_buildprotobeats.pb.cc] Error 1
scons: building terminated because of errors