Firefox Browser Add-ons
  • Extensions
  • Themes
    • for Firefox
    • Dictionaries & Language Packs
    • Other Browser Sites
    • Add-ons for Android
Log in
Preview of Ry-YouTube Default Settings

Ry-YouTube Default Settings by Ryan Heida

A browser extension that automatically applies your **default playback quality and speed** on YouTube — both for regular videos and Shorts. Works on **Google Chrome** and **Mozilla Firefox** from a single Manifest V3 package.

0 (0 reviews)0 (0 reviews)
Download Firefox and get the extension
Download file

Extension Metadata

About this extension
A browser extension that automatically applies your default playback quality and speed on YouTube — both for regular videos and Shorts. Works on Google Chrome and Mozilla Firefox from a single Manifest V3 package.

A lightweight add-on: every time you open a YouTube video, your preferred settings are applied automatically, so you no longer need to set the quality and speed manually.

The popup is bilingual (Persian / English), with Persian as the default language.

✨ Features
  • 🎚 Default speed — pick from ready-made values (0.25x to 2x) or enter a custom number (0.07 to 16).
  • 🎞 Default quality — from 144p up to 4320p (8K), or Auto.
  • 🧩 Two independent setting sets — one for /watch, one for /shorts.
  • 🚫 No fallback — if the selected quality isn't present in the video's menu, the extension does nothing and leaves YouTube's current quality untouched (by design).
  • 🌐 Browser-language independent — quality menu detection is based on the p suffix, not the word "Quality", so it works with any browser language.
  • 🔄 Reset-resistant — if YouTube resets the speed to 1, it is reapplied automatically.
  • 🌍 Bilingual UI — Persian (default) and English, switchable from the popup; your choice is remembered.
  • ⚡ No background script — lighter and more compatible across browsers.

🚀 Usage
  1. Click the extension icon in the toolbar to open the settings popup.
  2. The enable/disable toggle at the top controls the whole extension.
  3. In the Videos (youtube.com/watch) and Shorts (youtube.com/shorts) sections:
  4. Choose a default quality (or "Don't change" to leave quality untouched).
  5. Choose a default speed from the list, or pick "Custom…" and type a number.
  6. Click Save. Settings are applied immediately to open tabs.
  7. Go to YouTube and open a video or Short — your settings are applied automatically.

Language

Use the FA / EN buttons in the top-right of the popup to switch the interface language. Persian is the default; your choice is persisted and restored on the next open.

Important note about quality
If the selected quality (e.g. 720p) is not available in the player menu when a video opens, the extension does nothing. This is intentional: your quality is never changed without your consent, and the video simply plays at YouTube's own default quality.

Settings schema

Settings are stored in chrome.storage.local:

{
"enabled": true,
"lang": "fa",
"video": { "quality": "720p", "speed": "1.5" },
"shorts": { "quality": "don't change", "speed": "1" }
}


| Field | Values |
| ---------- | ------------------------------------------------------------------- |
| enabled | true \| false |
| lang | "fa" \| "en" (default: "fa") |
| quality | "don't change" \| "Auto" \| "144p" … "4320p" |
| speed | numeric string between "0.07" and "16" (e.g. "1.5", "2") |



🛠 How it works

The extension consists of a single content script on youtube.com:
  1. Page detection: location.pathname determines whether the user is on /watch or /shorts, and the matching setting set is chosen.
  2. New-video detection: because YouTube is a SPA, the yt-navigate-finish event and a MutationObserver on the <video> element are used to catch navigation between videos.
  3. Apply speed: sets video.playbackRate and keeps it alive on ratechange events against YouTube's resets.
  4. Apply quality:
  5. Opens the player settings menu (gear button).
  6. Finds the "Quality" item using a language-independent indicator (an item whose .ytp-menuitem-content ends with p or is Auto).
  7. Enters the quality submenu and looks for the target option.
  8. If found → clicks it. If not found → closes the menu and does nothing.

The popup uses i18n.js: a tiny dictionary-based helper. Elements with a data-i18n attribute are translated automatically; data-i18n-title and data-i18n-placeholder are supported too. The chosen language is persisted in storage under the lang key.

🧑‍💻 Development

You can visit the Github repository (https://github.com/Ryan-PG/ry-youtube-defaults-browser-plugin) for development.
Rated 0 by 0 reviewers
Log in to rate this extension
There are no ratings yet

Star rating saved

5
0
4
0
3
0
2
0
1
0
No reviews yet
Permissions and data

Required permissions:

  • Access your data for sites in the youtube.com domain

Data collection:

  • The developer says this extension doesn't require data collection.
Learn more
More information
Add-on Links
  • Support site
  • Support Email
  • Copy add-on ID
Version
1.0.0
Size
55.22 KB
Last updated
7 days ago (Jun 23, 2026)
Related Categories
  • Web Development
  • Language Support
  • Social & Communication
License
Mozilla Public License 2.0
Version History
  • See all versions
Add to collection
Report this add-on
Go to Mozilla's homepage

Add-ons

  • About
  • Firefox Add-ons Blog
  • Extension Workshop
  • Developer Hub
  • Developer Policies
  • Community Blog
  • Forum
  • Report a bug
  • Review Guide

Download

  • Download Firefox
  • Windows
  • macOS
  • iOS
  • Android
  • Linux
  • All

Latest Builds

  • Nightly
  • Beta

Firefox for Business

  • Enterprise

Community

  • Connect
  • Contribute
  • Developer

Follow

  • Instagram
  • YouTube
  • TikTok
  • Bluesky
  • Podcast
  • Privacy
  • Cookies
  • Legal

Except where otherwise noted, content on this site is licensed under the Creative Commons Attribution Share-Alike License v3.0 or any later version.