Board logo

标题: [游戏娱乐] 批处理播放器 BatMPlayer V12.0 圣诞测试版 [打印本页]

作者: cjiabing    时间: 2010-10-9 21:33     标题: 批处理播放器 BatMPlayer V12.0 圣诞测试版

        批处理播放器 【 BatMPlayer  V12.0  圣诞测试版  
                2011年12月23日,上传测试版到附件,请下载附件测试!有意见请留言!
                   前几个月一直在对其大修,终于修成正果了,(*^__^*) 嘻嘻……


链接: https://pan.baidu.com/s/1ExnS7jEC1glz4A52JDxxgg 提取码: cs85

                                 下一步工作计划:
                                 1、过些时候闲了再进一步完善自动下载歌词,这个是必须的;
                                 2、考虑删掉那些花哨的东西,制作一个单纯的批处理程序;
                                 3、学习第三方syxq.com等的应用,使得BatMPlayer更豪华!估计是很久以后的事情了。
----------------------------------------------------------------------------------------------------         
      可以播放音乐和电影,还可以执行其他任务。界面华丽,功能强大。
      主程序全部为纯批处理,个人原创。
      批处理游戏、万年历等为其他作者所有。                             
      ★借用netbenton兄的歌词下载,实现歌词下载,但没有优化,可能有些下载了无法匹配。
      ★集成打包,解压缩即可自动安装。无毒!
      ★增加注释,方便阅读和维护。
      以下为主菜单界面,可以了解下:
   
                              ◇菜    单◇
—————————————————————————————————————
     ★ 播放歌曲→进入【B】播放【BG】结束【QQ】;
                →播放模式:歌词【BG】后台【BH】背景【BJ】随机循环【BR】;
                →播放列表:查看【PL】编辑【PLL】播放【PLB】排序【PLP】。
     ★ 搜索文件→进入【F】搜索命令【F /s 路径名 搜索词】。
     ★ 设置选项→进入【P】基本选项【P】配置选项【PP】应用选项【V】。
     ★ 工具辅助→进入【T】定时关机、清理垃圾、万年历等。
     ★ 游戏娱乐→进入【G】五子棋、俄罗斯方块等。
     ★ 使用帮助→进入【H】全局热键【HK】关于【H H】;
                →设置选项说明【H P】定时任务说明【H S】全局热键说明【H K】;
                →播放模式说明【H B】歌词使用说明【H L】通用搜索说明【H F】;
                →播放器命令参数说明【H O】;
     ★ 菜单导航→进入【M】快捷菜单【MM】返回上一层菜单【Q】。
—————————————————————————————————————


----------------------------------------------------------------------------------------------------   

下载最新版本及完整安装包,包含主程序和其他必要的附件。
        http://dl.dbank.com/c04a3gb8pu
        因文件较大,无法在论坛附件更新。

安装集成打包,自解压缩和自动安装。如不需要自动安装,请手动解压缩。
        主程序BatMPlayer可以独立运行。使用【P】命令进入安装【AZ】。
         所有安装均可正常卸载【P】,没有对系统进行多余操作,可放心使用。
         360对BAT文件报毒是公开歧视批处理,假如你认为本程序有病毒可以拒绝使用。

其他:语音朗读需安装中文语音插件,因文件较大,附件内并未带有。
        附一个中文女音TTS下载:http://cjiabing.qupan.cc/6543926.html
        附件内第三方为批处理游戏附带的,假如不放心可以不使用,也不影响主程序功能。
        程序开源,可以自己查看和修改代码。目前有注释,注意变量引用。

问题:netbenton兄的俄罗斯方块游戏可能无法调用,五子棋的颜色对比不显眼,还需
netbenton 修改下。
         颜色代码使用findstr生成,据说不是很可靠,但目前没有找到实用、效率和普遍性的可以替换。

         假如出现错误,请不要使用【QQ】键,因为它会允许【mode】,有可能导致强制关闭其它程序。
         排序功能,除了【PLP】,请他几个尚未检测过。

         最后向netbenton 兄致敬!他的编程思路和技术都是超越于我们的,当我们都在玩《批处理数码雨》那种菜鸟级的技术时,netbenton 兄勇敢地为批处理开辟了一块又一块的沃土,现在,我们正沿着他的足迹,在他开辟的沃土里享受果实和喜悦。他的代码就像永恒的天空一样灿烂,那些思想犹如天马行空,那些结构犹如高山流水,那些变量犹如繁星点点……
         实用、效率、自由、创造、好学、谦虚,这就是他给我们树立的榜样,向
netbenton 学习!     

----------------------------------------------------------------------------------------------------   

作者: ubcc    时间: 2010-10-10 17:41

很不错的 播放器,学习了
作者: ubcc    时间: 2010-10-10 17:42

