Avatar image for alecgdouglas
#1 Edited by alecgdouglas (104 posts) -

Hi there!

For the past little while in my spare time I've been working on a Giant Bomb app built for Amazon Fire TV and Android TV devices called The Giant Bomb Enthusiast App.

No Caption Provided

After over a month of testing and improvements with a small group of beta testers (thank you to all that volunteered!), the app is finally available on the Amazon App Store and Google Play Store!

How to get it:

Amazon App Store (Fire TV Devices)

Google Play Store (Android TV Devices)

The best way to reach me regarding the app is either in this thread (@ me so I get a notification) or email me at gbenthusiast (at) gmail (dot) com.

Here are a few screenshots of what the app currently looks like:

No Caption Provided
No Caption Provided
No Caption Provided
No Caption Provided
No Caption Provided

Enjoy!

FAQ

Why is [some Android TV device] not supported?

If you have an Android TV device that you'd like to see whitelisted for support on the Play Store then let me know! I've only whitelisted devices that I have people willing to beta test for, so hit me up if you're willing to put up with some potential bugs and let me know about 'em in exchange for getting your device added to the list of supported devices (which means automatic updates through the Play Store!).

Where are all of the old videos and how can I get access to them?

The reason not all Giant Bomb videos are available immediately upon app installation is due to a limitation in Giant Bomb's database API. Every query made to the website for videos is limited to receive 100 results. In addition to this, if you make too many queries within a given timespan then your API key will get blocked to protect Giant Bomb's bandwidth/availability for others. So, when a user initially links their account the app will make 15 queries for videos which results in the local database getting populated with 1500 of the most recent videos.

Over time the app will continue to make queries for older videos until the oldest video is reached (a video review for Battlefield Bad Company from 07/15/2008) and your local database is completely backfilled. These "give me older videos" queries happen every time the app refreshes its videos (during a refresh, 1 query gets made for newer videos and 4 queries get made for older videos). Automatic refreshes happen fairly frequently, but never more often than every 45 minutes.

However, you can also trigger a manual refresh by going to the "actions" row at the bottom of the main screen. Every time you do that you will get 400 older videos. You'll just want to be careful not to go overboard with manual refreshing otherwise you can get your API key temporarily blocked. You can check the status of your API key here under "Current API Usage": http://www.giantbomb.com/api

Why don't you make this available for tablets or phones?

The reason I haven't made any efforts to make this available for tablets or phones is because I consider that to be unnecessary work given that the fantastic Giant Bomb Video Buddy app already exists and is available for these types of devices.

Known Issues (updated 02/04/2017)

  • HD quality video playback is broken on 1st generation Fire TV devices for most videos released after/around January 2017 (video freezes after ~1 second and the audio continues). This is because these videos are 1080p60 instead of 720p60, which the first gen devices do not handle well. This problem does not affect 2nd generation devices. Fixed in 1.061.
  • Launching the app sometimes crashes immediately and returns you to the home screen. Attempting to launch it a second time immediately afterwards works fine. Fixed in 1.071.
  • Returning to the app after closing it either during playback or on the quality-selection screen and then hitting back to return to the browse screen causes the app to crash. (Same crash as above). Fixed in 1.071.
  • Returning to browsing videos after watching a video results in your position in the row getting reset to the front of the row.
  • When a video ends that has been playing for a while (> 20 minutes?) without any user interaction, the screen will go black instead of returning to the quality selection activity.
  • Refreshing videos sometimes results in the categories being in the wrong order (should be sorted by most recent video in each category)
  • There's no way for Shield TV and some Android TV users to pull up the quality selection menu during live streams (currently mapped to menu button on FTV devices)
  • Some old videos (e.g. UPFs from 2015 and earlier) error out (status 301) and can't be played
  • No support for video progress syncing with the website + other apps

Contributions

Is that list of "known issues" above bumming you out? Are you familiar with app development for Android?

Then feel free to send a pull request my way over at the public GBEnthusiast BitBucket repository!

