Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

Merge pull request #4280 from jmarshallnz/settings_cleanup

Settings cleanup
  • Loading branch information...
commit d5fa13898cc5060a5d0adf1e7fa6ad42032b573c 2 parents b8512bf + 3045ef9
Trent Nelson authored
View
88 language/English/strings.po
@@ -5992,12 +5992,14 @@ msgctxt "#13438"
msgid "Allow hardware acceleration (amcodec)"
msgstr ""
+#: system/settings/settings.xml
msgctxt "#13439"
msgid "Allow hardware acceleration (MediaCodec)"
msgstr ""
+#: system/settings/settings.xml
msgctxt "#13440"
-msgid "Allow frame-multi-threaded decoding"
+msgid "Allow multi threaded software decoding"
msgstr ""
#: system/settings/settings.xml
@@ -6066,7 +6068,25 @@ msgctxt "#13452"
msgid "Enable this option to use hardware acceleration for VC-1 based codecs. If disabled the CPU will be used instead. Especially VC-1 Interlaced fails hard on Intel hardware."
msgstr ""
-#empty strings from id 13453 to 13499
+#. Label for a setting to configure the video decoding method
+#: system/settings/settings.xml
+msgctxt "#13454"
+msgid "Decoding method"
+msgstr ""
+
+#. Option for video related setting #13454: Decoding method
+#: system/settings/settings.xml
+msgctxt "#13455"
+msgid "Software"
+msgstr ""
+
+#. Option for video related setting #13454: Decoding method
+#: system/settings/settings.xml
+msgctxt "#13456"
+msgid "Hardware accelerated"
+msgstr ""
+
+#empty strings from id 13457 to 13499
#: system/settings/settings.xml
msgctxt "#13500"
@@ -6664,7 +6684,13 @@ msgctxt "#14100"
msgid "Stop ripping CD"
msgstr ""
-#empty strings from id 14101 to 15011
+#. Name of a settings category related to video playback
+#: system/settings/settings.xml
+msgctxt "#14101"
+msgid "Acceleration"
+msgstr ""
+
+#empty strings from id 14102 to 15011
#: xbmc/video/VideoDatabase.cpp
msgctxt "#15012"
@@ -10182,11 +10208,6 @@ msgctxt "#20381"
msgid "Specials"
msgstr ""
-#: system/settings/settings.xml
-msgctxt "#20382"
-msgid "Automatically grab season thumbs"
-msgstr ""
-
msgctxt "#20383"
msgid "Selected folder contains a single video"
msgstr ""
@@ -11121,18 +11142,7 @@ msgctxt "#21469"
msgid "%s to %s"
msgstr ""
-#empty strings from id 21470 to 21599
-
-#: xbmc/cores/dvdplayer/DVDPlayer.cpp
-msgctxt "#21600"
-msgid "Prefer external subtitles"
-msgstr ""
-
-#. Description of setting "Video -> Subtitles -> Prefer external subtitles" with label #21600
-#: system/settings/settings.xml
-msgctxt "#21601"
-msgid "Prefer external subtitles to internal ones."
-msgstr ""
+#empty strings from id 21470 to 21601
#: xbmc/Util.cpp
msgctxt "#21602"
@@ -12152,7 +12162,7 @@ msgstr ""
#. Description of setting "Videos -> Subtitles -> Save subtitles to movie folder" with label #24115
#: system/settings/settings.xml
msgctxt "#24106"
-msgid "If not saved to movie folder subtitles will be downloaded to custom subtitle folder."
+msgid "Specify where downloaded subtitles should be saved, the same location as the video or a custom location."
msgstr ""
#: xbmc/dialogs/GUIDialogSubtitles.cpp
@@ -12198,7 +12208,7 @@ msgstr ""
#: system/settings/settings.xml
msgctxt "#24115"
-msgid "Save subtitles to movie folder"
+msgid "Subtitle storage location"
msgstr ""
#: system/settings/settings.xml
@@ -12245,7 +12255,17 @@ msgctxt "#24123"
msgid "Pause the current video while searching for subtitles and resume once the subtitle is available."
msgstr ""
-#empty strings from id 24124 to 24999
+#: system/settings/settings.xml
+msgctxt "#24124"
+msgid "Next to the video"
+msgstr ""
+
+#: system/settings/settings.xml
+msgctxt "#24125"
+msgid "Custom location"
+msgstr ""
+
+#empty strings from id 24126 to 24999
msgctxt "#25000"
msgid "Notifications"
@@ -13491,11 +13511,7 @@ msgctxt "#36141"
msgid "Show plot information for unwatched media in the Video Library."
msgstr ""
-#. Description of setting "Videos -> Library -> Automatically grab season thumbs" with label #20382
-#: system/settings/settings.xml
-msgctxt "#36142"
-msgid "Automatically grab season thumbs when scanning media."
-msgstr ""
+# empty string with id 36142
#. Description of setting "Videos -> Library -> Download actor thumbnails when adding to library" with label #20402
#: system/settings/settings.xml
@@ -15111,7 +15127,7 @@ msgstr ""
#. Description of setting "Videos -> Playback -> Allow frame-multi-threaded decoding" with label #13440
#: system/settings/settings.xml
msgctxt "#36423"
-msgid "Use frame-multi-threaded decoding instead of hardware accelerated decoding (less reliable than default single thread mode)."
+msgid "Enables frame-multi-threaded software decoding (less reliable than the default single threaded mode)."
msgstr ""
#: system/settings/settings.xml
@@ -15145,7 +15161,19 @@ msgctxt "#36429"
msgid "Select this if the audio out connection only supports multichannel audio as Dolby Digital 5.1, such as an SPDIF connection. If your system supports LPCM multichannel sound via HDMI, leave this disabled."
msgstr ""
-#empty strings from id 36430 to 36499
+#. Description for setting category #14101: Video Acceleration
+#: system/settings/settings.xml
+msgctxt "#36430"
+msgid "Configure how video processing will be accelerated. This includes things like decoding and scaling."
+msgstr ""
+
+#. Description for video related setting #13454: Decoding mode
+#: system/settings/settings.xml
+msgctxt "#36431"
+msgid "Defines whether video decoding should be performed in software (requires more CPU) or with hardware acceleration where possible."
+msgstr ""
+
+#empty strings from id 36432 to 36499
#end reservation
#: system/settings/settings.xml
View
14 system/settings/android.xml
@@ -8,10 +8,13 @@
</category>
</section>
<section id="videos">
- <category id="videoplayer">
- <group id="2">
- <setting id="videoplayer.usestagefright" type="boolean" label="13436" help="36260">
+ <category id="videoacceleration">
+ <group id="3">
+ <setting id="videoplayer.usestagefright" type="boolean" parent="videoplayer.decodingmethod" label="13436" help="36260">
<requirement>HAVE_LIBSTAGEFRIGHTDECODER</requirement>
+ <dependencies>
+ <dependency type="enable" setting="videoplayer.decodingmethod" operator="is">1</dependency>
+ </dependencies>
<level>2</level>
<default>true</default>
<updates>
@@ -19,8 +22,11 @@
</updates>
<control type="toggle" />
</setting>
- <setting id="videoplayer.usemediacodec" type="boolean" label="13439" help="36544">
+ <setting id="videoplayer.usemediacodec" type="boolean" parent="videoplayer.decodingmethod" label="13439" help="36544">
<visible>HAS_MEDIACODEC</visible>
+ <dependencies>
+ <dependency type="enable" setting="videoplayer.decodingmethod" operator="is">1</dependency>
+ </dependencies>
<level>2</level>
<default>true</default>
<updates>
View
9 system/settings/darwin_ios.xml
@@ -3,9 +3,6 @@
<section id="videos">
<category id="videoplayer">
<group id="2">
- <setting id="videoplayer.hqscalers">
- <visible>false</visible>
- </setting>
<setting id="videoplayer.adjustrefreshrate">
<visible>false</visible>
</setting>
@@ -14,6 +11,12 @@
</setting>
</group>
</category>
+ <category id="videoacceleration">
+ <group id="1">
+ <setting id="videoplayer.hqscalers">
+ <visible>false</visible>
+ </setting>
+ </category>
</section>
<section id="music">
<category id="audiocds">
View
9 system/settings/darwin_osx.xml
@@ -10,9 +10,12 @@
</category>
</section>
<section id="videos">
- <category id="videoplayer">
- <group id="2">
- <setting id="videoplayer.usevda" type="boolean" label="13429" help="36160">
+ <category id="videoacceleration">
+ <group id="3">
+ <setting id="videoplayer.usevda" type="boolean" parent="videoplayer.decodingmethod" label="13429" help="36160">
+ <dependencies>
+ <dependency type="enable" setting="videoplayer.decodingmethod" operator="is">1</dependency>
+ </dependencies>
<level>2</level>
<default>true</default>
<control type="toggle" />
View
13 system/settings/rbp.xml
@@ -3,15 +3,16 @@
<section id="videos">
<category id="videoplayer">
<group id="2">
- <setting id="videoplayer.rendermethod">
- <visible>false</visible>
- </setting>
- <setting id="videoplayer.hqscalers">
- <visible>false</visible>
- </setting>
<setting id="videoplayer.synctype">
<visible>false</visible>
</setting>
+ </group>
+ </category>
+ <category id="videoacceleration">
+ <group id="1">
+ <visible>false</visible>
+ </group>
+ <group id="3">
<setting id="videoplayer.useframemtdec">
<visible>false</visible>
</setting>
View
714 system/settings/settings.xml
@@ -164,16 +164,6 @@
<control type="list" format="string" />
</setting>
</group>
- <group id="4">
- <setting id="locale.audiolanguage" type="string" label="285" help="36119">
- <level>1</level>
- <default>original</default>
- <constraints>
- <options>streamlanguages</options>
- </constraints>
- <control type="list" format="string" />
- </setting>
- </group>
</category>
<category id="filelists" label="14081" help="36121">
<group id="1">
@@ -325,14 +315,14 @@
<default>true</default>
<control type="toggle" />
</setting>
- <setting id="videolibrary.seasonthumbs" type="boolean" label="20382" help="36142">
- <level>4</level>
+ <setting id="videolibrary.actorthumbs" type="boolean" label="20402" help="36143">
+ <level>1</level>
<default>true</default>
<control type="toggle" />
</setting>
- <setting id="videolibrary.actorthumbs" type="boolean" label="20402" help="36143">
+ <setting id="myvideos.flatten" type="boolean" label="20456" help="36183">
<level>1</level>
- <default>true</default>
+ <default>false</default>
<control type="toggle" />
</setting>
<setting id="videolibrary.flattentvshows" type="integer" label="20412" help="36144">
@@ -352,6 +342,8 @@
<default>false</default>
<control type="toggle" />
</setting>
+ </group>
+ <group id="2">
<setting id="videolibrary.updateonstartup" type="boolean" label="22000" help="36146">
<level>1</level>
<default>false</default>
@@ -363,7 +355,7 @@
<control type="toggle" />
</setting>
</group>
- <group id="2">
+ <group id="3">
<setting id="videolibrary.cleanup" type="action" label="334" help="36148">
<level>2</level>
<control type="button" format="action" />
@@ -380,6 +372,14 @@
</category>
<category id="videoplayer" label="14086" help="36151">
<group id="1">
+ <setting id="locale.audiolanguage" type="string" label="285" help="36119">
+ <level>1</level>
+ <default>original</default>
+ <constraints>
+ <options>streamlanguages</options>
+ </constraints>
+ <control type="list" format="string" />
+ </setting>
<setting id="videoplayer.autoplaynextitem" type="boolean" label="13433" help="36152">
<level>1</level>
<default>false</default>
@@ -387,6 +387,129 @@
</setting>
</group>
<group id="2">
+ <setting id="videoplayer.adjustrefreshrate" type="integer" label="170" help="36164">
+ <level>2</level>
+ <default>0</default> <!-- ADJUST_REFRESHRATE_OFF -->
+ <constraints>
+ <options>
+ <option label="351">0</option> <!-- ADJUST_REFRESHRATE_OFF -->
+ <option label="36035">1</option> <!-- ADJUST_REFRESHRATE_ALWAYS -->
+ <option label="36036">2</option> <!-- ADJUST_REFRESHRATE_ON_STARTSTOP -->
+ </options>
+ </constraints>
+ <control type="spinner" format="string" />
+ </setting>
+ <setting id="videoplayer.pauseafterrefreshchange" type="integer" parent="videoplayer.adjustrefreshrate" label="13550" help="36165">
+ <level>2</level>
+ <default>0</default>
+ <constraints>
+ <options>refreshchangedelays</options>
+ </constraints>
+ <dependencies>
+ <dependency type="enable" setting="videoplayer.adjustrefreshrate" operator="!is">0</dependency> <!-- ADJUST_REFRESHRATE_OFF -->
+ </dependencies>
+ <control type="spinner" format="string" />
+ </setting>
+ <setting id="videoplayer.usedisplayasclock" type="boolean" label="13510" help="36166">
+ <level>2</level>
+ <default>false</default>
+ <control type="toggle" />
+ </setting>
+ <setting id="videoplayer.synctype" type="integer" parent="videoplayer.usedisplayasclock" label="13500" help="36167">
+ <level>2</level>
+ <default>2</default> <!-- SYNC_RESAMPLE -->
+ <constraints>
+ <options>
+ <option label="13501">0</option> <!-- SYNC_DISCON -->
+ <option label="13502">1</option> <!-- SYNC_SKIPDUP -->
+ <option label="13503">2</option> <!-- SYNC_RESAMPLE -->
+ </options>
+ </constraints>
+ <dependencies>
+ <dependency type="enable" setting="videoplayer.usedisplayasclock" operator="is">true</dependency>
+ </dependencies>
+ <control type="spinner" format="string" />
+ </setting>
+ <setting id="videoplayer.maxspeedadjust" type="number" label="13504" help="36168">
+ <level>4</level>
+ <default>5.0</default>
+ <constraints>
+ <minimum>0.0</minimum>
+ <step>0.1</step>
+ <maximum>10.0</maximum>
+ </constraints>
+ <dependencies>
+ <dependency type="enable">
+ <and>
+ <condition setting="videoplayer.usedisplayasclock" operator="is">true</condition>
+ <condition setting="videoplayer.synctype" operator="is">2</condition> <!-- SYNC_RESAMPLE -->
+ </and>
+ </dependency>
+ </dependencies>
+ <control type="spinner" format="number" />
+ </setting>
+ <setting id="videoplayer.errorinaspect" type="integer" label="22021" help="36170">
+ <level>2</level>
+ <default>0</default>
+ <constraints>
+ <minimum label="231">0</minimum>
+ <step>1</step>
+ <maximum>20</maximum>
+ </constraints>
+ <control type="spinner" format="string">
+ <formatlabel>14047</formatlabel>
+ </control>
+ </setting>
+ <setting id="videoplayer.stretch43" type="integer" label="173" help="36171">
+ <level>1</level>
+ <default>0</default> <!-- ViewModeNormal -->
+ <constraints>
+ <options>
+ <option label="630">0</option> <!-- ViewModeNormal -->
+ <option label="633">3</option> <!-- ViewModeWideZoom -->
+ <option label="634">4</option> <!-- ViewModeStretch16x9 -->
+ <option label="631">1</option> <!-- ViewModeZoom -->
+ </options>
+ </constraints>
+ <control type="spinner" format="string" />
+ </setting>
+ </group>
+ <group id="3">
+ <setting id="videoplayer.teletextenabled" type="boolean" label="23050" help="36174">
+ <level>1</level>
+ <default>true</default>
+ <control type="toggle" />
+ </setting>
+ <setting id="videoplayer.teletextscale" type="boolean" parent="videoplayer.teletextenabled" label="23055" help="36175">
+ <level>1</level>
+ <default>true</default>
+ <dependencies>
+ <dependency type="enable" setting="videoplayer.teletextenabled" operator="is">true</dependency>
+ </dependencies>
+ <control type="toggle" />
+ </setting>
+ </group>
+ <group id="4">
+ <setting id="videoplayer.stereoscopicplaybackmode" type="integer" label="36520" help="36537">
+ <level>2</level>
+ <default>0</default>
+ <constraints>
+ <options>
+ <option label="36521">0</option> <!-- ASK -->
+ <option label="36522">1</option> <!-- Preferred mode -->
+ </options>
+ </constraints>
+ <control type="spinner" format="integer" delayed="true"/>
+ </setting>
+ <setting id="videoplayer.quitstereomodeonstop" type="boolean" label="36526" help="36538">
+ <level>2</level>
+ <default>true</default>
+ <control type="toggle" />
+ </setting>
+ </group>
+ </category>
+ <category id="videoacceleration" label="14101" help="36430">
+ <group id="1">
<setting id="videoplayer.rendermethod" type="integer" label="13415" help="36153">
<level>2</level>
<default>0</default> <!-- RENDER_METHOD_AUTO -->
@@ -395,7 +518,7 @@
</constraints>
<control type="spinner" format="string" />
</setting>
- <setting id="videoplayer.hqscalers" type="integer" label="13435" help="36154">
+ <setting id="videoplayer.hqscalers" type="integer" parent="videoplayer.rendermethod" label="13435" help="36154">
<level>2</level>
<default>0</default>
<constraints>
@@ -407,7 +530,53 @@
<formatlabel>14047</formatlabel>
</control>
</setting>
- <setting id="videoplayer.useframemtdec" type="boolean" label="13440" help="36423">
+ <setting id="videoplayer.usepbo" type="boolean" parent="videoplayer.rendermethod" label="13424" help="36163">
+ <requirement>HAS_GL</requirement>
+ <dependencies>
+ <dependency type="enable" setting="videoplayer.rendermethod" operator="is">1</dependency> <!-- only supported with ARB -->
+ </dependencies>
+ <level>4</level>
+ <default>true</default>
+ <control type="toggle" />
+ </setting>
+ </group>
+ <group id="2">
+ <requirement>
+ <and>
+ <or>
+ <condition>HAS_GL</condition>
+ <condition>HAS_GLESv2</condition>
+ </or>
+ <condition>HAVE_LIBVDPAU</condition>
+ </and>
+ </requirement>
+ <setting id="videoplayer.vdpauUpscalingLevel" type="boolean" label="13121" help="36173">
+ <level>4</level>
+ <default>false</default>
+ <control type="toggle" />
+ </setting>
+ <setting id="videoplayer.vdpau_allow_xrandr" type="boolean" label="13122" help="36172">
+ <level>4</level>
+ <default>false</default>
+ <control type="toggle" />
+ </setting>
+ </group>
+ <group id="3">
+ <setting id="videoplayer.decodingmethod" type="integer" label="13454" help="36431">
+ <level>2</level>
+ <default>1</default>
+ <constraints>
+ <options>
+ <option label="13455">0</option> <!-- Software -->
+ <option label="13456">1</option> <!-- Hardware -->
+ </options>
+ </constraints>
+ <control type="spinner" format="integer" />
+ </setting>
+ <setting id="videoplayer.useframemtdec" type="boolean" parent="videoplayer.decodingmethod" label="13440" help="36423">
+ <dependencies>
+ <dependency type="enable" setting="videoplayer.decodingmethod" operator="is">0</dependency>
+ </dependencies>
<level>2</level>
<default>false</default>
<control type="toggle" />
@@ -415,7 +584,7 @@
<setting id="videoplayer.useamcodec" type="boolean" label="13438" help="36422">
<requirement>HAVE_AMCODEC</requirement>
<dependencies>
- <dependency type="enable" setting="videoplayer.useframemtdec" operator="is">false</dependency> <!-- disable when frame threading is active -->
+ <dependency type="enable" setting="videoplayer.decodingmethod" operator="is">1</dependency>
</dependencies>
<level>2</level>
<default>true</default>
@@ -427,7 +596,7 @@
<setting id="videoplayer.usevdpau" type="boolean" label="13425" help="36155">
<requirement>HAVE_LIBVDPAU</requirement>
<dependencies>
- <dependency type="enable" setting="videoplayer.useframemtdec" operator="is">false</dependency> <!-- disable when frame threading is active -->
+ <dependency type="enable" setting="videoplayer.decodingmethod" operator="is">1</dependency>
</dependencies>
<level>2</level>
<default>true</default>
@@ -441,7 +610,7 @@
<dependency type="enable">
<and>
<condition setting="videoplayer.usevdpau" operator="is">true</condition> <!-- USE VDPAU -->
- <condition setting="videoplayer.useframemtdec" operator="is">false</condition> <!-- disable when frame threading is active -->
+ <condition setting="videoplayer.decodingmethod" operator="is">1</condition>
</and>
</dependency>
</dependencies>
@@ -452,7 +621,12 @@
<level>3</level>
<default>true</default>
<dependencies>
- <dependency type="enable" setting="videoplayer.usevdpau" operator="is">true</dependency> <!-- USE VDPAU -->
+ <dependency type="enable">
+ <and>
+ <condition setting="videoplayer.usevdpau" operator="is">true</condition> <!-- USE VDPAU -->
+ <condition setting="videoplayer.decodingmethod" operator="is">1</condition>
+ </and>
+ </dependency>
<dependency type="visible" on="property" name="codecoptionvisible" setting="videoplayer.usevdpaumpeg2" operator="is">true</dependency>
</dependencies>
<control type="toggle" />
@@ -462,7 +636,12 @@
<level>3</level>
<default>false</default>
<dependencies>
- <dependency type="enable" setting="videoplayer.usevdpau" operator="is">true</dependency> <!-- USE VDPAU -->
+ <dependency type="enable">
+ <and>
+ <condition setting="videoplayer.usevdpau" operator="is">true</condition> <!-- USE VDPAU -->
+ <condition setting="videoplayer.decodingmethod" operator="is">1</condition>
+ </and>
+ </dependency>
<dependency type="visible" on="property" name="codecoptionvisible" setting="videoplayer.usevdpaumpeg4" operator="is">true</dependency>
</dependencies>
<control type="toggle" />
@@ -472,7 +651,12 @@
<level>3</level>
<default>true</default>
<dependencies>
- <dependency type="enable" setting="videoplayer.usevdpau" operator="is">true</dependency> <!-- USE VDPAU -->
+ <dependency type="enable">
+ <and>
+ <condition setting="videoplayer.usevdpau" operator="is">true</condition> <!-- USE VDPAU -->
+ <condition setting="videoplayer.decodingmethod" operator="is">1</condition>
+ </and>
+ </dependency>
<dependency type="visible" on="property" name="codecoptionvisible" setting="videoplayer.usevdpauvc1" operator="is">true</dependency>
</dependencies>
<control type="toggle" />
@@ -480,7 +664,7 @@
<setting id="videoplayer.usevaapi" type="boolean" label="13426" help="36156">
<requirement>HAVE_LIBVA</requirement>
<dependencies>
- <dependency type="enable" setting="videoplayer.useframemtdec" operator="is">false</dependency> <!-- disable when frame threading is active -->
+ <dependency type="enable" setting="videoplayer.decodingmethod" operator="is">1</dependency>
</dependencies>
<level>2</level>
<default>true</default>
@@ -489,206 +673,77 @@
<setting id="videoplayer.usevaapimpeg2" type="boolean" parent="videoplayer.usevaapi" label="13447" help="13448">
<requirement>HAVE_LIBVA</requirement>
<dependencies>
- <dependency type="visible" setting="videoplayer.usevaapi" operator="is">true</dependency>
- <dependency type="visible" on="property" name="codecoptionvisible" setting="videoplayer.usevaapimpeg2" operator="is">true</dependency>
- </dependencies>
- <level>3</level>
- <default>true</default>
- <control type="toggle" />
- </setting>
- <setting id="videoplayer.usevaapimpeg4" type="boolean" parent="videoplayer.usevaapi" label="13449" help="13450">
- <requirement>HAVE_LIBVA</requirement>
- <dependencies>
- <dependency type="visible" setting="videoplayer.usevaapi" operator="is">true</dependency>
- <dependency type="visible" on="property" name="codecoptionvisible" setting="videoplayer.usevaapimpeg4" operator="is">true</dependency>
- </dependencies>
- <level>3</level>
- <default>true</default>
- <control type="toggle" />
- </setting>
- <setting id="videoplayer.usevaapivc1" type="boolean" parent="videoplayer.usevaapi" label="13451" help="13452">
- <requirement>HAVE_LIBVA</requirement>
- <dependencies>
- <dependency type="visible" setting="videoplayer.usevaapi" operator="is">true</dependency>
- <dependency type="visible" on="property" name="codecoptionvisible" setting="videoplayer.usevaapivc1" operator="is">true</dependency>
- </dependencies>
- <level>3</level>
- <default>false</default>
- <control type="toggle" />
- </setting>
- <setting id="videoplayer.usedxva2" type="boolean" label="13427" help="36158">
- <requirement>HasDXVA2</requirement>
- <dependencies>
- <dependency type="enable" setting="videoplayer.useframemtdec" operator="is">false</dependency> <!-- disable when frame threading is active -->
- </dependencies>
- <level>2</level>
- <default>true</default>
- <control type="toggle" />
- </setting>
- <setting id="videoplayer.usechd" type="boolean" label="13428" help="36159">
- <requirement>HasCrystalHDDevice</requirement>
- <dependencies>
- <dependency type="enable" setting="videoplayer.useframemtdec" operator="is">false</dependency> <!-- disable when frame threading is active -->
- </dependencies>
- <level>2</level>
- <default>true</default>
- <control type="toggle" />
- </setting>
- <setting id="videoplayer.useomx" type="boolean" label="13430" help="36161">
- <requirement>HAVE_LIBOPENMAX</requirement>
- <dependencies>
- <dependency type="enable" setting="videoplayer.useframemtdec" operator="is">false</dependency> <!-- disable when frame threading is active -->
- </dependencies>
- <level>2</level>
- <default>true</default>
- <control type="toggle" />
- </setting>
- <setting id="videoplayer.usevideotoolbox" type="boolean" label="13432" help="36162">
- <requirement>HasVideoToolBoxDecoder</requirement>
- <level>2</level>
- <default>true</default>
- <control type="toggle" />
- </setting>
- <setting id="videoplayer.usepbo" type="boolean" label="13424" help="36163">
- <requirement>HAS_GL</requirement>
- <level>4</level>
- <default>true</default>
- <control type="toggle" />
- </setting>
- <setting id="videoplayer.adjustrefreshrate" type="integer" label="170" help="36164">
- <level>2</level>
- <default>0</default> <!-- ADJUST_REFRESHRATE_OFF -->
- <constraints>
- <options>
- <option label="351">0</option> <!-- ADJUST_REFRESHRATE_OFF -->
- <option label="36035">1</option> <!-- ADJUST_REFRESHRATE_ALWAYS -->
- <option label="36036">2</option> <!-- ADJUST_REFRESHRATE_ON_STARTSTOP -->
- </options>
- </constraints>
- <control type="spinner" format="string" />
- </setting>
- <setting id="videoplayer.pauseafterrefreshchange" type="integer" label="13550" help="36165">
- <level>2</level>
- <default>0</default>
- <constraints>
- <options>refreshchangedelays</options>
- </constraints>
- <dependencies>
- <dependency type="enable" setting="videoplayer.adjustrefreshrate" operator="!is">0</dependency> <!-- ADJUST_REFRESHRATE_OFF -->
- </dependencies>
- <control type="spinner" format="string" />
- </setting>
- <setting id="videoplayer.usedisplayasclock" type="boolean" label="13510" help="36166">
- <level>2</level>
- <default>false</default>
- <control type="toggle" />
- </setting>
- <setting id="videoplayer.synctype" type="integer" label="13500" help="36167">
- <level>2</level>
- <default>2</default> <!-- SYNC_RESAMPLE -->
- <constraints>
- <options>
- <option label="13501">0</option> <!-- SYNC_DISCON -->
- <option label="13502">1</option> <!-- SYNC_SKIPDUP -->
- <option label="13503">2</option> <!-- SYNC_RESAMPLE -->
- </options>
- </constraints>
- <dependencies>
- <dependency type="enable" setting="videoplayer.usedisplayasclock" operator="is">true</dependency>
- </dependencies>
- <control type="spinner" format="string" />
- </setting>
- <setting id="videoplayer.maxspeedadjust" type="number" label="13504" help="36168">
- <level>4</level>
- <default>5.0</default>
- <constraints>
- <minimum>0.0</minimum>
- <step>0.1</step>
- <maximum>10.0</maximum>
- </constraints>
- <dependencies>
<dependency type="enable">
<and>
- <condition setting="videoplayer.usedisplayasclock" operator="is">true</condition>
- <condition setting="videoplayer.synctype" operator="is">2</condition> <!-- SYNC_RESAMPLE -->
+ <condition setting="videoplayer.usevaapi" operator="is">true</condition>
+ <condition setting="videoplayer.decodingmethod" operator="is">1</condition>
</and>
</dependency>
+ <dependency type="visible" on="property" name="codecoptionvisible" setting="videoplayer.usevaapimpeg2" operator="is">true</dependency>
</dependencies>
- <control type="spinner" format="number" />
- </setting>
- <setting id="videoplayer.errorinaspect" type="integer" label="22021" help="36170">
- <level>2</level>
- <default>0</default>
- <constraints>
- <minimum label="231">0</minimum>
- <step>1</step>
- <maximum>20</maximum>
- </constraints>
- <control type="spinner" format="string">
- <formatlabel>14047</formatlabel>
- </control>
- </setting>
- <setting id="videoplayer.stretch43" type="integer" label="173" help="36171">
- <level>1</level>
- <default>0</default> <!-- ViewModeNormal -->
- <constraints>
- <options>
- <option label="630">0</option> <!-- ViewModeNormal -->
- <option label="633">3</option> <!-- ViewModeWideZoom -->
- <option label="634">4</option> <!-- ViewModeStretch16x9 -->
- <option label="631">1</option> <!-- ViewModeZoom -->
- </options>
- </constraints>
- <control type="spinner" format="string" />
+ <level>3</level>
+ <default>true</default>
+ <control type="toggle" />
</setting>
- <setting id="videoplayer.vdpau_allow_xrandr" type="boolean" label="13122" help="36172">
- <requirement>HAVE_LIBVDPAU</requirement>
- <level>4</level>
- <default>false</default>
+ <setting id="videoplayer.usevaapimpeg4" type="boolean" parent="videoplayer.usevaapi" label="13449" help="13450">
+ <requirement>HAVE_LIBVA</requirement>
+ <dependencies>
+ <dependency type="enable">
+ <and>
+ <condition setting="videoplayer.usevaapi" operator="is">true</condition>
+ <condition setting="videoplayer.decodingmethod" operator="is">1</condition>
+ </and>
+ </dependency>
+ <dependency type="visible" on="property" name="codecoptionvisible" setting="videoplayer.usevaapimpeg4" operator="is">true</dependency>
+ </dependencies>
+ <level>3</level>
+ <default>true</default>
<control type="toggle" />
</setting>
- </group>
- <group id="3">
- <requirement>
- <and>
- <or>
- <condition>HAS_GL</condition>
- <condition>HAS_GLESv2</condition>
- </or>
- <condition>HAVE_LIBVDPAU</condition>
- </and>
- </requirement>
- <setting id="videoplayer.vdpauUpscalingLevel" type="boolean" label="13121" help="36173">
- <level>4</level>
+ <setting id="videoplayer.usevaapivc1" type="boolean" parent="videoplayer.usevaapi" label="13451" help="13452">
+ <requirement>HAVE_LIBVA</requirement>
+ <dependencies>
+ <dependency type="enable">
+ <and>
+ <condition setting="videoplayer.usevaapi" operator="is">true</condition>
+ <condition setting="videoplayer.decodingmethod" operator="is">1</condition>
+ </and>
+ </dependency>
+ <dependency type="visible" on="property" name="codecoptionvisible" setting="videoplayer.usevaapivc1" operator="is">true</dependency>
+ </dependencies>
+ <level>3</level>
<default>false</default>
<control type="toggle" />
</setting>
- </group>
- <group id="4">
- <setting id="videoplayer.teletextenabled" type="boolean" label="23050" help="36174">
- <level>1</level>
+ <setting id="videoplayer.usedxva2" type="boolean" label="13427" help="36158">
+ <requirement>HasDXVA2</requirement>
+ <dependencies>
+ <dependency type="enable" setting="videoplayer.decodingmethod" operator="is">1</dependency>
+ </dependencies>
+ <level>2</level>
<default>true</default>
<control type="toggle" />
</setting>
- <setting id="videoplayer.teletextscale" type="boolean" label="23055" help="36175">
- <level>1</level>
+ <setting id="videoplayer.usechd" type="boolean" label="13428" help="36159">
+ <requirement>HasCrystalHDDevice</requirement>
+ <dependencies>
+ <dependency type="enable" setting="videoplayer.decodingmethod" operator="is">1</dependency>
+ </dependencies>
+ <level>2</level>
<default>true</default>
<control type="toggle" />
</setting>
- </group>
- <group id="5">
- <setting id="videoplayer.stereoscopicplaybackmode" type="integer" label="36520" help="36537">
+ <setting id="videoplayer.useomx" type="boolean" label="13430" help="36161">
+ <requirement>HAVE_LIBOPENMAX</requirement>
+ <dependencies>
+ <dependency type="enable" setting="videoplayer.decodingmethod" operator="is">1</dependency>
+ </dependencies>
<level>2</level>
- <default>0</default>
- <constraints>
- <options>
- <option label="36521">0</option> <!-- ASK -->
- <option label="36522">1</option> <!-- Preferred mode -->
- </options>
- </constraints>
- <control type="spinner" format="integer" delayed="true"/>
+ <default>true</default>
+ <control type="toggle" />
</setting>
- <setting id="videoplayer.quitstereomodeonstop" type="boolean" label="36526" help="36538">
+ <setting id="videoplayer.usevideotoolbox" type="boolean" label="13432" help="36162">
+ <requirement>HasVideoToolBoxDecoder</requirement>
<level>2</level>
<default>true</default>
<control type="toggle" />
@@ -736,44 +791,10 @@
<default>false</default>
<control type="toggle" />
</setting>
- <setting id="myvideos.flatten" type="boolean" label="20456" help="36183">
- <level>1</level>
- <default>false</default>
- <control type="toggle" />
- </setting>
</group>
</category>
<category id="subtitles" label="287" help="36184">
<group id="1">
- <setting id="locale.subtitlelanguage" type="string" label="286" help="36120">
- <level>1</level>
- <default>original</default>
- <constraints>
- <options>streamlanguages</options>
- </constraints>
- <control type="list" format="string" />
- </setting>
- </group>
- <group id="2">
- <setting id="subtitles.preferexternal" type="boolean" label="21600" help="21601">
- <level>1</level>
- <default>true</default>
- <control type="toggle" />
- </setting>
- <setting id="subtitles.custompath" type="path" label="21366" help="36191">
- <level>1</level>
- <default></default>
- <constraints>
- <allowempty>true</allowempty>
- <writable>false</writable>
- <sources>
- <source>videos</source>
- </sources>
- </constraints>
- <control type="button" format="path">
- <heading>657</heading>
- </control>
- </setting>
<setting id="subtitles.languages" type="list[string]" label="24111" help="24112">
<level>1</level>
<default>English</default>
@@ -787,36 +808,16 @@
<multiselect>true</multiselect>
</control>
</setting>
- <setting id="subtitles.tv" type="addon" label="24116" help="24117">
- <level>1</level>
- <default>-</default>
- <constraints>
- <addontype>xbmc.subtitle.module</addontype>
- <allowempty>true</allowempty>
- </constraints>
- <control type="button" format="addon" />
- </setting>
- <setting id="subtitles.movie" type="addon" label="24118" help="24119">
+ <setting id="locale.subtitlelanguage" type="string" label="286" help="36120">
<level>1</level>
- <default>-</default>
+ <default>original</default>
<constraints>
- <addontype>xbmc.subtitle.module</addontype>
- <allowempty>true</allowempty>
+ <options>streamlanguages</options>
</constraints>
- <control type="button" format="addon" />
- </setting>
- <setting id="subtitles.pauseonsearch" type="boolean" label="24105" help="24123">
- <level>1</level>
- <default>true</default>
- <control type="toggle" />
- </setting>
- <setting id="subtitles.savetomoviefolder" type="boolean" label="24115" help="24106">
- <level>1</level>
- <default>true</default>
- <control type="toggle" />
+ <control type="list" format="string" />
</setting>
</group>
- <group id="3">
+ <group id="2">
<setting id="subtitles.align" type="integer" label="21460" help="36192">
<level>1</level>
<default>0</default> <!-- SUBTITLE_ALIGN_MANUAL -->
@@ -831,6 +832,18 @@
</constraints>
<control type="spinner" format="string" />
</setting>
+ <setting id="subtitles.stereoscopicdepth" type="integer" label="36545" help="36546">
+ <level>0</level>
+ <default>0</default>
+ <constraints>
+ <minimum>0</minimum>
+ <step>1</step>
+ <maximum>10</maximum>
+ </constraints>
+ <control type="spinner" format="integer" delayed="true"/>
+ </setting>
+ </group>
+ <group id="3">
<setting id="subtitles.font" type="string" label="14089" help="36185">
<level>1</level>
<default>arial.ttf</default>
@@ -906,15 +919,54 @@
</setting>
</group>
<group id="4">
- <setting id="subtitles.stereoscopicdepth" type="integer" label="36545" help="36546">
+ <setting id="subtitles.storagemode" type="integer" label="24115" help="24106">
<level>1</level>
<default>0</default>
<constraints>
- <minimum>0</minimum>
- <step>1</step>
- <maximum>10</maximum>
+ <options>
+ <option label="24124">0</option> <!-- SUBTITLE_STORAGEMODE_MOVIEPATH -->
+ <option label="24125">1</option> <!-- SUBTITLE_STORAGEMODE_CUSTOMPATH -->
+ </options>
</constraints>
- <control type="spinner" format="integer" delayed="true"/>
+ <control type="spinner" format="integer" />
+ </setting>
+ <setting id="subtitles.custompath" parent="subtitles.storagemode" type="path" label="21366" help="36191">
+ <level>1</level>
+ <default></default>
+ <constraints>
+ <allowempty>true</allowempty>
+ <writable>false</writable>
+ <sources>
+ <source>videos</source>
+ </sources>
+ </constraints>
+ <dependencies>
+ <dependency type="enable" setting="subtitles.storagemode" operator="is">1</dependency>
+ </dependencies>
+ <control type="button" format="path">
+ <heading>657</heading>
+ </control>
+ </setting>
+ <setting id="subtitles.pauseonsearch" type="boolean" label="24105" help="24123">
+ <level>1</level>
+ <default>true</default>
+ <control type="toggle" />
+ </setting>
+ <setting id="subtitles.tv" type="addon" label="24116" help="24117">
+ <level>1</level>
+ <default>-</default>
+ <constraints>
+ <addontype>xbmc.subtitle.module</addontype>
+ </constraints>
+ <control type="button" format="addon" />
+ </setting>
+ <setting id="subtitles.movie" type="addon" label="24118" help="24119">
+ <level>1</level>
+ <default>-</default>
+ <constraints>
+ <addontype>xbmc.subtitle.module</addontype>
+ </constraints>
+ <control type="button" format="addon" />
</setting>
</group>
</category>
@@ -1033,17 +1085,17 @@
<default>true</default>
<control type="toggle" />
</setting>
- <setting id="pvrmenu.infotimeout" type="boolean" label="19179" help="36213">
+ <setting id="pvrmenu.infotimeout" type="boolean" parent="pvrmenu.infoswitch" label="19179" help="36213">
<level>2</level>
<default>true</default>
<control type="toggle" />
+ <dependencies>
+ <dependency type="enable">
+ <condition setting="pvrmenu.infoswitch" operator="is">true</condition>
+ </dependency>
+ </dependencies>
</setting>
- <setting id="pvrmenu.closechannelosdonswitch" type="boolean" label="19229" help="36214">
- <level>2</level>
- <default>false</default>
- <control type="toggle" />
- </setting>
- <setting id="pvrmenu.infotime" type="integer" label="19184" help="36215">
+ <setting id="pvrmenu.infotime" type="integer" parent="pvrmenu.infoswitch" label="19184" help="36215">
<level>2</level>
<default>5</default>
<constraints>
@@ -1054,6 +1106,19 @@
<control type="spinner" format="string">
<formatlabel>14045</formatlabel>
</control>
+ <dependencies>
+ <dependency type="enable">
+ <and>
+ <condition setting="pvrmenu.infoswitch" operator="is">true</condition>
+ <condition setting="pvrmenu.infotimeout" operator="is">true</condition>
+ </and>
+ </dependency>
+ </dependencies>
+ </setting>
+ <setting id="pvrmenu.closechannelosdonswitch" type="boolean" label="19229" help="36214">
+ <level>2</level>
+ <default>false</default>
+ <control type="toggle" />
</setting>
</group>
<group id="2">
@@ -1297,6 +1362,9 @@
<step>5</step>
<maximum>360</maximum>
</constraints>
+ <dependencies>
+ <dependency type="enable" setting="pvrpowermanagement.enabled" operator="is">true</dependency>
+ </dependencies>
<control type="spinner" format="string">
<formatlabel>14044</formatlabel>
</control>
@@ -1307,6 +1375,9 @@
<constraints>
<allowempty>true</allowempty>
</constraints>
+ <dependencies>
+ <dependency type="enable" setting="pvrpowermanagement.enabled" operator="is">true</dependency>
+ </dependencies>
<control type="edit" format="string" />
</setting>
<setting id="pvrpowermanagement.prewakeup" type="integer" label="19246" help="36244">
@@ -1317,6 +1388,9 @@
<step>1</step>
<maximum>60</maximum>
</constraints>
+ <dependencies>
+ <dependency type="enable" setting="pvrpowermanagement.enabled" operator="is">true</dependency>
+ </dependencies>
<control type="spinner" format="string">
<formatlabel>14044</formatlabel>
</control>
@@ -1327,11 +1401,17 @@
<level>2</level>
<default>false</default>
<control type="toggle" />
+ <dependencies>
+ <dependency type="enable" setting="pvrpowermanagement.enabled" operator="is">true</dependency>
+ </dependencies>
</setting>
<setting id="pvrpowermanagement.dailywakeuptime" type="string" label="19248" help="36246">
<level>2</level>
<default>00:00:00</default>
<control type="edit" format="string" />
+ <dependencies>
+ <dependency type="enable" setting="pvrpowermanagement.enabled" operator="is">true</dependency>
+ </dependencies>
</setting>
</group>
</category>
@@ -1426,6 +1506,8 @@
<default>false</default>
<control type="toggle" />
</setting>
+ </group>
+ <group id="3">
<setting id="musiclibrary.updateonstartup" type="boolean" label="22000" help="36259">
<level>1</level>
<default>false</default>
@@ -1437,7 +1519,7 @@
<control type="toggle" />
</setting>
</group>
- <group id="3">
+ <group id="4">
<setting id="musiclibrary.cleanup" type="action" label="334" help="36148">
<level>2</level>
<control type="button" format="action" />
@@ -1478,7 +1560,7 @@
</constraints>
<control type="spinner" format="string" />
</setting>
- <setting id="musicplayer.replaygainpreamp" type="integer" label="641" help="36268">
+ <setting id="musicplayer.replaygainpreamp" type="integer" parent="musicplayer.replaygaintype" label="641" help="36268">
<level>2</level>
<default>89</default>
<constraints>
@@ -1489,8 +1571,11 @@
<control type="spinner" format="string">
<formatlabel>14050</formatlabel>
</control>
+ <dependencies>
+ <dependency type="enable" setting="musicplayer.replaygaintype" operator="!is">0</dependency>
+ </dependencies>
</setting>
- <setting id="musicplayer.replaygainnogainpreamp" type="integer" label="642" help="36269">
+ <setting id="musicplayer.replaygainnogainpreamp" type="integer" parent="musicplayer.replaygaintype" label="642" help="36269">
<level>2</level>
<default>89</default>
<constraints>
@@ -1501,11 +1586,17 @@
<control type="spinner" format="string">
<formatlabel>14050</formatlabel>
</control>
+ <dependencies>
+ <dependency type="enable" setting="musicplayer.replaygaintype" operator="!is">0</dependency>
+ </dependencies>
</setting>
- <setting id="musicplayer.replaygainavoidclipping" type="boolean" label="643" help="36270">
+ <setting id="musicplayer.replaygainavoidclipping" type="boolean" parent="musicplayer.replaygaintype" label="643" help="36270">
<level>2</level>
<default>false</default>
<control type="toggle" />
+ <dependencies>
+ <dependency type="enable" setting="musicplayer.replaygaintype" operator="!is">0</dependency>
+ </dependencies>
</setting>
</group>
<group id="3">
@@ -1521,15 +1612,11 @@
<formatlabel>14045</formatlabel>
</control>
</setting>
- <setting id="musicplayer.crossfadealbumtracks" type="boolean" label="13400" help="36272">
+ <setting id="musicplayer.crossfadealbumtracks" type="boolean" parent="musicplayer.crossfade" label="13400" help="36272">
<level>1</level>
<default>true</default>
<dependencies>
- <dependency type="enable">
- <and>
- <condition setting="musicplayer.crossfade" operator="!is">0</condition>
- </and>
- </dependency>
+ <dependency type="enable" setting="musicplayer.crossfade" operator="!is">0</dependency>
</dependencies>
<control type="toggle" />
</setting>
@@ -1656,7 +1743,7 @@
</constraints>
<control type="spinner" format="string" />
</setting>
- <setting id="audiocds.quality" type="integer" label="622" help="36288">
+ <setting id="audiocds.quality" type="integer" parent="audiocds.encoder" label="622" help="36288">
<level>2</level>
<default>0</default> <!-- CDDARIP_QUALITY_CBR -->
<constraints>
@@ -1677,7 +1764,7 @@
</dependencies>
<control type="spinner" format="string" />
</setting>
- <setting id="audiocds.bitrate" type="integer" label="623" help="36289">
+ <setting id="audiocds.bitrate" type="integer" parent="audiocds.encoder" label="623" help="36289">
<level>2</level>
<default>192</default>
<constraints>
@@ -1698,7 +1785,7 @@
<formatlabel>14048</formatlabel>
</control>
</setting>
- <setting id="audiocds.compressionlevel" type="integer" label="665" help="36290">
+ <setting id="audiocds.compressionlevel" type="integer" parent="audiocds.encoder" label="665" help="36290">
<level>2</level>
<default>5</default>
<constraints>
@@ -1931,7 +2018,7 @@
<default>false</default>
<control type="toggle" />
</setting>
- <setting id="services.upnpannounce" type="boolean" label="20188" help="36324">
+ <setting id="services.upnpannounce" type="boolean" parent="services.upnpserver" label="20188" help="36324">
<level>2</level>
<default>true</default>
<dependencies>
@@ -2174,7 +2261,7 @@
</dependencies>
<control type="spinner" format="string" delayed="true" />
</setting>
- <setting id="videoscreen.resolution" type="integer" label="169" help="36352">
+ <setting id="videoscreen.resolution" type="integer" parent="videoscreen.screen" label="169" help="36352">
<level>0</level>
<default>16</default> <!-- RES_DESKTOP -->
<constraints>
@@ -2187,7 +2274,7 @@
</dependencies>
<control type="list" format="string" />
</setting>
- <setting id="videoscreen.screenmode" type="string" label="243" help="36353">
+ <setting id="videoscreen.screenmode" type="string" parent="videoscreen.screen" label="243" help="36353">
<requirement>IsStandAlone</requirement>
<level>0</level>
<default>DESKTOP</default>
@@ -2204,7 +2291,7 @@
</dependencies>
<control type="spinner" format="string" delayed="true" />
</setting>
- <setting id="videoscreen.fakefullscreen" type="boolean" label="14083" help="36354">
+ <setting id="videoscreen.fakefullscreen" type="boolean" parent="videoscreen.screen" label="14083" help="36354">
<level>2</level>
<default>true</default>
<dependencies>
@@ -2212,7 +2299,7 @@
</dependencies>
<control type="toggle" />
</setting>
- <setting id="videoscreen.blankdisplays" type="boolean" label="13130" help="36355">
+ <setting id="videoscreen.blankdisplays" type="boolean" parent="videoscreen.screen" label="13130" help="36355">
<level>1</level>
<default>false</default>
<dependencies>
@@ -2409,11 +2496,11 @@
<dependencies>
<dependency type="visible">
<and>
- <condition setting="audiooutput.passthrough" operator="is">true</condition>
<condition on="property" name="aesettingvisible" setting="audiooutput.passthrough">audiooutput.passthrough</condition>
<condition on="property" name="aesettingvisible" setting="audiooutput.config">audiooutput.passthrough</condition>
</and>
</dependency>
+ <dependency type="enable" setting="audiooutput.passthrough" operator="is">true</dependency>
</dependencies>
<constraints>
<options>audiodevicespassthrough</options>
@@ -2424,26 +2511,22 @@
<level>2</level>
<default>true</default>
<dependencies>
- <dependency type="visible">
- <and>
- <condition setting="audiooutput.passthrough" operator="is">true</condition>
- <condition on="property" name="aesettingvisible" setting="audiooutput.config">audiooutput.passthrough</condition>
- </and>
- </dependency>
+ <dependency type="visible" on="property" name="aesettingvisible" setting="audiooutput.config">audiooutput.passthrough</dependency>
+ <dependency type="enable" setting="audiooutput.passthrough" operator="is">true</dependency>
</dependencies>
<control type="toggle" />
</setting>
- <setting id="audiooutput.ac3transcode" type="boolean" label="667" help="36429">
+ <setting id="audiooutput.ac3transcode" type="boolean" parent="audiooutput.ac3passthrough" label="667" help="36429">
<level>2</level>
<default>false</default>
<dependencies>
- <dependency type="visible">
+ <dependency type="enable">
<and>
<condition setting="audiooutput.passthrough" operator="is">true</condition>
<condition setting="audiooutput.ac3passthrough" operator="is">true</condition>
- <condition on="property" name="aesettingvisible" setting="audiooutput.config">audiooutput.ac3transcode</condition>
</and>
</dependency>
+ <dependency type="visible" on="property" name="aesettingvisible" setting="audiooutput.config">audiooutput.ac3transcode</dependency>
</dependencies>
<control type="toggle" />
</setting>
@@ -2451,13 +2534,8 @@
<level>2</level>
<default>false</default>
<dependencies>
- <dependency type="visible">
- <and>
- <condition setting="audiooutput.passthrough" operator="is">true</condition>
- <condition on="property" name="aesettingvisible" setting="audiooutput.config">audiooutput.eac3passthrough</condition>
- <condition on="property" name="aesettingvisible" setting="audiooutput.passthroughdevice">audiooutput.eac3passthrough</condition>
- </and>
- </dependency>
+ <dependency type="visible" on="property" name="aesettingvisible" setting="audiooutput.config">audiooutput.passthrough</dependency>
+ <dependency type="enable" setting="audiooutput.passthrough" operator="is">true</dependency>
</dependencies>
<control type="toggle" />
</setting>
@@ -2465,12 +2543,8 @@
<level>2</level>
<default>false</default>
<dependencies>
- <dependency type="visible">
- <and>
- <condition setting="audiooutput.passthrough" operator="is">true</condition>
- <condition on="property" name="aesettingvisible" setting="audiooutput.config">audiooutput.passthrough</condition>
- </and>
- </dependency>
+ <dependency type="visible" on="property" name="aesettingvisible" setting="audiooutput.config">audiooutput.passthrough</dependency>
+ <dependency type="enable" setting="audiooutput.passthrough" operator="is">true</dependency>
</dependencies>
<control type="toggle" />
</setting>
@@ -2480,11 +2554,11 @@
<dependencies>
<dependency type="visible">
<and>
- <condition setting="audiooutput.passthrough" operator="is">true</condition>
<condition on="property" name="aesettingvisible" setting="audiooutput.config">audiooutput.truehdpassthrough</condition>
<condition on="property" name="aesettingvisible" setting="audiooutput.passthroughdevice">audiooutput.truehdpassthrough</condition>
</and>
</dependency>
+ <dependency type="enable" setting="audiooutput.passthrough" operator="is">true</dependency>
</dependencies>
<control type="toggle" />
</setting>
@@ -2494,11 +2568,11 @@
<dependencies>
<dependency type="visible">
<and>
- <condition setting="audiooutput.passthrough" operator="is">true</condition>
<condition on="property" name="aesettingvisible" setting="audiooutput.config">audiooutput.dtshdpassthrough</condition>
<condition on="property" name="aesettingvisible" setting="audiooutput.passthroughdevice">audiooutput.dtshdpassthrough</condition>
</and>
</dependency>
+ <dependency type="enable" setting="audiooutput.passthrough" operator="is">true</dependency>
</dependencies>
<control type="toggle" />
</setting>
@@ -2708,7 +2782,7 @@
<hidevalue>true</hidevalue>
</control>
</setting>
- <setting id="masterlock.startuplock" type="boolean" label="20076" help="36397">
+ <setting id="masterlock.startuplock" type="boolean" parent="masterlock.lockcode" label="20076" help="36397">
<level>2</level>
<default>false</default>
<dependencies>
View
5 xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp
@@ -34,6 +34,7 @@
#endif
#include "settings/AdvancedSettings.h"
#include "settings/Settings.h"
+#include "settings/VideoSettings.h"
#include "utils/log.h"
#include "boost/shared_ptr.hpp"
#include "threads/Atomics.h"
@@ -70,7 +71,7 @@ enum PixelFormat CDVDVideoCodecFFmpeg::GetFormat( struct AVCodecContext * avctx
CDVDVideoCodecFFmpeg* ctx = (CDVDVideoCodecFFmpeg*)avctx->opaque;
// if frame threading is enabled hw accel is not allowed
- if(!ctx->IsHardwareAllowed() || CSettings::Get().GetBool("videoplayer.useframemtdec"))
+ if((EDECODEMETHOD) CSettings::Get().GetInt("videoplayer.decodingmethod") != VS_DECODEMETHOD_HARDWARE || !ctx->IsHardwareAllowed())
return ctx->m_dllAvCodec.avcodec_default_get_format(avctx, fmt);
const PixelFormat * cur = fmt;
@@ -249,7 +250,7 @@ bool CDVDVideoCodecFFmpeg::Open(CDVDStreamInfo &hints, CDVDCodecOptions &options
CLog::Log(LOGDEBUG,"CDVDVideoCodecFFmpeg::Open() Keep default threading for Hi10p: %d",
m_pCodecContext->thread_type);
}
- else if (CSettings::Get().GetBool("videoplayer.useframemtdec"))
+ else if ((EDECODEMETHOD) CSettings::Get().GetInt("videoplayer.decodingmethod") == VS_DECODEMETHOD_SOFTWARE && CSettings::Get().GetBool("videoplayer.useframemtdec"))
{
CLog::Log(LOGDEBUG,"CDVDVideoCodecFFmpeg::Open() Keep default threading %d by videoplayer.useframemtdec",
m_pCodecContext->thread_type);
View
38 xbmc/cores/dvdplayer/DVDPlayer.cpp
@@ -141,14 +141,13 @@ class PredicateSubtitleFilter
private:
std::string audiolang;
bool original;
- bool preferexternal;
public:
/** \brief The class' operator() decides if the given (subtitle) SelectionStream is relevant wrt.
* preferred subtitle language and audio language. If the subtitle is relevant <B>false</B> false is returned.
*
* A subtitle is relevant if
* - it was previously selected, or
- * - it's an external sub and "prefer external subs was selected", or
+ * - it's an external sub, or
* - it's a forced sub and "original stream's language" was selected, or
* - it's a forced sub and its language matches the audio's language, or
* - it's a default sub, or
@@ -156,21 +155,17 @@ class PredicateSubtitleFilter
*/
PredicateSubtitleFilter(std::string& lang)
: audiolang(lang),
- original(StringUtils::EqualsNoCase(CSettings::Get().GetString("locale.subtitlelanguage"), "original")),
- preferexternal(CSettings::Get().GetBool("subtitles.preferexternal"))
+ original(StringUtils::EqualsNoCase(CSettings::Get().GetString("locale.subtitlelanguage"), "original"))
{
};
-
+
bool operator()(const SelectionStream& ss) const
{
if (ss.type_index == CMediaSettings::Get().GetCurrentVideoSettings().m_SubtitleStream)
return false;
- if (preferexternal)
- {
- if(STREAM_SOURCE_MASK(ss.source) == STREAM_SOURCE_DEMUX_SUB || STREAM_SOURCE_MASK(ss.source) == STREAM_SOURCE_TEXT)
- return false;
- }
+ if(STREAM_SOURCE_MASK(ss.source) == STREAM_SOURCE_DEMUX_SUB || STREAM_SOURCE_MASK(ss.source) == STREAM_SOURCE_TEXT)
+ return false;
if ((ss.flags & CDemuxStream::FLAG_FORCED) && (original || g_LangCodeExpander.CompareLangCodes(ss.language, audiolang)))
return false;
@@ -217,10 +212,9 @@ static bool PredicateAudioPriority(const SelectionStream& lh, const SelectionStr
*
* A subtitle lh is 'better than' a subtitle rh (in evaluation order) if
* - lh was previously selected, or
-* - lh is an external sub and "prefer external subs was selected" and rh not, or
+* - lh is an external sub and rh not, or
* - lh is a forced sub and ("original stream's language" was selected or subtitles are off) and rh not, or
* - lh is an external sub and its language matches the preferred subtitle's language (unequal to "original stream's language") and rh not, or
-* - lh is an external sub and rh not, or
* - lh is language matches the preferred subtitle's language (unequal to "original stream's language") and rh not, or
* - lh is a default sub and rh not
*/
@@ -229,14 +223,12 @@ class PredicateSubtitlePriority
private:
std::string audiolang;
bool original;
- bool preferextsubs;
bool subson;
PredicateSubtitleFilter filter;
public:
PredicateSubtitlePriority(std::string& lang)
: audiolang(lang),
original(StringUtils::EqualsNoCase(CSettings::Get().GetString("locale.subtitlelanguage"), "original")),
- preferextsubs(CSettings::Get().GetBool("subtitles.preferexternal")),
subson(CMediaSettings::Get().GetCurrentVideoSettings().m_SubtitleOn),
filter(lang)
{
@@ -255,14 +247,12 @@ class PredicateSubtitlePriority
PREDICATE_RETURN(lh.type_index == CMediaSettings::Get().GetCurrentVideoSettings().m_SubtitleStream
, rh.type_index == CMediaSettings::Get().GetCurrentVideoSettings().m_SubtitleStream);
- if (preferextsubs)
- {
- PREDICATE_RETURN(STREAM_SOURCE_MASK(lh.source) == STREAM_SOURCE_DEMUX_SUB
- , STREAM_SOURCE_MASK(rh.source) == STREAM_SOURCE_DEMUX_SUB);
+ // prefer external subs
+ PREDICATE_RETURN(STREAM_SOURCE_MASK(lh.source) == STREAM_SOURCE_DEMUX_SUB
+ , STREAM_SOURCE_MASK(rh.source) == STREAM_SOURCE_DEMUX_SUB);
- PREDICATE_RETURN(STREAM_SOURCE_MASK(lh.source) == STREAM_SOURCE_TEXT
- , STREAM_SOURCE_MASK(rh.source) == STREAM_SOURCE_TEXT);
- }
+ PREDICATE_RETURN(STREAM_SOURCE_MASK(lh.source) == STREAM_SOURCE_TEXT
+ , STREAM_SOURCE_MASK(rh.source) == STREAM_SOURCE_TEXT);
if(!subson || original)
{
@@ -280,12 +270,6 @@ class PredicateSubtitlePriority
, (STREAM_SOURCE_MASK(rh.source) == STREAM_SOURCE_DEMUX_SUB || STREAM_SOURCE_MASK(rh.source) == STREAM_SOURCE_TEXT) && g_LangCodeExpander.CompareLangCodes(subtitle_language, rh.language));
}
- PREDICATE_RETURN(STREAM_SOURCE_MASK(lh.source) == STREAM_SOURCE_DEMUX_SUB
- , STREAM_SOURCE_MASK(rh.source) == STREAM_SOURCE_DEMUX_SUB);
-
- PREDICATE_RETURN(STREAM_SOURCE_MASK(lh.source) == STREAM_SOURCE_TEXT
- , STREAM_SOURCE_MASK(rh.source) == STREAM_SOURCE_TEXT);
-
if(!original)
{
PREDICATE_RETURN(g_LangCodeExpander.CompareLangCodes(subtitle_language, lh.language)
View
38 xbmc/cores/omxplayer/OMXPlayer.cpp
@@ -181,14 +181,13 @@ class PredicateSubtitleFilter
private:
std::string audiolang;
bool original;
- bool preferexternal;
public:
/** \brief The class' operator() decides if the given (subtitle) SelectionStream is relevant wrt.
* preferred subtitle language and audio language. If the subtitle is relevant <B>false</B> false is returned.
*
* A subtitle is relevant if
* - it was previously selected, or
- * - it's an external sub and "prefer external subs was selected", or
+ * - it's an external sub, or
* - it's a forced sub and "original stream's language" was selected, or
* - it's a forced sub and its language matches the audio's language, or
* - it's a default sub, or
@@ -196,21 +195,17 @@ class PredicateSubtitleFilter
*/
PredicateSubtitleFilter(std::string& lang)
: audiolang(lang),
- original(StringUtils::EqualsNoCase(CSettings::Get().GetString("locale.subtitlelanguage"), "original")),
- preferexternal(CSettings::Get().GetBool("subtitles.preferexternal"))
+ original(StringUtils::EqualsNoCase(CSettings::Get().GetString("locale.subtitlelanguage"), "original"))
{
};
-
+
bool operator()(const OMXSelectionStream& ss) const
{
if (ss.type_index == CMediaSettings::Get().GetCurrentVideoSettings().m_SubtitleStream)
return false;
- if (preferexternal)
- {
- if(STREAM_SOURCE_MASK(ss.source) == STREAM_SOURCE_DEMUX_SUB || STREAM_SOURCE_MASK(ss.source) == STREAM_SOURCE_TEXT)
- return false;
- }
+ if(STREAM_SOURCE_MASK(ss.source) == STREAM_SOURCE_DEMUX_SUB || STREAM_SOURCE_MASK(ss.source) == STREAM_SOURCE_TEXT)
+ return false;
if ((ss.flags & CDemuxStream::FLAG_FORCED) && (original || g_LangCodeExpander.CompareLangCodes(ss.language, audiolang)))
return false;
@@ -261,10 +256,9 @@ static bool PredicateAudioPriority(const OMXSelectionStream& lh, const OMXSelect
*
* A subtitle lh is 'better than' a subtitle rh (in evaluation order) if
* - lh was previously selected, or
-* - lh is an external sub and "prefer external subs was selected" and rh not, or
+* - lh is an external sub and rh not, or
* - lh is a forced sub and ("original stream's language" was selected or subtitles are off) and rh not, or
* - lh is an external sub and its language matches the preferred subtitle's language (unequal to "original stream's language") and rh not, or
-* - lh is an external sub and rh not, or
* - lh is language matches the preferred subtitle's language (unequal to "original stream's language") and rh not, or
* - lh is a default sub and rh not
*/
@@ -273,14 +267,12 @@ class PredicateSubtitlePriority
private:
std::string audiolang;
bool original;
- bool preferextsubs;
bool subson;
PredicateSubtitleFilter filter;
public:
PredicateSubtitlePriority(std::string& lang)
: audiolang(lang),
original(StringUtils::EqualsNoCase(CSettings::Get().GetString("locale.subtitlelanguage"), "original")),
- preferextsubs(CSettings::Get().GetBool("subtitles.preferexternal")),
subson(CMediaSettings::Get().GetCurrentVideoSettings().m_SubtitleOn),
filter(lang)
{
@@ -299,14 +291,12 @@ class PredicateSubtitlePriority
PREDICATE_RETURN(lh.type_index == CMediaSettings::Get().GetCurrentVideoSettings().m_SubtitleStream
, rh.type_index == CMediaSettings::Get().GetCurrentVideoSettings().m_SubtitleStream);
- if (preferextsubs)
- {
- PREDICATE_RETURN(STREAM_SOURCE_MASK(lh.source) == STREAM_SOURCE_DEMUX_SUB
- , STREAM_SOURCE_MASK(rh.source) == STREAM_SOURCE_DEMUX_SUB);
+ // prefer external subs
+ PREDICATE_RETURN(STREAM_SOURCE_MASK(lh.source) == STREAM_SOURCE_DEMUX_SUB
+ , STREAM_SOURCE_MASK(rh.source) == STREAM_SOURCE_DEMUX_SUB);
- PREDICATE_RETURN(STREAM_SOURCE_MASK(lh.source) == STREAM_SOURCE_TEXT
- , STREAM_SOURCE_MASK(rh.source) == STREAM_SOURCE_TEXT);
- }
+ PREDICATE_RETURN(STREAM_SOURCE_MASK(lh.source) == STREAM_SOURCE_TEXT
+ , STREAM_SOURCE_MASK(rh.source) == STREAM_SOURCE_TEXT);
if(!subson || original)
{
@@ -324,12 +314,6 @@ class PredicateSubtitlePriority
, (STREAM_SOURCE_MASK(rh.source) == STREAM_SOURCE_DEMUX_SUB || STREAM_SOURCE_MASK(rh.source) == STREAM_SOURCE_TEXT) && g_LangCodeExpander.CompareLangCodes(subtitle_language, rh.language));
}
- PREDICATE_RETURN(STREAM_SOURCE_MASK(lh.source) == STREAM_SOURCE_DEMUX_SUB
- , STREAM_SOURCE_MASK(rh.source) == STREAM_SOURCE_DEMUX_SUB);
-
- PREDICATE_RETURN(STREAM_SOURCE_MASK(lh.source) == STREAM_SOURCE_TEXT
- , STREAM_SOURCE_MASK(rh.source) == STREAM_SOURCE_TEXT);
-
if(!original)
{
PREDICATE_RETURN(g_LangCodeExpander.CompareLangCodes(subtitle_language, lh.language)
View
6 xbmc/settings/VideoSettings.h
@@ -92,6 +92,12 @@ enum ESCALINGMETHOD
VS_SCALINGMETHOD_MAX // do not use and keep as last enum value.
};
+enum EDECODEMETHOD
+{
+ VS_DECODEMETHOD_SOFTWARE=0,
+ VS_DECODEMETHOD_HARDWARE=1
+};
+
typedef enum {
ViewModeNormal = 0,
ViewModeZoom,
View
4 xbmc/video/dialogs/GUIDialogSubtitles.cpp
@@ -404,6 +404,8 @@ void CGUIDialogSubtitles::OnDownloadComplete(const CFileItemList *items, const s
return;
}
+ SUBTITLE_STORAGEMODE storageMode = (SUBTITLE_STORAGEMODE) CSettings::Get().GetInt("subtitles.storagemode");
+
// Get (unstacked) path
const CStdString &strCurrentFile = g_application.CurrentUnstackedItem().GetPath();
@@ -419,7 +421,7 @@ void CGUIDialogSubtitles::OnDownloadComplete(const CFileItemList *items, const s
strDownloadPath = subPath;
strFileName = URIUtils::GetFileName(strCurrentFile);
- if (CSettings::Get().GetBool("subtitles.savetomoviefolder") &&
+ if (storageMode == SUBTITLE_STORAGEMODE_MOVIEPATH &&
CUtil::SupportsWriteFileOperations(strCurrentFilePath))
{
strDestPath = strCurrentFilePath;
View
6 xbmc/video/dialogs/GUIDialogSubtitles.h
@@ -25,6 +25,12 @@
#include "threads/CriticalSection.h"
#include "utils/JobManager.h"
+enum SUBTITLE_STORAGEMODE
+{
+ SUBTITLE_STORAGEMODE_MOVIEPATH = 0,
+ SUBTITLE_STORAGEMODE_CUSTOMPATH
+};
+
class CFileItem;
class CFileItemList;
Please sign in to comment.
Something went wrong with that request. Please try again.