# This is a configuration file for the MOC player. It should be named 'config' # and placed in directory ~/.moc/ # Comments begins with '#'. # You can use quotes and escape ('\') in parameters # Show file titles (title, author, album) instead of file names. ReadTags = yes # Directory in which you store music files, if you specify it, you will be able # to quickly go to this directory with the '-m' parameter or the 'm' command. # This can also point to a playlist. MusicDir = "/home/username/media/music" # How to sort? FileName is the only option for now. Sort = FileName # Show errors in the streams, for example CRC errors or broken frames in mp3 # files ShowStreamErrors = no # Ignore CRC errors in MP3 files. Most players do that, so the default value is # set to yes. Mp3IgnoreCRCErrors = yes # Turn on repeat. Repeat = no # Turn on shuffle. Shuffle = no # Turn on AutoNext AutoNext = yes # Default FormatString # %n - Track number # %a - Artist # %A - Album # %t - Title # %(X:TRUE:FALSE) - ternary expression - if X exists, do TRUE, otherwaise # FALSE. '\' - escape character (must be double, because of # config interpreter). man zshmisc for more info. FormatString = "%(n:%n :)%(a:%a - :)%(t:%t:)%(A: \(%A\):)" # Output buffer size in kilobytes. Minimum value is 128KB. */ OutputBuffer = 2048 # Input buffer size in kilobytes. Minimum value is 32KB. */ InputBuffer = 512 # How much to fill the input buffer before playing (in kilobytes)? # This can't be more than InputBuffer value. # Remember that for network streams beside the positive effect this also causes # delay between what you can hear and what is broadcasted. Prebuffering = 64 # Use this HTTP proxy server for internet streams. If not set, the # environmential variables http_proxy and ALL_PROXY will be used if present. #HTTPProxy = my_proxy:port # Sound driver - OSS, ALSA, JACK, or null (only for debugging) # You can enter more than one driver separated by a coma. The first working # driver will be used. SoundDriver = JACK, ALSA, OSS # Jack output settings JackOutLeft = "alsa_pcm:playback_1" JackOutRight = "alsa_pcm:playback_2" # OSS output device OSSDevice = /dev/dsp # OSS Mixer device OSSMixerDevice = /dev/mixer # OSS Mixer channel: pcm or master OSSMixerChannel = pcm # Second OSS Mixer channel: pcm or master OSSMixerChannel2 = master # ALSA mixer device AlsaMixer = PCM # Second ALSA mixer device #AlsaMixer2 = Master # ALSA output device AlsaDevice = default # Save software mixer state ? # If enabled, a file 'softmixer' will # be created in '~/.moc/' storing the # mixersetting set when the server is shut-down. # Note that there is a 'hidden' 'Amplification' # setting in that file. # Amplification (0-200) is used to scale # the mixer setting (0-100). This results # in a higher signal amplitude but may also # produce clipping. #Softmixer_SaveState = yes # Show files with dot at the beginning? ShowHiddenFiles = no # Start in the music directory if no arguments are given. If set to no, start # in the current directory. StartInMusicDir = no # Hide file name extensions HideFileExtension = no # Show file format in menu. ShowFormat = yes # Show file time in menu. Possible options: yes, no, IfAvailable - show the # time only when it was read before (often works faster) ShowTime = IfAvailable # Theme file. This can be absolute path or relative to # /usr/share/moc/themes/ (depends on installation prefix) or ~/.moc/themes/ Theme = dot_theme # The theme used when running on on xterm # XTermTheme = transparent-background # MOC directory - where pid file, socket, and state files are stored. # You can use ~ at the begining # MOCDir = ~/.moc # Use mmap() to read files. mmap() is much slower on NFS. UseMmap = no # Perform character set conversion using iconv() to tags and file names # read from playlist files. This option has format: FROM:TO. # To get list of supported sets use the iconv -l command. # Assume this encoding for ID3 version 1/1.1 tags (mp3 files). Unlike ID3v2 # UTF-8 is not used here and MOC can't guess how tags are encoded. Another # solution is using librcc (see the next option). This option is ignored # if UseRCC is set to yes. #ID3v1TagsEncoding = WINDOWS-1250 # Use librcc to fix ID3 version 1/1.1 tags encoding. #UseRCC = yes # Use librcc to filenames and directory names encoding. #UseRCCForFilesystem = yes # Remember the playlist after exit? SavePlaylist = yes # When using more than one client (interface) at a time, do the share the # playlist? SyncPlaylist = yes # Choose a keymap file (relative to ~/.moc/ or absolute path) # Example keymap with description is included (keymap.example). #Keymap = my_keymap # Use ASCII characters instead of graphic for drawing lines. This helps on # some terminals. ASCIILines = no # FastDirs, these allow you jump directly to a directory, the key bindings are # in the keymap file. Fastdir1 = /home/tox/media/mp3/ Fastdir2 = /home/tox/tmp/ Fastdir3 = /home/tox/media/mp3/streams/ #Fastdir4 = /mp3/etc #Fastdir5 = #Fastdir6 = #Fastdir7 = #Fastdir8 = #Fastdir9 = #Fastdir10 = # How fast to seek? Number of seconds per key stroke. SeekTime = 5 # How fast to seek (when using silent seeking)? Number of seconds per key # stroke. SilentSeekTime = 60 # Resample method to use. There are few methods of resampling sound supported # by libresamplerate. The default is the fastest (linear). Better description # is here: http://www.mega-nerd.com/libsamplerate/api_misc.html#Converters # # High quality (based on bandlimited interpolation), but slow methods: # # SincBestQuality - really slow (I know you probably have an xx GHz processor, # but it's not enough to not see this in the top output :) # The worst case Signal-to-Noise Ratio is 97dB. # SincMediumQuality - much faster # SincFastest - the fastest bandlimited interpolation # # Poor quality, but much faster methods: # # ZeroOrderHold - really poor quality, but it's really fast # Linear - a bit better and a bit slower # #ResampleMethod = Linear # Always use this sample rate when opening the audio device (and resample the # sound is necessary). When set to 0 the device is opened with the file's rate. #ForceSampleRate = 48000 # By default even if the sound card reports that it can output 24bit samples # MOC converts 24bit PCM to 16bit. This option set to yes allows MOC to use # 24bit output (for example MP3 decoder uses this format). This is disabled # in the default configuration because there were reports that it prevents # from playing MP3 files on some soundcards. #Allow24bitOutput = no # Use realtime priority for output buffer thread. This will prevent gaps while # playing even with heavy load. The user which runs MOC must have permissions # to set such a priority. This could be dangerous, because it is possible that # a bug in MOC will freeze your computer. #UseRealtimePriority = no # Size of the in-memory cache for file tags in KB. TagsCacheSize = 1024 # Number items in the playlist. #PlaylistNumbering = yes # Main window layoutis can be configured. You can change the position and the # size of the menus (directory and playlist). You have 3 layouts ant switch # between then using the 'l' key (standard mapping). By default only 2 layouts # are configured. # # The format is as folows: # Each menu is described in format NAME:POSITION_X,POSITION_Y,WIDTH,HEIGHT # NAME is directory or playlist # Other parameters define position and size of the menu. They can be absolute # numbers (like 10) or a percent value of the screen size (like 45%). # WIDTH and HEIGHT can have value of FILL which means fill the screen from # the menu's position to the border. # Separate menu descriptions using a space. # Menus may overlap. # You must describe at least one menu (default is to fill the whole window). # There must be at least one layout (Layout1) defined. Other can be empty (""). # # Examples: # # Just one layout, the directory will occupy the whole screen, the playlist # will have 1/4 of the screen size and be positioned at lower right corner. # Layout1 = "playlist:50%,50%,50%,50%" # Layout2 = "" # Layout3 = "" # # The scrren is split into two parts: playlist at the top and the directory # menu at the bottom. Playlist will occupy 10 lines and the directory menu # the rest. # Layout1 = "playlist:0,0,100%,10 directory:0,10,100%,FILL" # # Default configuration: Layout1 = "directory:0,0,50%,100% playlist:50%,0,50%,100%" Layout2 = "directory:0,0,100%,100% playlist:0,0,100%,100%" Layout3 = "directory:0,0,80%,100% playlist:80%,0%,20%,100%" # When the song changes, should the menu be scrolled so that the currently # played file is visible? FollowPlayedFile = yes # What to do if the interface was started and something from the playlist is # playing? If CanStartInPlaylist is set to "yes", the interface will switch to # the playlist. When set to "no" it will start from the last directory. CanStartInPlaylist = yes # Executing external commands (1 - 10) invoked with key commands (F1 - F10 by # default). # Some arguments are substituted befor executing: # %f - file path # %i - title made from tags # # Data from tags: # %t - title # %a - album # %r - artist # %n - track # %m - time of the file (in seconds) # # Parameters above applys to the currently selected file. If you change them to # capital letters, they are taken from the currently played file. # # Programms are run using execv(), not a shell, so you can't do things like # redirecting the output to a file. The command string is split using blank # characters as separators, the first element is the command to be executed # and the rest are parameters, so if you use "echo Playing: %i" we run program # echo (from $PATH) with 2 parameters: 'Playing:' string and the title. Even # if the title contains spaces it's still one parameter and it's safe if it # contains `rm -rf /`. # # Examples: ExecCommand1 = "/home/tox/media/mp3/streams/updateStream.sh /home/tox/media/mp3/streams" # ExecCommand2 = "/home/joe/now_playing %i" ExecCommand3 = "/home/tox/media/mp3/streams/updateStream.sh /home/tox/media/mp3/streams" ExecCommand4 = "/home/tox/.moc/sync.sh scdir %f" ExecCommand5 = "/home/tox/.moc/sync.sh spdir %f" # Display the cursor in the line with the selected file. This can be usefu with # a braille display. # UseCursorSelection = no # Set the terminal title when running under xterm. SetXtermTitle = yes # Set the terminal title when running under screen. SetScreenTitle = yes # Display full paths instead of just file names in the playlist. #PlaylistFullPaths = yes # Enable oversampling (yes/no) #ModPlug_Oversampling = yes # Enable noise reduction (yes/no) #ModPlug_NoiseReduction = yes # Enable reverb (yes/no) #ModPlug_Reverb = yes # Enable mega-bass (yes/no) #ModPlug_MegaBass = yes # Enable surround (yes/no) #ModPlug_Surround = yes # Resampling mode. One of FIR/SPLINE/LINEAR/NEAREST # FIR : 8 tap fir filter (extremely high quality) # SPLINE : Cubic spline interpolation (high quality) # LINEAR : Linear interpolation (fast, good quality) # NEAREST : No interpolation (very fast, extremely bad sound quality) #ModPlug_ResamplingMode = FIR # Number of channles (1 or 2) #ModPlug_Channels = 2 # Bits per sample (8,16,32). 32 Bits seems ot be buggy... #ModPlug_Bits = 16 # Sampling rate (11025, 22050, 44100, 48000) #ModPlug_Frequency = 44100 # Reverb level 0(quiet)-100(loud) #ModPlug_ReverbDepth = 0 # Reverb delay in ms, usually 40-200ms #ModPlug_ReverbDelay = 0 # Bass level 0(quiet)-100(loud) #ModPlug_BassAmount = 0 # Bass cutoff in Hz (10-100) #ModPlug_BassRange = 10 # Surround level 0(quiet)-100(heavy) #ModPlug_SurroundDepth = 0 # Surround delay in ms, usually 5-40ms #ModPlug_SurroundDelay = 0 # Number of times to loop. Zero prevents looping. -1 loops forever. #ModPlug_LoopCount = 0 #TiMidity-Options # Rate must be in between 8000 and 48000 #TiMidity_Rate = 44100 # Bitrate is 8 or 16 #TiMidity_Bits = 16 # Channels is 1 or 2 #TiMidity_Channels = 2 # Volume-Range is 0-800 #TiMidity_Volume = 100 # You can setup a TiMidity-Config-File here # Leave unset to use library defaults (/etc/timidity.cfg mostly) #TiMidity_Config = # SidPlay2-Options # Default length of a song if not in database (seconds) #SidPlay2_DefaultSongLength = 180 # Play at least a specific time if song is shorter (seconds) #SidPlay2_MinimumSongLength = 0 # Set path to a HVSC-compatible database (if not set, database is disabled) #SidPlay2_Database # Sampling Frequency (4000-48000Hz) #SidPlay2_Frequency = 44100 # Sampling Resolution (8/16) #SidPlay2_Bits = 16 # Playback Mode : # "M": Mono (best for mady SIDs) # "S": Stereo # "L"/"R": Left / Right #SidPlay2_PlayMode = "M" # Optimisation-level (0-2), 0 is best quality #SidPlay2_Optimisation = 0 # Use start-song information from SID (1) or start at first song (0) # Songs before the start-song won't be played. #SidPlay2_StartAtStart = 1 # Play sub-tunes #SidPlay2_PlaySubTunes = 1 # OnSongChange # Specify the full path (i.e. no ~) of an executable to run # Arguments will be passed, and you can use the following escapes: # %a artist # %r album # %f filename # %t title # %n track # %d file duration in XX:YY form # %D file duration, number of seconds # # No pipes/redirects can be used directly, but writing a shell # script can do the job. # # Example: # #OnSongChange = "/home/jack/.moc/myscript %a %r" # OnStop # Run the following command (full path, no arguments) when MOC changes state # to stopped (when user stopped playing or changes a song). # #OnStop = "/home/jack/.moc/myscript_on_stop"