{"id":14007082,"url":"https://github.com/vantezzen/skip-silence","last_synced_at":"2025-04-05T06:09:34.261Z","repository":{"id":36797594,"uuid":"223726497","full_name":"vantezzen/skip-silence","owner":"vantezzen","description":"🔇 Browser extension to skip silent parts in videos and audio files on any webpage","archived":false,"fork":false,"pushed_at":"2023-11-12T14:32:42.000Z","size":37513,"stargazers_count":430,"open_issues_count":47,"forks_count":45,"subscribers_count":7,"default_branch":"master","last_synced_at":"2025-03-29T05:08:47.851Z","etag":null,"topics":["audio","extension","hacktoberfest","silence","video","webextension"],"latest_commit_sha":null,"homepage":"https://vantezzen.io/get/skipsilence","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/vantezzen.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"custom":["https://www.buymeacoffee.com/vantezzen"]}},"created_at":"2019-11-24T10:27:30.000Z","updated_at":"2025-03-24T06:33:39.000Z","dependencies_parsed_at":"2024-08-10T10:13:56.090Z","dependency_job_id":null,"html_url":"https://github.com/vantezzen/skip-silence","commit_stats":null,"previous_names":[],"tags_count":25,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vantezzen%2Fskip-silence","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vantezzen%2Fskip-silence/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vantezzen%2Fskip-silence/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vantezzen%2Fskip-silence/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/vantezzen","download_url":"https://codeload.github.com/vantezzen/skip-silence/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247294541,"owners_count":20915340,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["audio","extension","hacktoberfest","silence","video","webextension"],"created_at":"2024-08-10T10:01:48.603Z","updated_at":"2025-04-05T06:09:34.244Z","avatar_url":"https://github.com/vantezzen.png","language":"TypeScript","funding_links":["https://www.buymeacoffee.com/vantezzen"],"categories":["TypeScript"],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n    \u003cimg src=\"img/title.png\"\u003e\u003cbr /\u003e\n    \u003ca href=\"https://chrome.google.com/webstore/detail/skip-silence/fhdmkhbefcbhakffdihhceaklaigdllh\"\u003e\n        \u003cimg src=\"img/chrome.png\" alt=\"Available on chrome web store\" width=\"150\"\u003e\n    \u003c/a\u003e\n    \u003ca href=\"https://addons.mozilla.org/de/firefox/addon/skip-silence/\"\u003e\n        \u003cimg src=\"img/firefox.png\" alt=\"Available on Firefox Addons\" width=\"150\"\u003e\n    \u003c/a\u003e\n    \u003ca href=\"https://microsoftedge.microsoft.com/addons/detail/skip-silence/njflliajflcedhfmpmhdekhmejekonmc\"\u003e\n        \u003cimg src=\"img/edge.png\" alt=\"Available on Edge Add-ons\" width=\"150\"\u003e\n    \u003c/a\u003e\n    \u003ca href=\"https://www.buymeacoffee.com/vantezzen\" target=\"_blank\"\u003e\n      \u003cimg src=\"assets/bmc.png\" alt=\"Buy Me A Coffee\" width=\"150\"\u003e\n    \u003c/a\u003e\n\u003c/p\u003e\n\n# Skip Silence\n\n\"Skip Silence\" is a browser extension that allows you to automatically skip parts of a video that are silent.\nIt is highly inspired by CaryKH's [automatic on-the-fly video editing tool](https://www.youtube.com/watch?v=DQ8orIurGxw).\nThe extension works with most websites that use HTML5 `audio` and `video` elements (like YouTube).\n\n## Demo\n\n\u003cimg src=\"img/demo.gif\" height=\"300\"\u003e\n\n(Video used: Unedited part of \u003chttps://youtu.be/DQ8orIurGxw?t=234\u003e)\n\n## Installation\n\n\"Skip Silence\" is available through the [chrome web store](https://chrome.google.com/webstore/detail/skip-silence/fhdmkhbefcbhakffdihhceaklaigdllh).\nYou can also install this extension on Chrome by downloading the source from GitHub and loading the unpacked, built extension through \"chrome://extensions\" as a \"Temporary Add-On\".\n\n## Firefox\n\n\"Skip Silence\" only has **restricted** support for Firefox.\n\nOn Chrome, \"Skip Silence\" uses a browser API to support analyzing audio on almost all websites. Unfortunately, Firefox currently doesn't support this API and thus the extension doesn't work on some websites. Take a look at [open bugs](#open-browser-bugs) for more info.\n\nIf you have problems with the extension on a website on Firefox, you can try using a Chromium-based browser like Ungoogled Chromium.\n\n## Usage\n\nWhen \"Skip Silence\" detects a compatible element on the current page, its icon in the menubar will be colored.\n\n![Changing icon](img/icon_change.png)\n\nYou can now click on this icon to reveal the settings popup.\n\nYou can now:\n\n- Click the toggle button to enable and disable \"Skip Silence\" for the current page\n- Change \"Skip Silence\"'s settings\n- View the current volume using the VU meter\n  - The VU Meter will be blue when on normal speed and green when currently in a silent part\n  - The red line represents your current volume threshold\n\n## Limitations\n\n- Won't work on sites that use other methods to play video or audio (e.g. Spotify Web Player uses a special method to prevent songs from being downloaded)\n\n## How does it work?\n\nThe extension attaches a JavaScript audio analyser to the current video or audio source and will speed up or slow down the video using the current volume of the audio.\n\n## Open browser bugs\n\nThe extension sometimes seems to push the boundaries of what browsers can do. Due to this, some features that would be nice to have can't be implemented as the browsers contain bugs or missing features.\n\nCurrent list of bugs/feature requests the extension is waiting for\n\n- Chrome mutes tab when `preferCurrentTab: true` is set\n  - https://bugs.chromium.org/p/chromium/issues/detail?id=1317964\u0026q=preferCurrentTab\u0026can=2\n  - This would make selecting the tab for the \"Screen capture\" analyzer type easier\n- Firefox doesn't support audio for screen capture\n  - https://bugzilla.mozilla.org/show_bug.cgi?id=1541425\n  - Due to this, the \"Screen capture\" analyzer type is not available on Firefox\n- Firefox doesn't support the `tabCapture` API\n  - https://bugzilla.mozilla.org/show_bug.cgi?id=1391223\n  - Due to this, the \"Tab-output analysis\" analyzer type is not available on Firefox#\n- Chrome MV3 doesn't support the `tabCapture` API\n  - https://github.com/GoogleChrome/chrome-extensions-samples/issues/627\n  - Due to this, Skip silence is currently still using MV2 on Chrome\n- Chrome video and audio desynchronize over time when repeatedly switching speed\n  - https://bugs.chromium.org/p/chromium/issues/detail?id=1231093\n  - \"Keep audio in sync\" was added as a temporary fix for this bug\n\n## Development\n\nThis extension is using the [plasmo framework](https://docs.plasmo.com/) for developing and building.\n\nTo start development, follow these steps:\n\n1. Check if your [Node.js](https://nodejs.org/) version is v18 or newer.\n2. Clone this repository.\n3. Run `pnpm install` to install the dependencies.\n4. Run `pnpm dev` to start the development server for chrome or `pnpm dev:firefox` for Firefox.\n5. Load your extension on Chrome following:\n   1. Access `chrome://extensions/`\n   2. Check `Developer mode`\n   3. Click on `Load unpacked extension`\n   4. Select the `build` folder.\n6. Happy hacking.\n\n## Build\n\nRequirements:\n\n- NodeJS 18\n- preferably pnpm but npm will also work\n\nRun these commands in the root of the extension files:\n\n```bash\npnpm install # or npm install\npnpm run build # or npm run build\npnpm run build:firefox # or npm run build\n```\n\nAfter the build is done, the raw contents will be placed in `/build` and the compacted zip will be placed in `/build/[chrome/firefox]-mv2-prod.zip`.\n\n## Contributing\n\nPlease fork this repository and create a new pull request to contribute to it.\n\nIf you notice any errors, please create a new issue on GitHub.\n\n## License\n\nLicensed under the [MIT License](LICENSE)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvantezzen%2Fskip-silence","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvantezzen%2Fskip-silence","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvantezzen%2Fskip-silence/lists"}