保存打开后才发现功能确实不错

[ 本帖最后由 ubcc 于 2010-10-10 17:43 编辑 ]
作者: cjiabing    时间: 2010-10-11 07:57     标题: 回复 3楼 的帖子

哈哈,路过看过不玩过的确实会很遗憾的哦!~
作者: cjiabing    时间: 2010-10-12 00:03     标题: BatMPlayer V6.6 歌词超强升级版

太爽了!~大家来享受下音乐吧!~体验下批处理做的动态歌词!~
没在其它机子测试过,有问题大家反映下!~
  1. 部分代码在页面无法显示,请下载附件!————附件在图片底下
复制代码
修正了歌词模式,BatMPlayer V6.6 附件在图片下面。
想换一种颜色方案,但暂时没有找到一个通用、高效的。(当前的颜色方案有以下几个缺点:使用有限制,不支持部分字符串;速度慢,影响效果;需要人工干预来初始化,无法自动化;存在缺陷,部分机子无法正常使用。)
netbenton 的高速彩显syxq.com我一直无法通过测试,真是郁闷得紧!~
默认使用千千静听等播放器的歌词目录,需预先下载歌词到目录或歌曲所在目录。没有下载歌词功能,等待netbenton 的大作。没有歌词时返回主界面,使用【QQ】键退出后台播放。
假如歌词整体较快或较慢,请查找代码行“set /a rva=1000+!stma!-!vtma!-300>nul 2>nul”将“300”加大(提速)或减小(减速)。如非受其他进程干扰或者歌词本身时间有误,一般不会出错。
  1. 歌词版更新历史:
  2. v6.6 2010.11.26 修改了歌词部分,变成:BatMPlayerMiniLyrics  星空版,尽量把花俏的界面变成主题突出的界面。郁闷,搞乱了一个变量,不懂在搜索MPLayer时是否会出错。歌词模式可以正常使用了,不会出错。
  3. v6.5 2010.11.25 修正了一些小问题,如录入程序部分,歌词播放部分等。颜色部分仍然无法修正。
  4. v6.3 2010.11.05 修正了一些小bug。完善动态歌词显示,但效率有待提高。修正歌词搜索,能够实现“歌曲名 - 歌手名.mp3”模式的匹配,但歌曲名含有部分英文括号时可能会发生意外退出。
  5. v6.1 2010.11.02 采用新的歌词显示办法,除了汇编sleep.exe延时外,不采用其它第三方。
复制代码
[ 本帖最后由 cjiabing 于 2010-11-29 02:10 编辑 ]
作者: aries215    时间: 2010-10-15 10:26     标题: 啊~~

好复杂~!头疼哦
强!
作者: cjiabing    时间: 2010-10-15 13:10

本帖最后由 cjiabing 于 2011-4-21 04:20 编辑

3.1版比较完善了,但仍没有进行广泛测试,大家帮忙测试下,有bug反馈一下,谢谢!~
  1. 优点:
  2. 1、实时显示播放进度;
  3. 2、可以使用快捷键控制;
  4. 3、支持播放的格式多,可以播放视频;
  5. 4、支持自定义字幕;
  6. 5、播放快捷方便;
  7. 6、支持歌词播放;
  8. 缺点:
  9. 1、容易出现一些小故障;
  10. 2、需额外安装MPlayer程序(本程序使用暴风影音自带的MPlayer.exe)。
复制代码
  1. 更新历史:
  2.       2010.11.02
  3.       v5.4   修正歌词匹配,使得歌词查找更加准确。
  4.       2010.10.31
  5.       v5.3   修正输入和全盘搜索问题,完善歌词显示。
  6.       v5.2   完善歌词功能,因搜索问题,有些歌词匹配不上。
  7.       2010.10.29
  8.       v5.1   简化了网络搜索功能;添加了歌词功能,但只能是测试用,还未能达到netbenton写的那种效果。继续期待netbenton的歌词显示。
  9.       2010.10.25
  10.       v4.4   修正找不到播放器以及播放背景音乐时发生的错误;修正自动关机。期待netbenton的歌词。
  11.       2010.10.20
  12.       v4.3   修正找不到播放器时显示错误;修正文件搜索上的错误;添加网络音乐搜索;修正一些细节错误;没人帮忙测试和反馈,郁闷。
  13.       2010.10.20
  14.       v4.1 去掉多余代码,进行全局代码优化,代码更精简高效;进行初步测试,改进可能无法找到播放器的BUG;
  15.       v4.2 建立播放器参数设置项,尝试歌词显示项,但没有解决。
  16.       2010.10.17
  17.        v3.5   添加CMD和BAT模块,可以编写批处理;修改一些细节,如快捷键。
  18.       2010.10.16   
  19.        v3.4   进一步优化,使得界面支持编写CMD和BAT;改善背景音乐播放部分。
  20.       2010.10.15
  21.        v3.2   采用当前流行的色彩设置,美化界面;进一步进行测试,解决各种bug,美化代码。
  22.        v3.1   全面更新代码,优化功能,添加注释。但尚未经过广泛测试。
  23.       2010.10.11
  24.        v2.1   1、美化界面,添加背景音乐;2、添加播放循环模式;3、完善说明。
  25.       2010.10.10
  26.       1、改善界面;2、完善mplayer路径设置和自动搜索;3、修正帮助说明;4、考虑能否使用老板键;
  27.       2010.10.09
  28.       1、修正一些代码问题;2、增加方便各种快捷播放的输入部分;3、建立通用播放器模板,以便能支持MPlayer以外的播放器;4、尝试写歌词显示器。
