YTPlayer [archived]

Your rating: None Average: 4.8 (50 votes)

YTPlayer is no longer developed. If you wish to continue development, please leave me a comment!

Unofficial YouTube client for Sailfish OS!

Two very important notices!

1) You must provide youtube-client-id.json and youtube-data-api-v3.key files in your Downloads folder in order to use the application. You will have to generate them yourself, and sadly It is a thing and a half to do, but you can follow this guide to generate and download the files. This may have implications to your Google account, so do this at your own risk. Once YTPlayer has started without complaining about the missing keys or files, you can delete the files from the Download folder.

2) Google restricts YouTube Data API v3 usage. I was greeted with the following message in the YTPlayer log: "We're sorry, but your computer or network may ben sending automated queries. To protect our users, we can't process your request right now." That happened to my keys during developement, I'll have to wait and see it they work after a few days of waiting.

This all means that I will soon halt developing YTPlayer, and will only provide builds of the application for new SFOS versions. Old SFOS versions are no longer supported after 0.6.18 release.

Known limitations:

  • Google restricts YouTube Data API v3 usage
  • Only 360p and 720p videos are supported
  • Some vides are available only at 360p
  • Fetching newest videos from all subscribed channels doesn't work
  • Recommened videos may not show relevant results

This version is a fork of YTPlayer by osetr, which is a fork of YTPlayer by tworaz.

Source code is available at GitHub. Pull requests and translations are welcome! Especially tweaks regarding YouTube API v3 and coping with its limitations are highly appreciated!

If you like this app and would like to support me maintaining it, you can buy my a cup of coffee!

Application versions: 
File harbour-ytplayer-0.6.9-1.armv7hl.rpm273.92 KB15/09/2019 - 14:19
File harbour-ytplayer-0.6.9-1.i486.rpm295.42 KB15/09/2019 - 14:19
File harbour-ytplayer-0.6.15-1.armv7hl.rpm696.52 KB01/06/2020 - 18:38
File harbour-ytplayer-0.6.15-1.i486.rpm729.67 KB01/06/2020 - 18:38
File harbour-ytplayer-0.6.16-1.armv7hl.rpm699.91 KB11/06/2020 - 09:23
File harbour-ytplayer-0.6.16-1.i486.rpm732.38 KB11/06/2020 - 09:23
File harbour-ytplayer-0.6.17-1.aarch64.rpm1.29 MB31/01/2021 - 04:07
File harbour-ytplayer-0.6.17-1.armv7hl.rpm1.28 MB31/01/2021 - 04:07
File harbour-ytplayer-0.6.17-1.i486.rpm1.31 MB31/01/2021 - 04:07
File harbour-ytplayer-0.6.18-1.aarch64.rpm302.73 KB27/07/2021 - 21:43
File harbour-ytplayer-0.6.18-1.armv7hl.rpm293.71 KB27/07/2021 - 21:43
File harbour-ytplayer-0.6.18-1.i486.rpm327.82 KB27/07/2021 - 21:43


  • Added (restore) youtube-dl update functionality in Settings
  • Read youtube-client-id.json and youtube-data-api-v3.key from Downloads
  • Improve error reporting a bit

Full change log can be found in GitHub.


dumol's picture

Thank you, that would be great!

Would hate to stretch it too much, but maybe you'll find the time to also add URL associations? Looks like a minor thing... :D

dumol's picture

Nice job keeping this afloat!

Please consider making it work properly on Sailfish OS 4.4 regarding permissions.

While at it, would you consider In my experience it's a drop-in replacement for youtube-dl and works better. E.g. videos are buffered much faster, making the experience bearable again.

direc85's picture

Thanks! To be honest, I've been using the Browser for my mobile YouTube needs for a good while, but apparently YTPlayer still works! I haven't been able to use it for even longer while, because of the API key and quota issues.


I can sure fix the Sailjail support in and recompile it for 4.4, but until the API key stuff is as ridiculous as it is, I won't be investing too much time on this. (Okay, I have been dreaming about 1080p support, but the chances are slim...)


Edit: I can check out yt-dlp too, while I'm at it!

