Coder Social home page Coder Social logo

plugin.video.youtube's Introduction

plugin.video.youtube's People

Contributors

anxdpanic avatar bubuleur avatar chhe avatar daniel3xxx avatar djdiabolik avatar doko-desuka avatar drrak avatar enen92 avatar eng2heb avatar etharr avatar guidosarducci avatar intel11 avatar jdf76 avatar laceesz avatar llzn avatar lulol avatar markman-b avatar pannal avatar regseb avatar roket1428 avatar roliverosc avatar schtek avatar sebastianopistore avatar sjord avatar stefansaraev avatar tweimer avatar uukrull avatar vlmaksime avatar yureng avatar zankio avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

plugin.video.youtube's Issues

Autoplay feature

Hello,

thanks for amazing plugin. I would like to propose feature that would allow users to use autoplay like in normal browser.

How youtube's autoplay work? You chose video to be played and when it ends it automatically starts another one.

This has already been requested, but forgotten.

Video apparently cutted some frame at start... it's normal ?

My setup it's actually:
Pi2 whit latest OSMC - Latest addons 5.5.0 alpha7 (but this is append at every version...also old version).

I have noticied this........ when i launch a video there's somethigs like cutted at very fist half seconds.
Apparently it's somethigs like some frame it's skipped or similar........... i don't have idea this if it's normal or not.
This append also if i start a video and step back to 0 seconds..... it's for skip the initial ads ?

Add watched videos to YouTube history

Currently, videos I watch through the plugin aren't being added to my YouTube watch history, making it difficult to keep track of what I've watched between devices. Would love to see that change in a future version.

French language update for addon Youtube

Hello,
I come to you to give my contribution I updated the translation in French of the addon youtube for kodi
If you could put it in the next update
In thanking you
Have a good day

Support for webm(vp9/opus) streams

Is it possible to support the webm streams (vp9&opus)?

e.g. all available streams for yYanlaOOpsQ
Youtube Addon can only play the old formats and the dash formates in the mpd (only mp4 streams).

