diff options
Diffstat (limited to 'softhddevice.cpp')
-rw-r--r-- | softhddevice.cpp | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/softhddevice.cpp b/softhddevice.cpp index 962d8d1..5b9c1e7 100644 --- a/softhddevice.cpp +++ b/softhddevice.cpp @@ -38,6 +38,7 @@ extern "C" #include "video.h" extern void AudioPoller(void); extern void CodecSetAudioPassthrough(int); + extern void CodecSetAudioDownmix(int); } ////////////////////////////////////////////////////////////////////////////// @@ -84,6 +85,7 @@ static int ConfigVideoScaling[RESOLUTIONS]; static int ConfigVideoAudioDelay; ///< config audio delay static int ConfigAudioPassthrough; ///< config audio pass-through +static int ConfigAudioDownmix; ///< config audio downmix static int ConfigAutoCropInterval; ///< auto crop detection interval static int ConfigAutoCropDelay; ///< auto crop detection delay @@ -414,6 +416,7 @@ class cMenuSetupSoft:public cMenuSetupPage int Sharpen[RESOLUTIONS]; int AudioDelay; int AudioPassthrough; + int AudioDownmix; int AutoCropInterval; int AutoCropDelay; int AutoCropTolerance; @@ -511,6 +514,9 @@ cMenuSetupSoft::cMenuSetupSoft(void) AudioPassthrough = ConfigAudioPassthrough; Add(new cMenuEditStraItem(tr("Audio pass-through"), &AudioPassthrough, 2, passthrough)); + AudioDownmix = ConfigAudioDownmix; + Add(new cMenuEditBoolItem(tr("Enable AC-3 downmix"), &AudioDownmix, + trVDR("no"), trVDR("yes"))); // // auto-crop // @@ -581,6 +587,8 @@ void cMenuSetupSoft::Store(void) VideoSetAudioDelay(ConfigVideoAudioDelay); SetupStore("AudioPassthrough", ConfigAudioPassthrough = AudioPassthrough); CodecSetAudioPassthrough(ConfigAudioPassthrough); + SetupStore("AudioDownmix", ConfigAudioDownmix = AudioDownmix); + CodecSetAudioDownmix(ConfigAudioDownmix); SetupStore("AutoCrop.Interval", ConfigAutoCropInterval = AutoCropInterval); SetupStore("AutoCrop.Delay", ConfigAutoCropDelay = AutoCropDelay); @@ -1527,6 +1535,10 @@ bool cPluginSoftHdDevice::SetupParse(const char *name, const char *value) CodecSetAudioPassthrough(ConfigAudioPassthrough = atoi(value)); return true; } + if (!strcmp(name, "AudioDownmix")) { + CodecSetAudioDownmix(ConfigAudioDownmix = atoi(value)); + return true; + } if (!strcmp(name, "AutoCrop.Interval")) { VideoSetAutoCrop(ConfigAutoCropInterval = |