It's probably a good idea to chat with me first on what you intend to implement if it's a larger feature so make sure we're aligned on whether it's something worth doing, but for smaller bugs just go ahead and fix 'em.

APK Downloads

Of course, the preferred method of getting the app is through the Amazon App Store or Google Play Store (you'll get automatic updates), but here are the APKs for anyone who can't access those app stores for whatever reason:

Current Release - Version 1.201:

  • Added support for GB Infinite - there should now be a tile in the Live Row when the app detects GB Infinite is available. Implementation courtesy of contributor Gordon Bonthron - thanks!

GBEnthusiast_release_1.201_signed.apk

Past Releases:

Version 1.142:

  • Fixed a couple crashes
  • Fixed an issue with old vs new video URLs

GBEnthusiast_release_1.142_signed.apk

Version 1.13:

  • Fixed a couple crashes

GBEnthusiast_release_1.13_signed.apk

Version 1.12:

  • Beta live stream support (only works for GB-hosted live streams, not Twitch or Youtube streams). Press the menu button to select a quality - will adjust automatically to suit your bandwidth by default.
  • Categorize videos by both video_category (e.g. Quick Look, Premium, Old Games) and video_show (e.g. Beast in the East, Playdate, VRodeo)

GBEnthusiast_release_1.12_signed.apk

Version 1.08:

  • New setting: "Default Quality" - Set which video quality (HD, High, or Low) is the first quality to appear in the quality selection screen to save a few clicks when playing videos. Find this setting on the bottom row of the video browsing screen. (Thanks @ltgrimdark for the suggestion!)
  • New shortcut: Press the Play/Pause button on your remote on the video browsing screen to skip the quality selection screen and begin playback immediately with your default quality.
  • Fixed a bug with the background image not updating after watching a video.
  • Refactored video URL resolution and fallback code.
  • Directs users to use the new auth token page (giantbomb.com/app/gbenthusiast).

GBEnthusiast_release_1.08_signed.apk

Version 1.071:

  • Fixed a consistent crash that would occur when relaunching the app after it was OOM killed in the background
  • Fixed a bug that resulted in no video fetch occurring after clearing auth and re-linking your account

GBEnthusiast_release_1.071_signed.apk

Version 1.061:

  • Automatically downgrade video quality if device does not support the selected quality (e.g. HD downgrades to High on 1st Gen FTV devices if HD = 1080p60)
  • The DPAD center button now also functions as a play/pause button during video playback
  • Request audio focus when playing videos (prevents an issue where music apps playing in the background would continue to play after a video begins)

GBEnthusiast_release_1.061_signed.apk

Version 1.05:

  • Fixed an issue that was forcing all videos to be played at HD quality regardless of selected quality

GBEnthusiast_release_1.05_signed.apk

Version 1.04:

  • Added a spinner for when videos are buffering
  • Tweaked the automatic video refreshing behavior to keep the videos more up to date (the need for manual refreshing should be drastically reduced)

GBEnthusiast_release_1.04_signed.apk

Version 1.01:

  • Pressing up on the dpad during playback will now show the player controls without the need to pause the video
  • Minor change to refreshing - the request for new videos will no longer limit itself to videos published after the newest video in the local DB. This is done so any videos that get updated on the server will now also get updated in your local DB (assuming they're in the most recent 100 videos).

GBEnthusiast_release_1.01_signed.apk

Version 1.00:

  • Initial Release

GBEnthusiast_release_1.00_signed.apk

Avatar image for mightyduck
#2 Posted by MightyDuck (1944 posts) -

@alecgdouglas: Very cool! As someone who just got a Fire Stick for Christmas, I will gladly check this out.

Any chance this would work on Kindle Fire as well? My iPad is about 5 years old at this point and was thinking of going the Kindle route...but not having the iOS Video Buddy app would be a bummer.

Avatar image for ltgrimdark
#3 Posted by LtGrimdark (79 posts) -

@alecgdouglas: Thanks for linking to the APK itself. I've just installed it on my Fire Stick and will give it a try this evening.

Avatar image for mister_v
#4 Posted by Mister_V (2428 posts) -

Been waiting for this, will download it to my fire stick tonight. Thanks for the hard work.

Avatar image for alecgdouglas
#5 Edited by alecgdouglas (104 posts) -
Avatar image for tepidshark
#6 Posted by TepidShark (1458 posts) -

I watched a 30 min Quick Look on the Fire TV app this morning and it worked fine. Will try a 2 hour video when I get back from work.

Avatar image for mister_v
#7 Posted by Mister_V (2428 posts) -

Watching the GOTY vids now and it's working great. My only request would be able to press up or down to bring up the controls so i can see how long is left to run on a video without pausing it.

Awesome job though, great app.

Avatar image for brodywb
#8 Posted by brodywb (210 posts) -

@alecgdouglas: I downloaded this, and it's pretty awesome. I watched the GOTY stuff using it. I was wanting to look back at some of the old ER stuff, but I could only see the Shenmue ER. Is there a way to watch the Deadly Premonition ER through the app? Nothing showed up when I tried to search for it.

Either way, good stuff!

Avatar image for alecgdouglas
#9 Posted by alecgdouglas (104 posts) -

@mister_v: That's a great suggestion and it's near the top of my to-do list :)

Thanks for the feedback!

Avatar image for alecgdouglas
#10 Posted by alecgdouglas (104 posts) -

@brodywb: I should probably add an FAQ or change how this works since I've seen this mentioned a couple times. Totally legitimate question, here's an answer I gave someone else over email earlier:

The reason for this is due to a limitation in Giant Bomb's database API. Every query made to the website for videos is limited to receive 100 results. In addition to this, if you make too many queries within a given timespan then your API key will get blocked to protect Giant Bomb's bandwidth/availability for others. So, when a user initially links their account the app will make 15 queries for videos which results in the local database getting populated with 1500 of the most recent videos.

Over time the app will continue to make queries for older videos until the oldest video is reached (a video review for Battlefield Bad Company from 07/15/2008) and your local database is completely backfilled. These "give me older videos" queries happen every time the app refreshes its videos (during a refresh, 1 query gets made for newer videos and 4 queries get made for older videos). Refreshes happen at 45 minute intervals but only when the app is cold-started (resuming the app doesn't trigger this but I'll probably change that soon).

However, you can also trigger a manual refresh by going to the "actions" row at the bottom of the main screen. Every time you do that you will get 400 older videos. You'll just want to be careful not to go overboard with manual refreshing otherwise you can get your API key temporarily blocked. You can check the status of your API key here under "Current API Usage": http://www.giantbomb.com/api

I hope that helps and thanks for the feedback!

Avatar image for tepidshark
#11 Edited by TepidShark (1458 posts) -

@alecgdouglas: Was able to get through the holiday game tapes (which is 2 hours) with no issues and was able to use all functionally (things like rewind/fast forward, resuming in the middle, etc). Don't know if it's related to what you were saying about queries but over time it'd be great if you could add more categories that the site has (as in VRodeo, TANG, Jar Time, etc). Also, a few videos (I think Quick Looks) list No Category.

Avatar image for alecgdouglas
#12 Edited by alecgdouglas (104 posts) -

@tepidshark: Thanks for trying the app out!

Regarding categories - the list of categories is currently limited to the data returned by the website's API when querying for videos (plus a couple rows I've added myself, e.g. "Continue Watching" and "Most Recent").

