hensm / fx_cast-compat

fx_cast site compatibility issue tracker

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

[compat] YouTube

hensm opened this issue · comments

App name: YouTube
App URL: https://www.youtube.com/
App ID (if possible): 233637DE

Issues:
The new UI uses Polymer, which requires polyfills to function in Firefox. Modifying the user agent string to pretend to be Chrome means those polyfills aren't loaded and the site doesn't work.

Error log (if applicable):

STUB :: Session#addMediaListener Session.ts:168:9
STUB :: Session#addMediaListener Session.ts:168:9
STUB :: Session#addMediaListener Session.ts:168:9
STUB :: Session#addMediaListener Session.ts:168:9
STUB :: Session#addMediaListener  Session.ts:168:9
STUB :: Session#removeMediaListener Session.ts:230:9

870a759 —

Some decent progress. YouTube is special and loads the sender API directly from an internal Chrome URL. Have to intercept that and rewrite the script URL before it's set. Kinda hacky, but it works.

YouTube casts now. Some missing API methods needed, mostly queue-related (#2).

I am having trouble casting YouTube (www.youtube.com) from Firefox 67.0.2. Clicking the cast icon in the toolbar does nothing. There is no cast icon in the YouTube video window. Casting Netflix works just fine, using the cast icon within the Netflix window. Any ideas?

@timolaf Sorry for the late response. It's very temperamental. Even if the cast button appears, it tends to run into issues fairly quickly, so it's not really compatible yet.

No worries mate, and Thank You for the response. I'm always up for testing stuff like this. Thanks for the efforts.

Chromecast button shows only after I pause the video and then press play on 68.0.1 (64-bit)

c676184 — Fixes issue with videos not playing immediately after casting

@rimrul Thanks for the heads up.

4d6e59e — Enables casting support on newer YouTube UI

Seems to be fully compatible now, as far as I can tell, so I'll close this. Will re-open if other problems are found.

Using Firefox 73.0.1 (64 Bit) on OSX with fx_cast (and bridge) v0.0.6 I am not able to cast from YouTube. The cast button does not appear on the YouTube video and using the fx_cast button on the toolbar only gives a greyed out option to cast the tab. Whitelist entry for YouTube is: "https://www.youtube.com/*"

I have tried Netflix and twitch and both are able to cast without issue so the extension and bridge appear to be functional. I have disabled all other addons

I'm not too familiar with debugging Firefox addons, please let me know if there are logs I can provide

@kpd001 Three places that could have relevant logs:

Web console from YouTube tab has nothing related to fx_cast. A page that works with fx_cast gives "fx_cast (Info): cast.initialize" when the tab is loaded so it's not initializing for the YouTube pages

I'll look through the other links above and see if I can find out anything useful

I should also mention previous versions have not worked with YouTube for me. I believe I've had the extension installed since v0.0.4

Just tried fx_cast 0.0.6 on Firefox 73.0.1 on Linux x86_64; casting Netflix works, Youtube doesn't.

I am having a similar issue in FF75.0b2 on Mac OSX 10.15.3. Netflix casts ok. No cast icon on the YouTube video, and when I click the fx_cast icon on the YT browser tab the Cast button next to my device is greyed out.

Not seeing the YT cast button appear on FF 86, macOS 11.2. (first time user)
Bridge is connected and https://www.youtube.com/*added to match patterns.
User agent sent to youtube.com: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:72.0) Chrome/80.0.3987.87 Gecko/20100101 Firefox/72.0

fx_cast (Info): cast.initialize cast_sender.js:1:1201
CAST MSG: [0.015s] [yt.mdx.remote] LocalScreenService: Initializing with []
cast_sender.js:1:18949
CAST MSG: [0.015s] [yt.mdx.remote] ScreenService: Updated manual screens: []
cast_sender.js:1:18949
CAST MSG: [0.015s] [yt.mdx.remote] ScreenService: Initializing automatic screens: []
cast_sender.js:1:18949
CAST MSG: [0.015s] [yt.mdx.remote] OnlineScreenService: Initialized with {}
cast_sender.js:1:18949
CAST MSG: [0.016s] [yt.mdx.remote] cloudview: cloudview.createSingleton_: true
cast_sender.js:1:18949
CAST MSG: [0.018s] [yt.mdx.remote] remote: Initializing: {"device":"Desktop","app":"youtube-desktop","loadCastApiSetupScript":true,"enableDialLoungeToken":false,"enableCastLoungeToken":false}
cast_sender.js:1:18949
CAST MSG: [0.018s] [yt.mdx.remote] remote:  -- with channel params: {"device":"REMOTE_CONTROL","id":"d02ebcba-7685-4bb1-86c6-9ec966eaa283","name":"Desktop","app":"youtube-desktop","mdxVersion":3}
cast_sender.js:1:18949
CAST MSG: [0.021s] [yt.mdx.remote] cloudview: clearCurrentReceiver
cast_sender.js:1:18949
CAST MSG: [0.021s] [yt.mdx.remote] remote: Skipping connecting because no session screen found.
cast_sender.js:1:18949
CAST MSG: [0.322s] [yt.mdx.remote] cloudview: setCastInstalled_ true
cast_sender.js:1:18949
fx_cast (Info): STUB :: cast.setCustomReceivers cast_sender.js:1:1201
CAST MSG: [0.338s] [yt.mdx.remote] cloudview: setApiReady_ true
cast_sender.js:1:18949
CAST MSG: [0.339s] [yt.mdx.remote] Controller: Receiver availability updated: unavailable
cast_sender.js:1:18949

I am able to cast to the Chromecast, how do I stop casting?

No luck casting from YouTube on macOS with Firefox Developer Edition v99.0b2

YouTube not working (actually no site I tried worked); Firefox 114.0.2 (64-bit) and fx-cast-bridge v0.3.0 (installed via Homebrew) on macOS Monterey (12.6.6), Intel machine. It detects my Chromecast device, but doesn't add cast controls anywhere, even after allow-listing.