复制代码

作者: netbenton    时间: 2010-10-20 04:10     标题: LZ,我帮你搞增加歌词显示的。

只做了播放单曲的。
楼主要是觉得可以就加入到里面吧,同时你的界面上色也要换换,用findstr来显示实在太慢了。

把mp3拖放到该批处理上,即播放,并同步显示同目录中同名的歌词文件 ??.lrc ,同时还有进度条显示。

所有按键和mplayer原来一样,没变。

[ 本帖最后由 netbenton 于 2010-10-20 04:14 编辑 ]
作者: cjiabing    时间: 2010-10-20 12:15     标题: 谢谢netbenton的支持

我已全部优化了代码,你看看是否比以前简单而且高效了!~虽然解释部分被我去掉了,过后我再补一篇文章介绍吧。

对于颜色我不是很熟悉,我也是拿来用用,觉得不错,我存有几种颜色方案,但不懂哪种效率比较高点!~请指点!~

一直都支持直接拖放啊,包括支持拖放音视频、文件夹、自动读取拖入的TXT文件列表——可使用搜索生成。——可能以前版本没有很好地解决这个问题,不过现在可以了,我亲自测试的。

至于按键——主要是播放时的基本控制键,那是MPlayer自己设置的,我无法改变,只是显示出来提醒大家。

最后,等我试了再你的歌词显示再做评论,不过非常感谢你的支持!~

虽然工作很忙,但我还是坚持把这件事情做完,有点玩物丧志的感觉!哎~
作者: cjiabing    时间: 2010-10-20 12:31     标题: 回复 10楼 的帖子

哇哇哇,爽歪歪!~非常棒!~
有个地方改进下:不支持在桌面播放,需检查下路径!~
再增加一个歌名分析的,也就是假如歌名是“谢霆锋 --  边走边爱.mp3”,而歌词是“谢霆锋 边走边爱.lrc”,如何将它们关联起来?——更智能些!~
因为自己下载歌词有点麻烦,能否从TTPlayer那里“借用”?呵呵,学习研究用用。
晚点我再添加到播放器里面试试看,谢谢~!
作者: caruko    时间: 2010-10-20 21:09

这是MPlayer for windows的
是修改过,而且增加了外壳程序来控制的
很多命令行参数不支持,还有-slave模式..

linux下可以通过直接将命令写入管道文件来操作..
可以去官方下载命令行版,不仅CMD操作便捷,而且更效率,交互性也更好。

[ 本帖最后由 caruko 于 2010-10-20 21:43 编辑 ]
作者: cjiabing    时间: 2010-10-20 21:44     标题: 回复 13楼 的帖子

没办法,这个东东似乎本来就是linux的产物!~
刚更新成V4.2了,因为昨天把代码全部更新了,所以存在点小问题。
但没有你所说的问题。
你所指的输出播放信息是指输出到程序屏幕,还是指输出到TXT?播放器默认自动显示到屏幕的,可以看到许多数字——除了背景音乐。

——默认使用暴风影音里的mplayer,官网下载的好像是9M多,差不多,官网的直接是命令行版的。但本程序对两个都支持。只能一般使用,不能和linux比了,但在WINDOWS下已经相当不错了!~

[ 本帖最后由 cjiabing 于 2010-10-20 21:48 编辑 ]
作者: Batcher    时间: 2010-10-20 22:58     标题: 回复 13楼 的帖子

你说的“管道文件”是不是命名管道?
如果哪位能想办法让批处理支持命名管道,那就太棒了!
^_^
作者: cjiabing    时间: 2010-10-21 00:58     标题: 回复 15楼 的帖子

Mplayer另类在线播放影音文件技巧
http://hi.baidu.com/cjiabing/blo ... 75ffb8d1a2d3ea.html
在线播放rmvb文件:
  1. wget -ftp://username: password@ftpserver/directory/movie.rmvb -O - | mplayer -cache 8192 -
复制代码
这个wget 是什么东东?
作者: caruko    时间: 2010-10-21 11:44