If you query for all of the categories via the website API, you get this list:

  • Reviews

  • Quick Looks

  • TANG

  • Endurance Run

  • Events

  • Trailers

  • Features

  • Premium

  • Extra Life

  • Old Games

  • Unfinished

  • Metal Gear Scanlon

  • VinnyVania

  • Breaking Brad

  • Best of Giant Bomb

  • Game Tapes

  • Kerbal: Project B.E.A.S.T

  • Giant Bombcast

Unfortunately, there is no category for VRodeo or Jar Time. There is, however, a category for TANG - but since those are older videos you might need to refresh a couple times before they show up.

I could probably add a couple categories manually (e.g. VRodeo or Jar Time) but that would require more maintenance to keep up to date so I'd rather just rely on the categories supplied by the website. It would be ideal if those categories were added to Giant Bomb's database.

As for the "no category" row - that's where videos end up if they get returned by the API without a category listed.

Thanks again for checking out the app and for the feedback!

Avatar image for tepidshark
#13 Edited by TepidShark (1458 posts) -

@alecgdouglas: Ok if they aren't in API that's fine.

I'm not fully understanding how to get more videos because I waited until it said it was ok to query and then I refreshed the app and then it said I was blocked. Am I supposed to keep the app open and it will automatically query?

Edit: Checked back several minutes later and now it's not blocked. Should I be refreshing the app to query or does it do it automatically?

