diff options
-rw-r--r-- | HISTORY | 1 | ||||
-rw-r--r-- | omx.c | 6 | ||||
-rw-r--r-- | po/de_DE.po | 13 | ||||
-rw-r--r-- | po/fi_FI.po | 11 | ||||
-rw-r--r-- | po/fr_FR.po | 11 | ||||
-rw-r--r-- | po/hu_HU.po | 11 | ||||
-rw-r--r-- | po/it_IT.po | 11 | ||||
-rw-r--r-- | setup.c | 13 | ||||
-rw-r--r-- | setup.h | 13 |
9 files changed, 80 insertions, 10 deletions
@@ -2,6 +2,7 @@ VDR Plugin 'rpihddevice' Revision History ----------------------------------------- - new: + - make use of advanced deinterlacer configurable - add debug option to log number of executed OpenVG commands and flushes 2016-04-23: Version 1.0.3 @@ -21,6 +21,7 @@ #include "omx.h" #include "display.h" +#include "setup.h" #include <vdr/tools.h> #include <vdr/thread.h> @@ -362,8 +363,9 @@ void cOmx::HandlePortSettingsChanged(unsigned int portId) if (cRpiDisplay::IsProgressive() && m_videoFrameFormat.Interlaced()) { - bool fastDeinterlace = portdef.format.video.nFrameWidth * - portdef.format.video.nFrameHeight > 576 * 720; + bool fastDeinterlace = !cRpiSetup::UseAdvancedDeinterlacer( + portdef.format.video.nFrameWidth, + portdef.format.video.nFrameHeight); filterparam.nNumParams = 4; filterparam.nParams[0] = 3; diff --git a/po/de_DE.po b/po/de_DE.po index 3c37270..a221585 100644 --- a/po/de_DE.po +++ b/po/de_DE.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: vdr-rpihddevice 1.0.0\n" "Report-Msgid-Bugs-To: <see README>\n" -"POT-Creation-Date: 2015-03-14 19:22+0100\n" -"PO-Revision-Date: 2015-10-12 09:33+0100\n" +"POT-Creation-Date: 2016-04-27 15:09+0200\n" +"PO-Revision-Date: 2016-04-27 15:11+0100\n" "Last-Translator: Thomas Reufer <thomas@reufer.ch>\n" "Language-Team: German\n" "Language: de\n" @@ -54,12 +54,21 @@ msgstr "Voreinstellung" msgid "follow video" msgstr "wie Video" +msgid "for SD video only" +msgstr "nur für SD-Video" + +msgid "always" +msgstr "immer" + msgid "Resolution" msgstr "Auflösung" msgid "Frame Rate" msgstr "Bildwiederholrate" +msgid "Use Advanced Deinterlacer" +msgstr "Benutze erweiterten Deinterlacer" + msgid "Video Framing" msgstr "Seitenverhältnis-Anpassung" diff --git a/po/fi_FI.po b/po/fi_FI.po index 2b2258f..2dcff96 100644 --- a/po/fi_FI.po +++ b/po/fi_FI.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: vdr-rpihddevice 0.0.8\n" "Report-Msgid-Bugs-To: <see README>\n" -"POT-Creation-Date: 2015-03-14 19:22+0100\n" +"POT-Creation-Date: 2016-04-27 15:09+0200\n" "PO-Revision-Date: 2014-03-22 03:22+0200\n" "Last-Translator: Rolf Ahrenberg\n" "Language-Team: Finnish <vdr@linuxtv.org>\n" @@ -52,12 +52,21 @@ msgstr "oletus" msgid "follow video" msgstr "lähetteen mukaan" +msgid "for SD video only" +msgstr "" + +msgid "always" +msgstr "" + msgid "Resolution" msgstr "Resoluutio" msgid "Frame Rate" msgstr "Ruudunpäivitys" +msgid "Use Advanced Deinterlacer" +msgstr "" + msgid "Video Framing" msgstr "Kuvan rajaustapa" diff --git a/po/fr_FR.po b/po/fr_FR.po index dfb92b9..a0dd2cd 100644 --- a/po/fr_FR.po +++ b/po/fr_FR.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: vdr-rpihddevice 1.0.0\n" "Report-Msgid-Bugs-To: <see README>\n" -"POT-Creation-Date: 2015-10-14 17:58+0200\n" +"POT-Creation-Date: 2016-04-27 15:09+0200\n" "PO-Revision-Date: 2015-10-15 06:56+0100\n" "Last-Translator: Cyril Jaquier <cyril.jaquier@jaqpot.net>\n" "Language-Team: French\n" @@ -53,12 +53,21 @@ msgstr "par défaut" msgid "follow video" msgstr "comme l'original" +msgid "for SD video only" +msgstr "" + +msgid "always" +msgstr "" + msgid "Resolution" msgstr "Résolution" msgid "Frame Rate" msgstr "Cadence d'images" +msgid "Use Advanced Deinterlacer" +msgstr "" + msgid "Video Framing" msgstr "Aspect de l'image" diff --git a/po/hu_HU.po b/po/hu_HU.po index 7206b02..81b356d 100644 --- a/po/hu_HU.po +++ b/po/hu_HU.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: vdr-rpihddevice 1.0.0\n" "Report-Msgid-Bugs-To: <see README>\n" -"POT-Creation-Date: 2015-03-14 19:22+0100\n" +"POT-Creation-Date: 2016-04-27 15:09+0200\n" "PO-Revision-Date: 2015-10-16 13:49+0200\n" "Last-Translator: Füley István <ifuley at tigercomp dot ro>\n" "Language-Team: Hungarian\n" @@ -54,12 +54,21 @@ msgstr "alapértelmezett" msgid "follow video" msgstr "video szerinti" +msgid "for SD video only" +msgstr "" + +msgid "always" +msgstr "" + msgid "Resolution" msgstr "Felbontás" msgid "Frame Rate" msgstr "Képfrissítés" +msgid "Use Advanced Deinterlacer" +msgstr "" + msgid "Video Framing" msgstr "Video képarány" diff --git a/po/it_IT.po b/po/it_IT.po index c21fd2e..3b35087 100644 --- a/po/it_IT.po +++ b/po/it_IT.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: vdr-rpihddevice 1.0.0\n" "Report-Msgid-Bugs-To: <see README>\n" -"POT-Creation-Date: 2015-10-14 17:58+0200\n" +"POT-Creation-Date: 2016-04-27 15:09+0200\n" "PO-Revision-Date: 2015-10-15 07:01+0100\n" "Last-Translator: Gerlando Falauto <gerlando.falauto@gmail.com>\n" "Language-Team: Italian\n" @@ -53,12 +53,21 @@ msgstr "default" msgid "follow video" msgstr "come nel video" +msgid "for SD video only" +msgstr "" + +msgid "always" +msgstr "" + msgid "Resolution" msgstr "Risoluzione" msgid "Frame Rate" msgstr "Frequenza fotogrammi" +msgid "Use Advanced Deinterlacer" +msgstr "" + msgid "Video Framing" msgstr "Rapporto d'aspetto" @@ -74,6 +74,10 @@ public: m_videoFrameRate[7] = "60i"; m_videoFrameRate[8] = "60p"; + m_useAdvancedDeinterlacer[0] = trVDR("no"); + m_useAdvancedDeinterlacer[1] = tr("for SD video only"); + m_useAdvancedDeinterlacer[2] = tr("always"); + Setup(); } @@ -101,6 +105,7 @@ protected: SetupStore("VideoFraming", m_video.framing); SetupStore("Resolution", m_video.resolution); SetupStore("FrameRate", m_video.frameRate); + SetupStore("AdvancedDeinterlacer", m_video.advancedDeinterlacer); SetupStore("AcceleratedOsd", m_osd.accelerated); @@ -122,6 +127,11 @@ private: Add(new cMenuEditStraItem( tr("Frame Rate"), &m_video.frameRate, 9, m_videoFrameRate)); } + if (cRpiDisplay::IsProgressive()) + Add(new cMenuEditStraItem( + tr("Use Advanced Deinterlacer"), + &m_video.advancedDeinterlacer, 3, + m_useAdvancedDeinterlacer)); Add(new cMenuEditStraItem( tr("Video Framing"), &m_video.framing, 3, m_videoFraming)); @@ -151,6 +161,7 @@ private: const char *m_videoFraming[3]; const char *m_videoResolution[6]; const char *m_videoFrameRate[9]; + const char *m_useAdvancedDeinterlacer[3]; }; /* ------------------------------------------------------------------------- */ @@ -310,6 +321,8 @@ bool cRpiSetup::Parse(const char *name, const char *value) m_video.resolution = atoi(value); else if (!strcasecmp(name, "FrameRate")) m_video.frameRate = atoi(value); + else if (!strcasecmp(name, "AdvancedDeinterlacer")) + m_video.advancedDeinterlacer = atoi(value); else if (!strcasecmp(name, "AcceleratedOsd")) m_osd.accelerated = atoi(value); else return false; @@ -52,15 +52,18 @@ public: VideoParameters() : framing(0), resolution(0), - frameRate(0) { } + frameRate(0), + advancedDeinterlacer(1){ } int framing; int resolution; int frameRate; + int advancedDeinterlacer; bool operator!=(const VideoParameters& a) { return (a.framing != framing) || (a.resolution != resolution) || - (a.frameRate != frameRate); + (a.frameRate != frameRate) || + (a.advancedDeinterlacer != advancedDeinterlacer); } }; @@ -126,6 +129,12 @@ public: cVideoFrameRate::eDontChange; } + static bool UseAdvancedDeinterlacer(int width, int height) { + return !GetInstance()->m_video.advancedDeinterlacer ? false : + GetInstance()->m_video.advancedDeinterlacer == 1 && + (width * height <= 576 * 720) ? true : true; + } + static bool IsAudioFormatSupported(cAudioCodec::eCodec codec, int channels, int samplingRate); |