diff options
author | Johns <johns98@gmx.net> | 2012-02-13 14:13:24 +0100 |
---|---|---|
committer | Johns <johns98@gmx.net> | 2012-02-13 14:13:24 +0100 |
commit | a98a4adc7eb3542ef246b10381863ae386d069a1 (patch) | |
tree | de753e15a71c942f2599f326cb0faebf5ba57916 | |
parent | f872f54e2a1429402ae1ba6768c2169443a81272 (diff) | |
download | vdr-plugin-softhddevice-a98a4adc7eb3542ef246b10381863ae386d069a1.tar.gz vdr-plugin-softhddevice-a98a4adc7eb3542ef246b10381863ae386d069a1.tar.bz2 |
Studio levels could be configured in setup menu.
-rw-r--r-- | ChangeLog | 1 | ||||
-rw-r--r-- | Todo | 8 | ||||
-rw-r--r-- | softhddevice.cpp | 11 | ||||
-rw-r--r-- | video.c | 15 | ||||
-rw-r--r-- | video.h | 3 |
5 files changed, 28 insertions, 10 deletions
@@ -2,6 +2,7 @@ User johns Date: Release Version 0.4.7 + VDPAU: Studio levels could be configured in the setup menu. Window size defaults to fullscreen, if no geometry is given. User m.Rcu @@ -24,7 +24,7 @@ missing: suspend output / energie saver: stop and restart X11 suspend plugin didn't restore full-screen (is this wanted?) Option deinterlace off / deinterlace force! - ColorSpace and StudioLevels aren't configurable with the gui. + ColorSpace aren't configurable with the gui. crash: AudioPlayHandlerThread -> pthread_cond_wait @@ -37,7 +37,6 @@ video: hard channel switch OSD can only be shown after some stream could be shown yaepghd changed position is lost on channel switch - use x11 screen size without geometry configuration pause (live tv) has sometime problems with SAT1 HD Pro7 HD vdpau: @@ -81,7 +80,6 @@ audio: Make alsa thread/polled and oss thread/polled output module runtime selectable. software volume support (could be done with asound.conf) - add pause support for replay pause Mute should do a real mute and not only set volume to zero. Starting suspended and muted, didn't register the mute. @@ -98,8 +96,6 @@ audio/oss: HDMI/SPDIF Passthrough: only AC-3 written - Channels are wrong setup, if changing setting during operation. - support oss pass-through playback of recording pause is not reset, when replay exit @@ -127,4 +123,4 @@ future features (not planed for 1.0 - 1.5) pip support save and use auto-crop with channel zapping - upmix stereo to AC-3 + upmix stereo to AC-3 (supported by alsa plugin) diff --git a/softhddevice.cpp b/softhddevice.cpp index a579bd3..783bec4 100644 --- a/softhddevice.cpp +++ b/softhddevice.cpp @@ -62,6 +62,7 @@ static char ConfigMakePrimary; ///< config primary wanted static char ConfigHideMainMenuEntry; ///< config hide main menu entry static int ConfigVideoSkipLines; ///< config skip lines top/bottom +static int ConfigVideoStudioLevels; ///< config use studio levels /// config deinterlace static int ConfigVideoDeinterlace[RESOLUTIONS]; @@ -384,6 +385,7 @@ class cMenuSetupSoft:public cMenuSetupPage int MakePrimary; int HideMainMenuEntry; int SkipLines; + int StudioLevels; int Scaling[RESOLUTIONS]; int Deinterlace[RESOLUTIONS]; int SkipChromaDeinterlace[RESOLUTIONS]; @@ -453,6 +455,9 @@ cMenuSetupSoft::cMenuSetupSoft(void) SkipLines = ConfigVideoSkipLines; Add(new cMenuEditIntItem(tr("Skip lines top+bot (pixel)"), &SkipLines, 0, 64)); + StudioLevels = ConfigVideoStudioLevels; + Add(new cMenuEditBoolItem(tr("Use studio levels (vdpau only)"), + &StudioLevels, trVDR("no"), trVDR("yes"))); for (i = 0; i < RESOLUTIONS; ++i) { Add(SeparatorItem(resolution[i])); @@ -519,6 +524,8 @@ void cMenuSetupSoft::Store(void) SetupStore("SkipLines", ConfigVideoSkipLines = SkipLines); VideoSetSkipLines(ConfigVideoSkipLines); + SetupStore("StudioLevels", ConfigVideoStudioLevels = StudioLevels); + VideoSetStudioLevels(ConfigVideoStudioLevels); for (i = 0; i < RESOLUTIONS; ++i) { char buf[128]; @@ -1259,6 +1266,10 @@ bool cPluginSoftHdDevice::SetupParse(const char *name, const char *value) VideoSetSkipLines(ConfigVideoSkipLines = atoi(value)); return true; } + if (!strcmp(name, "StudioLevels")) { + VideoSetStudioLevels(ConfigVideoStudioLevels = atoi(value)); + return true; + } for (i = 0; i < RESOLUTIONS; ++i) { char buf[128]; @@ -283,6 +283,7 @@ static char VideoSurfaceModesChanged; ///< flag surface modes changed static const char VideoTransparentOsd = 1; static int VideoSkipLines; ///< skip video lines top/bottom +static char VideoStudioLevels; ///< flag use studio levels /// Default deinterlace mode. static VideoDeinterlaceModes VideoDeinterlace[VideoResolutionMax]; @@ -308,9 +309,6 @@ static const VideoColorSpace VideoColorSpaces[VideoResolutionMax] = { VideoColorSpaceBt709 }; - /// Flag use studio levels -static char VideoStudioLevels; - /// Default scaling mode static VideoScalingModes VideoScaling[VideoResolutionMax]; @@ -9109,6 +9107,16 @@ void VideoSetSkipLines(int lines) } /// +/// Set studio levels. +/// +/// @param onoff flag on/off +/// +void VideoSetStudioLevels(int onoff) +{ + VideoStudioLevels = onoff; +} + +/// /// Set audio delay. /// /// @param ms delay in ms @@ -9261,7 +9269,6 @@ void VideoInit(const char *display_name) if (getenv("NO_HW")) { VideoHardwareDecoder = 0; } - VideoStudioLevels = 0; if (getenv("STUDIO_LEVELS")) { VideoStudioLevels = 1; } @@ -104,6 +104,9 @@ extern void VideoSetSharpen(int[]); /// Set skip lines. extern void VideoSetSkipLines(int); + /// Set studio levels. +extern void VideoSetStudioLevels(int); + /// Set audio delay. extern void VideoSetAudioDelay(int); |