Edit 2: I also tried restarting the Fire TV Stick so I could reboot the app that way. When I checked the API it blocked me then unblocked me and started querying.

Avatar image for tredik
#14 Posted by Tredik (152 posts) -

Hey, I don't engage with the forums really, but I was recently googling a solution for this exact thing, and came across the thread announcing the development on this app. Thanks a bunch; it's currently working swimmingly on my Mi Box.

Avatar image for alecgdouglas
#15 Posted by alecgdouglas (104 posts) -

@tepidshark: Yeah, I should have mentioned - the API status page will often report that you're blocked even when you aren't. I've seen it say that I'm blocked for using multiple IP addresses many times but it doesn't have any effect. I think something is broken on that side of things.

Anyway, I'd mostly just keep an eye out for the warnings regarding any rate limits (e.g. when it says your request rate is getting "crazy" then back off a bit). I've found it's pretty generous though, you can probably perform a couple manual refreshes every few minutes without running into any trouble.

Avatar image for alecgdouglas
#16 Posted by alecgdouglas (104 posts) -
Avatar image for crackity_jones
#17 Posted by crackity_jones (39 posts) -

Do you know if I can install the APK on my Shield TV?

Avatar image for alecgdouglas
#18 Edited by alecgdouglas (104 posts) -
Avatar image for crackity_jones
#19 Posted by crackity_jones (39 posts) -

@alecgdouglas: OK, if there's anything I can do to help with it please let me know.

Avatar image for digitaldiatribe
#20 Posted by digitaldiatribe (110 posts) -

Solid work. Thanks for putting the app out!

Avatar image for sendo_
#21 Posted by sendo_ (25 posts) -

This works great, by far the best way to view GB content on TV.

Avatar image for fireworksordie
#22 Posted by fireworksordie (26 posts) -

@alecgdouglas:hey- that guy is me, just stopped by to see how this thread was going. for what it's worth, instead of pausing i've just been using the back button to exit playback and then clicking on the video to resume (resuming is working great). also using my harmony remote i can send a "pause" command which will pause just fine. i think addressing mister_v's request in post 7 will fix my issue as well, since there's no way for me to bring up a menu to select a pause button on the Shield (or Mi Box or Nexus Player which I also tested). otherwise i don't really have much else to bring up- used it all week for the end of year videos without issue!

Avatar image for tepidshark
#23 Posted by TepidShark (1458 posts) -

@alecgdouglas: If you've been streaming alot of stuff on other apps and then come to a Giant Bomb video, it freezes to load a lot. Restarting the Fire TV seems to fix it though.

Avatar image for alecgdouglas
#24 Posted by alecgdouglas (104 posts) -

@tepidshark: Yeah, unfortunately that's a known issue. It's a result of insufficient error handling in parts of the code - I'm sorry you've been encountering it.

A full restart shouldn't be necessary - you should be able to go into device Settings > Apps > Giant Bomb Enthusiast > Force Stop, but restarting the entire device might be easier.

I'll try to fix that issue soon.

Avatar image for shaxinater
#25 Edited by Shaxinater (1 posts) -

http://www.giantbomb.com/videos/gbe-playdate-stardew-valley-01042017/2300-11788/

