用mpg123播放https协议的URL MP3

来源:互联网 发布:网络龙虎概率分析软件 编辑:程序博客网 时间:2024/05/16 15:56

mpg123本身是支持URL MP3的,可惜它只支持http协议的url mp3.

好在mpg123还支持从standard input中读取MPEG data,这样以来我们可以通过组合curl与mpg123来实现播放https协议的URL MP3.

#!/bin/bash# play https mp3 using mpg123function https_url_p (){    local url=$1    echo $url |egrep "^https://" >/dev/null}uri=$1if https_url_p $uri;then    curl -L $uri | mpg123 -else    mpg123 $curifi

原理很简单:

先判断一个文件是否以 https:// 开头,若是的话,则认为是https url mpg3,那么通过curl将其内容取出来,通过管道发给mpg123来播放.

事实上,curl支持超多的网络协议,你可以很容易的扩展到file,ftp,ftps,rtmp等各种网络协议上.

不过要一个一个判断网络协议的种类就太麻烦了,可以简化成这样:

mpg123 $1 || curl -L $1 |mpg123 -

先尝试用mpg123直接播放,失败的话再听过curl获取MPEG DATA交给mpg123来播放.

0 0
原创粉丝点击