wget强大的是下载工具..
作者: caruko    时间: 2010-10-21 11:57

只是"命名管道",其实BAT可以做到相似的功能..
用AT /every:date[,...] 或者 /next:date[,...] 来区别命名..然后AT | FINDSTR 来查找
这样就可以做到多个CMD交换数据甚至命令, 还支持网络远程..

如果是I/O管道,大概写第3方也不太容易
作者: Batcher    时间: 2010-10-21 12:08     标题: 回复 18楼 的帖子

我觉得这个“相似”距离真正的命名管道还相差很远,呵呵。
作者: Batcher    时间: 2010-10-21 12:09     标题: 回复 16楼 的帖子

wget和curl都是比较强大的下载命令
http://bbs.bathome.net/thread-3981-1-1.html
作者: cjiabing    时间: 2010-10-21 12:15     标题: netbenton兄

netbenton兄,你那个代码不好处理啊。
把它放在开头,它只显示当前的播放,如果进行下一曲播放它会新建MPLAYER进程,而且原窗口代码变乱,播放不受控制。如果放到末尾,它就一闪而过。
你的代码太高深了,你帮忙改改:
因为你的代码只支持单曲播放,我想把它作为子程序调用,给它留了个标签“YRICS”,调用的播放子程序如下:
  1. :PLAY_FILE
  2. CALL :PLAY
  3. !MPP! !INPUT!
  4. GOTO MAIN
复制代码
CALL LAY是调用播放时先调用的头部,用来显示一些公用信息。
!MPP! 是播放器路径名。
!INPUT!是在窗口输入的歌曲路径名。
MPlayer使用参数 -PLAYLIST 播放列表文件;
MPlayer似乎有一种不是基于帧而是基于时间的字幕,不懂能否改装成歌词,我对那些一窍不通……

[ 本帖最后由 cjiabing 于 2010-10-21 12:17 编辑 ]
作者: caruko    时间: 2010-10-21 12:32

linux下的MP支持通过管道写入命令..
比如得到当前播放时间是 get_time_pos
windows这个,我这个似乎有问题..
没法测试
作者: wuhengsi    时间: 2010-10-21 21:44

我确实很佩服老大的技术。。。。

不过我也觉得使用BAT来编写这种程序真的是折腾。。。

没有必要。。。浪费。。。其实换了用  VC 或 VB或C等都会简单许多
效果也好很多,质量也没有得谈拉。。。。

当然拉,会这些语言是一个前提咯
作者: Batcher    时间: 2010-10-21 22:18     标题: 回复 23楼 的帖子

可能楼主只是想巩固、提高一下自己的批处理知识吧
说不定楼主在其他语言方面也有很深的造诣呢
作者: cjiabing    时间: 2010-10-21 22:20     标题: 回复 23楼 的帖子

就像从上海到香港,有钱人坐飞机,我等穷人只好坐长途客车咯!~
就像人家说那女的很抽象,可你还是情人眼里出西施,爱的死去活来的!~
批处理,不过如此,你,也如此!~
作者: caruko    时间: 2010-10-21 22:56

脚本语言都如此了..
可以简单而又高效的完成某些操作任务..
简单的几行语句,完成繁复的任务。
不必象C一样,想写个简单的东西,都要先找来一大堆的库..

在系统高层上,脚本语言很有优势,但是底层的操作就经常无能为力了。
作者: cjiabing    时间: 2010-10-21 23:25     标题: 回复 26楼 的帖子

呵呵,看来你学得不少,向你学习。
我除了批处理其它的一窍不通,心里有想法,要表达出来,只能用这些简单的命令了,你说我不玩批处理玩什么呢?
批处理是简单,但有时候简单有简单的好处,这也是为什么这么多人对批处理感兴趣的原因吧!~
作者: netbenton    时间: 2010-10-22 09:12

回楼主,我已找到支持列表歌词的办法了,不过还有点问题,等解决了再发上来
作者: cjiabing    时间: 2010-10-22 12:04     标题: 回复 28楼 的帖子

收到!你厉害!慢慢搞,不急,我外出学习两天!
作者: caruko    时间: 2010-10-22 17:44

我写了一个歌词显示的.,支持暂停/继续,停止,上/下一首,拖拽到任意时间。
并且歌词是一个新的CMD窗口,不妨碍操作窗口。
但是,因为我这里MP问题,无法得到播放时间..
因此测试用的是系统时间相减..你可以更改部分代码,增加获取播放时间的代码。

以下代码不完全测试...
也还有不少问题,比如:
1, 没有支持毫秒,现在是精确到秒,抓系统时间然后计算毫秒增加不少负担,而且我使用的是findstr, 就算加上估计最多精确到0.3-0.5秒吧..
2, STOP,pause ,没有空闲CPU的指令,使用ping可能延迟有点高,所以一直在循环,造成CPU不小负担。
3, 毕竟CMD的,鼠标点击窗口 或者 非前台状态可能也会延迟。。。