youtube-dl -F https://www.youtube.com/watch?v=yYanlaOOpsQ
[youtube] yYanlaOOpsQ: Downloading webpage
[youtube] yYanlaOOpsQ: Downloading video info webpage
[youtube] yYanlaOOpsQ: Extracting video information
[youtube] yYanlaOOpsQ: Downloading MPD manifest
[info] Available formats for yYanlaOOpsQ:
format code extension resolution note
249 webm audio only DASH audio 57k , opus @ 50k, 10.15MiB
250 webm audio only DASH audio 74k , opus @ 70k, 13.18MiB
171 webm audio only DASH audio 124k , vorbis@128k, 23.08MiB
140 m4a audio only DASH audio 129k , m4a_dash container, mp4a.40.2@128k (44100Hz), 27.29MiB
251 webm audio only DASH audio 142k , opus @160k, 25.71MiB
160 mp4 256x144 DASH video 118k , avc1.4d400c, 30fps, video only, 18.03MiB
278 webm 256x144 144p 119k , webm container, vp9, 30fps, video only, 19.17MiB
133 mp4 426x240 DASH video 255k , avc1.4d4015, 30fps, video only, 52.80MiB
242 webm 426x240 240p 273k , vp9, 30fps, video only, 42.00MiB
243 webm 640x360 360p 494k , vp9, 30fps, video only, 79.37MiB
134 mp4 640x360 DASH video 655k , avc1.4d401e, 30fps, video only, 108.26MiB
244 webm 854x480 480p 911k , vp9, 30fps, video only, 146.15MiB
135 mp4 854x480 DASH video 1219k , avc1.4d401f, 30fps, video only, 208.31MiB
247 webm 1280x720 720p 2083k , vp9, 30fps, video only, 298.86MiB
136 mp4 1280x720 720p 2495k , avc1.4d401f, 30fps, video only, 422.04MiB
302 webm 1280x720 720p60 3160k , vp9, 60fps, video only, 492.94MiB
298 mp4 1280x720 DASH video 3636k , avc1.4d4020, 60fps, video only, 646.10MiB
248 webm 1920x1080 1080p 4335k , vp9, 30fps, video only, 544.22MiB
137 mp4 1920x1080 1080p 4658k , avc1.640028, 30fps, video only, 780.56MiB
303 webm 1920x1080 1080p60 5438k , vp9, 60fps, video only, 856.81MiB
299 mp4 1920x1080 DASH video 6024k , avc1.64002a, 60fps, video only, 1.08GiB
264 mp4 2560x1440 DASH video 10779k , avc1.640032, 30fps, video only, 1.86GiB
271 webm 2560x1440 1440p 10833k , vp9, 30fps, video only, 1.77GiB
308 webm 2560x1440 1440p60 15585k , vp9, 60fps, video only, 2.60GiB
17 3gp 176x144 small , mp4v.20.3, mp4a.40.2@ 24k
36 3gp 320x180 small , mp4v.20.3, mp4a.40.2
43 webm 640x360 medium , vp8.0, vorbis@128k
18 mp4 640x360 medium , avc1.42001E, mp4a.40.2@ 96k
22 mp4 1280x720 hd720 , avc1.64001F, mp4a.40.2@192k (best)
`
the streams can be found in -> adaptive_fmts : https://github.com/jdf76/plugin.video.youtube/blob/master/resources/lib/youtube_plugin/youtube/helper/video_info.py#L598

greetings
monarc

Enable plugin to be used in widgets

The Kodi 17 Estuary skin and Estuary mod makes it easy to configure YouTube widgets on the home menu. When you have more than one widget the plugin sometimes errors with a "database is locked error". On slower devices this happens all the time. It would be great if the plugin could be enhanced to allow concurrent database access without failing. Thanks.

Example Home Page Menu
2017-04-15 08_47_42-clipboard

Example Error
07:21:35.933 T:3567252384 ERROR: EXCEPTION Thrown (PythonToCppException) : -->Python callback/script returned the following error<-- - NOTE: IGNORING THIS CAN LEAD TO MEMORY LEAKS! Error Type: <class 'sqlite3.OperationalError'> Error Contents: database is locked Traceback (most recent call last): File "/storage/.kodi/addons/plugin.video.youtube/default.py", line 7, in <module> runner.run(__provider__) File "/storage/.kodi/addons/plugin.video.youtube/resources/lib/kodion/runner.py", line 32, in run __RUNNER__.run(provider, context) File "/storage/.kodi/addons/plugin.video.youtube/resources/lib/kodion/impl/xbmc/xbmc_runner.py", line 23, in run results = provider.navigate(context) File "/storage/.kodi/addons/plugin.video.youtube/resources/lib/kodion/abstract_provider.py", line 93, in navigate result = method(context, re_match) File "/storage/.kodi/addons/plugin.video.youtube/resources/lib/kodion/register_provider_path.py", line 12, in wrapper return func(*args, **kwargs) File "/storage/.kodi/addons/plugin.video.youtube/resources/lib/youtube/provider.py", line 397, in _on_yt_specials return yt_specials.process(category, self, context, re_match) File "/storage/.kodi/addons/plugin.video.youtube/resources/lib/youtube/helper/yt_specials.py", line 246, in process return _process_popular_right_now(provider, context, re_match) File "/storage/.kodi/addons/plugin.video.youtube/resources/lib/youtube/helper/yt_specials.py", line 47, in _process_popular_right_now result.extend(v3.response_to_items(provider, context, json_data)) File "/storage/.kodi/addons/plugin.video.youtube/resources/lib/youtube/helper/v3.py", line 213, in response_to_items result.extend(_process_list_response(provider, context, json_data)) File "/storage/.kodi/addons/plugin.video.youtube/resources/lib/youtube/helper/v3.py", line 198, in _process_list_response utils.update_video_infos(provider, context, video_id_dict, playlist_item_id_dict, channel_items_dict) File "/storage/.kodi/addons/plugin.video.youtube/resources/lib/youtube/helper/utils.py", line 164, in update_video_infos video_data = resource_manager.get_videos(video_ids) File "/storage/.kodi/addons/plugin.video.youtube/resources/lib/youtube/helper/resource_manager.py", line 109, in get_videos result.update(self._update_videos(list_of_50)) File "/storage/.kodi/addons/plugin.video.youtube/resources/lib/youtube/helper/resource_manager.py", line 81, in _update_videos video_ids_to_update) File "/storage/.kodi/addons/plugin.video.youtube/resources/lib/kodion/utils/function_cache.py", line 108, in get self._set(cache_id, cached_data) File "/storage/.kodi/addons/plugin.video.youtube/resources/lib/kodion/utils/storage.py", line 134, in _set self._execute(True, query, values=[item_id, now, _encode(item)]) File "/storage/.kodi/addons/plugin.video.youtube/resources/lib/kodion/utils/storage.py", line 79, in _execute return self._cursor.execute(query, values) OperationalError: database is locked -->End of Python script error report<--

API Key Input Mangling, Client Secret

Steps to reproduce the problem:

  • Run Kodi 17.3 on LibreELEC 8.0.2 (rPi 3)
  • YouTube Add-On 5.4.1, freshly installed (both of its folders deleted, installed from zip)
  • Enter personal YouTube/Google API Key details
  • Attempt Sign In

What should happen:

  • Sign In successful
  • Key info in settings.xml corresponds to that typed

What happens

  • Error 401 when logging in
  • Client Secret field of settings.xml has a spurious extra character at the start

Sign In does work when manually inputting the details into the file, the problem seems to be when inputting it via the Kodi itself.

This happened to me twice in a row, but I sadly didn't take photographs. If you are unable to reproduce yourself, I can do this again, showing the first few characters of each key on-screen and in the xml file.

If you would like any further info, please don't hesitate to let me know.

Search and Related Videos ERROR

drrak Wrote:
Google translator:
The search or related option crashes the plugin (sometimes). Fortunately, the back button works and the search (or related) is running again normally.

RPi3, Kodi 17.3, LibreELEC 8.0.2, YouTube 5.4.3

kodi.log:

16:00:11.169 T:1716515744  NOTICE: [plugin.video.youtube] Startup: detected Krypton (Kodi-17.3), setting DASH_SUPPORT_BUILTIN = False, DASH_SUPPORT_ADDON = True
16:00:54.188 T:1961804544   ERROR: Control 55 in window 10025 has been asked to focus, but it can't
16:00:57.860 T:1716515744  NOTICE: [plugin.video.youtube] Running: YouTube (5.4.3) on Krypton (Kodi-17.3) with Python 2.7.13
16:00:58.071 T:1716515744   ERROR: /storage/.kodi/addons/script.module.requests/lib/requests/packages/urllib3/connectionpool.py:843: InsecureRequestWarning: Unverified HTTPS request is being made. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings
                                              InsecureRequestWarning)
16:01:13.444 T:1716515744   ERROR: Previous line repeats 1 times.
16:01:13.444 T:1716515744  NOTICE: [plugin.video.youtube] Running: YouTube (5.4.3) on Krypton (Kodi-17.3) with Python 2.7.13
16:02:52.254 T:1961804544  NOTICE: Previous line repeats 2 times.
16:02:52.255 T:1961804544   ERROR: GetDirectory - Error getting plugin://plugin.video.youtube/kodion/search/query/?q=arcade+fight+stick+cut
16:02:52.257 T:1961804544   ERROR: CGUIMediaWindow::GetDirectory(plugin://plugin.video.youtube/kodion/search/query/?q=arcade+fight+stick+cut) failed
16:02:53.097 T:1716515744  NOTICE: [plugin.video.youtube] Running: YouTube (5.4.3) on Krypton (Kodi-17.3) with Python 2.7.13
16:02:53.451 T:1961804544   ERROR: GetDirectory - Error getting plugin://plugin.video.youtube/kodion/search/input/
16:02:53.453 T:1961804544   ERROR: CGUIMediaWindow::GetDirectory(plugin://plugin.video.youtube/kodion/search/input/) failed
16:02:54.405 T:1310708640  NOTICE: [plugin.video.youtube] Running: YouTube (5.4.3) on Krypton (Kodi-17.3) with Python 2.7.13

Enable support of Multichannel Audio

I'm using the last version of the addon on LibreELEC (Kodi 17).
If I try to watch a YouTube video with Multichannel audio (for example Dolby Digital 5.1) the audio in output is always 2.0 channel (Stereo) with AAC Codec.
My setup is to use Audio Passthrough via HDMI (I have an AV Receiver), and I correctly can listen Multichannel audio such as Dolby Digital, DTS, etc...

Please, is it possible to supports Multichannel audio (Dolby, DTS, etc..)?
May be is it related to the DASH support in the addon?

Thanks.

MPEG-DASH option is inactive

On Kodi nightly and beta-5 (android) latest version of your plugin has gray mpeg-dash option always turned off so the highest resolution aviable to me is 720p. In Kodi's extensions all inputstream extensions are enabled.

Small typo on the greek translation

Line 650 on the greek version of strings.po says

"ฮœฮญฮณฮตฮธฮฟฯ‚ ฮตฮนฮบฮฟฮฝฮนฮดฮฏฯ‰ฮฝ ฯ€ฯฮฟฮตฯƒฮบฯŒฯ€ฮนฯƒฮทฯ‚"

while it should be

"ฮœฮญฮณฮตฮธฮฟฯ‚ ฮตฮนฮบฮฟฮฝฮนฮดฮฏฯ‰ฮฝ ฯ€ฯฮฟฮตฯ€ฮนฯƒฮบฯŒฯ€ฮทฯƒฮทฯ‚"

History playlist should work like Watch Later playlist

I am aware that the Watch Later playlist works if you make the id WL. If you look at https://developers.google.com/youtube/v3/docs/channels/list that is because that response tells you watchLater is WL. That same response states that watchHistory is HL. I tried that as the custom playlist id and it doesn't error out just a blank playlist. If there any difference that is causing it to not work as these playlist seems to function the same way?

Youtube videos won't play. Problem with 'inject_into_urllib3'

Apologies if this has been reported before, but Youtube doesn't seem to work on my Kodi.

I have kodi 17 running on a raspbian jessie. PyOpenSSL is v0.13.

Relevant error log is as follows,

12:19:11.625 T:2572260272   ERROR: EXCEPTION Thrown (PythonToCppException) : -->Python callback/script returned the following error<--
                                             - NOTE: IGNORING THIS CAN LEAD TO MEMORY LEAKS!
                                            Error Type: <type 'exceptions.AttributeError'>
                                            Error Contents: 'module' object has no attribute 'inject_into_urllib3'
                                            Traceback (most recent call last):
                                              File "/home/pi/.kodi/addons/plugin.video.youtube/resources/lib/startup.py", line 3, in <module>
                                                from youtube_plugin.kodion.impl import Context
                                              File "/home/pi/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/kodion/__init__.py", line 17, in <module>
                                                from requests import api as client
                                              File "/home/pi/.kodi/addons/script.module.requests/lib/requests/__init__.py", line 53, in <module>
                                                pyopenssl.inject_into_urllib3()
                                            AttributeError: 'module' object has no attribute 'inject_into_urllib3'
                                            -->End of Python script error report<--

YouTube playlist always start at the second video

Hello

I have found a bug when trying to play a playlist from YouTube.

I have go to YouTube mobile app then search for any playlist. After that just share to Yaste which is forwarded YouTube playlist to Kodi YouTube addon. The problem is when YouTube addon play the playlist, it always play at the second video of that playlist.

Cloud you please find and investigate this issue. You can contact me anytime, if you need more information.

Thank you

Lose video and audio after 3-5 seconds for 3 seconds on Krypton.

Youtube ver 5.3.8. When starting various videos I temporarily lose video and audio after 3-5 seconds for 3 seconds. For example, timeline goes from 00:00:03 to 00:00:06 while screen is black. Rewinding video to beginning and no issue. Running Libreelec Krypton v7.95.2. MPEG-DASH enabled.

Unable to play youtube videos - ERROR: CCurlFile::Stat - Failed: HTTP response code said error(22)

Hi,

Since this morning i'm unable to play youtube videos, i also tried to new alpha version and same error:

kodi.log :

17:36:49 1413.354370 T:1237316592 ERROR: Previous line repeats 1 times.
17:36:49 1413.354614 T:1237316592 NOTICE: [plugin.video.youtube] Running: YouTube (5.3.13alpha5) on Jarvis (Kodi-16.1) with Python 2.7.9
17:36:49 1413.569946 T:1237316592 ERROR: /home/osmc/.kodi/addons/script.module.requests/lib/requests/packages/urllib3/connectionpool.py:843: InsecureRequestWarning: Unverified HTTPS request is being made. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings
InsecureRequestWarning)
17:36:50 1413.883545 T:1237316592 NOTICE: [plugin.video.youtube] Unable to use mpeg-dash for NiwqRSCWw2g, unable to decipher signature. Attempting fallback play method...
17:36:50 1414.010376 T:1237316592 ERROR: /home/osmc/.kodi/addons/script.module.requests/lib/requests/packages/urllib3/connectionpool.py:843: InsecureRequestWarning: Unverified HTTPS request is being made. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings
InsecureRequestWarning)
17:36:51 1414.802246 T:1956344752 ERROR: CCurlFile::Stat - Failed: HTTP response code said error(22) for https://r14---sn-2gb7ln76.googlevideo.com/videoplayback?clen=16510461&gir=yes&mime=video/mp4&key=yt6&itag=18&initcwndbps=1761250&lmt=1457622374513400&source=youtube&gcr=cz&ipbits=0&expire=1495143410&upn=JcjjTMLewgA&sparams=clen,dur,ei,gcr,gir,id,initcwndbps,ip,ipbits,itag,lmt,mime,mm,mn,ms,mv,pl,ratebypass,requiressl,source,upn,expire&id=o-ALmu9X3mqGlQqEcEMXkWH2DlGc_8NCVCCKOi3GeDAY3I&dur=200.132&requiressl=yes&mm=31&pl=16&mn=sn-2gb7ln76&ms=au&mt=1495121732&mv=m&ip=XXX.XXX.XXX.XXX&ei=kr8dWZGRFYm6Wa-JsbgK&ratebypass=yes&signature=061875EF0C15D327779C14629DF7542E0BDDB63D.34ABD99039F5523511B3853B184B9778773711A7
17:36:51 1415.001099 T:1956344752 NOTICE: DVDPlayer: Opening: https://r14---sn-2gb7ln76.googlevideo.com/videoplayback?clen=16510461&gir=yes&mime=video/mp4&key=yt6&itag=18&initcwndbps=1761250&lmt=1457622374513400&source=youtube&gcr=cz&ipbits=0&expire=1495143410&upn=JcjjTMLewgA&sparams=clen,dur,ei,gcr,gir,id,initcwndbps,ip,ipbits,itag,lmt,mime,mm,mn,ms,mv,pl,ratebypass,requiressl,source,upn,expire&id=o-ALmu9X3mqGlQqEcEMXkWH2DlGc_8NCVCCKOi3GeDAY3I&dur=200.132&requiressl=yes&mm=31&pl=16&mn=sn-2gb7ln76&ms=au&mt=1495121732&mv=m&ip=XXX.XXX.XXX.XXX&ei=kr8dWZGRFYm6Wa-JsbgK&ratebypass=yes&signature=061875EF0C15D327779C14629DF7542E0BDDB63D.34ABD99039F5523511B3853B184B9778773711A7
17:36:51 1415.001343 T:1956344752 WARNING: CDVDMessageQueue(player)::Put MSGQ_NOT_INITIALIZED
17:36:51 1415.012207 T:1064301552 NOTICE: Creating InputStream
17:36:51 1415.197144 T:1064301552 ERROR: CCurlFile::Stat - Failed: HTTP response code said error(22) for https://r14---sn-2gb7ln76.googlevideo.com/videoplayback?clen=16510461&gir=yes&mime=video/mp4&key=yt6&itag=18&initcwndbps=1761250&lmt=1457622374513400&source=youtube&gcr=cz&ipbits=0&expire=1495143410&upn=JcjjTMLewgA&sparams=clen,dur,ei,gcr,gir,id,initcwndbps,ip,ipbits,itag,lmt,mime,mm,mn,ms,mv,pl,ratebypass,requiressl,source,upn,expire&id=o-ALmu9X3mqGlQqEcEMXkWH2DlGc_8NCVCCKOi3GeDAY3I&dur=200.132&requiressl=yes&mm=31&pl=16&mn=sn-2gb7ln76&ms=au&mt=1495121732&mv=m&ip=XXX.XXX.XXX.XXX&ei=kr8dWZGRFYm6Wa-JsbgK&ratebypass=yes&signature=061875EF0C15D327779C14629DF7542E0BDDB63D.34ABD99039F5523511B3853B184B9778773711A7
17:36:51 1415.392456 T:1064301552 ERROR: CCurlFile::FillBuffer - Failed: HTTP returned error 403
17:36:51 1415.392700 T:1064301552 ERROR: CCurlFile::Open failed with code 403 for https://r14---sn-2gb7ln76.googlevideo.com/videoplayback?clen=16510461&gir=yes&mime=video/mp4&key=yt6&itag=18&initcwndbps=1761250&lmt=1457622374513400&source=youtube&gcr=cz&ipbits=0&expire=1495143410&upn=JcjjTMLewgA&sparams=clen,dur,ei,gcr,gir,id,initcwndbps,ip,ipbits,itag,lmt,mime,mm,mn,ms,mv,pl,ratebypass,requiressl,source,upn,expire&id=o-ALmu9X3mqGlQqEcEMXkWH2DlGc_8NCVCCKOi3GeDAY3I&dur=200.132&requiressl=yes&mm=31&pl=16&mn=sn-2gb7ln76&ms=au&mt=1495121732&mv=m&ip=XXX.XXX.XXX.XXX&ei=kr8dWZGRFYm6Wa-JsbgK&ratebypass=yes&signature=061875EF0C15D327779C14629DF7542E0BDDB63D.34ABD99039F5523511B3853B184B9778773711A7
17:36:51 1415.393066 T:1064301552 ERROR: Open - failed to open source https://r14---sn-2gb7ln76.googlevideo.com/videoplayback?clen=16510461&gir=yes&mime=video/mp4&key=yt6&itag=18&initcwndbps=1761250&lmt=1457622374513400&source=youtube&gcr=cz&ipbits=0&expire=1495143410&upn=JcjjTMLewgA&sparams=clen,dur,ei,gcr,gir,id,initcwndbps,ip,ipbits,itag,lmt,mime,mm,mn,ms,mv,pl,ratebypass,requiressl,source,upn,expire&id=o-ALmu9X3mqGlQqEcEMXkWH2DlGc_8NCVCCKOi3GeDAY3I&dur=200.132&requiressl=yes&mm=31&pl=16&mn=sn-2gb7ln76&ms=au&mt=1495121732&mv=m&ip=XXX.XXX.XXX.XXX&ei=kr8dWZGRFYm6Wa-JsbgK&ratebypass=yes&signature=061875EF0C15D327779C14629DF7542E0BDDB63D.34ABD99039F5523511B3853B184B9778773711A7
17:36:51 1415.393433 T:1064301552 ERROR: CDVDPlayer::OpenInputStream - error opening [https://r14---sn-2gb7ln76.googlevideo.com/videoplayback?clen=16510461&gir=yes&mime=video/mp4&key=yt6&itag=18&initcwndbps=1761250&lmt=1457622374513400&source=youtube&gcr=cz&ipbits=0&expire=1495143410&upn=JcjjTMLewgA&sparams=clen,dur,ei,gcr,gir,id,initcwndbps,ip,ipbits,itag,lmt,mime,mm,mn,ms,mv,pl,ratebypass,requiressl,source,upn,expire&id=o-ALmu9X3mqGlQqEcEMXkWH2DlGc_8NCVCCKOi3GeDAY3I&dur=200.132&requiressl=yes&mm=31&pl=16&mn=sn-2gb7ln76&ms=au&mt=1495121732&mv=m&ip=XXX.XXX.XXX.XXX&ei=kr8dWZGRFYm6Wa-JsbgK&ratebypass=yes&signature=061875EF0C15D327779C14629DF7542E0BDDB63D.34ABD99039F5523511B3853B184B9778773711A7]
17:36:51 1415.393555 T:1064301552 NOTICE: CDVDPlayer::OnExit()
17:36:51 1415.395630 T:1956344752 ERROR: Playlist Player: skipping unplayable item: 0, path [plugin://plugin.video.youtube/play/?video_id=NiwqRSCWw2g]
17:36:51 1415.406372 T:1734570992 NOTICE: 1Channel: Service: Playback Stopped
17:36:51 1415.406738 T:1734570992 NOTICE: 1Channel: Service: Resetting...
17:36:51 1415.406860 T:1956344752 NOTICE: CDVDPlayer::CloseFile()
17:36:51 1415.406982 T:1956344752 NOTICE: DVDPlayer: waiting for threads to exit
17:36:51 1415.406982 T:1956344752 NOTICE: DVDPlayer: finished waiting
17:36:51 1415.407104 T:1956344752 NOTICE: CDVDPlayer::CloseFile()
17:36:51 1415.407227 T:1956344752 NOTICE: DVDPlayer: waiting for threads to exit
17:36:51 1415.407227 T:1956344752 NOTICE: DVDPlayer: finished waiting
17:36:51 1415.564575 T:1946153968 NOTICE: Found 2 Lists of Devices
17:36:51 1415.564697 T:1946153968 NOTICE: Enumerated PI devices:
17:36:51 1415.564697 T:1946153968 NOTICE: Device 1
17:36:51 1415.564941 T:1946153968 NOTICE: m_deviceName : HDMI
17:36:51 1415.564941 T:1946153968 NOTICE: m_displayName : HDMI
17:36:51 1415.565063 T:1946153968 NOTICE: m_displayNameExtra:
17:36:51 1415.565063 T:1946153968 NOTICE: m_deviceType : AE_DEVTYPE_HDMI
17:36:51 1415.565186 T:1946153968 NOTICE: m_channels : FL,FR
17:36:51 1415.565186 T:1946153968 NOTICE: m_sampleRates : 8000,11025,16000,22050,24000,32000,44100,48000,88200,96000,176400,192000
17:36:51 1415.565308 T:1946153968 NOTICE: m_dataFormats : AE_FMT_FLOAT,AE_FMT_S32NE,AE_FMT_S16NE,AE_FMT_S32LE,AE_FMT_S16LE,AE_FMT_FLOATP,AE_FMT_S32NEP,AE_FMT_S16NEP,AE_FMT_AC3,AE_FMT_DTS,AE_FMT_EAC3
17:36:51 1415.565308 T:1946153968 NOTICE: Device 2
17:36:51 1415.565430 T:1946153968 NOTICE: m_deviceName : Analogue
17:36:51 1415.565430 T:1946153968 NOTICE: m_displayName : Analogue
17:36:51 1415.565552 T:1946153968 NOTICE: m_displayNameExtra:
17:36:51 1415.565552 T:1946153968 NOTICE: m_deviceType : AE_DEVTYPE_PCM
17:36:51 1415.565674 T:1946153968 NOTICE: m_channels : FL,FR
17:36:51 1415.565674 T:1946153968 NOTICE: m_sampleRates : 48000
17:36:51 1415.565674 T:1946153968 NOTICE: m_dataFormats : AE_FMT_FLOAT,AE_FMT_S32LE,AE_FMT_S16LE,AE_FMT_FLOATP,AE_FMT_S32NEP,AE_FMT_S16NEP
17:36:51 1415.565796 T:1946153968 NOTICE: Device 3
17:36:51 1415.565918 T:1946153968 NOTICE: m_deviceName : Both
17:36:51 1415.565918 T:1946153968 NOTICE: m_displayName : HDMI and Analogue
17:36:51 1415.566040 T:1946153968 NOTICE: m_displayNameExtra:
17:36:51 1415.566040 T:1946153968 NOTICE: m_deviceType : AE_DEVTYPE_PCM
17:36:51 1415.566040 T:1946153968 NOTICE: m_channels : FL,FR
17:36:51 1415.566162 T:1946153968 NOTICE: m_sampleRates : 48000
17:36:51 1415.566162 T:1946153968 NOTICE: m_dataFormats : AE_FMT_FLOAT,AE_FMT_S32LE,AE_FMT_S16LE,AE_FMT_FLOATP,AE_FMT_S32NEP,AE_FMT_S16NEP
17:36:51 1415.566284 T:1946153968 NOTICE: Enumerated ALSA devices:
17:36:51 1415.566284 T:1946153968 NOTICE: Device 1
17:36:51 1415.566406 T:1946153968 NOTICE: m_deviceName : @
17:36:51 1415.566406 T:1946153968 NOTICE: m_displayName : Default (bcm2835 ALSA bcm2835 ALSA)
17:36:51 1415.566528 T:1946153968 NOTICE: m_displayNameExtra:
17:36:51 1415.566528 T:1946153968 NOTICE: m_deviceType : AE_DEVTYPE_PCM
17:36:51 1415.566650 T:1946153968 NOTICE: m_channels : FL,FR
17:36:51 1415.566650 T:1946153968 NOTICE: m_sampleRates : 8000,11025,16000,22050,32000,44100,48000
17:36:51 1415.566772 T:1946153968 NOTICE: m_dataFormats : AE_FMT_S16NE,AE_FMT_S16LE,AE_FMT_U8
17:36:55 1418.713501 T:1064301552 NOTICE: [plugin.video.youtube] Running: YouTube (5.3.13
alpha5) on Jarvis (Kodi-16.1) with Python 2.7.9
17:36:55 1418.903931 T:1064301552 ERROR: /home/osmc/.kodi/addons/script.module.requests/lib/requests/packages/urllib3/connectionpool.py:843: InsecureRequestWarning: Unverified HTTPS request is being made. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings
InsecureRequestWarning)

Go-to-Page in playlists

Scenario:
Playlist from a subsciption with a lot(>500) of items

"Problem":
You need to select "Next page (#)" several times even if 50 items are already displayed to get to the last page(or pages at the end of the list)

Question:
Would it be possible(or is it possible already?) to have a "Go-to-Page #" in the side menu?

Playlists not working in home screen

Hi. I've got some strm/nfo files including Youtube playlists with videos for the kids. Here's a sample: playlist.strm.txt, playlist.nfo.txt (txt extension added because of github).

They can be played via the web interface, or by browsing my movies collection, here's a log: working.log. But if I try to play them from the home screen via "random videos", "recently added", etc. they never work, ever. Sometimes there's an error shown in the screen, but not always. Here's also a sample log: not_working.log

Note that if the strm file contains a single video instead of a playlist, everything works OK. I also made tests with different skins including Estuary, Omni, Box and Osmc, but the behaviour is always the same. I would say the problem started with one of the latest plugin updates, but I'm not 100% sure. Thanks.

Live streams in subscribed channels

Hi!
When a subscribed channel provides a live stream, it cannot be found via subscriptions. It can only be found and played via a search.

pyopenssl problem on Linux Mint 18.2

I was always getting errors accessing the addon.
System is Linux Mint 18.2 .

The error log is :

16:47:10.848 T:139787398964992 NOTICE: [plugin.video.youtube] Running: YouTube (5.4.1) on Krypton (Kodi-17.3) with Python 2.7.12
16:47:19.083 T:139787398964992 NOTICE: Previous line repeats 1 times.
16:47:19.083 T:139787398964992 ERROR: EXCEPTION Thrown (PythonToCppException) : -->Python callback/script returned the following error<--

  • NOTE: IGNORING THIS CAN LEAD TO MEMORY LEAKS!
    Error Type: <class 'cryptography.exceptions.InternalError'>
    Error Contents: Unknown OpenSSL error. Please file an issue at https://github.com/pyca/cryptography/issues with information on how to reproduce this. ([_OpenSSLError(code=621174887L, lib=37, func=102, reason=103), _OpenSSLError(code=621215847L, lib=37, func=112, reason=103), _OpenSSLError(code=638279812L, lib=38, func=182, reason=132), _OpenSSLError(code=637968500L, lib=38, func=106, reason=116)])
    Traceback (most recent call last):
    File "/home/emo/.kodi/addons/plugin.video.youtube/resources/lib/default.py", line 3, in
    from youtube_plugin.kodion import runner
    File "/home/emo/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/kodion/init.py", line 17, in
    from requests import api as client
    File "/home/emo/.kodi/addons/script.module.requests/lib/requests/init.py", line 52, in
    from .packages.urllib3.contrib import pyopenssl
    File "/home/emo/.kodi/addons/script.module.requests/lib/requests/packages/urllib3/contrib/pyopenssl.py", line 49, in
    from cryptography.hazmat.backends.openssl import backend as openssl_backend
    File "/usr/lib/python2.7/dist-packages/cryptography/hazmat/backends/openssl/init.py", line 7, in
    from cryptography.hazmat.backends.openssl.backend import backend
    File "/usr/lib/python2.7/dist-packages/cryptography/hazmat/backends/openssl/backend.py", line 2299, in
    backend = Backend()
    File "/usr/lib/python2.7/dist-packages/cryptography/hazmat/backends/openssl/backend.py", line 716, in init
    self.activate_osrandom_engine()
    File "/usr/lib/python2.7/dist-packages/cryptography/hazmat/backends/openssl/backend.py", line 738, in activate_osrandom_engine
    self.openssl_assert(e != self._ffi.NULL)
    File "/usr/lib/python2.7/dist-packages/cryptography/hazmat/backends/openssl/backend.py", line 719, in openssl_assert
    return binding._openssl_assert(self._lib, ok)
    File "/usr/lib/python2.7/dist-packages/cryptography/hazmat/bindings/openssl/binding.py", line 43, in _openssl_assert
    errors
    InternalError: Unknown OpenSSL error. Please file an issue at https://github.com/pyca/cryptography/issues with information on how to reproduce this. ([_OpenSSLError(code=621174887L, lib=37, func=102, reason=103), _OpenSSLError(code=621215847L, lib=37, func=112, reason=103), _OpenSSLError(code=638279812L, lib=38, func=182, reason=132), _OpenSSLError(code=637968500L, lib=38, func=106, reason=116)])
    -->End of Python script error report<--

The solution that worked for me was to upgrade pyopenssl to the latest version (17.2.0) with pip.
sudo pip install pyopenssl -U.

Update translation in French of the addon youtube for kodi

Hello,
I come to you to give my contribution I updated the translation in French of the addon youtube for kodi
If you could put it in the next update
In thanking you
Have a good day

msgctxt "Addon Summary"
msgid "Plugin for YouTube"
msgstr "Plugin pour YouTube"

msgctxt "Addon Description"
msgid "YouTube is a one of the biggest video-sharing websites of the world."
msgstr "YouTube est l'un des plus grands sites de partage de vidรฉos du monde."

msgctxt "#30000"
msgid "General"
msgstr "Gรฉnรฉral"

msgctxt "#30001"
msgid "Username"
msgstr "Identifiant"

msgctxt "#30002"
msgid "Password"
msgstr "Mot de passe"

msgctxt "#30007"
msgid "Use MPEG-DASH"
msgstr "Utiliser MPEG-DASH"

msgctxt "#30008"
msgid "Configure inputstream.adaptive"
msgstr "Configurer inputstream.adaptive"

msgctxt "#30009"
msgid "Always ask for the video quality"
msgstr "Toujours demander la qualitรฉ de la vidรฉo"

msgctxt "#30010"
msgid "Video Quality"
msgstr "Qualitรฉ vidรฉo"

msgctxt "#30011"
msgid "480p"
msgstr "480p"

msgctxt "#30012"
msgid "720p (HD)"
msgstr "720p (HD)"

msgctxt "#30013"
msgid "1080p (HD)"
msgstr "1080p (HD)"

msgctxt "#30014"
msgid "2160p (4k)"
msgstr "2160p (4K)"

msgctxt "#30015"
msgid "4320p (8k)"
msgstr "4320p (8K)"

msgctxt "#30016"
msgid "240p"
msgstr "240p"

msgctxt "#30017"
msgid "360p"
msgstr "360p"

msgctxt "#30018"
msgid "1080p Live / 720p (HD)"
msgstr "1080p Live / 720p (HD)"

msgctxt "#30020"
msgid "Allow 3D"
msgstr "Autoriser la 3D"

msgctxt "#30021"
msgid "Show Fanart"
msgstr "Afficher les fanarts"

msgctxt "#30022"
msgid "Items per page"
msgstr "Nombre d'รฉlรฉments par page"

msgctxt "#30023"
msgid "Search History Size"
msgstr "Taille de l'historique de recherche"

msgctxt "#30024"
msgid "Cache Size (MB)"
msgstr "Taille du cache (Mo)"

msgctxt "#30025"
msgid "Enable setup-wizard"
msgstr "Activer l'assistant de dรฉmarrage"

msgctxt "#30026"
msgid "Override View"
msgstr "Remplacer l'affichage"

msgctxt "#30027"
msgid "View: Default"
msgstr "Affichage par dรฉfaut"

msgctxt "#30028"
msgid "View: Episodes"
msgstr "Affichage par รฉpisodes"

msgctxt "#30029"
msgid "View: Movies"
msgstr "Affichage par films"

msgctxt "#30030"
msgid "Execute setup-wizard?"
msgstr "Exรฉcuter l'assistant de dรฉmarrage ?"

msgctxt "#30031"
msgid "Advanced"
msgstr "Avancรฉ"

msgctxt "#30032"
msgid "View: TV Shows"
msgstr "Affichage par sรฉries TV"

msgctxt "#30033"
msgid "View: Songs"
msgstr "Affichage par chansons"

msgctxt "#30034"
msgid "View: Artists"
msgstr "Affichage par artistes"

msgctxt "#30035"
msgid "View: Albums"
msgstr "Affichage par albums"

msgctxt "#30036"
msgid "Support alternative player"
msgstr "Support de lecteur alternatif"

msgctxt "#30037"
msgid "Custom Watch Later Playlist ID"
msgstr "Personnaliser l'ID de la Playlist 'Regarder plus tard'"

msgctxt "#30038"
msgid "Custom History Playlist ID"
msgstr "Personnaliser l'ID historique de la liste de lecture"

msgctxt "#30100"
msgid "Favorites"
msgstr "Favoris"

msgctxt "#30101"
msgid "Add to addon favs"
msgstr "Ajouter aux favoris"

msgctxt "#30102"
msgid "Search"
msgstr "Rechercher"

msgctxt "#30103"
msgid "Library"
msgstr "Bibliothรจque"

msgctxt "#30104"
msgid "Highlights"
msgstr "En vedette"

msgctxt "#30105"
msgid "Archive"
msgstr "Historique"

msgctxt "#30106"
msgid "Next Page (%d)"
msgstr "Page suivante (%d)"

msgctxt "#30107"
msgid "Watch Later"
msgstr "Regarder plus tard"

msgctxt "#30108"
msgid "Remove"
msgstr "Supprimer"

msgctxt "#30109"
msgid "Latest Videos"
msgstr "Derniรจres vidรฉos"

msgctxt "#30110"
msgid "New Search"
msgstr "Nouvelle recherche"

msgctxt "#30111"
msgid "Sign In"
msgstr "Connexion"

msgctxt "#30112"
msgid "Sign Out"
msgstr "Dรฉconnexion"

msgctxt "#30113"
msgid "Rename"
msgstr "Renommer"

msgctxt "#30114"
msgid "Confirm delete"
msgstr "Confirmer la suppression"

msgctxt "#30115"
msgid "Confirm remove"
msgstr "Confirmer la suppression"

msgctxt "#30116"
msgid "Delete "%s"?"
msgstr "Supprimer "%s"?"

msgctxt "#30117"
msgid "Remove "%s"?"
msgstr "Supprimer "%s" ?"

msgctxt "#30118"
msgid "Delete"
msgstr "Supprimer"

msgctxt "#30119"
msgid "Please wait..."
msgstr "Veuillez patienterโ€ฆ"

msgctxt "#30120"
msgid "Clear"
msgstr "Nettoyer"

msgctxt "#30200"
msgid "API Key"
msgstr "Clรฉ de lโ€™API"

msgctxt "#30201"
msgid "API Key"
msgstr "Clรฉ de lโ€™API"

msgctxt "#30202"
msgid "API Id"
msgstr "Id de lโ€™API"

msgctxt "#30203"
msgid "API Secret"
msgstr "API secret"

msgctxt "#30204"
msgid "Enable Personal API Keys"
msgstr "Activer les clรฉs API personnelles"

msgctxt "#30205"
msgid "Use preset API key set"
msgstr "Utiliser un ensemble de clรฉs API prรฉdรฉfinies"

msgctxt "#30500"
msgid "Channels"
msgstr "Chaรฎnes"

msgctxt "#30501"
msgid "Playlists"
msgstr "Listes de lecture"

msgctxt "#30502"
msgid "Go to %s"
msgstr "Aller ร  %s"

msgctxt "#30503"
msgid "Show channel fanart"
msgstr "Afficher le fanart de la chaรฎne"

msgctxt "#30504"
msgid "Subscriptions"
msgstr "Abonnements"

msgctxt "#30505"
msgid "Unsubscribe"
msgstr "Se dรฉsabonner"

msgctxt "#30506"
msgid "Subscribe"
msgstr "S'abonner"

msgctxt "#30507"
msgid "My Channel"
msgstr "Ma chaรฎne"

msgctxt "#30508"
msgid "Liked Videos"
msgstr "Vidรฉos que vous aimez"

msgctxt "#30509"
msgid "History"
msgstr "Historique"

msgctxt "#30510"
msgid "My Subscriptions"
msgstr "Mes abonnements"

msgctxt "#30511"
msgid "Queue video"
msgstr "File dโ€™attente vidรฉo"

msgctxt "#30512"
msgid "Browse Channels"
msgstr "Parcourir les chaines"

msgctxt "#30513"
msgid "Popular right now"
msgstr "Suggestions de vidรฉos"

msgctxt "#30514"
msgid "Related Videos"
msgstr "Vidรฉos similaires"

msgctxt "#30515"
msgid "Auto-Remove from 'Watch Later'"
msgstr "Auto suppression de 'Regarder plus tard'"

msgctxt "#30516"
msgid "Folders"
msgstr "Dossiers"

msgctxt "#30517"
msgid "Subscribe to %s"
msgstr "Souscrire ร  %s"

msgctxt "#30518"
msgid "Go to '%s'"
msgstr "Aller ร  '%s'"

msgctxt "#30519"
msgid "and enter the following code:"
msgstr "et entrer le code suivant :"

msgctxt "#30520"
msgid "Add to..."
msgstr "Ajouter ร ..."

msgctxt "#30521"
msgid "Select playlist"
msgstr "Sรฉlectionner la liste de lecture"

msgctxt "#30522"
msgid "New playlist..."
msgstr "Nouvelle liste de lectureโ€ฆ"

msgctxt "#30523"
msgid "Language"
msgstr "Langue"

msgctxt "#30524"
msgid "Select language"
msgstr "Sรฉlectionner la langue"

msgctxt "#30525"
msgid "Select region"
msgstr "Sรฉlectionner la rรฉgion"

msgctxt "#30526"
msgid "Adjust"
msgstr "Ajuster"

msgctxt "#30527"
msgid "Language and region?"
msgstr "Langue et rรฉgion ?"

msgctxt "#30528"
msgid "Rate..."
msgstr "Noter..."

msgctxt "#30529"
msgid "I like this"
msgstr "J'aime"

msgctxt "#30530"
msgid "I dislike this"
msgstr "Je n'aime pas"

msgctxt "#30531"
msgid "Play all"
msgstr "Tout lire"

msgctxt "#30532"
msgid "Default"
msgstr "Dรฉfaut"

msgctxt "#30533"
msgid "Reverse"
msgstr "Inverser"

msgctxt "#30534"
msgid "Shuffle"
msgstr "Alรฉatoire"

msgctxt "#30535"
msgid "Select the order of the playlist"
msgstr "Sรฉlectionner l'ordre de la liste de lecture"

msgctxt "#30536"
msgid "Updating Playlist..."
msgstr "Mettre ร  jour la liste de lectureโ€ฆ"

msgctxt "#30537"
msgid "Play from here"
msgstr "Lire ร  partir d'ici"

msgctxt "#30538"
msgid "Disliked Videos"
msgstr "Vidรฉos que vous n'aimez pas"

msgctxt "#30539"
msgid "Live"
msgstr "Live"

msgctxt "#30540"
msgid "Play with..."
msgstr "Lire avec..."

msgctxt "#30541"
msgid "Show channel name in description"
msgstr "Afficher le nom de la chaรฎne dans la description"

msgctxt "#30542"
msgid "rtmpe streams are not supported"
msgstr "Le streaming rtmpe n'est pas supportรฉ"

msgctxt "#30543"
msgid "Refresh"
msgstr "Actualiser"

msgctxt "#30544"
msgid "More Links from the description"
msgstr "Plus de liens ร  partir de la description"

msgctxt "#30545"
msgid "No further links found."
msgstr "Aucun autre lien trouvรฉ."

msgctxt "#30546"
msgid "Please log in twice!"
msgstr "Veuillez vous connecter en deux fois !"

msgctxt "#30547"
msgid "You must enable two applications so that YouTube is functioning properly."
msgstr "Vous devez activer les deux applications pour que YouTube fonctionne correctement."

msgctxt "#30548"
msgid "More..."
msgstr "Plusโ€ฆ"

msgctxt "#30549"
msgid "No videos streams found"
msgstr "Aucun flux vidรฉos trouvรฉ"

msgctxt "#30550"
msgid "Region"
msgstr "Rรฉgion"

msgctxt "#30551"
msgid "Recommendations"
msgstr "Recommandations"

msgctxt "#30552"
msgid "Maintenance"
msgstr "Maintenance"

msgctxt "#30553"
msgid "Delete function cache database"
msgstr "Supprimer la base de donnรฉes du cache"

msgctxt "#30554"
msgid "Delete search history database"
msgstr "Supprimer la base de donnรฉes de l'historique des recherches"

msgctxt "#30555"
msgid "Clear function cache"
msgstr "Effacer les fonctions du cache"

msgctxt "#30556"
msgid "Clear search history"
msgstr "Effacer l'historique"

msgctxt "#30557"
msgid "function cache"
msgstr "fonctions cache"

msgctxt "#30558"
msgid "search history"
msgstr "historique des recherches"

msgctxt "#30559"
msgid "Delete settings.xml"
msgstr "Supprimer settings.xml"

msgctxt "#30560"
msgid "Subtitle language(s) to download"
msgstr "Sous-titre langue(s) ร  tรฉlรฉcharger"

msgctxt "#30561"
msgid "None"
msgstr "Aucun"

msgctxt "#30562"
msgid "All"
msgstr "Tous"

msgctxt "#30563"
msgid "Setting"
msgstr "Paramรจtres Kodi"

msgctxt "#30564"
msgid "Setting, English"
msgstr "Paramรจtres, Anglais"

msgctxt "#30565"
msgid "English"
msgstr "Anglais"

msgctxt "#30566"
msgid "Prompt"
msgstr "Sรฉlection langue"

msgctxt "#30567"
msgid "Set as Watch Later"
msgstr "Dรฉfinir comme 'Regarder plus tard'"

msgctxt "#30568"
msgid "Remove as Watch Later"
msgstr "Supprimer 'Regarder plus tard'"

msgctxt "#30569"
msgid "Are you sure you want to remove '%s' as your Watch Later list?"
msgstr "รŠtes-vous sรปr de vouloir supprimer '%s' comme liste 'Regarder plus tard' ?"

msgctxt "#30570"
msgid "Are you sure you want to replace your current Watch Later list with '%s'?"
msgstr "รŠtes-vous sรปr de vouloir remplacer votre liste 'Regarder plus tard' avec "%s" ?"

msgctxt "#30571"
msgid "Set as History"
msgstr "Dรฉfinir comme historique"

msgctxt "#30572"
msgid "Remove as History"
msgstr "Supprimer l'historique"

msgctxt "#30573"
msgid "Are you sure you want to remove '%s' as your History list?"
msgstr "รŠtes-vous sรปr de vouloir supprimer l'historique '%s' de votre liste ?"

msgctxt "#30574"
msgid "Are you sure you want to replace your current History list with '%s'?"
msgstr "รŠtes-vous sรปr que vous voulez remplacer votre liste historique avec '%s' ?"

msgctxt "#30575"
msgid "Succeeded"
msgstr "Rรฉussi"

msgctxt "#30576"
msgid "Failed"
msgstr "ร‰chouรฉ"

msgctxt "#30577"
msgid "Settings"
msgstr "Paramรจtres"

msgctxt "#30578"
msgid "Force SSL Certificate verification"
msgstr "Forcer la vรฉrification du certificat SSL"

msgctxt "#30579"
msgid "MPEG-DASH is enabled in the YouTube settings, however inputstream.adaptive appears to be disabled. Would you like to enable inputstream.adaptive now?"
msgstr "MPEG-DASH est activรฉe dans YouTube, cependant inputstream.adaptative semble รชtre dรฉsactivรฉ. Voulez-vous activer inputstream.adaptive maintenant ?"

Segfault when playing video

I recently update to Kodi v17 and am now getting a segfault when trying to play a video

I've updated the add-on via the manager to version v5.3.12

This is the console output and crash report is attached

extern "Python": function Cryptography_rand_status() called, but @ffi.def_extern() was not called in the current subinterpreter.  Returning 0.
extern "Python": function Cryptography_rand_bytes() called, but @ffi.def_extern() was not called in the current subinterpreter.  Returning 0.
extern "Python": function Cryptography_rand_status() called, but @ffi.def_extern() was not called in the current subinterpreter.  Returning 0.
extern "Python": function Cryptography_rand_bytes() called, but @ffi.def_extern() was not called in the current subinterpreter.  Returning 0.
extern "Python": function Cryptography_rand_status() called, but @ffi.def_extern() was not called in the current subinterpreter.  Returning 0.
extern "Python": function Cryptography_rand_bytes() called, but @ffi.def_extern() was not called in the current subinterpreter.  Returning 0.
extern "Python": function Cryptography_rand_status() called, but @ffi.def_extern() was not called in the current subinterpreter.  Returning 0.
extern "Python": function Cryptography_rand_bytes() called, but @ffi.def_extern() was not called in the current subinterpreter.  Returning 0.
extern "Python": function Cryptography_rand_status() called, but @ffi.def_extern() was not called in the current subinterpreter.  Returning 0.
extern "Python": function Cryptography_rand_bytes() called, but @ffi.def_extern() was not called in the current subinterpreter.  Returning 0.
extern "Python": function Cryptography_rand_status() called, but @ffi.def_extern() was not called in the current subinterpreter.  Returning 0.
extern "Python": function Cryptography_rand_bytes() called, but @ffi.def_extern() was not called in the current subinterpreter.  Returning 0.
extern "Python": function Cryptography_rand_status() called, but @ffi.def_extern() was not called in the current subinterpreter.  Returning 0.
extern "Python": function Cryptography_rand_bytes() called, but @ffi.def_extern() was not called in the current subinterpreter.  Returning 0.
extern "Python": function Cryptography_rand_status() called, but @ffi.def_extern() was not called in the current subinterpreter.  Returning 0.
extern "Python": function Cryptography_rand_bytes() called, but @ffi.def_extern() was not called in the current subinterpreter.  Returning 0.
extern "Python": function Cryptography_rand_status() called, but @ffi.def_extern() was not called in the current subinterpreter.  Returning 0.
extern "Python": function Cryptography_rand_bytes() called, but @ffi.def_extern() was not called in the current subinterpreter.  Returning 0.
extern "Python": function Cryptography_rand_status() called, but @ffi.def_extern() was not called in the current subinterpreter.  Returning 0.
extern "Python": function Cryptography_rand_bytes() called, but @ffi.def_extern() was not called in the current subinterpreter.  Returning 0.
extern "Python": function Cryptography_rand_status() called, but @ffi.def_extern() was not called in the current subinterpreter.  Returning 0.
extern "Python": function Cryptography_rand_bytes() called, but @ffi.def_extern() was not called in the current subinterpreter.  Returning 0.
Segmentation fault (core dumped)
Crash report available at /home/media/kodi_crashlog-20170321_204303.log

kodi_crashlog-20170321_204303.txt

Not sure if there is anything else I can give that's any use?

No longer working on kodi 14.2

After yesterday's (?) update to 5.4.5, youtube no longer works on my kodi 14.2 (openelec 5.0.8, the last 32bit version of openelec). This is what comes out in the log file when trying to launch it.

http://paste.debian.net/987542/
(the paste will be available for 7 more days)

Deleting /storage/.kodi/userdata/addon_data/plugin.video.youtube/ so as to reset the addon's settings results in the same behavior. It does work as it used to on kodi 17.x (on my debian testing x64 and the openelec 8.0.4 on pi zero installation).

Login failed due to 428 HTTP error

Hi all,
I installed OpenElec 7.01 with Kodi 16.1 on my Raspberry PI 3, then added the youtube plugin 5.3.12.

I configured my API key, ID and secret, then I tried to execute the access procedure but without success: as soon as the first youtube access code is displayed on the screen, a "Login Failed" message is shown then the plugin settings window opens.

Because the "Login failed" message is a bit generic, I tweaked the login_client.py source file to have more specific messages: in that way I discovered that the error comes from the source line 178:

if result.status_code != requests.codes.ok:
   raise LoginException('Login Failed')

I modified the message to print out the status code: its value was 428, googling a bit I found that it is due to a missing "If-Match" directive in the Headers section of the request, so I modified the "headers" variable at line 143 to include such directive:

headers = {'Host': 'www.youtube.com',
   'Connection': 'keep-alive',
   'Origin': 'https://www.youtube.com',
   'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/40.0.2214.28 S
   'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8',
   'Accept': '*/*',
   'DNT': '1',
   'Referer': 'https://www.youtube.com/tv',
   'Accept-Encoding': 'gzip, deflate',
   'Accept-Language': 'en-US,en;q=0.8,de;q=0.6',
   'If-Match': '*' }

Then I repeated the access procedure and everything went well.

I'm wondering why noone is signaling this...

Regards
Sergio

Can't play a playlist

Hi,

A playlist of mine cannot be played anymore (but it has been previously). Please see below for log info. If I'm missing something, please let me know. Thank you!

18:53:56 7121.544434 T:1758663664  NOTICE: [plugin.video.youtube] Running: YouTube (5.3.6) on Jarvis (16.1) with Python 2.7.9
18:54:41 7166.189453 T:1434448880  NOTICE: Previous line repeats 1 times.
18:54:41 7166.189941 T:1434448880   ERROR: EXCEPTION Thrown (PythonToCppException) : -->Python callback/script returned the following error<--
                                             - NOTE: IGNORING THIS CAN LEAD TO MEMORY LEAKS!
                                            Error Type: <type 'exceptions.KeyError'>
                                            Error Contents: 'publishedAt'
                                            Traceback (most recent call last):
                                              File "/home/osmc/.kodi/addons/plugin.video.youtube/default.py", line 7, in <module>
                                                runner.run(__provider__)
                                              File "/home/osmc/.kodi/addons/plugin.video.youtube/resources/lib/kodion/runner.py", line 32, in run
                                                __RUNNER__.run(provider, context)
                                              File "/home/osmc/.kodi/addons/plugin.video.youtube/resources/lib/kodion/impl/xbmc/xbmc_runner.py", line 23, in run
                                                results = provider.navigate(context)
                                              File "/home/osmc/.kodi/addons/plugin.video.youtube/resources/lib/kodion/abstract_provider.py", line 93, in navigate
                                                result = method(context, re_match)
                                              File "/home/osmc/.kodi/addons/plugin.video.youtube/resources/lib/kodion/register_provider_path.py", line 12, in wrapper
                                                return func(*args, **kwargs)
                                              File "/home/osmc/.kodi/addons/plugin.video.youtube/resources/lib/youtube/provider.py", line 369, in on_play
                                                return yt_play.play_playlist(self, context, re_match)
                                              File "/home/osmc/.kodi/addons/plugin.video.youtube/resources/lib/youtube/helper/yt_play.py", line 110, in play_playlist
                                                progress_dialog = _load_videos()
                                              File "/home/osmc/.kodi/addons/plugin.video.youtube/resources/lib/youtube/helper/yt_play.py", line 79, in _load_videos
                                                _load_videos(_page_token=next_page_token, _progress_dialog=_progress_dialog)
                                              File "/home/osmc/.kodi/addons/plugin.video.youtube/resources/lib/youtube/helper/yt_play.py", line 71, in _load_videos
                                                result = v3.response_to_items(provider, context, json_data, process_next_page=False)
                                              File "/home/osmc/.kodi/addons/plugin.video.youtube/resources/lib/youtube/helper/v3.py", line 213, in response_to_items
                                                result.extend(_process_list_response(provider, context, json_data))
                                              File "/home/osmc/.kodi/addons/plugin.video.youtube/resources/lib/youtube/helper/v3.py", line 198, in _process_list_response
                                                utils.update_video_infos(provider, context, video_id_dict, playlist_item_id_dict, channel_items_dict)
                                              File "/home/osmc/.kodi/addons/plugin.video.youtube/resources/lib/youtube/helper/utils.py", line 218, in update_video_infos
                                                datetime = utils.datetime_parser.parse(snippet['publishedAt'])
                                            KeyError: 'publishedAt'
                                            -->End of Python script error report<--
18:55:01 7186.316895 T:1434448880  NOTICE: [plugin.video.youtube] Running: YouTube (5.3.6) on Jarvis (16.1) with Python 2.7.9
18:55:18 7203.445312 T:1956271024  NOTICE: Previous line repeats 2 times.
18:55:18 7203.445312 T:1956271024   ERROR: GetDirectory - Error getting plugin://plugin.video.youtube/config/youtube/
18:55:18 7203.448242 T:1956271024   ERROR: CGUIMediaWindow::GetDirectory(plugin://plugin.video.youtube/config/youtube/) failed

Watched marks are not seen

In Estuary v2 skin, Watched marks are not seen in WideList View.
In Estouchy, the marks are not seen at all.
Also reported in the forum

Multi User Logon

Is it possible to support multi-login? So that multiple Youtube users can login to access their own playlists / Subscriptions?

Or in the API settings add an option to add multiple sets of API Keys for each YouTube login.

Help

Youtube subscriptions not showing nor does their videos show-only search works & i even redid my google api youtube sync

URLErrors when trying to do anything.

I recently did a fresh install of my OS (Ubuntu-Gnome 16.10) and freshly installed kodi v17. Upon installing this addon, inputting in my personal YouTube API values, and trying to search, I noticed errors in the kodi.log file. The following is the excerpt:
17:35:04.321 T:140641075738368 ERROR: EXCEPTION Thrown (PythonToCppException) : -->Python callback/script returned the following error<-- - NOTE: IGNORING THIS CAN LEAD TO MEMORY LEAKS! Error Type: <class 'urllib2.URLError'> Error Contents: <urlopen error [Errno 0] Error> Traceback (most recent call last): File "/home/greg/.kodi/addons/plugin.video.youtube/default.py", line 7, in <module> runner.run(__provider__) File "/home/greg/.kodi/addons/plugin.video.youtube/resources/lib/kodion/runner.py", line 32, in run __RUNNER__.run(provider, context) File "/home/greg/.kodi/addons/plugin.video.youtube/resources/lib/kodion/impl/xbmc/xbmc_runner.py", line 23, in run results = provider.navigate(context) File "/home/greg/.kodi/addons/plugin.video.youtube/resources/lib/kodion/abstract_provider.py", line 93, in navigate result = method(context, re_match) File "/home/greg/.kodi/addons/plugin.video.youtube/resources/lib/kodion/abstract_provider.py", line 225, in _internal_search return self.on_search(query, context, re_match) File "/home/greg/.kodi/addons/plugin.video.youtube/resources/lib/youtube/provider.py", line 481, in on_search page_token=page_token) File "/home/greg/.kodi/addons/plugin.video.youtube/resources/lib/kodion/utils/function_cache.py", line 107, in get cached_data = partial_func() File "/home/greg/.kodi/addons/plugin.video.youtube/resources/lib/youtube/client/youtube.py", line 488, in search return self._perform_v3_request(method='GET', path='search', params=params, quota_optimized=False) File "/home/greg/.kodi/addons/plugin.video.youtube/resources/lib/youtube/client/youtube.py", line 615, in _perform_v3_request result = requests.get(_url, params=_params, headers=_headers, verify=False, allow_redirects=allow_redirects) File "/home/greg/.kodi/addons/plugin.video.youtube/resources/lib/kodion/simple_requests/api.py", line 189, in get return _request('GET', url, **kwargs) File "/home/greg/.kodi/addons/plugin.video.youtube/resources/lib/kodion/simple_requests/api.py", line 165, in _request response = opener.open(request) File "/usr/lib/python2.7/urllib2.py", line 429, in open response = self._open(req, data) File "/usr/lib/python2.7/urllib2.py", line 447, in _open '_open', req) File "/usr/lib/python2.7/urllib2.py", line 407, in _call_chain result = func(*args) File "/usr/lib/python2.7/urllib2.py", line 1241, in https_open context=self._context) File "/usr/lib/python2.7/urllib2.py", line 1198, in do_open raise URLError(err) URLError: <urlopen error [Errno 0] Error> -->End of Python script error report<--

I have searched around for this problem and found one conclusion that works. In the file resources/lib/kodion/simple_requests/api.py the very first import should be for OpenSSL. thus the line would be literally import OpenSSL
Upon adding this line in the beginning of the file, everything began working as it should.

Can't play videos from "My Channel"

When I press any videos from my channel it pops up a message that says:"-Playback failed- One or more items failed to play.Check the log for more information about this message."
I'm running Kodi(LibreELEC)Jarvis on a Raspberry Pi 3.

Authorization resets on reboot

Hi there!
I'm using KODI 17.3 on Ubuntu 14.04.5. And my issue is Youtube addon resets authorisation on system reboot. So I complete auth procedure with entering two 8 digit codes, I get Youtube addon added under my Google account and everything works just fine until I restart my PC. The youtube plugin dissapears under my Google account also.
What could be wrong here?

History blank.

Hi,

I am trying to load up my Youtube history however it is always blank. Looking at the logs:

16:34:55.075 T:140321325135616  NOTICE: [plugin.video.youtube] Running: YouTube (5.3.12) on Krypton (Kodi-17.1) with Python 2.7.12
16:34:55.180 T:140321325135616   ERROR: /home/mike/.kodi/addons/script.module.requests/lib/requests/packages/urllib3/connectionpool.py:843: InsecureRequestWarning: Unverified HTTPS request is being made. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings
                                              InsecureRequestWarning)
16:34:55.274 T:140321325135616 WARNING: [plugin.video.youtube] List of search result is empty

Any input?

Developer provided API-Keys

Hello, I'm interested in adding a new "API-Key" feature to the youtube plugin you're currently maintaining. I'd like to know if you are interested and would like to discuss implementation?

I propose adding a method that will allow developers to temporarily insert his/her api key in order to relieve default key burden.

I'm leaning toward using : https://github.com/ruuk/script.module.addon.signals , However we can also use window properties.

Let me know what you think.

Crash with `AttributeError: cffi library '_openssl' has no function, constant or global variable named 'Cryptography_HAS_X25519`

