This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

dm368,DMAI,decode的时候如何快进并截图?

Other Parts Discussed in Thread: TVP5146

TI专家,你们好,向你们请教一个问题,谢谢了!

我的开发环境:

   硬件:dm368

   软件:codec_engin_2_26_02_11

               dmai_2_20_00_15

系统概述:

   用QT做了一个界面,调用经过修改的dvsdk-demos_4_02_00_01里面的encode、decode示例程序。

   通过-k选项,QT可以给encode、decode传递命令。

   encode将tvp5146采集到的视频显示在lcd上面,同时存储在sd card中。

   decode将存储在sd card中的264文件显示在lcd上面。

   这个程序之前是别人再弄,我现在想将他改进一下。

改进内容如下:

1:decode的时候增加快进功能。

我的思路:在loader.c工作的时候如果遇到快进指令,如果快进5s,就连续读取视频帧,但不送给encode去解码,不管P帧,在读取完5个I帧之后再送给encode去解码。

我的问题:我的思路是否正确?dmai是否已经提供了这样的功能调用,调用是什么?该有什么库集成了这个样的功能?

2:decode的时候,在QT界面增加一个能够拖动的进度条。

我的思路:如果用户拖动进度条,算出比例,比如是50%,那我就从文件50%地方开始读取送给decode。

我的问题:我的思路是否正确?dmai是否已经提供了这样的功能调用,调用是什么?该有什么库集成了这个样的功能?

3:decode的时候增加截屏功能。

我的思路:在decode的时候进行截屏操作,我知道loader负责读取sd card中的视频文件,送给video.c解码之后通过display.c送去显示,各个线程通过管道式的Fifo来传递buffer。我的思路是在传递buffer的过程中将视频帧的buffer保存下来,然后保存为bmp格式。

我的问题:如何知道各个buffer里面的数据是什么数据,他们的格式是什么样的,我怎么才能将他们保存为bmp格式的文件?

4:get a buffer to encode to from the writer thread,在程序里面看到这样的注释。

我的问题:在writer线程里面得到一个buffer送到encode?这个to ... to from怎么理解呢?


谢谢!

x 出现错误。请重试或与管理员联系。