主题 : 支持rtsp的mplayer移植问题 复制链接 | 浏览器收藏 | 打印
级别: 侠客
UID: 9088
精华: 0
发帖: 62
金钱: 380 两
威望: 118 点
综合积分: 124 分
注册时间: 2009-09-16
最后登录: 2017-09-13
楼主  发表于: 2010-05-04 21:35

 支持rtsp的mplayer移植问题

(不支持rtsp的mplayer已经成功移植到mini2440上)

系统 :Ubuntu 9.04
编译器:友善4.3.2


mplayer版本是MPlayer1.0rc2
live库的版本是live555-latest.tar.gz

live交叉编译通过后放在mplayer解压的目录下

mplayer配置./configure --host-cc=gcc --cc=arm-linux-gcc --target=arm-linux --enable-static      --prefix=/home/zhangcz/mplay-work/MPlayer  --disable-win32dll --disable-dvdread      --disable-dvdread-internal --disable-dvdnav --disable-libdvdcss-internal      --enable-fbdev --disable-mencoder   --disable-mp3lib      --enable-mad --enable-libavcodec_a --language=zh_CN      --disable-armv5te --disable-armv6      --enable-live     --with-extraincdir=/usr/local/arm/4.3.2/arm-none-linux-gnueabi/libc/usr/include:/home/zhangcz/mplay-work/MPlayer/live      --with-extralibdir=/usr/local/arm/4.3.2/arm-none-linux-gnueabi/libc/armv4t/usr/lib:/home/zhangcz/mplay-work/MPlayer/live      --codecsdir=/usr/local/lib/codecs


编译的时候可能会报错
demux_rtp_internal.h:22:24: error: liveMedia.hh: No such file or directory
demux_rtp.cpp:14:36: error: BasicUsageEnvironment.hh: No such file or directory
demux_rtp.cpp:16:30: error: GroupsockHelper.hh: No such file or directory
In file included from demux_rtp_internal.h:16,
                 from demux_rtp.cpp:12:
../libavcodec/avcodec.h:2248: warning: 'ImgReSampleContext' is deprecated (declared at ../libavcodec/avcodec.h:2242)
../libavcodec/avcodec.h:2258: warning: 'ImgReSampleContext' is deprecated (declared at ../libavcodec/avcodec.h:2242)
In file included from demux_rtp.cpp:12:
demux_rtp_internal.h:27: error: 'MediaSubsession' has not been declared
demux_rtp_internal.h:29: error: 'MediaSubsession' has not been declared
demux_rtp_internal.h:38: error: 'Boolean' does not name a type
demux_rtp.cpp:22: error: expected `)' before '*' token
demux_rtp.cpp:26: error: ISO C++ forbids declaration of 'FramedSource' with no type
demux_rtp.cpp:26: error: expected ';' before '*' token
demux_rtp.cpp:27: error: expected `;' before 'RTPSource'
demux_rtp.cpp:27: error: ISO C++ forbids declaration of 'RTPSource' with no type
demux_rtp.cpp:27: error: expected ';' before '*' token
demux_rtp.cpp:28: error: expected `;' before 'demuxer_t'
demux_rtp.cpp:34: error: 'Boolean' does not name a type
demux_rtp.cpp:54: error: ISO C++ forbids declaration of 'FramedSource' with no type
demux_rtp.cpp:54: error: expected ';' before '*' token
demux_rtp.cpp:55: error: ISO C++ forbids declaration of 'RTPSource' with no type
demux_rtp.cpp:55: error: expected ';' before '*' token
demux_rtp.cpp:64: error: ISO C++ forbids declaration of 'RTSPClient' with no type
demux_rtp.cpp:64: error: expected ';' before '*' token
demux_rtp.cpp:65: error: ISO C++ forbids declaration of 'SIPClient' with no type
demux_rtp.cpp:65: error: expected ';' before '*' token
demux_rtp.cpp:66: error: ISO C++ forbids declaration of 'MediaSession' with no type
demux_rtp.cpp:66: error: expected ';' before '*' token
demux_rtp.cpp:71: warning: 'typedef' was ignored in this declaration
demux_rtp.cpp:75: error: 'RTSPClient' was not declared in this scope
demux_rtp.cpp:75: error: 'client' was not declared in this scope
demux_rtp.cpp:75: error: expected primary-expression before 'char'
demux_rtp.cpp:75: error: initializer expression list treated as compound expression
demux_rtp.cpp:75: error: expected ',' or ';' before '{' token
demux_rtp.cpp:75: warning: 'openURL_rtsp' defined but not used
make[1]: *** [demux_rtp.o] Error 1
make[1]: Leaving directory `/home/zhangcz/mplay-work/MPlayer-resize/libmpdemux'
make: *** [libmpdemux/libmpdemux.a] Error 2
好像还是找不到live的相关头文件,请教高手
*無鈳取玳
级别: 论坛版主
UID: 27
精华: 12
发帖: 5398
金钱: 40120 两
威望: 17929 点
综合积分: 11036 分
注册时间: 2008-01-16
最后登录: 2014-11-22
1楼  发表于: 2010-05-05 18:16
--with-extraincdir=/usr/local/arm/4.3.2/arm-none-linux-gnueabi/libc/usr/include:/home/zhangcz/mplay-work/MPlayer/live

也许应该是
--with-extraincdir=/usr/local/arm/4.3.2/arm-none-linux-gnueabi/libc/usr/include:/home/zhangcz/mplay-work/MPlayer/live/include?
至少这里的路径应该指向live的头文件所在的目录吧
"If you have an apple and I have an apple and we exchange apples, then you and I will
still each have one apple. But if you have an idea and I have an idea and we exchange
these ideas, then each of us will have two ideas."
级别: 侠客
UID: 24708
精华: 0
发帖: 94
金钱: 480 两
威望: 96 点
综合积分: 188 分
注册时间: 2010-07-13
最后登录: 2023-04-23
2楼  发表于: 2011-04-28 11:29
live555交叉编译以后把live目录放在/usr/lib下,configure的时候不要--enable-live,让它自己检测。
我现在是重新编译的时候ld live 的库不成功.是不是因为live是g++编的来的原因?
望大侠们解答.
级别: 侠客
UID: 24708
精华: 0
发帖: 94
金钱: 480 两
威望: 96 点
综合积分: 188 分
注册时间: 2010-07-13
最后登录: 2023-04-23
3楼  发表于: 2011-05-03 11:56
编译成功了..但是不管是X86,还是ARM平台,..播放RTSP H.264的视频都有马赛克,具体错误是DC AC MV errors ..有知道的大虾吗,帮小弟解答一下..怎么解决这个问题.我觉得应该是mplayer的配置问题,或者它本身的bug?