如何在Linux命令行下收听网络电台
对于花大量时间在Linux屏幕前的系统管理员和Linux爱好者来说，网络/本地电台上的音乐可以极大提高生产力，你们知道吗？不管你们相信与否，，在工作环境中有适当的声音，如音乐或者闲聊声包围，都可以提高我们的创造力。如果你喜欢在音乐环境中工作，这个教程也许会对你有用。我将会向你展示如何在命令行中收听潘多拉（Pandora）在线电台（LCTT译注：Pandora Internet Radio是一个仅为美国、澳大利亚和新西兰提供自动音乐推荐的系统。详细介绍Prandoea电台）
网络电台 Linux
203.195.244.194
如何在命令行中收听潘多拉（Pandora）在线电台。
微博评论
2014-09-10T11:33:00.000
221.215.1.254
仅为美国、澳大利亚和新西兰提供自动音乐推荐？
绿色圣光
2014-09-10T12:21:18.000
218.30.103.250
Repost
微博评论
2014-09-10T12:33:01.000
61.148.202.62
骗人的<br />
<br />
Pandora is not available in your country
2014-09-10T14:21:19.000
116.255.132.12
不是说其他地区有代理？
netb2c
2014-09-11T09:17:56.000
115.236.14.179
Pandora is not available in your country.
ChaoMa
2014-09-16T18:50:54.000
61.129.97.186
怎么注册邮箱在panobar?我在百度上面搜不到
不再犹豫33
2015-04-15T18:19:05.000
61.129.97.186
还有还有其他方法可以在命令行下面听音乐么
不再犹豫33
2015-04-15T18:19:52.000
对于花大量时间在Linux屏幕前的系统管理员和Linux爱好者来说，网络/本地电台上的音乐可以极大提高生产力，你们知道吗？不管你们相信与否，，在工作环境中有适当的声音，如音乐或者闲聊声包围，都可以提高我们的创造力。如果你喜欢在音乐环境中工作，这个教程也许会对你有用。我将会向你展示如何在命令行中收听潘多拉（Pandora）在线电台（LCTT译注：Pandora Internet Radio是一个仅为美国、澳大利亚和新西兰提供自动音乐推荐的系统。详细介绍Prandoea电台）
对于花大量时间在Linux屏幕前的系统管理员和Linux爱好者来说，网络/本地电台上的音乐可以极大提高生产力，你们知道吗？不管你们相信与否，，在工作环境中有适当的声音，如音乐或者闲聊声包围，都可以提高我们的创造力。如果你喜欢在音乐环境中工作，这个教程也许会对你有用。我将会向你展示**如何在命令行中收听潘多拉（Pandora）在线电台**（LCTT译注：Pandora Internet Radio是一个仅为美国、澳大利亚和新西兰提供自动音乐推荐的系统。详细介绍[Prandoea电台](http://zh.wikipedia.org/wiki/Pandora%E7%94%B5%E5%8F%B0)）


![](/data/attachment/album/201409/10/101937x34mlelhorf93ukm.png)


正如你已经知道的，Pandora是最有名的在线电台服务之一，它包含无数的不同种类的免费音乐流，同时它还有一个强大的音乐推荐引擎。Pandora可以通过不同的方式访问，如：浏览器，桌面客户端或者手机Apps，开源社区还给出了另一种访问Pandora音乐服务的方法：Linux命令行。


[pianobar](http://6xq.net/projects/pianobar/)是一个播放Pandora在线电台音乐的开源命令行音乐播放器。它有一个简单的终端接口，用于播放和管理音乐电台。同时还有其他包括歌曲评价，即将上线音乐列表，播放历史，自定义快捷键绑定，远程控制等功能。对于那些居住在不可访问Pandora音乐服务区域的用户（即美国、澳大利亚和新西兰以外的用户），Pianobar还配置了代理服务的支持。


### 在Linux中安装Pianobar


在Debian或者其他Debian的衍生品中，如Ubuntu或LinuxMint，Pianobar是一个已经编译好的软件包，因此安装Pianobar只是简单的输入如下命令：



```
$ sudo apt-get install pianobar
```

在Fedora中，Pianobar并不包含在基础的软件库中。因此，你需要通过源代码编译安装Pianobar。整个安装过程会有点麻烦，但是下面的教程将会实现Pianobar在Fedora系统中编译安装。该教程在Fedora20版本中测试通过。


首先，根据[FFmpeg安装教程](http://ask.xmodulo.com/compile-ffmpeg-centos-fedora-rhel.html)编译并安装FFmpeg。


然后，[启用RPM Fusion源](http://xmodulo.com/2013/06/how-to-install-rpm-fusion-on-fedora.html)，并安装其他依赖软件：



```
 $ sudo yum install wget gcc-c++ pkgconfig gnutls-devel json-c-devel libgcrypt-devel make libao-devel faad2-devel libmad-devel libao faad2-libs 

```

编译并安装Pianobar



```
$ wget http://6xq.net/projects/pianobar/pianobar-2014.06.08.tar.bz2
$ tar xvfvj pianobar-2014.06.08.tar.bz2
$ cd pianobar-2014.06.08
$ PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH make
$ sudo make install 

```

最后允许Paniobar加载安装在/usr/local/lib目录下的FFmpeg共享库，在/etc/ld.so.conf配置文件中添加下面一行：



> 
> /usr/local/lib
> 
> 
> 


重载所有的共享库



```
$ sudo ldconfig
```

就这样，Pianobar已经在Fedora系统中安装完成。


### 在命令行中收听Pandora音乐


paniobar的基本用法是输入如下命令：



```
$ pianobar
```

该命令将会要求你登录到Pandora并从你的个性化电台列表中选择要收听的电台。在你选择电台后，音乐就开始自动播放。


[![](/0383ef103ac27fa88f64d617abb1062e08fa3913/68747470733a2f2f6661726d362e737461746963666c69636b722e636f6d2f353535322f31343939333332303330315f353865353862353831305f7a2e6a7067)](https://camo.githubusercontent.com/0383ef103ac27fa88f64d617abb1062e08fa3913/68747470733a2f2f6661726d362e737461746963666c69636b722e636f6d2f353535322f31343939333332303330315f353865353862353831305f7a2e6a7067)


按‘？’按键pianobar会列出一系列可用个命令，其中一些如下：


* s: 更换电台
* u: 查看即将上线音乐列表
* h: 查看播放历史
* n: 播放下一首
* b: 收藏歌曲或艺术家
* ( 或者 ): 减少或增加播放音量
* S: 暂停播放
* P: 恢复播放
* V：为当前收听的歌曲或者艺术家创建一个电台
* +或者-：查看上一首或者下一首歌曲
* a：添加音乐到电台
* q：退出pianobar


[![](/41a4c1b31786757da6a60c43a671bb9c775fd58a/68747470733a2f2f6661726d362e737461746963666c69636b722e636f6d2f353535392f31343939333332363939315f636364666664306661365f7a2e6a7067)](https://camo.githubusercontent.com/41a4c1b31786757da6a60c43a671bb9c775fd58a/68747470733a2f2f6661726d362e737461746963666c69636b722e636f6d2f353535392f31343939333332363939315f636364666664306661365f7a2e6a7067)


### 将Pianobar配置为自动安装


你可以在一个单独的配置文件中配置Pianobar的各项默认配置。例如：你可以将你的登录信息放到配置文件中，这样你就不用每次都要手动输入。下面是如何创建一个配置文件的示例：



```
$ mkdir -p ~/.config/pianobar
```


```
$ vi ~/.config/pianobar/config
```


```
# Example pianobar configuration file

# Pandora login info
user = your@email_address
password = plaintext_password

# Users who cannot access Pandora in their region can set a proxy.
control_proxy = http://user:password@host:port/

# Initial volume in dB: between -30 and +5
volume = 0

# Audio quality: high, medium or low
audio_quality = high

```

如需了解完整的配置选项，请参阅其man手册页。



```
$ man pianobar

```

### 远程控制Pianobar


Pianobar的另一个优秀特性是支持远程控制，你可以通过命令管道（FIFO）为Pianobar的一个运行实例发送命令。下面是远程控制Pianobar的示例：


首先在目录~/.config/pianobar下创建一个FIFO命令管道



```
$ mkfifo ~/.config/pianobar/ctl
```

然后运行Pianobar


现在，你可以通过使用echo命令发送任何的单字符命令键到Pianobar中，例如：播放下一首歌曲：



```
$ echo -n 'n' > ~/.config/pianobar/ctl
```

你可以很容易的将此配置扩展到远程计算机中，当Pianobar在主机X上运行，你可以从远程主机Y中通过SSH控制Pianobar,如下所示：


在主机Y中，运行：



```
$ ssh user@host_X "echo -n 'n' > ~/.config/pianobar/ctl"
```

当然，你希望为登录到主机X的SSH登录认证[启用秘钥认证](http://xmodulo.com/2012/04/how-to-enable-ssh-login-without.html)，这样你就不用每次都输入SSH密码。


当你想在[树莓Pi](http://xmodulo.com/go/raspberrypi)上设置一个可以远程控制的在线电台播放器时，Pianobar的远程控制特性将会让你非常方便地实现该需求。


希望你和我一样喜欢Pianobar，若有什么想法，请在评论中告诉我。




---


via: <http://xmodulo.com/2014/08/listen-to-internet-radio-command-line-linux.html>


作者：[Dan Nanni](http://xmodulo.com/author/nanni) 译者：[cvsher](https://github.com/cvsher) 校对：[Caroline](https://github.com/carolinewuyan)


本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译，[Linux中国](http://linux.cn/) 荣誉推出

