NOTICE: By continued use of this site you understand and agree to the binding Terms of Service and Privacy Policy.
// ==UserScript== // @name YouTube to Piped Links and Embeds Replacer on all websites // @description Replaces YouTube links and embeds with Piped.video links in the HTML on all websites. // @name:af YouTube na Piped skakels en ingebedde vervanger op alle webwerwe // @description:af Vervang YouTube-skakels en ingebedde met Piped.video-skakels in die HTML op alle webwerwe. // @name:ar استبدال روابط وتضمينات YouTube بـ Piped على جميع المواقع الإلكترونية // @description:ar يستبدل روابط YouTube والتضمينات بروابط Piped.video في HTML على جميع المواقع الإلكترونية. // @name:az Bütün veb saytlarda YouTube bağlantılarını və yerləşdirmələri Piped bağlantıları ilə əvəz edir // @description:az Bütün veb saytlarda HTML-də YouTube bağlantılarını və yerləşdirmələri Piped.video bağlantıları ilə əvəz edir. // @name:bg Замяна на YouTube връзки и вградени с Piped връзки на всички уебсайтове // @description:bg Замества YouTube връзки и вградени с Piped.video връзки в HTML на всички уебсайтове. // @name:bn সমস্ত ওয়েবসাইটে YouTube লিঙ্ক এবং এমবেড প্রতিস্থাপন Piped লিঙ্ক দিয়ে // @description:bn সমস্ত ওয়েবসাইটের HTML-এ YouTube লিঙ্ক এবং এমবেডগুলি Piped.video লিঙ্ক দিয়ে প্রতিস্থাপন করে। // @name:ca Substitució d'enllaços i incrustacions de YouTube per enllaços de Piped a tots els llocs web // @description:ca Substitueix els enllaços i incrustacions de YouTube per enllaços de Piped.video en el HTML de tots els llocs web. // @name:cs Nahrazení odkazů a vložení YouTube za odkazy Piped na všech webových stránkách // @description:cs Nahrazuje odkazy a vložení YouTube za odkazy Piped.video v HTML na všech webových stránkách. // @name:da Udskiftning af YouTube-links og indlejringer med Piped-links på alle websteder // @description:da Erstatter YouTube-links og indlejringer med Piped.video-links i HTML på alle websteder. // @name:de Ersetzen von YouTube-Links und Einbettungen durch Piped-Links auf allen Websites // @description:de Ersetzt YouTube-Links und Einbettungen durch Piped.video-Links im HTML auf allen Websites. // @name:el Αντικατάσταση συνδέσμων και ενσωματώσεων YouTube με συνδέσμους Piped σε όλους τους ιστότοπους // @description:el Αντικαθιστά τους συνδέσμους και τις ενσωματώσεις YouTube με συνδέσμους Piped.video στο HTML σε όλους τους ιστότοπους. // @name:eo Anstataŭigo de YouTube-ligoj kaj enkorpigoj per Piped-ligoj sur ĉiuj retejoj // @description:eo Anstataŭigas YouTube-ligojn kaj enkorpigojn per Piped.video-ligoj en la HTML sur ĉiuj retejoj. // @name:es Reemplazo de enlaces y incrustaciones de YouTube por enlaces de Piped en todos los sitios web // @description:es Reemplaza los enlaces y las incrustaciones de YouTube por enlaces de Piped.video en el HTML de todos los sitios web. // @name:fi YouTube-linkkien ja upotusten korvaaminen Piped-linkeillä kaikilla verkkosivustoilla // @description:fi Korvaa YouTube-linkit ja upotukset Piped.video-linkeillä HTML:ssä kaikilla verkkosivustoilla. // @name:fr Remplacement des liens et des intégrations YouTube par des liens Piped sur tous les sites web // @description:fr Remplace les liens et les intégrations YouTube par des liens Piped.video dans le HTML sur tous les sites web. // @name:gl Substitución de ligazóns e insercións de YouTube por ligazóns de Piped en todos os sitios web // @description:gl Substitúe as ligazóns e insercións de YouTube por ligazóns de Piped.video no HTML de todos os sitios web. // @name:he החלפת קישורים והטמעות של YouTube בקישורי Piped בכל האתרים // @description:he מחליף את קישורי YouTube וההטמעות בקישורי Piped.video ב-HTML בכל האתרים. // @name:hi सभी वेबसाइटों पर YouTube लिंक और एंबेड को Piped लिंक से बदलें // @description:hi सभी वेबसाइटों पर HTML में YouTube लिंक और एंबेड को Piped.video लिंक से बदलता है। // @name:hu YouTube-hivatkozások és beágyazások cseréje Piped-hivatkozásokra minden webhelyen // @description:hu YouTube-hivatkozások és beágyazások cseréje Piped.video-hivatkozásokra a HTML-ben minden webhelyen. // @name:id Pengganti tautan dan sematan YouTube dengan tautan Piped di semua situs web // @description:id Mengganti tautan dan sematan YouTube dengan tautan Piped.video di HTML di semua situs web. // @name:is Skipta út YouTube tenglum og ívafi með Piped tenglum á öllum vefsíðum // @description:is Skipta út YouTube tenglum og ívafi með Piped.video tenglum í HTML á öllum vefsíðum. // @name:it Sostituzione dei collegamenti e incorporamenti di YouTube con collegamenti Piped su tutti i siti web // @description:it Sostituisce i collegamenti e gli incorporamenti di YouTube con collegamenti Piped.video nell'HTML su tutti i siti web. // @name:ja すべてのウェブサイトでYouTubeリンクと埋め込みをPipedリンクに置き換えます // @description:ja すべてのウェブサイトでHTML内のYouTubeリンクと埋め込みをPiped.videoリンクに置き換えます。 // @name:km ប្តូរតំណ និងបង្កប់ YouTube ជា Piped លើគេហទំព័រទាំងអស់ // @description:km ប្តូរតំណ និងបង្កប់ YouTube ជាតំណ Piped.video ក្នុង HTML នៅលើគេហទំព័រទាំងអស់។ // @name:ko 모든 웹사이트에서 YouTube 링크와 임베드를 Piped 링크로 대체 // @description:ko 모든 웹사이트의 HTML에서 YouTube 링크와 임베드를 Piped.video 링크로 대체합니다. // @name:ms Gantikan pautan dan sematan YouTube dengan pautan Piped di semua laman web // @description:ms Menggantikan pautan dan sematan YouTube dengan pautan Piped.video dalam HTML di semua laman web. // @name:mt Sostituzzjoni ta' links u embeds ta' YouTube b'links ta' Piped fuq il-websajts kollha // @description:mt Jissostitwixxi links u embeds ta' YouTube b'links ta' Piped.video fil-HTML fuq il-websajts kollha. // @name:nb Erstatte YouTube-lenker og innebygginger med Piped-lenker på alle nettsteder // @description:nb Erstatter YouTube-lenker og innebygginger med Piped.video-lenker i HTML på alle nettsteder. // @name:nl Vervang YouTube-links en ingesloten inhoud door Piped-links op alle websites // @description:nl Vervangt YouTube-links en ingesloten inhoud door Piped.video-links in de HTML op alle websites. // @name:pl Zamiana linków i osadzonych treści YouTube na linki Piped na wszystkich stronach internetowych // @description:pl Zamienia linki i osadzone treści YouTube na linki Piped.video w HTML na wszystkich stronach internetowych. // @name:pt Substituição de links e incorporações do YouTube por links do Piped em todos os sites // @description:pt Substitui links e incorporações do YouTube por links do Piped.video no HTML em todos os sites. // @name:ro Înlocuirea linkurilor și încorporărilor YouTube cu linkuri Piped pe toate site-urile web // @description:ro Înlocuiește linkurile și încorporările YouTube cu linkuri Piped.video în HTML pe toate site-urile web. // @name:ru Замена ссылок и встраиваний YouTube на ссылки Piped на всех веб-сайтах // @description:ru Заменяет ссылки и встраивания YouTube на ссылки Piped.video в HTML на всех веб-сайтах. // @name:sr Замена линкова и уградње YouTube са Piped линковима на свим веб сајтовима // @description:sr Замењује линкове и уградње YouTube са Piped.video линковима у HTML на свим веб сајтовима. // @name:sv Ersätt YouTube-länkar och inbäddningar med Piped-länkar på alla webbplatser // @description:sv Ersätter YouTube-länkar och inbäddningar med Piped.video-länkar i HTML på alla webbplatser. // @name:th แทนที่ลิงก์และการฝัง YouTube ด้วยลิงก์ Piped บนเว็บไซต์ทั้งหมด // @description:th แทนที่ลิงก์และการฝัง YouTube ด้วยลิงก์ Piped.video ใน HTML บนเว็บไซต์ทั้งหมด // @name:tl Palitan ang mga link at embed ng YouTube ng mga link ng Piped sa lahat ng mga website // @description:tl Pinapalitan ang mga link at embed ng YouTube ng mga link ng Piped.video sa HTML sa lahat ng mga website. // @name:tr Tüm web sitelerinde YouTube bağlantılarını ve gömme kodlarını Piped bağlantılarıyla değiştirir // @description:tr Tüm web sitelerinde YouTube bağlantılarını ve gömme kodlarını HTML'de Piped.video bağlantılarıyla değiştirir. // @name:uk Заміна посилань і вбудовувань YouTube на посилання Piped на всіх веб-сайтах // @description:uk Заміщує посилання та вбудовування YouTube на посилання Piped.video в HTML на всіх веб-сайтах. // @name:vi Thay thế các liên kết và nhúng YouTube bằng liên kết Piped trên tất cả các trang web // @description:vi Thay thế các liên kết và nhúng YouTube bằng liên kết Piped.video trong HTML trên tất cả các trang web. // @name:zh 将所有网站上的YouTube链接和嵌入替换为Piped链接 // @description:zh 将所有网站上的HTML中的YouTube链接和嵌入替换为Piped.video链接。 // @match *://*/* // @icon https://gitlab.com/uploads/-/system/project/avatar/59164083/youtube-to-piped.jpg // @version 1.1.1 // @author BreatFR // @copyright 2024, BreatFR (https://breat.fr) // @grant none // @namespace https://gitlab.com/breatfr // @homepageURL https://gitlab.com/breatfr/youtube-to-piped-links-and-embeds-replacer-on-all-websites // @downloadURL https://gitlab.com/breatfr/youtube-to-piped-links-and-embeds-replacer-on-all-websites/-/raw/main/js/youtube-to-piped-links-and-embeds-replacer-on-all-websites.user.js // @updateURL https://gitlab.com/breatfr/youtube-to-piped-links-and-embeds-replacer-on-all-websites/-/raw/main/js/youtube-to-piped-links-and-embeds-replacer-on-all-websites.user.js // @supportURL https://discord.gg/Q8KSHzdBxs // @license AGPL-3.0-or-later; https://www.gnu.org/licenses/agpl-3.0.txt // ==/UserScript== (function() { 'use strict'; // Fonction pour remplacer les liens YouTube par des liens Piped.video dans le HTML function replaceYouTubeLinks() { var links = document.getElementsByTagName('a'); for (var i = 0; i < links.length; i++) { var link = links[i]; if (link.href.includes('youtube.com/watch?v=')) { var videoId = link.href.split('v=')[1]; var ampersandPosition = videoId.indexOf('&'); if (ampersandPosition !== -1) { videoId = videoId.substring(0, ampersandPosition); } link.href = 'https://piped.video/watch?v=' + videoId; fetchMetadata(link, videoId); } } } // Fonction pour remplacer les embeds YouTube par des embeds Piped dans le HTML function replaceYouTubeEmbeds() { var iframes = document.getElementsByTagName('iframe'); for (var i = 0; i < iframes.length; i++) { var iframe = iframes[i]; if (iframe.src.includes('youtube.com/embed/')) { var videoId = iframe.src.split('embed/')[1]; var ampersandPosition = videoId.indexOf('?'); if (ampersandPosition !== -1) { videoId = videoId.substring(0, ampersandPosition); } iframe.src = 'https://piped.video/embed/' + videoId; fetchMetadata(iframe, videoId); } } } // Fonction pour récupérer les métadonnées de Piped.video function fetchMetadata(element, videoId) { var apiUrl = 'https://pipedapi.kavin.rocks/streams/' + videoId; fetch(apiUrl) .then(response => response.json()) .then(data => { if (data.title) { element.title = data.title; } if (data.thumbnailUrl) { var img = document.createElement('img'); img.src = data.thumbnailUrl; img.alt = data.title; img.style.maxWidth = '100px'; // Ajustez la taille selon vos besoins element.parentNode.insertBefore(img, element); } }) .catch(error => { console.error('Erreur lors de la récupération des métadonnées :', error); }); } // Exécuter les fonctions lors du chargement de la page et lors des changements dans le DOM document.addEventListener('DOMContentLoaded', function() { replaceYouTubeLinks(); replaceYouTubeEmbeds(); }); var observer = new MutationObserver(function(mutations) { replaceYouTubeLinks(); replaceYouTubeEmbeds(); }); observer.observe(document.body, { childList: true, subtree: true }); })();