控制命令如下:
@表示插入CMD语句,可用于退出,如@exit
$表示插入控制语句,
at 00:00 /next:1 @exit  ;退出歌词秀
at 00:00 /next:1 @pause  ;暂停歌词秀,输入健后才能继续
at 00:00 /next:1 $stop  ;停止歌词秀
at 00:00 /next;1 $goto$02:03   ; 跟随播放进度,跳转到02:03秒
at 00:00 /next:1 $start$e:\aaa.lrc  ; 直接开始播放aaa.mp3的时候加入,则加载新的歌词。如果是在暂停状态,则忽略参数开始继续暂停时间运行。
at 00:00 /next:1 $next$e:\aaa.lrc   ;其实跟start差不多,用它是打算完善后用在播放列表功能上。
  1. @echo off
  2. setlocal ENABLEDELAYEDEXPANSION
  3. color 2b
  4. :main %1
  5. if "%1" == "" echo 歌词不存在! & goto :暂停
  6. for /f "tokens=1,2 delims=:[]" %%a in ('findstr "ti:" %1') do set _ti=%%b
  7. title=%_ti%
  8. for /f "tokens=1,2 delims=[]" %%a in ('findstr "[0-9][0-9]:[0-5][0-9]." %1') do set "#%%a=%%b"
  9. set 初始时间=%time%
  10. set /a 初始分=%初始时间:~3,2%
  11. set /a 初始秒=%初始时间:~6,2%
  12. :loop
  13. set 临时时间=%time%
  14. call :临时时间 %临时时间:~3,2% %临时时间:~6,2% %临时时间:~9,2%
  15. at |findstr "@" >nul && call :cmdd
  16. at |findstr "$" >nul && call :contrl
  17. for /f "tokens=1,2 delims==" %%a in ('set # ^|findstr "%ktime%"') do call :显示歌词 %%b
  18. goto :loop
  19. goto :eof
  20. :临时时间
  21. set varm=%1 & set vars=%2 & set varms=%3
  22. if %varm% LSS %初始分% (set /a varm=varm+60)  2>nul
  23. if %vars% LSS %初始秒% (set /a varm=varm-1 & set /a vars=vars+60)  2>nul
  24. set /a 临时分=varm-初始分  2>nul
  25. set /a 临时秒=vars-初始秒  2>nul
  26. IF %临时分% LEQ 9 set 临时分=0%临时分%
  27. IF %临时秒% LEQ 9 set 临时秒=0%临时秒%
  28. set ktime=%临时分%:%临时秒%
  29. goto :eof
  30. :显示歌词
  31. if NOT "%*" == "" cls
  32. echo.%*
  33. goto :eof
  34. :cmdd 插入命令行语句
  35. for /f "tokens=1* delims=@" %%a in ('at ^|findstr "[0-9]"') do at /del /y & %%b
  36. goto :eof
  37. :contrl 控制歌词,比如暂停,停止,下一首等。
  38. for /f "tokens=2,3 delims=$" %%a in ('at ^|findstr "[0-9]"') do (
  39.         at /del /y
  40.         echo %%b | findstr /i "pause" && goto :暂停
  41.         echo %%b | findstr /i "next" && call :main %%c
  42.         echo %%b | findstr /i "stop" && call :stop
  43.         echo %%b | findstr /i "goto" && call :gt %%c
  44. )
  45. goto :eof
  46. :暂停
  47. title=%_ti% -- 暂停
  48. for /f "tokens=2,3 delims=$" %%a in ('at ^|findstr "[0-9]"') do (
  49.         at /del /y
  50.         echo %%b | findstr /i "pause" && call :暂停
  51.         echo %%b | findstr /i "next" && call :main %%c
  52.         echo %%b | findstr /i "stop" && call :stop
  53.         echo %%b | findstr /i "goto" && call :gt %%c
  54.         echo %%b | findstr /i "start" && goto :loop
  55. )
  56. goto :暂停
  57. :stop
  58. title=%_ti% -- 停止
  59. for /f "tokens=2,3 delims=$" %%a in ('at ^|findstr "[0-9]"') do (
  60.         at /del /y
  61.         echo %%b | findstr /i "pause" && call :暂停
  62.         echo %%b | findstr /i "next" && call :main %%c
  63.         echo %%b | findstr /i "stop" && goto :stop
  64.         echo %%b | findstr /i "goto" && call :gt %%c
  65.         echo %%b | findstr /i "start" && call :main %%c
  66. )
  67. goto :stop
  68. :gt mm:ss 参数为歌曲播放时间
  69. set ktime=%*
  70. goto :eof
