[mythtv-users] video frame data

Simon Tsai simon_tsai at yahoo.com
Fri Mar 6 23:12:27 UTC 2009


Hi Robert,

We have Radeon 3650 Linux driver version 9.2. I'm not sure it decode mpeg2 in hardware or go thru mythtv to do software decode for video portion.
I switched to use Hauppauge WinTV-HVR-950. It supports mpeg2, does it mean Hauppauge decode the mpeg2 video?

Questions;
1. need decode video by software 
Which functions read video source data, decode mpeg2 (?) and write to video frame buffer?
Can we know the video frame data is complete or partial corrupt? Which functions doing this?

2. If hardware decode the video data, how mythtv work? Which functions read the video decode data from video source? 
Can we know the video frame data is complete or partial corrupt? 
Which functions doing this?
Can we find this information from NuppelVideoPlayer class?


Thanks,

simon


--- On Fri, 3/6/09, Robert McNamara <robert.mcnamara at gmail.com> wrote:

> From: Robert McNamara <robert.mcnamara at gmail.com>
> Subject: Re: [mythtv-users] video frame data
> To: simon_tsai at yahoo.com, "Discussion about mythtv" <mythtv-users at mythtv.org>
> Date: Friday, March 6, 2009, 12:34 PM
> On Fri, Mar 6, 2009 at 12:16 PM, Simon Tsai
> <simon_tsai at yahoo.com> wrote:
> >
> > I have a system with ATI Radem 3xxx graphic chip, it
> can decode
> > mpeg2.
> 
> Not in Linux it can't.  There's not any currently
> working hardware
> acceleration for ATI card in Linux.  That may change soon,
> but not
> yet.  Even when UVD (ATI's hardware acceleration)
> becomes available in
> Linux, it looks like it will be 4xxx-series cards or better
> only.
> 
> When we use antenna to receive TV signal
> > and go through ATSC converter to convert signal to
> mpeg2,
> > then go thru ATI graphic chip to display. I saw frame
> data corruption because the antenna signal quality.
> 
> Improve your signal quality by getting a better antenna,
> fixing your
> alignment, or amplifying the signal.
> 
> >
> > Questions:
> > 1. Which functions in mythtv library (cpp files) to
> receive hardware decoder frame data?
> 
> There is no code in MythTV relevant to ATI hardware decode
> (because
> ATI hardware decode does not exist in linux yet). 
> What's more, for
> the hardware offload stuff that *does* exist (for
> nVidia's VDPAU),
> there is no functionality to read the frame data back out
> of the GPU.
> Patches welcome!
> 
> > Is RingBuffer class read the frame data?
> > 2. Is any way to detect the frame data is incomplete
> or corrupt, such as from total bytes in the frame?
> > Which function can do this?
> 
> It's not possible to determine that a full frame is
> corrupt or not
> without decoding the signal-- for obvious reasons,
> that's not a good
> idea while trying to capture Digital Television (why give
> up the
> status quo, where capture of DTV is a fractional amount of
> CPU?).
> libavcodec/libavformat throw errors when they're not
> able to decode
> something during during commflag/transcode/playback.
> 
> In short, the solution to broken signal is not to throw out
> data, but
> to fix the broken signal.
> 
> Robert


      


More information about the mythtv-users mailing list