summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Reufer <thomas@reufer.ch>2015-01-20 20:17:47 +0100
committerThomas Reufer <thomas@reufer.ch>2015-01-20 20:44:49 +0100
commit51cfb6c814942220d1ca6c017f1bb090ef2ab81d (patch)
tree7a47941c36fd342e00d02608625debfd6f488e56
parentb2ddf088f98c9ff855f9c3c06d8d842106118421 (diff)
downloadvdr-plugin-rpihddevice-51cfb6c814942220d1ca6c017f1bb090ef2ab81d.tar.gz
vdr-plugin-rpihddevice-51cfb6c814942220d1ca6c017f1bb090ef2ab81d.tar.bz2
make use of video decoder's new SEI parsing features, requires firmware from 2015/01/18 or newer
-rw-r--r--HISTORY3
-rw-r--r--README1
-rw-r--r--omx.c8
3 files changed, 9 insertions, 3 deletions
diff --git a/HISTORY b/HISTORY
index 2b2dc55..16048ad 100644
--- a/HISTORY
+++ b/HISTORY
@@ -8,6 +8,9 @@ VDR Plugin 'rpihddevice' Revision History
- updated Finnish translations and fixed tr() usage (thanks to Rolf Ahrenberg)
- use fast deinterlacer for HD streams
- added high level OSD with GPU support
+- fixed:
+ - start H.264 video with valid frame only, requires firmware from 2015/01/18
+ or newer
2014-11-02: Version 0.0.10
--------------------------
diff --git a/README b/README
index 6502678..ad920e3 100644
--- a/README
+++ b/README
@@ -35,6 +35,7 @@ Requirements:
- freetype2 for GPU accelerated text drawing
- valid MPEG-2 license when watching MPEG-2 streams
- Raspberry Pi userland libraries: https://github.com/raspberrypi/userland
+ - Raspberry Pi firmware from 2015/01/18 or newer
Install:
diff --git a/omx.c b/omx.c
index 54fc16e..354ed93 100644
--- a/omx.c
+++ b/omx.c
@@ -245,11 +245,12 @@ void cOmx::HandlePortSettingsChanged(unsigned int portId)
// workaround for progressive streams detected as interlaced video by
// the decoder due to missing SEI parsing
// see: https://github.com/raspberrypi/firmware/issues/283
+ // update: with FW from 2015/01/18 this is not necessary anymore
if (m_videoFormat.interlaced && m_videoFormat.frameRate >= 50)
{
- DLOG("%di looks implausible, manually overriding interlaced flag",
+ DLOG("%di looks implausible, you should use a recent firmware...",
m_videoFormat.frameRate * 2);
- m_videoFormat.interlaced = false;
+ //m_videoFormat.interlaced = false;
}
if (m_videoFormat.interlaced)
@@ -918,7 +919,8 @@ int cOmx::SetVideoCodec(cVideoCodec::eCodec codec)
ELOG("failed to set video decoder port parameters!");
// start with valid frames only if codec is MPEG2
- SetVideoErrorConcealment(codec == cVideoCodec::eMPEG2);
+ // update: with FW from 2015/01/18 this is not necessary anymore
+ SetVideoErrorConcealment(true /*codec == cVideoCodec::eMPEG2*/);
SetVideoDecoderExtraBuffers(3);
if (ilclient_enable_port_buffers(m_comp[eVideoDecoder], 130, NULL, NULL, NULL) != 0)