I am trying to watch this video on the app (great app btw) and it won't show up. I've refreshed a couple times and nothing. Killed the app on the FireTV a couple times as well but still nothing. Is there something odd going on with this video and the API?

Scrap this. I cleared and re-added my account and all is well. Working perfectly!

Thanks for your hard work :)

Avatar image for digitaldiatribe
#26 Posted by digitaldiatribe (110 posts) -

After a week or so of poking with it. I have some observations. In some instances, playback outright quits and dumps me back to the menu, but maintains my spot where it left off so nothing major there. There has been an instance or two when the Fire TV's screensaver turns on despite a video is playing. Finally, when a video gets to the end it doesn't leave the player until I hit Play or Back to return.

Other than that, it's been good and works far much better than the Plex Channel I've been dealing with. Thanks!

Avatar image for tepidshark
#27 Posted by TepidShark (1458 posts) -

@alecgdouglas: For about a week or so the streaming seems to gotten worse. Video at HD Quality freezes basically immediately upon starting for the first time then starts and then the next moment freezes again. Tried on High Quality and it did the same thing. This seemed to start when I finished getting all the videos. Could it be related?

Avatar image for alecgdouglas
#28 Posted by alecgdouglas (104 posts) -

@shaxinater: Hm that is odd - the only thing I can think of is maybe your API key was blocked or there was an issue with the site or your connection. I'll hopefully get some time soon to improve the app so it surfaces those problems better - sorry you had to re-connect your account!

Glad to hear it's been working better for you since then though.

Avatar image for alecgdouglas
#29 Posted by alecgdouglas (104 posts) -

@digitaldiatribe: Thanks for trying it out!

I haven't seen the playback issue before - when you say it dumps you back to the menu do you mean the Fire TV home screen or just the previous GB Enthusiast screen (e.g. either the browsing screen or the video details screen)?

I have seen the end-of-video bug you described though, but I haven't been able to reproduce it reliably. It's bothering me though so it's on my to-fix list for sure.

The screensaver issue is another one I haven't seen :(

Thanks for the feedback!

Avatar image for alecgdouglas
#30 Posted by alecgdouglas (104 posts) -

@tepidshark: It sounds like the video is buffering a lot. I've gotten a suggestion from another user to add a clear buffering indicator (e.g. a spinner) and that would make it easier to distinguish between the video buffering (likely an issue with your connection) and the app locking up during playback.

I doubt it's related to your local database being fully backfilled, but that's a good datapoint to have in case others report similar behavior. On two of my devices I have a fully backfilled database and haven't seen any playback issues like you've described - sorry!

Avatar image for digitaldiatribe
#31 Posted by digitaldiatribe (110 posts) -

@alecgdouglas: It would put me the quality selection of the video. The screensaver one hasn't happened since my last post and could have been a one off.

Avatar image for tepidshark
#32 Edited by TepidShark (1458 posts) -

@alecgdouglas: So I have some more info. Recent videos like Gravity Rush 2 QL & This is the Run 2 pause to buffer about every other second right from the start but I tried an episode of Metal Gear Scanlon 2 and I got through about a 1/3 of it with only occasional buffering and then it started to buffer every other second.

Update: Leaving the info up because it might be helpful, but I solved it. It was an issue with my router. Got through Gravity Rush 2 QL with no buffering.

Avatar image for thatonedudenick
#33 Edited by ThatOneDudeNick (1558 posts) -

Cool. I'll try it out over the weekend then post feedback and a review.

Avatar image for alecgdouglas
#34 Posted by alecgdouglas (104 posts) -

@tepidshark: That's great to hear, I'm glad you were able to resolve your issue! Thanks for the update.

Avatar image for tyn0mite
#35 Posted by tyn0mite (142 posts) -

Incredible! Just got the app fired up and linked my account! Working flawlessly right now! Thank you so much for doing all of this work, @alecgdouglas!!

Avatar image for alecgdouglas
#36 Posted by alecgdouglas (104 posts) -

@tyn0mite: Thank you for trying it out - responses like yours make my day :)

Avatar image for alecgdouglas
#37 Posted by alecgdouglas (104 posts) -

