LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 55651|回复: 335

网络电视前端 gtk-sopcast(支持音量调节,实时状态显示,mplayer无延迟启动)

[复制链接]
发表于 2006-1-10 17:29:43 | 显示全部楼层 |阅读模式
前端基于了pinkme005和zlbruce的工作,目的是实验新的功能。
#####################
安装步骤:
1.解开sp-sc.bz2和getchannel.bz2:
bzip2 -d sp-sc.bz2
bzip2 -d getchannel.bz2
2.变成可执行:
chmod +x sp-sc
chmod +x getchannel
3.将它们放到/usr/local/bin
mv sp-sc getchannel /usr/local/bin
4.解开gtk_sopcast-0.0.5d.tar.bz2
tar jxf gtk_sopcast-0.0.5d.tar.bz2
5.进入gtk_sopcast-0.0.5d
cd gtk_sopcast-0.0.5d
6.运行 make,make install
make
make install


安装完成后,运行:
sopcast

使用:
单击某一电台再按sopcast或双击某一电台启动电视,按player重启player,按channel获得最新channel

player的输入行
aoss mplayer -ontop -geometry 100%:100%
可改为别的形式如:
xterm -e mplayer

程序原理:
sopcast只是一个gtk前端,核心p2p网络电视是sp-sc。 getchannel是一个bash脚本,负责到 http://www.sopcast.org/channel/ 下载最新的channel列表。sp-sc和getchannel应该可执行,且应该放到PATH可以找到的目录里,如/usr/local/bin。

##########################
0.0.1 changlog:增加音量调节功能
0.0.2 changlog: 启动时自动读取系统音量
0.0.3 changlog: mplayer可以不加延迟地启动(实际还要等1秒)
0.0.4 changlog: 增加实时连接状态显示功能
0.0.5 changlog: 不再使用glade开发工具,安装方式改变。修正了一些状态显示的bug.
0.0.5b changlog: 不再用时钟进行实时状态更新,改用用户定义信号。这样可以节省cpu使用率(没多大差别?)
0.0.6a changlog: 修补了反复按player会导致多个播放器起动的bug。增加自定义播放器输入栏。
0.0.7 changlog: 放弃线程了,问题多多,不稳定。改为全用进程。稳定性应该有所增强。
0.0.8-beta changlog: 加载channel list时不会发生僵住不动现象。
0.0.8 changlog: 采用新的清除zombie进程机制。播放器死掉不会影响gtk-sopcast的正常工作。
0.0.9 changlog: 加入自动检测端口是否被占用功能。允许同时启动多个sopcast,而互不干扰。
0.0.9a changlog: 加入鼠标双击channel启动sopcast功能。
0.0.9b changlog: 关于channel获取的bug fixing
0.0.10 changlog: 不再用/tmp作为数据文件的目录,改为$HOME/.sopcast作为数据文件的目录。同时去掉spsc_test数据文件,改为数组。安装时需重装getchannel教本文件。
0.0.11h changlog: 不再采用子进程发信号控制状态显示,改为时钟信号控制。状态显示应该没有bug了。增加窗口title显示电台功能。采用了更鲁棒的方法加载channel list.
0.0.11i changlog: 修补了sp-sc非人工引起的自动退出后状态仍显示的bug
0.0.11l changlog: 一定程度地修补了反复选台后僵住不动的bug。
0.0.12 changlog: 似乎修补了交替按sopcast和双击电台后僵住不动的bug。欢迎提交bug情况。
0.0.12a changlog: 基本找到选不同台时僵住不动的bug: Xlib的bug引起的。去除窗口title显示功能。
0.0.13 changlog: 增加buffering比率状态显示!
0.0.13a changlog: 关于buffering 比率显示的改善。
0.0.13b changlog: 关于buffering 比率显示的bug修正。
0.0.13c changlog: 1.增强的稳定性。2.屏蔽了sp-sc和播放器的输出。
0.0.14 changlog: 由于要使用线程进行状态显示,放弃了gtk 2.0,改为采用gtk 1.2。中文显示成为乱码。但线程基本解决了主要的导致僵死的问题。稳定性比以前应该有显著改进。
0.0.14a changlog: 提供gtk+1.2和gtk+2.0两个版本。经测试,gtk+1.2的更稳定。
0.0.14b changlog: 修补了gtk+1.2版当电台列表是空的时启动sopcast崩溃的bug。
0.0.14c changlog: 完善了buffering状态显示代码。增加联接后平均下载时间显示。
0.0.14d changlog: 进一步修补了gtk+1.2版当电台列表是空的时启动sopcast崩溃的bug。大部分的变量现在采用动态地址分配。
0.0.14e changlog: 对于gtk+1.2版本,引入getchannel教本的功能,所以不再需要getchannel教本文件。
0.0.14e-try2 changlog: www.sopcast.org改变了电台的联接地址,因此原gtk-sopcast软件将无法再用。
0.0.15 changlog: 安装时需要将$HOME/.sopcast文件夹删除。增加了 channel url header 设置项。

前景规划:
1.对音量自动控制,有些电台音量过大,有些过小,希望编程进行自动调节。难点:怎样得到声音的采样?(在 http://www.linuxsir.cn/bbs/showthread.php?t=238761 中提供了声音的录制和播放代码,可惜的是录制的设备是mic,而不是声卡)

下载:
http://lianwei3.googlepages.com/home2
http://lianwei3.googlepages.com/gtk2.0_sopcast-0.0.16d.tar.bz2
 楼主| 发表于 2006-1-11 18:03:24 | 显示全部楼层

sopcast测试版0.0.3新鲜出炉,解决mplayer延迟启动问题!!

0.0.3 changlog:基本解决我所提出的第2个问题,mplayer可以不加延迟地启动(实际还要等1秒)

操作:按sopcast启动电视(无须再按mplayer,同时去掉可以播放bbc功能)。按mplayer重启mplayer.

安装:需要将extra/spsc_test放到/tmp目录下。

下载:见第1贴。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-1-11 23:21:05 | 显示全部楼层
修正了1.点"channel"时刷新速度慢的问题。2.重启mplayer延迟1秒的bug
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-1-12 20:43:16 | 显示全部楼层
更新:增加实时连接状态显示功能
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-1-14 13:01:14 | 显示全部楼层
sopcast的channel好像只有official channel了,所以不需要经常更新channel了,
changlog:启动时加载channel,去掉点“channel"无延迟功能。
回复 支持 反对

使用道具 举报

发表于 2006-1-15 16:13:31 | 显示全部楼层
安装不能成功
总是说读不到list文件
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-1-15 21:27:30 | 显示全部楼层

已更新到0.0.5版

changlog:不再使用glade进行界面开发。修正一些状态显示的bug.状态显示更具有动态性。

Post by seniors
安装不能成功
总是说读不到list文件

试试最新版?
如有错误,请提供详细的错误输出。
回复 支持 反对

使用道具 举报

发表于 2006-1-16 04:59:05 | 显示全部楼层
:cool:
搂住加油,虽然偶用着命令行方式也觉得挺爽di~
回复 支持 反对

使用道具 举报

发表于 2006-1-16 08:18:58 | 显示全部楼层
我用的是zlbruce的sp-sc和getchannel,这两个文件放在了/usr/local/bin目录里
extra/spsc_test整个目录放到/tmp目录下
装了0.0.4总是总是读不到list文件
今天回家去试试0.0.5看看
回复 支持 反对

使用道具 举报

发表于 2006-1-16 10:53:13 | 显示全部楼层
启动的是mplayer还是gmplayer?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表