复制代码

[ 本帖最后由 caruko 于 2010-10-22 18:11 编辑 ]
作者: netbenton    时间: 2010-10-23 22:52     标题: 搞到可以列表播放时显示歌词了

批处理多彩的mp3歌词器,支持列表播放时显示歌词。

请看本楼附件!!

增加了卡拉OK方式显示歌词


使用方法:
把:名列表 .txt 文件,或者,歌词名;可以多个;拖放到主批处理上即可播放。

首次运行会自动搜索环境:
mplayer.exe 的位置,以及歌词库路径,并保存到与批处理同名的.ini文件,免去下次再搜索。

所以首次运行较慢,保存有设置后,再次运行就快了。


特点:

1,改变进度亦可自动跟上进度

2,带进度条

3,智能匹配查找歌词,可以根据歌词信息及文件名搜索等多种方式。

4,识别重叠歌词格式,如:
   [02:34.56][01:11.18]黑色笑靥掉了 雪白眼泪掉了

5,识别歌词内的作者信息

6,模拟卡拉OK歌词显示(当前行歌词逐字高亮)

7,小修改:增加文件中含有特殊字符的兼容性;在歌词还未开始时显示Waiting...

[ 本帖最后由 netbenton 于 2010-10-25 19:35 编辑 ]
作者: shujia    时间: 2010-10-24 11:54

需要mpplay.exe是吧
作者: cjiabing    时间: 2010-10-25 13:21     标题: 回复 31楼 的帖子

一下子给你整得那么强大了!~
不过有个问题,我这里干嘛提示没有找到歌词,没有匹配的歌词显示,但它下面又提示找到歌词,并且路径也对?
  1. `i`lrcpath= "c:\Drivers\Camera\UsbCam\321\" "d:\Program Files\TTPlayer\Lyrics\" "f:\geci\" "f:\批处理之家论坛下载 _cmdlrc\"
  2. `i`mp=D:\mplayer\mplayer.exe
复制代码
这个"c:\Drivers\Camera\UsbCam\321\"似乎有点问题,文件夹里面只有一个vm321.lrc文件。
不认当前目录下的LRC

[ 本帖最后由 cjiabing 于 2010-10-25 17:48 编辑 ]
作者: cjiabing    时间: 2010-10-25 17:54

晕,我拿旧的那个附件cmdlrc也不得?!~
作者: netbenton    时间: 2010-10-25 21:27     标题: cmdlrc21

修正了不少BUG,

1,修正了2.0的有时漏行现象
2,修正有时歌词匹配不正确现象
3,改为如果文件夹的歌词文件不足3个时,不作为歌词库
4,修正按Esc有时不能退出的现象
作者: netbenton    时间: 2010-10-27 06:50     标题: 做到可以自动从网上下载歌词了!!!哈哈

智能匹配,在本地词库中在找不歌词时,就通过sogo引擎,从网上自动下载歌词,到cmdlrc的专用歌词目录。

哈哈~~这次真是大用收获了!!!!

不过需要 wget.exe 的支持
作者: cjiabing    时间: 2010-10-27 08:36     标题: 回复 37楼 的帖子

大哥,为什么我这里都显示不了啊?
新版本显示不了,旧版本的也显示不了——原来可以显示的。
给个解释!~
着急……
作者: netbenton    时间: 2010-10-27 10:58     标题: 回复 38楼 的帖子

我也想知道为什么会有的系统不正常,QQ上聊37659560
作者: cjiabing    时间: 2010-10-27 11:06     标题: 回复 39楼 的帖子

好的,晚上有空先!~
作者: cjiabing    时间: 2010-10-28 00:05

我还是那个想法,应该是在匹配歌词时出错,包括名称和内容。
比如《陈楚生 - 相忘于江湖》:
首先,程序搞乱了歌手和歌曲名,把《 - 陈楚生》当歌曲名,而把《 相忘于江湖》当成歌手名。
其次,本地有一个正确的歌词:《陈楚生 - 相忘于江湖.lrc》,程序没有匹配,而是自动下载了一个新的歌词:《相忘于江湖--陈楚生.lrc》——注意名称是颠倒的,但是,新歌词的歌词内容是错误的。
第三, 用本地歌词《陈楚生 - 相忘于江湖.lrc》的正确内容替换下载歌词《相忘于江湖--陈楚生.lrc》的错误内容,程序无法显示。即使只是该名称也不可以。
不懂是我这里的问题还是其他问题,你再检查下。
作者: cjiabing    时间: 2010-10-28 23:54     标题: 回复 37楼 的帖子

我搜索了一下。用VB写歌词的有好多,可我不懂VB!~
作者: pojiedos    时间: 2010-10-29 20:55

好强哦///////
作者: cjiabing    时间: 2010-10-31 21:41