Just pushed out a minor update (1.01), see the top post for the patch notes.

Avatar image for meteora3255
#38 Posted by meteora3255 (674 posts) -

@alecgdouglas: App has worked great for me so far. Thanks for the work duder.

Avatar image for ltgrimdark
#39 Edited by LtGrimdark (79 posts) -

@alecgdouglas: Thanks for the update, I'll try it out tomorrow.

I've also discovered another thing (I'm the guy who sent you the email suggesting the buffering spinner) about the app that seems a little strange to me: If I exit out of a video page (the screen where you select the video quality or mark a video as finished) by pressing the back button, I'm being returned to the first entry of the video list. Let's say I'm watching old Endurance Runs. After the video has ended I'm being returned to its video page. When I then press the back button I'm being returned to the very beginning of the Endurance Run list and have to scroll all the way back to watch the next video in the series. This behavior only seems to occur if I exit a video page after exiting out of video playback.

Again, thanks for all your work. Your app has made watching Giant Bomb videos on my Fire Stick much more comfortable than it was before :)

Avatar image for ltgrimdark
#40 Posted by LtGrimdark (79 posts) -

@alecgdouglas: At least for me the download link for the new APK you posted in this thread throws a 403 error.

Avatar image for alecgdouglas
#41 Posted by alecgdouglas (104 posts) -
Avatar image for alecgdouglas
#42 Posted by alecgdouglas (104 posts) -

@ltgrimdark: Ah, your input has been very valuable so far! Thanks for reporting another issue - I've added it to my internal bug tracker.

Avatar image for alecgdouglas
#43 Posted by alecgdouglas (104 posts) -

@ltgrimdark: Right you are about the APK - I forgot to set the permissions properly after uploading it. Sorry about that, try again now.

Avatar image for ltgrimdark
#44 Posted by LtGrimdark (79 posts) -
Avatar image for zombievac
#45 Posted by zombievac (492 posts) -

Awesome work, though I'm curious about one thing... why not make it a general Android app so all devices with at least the specs of the Fire HD work? Did someone else already make something equal or better for Android in general? Or is that far more difficult than I imagine? Or, is it in the plans and you just tackled Amazon's version of Android first because you had the hardware?

I was never impressed with the GB Video Buddy (for iOS), using the site from a phone browser actually always worked better for me. But a good iOS/Android app for GB streaming would be ideal, since even the browsers are limited in capability and aren't super stable when watching a lot of image heavy sites that load HD videos.

Avatar image for flammabled
#46 Posted by FlammableD (7 posts) -

Just posting to say I've been using it on my Android TV and not having any issues, to the point even of it having a launcher icon, which is more than I can say for every other app I've ever sideloaded. Great job, keep it up 👍👍

Avatar image for alecgdouglas
#47 Posted by alecgdouglas (104 posts) -
Avatar image for alecgdouglas
#48 Edited by alecgdouglas (104 posts) -

@zombievac: I didn't make it a general Android app for a few reasons:

  • Building multiple UIs (one for phone, one for tablet, one for TV) was more work than I wanted to take on
  • I personally consider Giant Bomb Video Buddy (for Android) to be a great app for phones and didn't feel like there was much need for another mobile app. I don't know how it is for tablets because I don't use a tablet, but I believe it has a tablet-specific UI now too
  • I have multiple Fire TV devices and this was something I wanted. Nobody else appeared to be working on an app for TVs so I made one myself

I hope that answers your questions! :)

Avatar image for alecgdouglas
#49 Posted by alecgdouglas (104 posts) -

Just pushed out another minor update (1.04), see the top post for the patch notes.

Avatar image for sendo_
#50 Edited by sendo_ (25 posts) -

I've been getting this weird issue recently where videos will play fine for about 5-10 seconds and then the video will freeze but the audio will keep playing, changing quality doesn't seem to do anything nor does restarting the fire tv.

It also only seems to happen to videos coming out of GB East.

Edit: Looking at the bug report forums seems other devices like Roku are having issues with GB East videos also.