MPD Help

[phil@fml ~]$ mpd /home/phil/.mpd/config
failed to stat music directory "/phil/music": No such file or directory
db_file setting missing
Aborted
[phil@fml ~]$ cat /home/phil/.mpd/config/mpd.conf
cat: /home/phil/.mpd/config/mpd.con: No such file or directory
[phil@fml ~]$ cat /home/phil/.mpd/config/mpd.conf
music_directory "/home/phil/music"
playlist_directory "/home/phil/.mpd/playlists"
db_file "/home/phil/.mpd/mpd.db"
log_file "/home/phil/.mpd/mpd.log"
pid_file "/home/phil/.mpd/mpd.pid"
state_file "/home/phil/.mpd/state"
user "phil"
[phil@fml ~]$ ls -l | grep music
drwxr-xr-x 2 phil users 4096 Feb 6 21:09 music
[phil@fml ~]$
I have tried changing the "phil" user to "mpd", which didn't help. Any ideas?
Last edited by Dethredic (2010-02-10 21:36:23)

Mineo wrote:
Dethredic wrote:[phil@fml ~]$ mpd /home/phil/.mpd/config
failed to stat music directory "/phil/music": No such file or directory
db_file setting missing
Aborted
So /home/phil/.mpd/config is a file.
Dethredic wrote:[phil@fml ~]$ cat /home/phil/.mpd/config/mpd.conf
music_directory "/home/phil/music"
playlist_directory "/home/phil/.mpd/playlists"
db_file "/home/phil/.mpd/mpd.db"
log_file "/home/phil/.mpd/mpd.log"
pid_file "/home/phil/.mpd/mpd.pid"
state_file "/home/phil/.mpd/state"
user "phil"
Now /home/phil/.mpd/config is a directory with mpd.conf in it. Is it me being stupid or is there something wrong here?
I copied it directly from the wiki. I will try in out in an hour when I get home.
Chokkan wrote:I don't have the trailing / in my config file. Just to eliminate the obvious, are you mixing up Music and music?
I'm not. In my origional post I have a ls -l | grep music, and you can see a dir comes up.

