家电维修班,手机维修班,电脑维修班,电工班,焊工班,液晶电视维修班,电动工具维修班、电动车摩托车维修班、网络营销培训、网站设计培训、淘宝培训---全国招生 家电维修班,手机维修班,电脑维修班,电工班,焊工班,液晶电视维修班,电动工具维修班、电动车摩托车维修班、网络营销培训、网站设计培训、淘宝培训---全国招生
您的位置:网站首页 > 电器维修资料网 > 正文 >

怎么用Linux建立自己的Mp3广播站

★★★★★【文章导读】:怎么用Linux建立自己的Mp3广播站具体内容是:2.不需要运行自己的目录服务器;3.占用更少的系统资源;我们可以在服务器上运行自己的流服务器——icecast,使用ices提供流源,客户端则可以使用最常用的winamp。试验环境:服务器平台:RedHat7.0流服务…

来源: 日期:2013-12-24 21:08:36 人气:标签:

怎么用Linux建立自己的Mp3广播站



  2. 不需要运行自己的目录服务器;

  3.占用更少的系统资源;

  我们可以在服务器上运行自己的流服务器——icecast,使用ices提供流源,客户端则可

  以使用最常用的winamp。  

  试验环境:

  服务器平台:RedHat 7.0

  流服务器:icecast

  流源:ices

  mp3编码工具:lame

  步骤:

  1.获得相关软件

  流服务器icecast:http://www.icecast.org/releases/icecast-1.3.10-1.i386.rpm

  流源工具ices:http://www.icecast.org/releases/ices-0.0.1.beta5.tar.gz

  编码工具lame:http://home.elka.pw.edu.pl/~dmierzej/linux/lame/lame-3.87beta-1.i386.rpm

  lame库:http://home.elka.pw.edu.pl/~dmierzej/linux/lame/lame-devel-3.87beta-1.i386.rpm

   说明:

  A.通常可以使用liveice、shout等软件为流服务器提供流(即作为流源),但是我在使

  用的过程中发现ices要稳定一些,虽然还是个beta版的。

  B.通常你的每个mp3文件不可能具有同样属性,此时广播过程就会出现一些怪现象,

  比如声音断断续续、有噪音等等,所以我们必须使用mp3编码工具lame重新对其进行编码,来生成属性一致的mp3文件。 

  2.安装icecase

  使用以下命令安装icecast:

  rpm –ivh icecast-1.3.10-1.i386.rpm  

  3.安装ices

  使用以下命令安装ices:

  # tar xvzf ices-0.0.1.beta5.tar.gz

  会在当前目录下生成ices-0.0.1.beta5目录,用cd命令进入该目录

  # cd ices-0.0.1.beta5

  然后执行:

  # ./configure

  # make

  # make install

  编译好的文件缺省被安装在/usr/LOCal/icecast目录下  

  4.安装lame

  执行以下命令来安装lame mp3编码工具,该工具用来重新对mp3文件进行编码,以产生属性一致的mp3文件。

  rpm –ivh lame-3.87beta-1.i386.rpm

  rpm –ivh lame-devel-3.87beta-1.i386.rpm

  
 5.配置icecast

  icecast的主要配置文件是/etc/icecast.conf,有很多配置选项,但是其中的大多数只要采用缺省配置即可,部分选项意义说明如下:  

  Port:定义icecast服务绑定的端口,只设置一个即可,通常使用8000端口。  

  encoder_password:流源连接时的密码,使用ices为icecast提供流时ices必须提供提供这个密码,出于安全性考虑可以设置一个较为复杂的密码。  

  admin_password:可以通过telnet登录icecast进行远程管理,这个密码就是登录icecast时必须输入的密码。  

  oper_password:通过telnet登录icecast执行限制性命令时的密码。  

  max_clients:同一时间内允许连接到流服务器的最大客户数目。  

  max_sources:允许同时广播的最大流源数目,流源和流服务器可以位于不同的机器上,

  并且可以将多个流源传输到同一个流服务器进行广播。  

  max_admins:可以同时登录icecast进行远程管理的连接数目。

  Logfile:设置日志文件的位置。  

  Hostname:设置icecast绑定的ip地址,缺省绑定到所有ip地址。  

  server_name:指定icecast服务器的主机名或者是ip地址。  

  client_timeout:设置当无流源时,服务器断开已连接客户的超时时间。  

  stats_log:设置记录icecast统计数据的日志文件。  

  stats_time:设置stats_log日志文件的更新周期。  

  max_clients_per_source:设置可以同时连接到同一流源的最大客户数目。  

  reverse_lookups:设置是否对可以连接进行反向DNS解析,为0时禁止反向DNS解析,

  为1时启用反向dns解析。

  Location:设置icecast服务器的地理位置,设置与否并不重要。  

  rp_email:设置icecast服务器管理员的邮件地址。  

  Throttle:icecast服务器可以使用的带宽阀值,如果达到这一阀值,新的客户连接将被拒

  绝,单位是兆/秒。  

  LogfiLEDebuglevel:定义日志的信息详细程度。  

  server_url:定义icecast服务器的RUL

  This should be set to a URL describing this icecast server.  

  以下是我的配置文件,仅供参考:

  #icecast.conf

  location Yuxi Yunnan China

  rp_email bye2000@yxtc.edu.cn

  server_url http://www.yxtc.edu.cn/

  max_clients 900

  max_clients_per_source 900

  max_sources 10

  max_admins 5

  throttle 10.0

  mount_fallback 1

  encoder_password secret

  admin_password secret

  oper_password secret

  port 8000

  force_servername 0

  logfile icecast.log

  aCCessfile access.log

  usagefile usage.log

  logfiledebuglevel 0

  consOLEDebuglevel 0

  reverse_lookups 0

  console_mode 0

  client_timeout 30

  kick_clients 0

  staticdir /usr/share/icecast/static

  templatedir /usr/share/icecast/templates

  logdir /var/log/icecast

  stats_log stats.log

  statshtml_log stats.html

  stats_time 60

  kick_relays 10

  transparent_proxy 0

  acl_policy 1  

  6.启动icecast服务

  执行以下脚本启动icecast服务:

  # /etc/rc.d/init.d/icecast start  

  7.对所有mp3文件进行重新编码

  采用lame对mp3文件进行重新编码,从而生成属性一致的mp3文件。

  这要用到Lame命令的以下参数:

  --mp3input:输入文件为mp3文件

  -m s:指定所有帧均为立体声

  -b 56:指定新生成mp3文件的波特率,这里指定为56 kbps,单位是kbps

  --resample 24:指定新生成mp3文件的采样频率,这里指定为24 KHz,单位是KHZ  

  下面是一个lame的使用实例:

  lame --mp3input -m s -b 56 --resample 24 old.mp3 new.mp3

  
 

 

  8生成播放列表

  可以用以下文件生成播放列表:

  # find / -name ‘*.mp3’ > play_list_file

  将其中的play_list_file改成你的播放列表文件名。

  以下是一个播放列表文件示例:

  #play_list example

  /data/mp3/PowerStation/byemylove/1.mp3

  /data/mp3/PowerStation/byemylove/10.mp3

  /data/mp3/PowerStation/byemylove/11.mp3

  /data/mp3/PowerStation/byemylove/2.mp3

  /data/mp3/PowerStation/byemylove/3.mp3

  /data/mp3/PowerStation/byemylove/4.mp3

  /data/mp3/PowerStation/byemylove/5.mp3

  /data/mp3/PowerStation/byemylove/6.mp3

  可以看出,只要包含mp3文件的完整路径和文件名即可。  

  9发布流

  ices可以使用基于xml的配置文件,也可以使用带选项的命令,这里我们使用后者,常用的命令选项有:

  -B:指定ices以后台程序方式运行

  -b:指定使用的波特率

  -d:对流的描述

  -n:设置广播站的名称

  -g:广播音乐的类型

  -h:流服务器ip地址

  -p:流服务器监听端口

  -P:连接流服务器的密码

  -r:设置随机播放歌曲

  -S:指定播放列表类型,通常使用builtin

  -U:指定流服务器的URL

  -F:指定播放列表文件  

  我的例子:

  /usr/local/icecast/bin/ices –B –b 56 –d MUSIC –n “TOM Radio” –g music –h localhost –p 8000 –P secrue –r –S builtin –U http://www.yxtc.edu.cn -F /etc/icecast/list  

  10. 接收广播  

  可以用类似以下的方法让用户接收广播:

  建立一个扩展名为m3u的文件,比如我的文件是tom.m3u,该文件包含以下内容:

  http://www.yxtc.edu.cn:8000/

  然后在主页上建立该文件的超链接,这样客户一旦点击该连接,就会启动winamp、realplay等mp3播放器接收广播了。

  推荐使用winamp接收广播。  

  好了,大功告成了,坐下来泡杯咖啡慢慢欣赏你的mp3广播吧。

  


 

 

 11. 补充说明:

  我写了一个perl脚本,该脚本会自动搜索系统中所有的mp3文件,然后将非56K波特率和24KHZ采样频率的mp3文件用lame转换成56K波特率和24KHZ采样频率的mp3文件,完成转换后自动生成播放列表。

  使用方法:

  ./list_gen list_file

  必须先用touch 命令建立该列表文件

  该脚本要求你的系统安装lame工具。

  该脚本源码如下,你也可以从这里下载:  

  #!/usr/bin/perl

  `rm -f /tmp/temp.mp3`;

  if ( ! $ARGV[0] ) {

   print "   

  Usage: ./list_gen list_file_name   

  ";

   print "You must create the file first!   

  ";

   exit(0);

  }

  $files = `find / -name ’*.mp3’`;

  @file = split(/   

  +/,$files);

  $num = @file;

  for ($i=0; $i<=$num-1; $i++) {

   $file_info=`file $file[$i]`;

   if ( $file_info=~/MP3/) {

   @file_type=split(/s+/,$file_info);

   if ( $file_type[2]=~/56/ ){

   }else{

   `lame --mp3input -m s -b 56 --resample 24 $file[$i] /tmp/temp.mp3`;

   `mv -f /tmp/temp.mp3 $file[$i]`;

   }

   push (@list,"$file[$i]   

  ");

   }

  }

  

  if ( -e $ARGV[0] ) {

   $num = @list;

   open(LIST,">$ARGV[0]");

   for ( $i=0; $i<=$num; $i++ ) {

  print LIST "$list[$i]";

   }

   close(LIST);

   print "

  play list create OK, good luck!!!   

  ";

  }else{

   print "

  I CAN’t find file you specified!

  ";

   print "You must create play list file first!   

  ";  

  }
【看看这篇文章在百度的收录情况】

相关文章

联系方式

  • 0731-85579057 , 0731-85569651
  • 点击这里给我发消息点击这里给我发消息点击这里给我发消息
网站栏目导航: 培训课程 手机硬件 手机软件 综合维修 学校资讯 考证指南 就业导航 招生指南 教学管理 入学须知 学校图片 教学大纲 师资力量 学生感言 学校概况 教学实景 手机维修培训资讯 电脑维修培训 维修间故事 手机维修培训 液晶电视维修培训 家电维修资料网 电器维修资料网 招生地区 刷机教程 家电维修 手机技巧 老版网站 招生平台网络工程
友情链接: 监控安装培训 电动工具维修 家电维修学校 电工培训学校 液晶电视维修 焊工培训学校 电工焊工学校 电脑维修学校 家电维修培训 电脑维修培训 家装电工培训网络安装维护 主板维修 液晶显示器 笔记本电脑维修 电脑组装维护 电脑硬件维修 电脑维修 电工考证 电工证 装修电工 水电工 维修电工 电工 焊接技术 电焊工 焊工 电动设备维修 电动工具维修 制冷维修 空调维修 冰箱维修  更多>>
阳光-手机维修教育品牌学校
点击这里给我发消息 点击这里给我发消息 点击这里给我发消息
电工培训学校 电动车维修学校 摩托车维修学校 摩托车维修培训 手机维修培训 家电维修培训 电脑维修培训 电动工具维修培训 液晶电视维修培训 安防监控培训 空调维修培训 网络营销培训 网站设计培训 淘宝网店培训 电器维修培训 家电维修学校 电工培训 焊工培训 电工学校 电工培训学校 电动车维修学校 摩托车维修学校 摩托车维修培训 手机维修培训 家电维修培训 电脑维修培训 电动工具维修培训 液晶电视维修培训 安防监控培训 空调维修培训 网络营销培训 网站设计培训 淘宝网店培训 电器维修培训 家电维修学校 电工培训 焊工培训 电工学校 电工培训学校 电动车维修学校 摩托车维修学校 摩托车维修培训 手机维修培训 家电维修培训 电脑维修培训 电动工具维修培训 液晶电视维修培训 安防监控培训 空调维修培训 网络营销培训 网站设计培训 淘宝网店培训 电器维修培训 家电维修学校 电工培训 焊工培训 电工学校 电工培训学校 电动车维修学校 摩托车维修学校 摩托车维修培训 手机维修培训 家电维修培训 电脑维修培训 电动工具维修培训 液晶电视维修培训 安防监控培训 空调维修培训 网络营销培训 网站设计培训 淘宝网店培训 电器维修培训 家电维修学校 电工培训 焊工培训 电工学校
中山市,固原市,银川市,玉树,海东,陇南市,酒泉市,张掖市,天水市,金昌市,兰州市,榆林市,延安市,渭南市,铜川市,阿里,山南,拉萨市,怒江,文山州,楚雄州,普洱市,昭通市,玉溪市,昆明市,毕节,铜仁,遵义市,贵阳市,甘孜州,资阳市,达州市,宜宾市,南充市,遂宁市,绵阳市,泸州市,自贡市,三亚市,崇左市,河池市,玉林市,钦州市,梧州市,柳州市,梅州市,肇庆市,湛江市,佛山市,珠海市,韶关市,湘西州,怀化市,郴州市,张家界市,邵阳市,株洲市,仙桃市,随州市,荆州市,荆门市,襄樊市,黄石市,驻马店市,信阳市,南阳市,漯河市,中卫市,石嘴山市,海西,海南藏州,黄南州,海北,甘南,庆阳市,平凉市,武威市,白银市,嘉峪关市,安康市,汉中市,咸阳市,宝鸡市,林芝,日喀则,昌都,迪庆,德宏,大理,西双版纳,红河州,临沧市,丽江市,保山市,曲靖市,黔东州,黔西州,安顺市,六盘水市,凉山州,阿坝州,雅安市,广安市,眉山市,内江市,广元市,德阳市,攀枝花市,成都市,海口市,来宾市,百色市,贵港市,北海市,桂林市,南宁市,云浮市,揭阳市,潮州市,清远市,阳江市,汕尾市,惠州市,茂名市,江门市,汕头市,深圳市,广州市,娄底市,永州市,益阳市,岳阳市,湘潭市,长沙市,恩施州,黄冈市,孝感市,鄂州市,十堰市,武汉市,周口市,商丘市,三门峡市,许昌市,焦作市,安阳市,鹤壁市,平顶山市,开封市,郑州市,聊城市,滨州市,德州市,莱芜市,日照市,泰安市,烟台市,潍坊市,东营市,淄博市,上饶市,济南市,抚州市,宜春市,赣州市,新余市,九江市,景德镇市,宁德市,南平市,泉州市,莆田市,厦门市,宣城市,亳州市,六安市,宿州市,黄山市,滁州市,安庆市,淮北市,马鞍山市,蚌埠市,芜湖市,合肥市,丽水市,舟山市,衢州市,金华市,湖州市,嘉兴市,宁波市,宿迁市,镇江市,盐城市,连云港市,苏州市,徐州市,南京市,绥化市,牡丹江市,佳木斯市,大庆市,鹤岗市,哈尔滨市,白城市,白山市,辽源市,吉林市,葫芦岛市,铁岭市,盘锦市,阜新市,锦州市,本溪市,鞍山市,沈阳市,锡林郭勒盟,通辽市,乌海市,吕梁市,忻州市,晋中市,晋城市,阳泉市,太原市,廊坊市,承德市,保定市,邯郸市,唐山市,宁夏,甘肃省,西藏,贵州省,重庆市,广西,湖南省,河南省,江西省,安徽省,江苏省,黑龙江省,辽宁省,山西省,天津市,四平市,内蒙古,吴忠市,果洛,西宁市,定西市,商洛市,西安市,那曲,黔南州,巴中市,乐山市,贺州市,防城港市,东莞市,河源市,常德市,衡阳市,咸宁市,宜昌市,濮阳市,新乡市,洛阳市,菏泽市,临沂市,威海市,济宁市,枣庄市,青岛市,吉安市,鹰潭市,萍乡市,南昌市,龙岩市,漳州市,三明市,福州市,池州市,巢湖市,阜阳市,铜陵市,淮南市,台州市,绍兴市,温州市,杭州市,泰州市,扬州市,淮安市,南通市,常州市,无锡市,大兴安岭,黑河市,七台河市,伊春市,双鸭山市,鸡西市,齐齐哈尔市,延边,松原市,通化市,长春市,朝阳市,辽阳市,营口市,丹东市,抚顺市,大连市,阿拉善盟,兴安盟,乌兰察布市,巴彦淖尔市,呼伦贝尔市,鄂尔多斯市,赤峰市,包头市,呼和浩特市,临汾市,运城市,朔州市,长治市,大同市,衡水市,沧州市,张家口市,邢台市,秦皇岛市,石家庄市,青海省,陕西省,云南省,四川省,海南省,广东省,湖北省,山东省,福建省,浙江省,上海市,吉林省,河北省,北京市