The plugin is crashing on my system with the following error message:

09:48:35.084 T:140258210629376   ERROR: EXCEPTION Thrown (PythonToCppException) : -->Python callback/script returned the following error<--
     - NOTE: IGNORING THIS CAN LEAD TO MEMORY LEAKS!
    Error Type: <type 'exceptions.AttributeError'>
    Error Contents: cffi library '_openssl' has no function, constant or global variable named 'Cryptography_HAS_X25519'
    Traceback (most recent call last):
      File "/home/kodi/.kodi/addons/plugin.video.youtube/resources/lib/default.py", line 3, in <module>
        from youtube_plugin.kodion import runner
      File "/home/kodi/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/kodion/__init__.py", line 17, in <module>
        from requests import api as client
      File "/home/kodi/.kodi/addons/script.module.requests/lib/requests/__init__.py", line 52, in <module>
        from .packages.urllib3.contrib import pyopenssl
      File "/home/kodi/.kodi/addons/script.module.requests/lib/requests/packages/urllib3/contrib/pyopenssl.py", line 47, in <module>
        import OpenSSL.SSL
      File "/usr/lib/python2.7/site-packages/OpenSSL/__init__.py", line 8, in <module>
        from OpenSSL import rand, crypto, SSL
      File "/usr/lib/python2.7/site-packages/OpenSSL/rand.py", line 12, in <module>
        from OpenSSL._util import (
      File "/usr/lib/python2.7/site-packages/OpenSSL/_util.py", line 6, in <module>
        from cryptography.hazmat.bindings.openssl.binding import Binding
      File "/usr/lib64/python2.7/site-packages/cryptography/hazmat/bindings/openssl/binding.py", line 156, in <module>
        Binding.init_static_locks()
      File "/usr/lib64/python2.7/site-packages/cryptography/hazmat/bindings/openssl/binding.py", line 137, in init_static_locks
        cls._ensure_ffi_initialized()
      File "/usr/lib64/python2.7/site-packages/cryptography/hazmat/bindings/openssl/binding.py", line 124, in _ensure_ffi_initialized
        cls.lib = build_conditional_library(lib, CONDITIONAL_NAMES)
      File "/usr/lib64/python2.7/site-packages/cryptography/hazmat/bindings/openssl/binding.py", line 84, in build_conditional_library
        if not getattr(lib, condition):
    AttributeError: cffi library '_openssl' has no function, constant or global variable named 'Cryptography_HAS_X25519'
    -->End of Python script error report<--

The OS is Fedora 26. These packages are installed there:

  • openssl-1.1.0f-7.fc26.x86_64
  • python2-cryptography-2.0.2-1.fc26.x86_64

Plugin no longer works due to urllib2 errors on Ubuntu

I can no longer use YouTube 5.3.6 on Kodi 16.1 using Ubuntu 16.04.1 (up to date as of today). Videos -> Add-ons -> YouTube leads to the following error:

18:20:19 T:2833365824  NOTICE: [plugin.video.youtube] Running: YouTube (5.3.6) on Jarvis (16.1) with Python 2.7.12
18:20:19 T:2833365824   ERROR: EXCEPTION Thrown (PythonToCppException) : -->Python callback/script returned the following error<--
                                             - NOTE: IGNORING THIS CAN LEAD TO MEMORY LEAKS!
                                            Error Type: <class 'urllib2.URLError'>
                                            Error Contents: <urlopen error [Errno 0] Error>
                                            Traceback (most recent call last):
                                              File "/home/bbogart/.kodi/addons/plugin.video.youtube/default.py", line 7, in <module>
                                                runner.run(__provider__)
                                              File "/home/bbogart/.kodi/addons/plugin.video.youtube/resources/lib/kodion/runner.py", line 32, in run
                                                __RUNNER__.run(provider, context)
                                              File "/home/bbogart/.kodi/addons/plugin.video.youtube/resources/lib/kodion/impl/xbmc/xbmc_runner.py", line 23, in run
                                                results = provider.navigate(context)
                                              File "/home/bbogart/.kodi/addons/plugin.video.youtube/resources/lib/kodion/abstract_provider.py", line 93, in navigate
                                                result = method(context, re_match)
                                              File "/home/bbogart/.kodi/addons/plugin.video.youtube/resources/lib/kodion/abstract_provider.py", line 127, in _internal_root
                                                return self.on_root(context, re_match)
                                              File "/home/bbogart/.kodi/addons/plugin.video.youtube/resources/lib/youtube/provider.py", line 537, in on_root
                                                self.get_client(context)
                                              File "/home/bbogart/.kodi/addons/plugin.video.youtube/resources/lib/youtube/provider.py", line 150, in get_client
                                                YouTube(language=language, config=youtube_config).refresh_token(refresh_tokens[1])
                                              File "/home/bbogart/.kodi/addons/plugin.video.youtube/resources/lib/youtube/client/login_client.py", line 116, in refresh_token
                                                result = requests.post(url, data=post_data, headers=headers, verify=False)
                                              File "/home/bbogart/.kodi/addons/plugin.video.youtube/resources/lib/kodion/simple_requests/api.py", line 194, in post
                                                return _request('POST', url, data=data, json=json, **kwargs)
                                              File "/home/bbogart/.kodi/addons/plugin.video.youtube/resources/lib/kodion/simple_requests/api.py", line 165, in _request
                                                response = opener.open(request)
                                              File "/usr/lib/python2.7/urllib2.py", line 429, in open
                                                response = self._open(req, data)
                                              File "/usr/lib/python2.7/urllib2.py", line 447, in _open
                                                '_open', req)
                                              File "/usr/lib/python2.7/urllib2.py", line 407, in _call_chain
                                                result = func(*args)
                                              File "/usr/lib/python2.7/urllib2.py", line 1241, in https_open
                                                context=self._context)
                                              File "/usr/lib/python2.7/urllib2.py", line 1198, in do_open
                                                raise URLError(err)
                                            URLError: <urlopen error [Errno 0] Error>
                                            -->End of Python script error report<--
