Additional pro-tip: you can just launch mpv from the terminal using the YouTube url and it will open a new player.
Thank you for your work, but why not just use ff2mpv?
Honestly, because I didn't know (a) that ff2mpv even existed, or that (b) mpv could play YouTube URLs directly. So thanks! I learnt two things today :-)
It was still a fun project though 'cause I learnt how to write a Firefox extension and get the browser to launch programs on-click, so not a waste of time!
This is sweet, this exact same idea has been kicking around my head for awhile but I've never taken the initiative.
I did write a script (powershell lol), that uses yt-dlp to download all your subscription videos as they come in and sends a notification. Could easily be modified to work on linux and use ntfy or another notification service. ALso no need to scrape your subscriptions as it stays in sync with your currently subscribed channels.
can you please share a video of how it looks like when implemented. I think it is already possible to watch videos using VLC ?
I've had a couple videos that wouldn't load properly in VLC. Rare, but it happens. Alternatives are always welcome.
I don't think I have it in me to put together a video, but I can describe it if you like.
Once you install the extension and follow the setup instructions, you just go to a YouTube page. The extension adds an ugly button to the top-left of the page that says "bypass". When you click it, Firefox launches yt-dlp [the URL you're at] -o - | mpv -
which basically just downloads the video and streams the output through the mpv
video player. So now you're watching just the video, with no web page necessary.
My best guess would be that the internal player of Firefox comes to play here.
You can try opening any MP4 with Firefox
You are the best.
I was curious how you implemented this as it's pretty much the default YT bypass qutebrowser users use. Then I read the MIME type addition you did and had a good laugh. That's clever. Always nice to see a fellow Go user, too.
Is there another way to do this? This hack was the only way I could figure out how to get Firefox to invoke an external binary, but if there's a more conventional way to do it, I'd like to know 'cause I have another more complicated project in need of a pattern much like this one.
No, the way you did it is the only way I can think you can. Otherwise it opens up things to arbitrary code execution. I'm not exactly sure how qutebrowser gets away with it, but I know it's built on QT so maybe it just isn't running sandboxed or had some special method for calling external binaries/scripts. You might take a look at that project and see, but Firefox/qutebrowser is probably like comparing apples and oranges.
That's actually very helpful, thanks. I've been working on another project to open certain URLs in specific browsers/profiles, and wanted to be sure that I wasn't missing a more obvious design pattern. The project is here if you're curious.
Awesome! Thanks!
Great username, btw.
What is MPV?
It's a powerful video player in Linuxland.
Piracy: ꜱᴀɪʟ ᴛʜᴇ ʜɪɢʜ ꜱᴇᴀꜱ
⚓ Dedicated to the discussion of digital piracy, including ethical problems and legal advancements.
Rules • Full Version
1. Posts must be related to the discussion of digital piracy
2. Don't request invites, trade, sell, or self-promote
3. Don't request or link to specific pirated titles, including DMs
4. Don't submit low-quality posts, be entitled, or harass others
Loot, Pillage, & Plunder
📜 c/Piracy Wiki (Community Edition):
💰 Please help cover server costs.
Ko-fi | Liberapay |