murfik's picture

or get example for past own api keys

Polecat2003's picture

Yes, please give instruction how to get json file. Thank you.

murfik's picture

doesn't found this

murfik's picture

i have api v3 keys from previous update. how to generate new json files? can I see some examples?

direc85's picture

You can export the files from the YouTube API portal where you created them.

Polecat2003's picture

Direc85, update youtube-dl, please.

direc85's picture

Thanks for letting me know. I'll try to get an update out soon.

martijntje's picture

For everybody having trouble viewing videos, there is a workaround we can use until direc85 updates the app again. Simply install on your device and then copy /usr/bin/youtube-dl to /usr/share/harbour-ytplayer/youtube-dl/youtube-dl

This trick usually works great whenever google decides to break youtube again and there is an updated youtube-dl available.

Phoenix616's picture

Unfortunately it looks like even with that update it doesn't work anymore and just fails with no streams found. This might be an issue with youtube-dl itself though seeing as on their repo others experience a similar error regarding the (removed?) get_video_info endpoint.

usernamenotavailable's picture

Any plans to add comments section?

elkiaer's picture

"Unable to extract video data" . What does that mean. The app has been working up till some weeks ago.

campeon's picture

With the right APIs it does open your user. There is great guide for getting your own APIs in MyTube w10 app. But it does not play videos..

inte's picture

Doesn't appear to work for me any longer. Cannot find streams?

Polecat2003's picture

Google account don't work. Error 401, invalid client.

Termitebug's picture

'Help me choose' in the Google developer API page is your friend. Use CLI API key and Desktop OAuth client keys. Those keys work for my YTP.

Polecat2003's picture

Where can I choose CLI API?

dumol's picture

Release early, release often? I miss this one. Thanks!Later edit: Working now with the new (very awkward) Google authorisation system. Thank you! ;-]

kuba77's picture

Did you try to use Invidious API to search and play videos from Youtube? I think this is how work desktop app FreeTube.

Polecat2003's picture

Any news?

Klaas's picture

The same with Mr.Magisters app and with NewPipe. I was allowed to use it for a while and suddenly it stopped. Its Google's fault. Google is a private company, not public.

direc85's picture

Yeah, Google is making it more and more difficult to view YouTube videos outside the Android app, web page and other officially supported methods.

TBH, I would not be suprised at all if Google removed or closed the APIv3 altogether... We native Sailfish users - not to mention us developers - are in a pinch. Luckily the updated Browser is capable of displaying the videos "just fine". I guess it's fair to admit my motivation to keep fighting for a functional YTPlayer is not that high anymore, but I'm still not giving up!

akikk88's picture

Any news?

direc85's picture

I have the first functional prototype of Sailfish Secrets implemented in YTPlayer to keep the keys and IDs safe. I consider this a huge stepstone! It still needs a lot of thought and rewriting parts of the original YTPlayer code, but I'd say I'm more than halfway there.

direc85's picture

My youtube-dl-lite repository was taken down by RIAA using DMCA, but luckily I had a backup of it. Took some time to dig it up, though...

I'm trying to get the update done soon, but no ETA... Things pour in left and right at the moment!

dumol's picture

Thanks! Missing your app, to be honest...

direc85's picture

Hello everybody! Sorry for the absence, let's just say life got in my way...

I'll start looking into providing your own API keys, and for some reason, it really looks like that the original API key (which was so old that it had a ridiculous quota) just doesn't work anymore - or the usage is so high, that it gets used up very quickly. I have no way to tell.

Edit 1: This doesn't look good. I tried my previous credentials, and it has a daily quota of 0 queries - can't use those even for testing. Then I created a new project, created the keys, and it also has a daily quota of 0 queries, rendering the whole APIv3+OAuth2 approach useless! I don't know what's going on, but it really, REALLY looks like Google is blocking users from YouTube using this approach. If anyone has any details about this, please help me out.

Edit 2: Okay, I created again a new project, and now I have the default quota of 10000 units per day. Go figure... So, it looks like the approach could still work, so it's all in the implementation now.

akikk88's picture

Coming any update to fix app?