18:20:19 T:2953627712   ERROR: GetDirectory - Error getting plugin://plugin.video.youtube/
18:20:19 T:2953627712   ERROR: CGUIMediaWindow::GetDirectory(plugin://plugin.video.youtube/) failed
18:21:19 T:2507303744  NOTICE: ES: Client  from 192.168.0.111 timed out

Uninstalling and reinstalling did not change anything.

Audio muted for 5 seconds after skip forward

I have made the experience if you use the Addon with Dash and skip forward or backward, the video continuous but the sound is muted for about five seconds

I am using kodi 18 with android and 5.4.5 but also had this issue with kodi 17

Some videos fail to play, log says: `WaitOnScriptResult- plugin returned failure`

Some videos, I think more often music videos but not always, fail to play. Here is an example log:

23:46:57 T:139824027641600   DEBUG: GetMovieId (plugin://plugin.video.youtube/play/?video_id=NVzDrqOmYiY), query = select idMovie from movie where idFile=74689
23:46:57 T:139823618279168  NOTICE: script.lazytvservice : 202.850303 :: 52.712349 :::  - notification!
23:46:57 T:139824027641600   DEBUG: GetEpisodeId (plugin://plugin.video.youtube/play/?video_id=NVzDrqOmYiY), query = select idEpisode from episode where idFile=74689
23:46:57 T:139824027641600   DEBUG: GetMusicVideoId (plugin://plugin.video.youtube/play/?video_id=NVzDrqOmYiY), query = select idMVideo from musicvideo where idFile=74689
23:46:57 T:139824932703104   DEBUG: GetMovieId (plugin://plugin.video.youtube/play/?video_id=NVzDrqOmYiY), query = select idMovie from movie where idFile=74689
23:46:57 T:139824932703104   DEBUG: GetEpisodeId (plugin://plugin.video.youtube/play/?video_id=NVzDrqOmYiY), query = select idEpisode from episode where idFile=74689
23:46:57 T:139824932703104   DEBUG: GetMusicVideoId (plugin://plugin.video.youtube/play/?video_id=NVzDrqOmYiY), query = select idMVideo from musicvideo where idFile=74689
23:46:57 T:139824932703104   DEBUG: CAnnouncementManager - Announcement: OnAdd from xbmc
23:46:57 T:139824932703104   DEBUG: GOT ANNOUNCEMENT, type: 2, from xbmc, message OnAdd
23:46:57 T:139824932703104   DEBUG: StartScript - calling plugin YouTube('plugin://plugin.video.youtube/play/','19','?video_id=NVzDrqOmYiY')
23:46:57 T:139824932703104   DEBUG: WaitOnScriptResult - waiting on the YouTube (id=28) plugin...
23:46:57 T:139824052819712   DEBUG: Thread LanguageInvoker start, auto delete: false
23:46:57 T:139824052819712    INFO: initializing python engine.
23:46:57 T:139824052819712   DEBUG: CPythonInvoker(28, /home/media/.kodi/addons/plugin.video.youtube/default.py): start processing
23:46:57 T:139823618279168  NOTICE: script.lazytvservice : 202.976164 :: 0.125861 :::  - notification!
23:46:57 T:139824052819712   DEBUG: -->Python Interpreter Initialized<--
23:46:57 T:139824052819712   DEBUG: CPythonInvoker(28, /home/media/.kodi/addons/plugin.video.youtube/default.py): the source file to load is "/home/media/.kodi/addons/plugin.video.youtube/default.py"
23:46:57 T:139824052819712   DEBUG: CPythonInvoker(28, /home/media/.kodi/addons/plugin.video.youtube/default.py): setting the Python path to /home/media/.kodi/addons/plugin.video.youtube:/usr/lib/python2.7:/usr/lib/python2.7/plat-x86_64-linux-gnu:/usr/lib/python2.7/lib-tk:/usr/lib/python2.7/lib-old:/usr/lib/python2.7/lib-dynload:/home/media/.local/lib/python2.7/site-packages:/usr/local/lib/python2.7/dist-packages:/usr/lib/python2.7/dist-packages:/usr/lib/python2.7/dist-packages/PILcompat:/usr/lib/python2.7/dist-packages/wx-3.0-gtk2
23:46:57 T:139824052819712   DEBUG: CPythonInvoker(28, /home/media/.kodi/addons/plugin.video.youtube/default.py): entering source directory /home/media/.kodi/addons/plugin.video.youtube
23:46:57 T:139824052819712   DEBUG: CPythonInvoker(28, /home/media/.kodi/addons/plugin.video.youtube/default.py): instantiating addon using automatically obtained id of "plugin.video.youtube" dependent on version 2.1.0 of the xbmc.python api
23:46:58 T:139824052819712   DEBUG: [plugin.video.youtube] Using API key set: 1
23:46:58 T:139824052819712   DEBUG: [plugin.video.youtube] Starting Kodion framework by bromix...
23:46:58 T:139824052819712  NOTICE: [plugin.video.youtube] Running: YouTube (5.3.6) on Jarvis (16.1) with Python 2.7.12+
23:46:58 T:139824052819712   DEBUG: [plugin.video.youtube] Path: "/play/
23:46:58 T:139824052819712   DEBUG: [plugin.video.youtube] Params: "{'video_id': u'NVzDrqOmYiY'}"
23:46:58 T:139824052819712   DEBUG: [plugin.video.youtube] Selecting YouTube config "All"
23:46:58 T:139824052819712   DEBUG: [plugin.video.youtube] User is logged in
23:46:59 T:139824932703104   DEBUG: DialogProgress::Open called
23:46:59 T:139824932703104   DEBUG: ------ Window Init (DialogProgress.xml) ------
23:46:59 T:139824069605120   DEBUG: webserver: request received for /jsonrpc
23:47:12 T:139824052819712   DEBUG: Previous line repeats 5 times.
23:47:12 T:139824052819712   DEBUG: POParser: loaded 141 strings from file /home/media/.kodi/addons/plugin.video.youtube/resources/language/English/strings.po
23:47:12 T:139824932703104   DEBUG: WaitOnScriptResult- plugin returned failure
23:47:12 T:139824052819712   DEBUG: [plugin.video.youtube] Shutdown of Kodion
23:47:12 T:139824052819712    INFO: CPythonInvoker(28, /home/media/.kodi/addons/plugin.video.youtube/default.py): script successfully run
23:47:12 T:139824932703104   ERROR: Playlist Player: skipping unplayable item: 0, path [plugin://plugin.video.youtube/play/?video_id=NVzDrqOmYiY]
23:47:12 T:139824932703104   DEBUG: Playlist Player: no more playable items... aborting playback
23:47:12 T:139824932703104   DEBUG: ------ Window Deinit (DialogProgress.xml) ------
23:47:12 T:139824932703104   DEBUG: ------ Window Init (DialogKaiToast.xml) ------
23:47:12 T:139824932703104   DEBUG: SECTION:LoadDLL(special://xbmcbin/system/ImageLib-x86_64-linux.so)
23:47:12 T:139824932703104   DEBUG: Loading: /usr/lib/x86_64-linux-gnu/kodi/system/ImageLib-x86_64-linux.so
23:47:12 T:139824052819712    INFO: Python script stopped
23:47:12 T:139824052819712   DEBUG: Thread LanguageInvoker 139824052819712 terminating
23:47:12 T:139824069605120   DEBUG: webserver: request received for /jsonrpc
23:47:17 T:139824932703104   DEBUG: Previous line repeats 2 times.
23:47:17 T:139824932703104   DEBUG: ------ Window Deinit (DialogKaiToast.xml) ------

The system is in debug logging, but when the progress dialog opens (at 23:46:59), there are 13 seconds of quiet in the log and then we see the failure.

Incompativility with pyopenssl 17.0.0

HI,
I use gentoo as OS and with the last version of pyopenssl (17.0.0) I get the next error accessing to the plugin:

17:20:09.089 T:140501010220800 NOTICE: [plugin.video.youtube] Running: YouTube (5.3.13) on Krypton (Kodi-17.3) with Python 2.7.13 17:20:11.270 T:140501010220800 ERROR: EXCEPTION Thrown (PythonToCppException) : -->Python callback/script returned the following error<-- - NOTE: IGNORING THIS CAN LEAD TO MEMORY LEAKS! Error Type: <class 'OpenSSL.SSL.Error'> Error Contents: [] Traceback (most recent call last): File "/home/jbarrios/.kodi/addons/plugin.video.youtube/resources/lib/default.py", line 7, in <module> runner.run(__provider__) File "/home/jbarrios/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/kodion/runner.py", line 32, in run __RUNNER__.run(provider, context) File "/home/jbarrios/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/kodion/impl/xbmc/xbmc_runner.py", line 23, in run results = provider.navigate(context) File "/home/jbarrios/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/kodion/abstract_provider.py", line 93, in navigate result = method(context, re_match) File "/home/jbarrios/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/kodion/register_provider_path.py", line 12, in wrapper return func(*args, **kwargs) File "/home/jbarrios/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/youtube/provider.py", line 431, in _on_sign yt_login.process(mode, self, context, re_match, context.get_settings().requires_dual_login()) File "/home/jbarrios/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/youtube/helper/yt_login.py", line 93, in process access_token_tv, expires_in_tv, refresh_token_tv = _do_login(_for_tv=True) File "/home/jbarrios/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/youtube/helper/yt_login.py", line 11, in _do_login json_data = _client.generate_user_code_tv() File "/home/jbarrios/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/youtube/client/login_client.py", line 188, in generate_user_code_tv return self.generate_user_code(client_id=client_id) File "/home/jbarrios/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/youtube/client/login_client.py", line 213, in generate_user_code result = requests.post(url, data=post_data, headers=headers, verify=self._verify) File "/home/jbarrios/.kodi/addons/script.module.requests/lib/requests/api.py", line 110, in post return request('post', url, data=data, json=json, **kwargs) File "/home/jbarrios/.kodi/addons/script.module.requests/lib/requests/api.py", line 56, in request return session.request(method=method, url=url, **kwargs) File "/home/jbarrios/.kodi/addons/script.module.requests/lib/requests/sessions.py", line 488, in request resp = self.send(prep, **send_kwargs) File "/home/jbarrios/.kodi/addons/script.module.requests/lib/requests/sessions.py", line 609, in send r = adapter.send(request, **kwargs) File "/home/jbarrios/.kodi/addons/script.module.requests/lib/requests/adapters.py", line 423, in send timeout=timeout File "/home/jbarrios/.kodi/addons/script.module.requests/lib/requests/packages/urllib3/connectionpool.py", line 594, in urlopen chunked=chunked) File "/home/jbarrios/.kodi/addons/script.module.requests/lib/requests/packages/urllib3/connectionpool.py", line 350, in _make_request self._validate_conn(conn) File "/home/jbarrios/.kodi/addons/script.module.requests/lib/requests/packages/urllib3/connectionpool.py", line 835, in _validate_conn conn.connect() File "/home/jbarrios/.kodi/addons/script.module.requests/lib/requests/packages/urllib3/connection.py", line 311, in connect cert_reqs=resolve_cert_reqs(self.cert_reqs), File "/home/jbarrios/.kodi/addons/script.module.requests/lib/requests/packages/urllib3/util/ssl_.py", line 249, in create_urllib3_context context = SSLContext(ssl_version or ssl.PROTOCOL_SSLv23) File "/home/jbarrios/.kodi/addons/script.module.requests/lib/requests/packages/urllib3/contrib/pyopenssl.py", line 355, in __init__ self._ctx = OpenSSL.SSL.Context(self.protocol) File "/usr/lib64/python2.7/site-packages/OpenSSL/SSL.py", line 614, in __init__ _openssl_assert(res == 1) File "/usr/lib64/python2.7/site-packages/OpenSSL/_util.py", line 67, in openssl_assert exception_from_error_queue(error) File "/usr/lib64/python2.7/site-packages/OpenSSL/_util.py", line 54, in exception_from_error_queue raise exception_type(errors) Error: [] -->End of Python script error report<--

Using Youtube plugin version 5.3.13 and 5.3.12

Downgrading to pyopenssl version 16.2.0 the plugin works correctly.

Plugin doesn't read the playlist correctly

Hi, I just install the plugin on my LibreElec config but I've seen that the behaviour is different than on YouTube website. When I read a video contained into a playlist, on Kodi after the playing, it comes back to the menu but on the website it loads the next video.
Is it volontary or a limitation of Kodi (and so of the plugin) ?

Regards

ValueError: bad marshal data (unknown type code)

Got this in my logs with Kodi 17 :

version="5.4.2"

19:36:01.305 T:1959006208  NOTICE: Starting Kodi (17.3). Platform: Linux ARM (Thumb) 32-bit
19:36:01.305 T:1959006208  NOTICE: Using Release Kodi x32 build (version for Raspberry Pi)
19:36:01.305 T:1959006208  NOTICE: Kodi compiled Jul 29 2017 by GCC 4.9.2 for Linux ARM (Thumb) 32-bit version 3.16.39 (200743)
19:36:11.087 T:1637872624   ERROR: EXCEPTION Thrown (PythonToCppException) : -->Python callback/script returned the following error<--
                                             - NOTE: IGNORING THIS CAN LEAD TO MEMORY LEAKS!
                                            Error Type: <type 'exceptions.ValueError'>
                                            Error Contents: bad marshal data (unknown type code)
                                            Traceback (most recent call last):
                                              File "/home/osmc/.kodi/addons/plugin.video.youtube/resources/lib/startup.py", line 3, in <module>
                                                from youtube_plugin.kodion.impl import Context
                                              File "/home/osmc/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/kodion/__init__.py", line 17, in <module>
                                                from requests import api as client
                                              File "/home/osmc/.kodi/addons/script.module.requests/lib/requests/__init__.py", line 52, in <module>
                                                from .packages.urllib3.contrib import pyopenssl
                                              File "/home/osmc/.kodi/addons/script.module.requests/lib/requests/packages/__init__.py", line 27, in <module>
                                                from . import urllib3
                                              File "/home/osmc/.kodi/addons/script.module.requests/lib/requests/packages/urllib3/__init__.py", line 8, in <module>
                                                from .connectionpool import (
                                              File "/home/osmc/.kodi/addons/script.module.requests/lib/requests/packages/urllib3/connectionpool.py", line 11, in <module>
                                                from .exceptions import (
                                              File "/home/osmc/.kodi/addons/script.module.requests/lib/requests/packages/urllib3/exceptions.py", line 2, in <module>
                                                from .packages.six.moves.http_client import (
                                            ValueError: bad marshal data (unknown type code)
                                            -->End of Python script error report<--

client log in fails with plugin request code, but works with requests module

Version 5.3.8 kept throwing the exception below at me while trying to log in. At first I thought it was the API key as I had reinstalled the system recently, but no, that didn't fix this error either. After digging through the code and looking at the request code in particular I simply tried to use requests, see my code in 5f842f1. That "fixes" the login problem for me, but all other requests in the plugin fail with the same exception.

19:32:44 T:546526195488   ERROR: EXCEPTION Thrown (PythonToCppException) : -->Python callb
ack/script returned the following error<--
                                             - NOTE: IGNORING THIS CAN LEAD TO MEMORY LEAK
S!
                                            Error Type: <class 'urllib2.URLError'>
                                            Error Contents: <urlopen error [Errno 0] Error
>
                                            Traceback (most recent call last):
                                              File "/home/kodi_user/.kodi/addons/plugin.vide
o.youtube/default.py", line 7, in <module>
                                                runner.run(__provider__)
                                              File "/home/kodi_user/.kodi/addons/plugin.video.youtube/resources/lib/kodion/runner.py", line 32, in run
                                                __RUNNER__.run(provider, context)
                                              File "/home/kodi_user/.kodi/addons/plugin.video.youtube/resources/lib/kodion/impl/xbmc/xbmc_runner.py", line 23, in run
                                                results = provider.navigate(context)
                                              File "/home/kodi_user/.kodi/addons/plugin.video.youtube/resources/lib/kodion/abstract_provider.py", line 93, in navigate
                                                result = method(context, re_match)
                                              File "/home/kodi_user/.kodi/addons/plugin.video.youtube/resources/lib/kodion/register_provider_path.py", line 12, in wrapper
                                                return func(*args, **kwargs)
                                              File "/home/kodi_user/.kodi/addons/plugin.video.youtube/resources/lib/youtube/provider.py", line 426, in _on_sign
                                                yt_login.process(mode, self, context, re_match, context.get_settings().requires_dual_login())
                                              File "/home/kodi_user/.kodi/addons/plugin.video.youtube/resources/lib/youtube/helper/yt_login.py", line 88, in process
                                                access_token_tv, expires_in_tv, refresh_token_tv = _do_login(_for_tv=True)
                                              File "/home/kodi_user/.kodi/addons/plugin.video.youtube/resources/lib/youtube/helper/yt_login.py", line 11, in _do_login
                                                json_data = _client.generate_user_code_tv()
                                              File "/home/kodi_user/.kodi/addons/plugin.video.youtube/resources/lib/youtube/client/login_client.py", line 172, in generate_user_code_tv
                                                return self.generate_user_code(client_id=client_id)
                                              File "/home/kodi_user/.kodi/addons/plugin.video.youtube/resources/lib/youtube/client/login_client.py", line 199, in generate_user_code
                                                result = requests.post(url, data=post_data, headers=headers, verify=False)
                                              File "/home/kodi_user/.kodi/addons/plugin.video.youtube/resources/lib/kodion/simple_requests/api.py", line 194, in post
                                                return _request('POST', url, data=data, json=json, **kwargs)
                                              File "/home/kodi_user/.kodi/addons/plugin.video.youtube/resources/lib/kodion/simple_requests/api.py", line 165, in _request
                                                response = opener.open(request)
                                              File "/usr/lib/python2.7/urllib2.py", line 429, in open
                                                response = self._open(req, data)
                                              File "/usr/lib/python2.7/urllib2.py", line 447, in _open
                                                '_open', req)
                                              File "/usr/lib/python2.7/urllib2.py", line 407, in _call_chain
                                                result = func(*args)
                                              File "/usr/lib/python2.7/urllib2.py", line 1241, in https_open
                                                context=self._context)
                                              File "/usr/lib/python2.7/urllib2.py", line 1198, in do_open
                                                raise URLError(err)
                                            URLError: <urlopen error [Errno 0] Error>
                                            -->End of Python script error report<--
19:32:44 T:546896752416  NOTICE: script.lazytvservice : 10.915558 :: 10.915558 :::  - get_eps_Ended

Location of API KEY

https://forum.kodi.tv/showthread.php?tid=267160 suggests:

  • With Kodi shut down, Paste all 3 Keys into: Kodi / userdata / addon_data / plugin.video.youtube / settings.xml
    in the following lines of code:

However the keys are not stored in /sdcard/Android/data/org.xbmc.kodi/files/.kodi/addons/plugin.video.youtube/resources/settings.xml on anywhere else I could grep so where they are actually stored?

Add support to show 16:9 (widescreen) thumbnails for videos (Possibly adding a setting for 16:9 or 4:3)

I would like the video thumbnails to be widescreen as most of the videos are widescreen (at least for me), right now the plugin uses the "high" thumbnail image and that is always 4:3.

Looks like there are two 16:9 thumbnail options "medium" and "maxres" based on Youtubes API

"maxres" is potentially quite big and not always available so might not be the ideal image, "medium" has a lower resolution than "high" but seems OK on my 40" TV.

Ideally 4:3 videos would have a 4:3 thumbnail and 16:9 videos a 16:9 thumbnail but knowing what format a video uses don't seem to be available from Youtubes API, v2 of the API did seem to have support to detect some widescreen videos.

I made a post in the Kodi forum with some more info.

jonib

Login Exception (Linux version)

The following occurs (only) in Linux. It's been like that for quite a while (including the just tested 5.5 alpha). TIA, Enoch.

02:23:27.644 T:140568085387008 NOTICE: [plugin.video.youtube] Running: YouTube (5.4.5) on Krypton (Kodi-17.4) with Python 2.7.13
02:23:31.029 T:140568085387008 NOTICE: Previous line repeats 1 times.
02:23:31.029 T:140568085387008 ERROR: [plugin.video.youtube] YouTube: LoginException: Login Failed: Code 400

exceeded quota error

Hi, i'm getting that error in v.5.3.10
Setting preset API key to 4 didn't help.

A.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.