LinuxSir.cn,穿越时空的Linuxsir!

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

写了一个利用feidian看网络电视的脚本.

[复制链接]
发表于 2006-5-20 00:37:29 | 显示全部楼层 |阅读模式
突然想看网络电视了. sopcast的台太少.人也太少,
这个上面
http://lianwei3.googlepages.com/home2
提供了sopcast的下载, 也提供了利用wine+feidian看网络电视的程序.
可惜在我这他的wine+feidian的程序总是不能成功.
后来发现可以手动播放,就是麻烦了点.于是就写了个小脚本.
脚本见下面.需要wine,feidian-green(http://tv.net9.org/files/feidian-green.exe),和mplayer.
使用方式,直接运行脚本(也可以先运行feidian再运行脚本),然后就想看什么频道就点就行了. (可能要改feidian-green.exe的位置)
脚本只是后台监视而已.  feidian做得用起来真的很方便

  1. #!/bin/bash
  2. if ! ps -u $USER -o command|grep -v 'grep'|grep -q 'Win32Client.exe'
  3. then
  4.     echo launch feidian
  5.     cd /mnt/addon/feidian/
  6.     wine feidian-green.exe >/dev/null &
  7.     cd /tmp
  8.     /bin/rm lau*.tmp.asx
  9. fi
  10. i=5
  11. while ! ps -u $USER -o command|grep -v 'grep'|grep -q 'Win32Client.exe' && [ $i != 0 ]
  12. do
  13.     ((i--))
  14.     sleep 5
  15. done
  16. file=""
  17. while [ "1" ]
  18. do
  19.     if ! ps -u $USER -o command|grep -v 'grep'|grep -q 'Win32Client.exe'
  20.     then
  21.         exit
  22.     fi
  23.     tfile=`ls lau*.tmp.asx 2>/dev/null`
  24.     if [ "$file" != "$tfile" ]
  25.     then
  26.         file="$tfile"
  27. #       if ps |grep -q mplayer
  28. #       then
  29. #           kill `ps |grep mplayer|awk '{print $1}'`
  30. #       fi
  31.         mplayer `grep '<REF' "$file"|sed 's/.*"\(.*\)".*/\1/'` >/dev/null &
  32.     fi
  33.     sleep 5
  34. done

复制代码
发表于 2006-5-20 00:56:00 | 显示全部楼层
好!赞一个!
回复 支持 反对

使用道具 举报

发表于 2006-5-21 09:56:20 | 显示全部楼层
赞一个,支持楼主的精神!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-5-22 12:42:17 | 显示全部楼层
改进了一下.可以设置4:3或16:9的比例,在运行的term里面按w或n.
  1. #!/bin/bash
  2. if [ "$TERM" == 'dumb' ]
  3. then
  4.         x-terminal-emulator -e "$0"
  5.         exit
  6. fi
  7. if ! ps -u $USER -o command|grep -v 'grep'|grep -q 'Win32Client.exe'
  8. then
  9.         echo launch feidian
  10.         cd /mnt/addon/feidian
  11.         #wine feidian-green.exe >/dev/null &
  12.         wine runme.exe >/dev/null &
  13.         /bin/rm /tmp/lau*.tmp.asx 2>/dev/null
  14. fi
  15. i=5
  16. while ! ps -u $USER -o command|grep -v 'grep'|grep -q 'Win32Client.exe' && [ $i != 0 ]
  17. do
  18.         ((i--))
  19.         sleep 5
  20. done
  21. file=""
  22. while [ "1" ]
  23. do
  24.         if ! ps -u $USER -o command|grep -v 'grep'|grep -q 'Win32Client.exe'
  25.         then
  26.                 exit
  27.         fi
  28.         tfile="`ls /tmp/lau*.tmp.asx 2>/dev/null`"
  29.         if [ "$file" != "$tfile" ]
  30.         then
  31.                 p=""
  32.                 file="$tfile"
  33.                 echo $file
  34.                 mplayer `grep '<REF' "$file"|sed 's/.*"\(.*\)".*/\1/'` >/dev/null &
  35.         fi
  36.         if read -t 5 -n 1 tp
  37.         then
  38.                 case "$tp"xx in
  39.                         wxx)
  40.                         par="-aspect 16:9"
  41.                         ;;
  42.                         nxx)
  43.                         par="-aspect 4:3"
  44.                         ;;
  45.                         *)
  46.                         tp="$p"
  47.                         ;;
  48.                 esac
  49.                 if [ "$tp"xx != "$p"xx ]
  50.                 then
  51.                         kill `ps|grep mplayer|awk '{print $1}'`
  52.                         mplayer $par `grep '<REF' "$file"|sed 's/.*"\(.*\)".*/\1/'` >/dev/null &
  53.                         p="$tp"
  54.                 fi
  55.         fi
  56. done
复制代码
回复 支持 反对

使用道具 举报

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

本版积分规则

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