Kodi Community Forum

Full Version: [depricated] old YouTube Plugin - XBMC 13.0 Frodo/Gotham only
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
YouTube has changed ... if you go to the website and look at the player you now see a gear with the different resolutions available

I hope someone smarter then me is looking at this ...

Thanks
I just wanted to state that I am also having problems with the plugin, same as those listed by jhonnieblack, orangebox, etc. Seems to be a change in the API as some have already noted. I can provide additional logs if needed, but hopefully someone can fix this up and get a new version into the repo. Thanks for everyone's hard work!
If you don't understand this, and something breaks, it's not my fault.

On line 303 in YouTubePlayer.py, changing ttsurl to fexp fixes things for me. ttsurl is referred to later on as well, lines 334/335 but I did not have to change those.


303c303
< data = re.findall('="(ttsurl=.*?)"', data)
---
> data = re.findall('="(fexp=.*?)"', data)

Edit: Should point out, I've been mucking about with this a bit, so it might be on a line "around" 303, but not on 303 exactly.

Edit: Doesn't work on all clips. For the people who can follow programming logic, don't search for "ttsurl", search for
Code:
flashvars="(.*?)"
on line 303 (or thereabouts)


303c303
< data = re.findall('="(ttsurl=.*?)"', data)
---
> data = re.findall('flashvars="(.*?)"', data)
Thanks Enigma83! I tried out your fix on v2.1.3 of the plugin running on Ubuntu 10.04. For me, it was actually line 302. I'll post some more context of the code so others may try this out, until an official fix is released.


Code before changes (YouTubePlayer.py)
Code:
    else:
        data = result
        data = data[data.find('flashvars'):].replace("\n", "").replace("&amp;", "&")
this line -->    data = re.findall('="(ttsurl=.*?)"', data)
        if len(data) > 0:
            player_object = self._convertFlashVars(data[0])


Code after changes (YouTubePlayer.py)
Code:
    else:
        data = result
        data = data[data.find('flashvars'):].replace("\n", "").replace("&amp;", "&")
this line -->    data = re.findall('flashvars="(.*?)"', data)
        if len(data) > 0:
            player_object = self._convertFlashVars(data[0])
Worked perfectly, thanks guys!
evanroheff21 Wrote:Thanks Enigma83! I tried out your fix on v2.1.3 of the plugin running on Ubuntu 10.04. For me, it was actually line 302. I'll post some more context of the code so others may try this out, until an official fix is released.


Code before changes (YouTubePlayer.py)
Code:
    else:
        data = result
        data = data[data.find('flashvars'):].replace("\n", "").replace("&amp;", "&")
this line -->    data = re.findall('="(ttsurl=.*?)"', data)
        if len(data) > 0:
            player_object = self._convertFlashVars(data[0])


Code after changes (YouTubePlayer.py)
Code:
    else:
        data = result
        data = data[data.find('flashvars'):].replace("\n", "").replace("&amp;", "&")
this line -->    data = re.findall('flashvars="(.*?)"', data)
        if len(data) > 0:
            player_object = self._convertFlashVars(data[0])
This solution works perfectly, thanks a lot!
evanroheff21 Wrote:Thanks Enigma83!

+1

worked a treat thanx Smile

ps line 302 for me too!
Quote:Originally Posted by evanroheff21 View Post
Thanks Enigma83!

gobbledigook Wrote:+1

worked a treat thanx Smile

ps line 302 for me too!

+2 !

Thank you very much enigma83 Big Grin
Awesome evanroheff21

+3
Good work, thanks for the fix. My kids have stopped screaming and my wife is talking to me again.
enigma83 you're the frigging genius! thank you so much dude!
Thanks @evanroheff21 and @enigma83 rainy Sunday is save Big Grin
Can these changes please be pushed out via a repo update? Anyone on OpenElec cannot make changes to the system. This is a core plugin for XBMC so having this as a manual fix does not seem intuitive to me. Can someone with access to updating the repo please look into this?
vijayk416 Wrote:Can these changes please be pushed out via a repo update? Anyone on OpenElec cannot make changes to the system. This is a core plugin for XBMC so having this as a manual fix does not seem intuitive to me. Can someone with access to updating the repo please look into this?

Hi, sorry for the holdup, we've primarily been busy working on other plugins (and general worklife stuff), I'll look into pushing out and update for the 2.1.x series with the previously mentioned fixes.
Thanks a lot Henrik. Can you please confirm if the repo update will work for those still on dharma?