废寝忘食将近一个月,实在辛苦!~
代码打印出来整整十三页!~
尽管还不够完善,因生活和工作压力只能到此为止了!~
技术上没有太大的新意和挑战,但通过这个项目,我也使出了浑身解数。
主要的问题在结构和细节上,到后来,只要修改一个地方,全盘都可能受到影响,得非常小心翼翼。
最浪费时间的就是测试。需要不停地检查错误——修正——再检查——再修正……,常常会浪费一天的时间。遗憾的是,没见有人帮忙测试,无法发现更多的BUG,从而无法使之更完善。
“以批处理的方式”,这是我做这件事情的出发点。以批处理的方式生活,有点我思故我在的意思。虽然现在好的播放器大把多,好的MPlayer的GUI大把多,但我喜欢自己写的BatMPlayer ,还可以显示歌词哦!~
昨晚,当我听小娟的《雪莲花》,看着BatMPlayer 显示的歌词,那美就像一首诗!~

[ 本帖最后由 cjiabing 于 2010-10-31 21:42 编辑 ]
作者: netbenton    时间: 2010-11-3 06:59

回楼主,
你贴出来的代码,我复制下来运行不了,
你自己在论坛复制一次运行看看是怎么回事。
作者: cjiabing    时间: 2010-11-3 15:23     标题: 回复 45楼 的帖子

哈哈,重大发现!~可以部分实现你的的功能哦!~
作者: cjiabing    时间: 2010-11-3 16:01     标题: BatMPlayer V6.1 歌词版:

可以定点、动态、彩色显示歌词!~——无意中发现的东东!~
看6楼图片和附件
不过还是不好把握!~
存在问题:
1、没有找到有效的“按任意键退出”,只好用判断进程,但非常耗时间,以至于退出的时候得等几秒钟!~这是当前最大的问题。
2、颜色显示的那段代码不支持一些常见的英文标点符号,导致乱码!~这个也是弊端!~
3、动态显示歌词功能部分没有很好的把握,导致偶尔延迟或出错。没空去研究原理,只是将就着用。
4、原来的时间计算有些小的误差(可能是起始时间没有计算),特别是在增加了其他功能之后,时间被延误好多!~
5、歌词信息部分,有时候只显示歌曲名,歌手名等没有显示,还没搞清楚什么原因。
作者: mysuperbat    时间: 2010-11-6 15:35

批处理也能做播放器,神啦!
作者: sarino    时间: 2010-11-9 10:24

楼主辛苦了,真厉害啊
作者: broly    时间: 2010-11-10 16:50

嗯,很强大的批处理。
作者: renshihong    时间: 2010-11-13 11:28

这东西太牛了。。一定要顶
作者: yuan6319    时间: 2010-11-17 01:22

膜拜楼主!学习先!!!
作者: vigiles    时间: 2010-11-17 12:15

很好很强大 这类高手是怎么炼成的?
作者: 6508as    时间: 2010-11-22 14:50

学习了。。。。。。。。。。。
作者: wxf3753    时间: 2010-11-24 18:57

如果没播放器,可以试下,不过界面有点粗糙!!!
作者: cjiabing    时间: 2010-11-25 01:13

没有播放器你根本试不了!
你用批处理写一个界面精致的怎么样?保证你名字载入批处理史册!
作者: cjiabing    时间: 2010-11-25 11:32     标题: 回复 1楼 的帖子

晕,523066680,你太夸张了吧!~在你们面前我是班门弄斧了!~
作者: taburiss    时间: 2010-12-13 20:05

这个东西牛了,厉害!
作者: 白手真三    时间: 2011-1-1 23:35     标题: 标题

真的是没有做不到,只有想不到
作者: greenworld    时间: 2011-1-2 14:38

膜拜啊...LZ强淫
作者: acaigg    时间: 2011-1-4 11:44

很强大,先支持再说。
作者: wuyinhou    时间: 2011-1-5 09:28

很好  很强大 支持
作者: wslqy    时间: 2011-1-10 10:20

真的是没有做不到,只有想不到
作者: liaobin    时间: 2011-3-31 21:25

LZ太强悍了,东西收下了
作者: jay_16    时间: 2011-4-2 12:15

为什么我这运行不了呀?郁闷
作者: gywhcj    时间: 2011-7-20 08:02

学习下,很不错
作者: 1_ta_7    时间: 2011-7-25 09:46

新手学习中..批处理很强大
作者: wrz99    时间: 2011-7-27 14:12

膜拜,膜拜一下!

能做成这样,服的五体贴地!
作者: wrz99    时间: 2011-7-27 14:13

忘了问,是否支持MKV格式,哈哈!
作者: CUer    时间: 2011-7-27 17:35

回复 72# wrz99


先试后问,哈哈!
作者: cjiabing    时间: 2011-7-27 18:05

