通过 DBUS 传输 Spotify 元数据并禁用 track_notifications

通过 DBUS 传输 Spotify 元数据并禁用 track_notifications

情况:

我有 Ubuntu 14.04、Awesome WM 和 Spotify Linux 客户端版本:0.9.11.27

自定义偏好设置ui.track_notifications_enabled=false/home/USER/.config/spotify/Users/USER/prefs

(如果我不这样做,Spotify 在更换歌曲后就会冻结 5/10 秒,这令人难以忍受。)

问题:

我正在尝试构建自己的通知栏,这并不那么困难。

您可以使用 dbus 获取媒体信息:

dbus-send --print-reply --session \
          --dest=org.mpris.MediaPlayer2.spotify \
          /org/mpris/MediaPlayer2 \
          org.freedesktop.DBus.Properties.Get \
          string:'org.mpris.MediaPlayer2.Player' \
          string:'Metadata'

唯一的问题是,因为我禁用了 track_notifications,它只会返回一个空数组。

method return sender=:1.0 -> dest=:1.8 reply_serial=2
    variant       array [
       ]

有人对此有所了解吗?也许有解决方法?或者我可以通过其他方式在禁用此设置的情况下获取我的 spotify 元数据?

提前致谢!

答案1

  • Spotify 有两个可用的存储库稳定的测试。 看http://repository-origin.spotify.com/dists/

    从上面的 OP 评论来看,测试包解决了冻结错误。因此无需禁用跟踪通知:

    ui.track_notifications_enabled=false
    

    ~/.config/spotify/Users/USER/prefs

  • OP 可以从以下位置手动安装:http://repository-origin.spotify.com/pool/non-free/s/spotify-client/.这里是正式的方法:

    1. 添加 Spotify 存储库签名密钥,以便能够验证下载的软件包

      sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys D2C19886
      
    2. 添加 Spotify 存储库

      echo deb http://repository.spotify.com testing non-free | sudo tee /etc/apt/sources.list.d/spotify.list
      
    3. 更新可用软件包列表

      sudo apt-get update
      
    4. 安装 Spotify

      sudo apt-get install spotify-client
      

    参考:此处解释的指令相同Linux 版 Spotify,只需替换stabletesting

相关内容