diff options
author | Christian Gmeiner <christian.gmeiner@gmail.com> | 2009-10-16 16:20:36 +0200 |
---|---|---|
committer | Christian Gmeiner <christian.gmeiner@gmail.com> | 2009-10-16 16:20:36 +0200 |
commit | c06dcccd52a9f37f965d3672b7daa07a6cfded26 (patch) | |
tree | 955da0571feafbbc7c2859203a7b426bad470280 | |
parent | 5ae90e8bc84404e62a2463b4c8f949cae467c1e5 (diff) | |
download | vdr-plugin-dxr3-c06dcccd52a9f37f965d3672b7daa07a6cfded26.tar.gz vdr-plugin-dxr3-c06dcccd52a9f37f965d3672b7daa07a6cfded26.tar.bz2 |
add a basic stuff for StillPicutre in cDxr3Device
-rw-r--r-- | dxr3device.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/dxr3device.c b/dxr3device.c index 4cc89b2..309fb16 100644 --- a/dxr3device.c +++ b/dxr3device.c @@ -156,7 +156,21 @@ void cDxr3Device::Mute() //! displays the given I-frame as a still picture. void cDxr3Device::StillPicture(const uchar *Data, int Length) { + // clear used buffers of output threads m_DemuxDevice.StillPicture(); + + // we need to check if Data points to a pes + // frame or to non-pes data. This could be the + // case for the radio-Plugin, which points to an + // elementary stream. + cDxr3PesFrame frame; + + if (frame.encode(Data, Length)) { + cDxr3Interface::instance()->PlayVideoFrame(&frame); + + } else { + // TODO + } } // ================================== |