Similar Messages

  • Help with dynamic playlist for mpd

    Hi guys,
    I use mpd with sonata for playing my music, and after trying exaile there is one thing id really like for mpd, and that is the dynamic playlist function.
    When you're playing a song in exaile with dynamic playlist enabled, it queries audioscrobbler and automatically adds similar artists/songs to your playlist (if you have them on your pc).
    I dont want to use exaile as it just feels too big and slow and bloated (not KISS ), i know a little bit of python so i thought i'll try and make my own little script/program as Sonata has audioscrobbler support, but i dont think there is anyway to query similar artists.
    I think im going to try and make this as a daemon type program that will run in the background adding songs to the playlist.
    Ive found the code from the exaile source (audioscrobbler.py) which queries lastfm e.g.
    >>> lips = AudioScrobblerQuery(artist='The Flaming Lips')
    >>> for artist in lips.similar():
    ... print artist.name, artist.mbid
    This will print a list of similar artists to the flaming lips.
    I've not done much with python so i thought this would be a good way to try and improve.
    Does anyone have any suggestions as to what the best way to go about searching and comparing the results to my mpd database, would the best way just to be to search the mpd.db?
    And if anyone else has any ideas/comments id like to hear them.
    Edit:
    I just found this too, so i may only need to change some things to integrate it with mpd rather than amarok
    http://www.kde-apps.org/content/show.php?content=31920
    Thanks
    Last edited by Kane (2008-06-05 13:24:33)

    well i just modified the patch into a little script, it does what i need
    its here if anyone wants it
    import audioscrobbler
    import mpd
    import random
    import time
    lastsong = {}
    def timer_control():
    get_similar()
    time.sleep(10)
    timer_control()
    def get_similar():
    audioscrobbler
    client = mpd.MPDClient()
    client.connect("localhost", 6600)
    mpdstatus = client.status()
    prevsonginfo = client.currentsong()
    global lastsong
    if mpdstatus['state'] == "stop": return
    if prevsonginfo == lastsong: return
    lastsong = prevsonginfo
    similarartists = ""
    song = prevsonginfo
    #if not song: break #No song, do nothing
    prevartist = song['artist']
    # Is the info already cached?
    similar_cache = {}
    if similar_cache.has_key(prevartist):
    similarartists = similar_cache[prevartist]
    else:
    #Not cached so fetch from Audioscrobbler
    try:
    similarartists = [artist.name for artist in audioscrobbler.AudioScrobblerQuery(artist=prevartist).similar()]
    # Cache search results and save some time next search
    similar_cache[prevartist] = similarartists
    except audioscrobbler.AudioScrobblerError:
    similar_cache[prevartist] = None # Empty cache
    return # Do nothing!
    if not similarartists: return # Empty list
    # Split list in half and sort upper half
    # this means good matches will have priority
    # but makes sure artist A does not always result in artist B
    half_idx = len(similarartists)/2
    upperhalf = similarartists[:half_idx]
    lowerhalf = similarartists[half_idx:]
    random.shuffle(upperhalf)
    artistlist = upperhalf
    artistlist.extend(lowerhalf)
    # Try each artist in order
    for artist in artistlist:
    try:
    print "Trying:",artist
    songs = client.search("artist", artist)
    if not songs: continue
    selected_song = random.sample(songs, 1)[0]
    client.add(selected_song['file'])
    print "Added", selected_song['title'],"by",selected_song['artist']
    # Delete old song from playlist?
    break
    except mpd.MPDError, e:
    print "MPDError", e.message
    continue
    except ValueError, e:
    print "ValueError:",e.message
    continue
    timer_control()
    Last edited by Kane (2008-06-06 16:22:49)

  • Help with a mpd parsing script

    Hi... I am trying to create html outputs including album ratings via bash script parsing mpd.
    The way I want it to work: I have a "rating.txt" file in each album directory.
    i parse mpd info (artist first column, album 2nd column) and create a html file out of it.
    this works fine. but i can't figure out how to get the ratings in the final file.
    this is what i tried:
    #!/bin/bash
    echo '<html>
    <head>
    <meta http-equiv="content-type" content="text/html; charset=utf-8" />
    <meta name="robots" content="noindex" />
    <title>My Music</title>
    <body>
    <script type="text/javascript" src="jquery.min.js"></script>
    <script type="text/javascript" src="jquery.tablesorter.js"></script>
    <script type="text/javascript"><!--
    --></script>
    <h1>My Music</h1>
    <table id="music" class="tablesorter">
    <thead>
    <tr>
    <th>Artist</th>
    <th>Album</th>
    <th>Rating</th>
    </tr>
    </thead>
    <tbody>'
    while IFS='/' read -r artist
    do
    printf "<tr><td>%b</td><td>" "$artist"
    while IFS='/' read -r f1 f2 f3 f4
    do
    #echo "$f1"
    printf "%b<br />\n" "$f3"
    done < <(mpc find albumartist "$artist") | sort -u
    echo "</td><td>$(cat "/mnt/wasteland/Audio/Rips/$(mpc find albumartist "$artist" | cut -d '/' -f 1-3 | uniq)"/album_rating.txt)</td></tr>"
    done < <(mpc list albumartist)
    echo "</table></body></html>"
    any ideas?
    Last edited by Rasi (2014-02-24 17:53:17)

     Use [⁣code][⁣/code] tags to mark output of a command or scripts. Also refrain from using backticks, use $() instead, so in your case:
    for i in $(seq 1 11); do sleep 0.5; mpc volume -5; done;
    script;
    for i in $(seq 1 11); do sleep 0.5; mpc volume +5; done;
     It does not really matter for something as simple as seq, but it is a good practice to make it a habit.
    Open Group wrote:Because of these inconsistent behaviors, the backquoted variety of command substitution is not recommended for new applications that nest command substitutions or attempt to embed complex scripts.
     Since the sequence is run only twice it does not really matter, but should you want to change it often or run it multiple times or in multiple variations, consider using it as a function:
    mpc-fade() {
    for i in $(seq 1 $1); do sleep $2; mpc volume $3; done;
    mpc-fade 11 0.5 -5
    script
    mpc-fade 11 0.5 +5

  • Help With My Setup...

    I Hope I'm in the right forum, If not let me know where this post should go.
    Thanks for helping me out. I have some questions regarding my setup and acquiring new gear. Currently, I have a the following setup:
    IMac - newer model
    Logic Pro 9
    Numark tt-usb turntable
    Stanton DJ mixer
    Pair of Yamaha HS80 monitors
    MPD 24
    I would like to add a keyboard controller (I'm thinking of the new Korg Microsampler). Basically, I'm willing to get the microsampler as long as it can Fully function like a controller, which can control logic synths & plug-ins(axiom, mpk, etc.) and as well as it's own features. Furthermore, I would like to to be able to record from my turntable to logic and into the microsampler. I understand I would need an interface. Would I still need the mixer? Would the M-Audio Firewire Solo work with my setup?
    Would a control surface take place of an Interface?
    I am possibly interested in getting a control surface that works good within logic. I was looking at the Euphonix MC Control, it seems to work great with logic. Is there an cheaper alternative? Also, I would like it to be user friendly, I am new to this.
    Essentially, I want everything to work simple & smoothly. I like to make sample based music from records. Can you give me a rundown of the necessary items I'm going to need...cables, interface, etc.
    Sorry, if I'm rambling just want to be clear.
    I appreciate your time....

    I use a Alesis multimix FW and a presonus inspire.
    I would guess that you should always get dry sound from any output with firewire plugged in or not. My inspire uses a software control panel to route signal and the Multimix is all hardware. I have no clue how to route signal with the firebox but it has to be one or the other. Presonus is pretty good with updates and bug fixes did you check for new drivers?

  • Having a few issues with several programs (tor / mpd / ccm..)

    Hey everybody,
    I'll arrange this post in 3 parts since I have 3 different kinds of "major" problems or questions .
    1st ( tor - privoxy - polipo - iptables )
    I somehow found this article in your wiki and therefore tried to get tor and privoxy up and running on my desktop machine, as this didn't work as I hoped it would I searched farther in the wiki and installed and configured (as far as I've thought of) polipo and iptables.
    Now I've put all 4 of them in my rc.conf, but somehow some of my http connections don't seem to work in chromium while iptables is running (https works fine though [e.g. archwiki works, youtube doesn't]).
    I did everything as suggested in the polipo wiki entry, meaning I changed my /etc/iptables/iptables.rules to
    *nat
    :PREROUTING ACCEPT [0:0]
    :POSTROUTING ACCEPT [0:0]
    :OUTPUT ACCEPT [0:0]
    -A OUTPUT -p tcp --dport 80 -m owner --uid-owner polipo -j ACCEPT
    -A OUTPUT -p tcp --dport 80 -j REDIRECT --to-ports 8123
    COMMIT
    and removed all proxy settings from my browser - meaning all corresponding flags in the startcommand. I also added "forward / localhost:8123" to the privoxy config and changed the polipo configuration according to the wiki in order to work with tor (the socksParentProxy, socksProxyType part).
    now the next problem - that might probably be related to the first - is that my privoxy doesn't load in daemon mode anymore.
    I think it's since I've installed polipo that privoxy began to refuse starting together with the other daemons
    [usR@machine ~]$ privoxy
    Apr 23 00:20:56.459 b75086c0 Fatal error: can't check configuration file '/home/usR/config': No such file or directory
    this is the output I get when I try to start privoxy in normal user mode from the terminal, when I try starting the daemon manually (/etc/rc.d/privoxy start) it says
    touch: cannot touch `/var/log/privoxy/logfile': Permission denied
    chgrp: cannot access `/var/log/privoxy/logfile': Permission denied
    chmod: cannot access `/var/log/privoxy/logfile': Permission denied
    touch: cannot touch `/var/log/privoxy/jarfile': Permission denied
    chgrp: cannot access `/var/log/privoxy/jarfile': Permission denied
    chmod: cannot access `/var/log/privoxy/jarfile': Permission denied
    Apr 23 00:22:34.490 b76396c0 Fatal error: Cannot setgid(): Insufficient permissions.
    [/var/log/privoxy belongs to privoxy:adm]
    when I do the same in sudo mode it just fails without displaying an error message..
    I added this code to the /etc/rc.d/privoxy executable but I still get this owner conflict error and I have no idea what might be causing it.
    if [ ! -d /var/log/privoxy ]
    then
    mkdir /var/log/privoxy
    touch /var/log/privoxy/errorfile
    touch /var/log/privoxy/logfile
    chown -R privoxy:adm /var/log/privoxy
    fi
    If the order of the daemons in rc.conf is of any real importance here a copy of my setup
    ( @polipo @privoxy @syslog-ng !set-hw-addr !iptables @network netfs hddtemp @crond hal dbus @alsa @slim @tor )
    2nd ( mpd & mpc )
    I'm just wondering if there's a way to output the position of a track in the current playlist combined with a search. since mpc search <type> <query> only prints out full file path and name, but not the position in the playlist so that you could play it with mpc play. I thought of a method to print out the whole list with mpc playlist and pipe this output into a listing program, than grep out the song I'm looking for all that in a little bash script, to replace mpc search.
    Is there an integrated mpc search function that works the way I imageine it and my idea therefore redundant, or if not, is it realizable the way I picture it; does such a listing program exist?
    3rd ( cairo-compmgr )
    Since I'm already posting here I thought I'd mention my older problem which I  still couldn't solve.
    1st) I need to start cairo-compmgr(-git) in sudo mode to be able to edit any settings or activate the gui in any way. how do I automatically start the program on startup in sudo mode? I tried editing ~/.fluxbox/startup & ~/.fluxbox/init, even tried adding it in /etc/rc.d/ and /etc/rc.conf in order to start it as a daemon (lol, noob) but none of that worked properly obviously Any ideas? I don't want to start it manually and "waste" a terminal window for that every time I boot.
    2nd) I can change opacity (transparency) in both versions only per hotkey, and when I do so the settings don't get saved, they even get reset to normal opacity as soon as another window gets selected. does anybody know if there's a config file or any way to save opacity settings for certain windows & programs, so that they automatically get loaded when cairo starts and stay applied until it gets closed?
    [or generally: how do I configure the Plugins? ]
    the last "problem" which occurs only with cairo-compmgr-git:
    When I rightclick the ccm icon in the task bar and disable the composite desktop, the whole program kills itself oO
    In the old version the option "Composite desktop"'s box just got un-checked and I could easily restart ccm by rightclicking the logo again and re-enabling the "Composite desktop" option.
    Any clues on that by any chance?
    I'm using Fluxbox by the way, if that's of any importance for any of the problems. hope I didn't forget any important information if so please remind me
    Would be thankful for any kind of help
    have a nice weekend
    deF
    //edit:
    concernig the tor / privoxy problem, I managed getting all the daemons to start up at bootup again, my iptables situation remains the same though.
    I went through all the config files again and played around with chown and chmod a little and for now the system is stable, everytime I reboot all the daemons start without any problems.
    but when i start chromium with --proxy-server=localhost:8118 now, I get the following error message
    The following error occurred while trying to access http://torcheck.xenobite.eu/index.php?:
    504 Connect to torcheck.xenobite.eu:80 failed: SOCKS error: network unreachable
    Generated Sat, 23 Apr 2011 04:49:08 CEST by Polipo on archzor.localdomain:8118.
    notably with all programs running now, tor, polipo, privoxy (and by now dansguardian as well)..
    I'm tired so I'll go asleep now, maybe I'll find something tomorrow in the logfiles or whatever, so far:
    every kind of help is still very appreciated
    ²
    /var/log/polipo/polipo.log
    Disabling disk cache: No such file or directory
    Couldn't bind: Address already in use
    Couldn't establish listening socket: Address already in use
    Couldn't bind: Address already in use
    Last edited by deF291 (2011-04-23 03:13:48)

    okay I've finally been able to get tor and all the other programs to work according to my plan the only thing that's still making problems is that iptables doesn't work as I want it to, when I start chromium without proxy settings privoxy doesn't seem to forward the information to polipo.. do I need to add another rule to iptables.rules in order for the program to know it has to reroute the information again or how can I get this to work? and is there any way to run rtorrent with proxy support?
    anyway, problem 2 and 3 are still to be solved.
    and does anybody know where i can get a good dansguardian blacklist that was not designed for 6 year old children and for which I don't need to subscribe? I'm still getting these partypoker popups -.-
    //e: with iptables it's the same thing as described in the first post. https works, http doesnt. I get the output "Invalid header received from client." on http sites. still no idea why though.. (and the https-version of torcheck.xenubite says i'm tor unprotected while starting the browser with iptables)
    Last edited by deF291 (2011-04-23 16:16:31)

  • [SOLVED] Mpd and sonata doesn't seem to work

    Hi guys!
    I 'm facing with an issue . I can't seem to configure mpd correctly to run it with sonata .
    I've followed the alternative setup from archwiki and this is my config file .
    # An example configuration file for MPD
    # See the mpd.conf man page for a more detailed description of each parameter.
    # Files and directories #######################################################
    # This setting controls the top directory which MPD will search to discover the
    # available audio files and add them to the daemon's online database. This
    # setting defaults to the XDG directory, otherwise the music directory will be
    # be disabled and audio files will only be accepted over ipc socket (using
    # file:// protocol) or streaming files over an accepted protocol.
    music_directory "/home/andreas/Downloads/Torrents"
    # This setting sets the MPD internal playlist directory. The purpose of this
    # directory is storage for playlists created by MPD. The server will use
    # playlist files not created by the server but only if they are in the MPD
    # format. This setting defaults to playlist saving being disabled.
    playlist_directory "/home/andreas/.mpd/playlists"
    # This setting sets the location of the MPD database. This file is used to
    # load the database at server start up and store the database while the
    # server is not up. This setting defaults to disabled which will allow
    # MPD to accept files over ipc socket (using file:// protocol) or streaming
    # files over an accepted protocol.
    db_file "/home/andreas/.mpd/mpd.db"
    # These settings are the locations for the daemon log files for the daemon.
    # These logs are great for troubleshooting, depending on your log_level
    # settings.
    # The special value "syslog" makes MPD use the local syslog daemon. This
    # setting defaults to logging to syslog, otherwise logging is disabled.
    log_file "/home/andreas/.mpd/mpd.log"
    # This setting sets the location of the file which stores the process ID
    # for use of mpd --kill and some init scripts. This setting is disabled by
    # default and the pid file will not be stored.
    pid_file "/home/andreas/.mpd/mpd.pid"
    # This setting sets the location of the file which contains information about
    # most variables to get MPD back into the same general shape it was in before
    # it was brought down. This setting is disabled by default and the server
    # state will be reset on server start up.
    state_file "/home/andreas/.mpd/mpdstate"
    # General music daemon options ################################################
    # This setting specifies the user that MPD will run as. MPD should never run as
    # root and you may use this setting to make MPD change its user ID after
    # initialization. This setting is disabled by default and MPD is run as the
    # current user.
    user "andreas"
    # This setting sets the address for the daemon to listen on. Careful attention
    # should be paid if this is assigned to anything other then the default, any.
    # This setting can deny access to control of the daemon.
    # For network
    #bind_to_address "any"
    # And for Unix Socket
    #bind_to_address "~/.mpd/socket"
    # This setting is the TCP port that is desired for the daemon to get assigned
    # to.
    #port "6600"
    # This setting controls the type of information which is logged. Available
    # setting arguments are "default", "secure" or "verbose". The "verbose" setting
    # argument is recommended for troubleshooting, though can quickly stretch
    # available resources on limited hardware storage.
    #log_level "default"
    # If you have a problem with your MP3s ending abruptly it is recommended that
    # you set this argument to "no" to attempt to fix the problem. If this solves
    # the problem, it is highly recommended to fix the MP3 files with vbrfix
    # (available from <http://www.willwap.co.uk/Programs/vbrfix.php>), at which
    # point gapless MP3 playback can be enabled.
    #gapless_mp3_playback "yes"
    # This setting enables MPD to create playlists in a format usable by other
    # music players.
    #save_absolute_paths_in_playlists "no"
    # This setting defines a list of tag types that will be extracted during the
    # audio file discovery process. Optionally, 'comment' can be added to this
    # list.
    #metadata_to_use "artist,album,title,track,name,genre,date,composer,performer,disc"
    # Symbolic link behavior ######################################################
    # If this setting is set to "yes", MPD will discover audio files by following
    # symbolic links outside of the configured music_directory.
    #follow_outside_symlinks "yes"
    # If this setting is set to "yes", MPD will discover audio files by following
    # symbolic links inside of the configured music_directory.
    #follow_inside_symlinks "yes"
    # Zeroconf / Avahi Service Discovery ##########################################
    # If this setting is set to "yes", service information will be published with
    # Zeroconf / Avahi.
    #zeroconf_enabled "yes"
    # The argument to this setting will be the Zeroconf / Avahi unique name for
    # this MPD server on the network.
    #zeroconf_name "Music Player"
    # Permissions #################################################################
    # If this setting is set, MPD will require password authorization. The password
    # can setting can be specified multiple times for different password profiles.
    #password "password@read,add,control,admin"
    # This setting specifies the permissions a user has who has not yet logged in.
    #default_permissions "read,add,control,admin"
    # Input #######################################################################
    input {
    plugin "curl"
    # proxy "proxy.isp.com:8080"
    # proxy_user "user"
    # proxy_password "password"
    # Audio Output ################################################################
    # MPD supports various audio output types, as well as playing through multiple
    # audio outputs at the same time, through multiple audio_output settings
    # blocks. Setting this block is optional, though the server will only attempt
    # autodetection for one sound card.
    # See <http://mpd.wikia.com/wiki/Configuration#Audio_Outputs> for examples of
    # other audio outputs.
    # An example of an ALSA output:
    #audio_output {
    # type "alsa"
    # name "My ALSA Device"
    ## device "hw:0,0" # optional
    ## format "44100:16:2" # optional
    ## mixer_device "default" # optional
    ## mixer_control "PCM" # optional
    ## mixer_index "0" # optional
    # An example of an OSS output:
    #audio_output {
    # type "oss"
    # name "My OSS Device"
    ## device "/dev/dsp" # optional
    ## format "44100:16:2" # optional
    ## mixer_device "/dev/mixer" # optional
    ## mixer_control "PCM" # optional
    # An example of a shout output (for streaming to Icecast):
    #audio_output {
    # type "shout"
    # encoding "ogg" # optional
    # name "My Shout Stream"
    # host "localhost"
    # port "8000"
    # mount "/mpd.ogg"
    # password "hackme"
    # quality "5.0"
    # bitrate "128"
    # format "44100:16:1"
    ## protocol "icecast2" # optional
    ## user "source" # optional
    ## description "My Stream Description" # optional
    ## genre "jazz" # optional
    ## public "no" # optional
    ## timeout "2" # optional
    # An example of a httpd output (built-in HTTP streaming server):
    #audio_output {
    # type "httpd"
    # name "My HTTP Stream"
    # encoder "vorbis" # optional, vorbis or lame
    # port "8000"
    ## quality "5.0" # do not define if bitrate is defined
    # bitrate "128" # do not define if quality is defined
    # format "44100:16:1"
    # An example of a pulseaudio output (streaming to a remote pulseaudio server)
    #audio_output {
    # type "pulse"
    # name "My Pulse Output"
    ## server "remote_server" # optional
    ## sink "remote_server_sink" # optional
    ## Example "pipe" output:
    #audio_output {
    # type "pipe"
    # name "my pipe"
    # command "aplay -f cd 2>/dev/null"
    ## Or if you're want to use AudioCompress
    # command "AudioCompress -m | aplay -f cd 2>/dev/null"
    ## Or to send raw PCM stream through PCM:
    # command "nc example.org 8765"
    # format "44100:16:2"
    ## An example of a null output (for no audio output):
    #audio_output {
    # type "null"
    # name "My Null Output"
    # This setting will change all decoded audio to be converted to the specified
    # format before being passed to the audio outputs. By default, this setting is
    # disabled.
    #audio_output_format "44100:16:2"
    # If MPD has been compiled with libsamplerate support, this setting specifies
    # the sample rate converter to use. Possible values can be found in the
    # mpd.conf man page or the libsamplerate documentation. By default, this is
    # setting is disabled.
    #samplerate_converter "Fastest Sinc Interpolator"
    # Volume control mixer ########################################################
    # These are the global volume control settings. By default, this setting will
    # be detected to the available audio output device, with preference going to
    # hardware mixing. Hardware and software mixers for individual audio_output
    # sections cannot yet be mixed.
    # An example for controlling an ALSA, OSS or Pulseaudio mixer; If this
    # setting is used other sound applications will be affected by the volume
    # being controlled by MPD.
    #mixer_type "hardware"
    # An example for controlling all mixers through software. This will control
    # all controls, even if the mixer is not supported by the device and will not
    # affect any other sound producing applications.
    #mixer_type "software"
    # This example will not allow MPD to touch the mixer at all and will disable
    # all volume controls.
    #mixer_type "disabled"
    # Normalization automatic volume adjustments ##################################
    # This setting specifies the type of ReplayGain to use. This setting can have
    # the argument "album" or "track". See <http://www.replaygain.org> for more
    # details. This setting is disabled by default.
    #replaygain "album"
    # This setting sets the pre-amp used for files that have ReplayGain tags. By
    # default this setting is disabled.
    #replaygain_preamp "0"
    # This setting enables on-the-fly normalization volume adjustment. This will
    # result in the volume of all playing audio to be adjusted so the output has
    # equal "loudness". This setting is disabled by default.
    #volume_normalization "no"
    # MPD Internal Buffering ######################################################
    # This setting adjusts the size of internal decoded audio buffering. Changing
    # this may have undesired effects. Don't change this if you don't know what you
    # are doing.
    #audio_buffer_size "2048"
    # This setting controls the percentage of the buffer which is filled before
    # beginning to play. Increasing this reduces the chance of audio file skipping,
    # at the cost of increased time prior to audio playback.
    #buffer_before_play "10%"
    # Resource Limitations ########################################################
    # These settings are various limitations to prevent MPD from using too many
    # resources. Generally, these settings should be minimized to prevent security
    # risks, depending on the operating resources.
    #connection_timeout "60"
    #max_connections "10"
    #max_playlist_length "16384"
    #max_command_list_size "2048"
    #max_output_buffer_size "8192"
    # Character Encoding ##########################################################
    # If file or directory names do not display correctly for your locale then you
    # may need to modify this setting. After modification of this setting mpd
    # --create-db must be run to change the database.
    #filesystem_charset "UTF-8"
    # This setting controls the encoding that ID3v1 tags should be converted from.
    #id3v1_encoding "ISO-8859-1"
    All the files required are in my /home/andreas/.mpd/ directory
    config
    mpd.db
    mpd.error
    mpd.log
    mpd.pid
    mpdstate
    playlists
    I've also added to my .xinitrc file
    mpd /home/andreas/.mpd/config
    I 'm sure i've done something wrong but don't know what it is . If anyone could help me out i would be grateful
    THanks a for all your help!
    Last edited by shak (2010-04-19 23:08:09)

    shak wrote:
    I've followed the first method with the mpd daemon and everything worked fine .
    THanks for all your help everyone !
    The add of MPD : ALL to hosts.allow seems to solved it .
    Thanks again!
    Nice.
    Please mark threads as [SOLVED] when they are. You can do so by editing the opening post.

  • [SOLVED]mpd does not detect the music directory

    I recently installed mpd with the gmpc gui, set my "music_directory" in /etc/mpd.conf to the location of all of my music (which contains lots of other folders and subfolders), but there's no listing of the audio files in the database in gmpc.
    Here's the /etc/mpd.conf if that helps:
    # An example configuration file for MPD
    # See the mpd.conf man page for a more detailed description of each parameter.
    # Files and directories #######################################################
    # This setting controls the top directory which MPD will search to discover the
    # available audio files and add them to the daemon's online database. This
    # setting defaults to the XDG directory, otherwise the music directory will be
    # be disabled and audio files will only be accepted over ipc socket (using
    # file:// protocol) or streaming files over an accepted protocol.
    music_directory "/var/lib/mpd/music"
    # This setting sets the MPD internal playlist directory. The purpose of this
    # directory is storage for playlists created by MPD. The server will use
    # playlist files not created by the server but only if they are in the MPD
    # format. This setting defaults to playlist saving being disabled.
    playlist_directory "/var/lib/mpd/playlists"
    # This setting sets the location of the MPD database. This file is used to
    # load the database at server start up and store the database while the
    # server is not up. This setting defaults to disabled which will allow
    # MPD to accept files over ipc socket (using file:// protocol) or streaming
    # files over an accepted protocol.
    db_file "/var/lib/mpd/mpd.db"
    # These settings are the locations for the daemon log files for the daemon.
    # These logs are great for troubleshooting, depending on your log_level
    # settings.
    # The special value "syslog" makes MPD use the local syslog daemon. This
    # setting defaults to logging to syslog, otherwise logging is disabled.
    log_file "/var/log/mpd/mpd.log"
    # This setting sets the location of the file which stores the process ID
    # for use of mpd --kill and some init scripts. This setting is disabled by
    # default and the pid file will not be stored.
    pid_file "/var/run/mpd/mpd.pid"
    # This setting sets the location of the file which contains information about
    # most variables to get MPD back into the same general shape it was in before
    # it was brought down. This setting is disabled by default and the server
    # state will be reset on server start up.
    state_file "/var/lib/mpd/mpdstate"
    # The location of the sticker database. This is a database which
    # manages dynamic information attached to songs.
    #sticker_file "~/.mpd/sticker.sql"
    # General music daemon options ################################################
    # This setting specifies the user that MPD will run as. MPD should never run as
    # root and you may use this setting to make MPD change its user ID after
    # initialization. This setting is disabled by default and MPD is run as the
    # current user.
    user "mpd"
    # This setting specifies the group that MPD will run as. If not specified
    # primary group of user specified with "user" setting will be used (if set).
    # This is useful if MPD needs to be a member of group such as "audio" to
    # have permission to use sound card.
    #group "nogroup"
    # This setting sets the address for the daemon to listen on. Careful attention
    # should be paid if this is assigned to anything other then the default, any.
    # This setting can deny access to control of the daemon.
    # For network
    #bind_to_address "any"
    # And for Unix Socket
    #bind_to_address "~/.mpd/socket"
    # This setting is the TCP port that is desired for the daemon to get assigned
    # to.
    #port "6600"
    # This setting controls the type of information which is logged. Available
    # setting arguments are "default", "secure" or "verbose". The "verbose" setting
    # argument is recommended for troubleshooting, though can quickly stretch
    # available resources on limited hardware storage.
    #log_level "default"
    # If you have a problem with your MP3s ending abruptly it is recommended that
    # you set this argument to "no" to attempt to fix the problem. If this solves
    # the problem, it is highly recommended to fix the MP3 files with vbrfix
    # (available from <http://www.willwap.co.uk/Programs/vbrfix.php>), at which
    # point gapless MP3 playback can be enabled.
    #gapless_mp3_playback "yes"
    # This setting enables MPD to create playlists in a format usable by other
    # music players.
    #save_absolute_paths_in_playlists "no"
    # This setting defines a list of tag types that will be extracted during the
    # audio file discovery process. Optionally, 'comment' can be added to this
    # list.
    #metadata_to_use "artist,album,title,track,name,genre,date,composer,performer,disc"
    # This setting enables automatic update of MPD's database when files in
    # music_directory are changed.
    #auto_update "yes"
    # Limit the depth of the directories being watched, 0 means only watch
    # the music directory itself. There is no limit by default.
    #auto_update_depth "3"
    # Symbolic link behavior ######################################################
    # If this setting is set to "yes", MPD will discover audio files by following
    # symbolic links outside of the configured music_directory.
    #follow_outside_symlinks "yes"
    # If this setting is set to "yes", MPD will discover audio files by following
    # symbolic links inside of the configured music_directory.
    #follow_inside_symlinks "yes"
    # Zeroconf / Avahi Service Discovery ##########################################
    # If this setting is set to "yes", service information will be published with
    # Zeroconf / Avahi.
    #zeroconf_enabled "yes"
    # The argument to this setting will be the Zeroconf / Avahi unique name for
    # this MPD server on the network.
    #zeroconf_name "Music Player"
    # Permissions #################################################################
    # If this setting is set, MPD will require password authorization. The password
    # can setting can be specified multiple times for different password profiles.
    #password "password@read,add,control,admin"
    # This setting specifies the permissions a user has who has not yet logged in.
    #default_permissions "read,add,control,admin"
    # Input #######################################################################
    input {
    plugin "curl"
    # proxy "proxy.isp.com:8080"
    # proxy_user "user"
    # proxy_password "password"
    # Audio Output ################################################################
    # MPD supports various audio output types, as well as playing through multiple
    # audio outputs at the same time, through multiple audio_output settings
    # blocks. Setting this block is optional, though the server will only attempt
    # autodetection for one sound card.
    # See <http://mpd.wikia.com/wiki/Configuration#Audio_Outputs> for examples of
    # other audio outputs.
    # An example of an ALSA output:
    #audio_output {
    # type "alsa"
    # name "My ALSA Device"
    ## device "hw:0,0" # optional
    ## format "44100:16:2" # optional
    ## mixer_type "hardware" # optional
    ## mixer_device "default" # optional
    ## mixer_control "PCM" # optional
    ## mixer_index "0" # optional
    # An example of an OSS output:
    #audio_output {
    # type "oss"
    # name "My OSS Device"
    ## device "/dev/dsp" # optional
    ## format "44100:16:2" # optional
    ## mixer_type "hardware" # optional
    ## mixer_device "/dev/mixer" # optional
    ## mixer_control "PCM" # optional
    # An example of a shout output (for streaming to Icecast):
    #audio_output {
    # type "shout"
    # encoding "ogg" # optional
    # name "My Shout Stream"
    # host "localhost"
    # port "8000"
    # mount "/mpd.ogg"
    # password "hackme"
    # quality "5.0"
    # bitrate "128"
    # format "44100:16:1"
    ## protocol "icecast2" # optional
    ## user "source" # optional
    ## description "My Stream Description" # optional
    ## genre "jazz" # optional
    ## public "no" # optional
    ## timeout "2" # optional
    ## mixer_type "software" # optional
    # An example of a recorder output:
    #audio_output {
    # type "recorder"
    # name "My recorder"
    # encoder "vorbis" # optional, vorbis or lame
    # path "/var/lib/mpd/recorder/mpd.ogg"
    ## quality "5.0" # do not define if bitrate is defined
    # bitrate "128" # do not define if quality is defined
    # format "44100:16:1"
    # An example of a httpd output (built-in HTTP streaming server):
    #audio_output {
    # type "httpd"
    # name "My HTTP Stream"
    # encoder "vorbis" # optional, vorbis or lame
    # port "8000"
    # bind_to_address "0.0.0.0" # optional, IPv4 or IPv6
    ## quality "5.0" # do not define if bitrate is defined
    # bitrate "128" # do not define if quality is defined
    # format "44100:16:1"
    # max_clients "0" # optional 0=no limit
    # An example of a pulseaudio output (streaming to a remote pulseaudio server)
    audio_output {
    type "pulse"
    name "My Pulse Output"
    server "remote_server" # optional
    sink "remote_server_sink" # optional
    ## Example "pipe" output:
    #audio_output {
    # type "pipe"
    # name "my pipe"
    # command "aplay -f cd 2>/dev/null"
    ## Or if you're want to use AudioCompress
    # command "AudioCompress -m | aplay -f cd 2>/dev/null"
    ## Or to send raw PCM stream through PCM:
    # command "nc example.org 8765"
    # format "44100:16:2"
    ## An example of a null output (for no audio output):
    #audio_output {
    # type "null"
    # name "My Null Output"
    # mixer_type "none" # optional
    # This setting will change all decoded audio to be converted to the specified
    # format before being passed to the audio outputs. By default, this setting is
    # disabled.
    #audio_output_format "44100:16:2"
    # If MPD has been compiled with libsamplerate support, this setting specifies
    # the sample rate converter to use. Possible values can be found in the
    # mpd.conf man page or the libsamplerate documentation. By default, this is
    # setting is disabled.
    #samplerate_converter "Fastest Sinc Interpolator"
    # Normalization automatic volume adjustments ##################################
    # This setting specifies the type of ReplayGain to use. This setting can have
    # the argument "off", "album" or "track". See <http://www.replaygain.org>
    # for more details. This setting is off by default.
    #replaygain "album"
    # This setting sets the pre-amp used for files that have ReplayGain tags. By
    # default this setting is disabled.
    #replaygain_preamp "0"
    # This setting enables on-the-fly normalization volume adjustment. This will
    # result in the volume of all playing audio to be adjusted so the output has
    # equal "loudness". This setting is disabled by default.
    #volume_normalization "no"
    # MPD Internal Buffering ######################################################
    # This setting adjusts the size of internal decoded audio buffering. Changing
    # this may have undesired effects. Don't change this if you don't know what you
    # are doing.
    #audio_buffer_size "2048"
    # This setting controls the percentage of the buffer which is filled before
    # beginning to play. Increasing this reduces the chance of audio file skipping,
    # at the cost of increased time prior to audio playback.
    #buffer_before_play "10%"
    # Resource Limitations ########################################################
    # These settings are various limitations to prevent MPD from using too many
    # resources. Generally, these settings should be minimized to prevent security
    # risks, depending on the operating resources.
    #connection_timeout "60"
    #max_connections "10"
    #max_playlist_length "16384"
    #max_command_list_size "2048"
    #max_output_buffer_size "8192"
    # Character Encoding ##########################################################
    # If file or directory names do not display correctly for your locale then you
    # may need to modify this setting.
    #filesystem_charset "UTF-8"
    # This setting controls the encoding that ID3v1 tags should be converted from.
    #id3v1_encoding "ISO-8859-1"
    # SIDPlay decoder #############################################################
    # songlength_database:
    # Location of your songlengths file, as distributed with the HVSC.
    # The sidplay plugin checks this for matching MD5 fingerprints.
    # See http://www.c64.org/HVSC/DOCUMENTS/Songlengths.faq
    # default_songlength:
    # This is the default playing time in seconds for songs not in the
    # songlength database, or in case you're not using a database.
    # A value of 0 means play indefinitely.
    # filter:
    # Turns the SID filter emulation on or off.
    #decoder {
    # plugin "sidplay"
    # songlength_database "/media/C64Music/DOCUMENTS/Songlengths.txt"
    # default_songlength "120"
    # filter "true"
    Last edited by vlad951 (2011-05-07 09:36:11)

    vlad951 wrote:
    Thanks, I successfully launched mpd as a user and it detected all of my music. However, if I launch mpd with the mpd.conf that I created in my home directory, it launches, but outputs the following:
    [vladislav@vladislav .mpd]$ mpd ~/.mpd/mpd.conf
    listen: bind to '0.0.0.0:6600' failed: Address already in use (continuing anyway, because binding to '[::]:6600' succeeded)
    Is this normal?
    *sigh* i answer this for the 3rd time in a row... this is no error it just says that binding to your ipv6 interface happened before the binding to ipv4.
    If you want to use your ipv4 interface hardcode it in mpd.conf
    bind_to_address "127.0.0.1"
    you can also have several binds:
    bind_to_address "127.0.0.1"
    bind_to_address "192.168.1.13"
    to make it listen on localhost and the external IP of your network card.
    If your music is on the same machine as your mpd i recommend to use a unix socket in addition.
    bind_to_address "/path/to/some/file/that/does/not/exist/yet"
    and make your client connect to that file instead of the IP. Speeds things up a log e.g. in ncmpcpp
    and btw: you can save your mpd.conf file as ~/.mpdconf and mpd will automatically use it.
    Last edited by Rasi (2011-05-07 08:41:30)

  • Repeatedly: mpd/ncmpcpp pauses for about a second or two, then plays

    Hello,
    I'm having trouble with mpd.  About every thirty seconds it will pauses for a second them resume playing from where it paused.  It's annoying and makes music unenjoyable.  Does anyone have any idea what could be wrong?
    I appreciate any help. Please let me know if you need any additional information.
    Thanks!
    music_directory "/home/reid/music"
    playlist_directory "/home/reid/.mpd/playlists"
    db_file "/home/reid/.mpd/mpd.db"
    log_file "/home/reid/.mpd/log"
    pid_file "/home/reid/.mpd/mpd.pid"
    state_file "/home/reid/.mpd/mpdstate"
    #sticker_file "~/.mpd/sticker.sql"
    # General music daemon options ################################################
    # This setting specifies the user that MPD will run as. MPD should never run as
    # root and you may use this setting to make MPD change its user ID after
    # initialization. This setting is disabled by default and MPD is run as the
    # current user.
    user "reid"
    # This setting specifies the group that MPD will run as. If not specified
    # primary group of user specified with "user" setting will be used (if set).
    # This is useful if MPD needs to be a member of group such as "audio" to
    # have permission to use sound card.
    #group "nogroup"
    # This setting sets the address for the daemon to listen on. Careful attention
    # should be paid if this is assigned to anything other then the default, any.
    # This setting can deny access to control of the daemon.
    # For network
    #bind_to_address "any"
    # And for Unix Socket
    #bind_to_address "~/.mpd/socket"
    # This setting is the TCP port that is desired for the daemon to get assigned
    # to.
    #port "6600"
    # This setting controls the type of information which is logged. Available
    # setting arguments are "default", "secure" or "verbose". The "verbose" setting
    # argument is recommended for troubleshooting, though can quickly stretch
    # available resources on limited hardware storage.
    #log_level "default"
    # If you have a problem with your MP3s ending abruptly it is recommended that
    # you set this argument to "no" to attempt to fix the problem. If this solves
    # the problem, it is highly recommended to fix the MP3 files with vbrfix
    # (available from <http://www.willwap.co.uk/Programs/vbrfix.php>), at which
    # point gapless MP3 playback can be enabled.
    #gapless_mp3_playback "yes"
    # Setting "restore_paused" to "yes" puts MPD into pause mode instead
    # of starting playback after startup.
    #restore_paused "no"
    # This setting enables MPD to create playlists in a format usable by other
    # music players.
    #save_absolute_paths_in_playlists "no"
    # This setting defines a list of tag types that will be extracted during the
    # audio file discovery process. Optionally, 'comment' can be added to this
    # list.
    #metadata_to_use "artist,album,title,track,name,genre,date,composer,performer,disc"
    # This setting enables automatic update of MPD's database when files in
    # music_directory are changed.
    auto_update "no"
    # Limit the depth of the directories being watched, 0 means only watch
    # the music directory itself. There is no limit by default.
    #auto_update_depth "3"
    # Symbolic link behavior ######################################################
    # If this setting is set to "yes", MPD will discover audio files by following
    # symbolic links outside of the configured music_directory.
    #follow_outside_symlinks "yes"
    # If this setting is set to "yes", MPD will discover audio files by following
    # symbolic links inside of the configured music_directory.
    #follow_inside_symlinks "yes"
    # Zeroconf / Avahi Service Discovery ##########################################
    # If this setting is set to "yes", service information will be published with
    # Zeroconf / Avahi.
    #zeroconf_enabled "yes"
    # The argument to this setting will be the Zeroconf / Avahi unique name for
    # this MPD server on the network.
    #zeroconf_name "Music Player"
    # Permissions #################################################################
    # If this setting is set, MPD will require password authorization. The password
    # can setting can be specified multiple times for different password profiles.
    #password "password@read,add,control,admin"
    # This setting specifies the permissions a user has who has not yet logged in.
    #default_permissions "read,add,control,admin"
    # Input #######################################################################
    input {
    plugin "curl"
    # proxy "proxy.isp.com:8080"
    # proxy_user "user"
    # proxy_password "password"
    # Audio Output ################################################################
    # MPD supports various audio output types, as well as playing through multiple
    # audio outputs at the same time, through multiple audio_output settings
    # blocks. Setting this block is optional, though the server will only attempt
    # autodetection for one sound card.
    # See <http://mpd.wikia.com/wiki/Configuration#Audio_Outputs> for examples of
    # other audio outputs.
    # An example of an ALSA output:
    audio_output {
    type "alsa"
    name "My ALSA Device"
    ## device "hw:0,0" # optional
    ## format "44100:16:2" # optional
    mixer_type "hardware" # optional
    ## mixer_device "default" # optional
    ## mixer_control "PCM" # optional
    ## mixer_index "0" # optional
    # An example of an OSS output:
    #audio_output {
    # type "oss"
    # name "My OSS Device"
    ## device "/dev/dsp" # optional
    ## format "44100:16:2" # optional
    ## mixer_type "hardware" # optional
    ## mixer_device "/dev/mixer" # optional
    ## mixer_control "PCM" # optional
    # An example of a shout output (for streaming to Icecast):
    #audio_output {
    # type "shout"
    # encoding "ogg" # optional
    # name "My Shout Stream"
    # host "localhost"
    # port "8000"
    # mount "/mpd.ogg"
    # password "hackme"
    # quality "5.0"
    # bitrate "128"
    # format "44100:16:1"
    ## protocol "icecast2" # optional
    ## user "source" # optional
    ## description "My Stream Description" # optional
    ## url "http://example.com" # optional
    ## genre "jazz" # optional
    ## public "no" # optional
    ## timeout "2" # optional
    ## mixer_type "software" # optional
    # An example of a recorder output:
    #audio_output {
    # type "recorder"
    # name "My recorder"
    # encoder "vorbis" # optional, vorbis or lame
    # path "/var/lib/mpd/recorder/mpd.ogg"
    ## quality "5.0" # do not define if bitrate is defined
    # bitrate "128" # do not define if quality is defined
    # format "44100:16:1"
    # An example of a httpd output (built-in HTTP streaming server):
    #audio_output {
    # type "httpd"
    # name "My HTTP Stream"
    # encoder "vorbis" # optional, vorbis or lame
    # port "8000"
    # bind_to_address "0.0.0.0" # optional, IPv4 or IPv6
    ## quality "5.0" # do not define if bitrate is defined
    # bitrate "128" # do not define if quality is defined
    # format "44100:16:1"
    # max_clients "0" # optional 0=no limit
    # An example of a pulseaudio output (streaming to a remote pulseaudio server)
    #audio_output {
    # type "pulse"
    # name "My Pulse Output"
    ## server "remote_server" # optional
    ## sink "remote_server_sink" # optional
    ## Example "pipe" output:
    #audio_output {
    # type "pipe"
    # name "my pipe"
    # command "aplay -f cd 2>/dev/null"
    ## Or if you're want to use AudioCompress
    # command "AudioCompress -m | aplay -f cd 2>/dev/null"
    ## Or to send raw PCM stream through PCM:
    # command "nc example.org 8765"
    # format "44100:16:2"
    ## An example of a null output (for no audio output):
    #audio_output {
    # type "null"
    # name "My Null Output"
    # mixer_type "none" # optional
    # This setting will change all decoded audio to be converted to the specified
    # format before being passed to the audio outputs. By default, this setting is
    # disabled.
    #audio_output_format "44100:16:2"
    # If MPD has been compiled with libsamplerate support, this setting specifies
    # the sample rate converter to use. Possible values can be found in the
    # mpd.conf man page or the libsamplerate documentation. By default, this is
    # setting is disabled.
    #samplerate_converter "Fastest Sinc Interpolator"
    # Normalization automatic volume adjustments ##################################
    # This setting specifies the type of ReplayGain to use. This setting can have
    # the argument "off", "album" or "track". See <http://www.replaygain.org>
    # for more details. This setting is off by default.
    #replaygain "album"
    # This setting sets the pre-amp used for files that have ReplayGain tags. By
    # default this setting is disabled.
    #replaygain_preamp "0"
    # This setting enables on-the-fly normalization volume adjustment. This will
    # result in the volume of all playing audio to be adjusted so the output has
    # equal "loudness". This setting is disabled by default.
    #volume_normalization "no"
    # MPD Internal Buffering ######################################################
    # This setting adjusts the size of internal decoded audio buffering. Changing
    # this may have undesired effects. Don't change this if you don't know what you
    # are doing.
    #audio_buffer_size "2048"
    # This setting controls the percentage of the buffer which is filled before
    # beginning to play. Increasing this reduces the chance of audio file skipping,
    # at the cost of increased time prior to audio playback.
    #buffer_before_play "10%"
    # Resource Limitations ########################################################
    # These settings are various limitations to prevent MPD from using too many
    # resources. Generally, these settings should be minimized to prevent security
    # risks, depending on the operating resources.
    #connection_timeout "60"
    #max_connections "10"
    #max_playlist_length "16384"
    #max_command_list_size "2048"
    #max_output_buffer_size "8192"
    # Client TCP keep alive #######################################################
    # For clients connected by TCP on supported platforms.
    # Allows detection of dangling connections due to clients disappearing from
    # the network without closing their connections.
    # This is not usually necessary but can be useful in cases such as wifi connectected
    # clients that go in and out of network range or turn off wifi without closing their
    # connections. Combined with low max_connections this can soon cause clients to not
    # be able to connect.
    # Enable tcp keepalive on new client connections (default is "no")
    #tcp_keep_alive "no"
    # Time in seconds since the last communication on the connection and before
    # the keepalive probing is started. (default is 7200 seconds)
    #tcp_keep_alive_idle "7200"
    # Interval in seconds between keepalive probes, once a probe started.
    # (default is 75 seconds)
    #tcp_keep_alive_interval "75"
    # Number of failed probes before the connection is pronounced dead and
    # the connection is closed. (default is 9 times)
    #tcp_keep_alive_count "9"
    # Character Encoding ##########################################################
    # If file or directory names do not display correctly for your locale then you
    # may need to modify this setting.
    #filesystem_charset "UTF-8"
    # This setting controls the encoding that ID3v1 tags should be converted from.
    #id3v1_encoding "ISO-8859-1"
    # SIDPlay decoder #############################################################
    # songlength_database:
    # Location of your songlengths file, as distributed with the HVSC.
    # The sidplay plugin checks this for matching MD5 fingerprints.
    # See http://www.c64.org/HVSC/DOCUMENTS/Songlengths.faq
    # default_songlength:
    # This is the default playing time in seconds for songs not in the
    # songlength database, or in case you're not using a database.
    # A value of 0 means play indefinitely.
    # filter:
    # Turns the SID filter emulation on or off.
    #decoder {
    # plugin "sidplay"
    # songlength_database "/media/C64Music/DOCUMENTS/Songlengths.txt"
    # default_songlength "120"
    # filter "true"

    Hello,
    Thanks for the reply.  I have a quad core processor and 8 gigs of ram.
    I've thought that maybe udev isn't loading the best audio driver for my system.
    lshw:
    vizio
    description: All In One
    product: CA24 (CA24-A2)
    vendor: VIZIO
    serial: VIZAS127EH0706Q
    width: 64 bits
    capabilities: smbios-2.7 dmi-2.7 vsyscall32
    configuration: boot=normal chassis=all-in-one sku=CA24-A2 uuid=84D9DA22-F2CE-E111-B141-0F02CCF30E00
    *-core
    description: Motherboard
    product: XV1
    vendor: Quanta
    physical id: 0
    serial: QTCXV130H22800231
    *-firmware
    description: BIOS
    vendor: AMI
    physical id: 0
    version: 1.02
    date: 05/21/2012
    size: 64KiB
    capacity: 2496KiB
    capabilities: pci upgrade shadowing cdboot bootselect socketedrom edd int13floppy1200 int13floppy720 int13floppy2880 int5printscreen int9keyboard int14serial int17printer acpi usb biosbootspecification uefi
    *-cache:0
    description: L2 cache
    physical id: 11
    slot: CPU Internal L2
    size: 1MiB
    capacity: 1MiB
    capabilities: internal write-through unified
    *-cache:1
    description: L1 cache
    physical id: 12
    slot: CPU Internal L1
    size: 256KiB
    capacity: 256KiB
    capabilities: internal write-through data
    *-cache:2
    description: L3 cache
    physical id: 13
    slot: CPU Internal L3
    size: 6MiB
    capacity: 6MiB
    capabilities: internal write-back unified
    *-memory
    description: System Memory
    physical id: 14
    slot: System board or motherboard
    size: 8GiB
    *-bank:0
    description: SODIMM DDR3 Synchronous 1333 MHz (0.8 ns)
    product: AD73I1C1674EV
    vendor: ADATA
    physical id: 0
    serial: 00000E9D
    slot: ChannelA-DIMM0
    size: 4GiB
    width: 64 bits
    clock: 1333MHz (0.8ns)
    *-bank:1
    description: DIMM [empty]
    product: [Empty]
    vendor: [Empty]
    physical id: 1
    serial: [Empty]
    slot: ChannelA-DIMM1
    *-bank:2
    description: SODIMM DDR3 Synchronous 1333 MHz (0.8 ns)
    product: AD73I1C1674EV
    vendor: ADATA
    physical id: 2
    serial: 00000EA6
    slot: ChannelB-DIMM0
    size: 4GiB
    width: 64 bits
    clock: 1333MHz (0.8ns)
    *-bank:3
    description: DIMM [empty]
    product: [Empty]
    vendor: [Empty]
    physical id: 3
    serial: [Empty]
    slot: ChannelB-DIMM1
    *-cpu
    description: CPU
    product: Intel(R) Core(TM) i7-3610QM CPU @ 2.30GHz
    vendor: Intel Corp.
    physical id: 15
    bus info: cpu@0
    version: Intel(R) Core(TM) i7-3610QM CPU @ 2.30GHz
    slot: SOCKET 0
    size: 1200MHz
    capacity: 3800MHz
    width: 64 bits
    clock: 100MHz
    capabilities: x86-64 fpu fpu_exception wp vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm ida arat epb xsaveopt pln pts dtherm tpr_shadow vnmi flexpriority ept vpid fsgsbase smep erms cpufreq
    configuration: cores=4 enabledcores=4 threads=8
    *-pci
    description: Host bridge
    product: 3rd Gen Core processor DRAM Controller
    vendor: Intel Corporation
    physical id: 100
    bus info: pci@0000:00:00.0
    version: 09
    width: 32 bits
    clock: 33MHz
    configuration: driver=agpgart-intel
    resources: irq:0
    *-pci:0
    description: PCI bridge
    product: Xeon E3-1200 v2/3rd Gen Core processor PCI Express Root Port
    vendor: Intel Corporation
    physical id: 1
    bus info: pci@0000:00:01.0
    version: 09
    width: 32 bits
    clock: 33MHz
    capabilities: pci pm msi pciexpress normal_decode bus_master cap_list
    configuration: driver=pcieport
    resources: irq:40 ioport:e000(size=4096) memory:f6000000-f70fffff ioport:e0000000(size=301989888)
    *-display UNCLAIMED
    description: VGA compatible controller
    product: NVIDIA Corporation
    vendor: NVIDIA Corporation
    physical id: 0
    bus info: pci@0000:01:00.0
    version: a1
    width: 64 bits
    clock: 33MHz
    capabilities: pm msi pciexpress vga_controller cap_list
    configuration: latency=0
    resources: memory:f6000000-f6ffffff memory:e0000000-efffffff memory:f0000000-f1ffffff ioport:e000(size=128) memory:f7000000-f707ffff
    *-display
    description: VGA compatible controller
    product: 3rd Gen Core processor Graphics Controller
    vendor: Intel Corporation
    physical id: 2
    bus info: pci@0000:00:02.0
    version: 09
    width: 64 bits
    clock: 33MHz
    capabilities: msi pm vga_controller bus_master cap_list rom
    configuration: driver=i915 latency=0
    resources: irq:45 memory:f7400000-f77fffff memory:d0000000-dfffffff ioport:f000(size=64)
    *-usb:0
    description: USB controller
    product: 7 Series/C210 Series Chipset Family USB xHCI Host Controller
    vendor: Intel Corporation
    physical id: 14
    bus info: pci@0000:00:14.0
    version: 04
    width: 64 bits
    clock: 33MHz
    capabilities: pm msi xhci bus_master cap_list
    configuration: driver=xhci_hcd latency=0
    resources: irq:46 memory:f7900000-f790ffff
    *-communication
    description: Communication controller
    product: 7 Series/C210 Series Chipset Family MEI Controller #1
    vendor: Intel Corporation
    physical id: 16
    bus info: pci@0000:00:16.0
    version: 04
    width: 64 bits
    clock: 33MHz
    capabilities: pm msi bus_master cap_list
    configuration: driver=mei latency=0
    resources: irq:43 memory:f791b000-f791b00f
    *-usb:1
    description: USB controller
    product: 7 Series/C210 Series Chipset Family USB Enhanced Host Controller #2
    vendor: Intel Corporation
    physical id: 1a
    bus info: pci@0000:00:1a.0
    version: 04
    width: 32 bits
    clock: 33MHz
    capabilities: pm debug ehci bus_master cap_list
    configuration: driver=ehci_hcd latency=0
    resources: irq:16 memory:f7918000-f79183ff
    *-multimedia
    description: Audio device
    product: 7 Series/C210 Series Chipset Family High Definition Audio Controller
    vendor: Intel Corporation
    physical id: 1b
    bus info: pci@0000:00:1b.0
    version: 04
    width: 64 bits
    clock: 33MHz
    capabilities: pm msi pciexpress bus_master cap_list
    configuration: driver=snd_hda_intel latency=0
    resources: irq:41 memory:f7910000-f7913fff
    *-pci:1
    description: PCI bridge
    product: 7 Series/C210 Series Chipset Family PCI Express Root Port 1
    vendor: Intel Corporation
    physical id: 1c
    bus info: pci@0000:00:1c.0
    version: c4
    width: 32 bits
    clock: 33MHz
    capabilities: pci pciexpress msi pm normal_decode bus_master cap_list
    configuration: driver=pcieport
    resources: irq:16
    *-pci:2
    description: PCI bridge
    product: 7 Series/C210 Series Chipset Family PCI Express Root Port 3
    vendor: Intel Corporation
    physical id: 1c.2
    bus info: pci@0000:00:1c.2
    version: c4
    width: 32 bits
    clock: 33MHz
    capabilities: pci pciexpress msi pm normal_decode bus_master cap_list
    configuration: driver=pcieport
    resources: irq:18 ioport:d000(size=4096) ioport:f2100000(size=1048576)
    *-network
    description: Ethernet interface
    product: RTL8111/8168B PCI Express Gigabit Ethernet controller
    vendor: Realtek Semiconductor Co., Ltd.
    physical id: 0
    bus info: pci@0000:03:00.0
    logical name: eth0
    version: 07
    serial: 00:6b:9e:03:62:f4
    size: 10Mbit/s
    capacity: 1Gbit/s
    width: 64 bits
    clock: 33MHz
    capabilities: pm msi pciexpress msix vpd bus_master cap_list ethernet physical tp mii 10bt 10bt-fd 100bt 100bt-fd 1000bt 1000bt-fd autonegotiation
    configuration: autonegotiation=on broadcast=yes driver=r8169 driverversion=2.3LK-NAPI duplex=half firmware=rtl8168e-3_0.0.4 03/27/12 latency=0 link=no multicast=yes port=MII speed=10Mbit/s
    resources: irq:44 ioport:d000(size=256) memory:f2104000-f2104fff memory:f2100000-f2103fff
    *-pci:3
    description: PCI bridge
    product: 7 Series/C210 Series Chipset Family PCI Express Root Port 6
    vendor: Intel Corporation
    physical id: 1c.5
    bus info: pci@0000:00:1c.5
    version: c4
    width: 32 bits
    clock: 33MHz
    capabilities: pci pciexpress msi pm normal_decode bus_master cap_list
    configuration: driver=pcieport
    resources: irq:17 memory:f7800000-f78fffff
    *-network
    description: Wireless interface
    product: AR9462 Wireless Network Adapter
    vendor: Atheros Communications Inc.
    physical id: 0
    bus info: pci@0000:04:00.0
    logical name: wlan0
    version: 01
    serial: 00:6b:9e:00:ab:6f
    width: 64 bits
    clock: 33MHz
    capabilities: pm msi pciexpress bus_master cap_list rom ethernet physical wireless
    configuration: broadcast=yes driver=ath9k driverversion=3.5.4-1-ARCH firmware=N/A ip=192.168.1.139 latency=0 link=yes multicast=yes wireless=IEEE 802.11abgn
    resources: irq:17 memory:f7800000-f787ffff memory:f7880000-f788ffff
    *-usb:2
    description: USB controller
    product: 7 Series/C210 Series Chipset Family USB Enhanced Host Controller #1
    vendor: Intel Corporation
    physical id: 1d
    bus info: pci@0000:00:1d.0
    version: 04
    width: 32 bits
    clock: 33MHz
    capabilities: pm debug ehci bus_master cap_list
    configuration: driver=ehci_hcd latency=0
    resources: irq:23 memory:f7917000-f79173ff
    *-isa
    description: ISA bridge
    product: HM77 Express Chipset LPC Controller
    vendor: Intel Corporation
    physical id: 1f
    bus info: pci@0000:00:1f.0
    version: 04
    width: 32 bits
    clock: 33MHz
    capabilities: isa bus_master cap_list
    configuration: driver=lpc_ich latency=0
    resources: irq:0
    *-storage
    description: RAID bus controller
    product: 82801 Mobile SATA Controller [RAID mode]
    vendor: Intel Corporation
    physical id: 1f.2
    bus info: pci@0000:00:1f.2
    version: 04
    width: 32 bits
    clock: 66MHz
    capabilities: storage msi pm bus_master cap_list
    configuration: driver=ahci latency=0
    resources: irq:42 ioport:f0b0(size=8) ioport:f0a0(size=4) ioport:f090(size=8) ioport:f080(size=4) ioport:f060(size=32) memory:f7916000-f79167ff
    *-serial UNCLAIMED
    description: SMBus
    product: 7 Series/C210 Series Chipset Family SMBus Controller
    vendor: Intel Corporation
    physical id: 1f.3
    bus info: pci@0000:00:1f.3
    version: 04
    width: 64 bits
    clock: 33MHz
    configuration: latency=0
    resources: memory:f7915000-f79150ff ioport:f040(size=32)
    *-scsi:0
    physical id: 1
    logical name: scsi0
    capabilities: emulated
    *-disk
    description: ATA Disk
    product: ST1000LM024 HN-M
    vendor: Seagate
    physical id: 0.0.0
    bus info: scsi@0:0.0.0
    logical name: /dev/sda
    version: 2AR1
    serial: S2R8J9CC612158
    size: 931GiB (1TB)
    capabilities: partitioned partitioned:dos
    configuration: ansiversion=5 sectorsize=4096 signature=0002dcaf
    *-volume:0
    description: EXT4 volume
    vendor: Linux
    physical id: 1
    bus info: scsi@0:0.0.0,1
    logical name: /dev/sda1
    logical name: /home
    version: 1.0
    serial: 86f08c55-b73d-4c19-a427-04c076aa2956
    size: 928GiB
    capacity: 928GiB
    capabilities: primary journaled extended_attributes large_files huge_files dir_nlink recover extents ext4 ext2 initialized
    configuration: created=2012-09-29 11:54:11 filesystem=ext4 lastmountpoint=/home modified=2012-10-04 09:08:33 mount.fstype=ext4 mount.options=rw,relatime,data=ordered mounted=2012-10-04 09:08:33 state=mounted
    *-volume:1
    description: Linux swap volume
    physical id: 2
    bus info: scsi@0:0.0.0,2
    logical name: /dev/sda2
    version: 1
    serial: 839f0cea-c59f-4e7b-90e5-c28d3e2fcca4
    size: 3053MiB
    capacity: 3053MiB
    capabilities: primary nofs swap initialized
    configuration: filesystem=swap pagesize=4096
    *-scsi:1
    physical id: 2
    logical name: scsi1
    capabilities: emulated
    *-disk
    description: ATA Disk
    product: Toshiba THNSNW03
    vendor: Toshiba
    physical id: 0.0.0
    bus info: scsi@1:0.0.0
    logical name: /dev/sdb
    version: L041
    serial: 23RJ613KAFSK
    size: 29GiB (32GB)
    capabilities: partitioned partitioned:dos
    configuration: ansiversion=5 sectorsize=512 signature=00051de3
    *-volume
    description: Linux filesystem partition
    vendor: Linux
    physical id: 1
    bus info: scsi@1:0.0.0,1
    logical name: /dev/sdb1
    logical name: /
    version: 1.0
    serial: a9ba0f2f-aba4-47ae-b3bc-78ced3fb41d5
    size: 29GiB
    capacity: 29GiB
    capabilities: primary bootable extended_attributes large_files ext2 initialized
    configuration: filesystem=ext2 lastmountpoint=/ modified=2012-10-05 11:51:10 mount.fstype=ext2 mount.options=rw,relatime mounted=2012-10-04 09:08:33 state=mounted
    *-scsi:2
    physical id: 3
    bus info: usb@1:3
    logical name: scsi6
    capabilities: emulated scsi-host
    configuration: driver=usb-storage
    *-disk
    description: SCSI Disk
    physical id: 0.0.0
    bus info: scsi@6:0.0.0
    logical name: /dev/sdc
    size: 465GiB (500GB)
    capabilities: partitioned partitioned:dos
    configuration: sectorsize=512 signature=9c3c778f
    *-volume
    description: EXT3 volume
    vendor: Linux
    physical id: 1
    bus info: scsi@6:0.0.0,1
    logical name: /dev/sdc1
    logical name: /data
    version: 1.0
    serial: 334c8b3e-ab70-4702-81f1-0bd0ce6af1e9
    size: 465GiB
    capacity: 465GiB
    capabilities: primary bootable journaled extended_attributes large_files recover ext3 ext2 initialized
    configuration: created=2012-01-26 18:25:12 filesystem=ext3 lastmountpoint=/data modified=2012-10-04 10:24:08 mount.fstype=ext3 mount.options=rw,relatime,data=ordered mounted=2012-10-04 10:24:08 state=mounted
    lsmod
    Module Size Used by
    sg 25423 0
    udf 79515 1
    crc_itu_t 1363 1 udf
    loop 18160 2
    bbswitch 5042 0
    joydev 9991 0
    btusb 11892 0
    bluetooth 193532 2 btusb
    ums_realtek 7391 0
    snd_hda_codec_cirrus 17229 1
    uvcvideo 72339 0
    videobuf2_vmalloc 2468 1 uvcvideo
    videobuf2_memops 2246 1 videobuf2_vmalloc
    videobuf2_core 20575 1 uvcvideo
    videodev 100564 2 uvcvideo,videobuf2_core
    media 10405 2 uvcvideo,videodev
    microcode 12377 0
    aesni_intel 42907 2
    iTCO_wdt 5989 0
    aes_x86_64 7508 1 aesni_intel
    aes_generic 26138 2 aesni_intel,aes_x86_64
    ghash_clmulni_intel 4237 0
    iTCO_vendor_support 1929 1 iTCO_wdt
    cryptd 8741 2 ghash_clmulni_intel,aesni_intel
    arc4 1410 2
    usb_storage 44760 2 ums_realtek
    mxm_wmi 1425 0
    uas 8823 0
    ath9k 93564 0
    ath9k_common 2096 1 ath9k
    snd_hda_intel 25700 4
    ath9k_hw 341950 2 ath9k_common,ath9k
    snd_hda_codec 97432 2 snd_hda_intel,snd_hda_codec_cirrus
    i915 473038 2
    snd_hwdep 6300 1 snd_hda_codec
    ath 15393 3 ath9k_common,ath9k,ath9k_hw
    kvm 363714 0
    mac80211 416391 1 ath9k
    i2c_algo_bit 5391 1 i915
    snd_pcm 74926 3 snd_hda_codec,snd_hda_intel
    coretemp 6006 0
    snd_page_alloc 7217 2 snd_pcm,snd_hda_intel
    drm_kms_helper 32749 1 i915
    snd_timer 18966 2 snd_pcm
    crc32c_intel 1987 0
    evdev 10266 12
    cfg80211 173210 3 ath,ath9k,mac80211
    snd 60021 12 snd_hwdep,snd_timer,snd_pcm,snd_hda_codec,snd_hda_intel,snd_hda_codec_cirrus
    drm 220804 3 i915,drm_kms_helper
    r8169 51909 0
    rfkill 15604 3 cfg80211,bluetooth
    soundcore 5442 1 snd
    pcspkr 1899 0
    mei 32583 0
    intel_agp 11096 1 i915
    i2c_i801 8212 0
    lpc_ich 10545 0
    intel_gtt 14478 3 i915,intel_agp
    mfd_core 2833 1 lpc_ich
    i2c_core 20508 6 drm,i915,i2c_i801,drm_kms_helper,i2c_algo_bit,videodev
    mii 4123 1 r8169
    acpi_cpufreq 5933 0
    thermal 7959 0
    mperf 1267 1 acpi_cpufreq
    processor 27015 9 acpi_cpufreq
    wmi 8475 1 mxm_wmi
    video 11308 1 i915
    button 4502 1 i915
    vboxdrv 1823501 0
    ext4 438999 3
    crc16 1359 2 ext4,bluetooth
    jbd2 78720 1 ext4
    mbcache 5977 1 ext4
    sd_mod 29271 7
    hid_generic 1113 0
    usbhid 36812 0
    hid 85608 2 hid_generic,usbhid
    ehci_hcd 41058 0
    ahci 20549 3
    libahci 20023 1 ahci
    libata 167675 2 ahci,libahci
    scsi_mod 133152 5 sg,uas,usb_storage,libata,sd_mod
    xhci_hcd 84338 0
    usbcore 147434 8 uas,btusb,uvcvideo,ums_realtek,usb_storage,ehci_hcd,usbhid,xhci_hcd
    usb_common 954 1 usbcore

  • [SOLVED] Did update - MPD doesn't work

    I recently did a large pacman -Syu and while I don't remember all of the packages, I do remember that gnome3 was in there.
    I've heard that gnome3 has pulseaudio as a dependency which could be why it was pulled along somehow. I don't know if it's this or something else, but my MPD has stopped playing music.
    The time of the track is moving, but there is no sound. In ncmpcpp it says Volume: n/a.
    Playing a track with mplayer works, along with adjusting the volume in alsamixer.
    Last edited by linduxed (2011-05-07 10:51:16)

    Are you using alsa for mpd playback?
    https://wiki.archlinux.org/index.php/Mp … PulseAudio
    [OT]
    You can check /var/log/pacman.log to see what packages have you installed, upgraded and removed - the most recent operations are at the end.
    https://github.com/pbrisbin/scripts/blo … whatdidido is a nice script to help you with your memory ;-)
    [/OT]

  • Connecting to mpd over the Internet (outside home network) - error

    I'm trying to connect to an mpd instance running on my home computer from my computer at work.  I have an OpenVPN server at home, and so I can securely connect to my home network from work.  I've set up a second instance of mpd and icecast at home, and I'm trying to connect to this at work.  I can connect to the extent of being able to pull my library, playlist info over, but I can't actually seem to play anything.
    When I look at the mpd error messages, I find:
    shout_output: Failed to open "exelion HD mpd stream" [shout]: problem opening connection to shout server localhost:8000: Login failed
    output: Failed to open audio output
    I'm trying to connect using Cantata (which I use at home and like). 
    Things I've played with:
    originally in my mpd config I had:
    user "source"
    I tried commenting that out and just letting mpd use whatever the default user is, but that didn't seem to help.
    The other thing I wonder about but haven't tried is different settings for "admin-user" in the icecast config.
    I currently have
    <admin-user>my-home-usernamer</admin-user>
    .  Should I change this to "admin"?  Does it matter? 
    The passwords match between the mpd and icecast configs.

    Foucault wrote:Just in case you are not aware of it, MPD has built-in HTTP streaming to mp3/ogg/whatever. Unless you need any of the more advanced Icecast features, just use the httpd audio_output and get done with it.
    Thanks. I didn't know that. But that seems much easier.  I tried this, but I'm still having trouble.  From the mpd server I get the following report:
    path: SetFSCharset: fs charset is: UTF-8
    libsamplerate: libsamplerate converter 'Fastest Sinc Interpolator'
    vorbis: Xiph.Org libVorbis 1.3.4
    opus: libopus 1.1
    sndfile: libsndfile-1.0.25
    db: reading DB
    curl: version 7.40.0
    curl: with OpenSSL/1.0.2
    avahi: Initializing interface
    avahi: Client changed to state 2
    avahi: Client is RUNNING
    avahi: Registering service _mpd._tcp/Music Player
    avahi: Service group changed to state 0
    avahi: Service group is UNCOMMITED
    avahi: Failed to add service _mpd._tcp: Local name collision
    state_file: Loading state file /home/user/.mpd/icecast-state
    server_socket: bind to '0.0.0.0:8000' failed: Address already in use (continuing anyway, because binding to '[::]:8000' succeeded)
    playlist: play 0:"Bob Marley/Bob Marley & the Wailers (1972-1980) - The Unreleased Studio Sessions/Disc 01 - The 'Catch A Fire' Sessions/1-01 Concrete Jungle (Studio Demo).mp3"
    replay_gain: replay gain mode has changed -1->1
    replay_gain: scale=1.000000
    replay_gain: replay gain mode has changed -1->1
    replay_gain: scale=1.000000
    config: option 'quality' on line 19 was not recognized
    playlist: queue song 1:"Bob Marley/Bob Marley & the Wailers (1972-1980) - The Unreleased Studio Sessions/Disc 01 - The 'Catch A Fire' Sessions/1-02 Slave Driver (Studio Demo).mp3"
    decoder: audio_format=48000:24:2, seekable=true
    client: [0] opened from 192.168.1.5:53478
    client: [1] opened from 192.168.1.5:53479
    client: [1] process command "channels"
    client: [1] command returned 0
    client: [1] process command "idle"
    client: [1] command returned 1
    client: [0] process command "status"
    client: [0] command returned 0
    client: [0] process command "stats"
    client: [0] command returned 0
    client: [0] process command "urlhandlers"
    client: [0] command returned 0
    client: [0] process command "tagtypes"
    client: [0] command returned 0
    client: [0] process command "currentsong"
    client: [0] command returned 0
    client: [0] process command "replay_gain_mode off"
    replay_gain: replay gain mode has changed 1->-1
    replay_gain: replay gain mode has changed 1->-1
    client: [0] command returned 0
    client: [0] process command "listallinfo"
    buffered_socket: error on client 0: Output buffer is full
    client: [0] command returned 0
    client: [0] closed
    client: [2] opened from 192.168.1.5:53480
    client: [2] process command "playlistinfo"
    client: [2] command returned 0
    client: [2] process command "status"
    client: [2] command returned 0
    client: [2] process command "status"
    client: [2] command returned 0
    client: [2] process command "listallinfo"
    buffered_socket: error on client 2: Output buffer is full

  • My mpd fail to start

    can you guys help me?
    No full size images. Read forum rules  -- Inxsible
    my /etc/mpd.conf
    # An example configuration file for MPD
    # See the mpd.conf man page for a more detailed description of each parameter.
    # Files and directories #######################################################
    # This setting controls the top directory which MPD will search to discover the
    # available audio files and add them to the daemon's online database. This
    # setting defaults to the XDG directory, otherwise the music directory will be
    # be disabled and audio files will only be accepted over ipc socket (using
    # file:// protocol) or streaming files over an accepted protocol.
    #music_directory "~/music"
    # This setting sets the MPD internal playlist directory. The purpose of this
    # directory is storage for playlists created by MPD. The server will use
    # playlist files not created by the server but only if they are in the MPD
    # format. This setting defaults to playlist saving being disabled.
    #playlist_directory "~/.mpd/playlists"
    # This setting sets the location of the MPD database. This file is used to
    # load the database at server start up and store the database while the
    # server is not up. This setting defaults to disabled which will allow
    # MPD to accept files over ipc socket (using file:// protocol) or streaming
    # files over an accepted protocol.
    #db_file "~/.mpd/database"
    # These settings are the locations for the daemon log files for the daemon.
    # These logs are great for troubleshooting, depending on your log_level
    # settings.
    # The special value "syslog" makes MPD use the local syslog daemon. This
    # setting defaults to logging to syslog, otherwise logging is disabled.
    #log_file "~/.mpd/log"
    # This setting sets the location of the file which stores the process ID
    # for use of mpd --kill and some init scripts. This setting is disabled by
    # default and the pid file will not be stored.
    #pid_file "~/.mpd/pid"
    # This setting sets the location of the file which contains information about
    # most variables to get MPD back into the same general shape it was in before
    # it was brought down. This setting is disabled by default and the server
    # state will be reset on server start up.
    #state_file "~/.mpd/state"
    # The location of the sticker database. This is a database which
    # manages dynamic information attached to songs.
    #sticker_file "~/.mpd/sticker.sql"
    # General music daemon options ################################################
    # This setting specifies the user that MPD will run as. MPD should never run as
    # root and you may use this setting to make MPD change its user ID after
    # initialization. This setting is disabled by default and MPD is run as the
    # current user.
    #user "nobody"
    # This setting specifies the group that MPD will run as. If not specified
    # primary group of user specified with "user" setting will be used (if set).
    # This is useful if MPD needs to be a member of group such as "audio" to
    # have permission to use sound card.
    #group "nogroup"
    # This setting sets the address for the daemon to listen on. Careful attention
    # should be paid if this is assigned to anything other then the default, any.
    # This setting can deny access to control of the daemon.
    # For network
    #bind_to_address "any"
    # And for Unix Socket
    #bind_to_address "~/.mpd/socket"
    # This setting is the TCP port that is desired for the daemon to get assigned
    # to.
    #port "6600"
    # This setting controls the type of information which is logged. Available
    # setting arguments are "default", "secure" or "verbose". The "verbose" setting
    # argument is recommended for troubleshooting, though can quickly stretch
    # available resources on limited hardware storage.
    #log_level "default"
    # If you have a problem with your MP3s ending abruptly it is recommended that
    # you set this argument to "no" to attempt to fix the problem. If this solves
    # the problem, it is highly recommended to fix the MP3 files with vbrfix
    # (available from <http://www.willwap.co.uk/Programs/vbrfix.php>), at which
    # point gapless MP3 playback can be enabled.
    #gapless_mp3_playback "yes"
    # This setting enables MPD to create playlists in a format usable by other
    # music players.
    #save_absolute_paths_in_playlists "no"
    # This setting defines a list of tag types that will be extracted during the
    # audio file discovery process. Optionally, 'comment' can be added to this
    # list.
    #metadata_to_use "artist,album,title,track,name,genre,date,composer,performer,disc"
    # This setting enables automatic update of MPD's database when files in
    # music_directory are changed.
    #auto_update "yes"
    # Limit the depth of the directories being watched, 0 means only watch
    # the music directory itself. There is no limit by default.
    #auto_update_depth "3"
    # Symbolic link behavior ######################################################
    # If this setting is set to "yes", MPD will discover audio files by following
    # symbolic links outside of the configured music_directory.
    #follow_outside_symlinks "yes"
    # If this setting is set to "yes", MPD will discover audio files by following
    # symbolic links inside of the configured music_directory.
    #follow_inside_symlinks "yes"
    # Zeroconf / Avahi Service Discovery ##########################################
    # If this setting is set to "yes", service information will be published with
    # Zeroconf / Avahi.
    #zeroconf_enabled "yes"
    # The argument to this setting will be the Zeroconf / Avahi unique name for
    # this MPD server on the network.
    #zeroconf_name "Music Player"
    # Permissions #################################################################
    # If this setting is set, MPD will require password authorization. The password
    # can setting can be specified multiple times for different password profiles.
    #password "password@read,add,control,admin"
    # This setting specifies the permissions a user has who has not yet logged in.
    #default_permissions "read,add,control,admin"
    # Input #######################################################################
    input {
    plugin "curl"
    # proxy "proxy.isp.com:8080"
    # proxy_user "user"
    # proxy_password "password"
    # Audio Output ################################################################
    # MPD supports various audio output types, as well as playing through multiple
    # audio outputs at the same time, through multiple audio_output settings
    # blocks. Setting this block is optional, though the server will only attempt
    # autodetection for one sound card.
    # See <http://mpd.wikia.com/wiki/Configuration#Audio_Outputs> for examples of
    # other audio outputs.
    # An example of an ALSA output:
    audio_output {
    type "alsa"
    name "My ALSA Device"
    device "hw:0,0" # optional
    format "44100:16:2" # optional
    mixer_type "hardware" # optional
    mixer_device "default" # optional
    mixer_control "PCM" # optional
    mixer_index "0" # optional
    # An example of an OSS output:
    #audio_output {
    # type "oss"
    # name "My OSS Device"
    ## device "/dev/dsp" # optional
    ## format "44100:16:2" # optional
    ## mixer_type "hardware" # optional
    ## mixer_device "/dev/mixer" # optional
    ## mixer_control "PCM" # optional
    # An example of a shout output (for streaming to Icecast):
    #audio_output {
    # type "shout"
    # encoding "ogg" # optional
    # name "My Shout Stream"
    host "localhost"
    # port "8000"
    # mount "/mpd.ogg"
    # password "hackme"
    # quality "5.0"
    # bitrate "128"
    # format "44100:16:1"
    ## protocol "icecast2" # optional
    ## user "source" # optional
    ## description "My Stream Description" # optional
    ## genre "jazz" # optional
    ## public "no" # optional
    ## timeout "2" # optional
    ## mixer_type "software" # optional
    # An example of a recorder output:
    #audio_output {
    # type "recorder"
    # name "My recorder"
    # encoder "vorbis" # optional, vorbis or lame
    # path "/var/lib/mpd/recorder/mpd.ogg"
    ## quality "5.0" # do not define if bitrate is defined
    # bitrate "128" # do not define if quality is defined
    # format "44100:16:1"
    # An example of a httpd output (built-in HTTP streaming server):
    #audio_output {
    # type "httpd"
    # name "My HTTP Stream"
    # encoder "vorbis" # optional, vorbis or lame
    # port "8000"
    # bind_to_address "0.0.0.0" # optional, IPv4 or IPv6
    ## quality "5.0" # do not define if bitrate is defined
    # bitrate "128" # do not define if quality is defined
    # format "44100:16:1"
    # max_clients "0" # optional 0=no limit
    # An example of a pulseaudio output (streaming to a remote pulseaudio server)
    #audio_output {
    # type "pulse"
    # name "My Pulse Output"
    ## server "remote_server" # optional
    ## sink "remote_server_sink" # optional
    ## Example "pipe" output:
    #audio_output {
    # type "pipe"
    # name "my pipe"
    # command "aplay -f cd 2>/dev/null"
    ## Or if you're want to use AudioCompress
    # command "AudioCompress -m | aplay -f cd 2>/dev/null"
    ## Or to send raw PCM stream through PCM:
    # command "nc example.org 8765"
    # format "44100:16:2"
    ## An example of a null output (for no audio output):
    #audio_output {
    # type "null"
    # name "My Null Output"
    # mixer_type "none" # optional
    # This setting will change all decoded audio to be converted to the specified
    # format before being passed to the audio outputs. By default, this setting is
    # disabled.
    #audio_output_format "44100:16:2"
    # If MPD has been compiled with libsamplerate support, this setting specifies
    # the sample rate converter to use. Possible values can be found in the
    # mpd.conf man page or the libsamplerate documentation. By default, this is
    # setting is disabled.
    #samplerate_converter "Fastest Sinc Interpolator"
    # Normalization automatic volume adjustments ##################################
    # This setting specifies the type of ReplayGain to use. This setting can have
    # the argument "off", "album" or "track". See <http://www.replaygain.org>
    # for more details. This setting is off by default.
    #replaygain "album"
    # This setting sets the pre-amp used for files that have ReplayGain tags. By
    # default this setting is disabled.
    #replaygain_preamp "0"
    # This setting enables on-the-fly normalization volume adjustment. This will
    # result in the volume of all playing audio to be adjusted so the output has
    # equal "loudness". This setting is disabled by default.
    #volume_normalization "no"
    # MPD Internal Buffering ######################################################
    # This setting adjusts the size of internal decoded audio buffering. Changing
    # this may have undesired effects. Don't change this if you don't know what you
    # are doing.
    #audio_buffer_size "2048"
    # This setting controls the percentage of the buffer which is filled before
    # beginning to play. Increasing this reduces the chance of audio file skipping,
    # at the cost of increased time prior to audio playback.
    #buffer_before_play "10%"
    # Resource Limitations ########################################################
    # These settings are various limitations to prevent MPD from using too many
    # resources. Generally, these settings should be minimized to prevent security
    # risks, depending on the operating resources.
    #connection_timeout "60"
    #max_connections "10"
    #max_playlist_length "16384"
    #max_command_list_size "2048"
    #max_output_buffer_size "8192"
    # Character Encoding ##########################################################
    # If file or directory names do not display correctly for your locale then you
    # may need to modify this setting.
    #filesystem_charset "UTF-8"
    # This setting controls the encoding that ID3v1 tags should be converted from.
    #id3v1_encoding "ISO-8859-1"
    # SIDPlay decoder #############################################################
    # songlength_database:
    # Location of your songlengths file, as distributed with the HVSC.
    # The sidplay plugin checks this for matching MD5 fingerprints.
    # See http://www.c64.org/HVSC/DOCUMENTS/Songlengths.faq
    # default_songlength:
    # This is the default playing time in seconds for songs not in the
    # songlength database, or in case you're not using a database.
    # A value of 0 means play indefinitely.
    # filter:
    # Turns the SID filter emulation on or off.
    #decoder {
    # plugin "sidplay"
    # songlength_database "/media/C64Music/DOCUMENTS/Songlengths.txt"
    # default_songlength "120"
    # filter "true"
    music_directory "/home/jcrown/Musics"
    playlist_directory "/var/lib/mpd/playlists"
    db_file "/var/lib/mpd/mpd.db"
    log_file "/var/log/mpd/mpd.log"
    pid_file "/run/mpd/mpd.pid"
    state_file "/var/lib/mpd/mpdstate"
    user "mpd"
    # bind_to_address "127.0.0.1"
    # port "6600"
    I follow the instructions in wiki https://wiki.archlinux.org/index.php/Mu … ired_files
    # mkdir /var/lib/mpd/music
    # echo "/home/$USER/music /var/lib/mpd/music none bind" >> /etc/fstab
    # mount -a
    # rc.d restart mpd     ------------------------------> I'm stuck here :\
    Last edited by hazeldf (2012-06-10 02:37:22)

    Welcome to the forums:
    For starters:
    1) Don't post full size images.
    2) Edit your post title to make sense. Exclamatory [HELP] in caps doesn't make your problem any more or less important.
    3) Read the Forum Etiquette on the wiki on how to post.

  • HELP Can't call terminal by Mod4+Enter (awesome wm)

    I can't call terminal by binding key Mod4+Enter. What wrong happened with my rc.lua ?. Please help me. My english not well, sorry everyone.!
    -- z1lt0id Awesome WM 3.5.+ config --
    -- github.com/z1lt0id --
    -- Varation of github.com/copycat --
    -- Required Libraries
    gears = require("gears")
    awful = require("awful")
    awful.rules = require("awful.rules")
    awful.autofocus = require("awful.autofocus")
    wibox = require("wibox")
    beautiful = require("beautiful")
    naughty = require("naughty")
    vicious = require("vicious")
    scratch = require("scratch")
    -- layouts
    layouts = require("layouts")
    -- Conky
    function get_conky()
    local clients = client.get()
    local conky = nil
    local i = 1
    while clients[i]
    do
    if clients[i].class == "Conky"
    then
    conky = clients[i]
    end
    i = i + 1
    end
    return conky
    end
    function raise_conky()
    local conky = get_conky()
    if conky
    then
    conky.ontop = true
    end
    end
    function lower_conky()
    local conky = get_conky()
    if conky
    then
    conky.ontop = false
    end
    end
    function toggle_conky()
    local conky = get_conky()
    if conky
    then
    if conky.ontop
    then
    conky.ontop = false
    else
    conky.ontop = true
    end
    end
    end
    -- Run once function
    function run_once(cmd)
    findme = cmd
    firstspace = cmd:find(" ")
    if firstspace then
    findme = cmd:sub(0, firstspace-1)
    end
    awful.util.spawn_with_shell("pgrep -u $USER -x " .. findme .. " > /dev/null || (" .. cmd .. ")")
    end
    run_once("compton --backend glx --paint-on-overlay --vsync opengl-swc --unredir-if-possible --shadow-exclude 'n:a:Conky' --blur-background-exclude 'n:a:Conky' --config ~/.compton.conf -b")
    -- run_once("nm-applet")
    -- run_once("/opt/dropbox/dropboxd")
    run_once("mpd")
    run_once("conky ~/.conkyrc")
    run_once("unclutter -idle 1")
    -- Localization
    os.setlocale("en_AU.UTF-8")
    -- Error Handling
    -- Check if awesome encountered an error during startup and fell back to
    -- another config (This code will only ever execute for the fallback config)
    if awesome.startup_errors then
    naughty.notify({ preset = naughty.config.presets.critical,
    title = "Oops, there were errors during startup!",
    text = awesome.startup_errors })
    end
    -- Handle runtime errors after startup
    do
    in_error = false
    awesome.connect_signal("debug::error", function (err)
    -- Make sure we don't go into an endless error loop
    if in_error then return end
    in_error = true
    naughty.notify({ preset = naughty.config.presets.critical,
    title = "Oops, an error happened!",
    text = err })
    in_error = false
    end)
    end
    -- Variable Definitions
    home = os.getenv("HOME")
    confdir = home .. "/.config/awesome"
    scriptdir = confdir .. "/script/"
    themes = confdir .. "/themes"
    active_theme = themes .. "/blackburn"
    beautiful.init(active_theme .. "/theme.lua")
    terminal = "urxvt"
    editor = "vim"
    editor_cmd = terminal .. " -e " .. editor
    gui_editor = "gedit"
    browser = "dwb"
    browser2 = "dwb"
    mail = terminal .. " -g 130x30 -e mutt "
    tasks = terminal .. " -e htop "
    musicplr = terminal .. " -g 130x34-320+16 -e ncmpcpp "
    modkey = "Mod4"
    altkey = "Mod1"
    -- Table of layouts to cover with awful.layout.inc, order matters.
    layouts =
    awful.layout.suit.floating,
    layouts.uselesstile,
    layouts.termfair,
    layouts.browse,
    layouts.uselessfair,
    layouts.centerwork,
    -- Wallpaper
    if beautiful.wallpaper then
    for s = 1, screen.count() do
    gears.wallpaper.maximized(beautiful.wallpaper, s, true)
    end
    end
    -- Tags
    tags = {
    names = { " :) ", " :/ ", " :P ", " X) ", " ;) "},
    layout = { layouts[1], layouts[2], layouts[2], layouts[2], layouts[2] }
    for s = 1, screen.count() do
    tags[s] = awful.tag(tags.names, s, tags.layout)
    end
    -- Menu
    myaccessories = {
    { "ranger", terminal .. " -depth 16 -g 130x30 -e ranger"},
    { "editor", gui_editor }
    myinternet = {
    { "weechat", terminal .. " -g 130x30 -e weechat-curses" },
    { "sabnzbd" , "dwb http://localhost:9090" },
    { "transmission", terminal .. " -g 130x30 -e transmission-remote-cli -c xenogia:dot.dot.dot@localhost:9091" },
    { "sickbeard", "dwb http://localhost:8081" },
    { "couchpotato", "dwb http://localhost:5050"}
    mymedia = {
    { "volume", "pavucontrol"},
    { "smplayer", "smplayer"},
    { "vlc", terminal .. " -e vlc -I ncurses" },
    { "cdw", terminal .. " -g 130x30 -e cdw"},
    { "devede", "devede"},
    { "ghb" , "ghb"}
    mygames = {
    { "playonlinux", "playonlinux"},
    { "dosbox" , "dosbox"},
    { "desura", "desura"},
    { "steam", "steam" },
    mygraphics = {
    { "gimp" , "gimp" },
    { "feh" , "feh" }
    myoffice = {
    { "libreoffice" , "libreoffice" }
    mysystem = {
    { "lxappearance" , "lxappearance" },
    { "gparted" , "sudo gparted"},
    { "htop" , tasks }
    mymainmenu = awful.menu({ items = {
    { "accessories" , myaccessories },
    { "graphics" , mygraphics },
    { "internet" , myinternet },
    { "media" , mymedia },
    { "games" , mygames },
    { "office" , myoffice },
    { "system" , mysystem },
    mylauncher = awful.widget.launcher({ image = beautiful.awesome_icon,
    menu = mymainmenu })
    -- Colours
    coldef = "</span>"
    colwhi = "<span color='#b2b2b2'>"
    colbwhi = "<span color='#ffffff'>"
    blue = "<span color='#7493d2'>"
    yellow = "<span color='#e0da37'>"
    grey = "<span color='#636060'>"
    purple = "<span color='#e33a6e'>"
    lightpurple = "<span color='#eca4c4'>"
    azure = "<span color='#80d9d8'>"
    green = "<span color='#87af5f'>"
    lightgreen = "<span color='#62b786'>"
    red = "<span color='#bd0707'>"
    orange = "<span color='#ff7100'>"
    brown = "<span color='#db842f'>"
    fuchsia = "<span color='#800080'>"
    gold = "<span color='#e7b400'>"
    lightblue="<span color='#3eae9e'>"
    lightblue2="<span color='#266c76'>"
    lightblue3="<span color='#285666'>"
    lightblue4="<span color='#257c85'>"
    lightblue5="<span color='#223d5a'>"
    lightblue6="<span color='#235369'>"
    offyellow="<span color='#857b52'>"
    bottomgrey="<span color='#999999'>"
    -- {{{ Wibox
    -- {{{{ Temp
    tempicon = wibox.widget.imagebox()
    tempicon:set_image(beautiful.widget_temp)
    tempwidget = wibox.widget.textbox()
    vicious.register(tempwidget, vicious.widgets.thermal, bottomgrey .. " Temp: $1°C" .. coldef, 15, "thermal_zone0")
    -- {{{ Kernel Info
    sysicon = wibox.widget.imagebox()
    sysicon:set_image(beautiful.widget_arch)
    syswidget = wibox.widget.textbox()
    vicious.register( syswidget, vicious.widgets.os, bottomgrey .. " Kernel: $2" .. coldef)
    -- {{{ Uptime
    uptimeicon = wibox.widget.imagebox()
    uptimeicon:set_image(beautiful.widget_uptime)
    uptimewidget = wibox.widget.textbox()
    vicious.register( uptimewidget, vicious.widgets.uptime, bottomgrey .. " Uptime: $1d $2h $3m" .. coldef)
    -- {{{ Cpu
    -- CPU widget
    cpuicon = wibox.widget.imagebox()
    cpuicon:set_image(beautiful.widget_cpu)
    cpuwidget = wibox.widget.textbox()
    vicious.register(cpuwidget, vicious.widgets.cpu, bottomgrey .. " Cpu: $1%" .. coldef, 15)
    cpuicon:buttons(awful.util.table.join(awful.button({ }, 1, function () awful.util.spawn(tasks, false) end)))
    -- {{{ Ram
    -- Memory widget
    memicon = wibox.widget.imagebox()
    memicon:set_image(beautiful.widget_mem)
    memwidget = wibox.widget.textbox()
    vicious.register(memwidget, vicious.widgets.mem, bottomgrey .. " Memory: $2MB" .. coldef, 15)
    -- {{{ Mpd
    mpdicon = wibox.widget.imagebox()
    mpdicon:set_image(beautiful.widget_mpd)
    mpdwidget = wibox.widget.textbox()
    -- Register widget
    vicious.register(mpdwidget, vicious.widgets.mpd,
    function (widget, args)
    if args["{state}"] == "Stop" then
    return " - "
    else
    return args["{Artist}"]..' - '.. args["{Title}"]
    end
    end, 10)
    -- {{{ Net
    -- Net widget
    netdownicon = wibox.widget.imagebox()
    netdownicon:set_image(beautiful.widget_netdown)
    netdownicon.align = "middle"
    netdowninfo = wibox.widget.textbox()
    vicious.register(netdowninfo, vicious.widgets.net, green .. "${enp9s0 down_kb}" .. coldef, 1)
    netupicon = wibox.widget.imagebox()
    netupicon:set_image(beautiful.widget_netup)
    netupicon.align = "middle"
    netupinfo = wibox.widget.textbox()
    vicious.register(netupinfo, vicious.widgets.net, red .. "${enp9s0 up_kb}" .. coldef, 1)
    ethdowninfo = wibox.widget.textbox()
    vicious.register(ethdowninfo, vicious.widgets.net, "<span color=\"#d3c6d7\">${enp9s0 down_kb}</span>", 1)
    ethupinfo = wibox.widget.textbox()
    vicious.register(ethupinfo, vicious.widgets.net, "<span color=\"#d3c6d7\">${enp9s0 up_kb}</span>", 1)
    -- {{{ Volume
    -- Volume widget
    volicon = wibox.widget.imagebox()
    volicon:set_image(beautiful.widget_vol)
    volumewidget = wibox.widget.textbox()
    vicious.register(volumewidget, vicious.widgets.volume, bottomgrey .. " Volume: $1%" .. coldef, 1, "Master")
    -- Pacman Widget --
    -- Pacman Icon
    pacicon = wibox.widget.imagebox()
    pacicon:set_image(beautiful.widget_pac)
    -- Pacman Widget
    pacwidget = wibox.widget.textbox()
    pacwidget_t = awful.tooltip({ objects = {pacwidget},})
    vicious.register(pacwidget, vicious.widgets.pkg,
    function(widget,args)
    local io = { popen = io.popen }
    local s = io.popen("pacman -Qu")
    local str = ''
    for line in s:lines() do
    str = str .. line .. "\n"
    end
    pacwidget_t:set_text(str)
    s:close()
    return "" .. bottomgrey .. " Updates: " .. args[1] .. coldef
    end, 60, "Arch")
    --'1800' means check every 30 minutes
    pacicon:buttons(awful.util.table.join(
    awful.button({ }, 3, function () awful.util.spawn("".. terminal.. " --hold -e sudo pacman -Syu", false) end),
    awful.button({ }, 1, function () awful.util.spawn("sudo pacman -Syu", false) end)
    -- {{{ Clock
    -- Textclock widget
    clockicon = wibox.widget.imagebox()
    clockicon:set_image(beautiful.widget_clock)
    mytextclock = awful.widget.textclock(bottomgrey .. " %A %d %B</span> " .. colwhi .. "</span><span color=\"#ffffff\">></span> <span color='#999999'>%H:%M</span>")
    -- {{{ Spacers
    space = wibox.widget.textbox()
    space:set_text(' ')
    -- {{{ Seperator
    openb = wibox.widget.textbox(lightblue6 .. " [" .. coldef)
    closeb = wibox.widget.textbox(lightblue6 .. " ]" .. coldef)
    -- Create a wibox for each screen and add it
    mywibox = {}
    mybottomwibox = {}
    bottombox = {}
    mypromptbox = {}
    mylayoutbox = {}
    mytaglist = {}
    mytaglist.buttons = awful.util.table.join(
    awful.button({ }, 1, awful.tag.viewonly),
    awful.button({ modkey }, 1, awful.client.movetotag),
    awful.button({ }, 3, awful.tag.viewtoggle),
    awful.button({ modkey }, 3, awful.client.toggletag),
    awful.button({ }, 4, function(t) awful.tag.viewnext(awful.tag.getscreen(t)) end),
    awful.button({ }, 5, function(t) awful.tag.viewprev(awful.tag.getscreen(t)) end)
    mytasklist = {}
    mytasklist.buttons = awful.util.table.join(
    awful.button({ }, 1, function (c)
    if c == client.focus then
    c.minimized = true
    else
    -- Without this, the following
    -- :isvisible() makes no sense
    c.minimized = false
    if not c:isvisible() then
    awful.tag.viewonly(c:tags()[1])
    end
    -- This will also un-minimize
    -- the client, if needed
    client.focus = c
    c:raise()
    end
    end),
    awful.button({ }, 3, function ()
    if instance then
    instance:hide()
    instance = nil
    else
    instance = awful.menu.clients({ width=250 })
    end
    end),
    awful.button({ }, 4, function ()
    awful.client.focus.byidx(1)
    if client.focus then client.focus:raise() end
    end),
    awful.button({ }, 5, function ()
    awful.client.focus.byidx(-1)
    if client.focus then client.focus:raise() end
    end))
    for s = 1, screen.count() do
    -- Create a promptbox for each screen
    mypromptbox[s] = awful.widget.prompt()
    -- Create an imagebox widget which will contains an icon indicating which layout we're using.
    -- We need one layoutbox per screen.
    mylayoutbox[s] = awful.widget.layoutbox(s)
    mylayoutbox[s]:buttons(awful.util.table.join(
    awful.button({ }, 1, function () awful.layout.inc(layouts, 1) end),
    awful.button({ }, 3, function () awful.layout.inc(layouts, -1) end),
    awful.button({ }, 4, function () awful.layout.inc(layouts, 1) end),
    awful.button({ }, 5, function () awful.layout.inc(layouts, -1) end)))
    -- Create a taglist widget
    mytaglist[s] = awful.widget.taglist(s, awful.widget.taglist.filter.all, mytaglist.buttons)
    -- Create a tasklist widget
    mytasklist[s] = awful.widget.tasklist(s, awful.widget.tasklist.filter.currenttags, mytasklist.buttons)
    -- Create the wibox
    mywibox[s] = awful.wibox({ position = "top", screen = s })
    -- Widgets that are aligned to the left
    local left_layout = wibox.layout.fixed.horizontal()
    left_layout:add(mylauncher)
    left_layout:add(mypromptbox[s])
    -- Widgets that are aligned to the right
    local right_layout = wibox.layout.fixed.horizontal()
    right_layout:add(space)
    right_layout:add(space)
    -- right_layout:add(mylayoutbox[s])
    -- Now bring it all together (with the tasklist in the middle)
    local layout = wibox.layout.align.horizontal()
    layout:set_left(left_layout)
    -- layout:set_middle(mytasklist[s])
    layout:set_middle(mytaglist[s])
    layout:set_right(right_layout)
    mywibox[s]:set_widget(layout)
    -- Create Bottom WiBox
    mybottomwibox[s] = awful.wibox({ position = "bottom", screen = s })
    -- Widgets Aligned to the Middle
    local bottom_left_layout = wibox.layout.fixed.horizontal()
    bottom_left_layout:add(sysicon)
    bottom_left_layout:add(syswidget)
    bottom_left_layout:add(space)
    bottom_left_layout:add(volicon)
    bottom_left_layout:add(volumewidget)
    bottom_left_layout:add(space)
    bottom_left_layout:add(cpuicon)
    bottom_left_layout:add(cpuwidget)
    bottom_left_layout:add(space)
    bottom_left_layout:add(memicon)
    bottom_left_layout:add(memwidget)
    bottom_left_layout:add(space)
    bottom_left_layout:add(tempicon)
    bottom_left_layout:add(tempwidget)
    bottom_left_layout:add(space)
    bottom_left_layout:add(pacicon)
    bottom_left_layout:add(pacwidget)
    bottom_left_layout:add(space)
    bottom_left_layout:add(uptimeicon)
    bottom_left_layout:add(uptimewidget)
    bottom_left_layout:add(space)
    bottom_left_layout:add(clockicon)
    bottom_left_layout:add(mytextclock)
    local bottom_right_layout = wibox.layout.fixed.horizontal()
    if s == 1 then bottom_right_layout:add(wibox.widget.systray()) end
    -- Bring Bottom Wibox Together
    local bottom_layout = wibox.layout.align.horizontal()
    bottom_layout:set_middle(bottom_left_layout)
    bottom_layout:set_right(bottom_right_layout)
    mybottomwibox[s]:set_widget(bottom_layout)
    end
    -- Mouse Bindings
    root.buttons(awful.util.table.join(
    awful.button({ }, 3, function () mymainmenu:toggle() end),
    awful.button({ }, 4, awful.tag.viewnext),
    awful.button({ }, 5, awful.tag.viewprev)
    -- Key bindings
    globalkeys = awful.util.table.join(
    -- Capture a screenshot
    awful.key({ altkey }, "p", function() awful.util.spawn("screenshot",false) end),
    -- Move clients
    awful.key({ altkey }, "Next", function () awful.client.moveresize( 1, 1, -2, -2) end),
    awful.key({ altkey }, "Prior", function () awful.client.moveresize(-1, -1, 2, 2) end),
    awful.key({ altkey }, "Down", function () awful.client.moveresize( 0, 1, 0, 0) end),
    awful.key({ altkey }, "Up", function () awful.client.moveresize( 0, -1, 0, 0) end),
    awful.key({ altkey }, "Left", function () awful.client.moveresize(-1, 0, 0, 0) end),
    awful.key({ altkey }, "Right", function () awful.client.moveresize( 1, 0, 0, 0) end),
    awful.key({ modkey, }, "Left", awful.tag.viewprev ),
    awful.key({ modkey, }, "Right", awful.tag.viewnext ),
    awful.key({ modkey, }, "Escape", awful.tag.history.restore),
    awful.key({ modkey, }, "k",
    function ()
    awful.client.focus.byidx( 1)
    if client.focus then client.focus:raise() end
    end),
    awful.key({ modkey, }, "j",
    function ()
    awful.client.focus.byidx(-1)
    if client.focus then client.focus:raise() end
    end),
    awful.key({ modkey, }, "w", function () mymainmenu:show({keygrabber=true}) end),
    -- Show/Hide Wibox
    awful.key({ modkey }, "b", function ()
    mywibox[mouse.screen].visible = not mywibox[mouse.screen].visible
    end),
    -- Application Switcher
    awful.key({ "Mod1" }, "Tab", function ()
    -- If you want to always position the menu on the same place set coordinates
    awful.menu.menu_keys.down = { "Down", "Alt_L" }
    local cmenu = awful.menu.clients({width=245}, { keygrabber=true, coords={x=525, y=330} })
    end),
    -- Layout manipulation
    awful.key({ modkey, "Shift" }, "j", function () awful.client.swap.byidx( 1) end),
    awful.key({ modkey, "Shift" }, "k", function () awful.client.swap.byidx( -1) end),
    awful.key({ modkey, "Control" }, "j", function () awful.screen.focus_relative( 1) end),
    awful.key({ modkey, "Control" }, "k", function () awful.screen.focus_relative(-1) end),
    awful.key({ modkey, }, "u", awful.client.urgent.jumpto),
    awful.key({ modkey, }, "Tab",
    function ()
    awful.client.focus.history.previous()
    if client.focus then
    client.focus:raise()
    end
    end),
    -- Standard program
    awful.key({ modkey, }, "Return", function () awful.util.spawn(terminal) end),
    awful.key({ modkey, "Control" }, "r", awesome.restart),
    awful.key({ modkey, "Shift" }, "q", awesome.quit),
    awful.key({ modkey, }, "l", function () awful.tag.incmwfact( 0.05) end),
    awful.key({ modkey, }, "h", function () awful.tag.incmwfact(-0.05) end),
    awful.key({ modkey, "Shift" }, "h", function () awful.tag.incnmaster( 1) end),
    awful.key({ modkey, "Shift" }, "l", function () awful.tag.incnmaster(-1) end),
    awful.key({ modkey, "Control" }, "h", function () awful.tag.incncol( 1) end),
    awful.key({ modkey, "Control" }, "l", function () awful.tag.incncol(-1) end),
    awful.key({ modkey, }, "space", function () awful.layout.inc(layouts, 1) end),
    awful.key({ modkey, "Shift" }, "space", function () awful.layout.inc(layouts, -1) end),
    awful.key({ modkey, "Control" }, "n", awful.client.restore),
    -- Dropdown terminal
    awful.key({ modkey, }, "z", function () scratch.drop(terminal) end),
    -- Widgets popups
    -- Volume control
    awful.key({ "Control" }, "Up", function ()
    awful.util.spawn("amixer set Master playback 1%+", false )
    vicious.force({ volumewidget })
    end),
    awful.key({ "Control" }, "Down", function ()
    awful.util.spawn("amixer set Master playback 1%-", false )
    vicious.force({ volumewidget })
    end),
    awful.key({ "Control" }, "m", function ()
    awful.util.spawn("amixer set Master playback mute", false )
    vicious.force({ volumewidget })
    end),
    awful.key({ "Control" }, "u", function ()
    awful.util.spawn("amixer set Master playback unmute", false )
    vicious.force({ volumewidget })
    end),
    awful.key({ altkey, "Control" }, "m", function ()
    awful.util.spawn("amixer set Master playback 100%", false )
    vicious.force({ volumewidget })
    end),
    -- Music control
    awful.key({ altkey, "Control" }, "Up", function ()
    awful.util.spawn( "mpc toggle", false )
    vicious.force({ mpdwidget } )
    end),
    awful.key({ altkey, "Control" }, "Down", function ()
    awful.util.spawn( "mpc stop", false )
    vicious.force({ mpdwidget } )
    end ),
    awful.key({ altkey, "Control" }, "Left", function ()
    awful.util.spawn( "mpc prev", false )
    vicious.force({ mpdwidget } )
    end ),
    awful.key({ altkey, "Control" }, "Right", function ()
    awful.util.spawn( "mpc next", false )
    vicious.force({ mpdwidget } )
    end ),
    -- Copy to clipboard
    awful.key({ modkey, }, "c", function () os.execute("xsel -p -o | xsel -i -b") end),
    -- User programs
    awful.key({ modkey, }, "q", function () awful.util.spawn( "dwb", false ) end),
    awful.key({ modkey, "Control" }, "m", function () awful.util.spawn( terminal .. " -g 130x30 -e mutt", false ) end),
    awful.key({ modkey, }, "s", function () awful.util.spawn(gui_editor) end),
    awful.key({ modkey, "Control" }, "f", function () awful.util.spawn( terminal .. " -depth 16 -g 130x30 -e ranger", false ) end),
    awful.key({ modkey, "Control" }, "v", function () awful.util.spawn( "/usr/local/bin/video", false) end),
    -- awful.key({ modkey, }, "d", function () awful.util.spawn( "spacefm", false ) end),
    -- Conky
    -- Prompt
    awful.key({ modkey }, "r", function () mypromptbox[mouse.screen]:run() end),
    awful.key({ modkey }, "x",
    function ()
    awful.prompt.run({ prompt = "Run Lua code: " },
    mypromptbox[mouse.screen].widget,
    awful.util.eval, nil,
    awful.util.getdir("cache") .. "/history_eval")
    end)
    clientkeys = awful.util.table.join(
    awful.key({ modkey, }, "f", function (c) c.fullscreen = not c.fullscreen end),
    awful.key({ modkey, "Shift" }, "c", function (c) c:kill() end),
    awful.key({ modkey, "Control" }, "space", awful.client.floating.toggle ),
    awful.key({ modkey, "Control" }, "Return", function (c) c:swap(awful.client.getmaster()) end),
    awful.key({ modkey, }, "o", awful.client.movetoscreen ),
    awful.key({ modkey, }, "t", function (c) c.ontop = not c.ontop end),
    awful.key({ modkey, }, "n",
    function (c)
    -- The client currently has the input focus, so it cannot be
    -- minimized, since minimized clients can't have the focus.
    c.minimized = true
    end),
    awful.key({ modkey, }, "m",
    function (c)
    c.maximized_horizontal = not c.maximized_horizontal
    c.maximized_vertical = not c.maximized_vertical
    end)
    -- Compute the maximum number of digit we need, limited to 9
    keynumber = 0
    for s = 1, screen.count() do
    keynumber = math.min(9, math.max(#tags[s], keynumber));
    end
    -- Bind all key numbers to tags.
    -- Be careful: we use keycodes to make it works on any keyboard layout.
    -- This should map on the top row of your keyboard, usually 1 to 9.
    for i = 1, keynumber do
    globalkeys = awful.util.table.join(globalkeys,
    awful.key({ modkey }, "#" .. i + 9,
    function ()
    screen = mouse.screen
    if tags[screen][i] then
    awful.tag.viewonly(tags[screen][i])
    end
    end),
    awful.key({ modkey, "Control" }, "#" .. i + 9,
    function ()
    screen = mouse.screen
    if tags[screen][i] then
    awful.tag.viewtoggle(tags[screen][i])
    end
    end),
    awful.key({ modkey, "Shift" }, "#" .. i + 9,
    function ()
    if client.focus and tags[client.focus.screen][i] then
    awful.client.movetotag(tags[client.focus.screen][i])
    end
    end),
    awful.key({ modkey, "Control", "Shift" }, "#" .. i + 9,
    function ()
    if client.focus and tags[client.focus.screen][i] then
    awful.client.toggletag(tags[client.focus.screen][i])
    end
    end))
    end
    clientbuttons = awful.util.table.join(
    awful.button({ }, 1, function (c) client.focus = c; c:raise() end),
    awful.button({ modkey }, 1, awful.mouse.client.move),
    awful.button({ modkey }, 3, awful.mouse.client.resize))
    -- Set keys
    root.keys(globalkeys)
    -- Rules
    awful.rules.rules = {
    -- All clients will match this rule.
    { rule = { },
    properties = { border_width = beautiful.border_width,
    border_color = beautiful.border_normal,
    focus = true,
    keys = clientkeys,
    buttons = clientbuttons,
    size_hints_honor = false
    { rule = { class = "MPlayer" },
    properties = { floating = true } },
    { rule = { name = "PlayOnLinux" },
    properties = { tag = tags[1][1] } },
    { rule = { instance = "urxvt", class = "URxvt" },
    properties = { tag = tags[1][2] } },
    { rule = { class = "Sublime_text" },
    properties = { tag = tags[1][4] } },
    { rule = { instance = "urxvt", class = "URxvt", name = "sabcurses.py"},
    properties = { tag = tags[1][5] } },
    { rule = { instance = "urxvt", class = "URxvt", name = "ranger"},
    properties = { tag = tags[1][2] } },
    { rule = { instance = "urxvt", class = "URxvt", name = "weechat"},
    properties = { tag = tags[1][3] } },
    { rule = { instance = "urxvt", class = "URxvt", name = "mutt" },
    properties = { tag = tags[1][3] } },
    { rule = { instance = "urxvt", class = "URxvt", name = "htop" },
    properties = { tag = tags[1][2] } },
    { rule = { instance = "urxvt", class = "URxvt", name = "cdw" },
    properties = { tag = tags[1][2] } },
    { rule = { instance = "urxvt", class = "URxvt", name = "transmission-remote-cli"},
    properties = { tag = tags[1][5] } },
    { rule = { instance = "urxvt", class = "URxvt", name = "vlc"},
    properties = { tag = tags[1][4] } },
    { rule = { class = "Conky" },
    properties = {
    floating = true,
    sticky = true,
    ontop = false,
    border_width = 0,
    focusable = false,
    size_hints = {"program_position", "program_size"}
    { rule = { class = "Ghb" },
    properties = { tag = tags[1][1] } },
    { rule = { class = "Devede" },
    properties = { tag = tags[1][1] } },
    { rule = { name = "LibreOffice"},
    properties = { tag = tags[1][4] } },
    { rule = { class = "Gimp" },
    properties = { tag = tags[1][1],
    floating = true } },
    -- Signals
    -- Signal function to execute when a new client appears.
    client.connect_signal("manage", function (c, startup)
    -- Enable sloppy focus
    c:connect_signal("mouse::enter", function(c)
    if awful.layout.get(c.screen) ~= awful.layout.suit.magnifier
    and awful.client.focus.filter(c) then
    client.focus = c
    end
    end)
    if not startup then
    -- Set the windows at the slave,
    -- i.e. put it at the end of others instead of setting it master.
    -- awful.client.setslave(c)
    -- Put windows in a smart way, only if they does not set an initial position.
    if not c.size_hints.user_position and not c.size_hints.program_position then
    awful.placement.no_overlap(c)
    awful.placement.no_offscreen(c)
    end
    end
    local titlebars_enabled = false
    if titlebars_enabled and (c.type == "normal" or c.type == "dialog") then
    -- Widgets that are aligned to the left
    local left_layout = wibox.layout.fixed.horizontal()
    left_layout:add(awful.titlebar.widget.iconwidget(c))
    -- Widgets that are aligned to the right
    local right_layout = wibox.layout.fixed.horizontal()
    right_layout:add(awful.titlebar.widget.floatingbutton(c))
    right_layout:add(awful.titlebar.widget.maximizedbutton(c))
    right_layout:add(awful.titlebar.widget.stickybutton(c))
    right_layout:add(awful.titlebar.widget.ontopbutton(c))
    right_layout:add(awful.titlebar.widget.closebutton(c))
    right_layout:add(awful.titlebar.widget.closebutton(c))
    -- The title goes in the middle
    local title = awful.titlebar.widget.titlewidget(c)
    title:buttons(awful.util.table.join(
    awful.button({ }, 1, function()
    client.focus = c
    c:raise()
    awful.mouse.client.move(c)
    end),
    awful.button({ }, 3, function()
    client.focus = c
    c:raise()
    awful.mouse.client.resize(c)
    end)
    -- Now bring it all together
    local layout = wibox.layout.align.horizontal()
    layout:set_left(left_layout)
    layout:set_right(right_layout)
    layout:set_middle(title)
    awful.titlebar(c):set_widget(layout)
    end
    end)
    client.connect_signal("focus", function(c) c.border_color = beautiful.border_focus end)
    client.connect_signal("unfocus", function(c) c.border_color = beautiful.border_normal end)

    @Prezioso: sorry about that i will upload some screenshots about error
    Sloved. Thank you very much. urxvt not install, i change terminal to gnome-terminal.
    I have one question about themes for copycat-killer. This is github https://github.com/copycat-killer/awesome-copycats.
    I can't use his themes althought installed fonts are Terminus (Multicolor, Powerarrow Darker) and Tamsyn (other ones).
    Then I copy them to ~/.fonts and use command " fc-cache -fv ". after that restart awesome but error font. What wrong i do. ?
    this is my calendar.lua file
    Licensed under GNU General Public License v2
    * (c) 2013, Luke Bonham
    local icons_dir = require("lain.helpers").icons_dir
    local awful = require("awful")
    local beautiful = require("beautiful")
    local naughty = require("naughty")
    local io = { popen = io.popen }
    local os = { date = os.date }
    local tonumber = tonumber
    local setmetatable = setmetatable
    -- Calendar notification
    -- lain.widgets.calendar
    local calendar = {}
    local cal_notification = nil
    function calendar:hide()
    if cal_notification ~= nil then
    naughty.destroy(cal_notification)
    cal_notification = nil
    end
    end
    function calendar:show(t_out, inc_offset, scr)
    calendar:hide()
    local offs = inc_offset or 0
    local tims = t_out or 0
    local f, c_text
    local today = tonumber(os.date('%d'))
    local init_t = calendar.cal .. ' | sed -r -e "s/(^| )( '
    calendar.offset = calendar.offset + offs
    if offs == 0 or calendar.offset == 0
    then -- current month showing, today highlighted
    if today >= 10
    then
    init_t = calendar.cal .. ' | sed -r -e "s/_\\x08//g" | sed -r -e "s/(^| )('
    end
    calendar.offset = 0
    calendar.notify_icon = calendar.icons .. today .. ".png"
    -- bg and fg inverted to highlight today
    f = io.popen( init_t .. today ..
    ')($| )/\\1<b><span foreground=\\"'
    .. calendar.bg ..
    '\\" background=\\"'
    .. calendar.fg ..
    '\\">\\2<\\/span><\\/b>\\3/"' )
    else -- no current month showing, no day to highlight
    local month = tonumber(os.date('%m'))
    local year = tonumber(os.date('%Y'))
    month = month + calendar.offset
    if month > 12 then
    month = month % 12
    year = year + 1
    if month <= 0 then
    month = 12
    end
    elseif month < 1 then
    month = month + 12
    year = year - 1
    if month <= 0 then
    month = 1
    end
    end
    calendar.notify_icon = nil
    f = io.popen(calendar.cal .. ' ' .. month .. ' ' .. year)
    end
    c_text = "<tt><span font='" .. calendar.font .. " "
    .. calendar.font_size .. "'><b>"
    .. f:read() .. "</b>\n\n"
    .. f:read() .. "\n"
    .. f:read("*a"):gsub("\n*$", "")
    .. "</span></tt>"
    f:close()
    cal_notification = naughty.notify({
    text = c_text,
    icon = calendar.notify_icon,
    position = calendar.position,
    fg = calendar.fg,
    bg = calendar.bg,
    timeout = tims,
    screen = scr or 1
    end
    function calendar:attach(widget, args)
    local args = args or {}
    calendar.cal = args.cal or "/usr/bin/cal"
    calendar.icons = args.icons or icons_dir .. "cal/white/"
    calendar.font = args.font or beautiful.font:sub(beautiful.font:find(""),
    beautiful.font:find(" "))
    calendar.font_size = tonumber(args.font_size) or 11
    calendar.fg = args.fg or beautiful.fg_normal or "#FFFFFF"
    calendar.bg = args.bg or beautiful.bg_normal or "#FFFFFF"
    calendar.position = args.position or "top_right"
    calendar.scr_pos = args.scr_pos or 1
    calendar.offset = 0
    calendar.notify_icon = nil
    widget:connect_signal("mouse::enter", function () calendar:show(0, 0, scr_pos) end)
    widget:connect_signal("mouse::leave", function () calendar:hide() end)
    widget:buttons(awful.util.table.join( awful.button({ }, 1, function ()
    calendar:show(0, -1, scr_pos) end),
    awful.button({ }, 3, function ()
    calendar:show(0, 1, scr_pos) end),
    awful.button({ }, 4, function ()
    calendar:show(0, -1, scr_pos) end),
    awful.button({ }, 5, function ()
    calendar:show(0, 1, scr_pos) end)))
    end
    return setmetatable(calendar, { __call = function(_, ...) return create(...) end })
    Thank everyone.
    Last edited by zyzzvn (2015-02-04 14:55:21)

  • [SOLVED]MPD, PulseAudio & Systemd/User

    Since the advent of skype 4.3 I've had to switch to using pulseaudio. Things seems to be working fine except for the interaction between pulseaudio and mpd. My goal is to attain the same functionality as I had before when I was just using alsa. The main problem seems to be that the mpd daemon starts before pulseaudio. This means that when I reboot, for example, my music doesn't automatically keep playing. However if I toggle mpc (or open ncmpcpp and unpause) then it works fine.
    What I have done
    1) I installed mpd using the script found on the wiki
    1a) copied ~/.config/mpd/mpd.conf to /etc/mpd.conf and uncomment #user line so it runs as my user
    1b) enabled the mpd service with systemctl so it starts on boot, as directed to from 1)
    2) Applied the workaround detailed here to make pulseaudio play nice with mpd
    From what I can understand this results in the mpd daemon using the /etc/mpd.conf file which mirrors my local one (but I think the process is still started as root?)
    If I don't do 2) then I get a problem where if I try to open pavucontrol I get an error saying I'm unable to connect and the system feels very unresponsive. Two second delays navigating around in thunar for example.
    fuser /dev/snd/* outputs
    » sudo fuser /dev/snd/*
    /dev/snd/controlC0: 440
    /dev/snd/controlC1: 440
    /dev/snd/pcmC0D0p: 440m
    » ps aux | grep 440
    quiv 440 1.2 0.1 495964 13248 ? Sl 15:16 0:05 /usr/bin/pulseaudio --start --log-target=syslog
    quiv 2259 0.0 0.0 11668 2296 pts/0 S+ 15:23 0:00 grep --color=auto 440
    For now I have added in
    if grep -q "state: pause" /home/quiv/.config/mpd/state; then
    mpc toggle
    fi
    to my ~/.xinitrc as a work around to get pulse and mpd to work together properly. However it doesn't seem to work all the time. If I leave my music playing then when I reboot the system with reboot it seems that somtimes the state is being saved as paused, and other times as play. I suppose I could just mpc toggle without checking, but I don't want a situation where if I happen to not be playing music that every time I reboot my music starts playing.
    Other things I have tried are;
    A) not using pulseaudio with mpd.
    B) not using systemd to manage mpd. Instead I manually started it in .xinitrc and pointed it to my ~/.config/mpd/mpd.conf file. I believe this means it runs as my own user instead of as root. When I did this I commented the username line and also undid 2) from above in ~/.config/mpd/mpd.conf
    The problem with A) is that if I use alsa with mpd, mpd hogs my soundcard. My card becomes unselectable in pavucontrol and I cannot use it with pulseaudio., meanng no skype. The benefit of doing this (this is how I used to do it before I needed pulseaudio) is I have no problems with mpd's state being saved incorrectly.
    The problem with B) is the mpdstate is saved incorrectly when for example I issue reboot. I can reproduce this by changing my currently played song then rebooting. When I boot back up mpd resumes playback from the previous session instead of recognizing the last thing I was playing. I had a search around on the forums and I found this issue which seems to describe what is happening. There doesn't seem to be a solution there instead a suggestion to user systemd (which I would like to do!) instead to manage mpd. Rasi's post details a unit file but I'm unsure what to do with this.
    Looking at the wiki it seems like maybe I am supposed to provide this file so that it overwrites the default mpd.service unit. So I followed the steps listed there. First I created the directory /etc/systemd/system/mpd.d/ then made the user.conf file inside. I tried just putting the additional arguments in
    [Service]
    User=YOUR_USER
    PAMName=system-local-login
    I also remember trying to overwrite the entire [Service] section of the original by using
    [Service]
    User=YOUR_USER
    PAMName=system-local-login
    ExecStart=
    ExecStart=/usr/bin/mpd --no-daemon
    because I think just adding the addtional parameters might not have worked. But I'm not sure on this point, maybe both ways worked. This seemed to work but I had the same problem as above. The state was still being saved incorrectly sometimes when I rebooted. I would get a previous session instead of the most recent change. So I tried the other method for overwriting systemd unit files and made the file /etc/systemd/system/mpd.service in which I pasted Rasi's entire unit file. This also seemed to work, but still the incorrect state problem happened.
    At this point I didn't know what to try. It seemed like the only option left was to set up mpd using a local configuration and setting up a systemd/User session and managing it that way. The wiki indiciated that if I did it this way I would not have to use the method 2) above. However I was/still am hesistant about doing this. I'm new to arch and the systemd/User wiki page seems very intimidating. I worry that I will create problems that I won't understand how to solve using this method just for the chance that mpd will function correclty with pulse. However I seemed to have exhausted all my possible options so I thought whatever I'll try it anyway! I'm certain I probably haven't done it right however.
    So once again I turned to the wiki to help me with setting this up. However I can't make sense of the article. I don't know if I should follow ONLY the Setup since systemd 206 or if I should follow both setup sections? I decided to follow only the first section. I use no DE so I commented out the
    [[ -z $DISPLAY && $XDG_VTNR -eq 1 ]] && exec startx
    line in my ~/.zprofile. When I set up my system I followed the Automatic login to virtual console. I left this file alone, but upon second thoughts maybe I should have disabled this too? I don't understand if using xlogin-git to austoart Xorg, as described in the systemd/User page, requires me to get rid of this too. I think xlogin-git just starts Xorg so automatic login via getty should be fine?
    Immediately when I boot in using systemd to manage my session I notice that there are problems. I don't think my environment variables are being sourced from .zshenv because my panel fails to load. If I kill the panel and load it again it works. This makes me think there is something wrong with the order of units started with systemd.
    » sudo journalctl --this-boot --no-pager | grep -i panel ~
    Jul 05 16:25:39 lorelai bash[494]: /home/quiv/.config/bspwm/panel/panel: line 16: : No such file or directory
    Jul 05 16:25:39 lorelai bash[494]: /home/quiv/.config/bspwm/panel/panel: line 17: : No such file or directory
    Jul 05 16:25:39 lorelai bash[494]: /home/quiv/.config/bspwm/panel/panel: line 18: : No such file or directory
    In each instance panel is trying to do things based on $PANEL_FIFO which is exported from ~/.zshenv but it doesn't appear to be set at the time systemd starts things up. Apart from these problems, which are probably undoubtedly due to the fact I failed to set up systemd/User properly, I still have problems with mpd. The state seems to be remembered correctly now, however when I reboot I still have to toggle mpc for it to start playback. It seems to be the same problem as when I use setup detailed intially. I suspect perhaps once again there is something wrong with the order here. MPD starts before pulse so it doesn't find anything to play through, then once I issue the mpc toggle command pulse is started and all is happy.
    A final note is that I was getting this error yesterday when using systemd/User
    ● mpd.service - Music Player Daemon
    Loaded: loaded (/usr/lib/systemd/system/mpd.service; enabled)
    Active: inactive (dead)
    Jul 05 03:11:41 lorelai pulseaudio[450]: [pulseaudio] module-jackdbus-detect.c: Unable to contact D-Bus session bus: org.freedesktop.DBus.Error.NotSupported: Unable to autolaunch a dbus-daemon without a $DISPLAY for X11
    Jul 05 03:11:41 lorelai pulseaudio[450]: [pulseaudio] module.c: Failed to load module "module-jackdbus-detect" (argument: "channels=2"): initialization failed.
    Jul 05 03:11:41 lorelai pulseaudio[450]: [pulseaudio] main.c: Module load failed.
    Jul 05 03:13:35 lorelai systemd[1]: Stopping Music Player Daemon...
    Jul 05 03:13:35 lorelai systemd[1]: Stopped Music Player Daemon.
    but it doesn't seem to happen anymore.
    Also I have no idea if I'm even supposed to use it like this but
    » sudo systemctl --user enable mpd ~
    Failed to get D-Bus connection: Connection refused
    I tried this because I was wondering if mpd was even using the correct service when using systemd/User. I thought perhaps it just was using the one in /etc/systemd/system/ instead of /usr/lib/systemd/user/. I'm still not sure about this.
    In the end I've exhausted whatever I can think of. I'm sure I've done a lot of things wrong but I tried my best. Hopefully somebody knows what I've done wrong and can help me.
    ~/.config/mpd/mpd.conf
    # An example configuration file for MPD.
    # Read the user manual for documentation: http://www.musicpd.org/doc/user/
    # Files and directories #######################################################
    # This setting controls the top directory which MPD will search to discover the
    # available audio files and add them to the daemon's online database. This
    # setting defaults to the XDG directory, otherwise the music directory will be
    # be disabled and audio files will only be accepted over ipc socket (using
    # file:// protocol) or streaming files over an accepted protocol.
    music_directory "~/Music"
    # This setting sets the MPD internal playlist directory. The purpose of this
    # directory is storage for playlists created by MPD. The server will use
    # playlist files not created by the server but only if they are in the MPD
    # format. This setting defaults to playlist saving being disabled.
    playlist_directory "~/.config/mpd/playlists"
    # This setting sets the location of the MPD database. This file is used to
    # load the database at server start up and store the database while the
    # server is not up. This setting defaults to disabled which will allow
    # MPD to accept files over ipc socket (using file:// protocol) or streaming
    # files over an accepted protocol.
    db_file "~/.config/mpd/database"
    # These settings are the locations for the daemon log files for the daemon.
    # These logs are great for troubleshooting, depending on your log_level
    # settings.
    # The special value "syslog" makes MPD use the local syslog daemon. This
    # setting defaults to logging to syslog, otherwise logging is disabled.
    log_file "~/.config/mpd/log"
    # This setting sets the location of the file which stores the process ID
    # for use of mpd --kill and some init scripts. This setting is disabled by
    # default and the pid file will not be stored.
    pid_file "~/.config/mpd/pid"
    # This setting sets the location of the file which contains information about
    # most variables to get MPD back into the same general shape it was in before
    # it was brought down. This setting is disabled by default and the server
    # state will be reset on server start up.
    state_file "~/.config/mpd/state"
    # The location of the sticker database. This is a database which
    # manages dynamic information attached to songs.
    sticker_file "~/.config/mpd/sticker.sql"
    # General music daemon options ################################################
    # This setting specifies the user that MPD will run as. MPD should never run as
    # root and you may use this setting to make MPD change its user ID after
    # initialization. This setting is disabled by default and MPD is run as the
    # current user.
    #user "quiv"
    # This setting specifies the group that MPD will run as. If not specified
    # primary group of user specified with "user" setting will be used (if set).
    # This is useful if MPD needs to be a member of group such as "audio" to
    # have permission to use sound card.
    #group "nogroup"
    # This setting sets the address for the daemon to listen on. Careful attention
    # should be paid if this is assigned to anything other then the default, any.
    # This setting can deny access to control of the daemon.
    # For network
    bind_to_address "127.0.0.1"
    # And for Unix Socket
    bind_to_address "~/.config/mpd/socket"
    # This setting is the TCP port that is desired for the daemon to get assigned
    # to.
    port "6600"
    # This setting controls the type of information which is logged. Available
    # setting arguments are "default", "secure" or "verbose". The "verbose" setting
    # argument is recommended for troubleshooting, though can quickly stretch
    # available resources on limited hardware storage.
    log_level "default"
    # If you have a problem with your MP3s ending abruptly it is recommended that
    # you set this argument to "no" to attempt to fix the problem. If this solves
    # the problem, it is highly recommended to fix the MP3 files with vbrfix
    # (available from <http://www.willwap.co.uk/Programs/vbrfix.php>), at which
    # point gapless MP3 playback can be enabled.
    gapless_mp3_playback "yes"
    # Setting "restore_paused" to "yes" puts MPD into pause mode instead
    # of starting playback after startup.
    #restore_paused "no"
    # This setting enables MPD to create playlists in a format usable by other
    # music players.
    #save_absolute_paths_in_playlists "no"
    # This setting defines a list of tag types that will be extracted during the
    # audio file discovery process. The complete list of possible values can be
    # found in the mpd.conf man page.
    #metadata_to_use "artist,album,title,track,name,genre,date,composer,performer,disc"
    # This setting enables automatic update of MPD's database when files in
    # music_directory are changed.
    auto_update "yes"
    # Limit the depth of the directories being watched, 0 means only watch
    # the music directory itself. There is no limit by default.
    auto_update_depth "3"
    # Symbolic link behavior ######################################################
    # If this setting is set to "yes", MPD will discover audio files by following
    # symbolic links outside of the configured music_directory.
    #follow_outside_symlinks "yes"
    # If this setting is set to "yes", MPD will discover audio files by following
    # symbolic links inside of the configured music_directory.
    #follow_inside_symlinks "yes"
    # Zeroconf / Avahi Service Discovery ##########################################
    # If this setting is set to "yes", service information will be published with
    # Zeroconf / Avahi.
    #zeroconf_enabled "yes"
    # The argument to this setting will be the Zeroconf / Avahi unique name for
    # this MPD server on the network.
    #zeroconf_name "Music Player"
    # Permissions #################################################################
    # If this setting is set, MPD will require password authorization. The password
    # can setting can be specified multiple times for different password profiles.
    #password "password@read,add,control,admin"
    # This setting specifies the permissions a user has who has not yet logged in.
    #default_permissions "read,add,control,admin"
    # Database #######################################################################
    #database {
    # plugin "proxy"
    # host "other.mpd.host"
    # port "6600"
    # Input #######################################################################
    input {
    plugin "curl"
    proxy "proxy.isp.com:8080"
    proxy_user "user"
    proxy_password "password"
    # Audio Output ################################################################
    # MPD supports various audio output types, as well as playing through multiple
    # audio outputs at the same time, through multiple audio_output settings
    # blocks. Setting this block is optional, though the server will only attempt
    # autodetection for one sound card.
    # An example of an ALSA output:
    #audio_output {
    # type "alsa"
    # name "My ALSA Device"
    ## device "hw:0,0" # optional
    ## mixer_type "hardware" # optional
    ## mixer_device "default" # optional
    ## mixer_control "PCM" # optional
    ## mixer_index "0" # optional
    audio_output {
    type "pulse"
    name "pulse audio"
    format "48000:16:2"
    ## server "127.0.0.1"
    ## sink "remote_server_sink" # optional
    # An example of an OSS output:
    #audio_output {
    # type "oss"
    # name "My OSS Device"
    ## device "/dev/dsp" # optional
    ## mixer_type "hardware" # optional
    ## mixer_device "/dev/mixer" # optional
    ## mixer_control "PCM" # optional
    # An example of a shout output (for streaming to Icecast):
    #audio_output {
    # type "shout"
    # encoding "ogg" # optional
    # name "My Shout Stream"
    # host "localhost"
    # port "8000"
    # mount "/mpd.ogg"
    # password "hackme"
    # quality "5.0"
    # bitrate "128"
    # format "44100:16:1"
    ## protocol "icecast2" # optional
    ## user "source" # optional
    ## description "My Stream Description" # optional
    ## url "http://example.com" # optional
    ## genre "jazz" # optional
    ## public "no" # optional
    ## timeout "2" # optional
    ## mixer_type "software" # optional
    # An example of a recorder output:
    #audio_output {
    # type "recorder"
    # name "My recorder"
    # encoder "vorbis" # optional, vorbis or lame
    # path "/var/lib/mpd/recorder/mpd.ogg"
    ## quality "5.0" # do not define if bitrate is defined
    # bitrate "128" # do not define if quality is defined
    # format "44100:16:1"
    # An example of a httpd output (built-in HTTP streaming server):
    #audio_output {
    # type "httpd"
    # name "My HTTP Stream"
    # encoder "vorbis" # optional, vorbis or lame
    # port "8000"
    # bind_to_address "0.0.0.0" # optional, IPv4 or IPv6
    ## quality "5.0" # do not define if bitrate is defined
    # bitrate "128" # do not define if quality is defined
    # format "44100:16:1"
    # max_clients "0" # optional 0=no limit
    # An example of a pulseaudio output (streaming to a remote pulseaudio server)
    #audio_output {
    # type "pulse"
    # name "My Pulse Output"
    ## server "remote_server" # optional
    ## sink "remote_server_sink" # optional
    # An example of a winmm output (Windows multimedia API).
    #audio_output {
    # type "winmm"
    # name "My WinMM output"
    ## device "Digital Audio (S/PDIF) (High Definition Audio Device)" # optional
    # or
    ## device "0" # optional
    ## mixer_type "hardware" # optional
    # An example of an openal output.
    #audio_output {
    # type "openal"
    # name "My OpenAL output"
    ## device "Digital Audio (S/PDIF) (High Definition Audio Device)" # optional
    ## Example "pipe" output:
    #audio_output {
    # type "pipe"
    # name "my pipe"
    # command "aplay -f cd 2>/dev/null"
    ## Or if you're want to use AudioCompress
    # command "AudioCompress -m | aplay -f cd 2>/dev/null"
    ## Or to send raw PCM stream through PCM:
    # command "nc example.org 8765"
    # format "44100:16:2"
    ## An example of a null output (for no audio output):
    #audio_output {
    # type "null"
    # name "My Null Output"
    # mixer_type "none" # optional
    # If MPD has been compiled with libsamplerate support, this setting specifies
    # the sample rate converter to use. Possible values can be found in the
    # mpd.conf man page or the libsamplerate documentation. By default, this is
    # setting is disabled.
    #samplerate_converter "Fastest Sinc Interpolator"
    # Normalization automatic volume adjustments ##################################
    # This setting specifies the type of ReplayGain to use. This setting can have
    # the argument "off", "album", "track" or "auto". "auto" is a special mode that
    # chooses between "track" and "album" depending on the current state of
    # random playback. If random playback is enabled then "track" mode is used.
    # See <http://www.replaygain.org> for more details about ReplayGain.
    # This setting is off by default.
    replaygain "album"
    # This setting sets the pre-amp used for files that have ReplayGain tags. By
    # default this setting is disabled.
    replaygain_preamp "0"
    # This setting sets the pre-amp used for files that do NOT have ReplayGain tags.
    # By default this setting is disabled.
    #replaygain_missing_preamp "0"
    # This setting enables or disables ReplayGain limiting.
    # MPD calculates actual amplification based on the ReplayGain tags
    # and replaygain_preamp / replaygain_missing_preamp setting.
    # If replaygain_limit is enabled MPD will never amplify audio signal
    # above its original level. If replaygain_limit is disabled such amplification
    # might occur. By default this setting is enabled.
    #replaygain_limit "yes"
    # This setting enables on-the-fly normalization volume adjustment. This will
    # result in the volume of all playing audio to be adjusted so the output has
    # equal "loudness". This setting is disabled by default.
    #volume_normalization "no"
    # MPD Internal Buffering ######################################################
    # This setting adjusts the size of internal decoded audio buffering. Changing
    # this may have undesired effects. Don't change this if you don't know what you
    # are doing.
    #audio_buffer_size "4096"
    # This setting controls the percentage of the buffer which is filled before
    # beginning to play. Increasing this reduces the chance of audio file skipping,
    # at the cost of increased time prior to audio playback.
    #buffer_before_play "10%"
    # Resource Limitations ########################################################
    # These settings are various limitations to prevent MPD from using too many
    # resources. Generally, these settings should be minimized to prevent security
    # risks, depending on the operating resources.
    #connection_timeout "60"
    #max_connections "10"
    #max_playlist_length "16384"
    #max_command_list_size "2048"
    #max_output_buffer_size "8192"
    # Character Encoding ##########################################################
    # If file or directory names do not display correctly for your locale then you
    # may need to modify this setting.
    #filesystem_charset "UTF-8"
    # This setting controls the encoding that ID3v1 tags should be converted from.
    #id3v1_encoding "ISO-8859-1"
    # SIDPlay decoder #############################################################
    # songlength_database:
    # Location of your songlengths file, as distributed with the HVSC.
    # The sidplay plugin checks this for matching MD5 fingerprints.
    # See http://www.c64.org/HVSC/DOCUMENTS/Songlengths.faq
    # default_songlength:
    # This is the default playing time in seconds for songs not in the
    # songlength database, or in case you're not using a database.
    # A value of 0 means play indefinitely.
    # filter:
    # Turns the SID filter emulation on or off.
    #decoder {
    # plugin "sidplay"
    # songlength_database "/media/C64Music/DOCUMENTS/Songlengths.txt"
    # default_songlength "120"
    # filter "true"
    /etc/mpd.config
    # An example configuration file for MPD.
    # Read the user manual for documentation: http://www.musicpd.org/doc/user/
    # Files and directories #######################################################
    # This setting controls the top directory which MPD will search to discover the
    # available audio files and add them to the daemon's online database. This
    # setting defaults to the XDG directory, otherwise the music directory will be
    # be disabled and audio files will only be accepted over ipc socket (using
    # file:// protocol) or streaming files over an accepted protocol.
    music_directory "~/Music"
    # This setting sets the MPD internal playlist directory. The purpose of this
    # directory is storage for playlists created by MPD. The server will use
    # playlist files not created by the server but only if they are in the MPD
    # format. This setting defaults to playlist saving being disabled.
    playlist_directory "~/.config/mpd/playlists"
    # This setting sets the location of the MPD database. This file is used to
    # load the database at server start up and store the database while the
    # server is not up. This setting defaults to disabled which will allow
    # MPD to accept files over ipc socket (using file:// protocol) or streaming
    # files over an accepted protocol.
    db_file "~/.config/mpd/database"
    # These settings are the locations for the daemon log files for the daemon.
    # These logs are great for troubleshooting, depending on your log_level
    # settings.
    # The special value "syslog" makes MPD use the local syslog daemon. This
    # setting defaults to logging to syslog, otherwise logging is disabled.
    log_file "~/.config/mpd/log"
    # This setting sets the location of the file which stores the process ID
    # for use of mpd --kill and some init scripts. This setting is disabled by
    # default and the pid file will not be stored.
    pid_file "~/.config/mpd/pid"
    # This setting sets the location of the file which contains information about
    # most variables to get MPD back into the same general shape it was in before
    # it was brought down. This setting is disabled by default and the server
    # state will be reset on server start up.
    state_file "~/.config/mpd/state"
    # The location of the sticker database. This is a database which
    # manages dynamic information attached to songs.
    sticker_file "~/.config/mpd/sticker.sql"
    # General music daemon options ################################################
    # This setting specifies the user that MPD will run as. MPD should never run as
    # root and you may use this setting to make MPD change its user ID after
    # initialization. This setting is disabled by default and MPD is run as the
    # current user.
    user "quiv"
    # This setting specifies the group that MPD will run as. If not specified
    # primary group of user specified with "user" setting will be used (if set).
    # This is useful if MPD needs to be a member of group such as "audio" to
    # have permission to use sound card.
    #group "nogroup"
    # This setting sets the address for the daemon to listen on. Careful attention
    # should be paid if this is assigned to anything other then the default, any.
    # This setting can deny access to control of the daemon.
    # For network
    bind_to_address "127.0.0.1"
    # And for Unix Socket
    bind_to_address "~/.config/mpd/socket"
    # This setting is the TCP port that is desired for the daemon to get assigned
    # to.
    port "6600"
    # This setting controls the type of information which is logged. Available
    # setting arguments are "default", "secure" or "verbose". The "verbose" setting
    # argument is recommended for troubleshooting, though can quickly stretch
    # available resources on limited hardware storage.
    log_level "default"
    # If you have a problem with your MP3s ending abruptly it is recommended that
    # you set this argument to "no" to attempt to fix the problem. If this solves
    # the problem, it is highly recommended to fix the MP3 files with vbrfix
    # (available from <http://www.willwap.co.uk/Programs/vbrfix.php>), at which
    # point gapless MP3 playback can be enabled.
    gapless_mp3_playback "yes"
    # Setting "restore_paused" to "yes" puts MPD into pause mode instead
    # of starting playback after startup.
    #restore_paused "no"
    # This setting enables MPD to create playlists in a format usable by other
    # music players.
    #save_absolute_paths_in_playlists "no"
    # This setting defines a list of tag types that will be extracted during the
    # audio file discovery process. The complete list of possible values can be
    # found in the mpd.conf man page.
    #metadata_to_use "artist,album,title,track,name,genre,date,composer,performer,disc"
    # This setting enables automatic update of MPD's database when files in
    # music_directory are changed.
    auto_update "yes"
    # Limit the depth of the directories being watched, 0 means only watch
    # the music directory itself. There is no limit by default.
    auto_update_depth "3"
    # Symbolic link behavior ######################################################
    # If this setting is set to "yes", MPD will discover audio files by following
    # symbolic links outside of the configured music_directory.
    #follow_outside_symlinks "yes"
    # If this setting is set to "yes", MPD will discover audio files by following
    # symbolic links inside of the configured music_directory.
    #follow_inside_symlinks "yes"
    # Zeroconf / Avahi Service Discovery ##########################################
    # If this setting is set to "yes", service information will be published with
    # Zeroconf / Avahi.
    #zeroconf_enabled "yes"
    # The argument to this setting will be the Zeroconf / Avahi unique name for
    # this MPD server on the network.
    #zeroconf_name "Music Player"
    # Permissions #################################################################
    # If this setting is set, MPD will require password authorization. The password
    # can setting can be specified multiple times for different password profiles.
    #password "password@read,add,control,admin"
    # This setting specifies the permissions a user has who has not yet logged in.
    #default_permissions "read,add,control,admin"
    # Database #######################################################################
    #database {
    # plugin "proxy"
    # host "other.mpd.host"
    # port "6600"
    # Input #######################################################################
    input {
    plugin "curl"
    proxy "proxy.isp.com:8080"
    proxy_user "user"
    proxy_password "password"
    # Audio Output ################################################################
    # MPD supports various audio output types, as well as playing through multiple
    # audio outputs at the same time, through multiple audio_output settings
    # blocks. Setting this block is optional, though the server will only attempt
    # autodetection for one sound card.
    # An example of an ALSA output:
    #audio_output {
    # type "alsa"
    # name "My ALSA Device"
    ## device "hw:0,0" # optional
    ## mixer_type "hardware" # optional
    ## mixer_device "default" # optional
    ## mixer_control "PCM" # optional
    ## mixer_index "0" # optional
    audio_output {
    type "pulse"
    name "pulse audio"
    format "48000:16:2"
    server "127.0.0.1"
    ## sink "remote_server_sink" # optional
    # An example of an OSS output:
    #audio_output {
    # type "oss"
    # name "My OSS Device"
    ## device "/dev/dsp" # optional
    ## mixer_type "hardware" # optional
    ## mixer_device "/dev/mixer" # optional
    ## mixer_control "PCM" # optional
    # An example of a shout output (for streaming to Icecast):
    #audio_output {
    # type "shout"
    # encoding "ogg" # optional
    # name "My Shout Stream"
    # host "localhost"
    # port "8000"
    # mount "/mpd.ogg"
    # password "hackme"
    # quality "5.0"
    # bitrate "128"
    # format "44100:16:1"
    ## protocol "icecast2" # optional
    ## user "source" # optional
    ## description "My Stream Description" # optional
    ## url "http://example.com" # optional
    ## genre "jazz" # optional
    ## public "no" # optional
    ## timeout "2" # optional
    ## mixer_type "software" # optional
    # An example of a recorder output:
    #audio_output {
    # type "recorder"
    # name "My recorder"
    # encoder "vorbis" # optional, vorbis or lame
    # path "/var/lib/mpd/recorder/mpd.ogg"
    ## quality "5.0" # do not define if bitrate is defined
    # bitrate "128" # do not define if quality is defined
    # format "44100:16:1"
    # An example of a httpd output (built-in HTTP streaming server):
    #audio_output {
    # type "httpd"
    # name "My HTTP Stream"
    # encoder "vorbis" # optional, vorbis or lame
    # port "8000"
    # bind_to_address "0.0.0.0" # optional, IPv4 or IPv6
    ## quality "5.0" # do not define if bitrate is defined
    # bitrate "128" # do not define if quality is defined
    # format "44100:16:1"
    # max_clients "0" # optional 0=no limit
    # An example of a pulseaudio output (streaming to a remote pulseaudio server)
    #audio_output {
    # type "pulse"
    # name "My Pulse Output"
    ## server "remote_server" # optional
    ## sink "remote_server_sink" # optional
    # An example of a winmm output (Windows multimedia API).
    #audio_output {
    # type "winmm"
    # name "My WinMM output"
    ## device "Digital Audio (S/PDIF) (High Definition Audio Device)" # optional
    # or
    ## device "0" # optional
    ## mixer_type "hardware" # optional
    # An example of an openal output.
    #audio_output {
    # type "openal"
    # name "My OpenAL output"
    ## device "Digital Audio (S/PDIF) (High Definition Audio Device)" # optional
    ## Example "pipe" output:
    #audio_output {
    # type "pipe"
    # name "my pipe"
    # command "aplay -f cd 2>/dev/null"
    ## Or if you're want to use AudioCompress
    # command "AudioCompress -m | aplay -f cd 2>/dev/null"
    ## Or to send raw PCM stream through PCM:
    # command "nc example.org 8765"
    # format "44100:16:2"
    ## An example of a null output (for no audio output):
    #audio_output {
    # type "null"
    # name "My Null Output"
    # mixer_type "none" # optional
    # If MPD has been compiled with libsamplerate support, this setting specifies
    # the sample rate converter to use. Possible values can be found in the
    # mpd.conf man page or the libsamplerate documentation. By default, this is
    # setting is disabled.
    #samplerate_converter "Fastest Sinc Interpolator"
    # Normalization automatic volume adjustments ##################################
    # This setting specifies the type of ReplayGain to use. This setting can have
    # the argument "off", "album", "track" or "auto". "auto" is a special mode that
    # chooses between "track" and "album" depending on the current state of
    # random playback. If random playback is enabled then "track" mode is used.
    # See <http://www.replaygain.org> for more details about ReplayGain.
    # This setting is off by default.
    replaygain "album"
    # This setting sets the pre-amp used for files that have ReplayGain tags. By
    # default this setting is disabled.
    replaygain_preamp "0"
    # This setting sets the pre-amp used for files that do NOT have ReplayGain tags.
    # By default this setting is disabled.
    #replaygain_missing_preamp "0"
    # This setting enables or disables ReplayGain limiting.
    # MPD calculates actual amplification based on the ReplayGain tags
    # and replaygain_preamp / replaygain_missing_preamp setting.
    # If replaygain_limit is enabled MPD will never amplify audio signal
    # above its original level. If replaygain_limit is disabled such amplification
    # might occur. By default this setting is enabled.
    #replaygain_limit "yes"
    # This setting enables on-the-fly normalization volume adjustment. This will
    # result in the volume of all playing audio to be adjusted so the output has
    # equal "loudness". This setting is disabled by default.
    #volume_normalization "no"
    # MPD Internal Buffering ######################################################
    # This setting adjusts the size of internal decoded audio buffering. Changing
    # this may have undesired effects. Don't change this if you don't know what you
    # are doing.
    #audio_buffer_size "4096"
    # This setting controls the percentage of the buffer which is filled before
    # beginning to play. Increasing this reduces the chance of audio file skipping,
    # at the cost of increased time prior to audio playback.
    #buffer_before_play "10%"
    # Resource Limitations ########################################################
    # These settings are various limitations to prevent MPD from using too many
    # resources. Generally, these settings should be minimized to prevent security
    # risks, depending on the operating resources.
    #connection_timeout "60"
    #max_connections "10"
    #max_playlist_length "16384"
    #max_command_list_size "2048"
    #max_output_buffer_size "8192"
    # Character Encoding ##########################################################
    # If file or directory names do not display correctly for your locale then you
    # may need to modify this setting.
    #filesystem_charset "UTF-8"
    # This setting controls the encoding that ID3v1 tags should be converted from.
    #id3v1_encoding "ISO-8859-1"
    # SIDPlay decoder #############################################################
    # songlength_database:
    # Location of your songlengths file, as distributed with the HVSC.
    # The sidplay plugin checks this for matching MD5 fingerprints.
    # See http://www.c64.org/HVSC/DOCUMENTS/Songlengths.faq
    # default_songlength:
    # This is the default playing time in seconds for songs not in the
    # songlength database, or in case you're not using a database.
    # A value of 0 means play indefinitely.
    # filter:
    # Turns the SID filter emulation on or off.
    #decoder {
    # plugin "sidplay"
    # songlength_database "/media/C64Music/DOCUMENTS/Songlengths.txt"
    # default_songlength "120"
    # filter "true"
    /etc/X11/xinit/xinitrc.d/pulseaudio [not sure if I even need this?]
    #!/bin/bash
    case "$DESKTOP_SESSION" in
    gnome|kde*|xfce*) # PulseAudio is started via XDG Autostart
    # Extra checks in case DESKTOP_SESSION is not set correctly
    if [[ -z $KDE_FULL_SESSION && -z $GNOME_DESKTOP_SESSION_ID ]]; then
    /usr/bin/start-pulseaudio-x11
    fi
    esac
    /etc/pulse/daemon.conf
    # This file is part of PulseAudio.
    # PulseAudio is free software; you can redistribute it and/or modify
    # it under the terms of the GNU Lesser General Public License as published by
    # the Free Software Foundation; either version 2 of the License, or
    # (at your option) any later version.
    # PulseAudio is distributed in the hope that it will be useful, but
    # WITHOUT ANY WARRANTY; without even the implied warranty of
    # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
    # General Public License for more details.
    # You should have received a copy of the GNU Lesser General Public License
    # along with PulseAudio; if not, write to the Free Software
    # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
    # USA.
    ## Configuration file for the PulseAudio daemon. See pulse-daemon.conf(5) for
    ## more information. Default values are commented out. Use either ; or # for
    ## commenting.
    ; daemonize = no
    ; fail = yes
    ; allow-module-loading = yes
    ; allow-exit = yes
    ; use-pid-file = yes
    ; system-instance = no
    ; local-server-type = user
    ; enable-shm = yes
    ; shm-size-bytes = 0 # setting this 0 will use the system-default, usually 64 MiB
    ; lock-memory = no
    ; cpu-limit = no
    ; high-priority = yes
    ; nice-level = -11
    ; realtime-scheduling = yes
    ; realtime-priority = 5
    exit-idle-time=0
    ; exit-idle-time = 20
    ; scache-idle-time = 20
    ; dl-search-path = (depends on architecture)
    ; load-default-script-file = yes
    ; default-script-file = /etc/pulse/default.pa
    ; log-target = auto
    log-level = error
    ; log-meta = no
    ; log-time = no
    ; log-backtrace = 0
    resample-method = speex-float-7
    ; enable-remixing = yes
    ; enable-lfe-remixing = no
    flat-volumes = no
    ; rlimit-fsize = -1
    ; rlimit-data = -1
    ; rlimit-stack = -1
    ; rlimit-core = -1
    ; rlimit-as = -1
    ; rlimit-rss = -1
    ; rlimit-nproc = -1
    ; rlimit-nofile = 256
    ; rlimit-memlock = -1
    ; rlimit-locks = -1
    ; rlimit-sigpending = -1
    ; rlimit-msgqueue = -1
    ; rlimit-nice = 31
    ; rlimit-rtprio = 9
    ; rlimit-rttime = 1000000
    default-sample-format = s24le
    default-sample-rate = 48000
    ; alternate-sample-rate = 48000
    ; default-sample-channels = 2
    ; default-channel-map = front-left,front-right
    default-fragments = 2
    default-fragment-size-msec = 76
    ; enable-deferred-volume = yes
    ; deferred-volume-safety-margin-usec = 8000
    ; deferred-volume-extra-delay-usec = 0
    /etc/pulse/default.pa
    #!/usr/bin/pulseaudio -nF
    # This file is part of PulseAudio.
    # PulseAudio is free software; you can redistribute it and/or modify it
    # under the terms of the GNU Lesser General Public License as published by
    # the Free Software Foundation; either version 2 of the License, or
    # (at your option) any later version.
    # PulseAudio is distributed in the hope that it will be useful, but
    # WITHOUT ANY WARRANTY; without even the implied warranty of
    # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
    # General Public License for more details.
    # You should have received a copy of the GNU Lesser General Public License
    # along with PulseAudio; if not, write to the Free Software Foundation,
    # Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
    # This startup script is used only if PulseAudio is started per-user
    # (i.e. not in system mode)
    .nofail
    ### Load something into the sample cache
    #load-sample-lazy x11-bell /usr/share/sounds/gtk-events/activate.wav
    #load-sample-lazy pulse-hotplug /usr/share/sounds/startup3.wav
    #load-sample-lazy pulse-coldplug /usr/share/sounds/startup3.wav
    #load-sample-lazy pulse-access /usr/share/sounds/generic.wav
    .fail
    ### Automatically restore the volume of streams and devices
    load-module module-device-restore
    load-module module-stream-restore
    load-module module-card-restore
    ### Automatically augment property information from .desktop files
    ### stored in /usr/share/application
    load-module module-augment-properties
    ### Should be after module-*-restore but before module-*-detect
    load-module module-switch-on-port-available
    ### Load audio drivers statically
    ### (it's probably better to not load these drivers manually, but instead
    ### use module-udev-detect -- see below -- for doing this automatically)
    #load-module module-alsa-sink
    #load-module module-alsa-source device=hw:1,0
    #load-module module-oss device="/dev/dsp" sink_name=output source_name=input
    #load-module module-oss-mmap device="/dev/dsp" sink_name=output source_name=input
    #load-module module-null-sink
    #load-module module-pipe-sink
    ### Automatically load driver modules depending on the hardware available
    .ifexists module-udev-detect.so
    load-module module-udev-detect
    .else
    ### Use the static hardware detection module (for systems that lack udev support)
    load-module module-detect
    .endif
    ### Automatically connect sink and source if JACK server is present
    .ifexists module-jackdbus-detect.so
    .nofail
    load-module module-jackdbus-detect channels=2
    .fail
    .endif
    ### Automatically load driver modules for Bluetooth hardware
    #.ifexists module-bluetooth-policy.so
    #load-module module-bluetooth-policy
    #.endif
    #.ifexists module-bluetooth-discover.so
    #load-module module-bluetooth-discover
    #.endif
    ### Load several protocols
    .ifexists module-esound-protocol-unix.so
    load-module module-esound-protocol-unix
    .endif
    load-module module-native-protocol-unix
    ### Network access (may be configured with paprefs, so leave this commented
    ### here if you plan to use paprefs)
    #load-module module-esound-protocol-tcp
    load-module module-native-protocol-tcp auth-ip-acl=127.0.0.1
    #load-module module-zeroconf-publish
    ### Load the RTP receiver module (also configured via paprefs, see above)
    #load-module module-rtp-recv
    ### Load the RTP sender module (also configured via paprefs, see above)
    #load-module module-null-sink sink_name=rtp format=s16be channels=2 rate=44100 sink_properties="device.description='RTP Multicast Sink'"
    #load-module module-rtp-send source=rtp.monitor
    ### Load additional modules from GConf settings. This can be configured with the paprefs tool.
    ### Please keep in mind that the modules configured by paprefs might conflict with manually
    ### loaded modules.
    .ifexists module-gconf.so
    .nofail
    load-module module-gconf
    .fail
    .endif
    ### Automatically restore the default sink/source when changed by the user
    ### during runtime
    ### NOTE: This should be loaded as early as possible so that subsequent modules
    ### that look up the default sink/source get the right value
    load-module module-default-device-restore
    ### Automatically move streams to the default sink if the sink they are
    ### connected to dies, similar for sources
    load-module module-rescue-streams
    ### Make sure we always have a sink around, even if it is a null sink.
    load-module module-always-sink
    ### Honour intended role device property
    load-module module-intended-roles
    ### Automatically suspend sinks/sources that become idle for too long
    load-module module-suspend-on-idle
    ### If autoexit on idle is enabled we want to make sure we only quit
    ### when no local session needs us anymore.
    .ifexists module-console-kit.so
    load-module module-console-kit
    .endif
    .ifexists module-systemd-login.so
    load-module module-systemd-login
    .endif
    ### Enable positioned event sounds
    load-module module-position-event-sounds
    ### Cork music/video streams when a phone stream is active
    load-module module-role-cork
    ### Modules to allow autoloading of filters (such as echo cancellation)
    ### on demand. module-filter-heuristics tries to determine what filters
    ### make sense, and module-filter-apply does the heavy-lifting of
    ### loading modules and rerouting streams.
    load-module module-filter-heuristics
    load-module module-filter-apply
    # X11 modules should not be started from default.pa so that one daemon
    # can be shared by multiple sessions.
    ### Load X11 bell module
    #load-module module-x11-bell sample=bell-windowing-system
    ### Register ourselves in the X11 session manager
    #load-module module-x11-xsmp
    ### Publish connection data in the X11 root window
    #.ifexists module-x11-publish.so
    #.nofail
    #load-module module-x11-publish
    #.fail
    #.endif
    ### Make some devices default
    #set-default-sink output
    #set-default-source input
    ~/.xinitrc [currently using daemon mpd]
    #!/bin/sh
    # ~/.xinitrc
    # Executed by startx (run your window manager from here)
    if [ -d /etc/X11/xinit/xinitrc.d ]; then
    for f in /etc/X11/xinit/xinitrc.d/*; do
    [ -x "$f" ] && . "$f"
    done
    unset f
    fi
    #if grep -q "state: pause" /home/quiv/.config/mpd/state; then
    # mpc toggle
    #fi
    #mpd ~/.config/mpd/mpd.conf
    ~/.config/bspwm/panel/notify_mpd
    xrdb ~/.Xresources
    xset +fp ~/.fonts
    xset +fp /usr/share/fonts/misc
    xset fp rehash
    xsetroot -cursor_name left_ptr &
    # imlibsetroot -x e -s f /home/quiv/Pictures/bloom_one_desktop.jpg
    sh ~/.fehbg &
    compton -CGb --backend glx --paint-on-overlay --vsync opengl-swc &
    # exec gnome-session
    # exec startkde
    # exec startxfce4
    # ...or the Window Manager of your choice
    sxhkd &
    exec bspwm
    ~/.zprofile [currently trying to use systemd/User]
    #[[ -z $DISPLAY && $XDG_VTNR -eq 1 ]] && exec startx
    EDIT:A small update; it seems I don't need to have /etc/systemd/system/[email protected]/autologin.conf when using systemd to manag my user session as I removed it and I'm both automatically logged on and in X-session.
    Last edited by quiv (2014-07-05 13:40:30)

    o_caino wrote:
    Setting mpd as a systemd user service is very simple. This is what I did.
    In ~/.config/systemd/user/mpd.service
    [Unit]
    Description=Music Player Daemon
    After=network.target sound.target
    [Service]
    ExecStart=/usr/bin/mpd --no-daemon
    ExecStop=/usr/bin/mpd --kill
    [Install]
    WantedBy=default.target
    To enable
    systemctl --user enable mpd
    Done.
    Well shit. I guess I didn't need to do all that other stuff. I only wish I'd known about this before wasting most of my day. Thank you very much, everything appears to be working flawlessly now.

  • Help - Looking for Openbox or OB/Xfce solutions [SOLVED]

    I'm considering dropping GNOME (again) and switching to lightweight WM (Openbox) and/or DE combo (Xfce/OpenBox).  I really like how easy Openbox is to use and I've read several OB-related threads here, trying to determine how other folks optimize it, but I'm still left with questions that I can't seem to find answers to.  I'm looking at using this setup on my Dell 6400 notebook which is currently a GNOME-centric desktop, with the exception of K3b, K9copy and a QT-frontend for VirtualBox.
    The top 5 features I'm hoping to keep are as follows:
    1. GUI-based SSH
    Currently I use Nautilus to quickly browse remote servers, but is there a standalone GUI commonly used, or should I just get use to the shell?
    2. Hibernate/Suspend support
    In addition to basic powersaved functionality, GNOME offers options at shutdown or via gnome-panel.  Does OB and/or OB/Xfce has something similar?  When I tried Xfce in the past, I could never get the power management options to appear on the shutdown screen.
    3. GUI-based volume management
    I know Thunar can do this, but what do standalone Openbox fans use to quickly mount/unmount volumes?
    4. Font hinting/antialiasing
    Xfce can do this, but what about a standalone Openbox config?
    5. Multimedia hotkeys
    This should still work with Xmodmap, etc. but is there anything else I should know about?
    If anyone can help shed some light on these topics, I would greatly appreciate it.
    Last edited by thayer (2009-01-29 03:37:27)

    thayer.w wrote:2. Hibernate/Suspend support
    In addition to basic powersaved functionality, GNOME offers options at shutdown or via gnome-panel.  Does OB and/or OB/Xfce has something similar?  When I tried Xfce in the past, I could never get the power management options to appear on the shutdown screen.
    Since Openbox is only a window manager, it does nothing in the way of hibernation or suspension. However, as long as you have ACPI working, you can still suspend/hibernate very easily. On my laptop (macbook) I simply put an option in my menu to suspend the machine by running my suspend script (which is basically "echo mem > /sys/power/state" with some commands to load/unload necessary modules and daemons)
    3. GUI-based volume management
    I know Thunar can do this, but what do standalone Openbox fans use to quickly mount/unmount volumes?
    Thunar is my file manager of choice. It is lightweight, yet fully featured. I've used Thunar with Openbox for quite some time.
    4. Font hinting/antialiasing
    Xfce can do this, but what about a standalone Openbox config?
    As mentioned above, Openbox is completely separate from your fontconfig.
    5. Multimedia hotkeys
    This should still work with Xmodmap, etc. but is there anything else I should know about?
    What [vEX] said. I use this method with xmodmap to get my apple remote working with MPD
    When you use Openbox, and only Openbox, you start to realize that Desktop Environments add no additional functionality, only convenience. On the other hand, they can also muck things up by being proprietary and at times overly complicated. KISS.
    Last edited by cry0x (2007-07-22 05:26:02)

  • [SOLVED] No Sound except in mpd

    I have a strange behaviour in my sound setup since last week or so. I didn't notice it at first, so I can't tell if it was an update. However I didn't change anything in my configuration. I don't hear any sound from my laptop (a HP Elitebook 8470w), not with the speakers nor with headphones. Except playing music with mpd, this works as usual. I also noticed, that my multimedia keys don't work anymore. Was there any recent change in alsa I missed?
    What I tried:
    > speaker-test -c 2
    speaker-test 1.0.27.2
    Playback device is default
    Stream parameters are 48000Hz, S16_LE, 2 channels
    Using 16 octaves of pink noise
    Rate set to 48000Hz (requested 48000Hz)
    Buffer size range from 96 to 1048576
    Period size range from 32 to 349526
    Using max buffer size 1048576
    Periods = 4
    was set period_size = 262144
    was set buffer_size = 1048576
    0 - Front Left
    1 - Front Right
    Time per period = 10.940069
    -> No sound
    My config:
    `--> uname -a
    Linux tirion 3.13.7-1-ARCH #1 SMP PREEMPT Mon Mar 24 20:06:08 CET 2014 x86_64 GNU/Linux
    /etc/asound.conf
    # Use PulseAudio by default
    pcm.!default {
    type pulse
    fallback "sysdefault"
    hint {
    show on
    description "Default ALSA Output (currently PulseAudio Sound Server)"
    ctl.!default {
    type pulse
    fallback "sysdefault"
    # vim:set ft=alsaconf:
    `--> aplay -l
    **** List of PLAYBACK Hardware Devices ****
    card 0: PCH [HDA Intel PCH], device 0: 92HD81B1X5 Analog [92HD81B1X5 Analog]
    Subdevices: 1/1
    Subdevice #0: subdevice #0
    card 1: HDMI [HDA ATI HDMI], device 3: HDMI 0 [HDMI 0]
    Subdevices: 1/1
    Subdevice #0: subdevice #0
    ~/.mpd/mpd.conf
    music_directory "/home/strix/Musik"
    playlist_directory "/home/strix/Musik/Playlists"
    db_file "/home/strix/.mpd/mpd.db"
    log_file "/home/strix/.mpd/mpd.log"
    log_level "verbose"
    pid_file "/home/strix/.mpd/mpd.pid"
    state_file "/home/strix/.mpd/mpdstate"
    save_absolute_paths_in_playlists "yes"
    audio_output {
    type "alsa"
    name "Mukke"
    mixer_type "software"
    device "hw:0,0"
    My multimedia keymapping was:
    bindsym XF86AudioRaiseVolume exec amixer set Master 2%+
    bindsym XF86AudioLowerVolume exec amixer set Master 2%-
    bindsym XF86AudioMute exec amixer sset Master toggle
    which does not work anymore. Funny thing is, I can modify the volume and mute/unmute my music with the following setup:
    bindsym XF86AudioMute exec "pactl set-sink-mute 1 toggle"
    bindsym XF86AudioRaiseVolume exec "pactl set-sink-volume 1 +1%"
    bindsym XF86AudioLowerVolume exec "pactl set-sink-volume 1 -- -1%"
    Last edited by strix (2014-04-03 13:01:17)

    .-(~)-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------(root@tirion)-
    `--# fuser -v /dev/snd/*
    USER PID ACCESS COMMAND
    /dev/snd/controlC0: strix 2801 F.... pulseaudio
    strix 23753 F.... mpd
    /dev/snd/controlC1: strix 2801 F.... pulseaudio
    If mpd blocks my audio, shouldn't it work then when I stop mpd? Because that's not the case...
    Edit: When I set my mpd audio_output to this:
    audio_output {
    type "pulse"
    name "pulse audio"
    I get the following:
    .-(~)-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------(root@tirion)-
    `--# fuser -v /dev/snd/*
    USER PID ACCESS COMMAND
    /dev/snd/controlC0: strix 5730 F.... pulseaudio
    /dev/snd/controlC1: strix 5730 F.... pulseaudio
    /dev/snd/pcmC0D0p: strix 5730 F...m pulseaudio
    And if it helps:
    `--# lspci | grep Audio
    00:1b.0 Audio device: Intel Corporation 7 Series/C210 Series Chipset Family High Definition Audio Controller (rev 04)
    01:00.1 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] Turks/Whistler HDMI Audio [Radeon HD 6000 Series]
    Last edited by strix (2014-04-02 16:48:52)

Maybe you are looking for

  • Reg Po creation in ME21N

    Hi all, I am fresher in SAP MM module. When i am creating PO in ME21 with reference to PR  , i am getting a short dump. How can i create PO in ME21N  with reference to PR  ??? Kind regards Karthik

  • Restrictions while using ref cursor inside an xmltype

    Hi, Looks like that getclobVal() can't be used in select where select statement is ref cursor for xmltype. example SQL> select xmltype(cursor(select xmltype('<a>1</a>').getclobval() from dual)) from dual; select xmltype(cursor(select xmltype('<a>1</a

  • Duplicate Playlist Problem

    I have two playlists on my iPod Video that are exactly the same. I have tried reset my iPod and Syncing it etc but it still insists on giving me two of this specific playlist even though there is only one in iTunes. How can I delete one to only have

  • I have a web site that firefox is stating is not a trusted website, what does that mean and how do I get it corrected?

    my website is www.tmsstudios.com, according to my web provider we have all the security features needed. why does firefox state it is not a trusted website, and how do I or what do I need to fix it?

  • Corrupted microSD card in 6120 classic

    I have Nokia 6120 Classic. Today I've opened my music player and it did not find any songs that were on the micro SD card. I got the card out and when I inserted it again it said that it's corrupted and wanted to format it. After the format I got it