TCPMP源代码编译

 
TCPMP 源代码编译
tcpmp 是一个开源的播放器 , 现在好像商业化了 , 改名叫 core player. 据说目前支持最多媒体格式的播放器 . 除了 rm,rmvb 等少数几种格式不支持外 . 可以在这个网址获得开源代码 http://picard.exceed.hu/tcpmp/ . 我昨天下载了一个 0.72RC1 的源代码 . 期望能自己编译定制一个播放器 . 好东西搞起来果然很费劲 ! 花费一个晚上终于在今天中午编译成功 , 在我的 arm9+wince 上跑起来了 . 我是用 evc4.2 编译的 , 网络上搜索 , 很多人都是碰到许多编译问题和显示问题 . 但都没有提供一个完整的解决办法 .
1. http://picard.exceed.hu/tcpmp/ 下载源代码 . 我下载的始 0.72RC1.
2. 编译环境 . 我安装的是 evc4.2+standard sdk+Win32(WCE ARMV4) Release. 更低版本的 evc 应该也是可以 . 如果是编译 x86 . 要下载一个 nasm 汇编工具 . 这点在 readme.txt 里面提到 .nasm 的下载地址 http://nasm.sourceforge.net/. 否则的话会报错 . 网上不少人碰到这个错误没法继续了 , 不先看 readme.txt 实在不应该 .
3. 从下面 2 个网址下载 AMR 的解码器的源代码 . 并且分别拷贝到 AMR 目录下的 26104 26204 . 同样 , 这个信息在 readme.txt 中提到              http://www.3gpp.org/ftp/Specs/archive/26_series/26.104/26104-610.zip
http://www.3gpp.org/ftp/Specs/archive/26_series/26.204/26204-600.zip
4. player_ce3 项目 set as active project. 这个项目将编译一个 player_ce3.exe 就是最终的程序 . 但编译这个程序依赖许多的库 . 这些库就是其他的 project 编译后提供的 .
5. 如果这时候点 rebuild all 会出现错误 . 我在 evc 左边工作区窗口的 FileView 标签下一个个的 project 编译过去 .player_ce2, sample_ce3 2 project 先忽略过去 .( 因为我们选择了 player_ce3. 如果搞定了一个其它的也没有问题 .) 大部分可库文件都可以正确编译 . 除了 asap flac 这两个项目会报错 . 剩下的事情主要是解决这 2 个项目 .
6. 编译 asap 项目 . 因为反复改动 , 具体的过程我记忆不清了 . 我把成功设置的结果写下来 . 要编译 asap 这个项目 , 需要修改的内容 : 右键点 asap files -->settings-->c/c++-->Category-->Preprocessor. Additional include directories: 中增加项目路径 , 注意这个是相对路径 ".,asap,atari800/src". 不然一堆头文件会找不到 . Preprocessor definitions: 中增加一个宏定义 ",ASAP". 上面的描述都是加入引号内的内容不包括引号 . 当然这 2 步动作也可以在源代码中修改 . 如此设置完毕后 ,asap files project 就可以正确编译了 .
7. 编译 flac 项目 . 6, 打开 flac settings 到相同界面 . Additional include directories: 中增加路径 "flac/include,flac/src/libFLAC/include", 不然一堆头文件找不到 . 然后 , Preprocessor definitions:"FLAC__NO_DLL". 增加这个定义避免使用 _declspec(dllexport) 定义函数造成的一大堆 c2491 错误 . 如此设置后 ,flac project 应该可以正确编译 .
8. 同理修改 player_ce3 项目 , Additional include directories 中增加路径 "../asap/asap,../asap,../asap/atari800/src,flac/include,flac/src/libFLAC/include". 然后在 Preprocessor difinitions: 增加 ASAP. 最后 , 成功编译 player_ce3.exe
9. 拷贝包含 player_ce3.exe 在内所有的生成文件到目标板上 . 可以运行 ! 但是菜单没有显示正确 .
10. lang 目录下面的多国语言支持文件拷贝到目标板同一个目录下面 . 根据需要 , 我只拷贝了 lang_std.txt lang_en.txt,lang_chs.txt,lang_ca.def 也可以了 .
完成上面内容 .tcpmp 就可以正常在我机器上运行了 .( 我的目标板报了个错误 , 没有声音 . 应该是我音频驱动还没有调试的原因 . 我的板子是自己定做的 , 驱动正在陆续增加 .) 赶紧下载了个 wmv 来测试 . 速度不错 !
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值