diff options
-rw-r--r-- | addons/metadata.tvdb.com/addon.xml | 3 | ||||
-rw-r--r-- | addons/metadata.tvdb.com/changelog.txt | 6 | ||||
-rw-r--r-- | addons/metadata.tvdb.com/resources/language/English/strings.xml | 2 | ||||
-rw-r--r-- | addons/metadata.tvdb.com/resources/settings.xml | 2 | ||||
-rw-r--r-- | addons/metadata.tvdb.com/tvdb.xml | 64 | ||||
-rw-r--r-- | xbmc/cores/dvdplayer/DVDCodecs/Video/VAAPI.cpp | 8 |
6 files changed, 70 insertions, 15 deletions
diff --git a/addons/metadata.tvdb.com/addon.xml b/addons/metadata.tvdb.com/addon.xml index 405166faf3..d46e13628c 100644 --- a/addons/metadata.tvdb.com/addon.xml +++ b/addons/metadata.tvdb.com/addon.xml @@ -1,10 +1,11 @@ <?xml version="1.0" encoding="UTF-8" standalone="yes"?> <addon id="metadata.tvdb.com" name="The TVDB" - version="1.5.9" + version="1.7.0" provider-name="XBMC Foundation"> <requires> <import addon="xbmc.metadata" version="2.1.0"/> + <import addon="metadata.common.imdb.com" version="2.7.8"/> </requires> <extension point="xbmc.metadata.scraper.tvshows" language="multi" diff --git a/addons/metadata.tvdb.com/changelog.txt b/addons/metadata.tvdb.com/changelog.txt index b473a7998c..f571e853f7 100644 --- a/addons/metadata.tvdb.com/changelog.txt +++ b/addons/metadata.tvdb.com/changelog.txt @@ -1,3 +1,9 @@ +[B]1.7.0[/B] +- Added: Option to get IMDb episode and series rating when available + +[B]1.6.0[/B] +- Changed: Force selected language even if title on another language is being used for the search query + [B]1.5.9[/B] - Updated: language files from Transifex diff --git a/addons/metadata.tvdb.com/resources/language/English/strings.xml b/addons/metadata.tvdb.com/resources/language/English/strings.xml index f1eef4bbad..636a01c8b9 100644 --- a/addons/metadata.tvdb.com/resources/language/English/strings.xml +++ b/addons/metadata.tvdb.com/resources/language/English/strings.xml @@ -9,4 +9,6 @@ <string id="30002">Enable Fanart</string> <string id="30003">Prefer Posters</string> <string id="30004">Language</string> + <string id="30005">Get Rating from</string> + <string id="30006">Use TheTVDB Ratings in case IMDb is missing</string> </strings> diff --git a/addons/metadata.tvdb.com/resources/settings.xml b/addons/metadata.tvdb.com/resources/settings.xml index 14b802a123..fcf407805d 100644 --- a/addons/metadata.tvdb.com/resources/settings.xml +++ b/addons/metadata.tvdb.com/resources/settings.xml @@ -6,4 +6,6 @@ <setting label="30002" type="bool" id="fanart" default="true" /> <setting type="sep" /> <setting label="30004" type="labelenum" id="language" values="da|fi|nl|de|it|es|fr|pl|hu|el|tr|ru|he|ja|pt|zh|cs|sl|hr|ko|en|sv|no" sort="yes" default="en" /> + <setting label="30005" type="labelenum" values="TheTVDB|IMDb" id="RatingS" default="TheTVDB"/> + <setting label="30006" type="bool" id="fallback" subsetting="true" visible="eq(-1,1)" default="true"/> </settings> diff --git a/addons/metadata.tvdb.com/tvdb.xml b/addons/metadata.tvdb.com/tvdb.xml index f27e4fc0ee..402a663716 100644 --- a/addons/metadata.tvdb.com/tvdb.xml +++ b/addons/metadata.tvdb.com/tvdb.xml @@ -43,7 +43,7 @@ <!-- returns: results in xml format <results><movie><title>*</title><url>*</url>*#urls<extra>*</extra></movie>*</results> --> <GetSearchResults dest="1"> <RegExp input="$$4" output="<?xml version="1.0" encoding="utf-8" standalone="yes"?><results>\1</results>" dest="1"> - <RegExp input="$$1" output="<entity><title>\3</title><language>\2</language><url cache="\1-\2.xml">http://thetvdb.com/api/1D62F2F90030C444/series/\1/all/\2.zip</url><id>\1</id></entity>" dest="4"> + <RegExp input="$$1" output="<entity><title>\3</title><language>\2</language><url cache="\1-$INFO[language].xml">http://thetvdb.com/api/1D62F2F90030C444/series/\1/all/$INFO[language].zip</url><id>\1</id></entity>" dest="4"> <expression repeat="yes"><seriesid>([0-9]*)</seriesid>[^<]*<language>([^<]*)</language>[^<]*<SeriesName>([^<]*)</SeriesName></expression> </RegExp> <expression noclean="1"/> @@ -70,12 +70,33 @@ <RegExp input="$$5" output="<premiered>\1</premiered>" dest="4+"> <expression><FirstAired>([^<]*)</FirstAired></expression> </RegExp> - <RegExp input="$$5" output="<rating>\1</rating>" dest="4+"> - <expression><Rating>([^<]*)</Rating></expression> - </RegExp> - <RegExp input="$$5" output="<votes>\1</votes>" dest="4+"> - <expression><RatingCount>([^<]*)</RatingCount></expression> + <RegExp input="$INFO[RatingS]" output="$$12" dest="4+"> + <RegExp input="$$5" output="<rating>\1</rating>" dest="12+"> + <expression><Rating>([^<]+)</Rating></expression> + </RegExp> + <RegExp input="$$5" output="<votes>\1</votes>" dest="12+"> + <expression><RatingCount>([^<]+)</RatingCount></expression> + </RegExp> + <expression>TheTVDB</expression> </RegExp> + <RegExp input="$INFO[RatingS]" output="$$13" dest="4+"> + <RegExp input="$$5" output="\1" dest="11"> + <expression clear="yes"><IMDB_ID>([^<]+)</IMDB_ID></expression> + </RegExp> + <RegExp input="$$11"> + <RegExp conditional="fallback" input="$$5" output="<rating>\1</rating>" dest="13+"> + <expression><Rating>([^<]+)</Rating></expression> + </RegExp> + <RegExp conditional="fallback" input="$$5" output="<votes>\1</votes>" dest="13+"> + <expression><RatingCount>([^<]+)</RatingCount></expression> + </RegExp> + <expression>^$</expression> + </RegExp> + <RegExp input="$$11" output="<chain function="GetIMDBRatingById">$$11</chain>" dest="13"> + <expression>(.+)</expression> + </RegExp> + <expression>IMDb</expression> + </RegExp> <RegExp input="$$5" output="<studio>\1</studio>" dest="4+"> <expression><Network>([^<]*)</Network></expression> </RegExp> @@ -278,11 +299,32 @@ <RegExp input="$$8" output="<displayafterseason>\1</displayafterseason>" dest="4+"> <expression><airsafter_season>([^<]+)</airsafter_season></expression> </RegExp> - <RegExp input="$$8" output="<rating>\1</rating>" dest="4+"> - <expression><Rating>([^<]+)</Rating></expression> + <RegExp input="$INFO[RatingS]" output="$$12" dest="4+"> + <RegExp input="$$8" output="<rating>\1</rating>" dest="12+"> + <expression><Rating>([^<]+)</Rating></expression> + </RegExp> + <RegExp input="$$8" output="<votes>\1</votes>" dest="12+"> + <expression><RatingCount>([^<]+)</RatingCount></expression> + </RegExp> + <expression>TheTVDB</expression> </RegExp> - <RegExp input="$$8" output="<votes>\1</votes>" dest="4+"> - <expression><RatingCount>([^<]+)</RatingCount></expression> + <RegExp input="$INFO[RatingS]" output="$$13" dest="4+"> + <RegExp input="$$8" output="\1" dest="11"> + <expression clear="yes"><IMDB_ID>([^<]+)</IMDB_ID></expression> + </RegExp> + <RegExp input="$$11"> + <RegExp conditional="fallback" input="$$8" output="<rating>\1</rating>" dest="13+"> + <expression><Rating>([^<]+)</Rating></expression> + </RegExp> + <RegExp conditional="fallback" input="$$8" output="<votes>\1</votes>" dest="13+"> + <expression><RatingCount>([^<]+)</RatingCount></expression> + </RegExp> + <expression>^$</expression> + </RegExp> + <RegExp input="$$11" output="<chain function="GetIMDBRatingById">$$11</chain>" dest="13"> + <expression>(.+)</expression> + </RegExp> + <expression>IMDb</expression> </RegExp> <RegExp input="$$1" output="<runtime>\1</runtime>" dest="4+"> <expression><Runtime>([^<]+)</Runtime></expression> @@ -290,4 +332,4 @@ <expression noclean="1"/> </RegExp> </GetEpisodeDetails> -</scraper> +</scraper>
\ No newline at end of file diff --git a/xbmc/cores/dvdplayer/DVDCodecs/Video/VAAPI.cpp b/xbmc/cores/dvdplayer/DVDCodecs/Video/VAAPI.cpp index 8ef0a22528..369bbde5a5 100644 --- a/xbmc/cores/dvdplayer/DVDCodecs/Video/VAAPI.cpp +++ b/xbmc/cores/dvdplayer/DVDCodecs/Video/VAAPI.cpp @@ -2961,6 +2961,7 @@ bool CFFmpegPostproc::PreInit(CVaapiConfig &config, SDiMethods *methods) return false; VAImage image; + image.image_id = VA_INVALID_ID; VASurfaceID surface = config.videoSurfaces->GetAtIndex(0); VAStatus status = vaDeriveImage(config.dpy, surface, &image); if (status != VA_STATUS_SUCCESS) @@ -2968,17 +2969,18 @@ bool CFFmpegPostproc::PreInit(CVaapiConfig &config, SDiMethods *methods) CLog::Log(LOGWARNING,"VAAPI::SupportsFilter vaDeriveImage not supported"); use_filter = false; } - if (image.format.fourcc != VA_FOURCC_NV12) + if (use_filter && (image.format.fourcc != VA_FOURCC_NV12)) { CLog::Log(LOGWARNING,"VAAPI::SupportsFilter image format not NV12"); use_filter = false; } - if ((image.pitches[0] % 64) || (image.pitches[1] % 64)) + if (use_filter && ((image.pitches[0] % 64) || (image.pitches[1] % 64))) { CLog::Log(LOGWARNING,"VAAPI::SupportsFilter patches no multiple of 64"); use_filter = false; } - CheckSuccess(vaDestroyImage(config.dpy,image.image_id)); + if (image.image_id != VA_INVALID_ID) + CheckSuccess(vaDestroyImage(config.dpy,image.image_id)); if (use_filter) { |