主题 : ffmpeg代码移植到mini2440和tiny210板子的问题 复制链接 | 浏览器收藏 | 打印
级别: 新手上路
UID: 64072
精华: 0
发帖: 10
金钱: 50 两
威望: 10 点
综合积分: 20 分
注册时间: 2012-02-29
最后登录: 2012-04-05
楼主  发表于: 2012-03-13 15:19

 ffmpeg代码移植到mini2440和tiny210板子的问题

tiny210和mini2440系统都是友善自带的LINUX系统,在PC机上安装redhat 6.0 server版,然后用友善自带的交叉编译器编译ffmpeg代码,ffmpeg中ffplay需要SDL(Simple DirectMedia Layer)的支持,于是先编译了SDL,再编译的ffmpeg,最后下载到目标板上运行,在mini2440上运行良好,虽然有一些小问题,但是能正常播放视频,但是在tiny210上视频显示错误,有重影,有的视频根本就看不到图像,只能听到声音。刚开始怀疑是ffmpeg程序的问题,但是我用SDL自带的测试程序也跑了下,也有同样的问题,显示图片有重影
[ 此帖被paopaow2004在2012-03-13 15:30重新编辑 ]
级别: 新手上路
UID: 64072
精华: 0
发帖: 10
金钱: 50 两
威望: 10 点
综合积分: 20 分
注册时间: 2012-02-29
最后登录: 2012-04-05
1楼  发表于: 2012-03-14 16:21
现在最新进展是用ffmpeg在tiny210上播放mpeg格式文件是正确的,但是其它flv 、wmv还不正确,在2440上正常
级别: 荣誉会员
UID: 34761
精华: 0
发帖: 1348
金钱: 6835 两
威望: 1367 点
综合积分: 2696 分
注册时间: 2010-12-21
最后登录: 2017-06-02
2楼  发表于: 2012-03-14 17:21
表示关注
级别: 新手上路
UID: 64072
精华: 0
发帖: 10
金钱: 50 两
威望: 10 点
综合积分: 20 分
注册时间: 2012-02-29
最后登录: 2012-04-05
3楼  发表于: 2012-03-15 09:53
今天看了下,在tiny210上播放mp4 视频会报 s3cfb s3cfb: invalid bits per pixel这样的问题,但是图像正常,其它格式的视频播放也有这样的问题,同时播放不正常,完全看不清画面内容,不知道这是不是显示驱动有问题
[ 此帖被paopaow2004在2012-03-15 09:59重新编辑 ]
自由,自强,共享,共创。
级别: 论坛版主
UID: 12573
精华: 27
发帖: 8838
金钱: 46490 两
威望: 9298 点
综合积分: 18216 分
注册时间: 2010-01-09
最后登录: 2019-07-16
4楼  发表于: 2012-03-15 09:56
210的LCD驱动是32 bit
2440的是16bit (565)
不知道与此是否有关
新手如何向我们反馈有效的信息,以便解决问题,见此贴:
http://www.arm9home.net/read.php?tid-14431.html

[注]: 此处签名链接仅为指引方向,而非解答问题本身.
级别: 新手上路
UID: 64072
精华: 0
发帖: 10
金钱: 50 两
威望: 10 点
综合积分: 20 分
注册时间: 2012-02-29
最后登录: 2012-04-05
5楼  发表于: 2012-03-15 17:58
在终端下用命令 fbset
得到
mode "800x480-0"
        # D: 0.032 MHz, H: 0.034 kHz, V: 0.065 Hz
        geometry 800 480 800 960 32
        timings 31599750 80 36 22 15 10 8
        accel false
        rgba 8/16,8/8,8/0,8/24
endmode

  这些参数是什么意思
级别: 新手上路
UID: 64072
精华: 0
发帖: 10
金钱: 50 两
威望: 10 点
综合积分: 20 分
注册时间: 2012-02-29
最后登录: 2012-04-05
6楼  发表于: 2012-03-15 19:51

 回 4楼(mindee) 的帖子

那我问下,16位的驱动和32位的有什么区别
自由,自强,共享,共创。
级别: 论坛版主
UID: 12573
精华: 27
发帖: 8838
金钱: 46490 两
威望: 9298 点
综合积分: 18216 分
注册时间: 2010-01-09
最后登录: 2019-07-16
7楼  发表于: 2012-03-15 20:45

 Re:回 4楼(mindee) 的帖子

引用第6楼paopaow2004于2012-03-15 19:51发表的 回 4楼(mindee) 的帖子 :
那我问下,16位的驱动和32位的有什么区别


32bit驱动可以把支持888模式的LCD色彩充分发挥起来,16bit则不能
新手如何向我们反馈有效的信息,以便解决问题,见此贴:
http://www.arm9home.net/read.php?tid-14431.html

[注]: 此处签名链接仅为指引方向,而非解答问题本身.
*無鈳取玳
级别: 论坛版主
UID: 27
精华: 12
发帖: 5398
金钱: 40120 两
威望: 17929 点
综合积分: 11036 分
注册时间: 2008-01-16
最后登录: 2014-11-22
8楼  发表于: 2012-03-15 21:06
引用第5楼paopaow2004于2012-03-15 17:58发表的  :
在终端下用命令 fbset
得到
mode "800x480-0"
        # D: 0.032 MHz, H: 0.034 kHz, V: 0.065 Hz
        geometry 800 480 800 960 32
.......

通常来说,framebuffer的mode信息是这样的:

       mode
              geometry <xres> <yres> <vxres> <vyres> <depth>
              timings <pixclock> <left> <right> <upper> <lower> <hslen> <vslen>
              options <value>
              rgba <red,green,blue,alpha>
       endmode

更多的这方面的信息参考"man fbset"和"man 5 fb.modes"的输出
"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: 49157
精华: 0
发帖: 3
金钱: 15 两
威望: 3 点
综合积分: 6 分
注册时间: 2011-06-08
最后登录: 2012-05-23
9楼  发表于: 2012-05-09 09:52
我移植了ffmpeg到mini2440,但是在板子上运行就停在这里了,不知道什么解决了

ffmpeg version 0.10.3 Copyright (c) 2000-2012 the FFmpeg developers
  built on May  8 2012 17:52:58 with gcc 4.4.3
  configuration: --enable-cross-compile --target-os=linux --cross-prefix=arm-lin
ux- --cc=arm-linux-gcc --enable-shared --arch=armv6 --enable-gpl --enable-libx26
4 --prefix=/opt/webcam/ffmpeg --extra-cflags=-I/opt/webcam/ffmpeg/include --extr
a-ldflags=-L/opt/webcam/ffmpeg/lib/
  libavutil      51. 35.100 / 51. 35.100
  libavcodec     53. 61.100 / 53. 61.100
  libavformat    53. 32.100 / 53. 32.100
  libavdevice    53.  4.100 / 53.  4.100
  libavfilter     2. 61.100 /  2. 61.100
  libswscale      2.  1.100 /  2.  1.100
  libswresample   0.  6.100 /  0.  6.100
  libpostproc    52.  0.100 / 52.  0.100