回复 72# wrz99


    试了下,是支持的。mplayer支持的格式还是比较多的。不过,因为版本影响,可能存在些差异。主要指暴风影音携带的版本和官方出厂的版本的差异。暴风影音可能要升级才有。
    弄了半天,发现netbenton 的歌词下载失效了,可能被搜狗修改了,可怜。新版已经研究了几个月,在一个合适的时间里,将以一个更好的面目,和更强大的功能呈现出来!~
作者: wrz99    时间: 2011-7-27 19:07

回复  wrz99


    试了下,是支持的。mplayer支持的格式还是比较多的。不过,因为版本影响,可能存在些 ...
cjiabing 发表于 2011-7-27 18:05



    呵呵,那严重期待!
作者: scarcr    时间: 2011-8-6 01:46

看着就觉得不错。
作者: brqtpt007    时间: 2011-8-11 17:38

下了,就要顶起来
作者: netbenton    时间: 2011-10-12 21:55

批处理播放音乐动态实时显示bug已经改正,

自动下载歌词的功能也已经修复~~

有兴趣的朋友试一下~~

注意:
    需要用到三方:wget.exe 和 MPlayer.exe,请自行下载~~~
作者: cjiabing    时间: 2011-10-13 12:56

回复 78# netbenton


    好消息啊,我决定另外搞了,做一个和你的一样漂亮的!~
作者: ggehuliang    时间: 2011-12-22 20:47

Game.rar  在哪啊?
作者: cjiabing    时间: 2011-12-22 23:02

回复 78# netbenton


    没注意兄弟已经修正了,我试试!十分感谢!
————————————————————————————————————————————
    新版正在修订中,争取在元旦前公布,慢慢期待吧。
    因为几次全部重新调整了代码,目前还差一些小问题有待修正。
作者: cjiabing    时间: 2011-12-23 01:12

回复 78# netbenton


    555,netbenton,你的cmdlrc22.bat太令人感动了,我决定放弃单纯的bat,转入第三方制作!~

    歌词匹配有个小问题,你把中间的当中歌名了,比如,johnny cash hurt.mp3,其中hurt才是歌名,而前面两个是人名。
    歌词匹配有个优先级,以“Far away from home  Groove coverage.mp3”为例,Far away from home是歌曲名,有四个字节,Groove coverage是歌手名,有两个字节,加起来总共有6个字节,那么,搜索的优先级应该是这样:
   第一级:完全匹配
    1、所有字符:Far away from home  Groove coverage;——全名优先,最完美的匹配方案。
    2、歌手名+歌曲名:Groove coverage + Far away from home ;——按照常见的MP3文件名格式优先;
    3、歌曲名+歌手名:Far away from home  + Groove coverage;——按照常见的MP3文件名格式优先
   第二级:高度匹配
    1、一种模糊而确定的游戏办法就是多采用字符:
        1+3+5+最后一个:Far +from + Groove + coverage
        2+3+5+最后一个:away + from +Groove coverage
        2+4+6+最后一个:away + home + coverage
    2、第一个字符+最后一个:Far + coverage;——采用前后部分组合确定法
    3、第一个字符+中间的字符。比较可靠的算法——采用固定位置与变动位置组合确定法
        第一个字符+倒数第二(三)个字符:Far + Groove
        最后一个字符+顺数第二(三)个字符:coverage + away
   第二级:模糊匹配
    1、尝试间隔组合的模式,适合搜索英文单词较多的歌词;
        1+3或1+4:Far + from 或Far + home;——这样几率就会稍微高点,而且一般英文姓名都控制在三个单词以内,容易实现。
        2+4:away + home;——采用间隔的办法是比较有效的;
        2+5:away + Groove;——这个间隔尽量控制在2到3之间,不宜太大。
    2、一般两个字符连起来的成功率是会提高的,但它得到的无效结果也多,因此使用间隔以及两个字符以上的办法搜索。
        1+2:Far + away;——当歌词库有大量某个歌手的歌词时,这个就不灵了,所以不只能放在这里。
   第三级:元素匹配
        逼不得已使用单独模式,适合搜索那些只有一个单词或词语的歌词,或者上面找不着谱的歌词。
        一般采用头法或尾法,单独搜索开头或结尾;
        也可以单独搜索中间的单词。
作者: netbenton    时间: 2011-12-23 16:54

cmdlcr22,只考虑了中文。不但从文件名中取歌名,而且mp3内有歌曲信息也可以取到。
作者: 331252240    时间: 2012-5-29 18:21

回复 5# cjiabing


    太厉害了,学都学不会呀!
作者: 狱渊    时间: 2013-4-28 20:54

回复 1# cjiabing


    好厉害

作者: 112    时间: 2018-3-5 16:16

caruko说的对




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2