// ==UserScript==
// @name Universal Media Pro Toolkit | Video Download, URL Extract, Play
// @name:af Universal Media Pro Toolkit | Video aflaai, URL onttrek, speel
// @name:am Universal Media Pro Toolkit | ቪዲዮ አውርድ፣ URL ማውጣት፣ መጫወት
// @name:ar Universal Media Pro Toolkit | تحميل الفيديو، استخراج URL، تشغيل
// @name:as Universal Media Pro Toolkit | ভিডিঅ' ডাউনলোড, ইউআৰএল নিষ্কাশন, প্লে
// @name:az Universal Media Pro Toolkit | Video Yükləmə, URL Çıxarma, Oyna
// @name:be Universal Media Pro Toolkit | Спампаваць відэа, выняць URL, гуляць
// @name:bg Universal Media Pro Toolkit | Изтегляне на видео, извличане на URL адрес, възпроизвеждане
// @name:bn Universal Media Pro Toolkit | ভিডিও ডাউনলোড, ইউআরএল নিষ্কাশন, প্লে
// @name:bs Universal Media Pro Toolkit | Preuzimanje videa, ekstrakcija URL-a, reprodukcija
// @name:ca Universal Media Pro Toolkit | Baixada de vídeo, extracció d'URL, reproducció
// @name:cs Universal Media Pro Toolkit | Stahování videa, extrakce URL, přehrávání
// @name:da Universal Media Pro Toolkit | Videooverførsel, URL-ekstraktion, afspil
// @name:de Universal Media Pro Toolkit | Video-Download, URL-Extraktion, Wiedergabe
// @name:dz Universal Media Pro Toolkit | བརྙན་ལམ་ཕབ་ལེན། URL ཕྱིར་འདྲེན། གཏང་ནི།
// @name:el Universal Media Pro Toolkit | Λήψη βίντεο, εξαγωγή URL, αναπαραγωγή
// @name:en Universal Media Pro Toolkit | Video Download, URL Extract, Play
// @name:en-GB Universal Media Pro Toolkit | Video Download, URL Extract, Play
// @name:en-US Universal Media Pro Toolkit | Video Download, URL Extract, Play
// @name:eo Universal Media Pro Toolkit | Video Elŝuto, URL Ekstraktado, Ludu
// @name:es Universal Media Pro Toolkit | Descarga de video, extracción de URL, reproducción
// @name:es-419 Universal Media Pro Toolkit | Descarga de video, extracción de URL, reproducción
// @name:es-US Universal Media Pro Toolkit | Descarga de video, extracción de URL, reproducción
// @name:et Universal Media Pro Toolkit | Video allalaadimine, URL-i eraldamine, esitamine
// @name:eu Universal Media Pro Toolkit | Bideoa deskargatu, URL erauzi, erreproduzitu
// @name:fa Universal Media Pro Toolkit | دانلود ویدیو، استخراج URL، پخش
// @name:fi Universal Media Pro Toolkit | Videon lataus, URL-osoitteen haku, toisto
// @name:fil Universal Media Pro Toolkit | Video Download, Extract URL, Play
// @name:fr Universal Media Pro Toolkit | Téléchargement vidéo, extraction d'URL, lecture
// @name:fr-CA Universal Media Pro Toolkit | Téléchargement vidéo, extraction d'URL, lecture
// @name:ga Universal Media Pro Toolkit | Íoslódáil Fíсеáin, Sliocht URL, Seinn
// @name:gl Universal Media Pro Toolkit | Descarga de vídeos, extracción de URL, reprodución
// @name:gn Universal Media Pro Toolkit | Video Download, URL Extract, Play
// @name:gu Universal Media Pro Toolkit | વિડિઓ ડાઉનલોડ, URL નિષ્કર્ષણ, પ્લે
// @name:ha Universal Media Pro Toolkit | Video Download, URL Extract, Play
// @name:hi Universal Media Pro Toolkit | वीडियो डाउनलोड, यूआरएल निष्कर्षण, प्ले
// @name:hr Universal Media Pro Toolkit | Preuzimanje videa, ekstrakcija URL-a, reprodukcija
// @name:hu Universal Media Pro Toolkit | Videó letöltése, URL-kinyerés, lejátszás
// @name:hy Universal Media Pro Toolkit | Տեսանյութերի ներբեռնում, URL-ի արդյունահանում, նվագարկում
// @name:id Universal Media Pro Toolkit | Unduh Video, Ekstrak URL, Putar
// @name:ig Universal Media Pro Toolkit | Video Download, URL Extract, Play
// @name:is Universal Media Pro Toolkit | Video Download, URL Extract, Play
// @name:it Universal Media Pro Toolkit | Download video, estrazione URL, riproduzione
// @name:iw Universal Media Pro Toolkit | הורדת וידאו, חילוץ URL, הפעלה
// @name:ja 全能メディア工作台 | ビデオダウンロード、URL抽出、ワンクリック再生
// @name:jv Universal Media Pro Toolkit | Ngundhuh Video, Ekstrak URL, Putar
// @name:ka Universal Media Pro Toolkit | ვიდეოს ჩამოტვირთვა, URL-ის ამოღება, დაკვრა
// @name:kk Universal Media Pro Toolkit | Бейне жүктеу, URL шығару, ойнату
// @name:km Universal Media Pro Toolkit | ទាញយកវីដេអូ, ទាញយក URL, ចាក់
// @name:kn Universal Media Pro Toolkit | ವೀಡಿಯೊ ಡೌನ್ಲೋಡ್, URL ಹೊರತೆಗೆಯುವಿಕೆ, ಪ್ಲೇ
// @name:ko 전능 미디어 워크스테이션 | 비디오 다운로드, URL 추출, 원클릭 재생
// @name:ky Universal Media Pro Toolkit | Видео жүктөө, URL чыгаруу, ойнотуу
// @name:lo Universal Media Pro Toolkit | ດາວໂຫລດວິດີໂອ, ແຍກ URL, ຫຼິ້ນ
// @name:lt Universal Media Pro Toolkit | Vaizdo įrašų atsისიუნტიymas, URL išgavimas, atkūrimas
// @name:lv Universal Media Pro Toolkit | Video lejupielāde, URL ieguve, atskaņošana
// @name:mg Universal Media Pro Toolkit | Video Download, URL Extract, Play
// @name:mk Universal Media Pro Toolkit | Преземање видео, екстракција на URL, пуштање
// @name:ml Universal Media Pro Toolkit | വീഡിയോ ডাউনলোড, ইউআরএল নিষ্কাশന, প্লে
// @name:mn Universal Media Pro Toolkit | Видео татах, URL задлах, тоглуулах
// @name:mr Universal Media Pro Toolkit | व्हिडिओ डाउनलोड, URL एक्स्ट्रॅक्शन, प्ले
// @name:ms Universal Media Pro Toolkit | Muat Turun Video, Ekstrak URL, Putar
// @name:mt Universal Media Pro Toolkit | Video Download, URL Extract, Play
// @name:my Universal Media Pro Toolkit | ဗီဒီယိုဒေါင်းလုဒ်၊ URL ထုတ်ယူခြင်း၊ ဖွင့်ခြင်း
// @name:ne Universal Media Pro Toolkit | भिडियो डाउनलोड, URL निकासी, प्ले
// @name:nl Universal Media Pro Toolkit | Video downloaden, URL extraheren, afspelen
// @name:no Universal Media Pro Toolkit | Videonedlasting, URL-ekstraksjon, spill av
// @name:om Universal Media Pro Toolkit | Video Download, URL Extract, Play
// @name:or Universal Media Pro Toolkit | ଭିଡିଓ ଡାଉନଲୋଡ୍, URL ନିଷ୍କର୍ଷଣ, ପ୍ଲେ
// @name:pa Universal Media Pro Toolkit | ਵੀਡੀਓ ਡਾਊਨਲੋਡ, URL ਐਕਸਟਰੈਕਸ਼ਨ, ਪਲੇ
// @name:pl Universal Media Pro Toolkit | Pobieranie wideo, ekstrakcja URL, odtwarzanie
// @name:ps Universal Media Pro Toolkit | Video Download, URL Extract, Play
// @name:pt Universal Media Pro Toolkit | Download de vídeo, extração de URL, reprodução
// @name:pt-BR Universal Media Pro Toolkit | Download de vídeo, extração de URL, reprodução
// @name:pt-PT Universal Media Pro Toolkit | Download de vídeo, extração de URL, reprodução
// @name:ro Universal Media Pro Toolkit | Descărcare video, extracție URL, redare
// @name:ru Universal Media Pro Toolkit | Скачивание видео, извлечение URL, воспроизведение
// @name:rw Universal Media Pro Toolkit | Video Download, URL Extract, Play
// @name:si Universal Media Pro Toolkit | වීඩියෝ බාගත කිරීම, URL නිස්සාරණය, වාදනය
// @name:sk Universal Media Pro Toolkit | Sťahovanie videa, extrakcia URL, prehrávanie
// @name:sl Universal Media Pro Toolkit | Prenos videa, ekstrakcija URL-ja, predvajanje
// @name:sn Universal Media Pro Toolkit | Video Download, URL Extract, Play
// @name:so Universal Media Pro Toolkit | Video Download, URL Extract, Play
// @name:sq Universal Media Pro Toolkit | Shkarkim video, nxjerrje URL-je, luaj
// @name:sr Universal Media Pro Toolkit | Преузимање видеа, екстракција УРЛ-а, репродукција
// @name:sr-Latn Universal Media Pro Toolkit | Preuzimanje videa, ekstrakcija URL-a, reprodukcija
// @name:st Universal Media Pro Toolkit | Video Download, URL Extract, Play
// @name:sv Universal Media Pro Toolkit | Videonedladdning, URL-extraktion, spela upp
// @name:sw Universal Media Pro Toolkit | Kupakua Video, Uchimbaji wa URL, Cheza
// @name:ta Universal Media Pro Toolkit | வீடியோ பதிவிறக்கம், URL பிரித்தெடுத்தல், இயக்கு
// @name:te Universal Media Pro Toolkit | व्हिडिओ डाउनलो़ड, URL వెలికితీత, ప్లే
// @name:tg Universal Media Pro Toolkit | Боргирии видео, истихроҷи URL, пахш
// @name:th Universal Media Pro Toolkit | ดาวน์โหลดวิดีโอ, แยก URL, เล่น
// @name:ti Universal Media Pro Toolkit | Video Download, URL Extract, Play
// @name:tk Universal Media Pro Toolkit | Video Download, URL Extract, Play
// @name:tr Universal Media Pro Toolkit | Video İndirme, URL Çıkarma, Oynat
// @name:ug Universal Media Pro Toolkit | سىن چۈشۈرۈش، URL چىقىرىش، قويۇش
// @name:uk Universal Media Pro Toolkit | Завантаження відео, витяг URL-адреси, відтворення
// @name:ur Universal Media Pro Toolkit | ویڈیو ڈاؤن لوڈ، URL نکالنا، چلائیں
// @name:uz Universal Media Pro Toolkit | Videoni yuklab olish, URL-ni chiqarib olish, ijro etish
// @name:vi Universal Media Pro Toolkit | Tải video, Trích xuất URL, Phát
// @name:yo Universal Media Pro Toolkit | Video Download, URL Extract, Play
// @name:zh-CN 全能媒体工作台 | 视频下载、URL地址提取、点击一键播放、万能网页视频播放器
// @name:zh-HK 全能媒體工作台 | 視頻下載、URL地址提取、點擊一鍵播放、萬能網頁視頻播放器
// @name:zh-TW 全能媒體工作台 | 視頻下載、URL地址提取、點擊一鍵播放、萬能網頁視頻播放器
// @name:zu Universal Media Pro Toolkit | Video Download, URL Extract, Play
// @description Extract direct video URLs, download media easily, and play in a clean, floating window with one click.
// @description:af Onttrek direkte video-URL's, laai media maklik af en speel dit met een klik in 'n skoon, drywende venster.
// @description:am ቀጥተኛ የቪዲዮ ዩአርኤሎችን ያውጡ፣ ሚዲያን በቀላሉ ያውርዱ እና በአንድ ጠቅታ ንፁህ እና ተንሳፋፊ መስኮት ውስጥ ያጫውቱ።
// @description:ar استخرج عناوين URL المباشرة للفيديو، وقم بتنزيل الوسائط بسهولة، وقم بتشغيلها بنقرة واحدة في نافذة عائمة نظيفة.
// @description:as পোনপটীয়া ভিডিঅ' ইউআৰএল উলিওৱা, সহজে মিডিয়া ডাউনলোড কৰা আৰু এটা ক্লিকেৰে পৰিষ্কার, ফ্ল'টিং উইণ্ডোত প্লে কৰা।
// @description:az Birbaşa video URL-lərini çıxarın, medianı asanlıqla yükləyin və bir kliklə təmiz, üzən pəncərədə oynayın.
// @description:be Вымайце прамыя відэа-URL, лёгка спампоўвайце медыя і прайгравайце адным пстрычкай мышы ў чыстым плаваючым акне.
// @description:bg Извличайте директни видео URL адреси, изтегляйте лесно мултимедия и възпроизвеждайте с едно щракване в изчистен, плаващ прозорец.
// @description:bn সরাসরি ভিডিও ইউআরএল বের করুন, সহজে মিডিয়া ডাউনলোড করুন এবং এক ক্লিকে পরিষ্কার, ভাসমান উইন্ডোতে প্লে করুন。
// @description:bs Izvucite direktne video URL-ove, lako preuzmite medije i reproducirajte jednim klikom u čistom, plutajućem prozoru.
// @description:ca Extreu URL de vídeo directes, baixa contingut multimèdia fàcilment i reprodueix amb un sol clic en una finestra flotant neta.
// @description:cs Extrahujte přímé adresy URL videa, snadno stahujte média a přehrávejte jedním kliknutím v čistém plovoucím okně.
// @description:da Udtræk direkte video-URL'er, download medier nemt, og afspil med et enkelt klik i et rent, svævende vindue.
// @description:de Extrahiere direkte Video-URLs, lade Medien einfach herunter und spiele sie mit einem Klick in einem sauberen, schwebenden Fenster ab.
// @description:dz བརྙན་ལམ་གྱི་ URL ཐད་ཀར་ཕྱིར་འདྲེན་འབད་ནི། བརྒྱུད་ལམ་ཕབ་ལེན་འཇམ་ཏོག་ཏོ་འབད་ནི། དྭངས་གསལ་གྱི་སྒོ་སྒྲིག་ནང་ཐེངས་གཅིག་ཨེབ་སྟེ་གཏང་ནི།
// @description:el Εξαγάγετε απευθείας διευθύνσεις URL βίντεο, κατεβάστε εύκολα μέσα και παίξτε με ένα κλικ σε ένα καθαρό, αιωρούμενο παράθυρο.
// @description:en Extract direct video URLs, download media easily, and play in a clean, floating window with one click.
// @description:en-GB Extract direct video URLs, download media easily, and play in a clean, floating window with one click.
// @description:en-US Extract direct video URLs, download media easily, and play in a clean, floating window with one click.
// @description:eo Eltiru rektajn video-URLojn, elŝutu amaskomunikilaron facile kaj ludu per unu klako en pura, flosanta fenestro.
// @description:es Extraiga URL de video directas, descargue medios fácilmente y reproduzca con un solo clic en una ventana flotante limpia.
// @description:es-419 Extraiga URL de video directas, descargue medios fácilmente y reproduzca con un solo clic en una ventana flotante limpia.
// @description:es-US Extraiga URL de video directas, descargue medios fácilmente y reproduzca con un solo clic en una ventana flotante limpia.
// @description:et Väljavõte otsestest video URL-idest, laadige meedia hõlpsalt alla ja esitage ühe klõpsuga puhtas ujuvas aknas.
// @description:eu Atera bideoaren URL zuzenak, deskargatu multimedia erraz eta erreproduzitu klik batekin leiho mugikor garbi batean.
// @description:fa URL های ویدیوی مستقیم را استخراج کنید، رسانه ها را به راحتی دانلود کنید و با یک کلیک در یک پنجره شناور تمیز پخش کنید.
// @description:fi Hae suorat videon URL-osoitteet, lataa mediaa helposti ja toista yhdellä napsautuksella puhtaassa, kelluvassa ikkunassa.
// @description:fil I-extract ang mga direktang URL ng video, madaling i-download ang media, at i-play sa isang click sa isang malinis, lumulutang na window.
// @description:fr Extrayez les URL directes des vidéos, téléchargez facilement des médias et lisez en un clic dans une fenêtre flottante propre.
// @description:fr-CA Extrayez les URL directes des vidéos, téléchargez facilement des médias e t lisez en un clic dans une fenêtre flottante propre.
// @description:ga Sliocht URLanna físeáin díreacha, íoslódáil na meáin go héasca, agus seinn le cliceáil amháin i bhfuinneog ghlan, ar snámh.
// @description:gl Extrae URL de vídeo directas, descarga contido multimedia facilmente e reproduce cun só clic nunha xanela flotante limpa.
// @description:gn Extract direct video URLs, download media easily, and play in a clean, floating window with one click.
// @description:gu ડાયરેક્ટ વિડિયો URL મેળવો, મીડિયા સરળતાથી ડાઉનલોડ કરો અને એક ક્લિકથી ક્લીન, ફ્લોટિંગ વિન્ડોમાં પ્લે કરો.
// @description:ha Extract direct video URLs, download media easily, and play in a clean, floating window with one click.
// @description:hi सीधे वीडियो URL निकालें, मीडिया आसानी से डाउनलोड करें, 和 एक क्लिक से साफ, फ्लोटिंग विंडो में चलाएं।
// @description:hr Izvucite izravne video URL-ove, lako preuzmite medije i reproducirajte jednim klikom u čistom, plutajućem prozoru.
// @description:hu Bontsa ki a közvetlen videó URL-eket, töltsön le egyszerűen médiát, és játsszon le egyetlen kattintással egy tiszta, lebegő ablakban.
// @description:hy Քաղեք ուղղակի տեսանյութերի URL-ները, հեշտությամբ ներբեռնեք լրատվամիջոցները և նվագարկեք մեկ կտտոցով մաքուր, լողացող պատուհանում:
// @description:id Ekstrak URL video langsung, unduh media dengan mudah, dan putar dengan satu klik di jendela mengambang yang bersih.
// @description:ig Extract direct video URLs, download media easily, and play in a clean, floating window with one click.
// @description:is Extract direct video URLs, download media easily, and play in a clean, floating window with one click.
// @description:it Estrai URL video diretti, scarica facilmente i contenuti multimediali e riproducili con un clic in una finestra mobile pulita.
// @description:iw חלץ כתובות URL ישירות של וידאו, הורד מדיה בקלות והפעל בלחיצה אחת בחלון צף נקי.
// @description:ja 動画の直接URLを抽出し、メディアを簡単にダウンロードして、クリーンなフローティングウィンドウでワンクリック再生。
// @description:jv Ekstrak URL video langsung, unduh media kanthi gampang, lan putar nganggo siji klik ing jendela ngambang sig resik.
// @description:ka ამოიღეთ პირდაპირი ვიდეო URL-ები, მარტივად ჩამოტვირთეთ მედია და ითამაშეთ ერთი დაწკაპუნებით სუფთა, მცურავ ფანჯარაში.
// @description:kk Тікелей бейне URL мекенжайларын шығарып алыңыз, медианы оңай жүктеп алыңыз және таза, қалқымалы терезеде бір рет басу арқылы ойнатыңыз.
// @description:km ទាញយក URL វីដេអូផ្ទាល់ ទាញយកមេឌៀយ៉ាងងាយស្រួល និងលេងដោយចុចតែម្តងក្នុងបង្អួចអណ្តែតទឹកស្អាត។
// @description:kn ನೇರ ವೀಡಿಯೊ URL ಗಳನ್ನು ಹೊರತೆಗೆಯಿರಿ, ಮಾಧ್ಯಮವನ್ನು ಸುಲಭವಾಗಿ ಡೌನ್ಲೋಡ್ ಮಾಡಿ ಮತ್ತು ಒಂದು ಕ್ಲಿಕ್ನಲ್ಲಿ ಸ್ವಚ್ಛವಾದ, ತೇಲುವ ವಿಂಡೋದಲ್ಲಿ ಪ್ಲೇ ಮಾಡಿ.
// @description:ko 직접 비디오 URL을 추출하고, 미디어를 쉽게 다운로드하고, 깨끗한 플로팅 창에서 클릭 한 번으로 재생합니다.
// @description:ky Түз видео URL-дарын чыгарып алыңыз, медианы оңай жүктөп алыңыз жана таза, калкыма терезеде бир чыкылдатуу менен ойнотуңуз.
// @description:lo ແຍກ URL ວິດີໂອໂດຍກົງ, ດາວໂຫລດສື່ໄດ້ຢ່າງງ่ายດາຍ, ແລະຫຼິ້ນດ້ວຍການຄລິກດຽວໃນປ່ອງຢ້ຽມທີ່ສະອາດ, ເລື່ອນໄດ້.
// @description:lt Ištraukite tiesioginius vaizdo įrašų URL, lengvai atsისიუნტიymas mediją ir paleiskite vienu paspaudimu švariame, slankiojančiame lange.
// @description:lv Izvelciet tiešos video URL, viegli lejupielādējiet medijus un atskaņojiet ar vienu klikšķi tīrā, peldošā logā.
// @description:mg Extract direct video URLs, download media easily, and play in a clean, floating window with one click.
// @description:mk Извлечете директни URL-адреси на видео, лесно преземајте медиуми и пуштајте со еден клик во чист, лебдечки прозорец.
// @description:ml നേരിട്ടുള്ള വീഡിയോ URL-കൾ എക്സ്ട്രാക്റ്റുചെയ്യുക, മീഡിയ എളുപ്പത്തിൽ ഡൗൺലോഡ് ചെയ്യുക, ശുദ്ധമായ ഫ്ലോട്ടിംഗ് വിൻഡോയിൽ ഒറ്റ ക്ലിക്കിലൂടെ പ്ലേ ചെയ്യുക.
// @description:mn Шууд видео URL-уудыг задалж, медиаг хялبارхан татаж аваад, цэвэрхэн, хөвөгч цонхонд нэг товшилтоор тоглуулаарай.
// @description:mr थेट व्हिडिओ URL काढा, मीडिया सहजपणे डाउनलोड करा आणि एका क्लिकवर स्वच्छ, फ्लोटिंग विंडोमध्ये प्ले करा.
// @description:ms Ekstrak URL video langsung, muat turun media dengan mudah dan putar dengan satu klik dalam tetingkap terapung yang bersih.
// @description:mt Estratt URL tal-vidjo diretti, niżżel il-midja faċilment, u ilgħab bi klikk waħda f'tieqa f'wiċċ l-ilma nadifa.
// @description:my တိုက်ရိုက်ဗီဒီယို URL များကို ထုတ်ယူပါ၊ မီဒီယာကို လွယ်ကူစွာ ဒေါင်းလုဒ်လုပ်ကာ သန့်ရှင်းသော လွင့်မျောနေသော ဝင်းဒိုးတွင် ကလစ်တစ်ချက်နှိပ်ရုံဖြင့် ဖွင့်ပါ။
// @description:ne प्रत्यक्ष भिडियो URL हरू निकाल्नुहोस्, मिडिया सजिलैसँग डाउनलोड गर्नुहोस्, 和 एक क्लिकमा सफा, फ्लोटिंग विन्डोમાં प्ले गर्नुहोस्।
// @description:nl Extraheer directe video-URL's, download media eenvoudig en speel af met één klik in een schoon, zwevend venster.
// @description:no Trekk ut direkte video-URL-er, last ned medier enkelt, og spill av med ett klikk i et rent, flytende vindu.
// @description:om Extract direct video URLs, download media easily, and play in a clean, floating window with one click.
// @description:or ସିଧାସଳଖ ଭିଡିଓ URL ଗୁଡିକ ବାହାର କରନ୍ତୁ, ସହଜରେ ମିଡିଆ ଡାଉନଲୋଡ୍ କରନ୍ତୁ ଏବଂ ଏକ କ୍ଲିକରେ ଏକ ସ୍ୱଚ୍ଛ, ଭାସମାନ ୱିଣ୍ଡୋରେ ପ୍ଲେ କରନ୍ତୁ |
// @description:pa ਸਿੱਧੇ ਵੀਡੀਓ URL ਐਕਸਟਰੈਕਟ ਕਰੋ, ਮੀਡੀਆ ਨੂੰ ਆਸਾਨੀ ਨਾਲ ਡਾਊਨਲੋਡ ਕਰੋ, 和 ਇੱਕ ਕਲਿੱਕ ਨਾਲ ਇੱਕ ਸਾਫ਼, ਫਲੋਟਿੰਗ ਵਿੰਡੋ ਵਿੱਚ ਚਲਾਓ।
// @description:pl Wyodrębnij bezpośrednie adresy URL wideo, łatwo pobieraj multimedia i odtwarzaj jednym kliknięciem w czystym, pływającym oknie.
// @description:ps Extract direct video URLs, download media easily, and play in a clean, floating window with one click.
// @description:pt Extraia URLs de vídeo diretos, baixe mídia facilmente e reproduza com um clique em uma janela flutuante limpa.
// @description:pt-BR Extraia URLs de vídeo diretos, baixe mídia facilmente e reproduza com um clique em uma janela flutuante limpa.
// @description:pt-PT Extraia URLs de vídeo diretos, baixe mídia facilmente e reproduza com um clique em uma janela flutuante limpa.
// @description:ro Extrageți adresele URL video directe, descărcați cu ușurință conținutul media și redați cu un singur clic într-o fereastră plutitoare curată.
// @description:ru Извлекайте прямые ссылки на видео, легко скачивайте медиаконтент и воспроизводите его одним кликом в чистом плавающем окне.
// @description:rw Extract direct video URLs, download media easily, and play in a clean, floating window with one click.
// @description:si සෘජු වීඩියෝ URL උපුටා ගන්න, මාධ්ය පහසුවෙන් බාගත කරන්න, සහ පිරිසිදු, පාවෙන කවුළුවක එක ක්ලික් කිරීමකින් වාදනය කරන්න.
// @description:sk Extrahujte priame adresy URL videa, jednoducho sťahujte médiá a prehrávajte jedným kliknutím v čistom plávajúcom okne.
// @description:sl Izvlecite neposredne URL-je videoposnetkov, zlahka prenesite medije in jih predvajajte z enim klikom v čistem, plavajočem oknu.
// @description:sn Extract direct video URLs, download media easily, and play in a clean, floating window with one click.
// @description:so Extract direct video URLs, download media easily, and play in a clean, floating window with one click.
// @description:sq Nxirrni URL-të e drejtpërdrejta të videos, shkarkoni mediat me lehtësi dhe luani me një klikim në një dritare të pastër, lundruese.
// @description:sr Извуците директне видео УРЛ-ове, лако преузмите медије и репродукујте једним кликом у чистом, плутајућем прозору.
// @description:sr-Latn Izvucite direktne video URL-ove, lako preuzmite medije i reprodukujte jednim klikom u čistom, plutajućem prozoru.
// @description:st Extract direct video URLs, download media easily, and play in a clean, floating window with one click.
// @description:sv Extrahera direkta video-URL:er, ladda ner media enkelt og spela upp med ett klick i ett rent, flytande fönster.
// @description:sw Toa URL za video moja kwa moja, pakua maudhui kwa urahisi, na ucheze kwa mbofyo mmoja katika dirisha safi, linaloelea.
// @description:ta நேரடி வீடியோ URLகளை பிரித்தெடுக்கவும், மீடியாவை எளிதாகப் பதிவிறக்கவும் மற்றும் சுத்தமான, மிதக்கும் சாளரத்தில் ஒரே கிளிக்கில் இயக்கவும்.
// @description:te थेट व्हिडिओ URL काढा, मीडिया सहजपणे डाउनलोड करा 和 एका क्लिकवर स्वच्छ, फ्लोटिंग विंडोमध्ये प्ले करा।
// @description:tg URL-ҳои мустақими видеоро истихроҷ кунед, медиаро ба осонӣ зеркашӣ кунед ва бо як клик дар равзанаи тоза ва шинокунанда пахш кунед.
// @description:th ดึง URL วิดีโอโดยตรง ดาวน์โหลดสื่ออย่างง่ายดาย และเล่นด้วยคลิกเดียวในหน้าต่างลอยที่สะอาดตา
// @description:ti Extract direct video URLs, download media easily, and play in a clean, floating window with one click.
// @description:tk Extract direct video URLs, download media easily, and play in a clean, floating window with one click.
// @description:tr Doğrudan video URL'lerini çıkarın, medyayı kolayca indirin ve temiz, yüzen bir pencerede tek tıkla oynatın.
// @description:ug بىۋاسىتە سىن URL لىرىنى چىقىرىڭ، مېدىيانى ئاسانلا چۈشۈرۈڭ ھەمدە پاكىز، لەيلىمە كۆزنەكتە بىر چېكىش ئارقىلىق قويۇڭ.
// @description:uk Витягуйте прямі URL-адреси відео, легко завантажуйте медіа та відтворюйте одним кліком у чистому плаваючому вікні.
// @description:ur براہ راست ویڈیو URL نکالیں، میڈیا کو آسانی سے ڈاؤن لوڈ کریں، 和 ایک کلک کے ساتھ صاف، تیرتی ہوئی کھڑکی میں چلائیں۔
// @description:uz To'g'ridan-to'g'ri video URL manzillarini ajratib oling, mediani osongina yuklab oling va toza, suzuvchi oynada bir marta bosish bilan ijro eting.
// @description:vi Trích xuất URL video trực tiếp, tải xuống phương tiện dễ dàng 和 phát bằng một cú nhấp chuột trong cửa sổ nổi sạch sẽ.
// @description:yo Extract direct video URLs, download media easily, and play in a clean, floating window with one click.
// @description:zh-CN 提取视频直链、一键下载媒体文件,并在极简悬浮窗中实现一键播放。
// @description:zh-HK 提取視頻直鏈、一鍵下載媒體文件,並在極簡懸浮窗中實現一鍵播放。
// @description:zh-TW 提取視頻直鏈、一鍵下載媒體文件,並在極簡懸浮窗中實現一鍵播放。
// @description:zu Extract direct video URLs, download media easily, and play in a clean, floating window with one click.
// @namespace http://tampermonkey.net/
// @version 1.0.1
// @author Kairox
// @license MIT
// @match *://*/*
// @require https://cdn.jsdelivr.net/npm/hls.js@1.5.15/dist/hls.min.js
// @grant GM_setClipboard
// @run-at document-start
// ==/UserScript==
(function() {
'use strict';
let currentTarget = null;
let isPlayerOpen = false;
let latestSniffedUrl = '';
let hlsInstance = null;
const extractUrl = (url) => {
if (!url || typeof url !== 'string') return;
if (/\.(m3u8|mp4|flv|webm)(\?|$)/i.test(url)) latestSniffedUrl = url;
};
const origOpen = XMLHttpRequest.prototype.open;
XMLHttpRequest.prototype.open = function(method, url) { extractUrl(url); return origOpen.apply(this, arguments); };
const origFetch = window.fetch;
window.fetch = async function(...args) { const url = typeof args[0] === 'string' ? args[0] : (args[0]?.url || ''); extractUrl(url); return origFetch.apply(this, args); };
const getRealUrl = (mediaEl) => {
if (!mediaEl) return '';
let url = mediaEl.currentSrc || mediaEl.src;
if (url && !url.startsWith('blob:')) return url;
const source = mediaEl.querySelector('source');
if (source && source.src && !source.src.startsWith('blob:')) return source.src;
return latestSniffedUrl || url;
};
const isMediaValid = (mediaEl) => {
if (!mediaEl) return false;
if (mediaEl.error !== null || mediaEl.networkState === 3) return false;
const rect = mediaEl.getBoundingClientRect();
if (rect.width < 50 || rect.height < 50) return false;
const url = getRealUrl(mediaEl);
return !!(url && url.trim() !== '');
};
let mediaCache = [];
const updateMediaCache = () => {
const findMedia = (root) => {
let list = Array.from(root.querySelectorAll('video'));
let all = root.querySelectorAll('*');
for (let i = 0; i < all.length; i++) {
if (all[i].shadowRoot) list.push(...findMedia(all[i].shadowRoot));
}
return list;
};
try { mediaCache = findMedia(document); } catch(e) {}
};
setInterval(updateMediaCache, 500);
document.addEventListener('DOMContentLoaded', updateMediaCache);
const Icons = {
play: `<svg viewBox="0 0 24 24"><path d="M8 5v14l11-7z"/></svg>`,
copy: `<svg viewBox="0 0 24 24"><path d="M16 1H4c-1.1 0-2 .9-2 2v14h2V3h12V1zm3 4H8c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h11c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2zm0 16H8V7h11v14z"/></svg>`,
close: `<svg viewBox="0 0 24 24"><path d="M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"/></svg>`,
check: `<svg viewBox="0 0 24 24"><path d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z"/></svg>`,
error: `<svg viewBox="0 0 24 24"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-2h2v2zm0-4h-2V7h2v6z"/></svg>`,
download: `<svg viewBox="0 0 24 24"><path d="M19 9h-4V3H9v6H5l7 7 7-7zM5 18v2h14v-2H5z"/></svg>`
};
let floatBtn, iframeContainer;
const initTopLevelUI = () => {
if (document.getElementById('umpt-float-btn')) return;
floatBtn = document.createElement('div');
floatBtn.id = 'umpt-float-btn';
floatBtn.innerHTML = Icons.play;
Object.assign(floatBtn.style, {
position: 'fixed', width: '46px', height: '46px',
background: 'linear-gradient(135deg, #667eea 0%, #764ba2 100%)',
borderRadius: '50%', display: 'none', alignItems: 'center', justifyContent: 'center',
zIndex: '2147483647', cursor: 'pointer', color: 'white',
boxShadow: '0 8px 24px rgba(0,0,0,0.3)', border: '2px solid rgba(255,255,255,0.2)',
transition: 'transform 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275)'
});
floatBtn.querySelector('svg').style.cssText = 'width: 24px; height: 24px; fill: white; margin-left: 3px; pointer-events: none;';
floatBtn.onmouseenter = () => floatBtn.style.transform = 'scale(1.1)';
floatBtn.onmouseleave = () => floatBtn.style.transform = 'scale(1)';
floatBtn.onclick = (e) => { e.stopPropagation(); openPlayer(); };
document.documentElement.appendChild(floatBtn);
iframeContainer = document.createElement('iframe');
iframeContainer.id = 'umpt-iframe';
Object.assign(iframeContainer.style, {
position: 'fixed', inset: '0', width: '100vw', height: '100vh',
border: 'none', zIndex: '2147483647', display: 'none', background: 'transparent'
});
document.documentElement.appendChild(iframeContainer);
};
const buildIframeContent = (url, doc) => {
const isM3U8 = url.includes('.m3u8');
doc.open();
doc.write(`
<!DOCTYPE html>
<html>
<head>
<style>
* { box-sizing: border-box; }
body { margin: 0; padding: 0; overflow: hidden; background: transparent; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; }
#overlay {
position: fixed; inset: 0; background: rgba(0, 0, 0, 0.92); backdrop-filter: blur(20px);
display: flex; flex-direction: column; align-items: center; justify-content: center;
opacity: 0; transition: opacity 0.3s ease;
}
#overlay.show { opacity: 1; }
#player-wrap {
width: 85vw; max-width: 1400px; height: 75vh;
background: transparent; border-radius: 8px;
box-shadow: 0 30px 60px rgba(0,0,0,0.6);
border: none; position: relative;
display: flex; flex-direction: column; overflow: hidden;
transform: scale(1);
transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}
video {
width: 100%; height: 100%; flex: 1;
object-fit: contain; outline: none; background: #000;
border-radius: 8px; display: block;
}
#error-overlay {
position: absolute; inset: 0; background: rgba(0, 0, 0, 0.85); backdrop-filter: blur(8px);
display: none; flex-direction: column; align-items: center; justify-content: center;
color: #ff4757; z-index: 10; border-radius: 8px;
}
#error-overlay.show { display: flex; }
#error-overlay svg { width: 56px; height: 56px; fill: currentColor; }
#action-toolbar {
margin-top: 24px; display: flex; gap: 14px; background: rgba(30, 30, 30, 0.8);
padding: 10px 16px; border-radius: 50px; border: 1px solid rgba(255,255,255,0.1);
backdrop-filter: blur(20px); align-items: center;
transform: translateY(20px); transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}
#overlay.show #action-toolbar { transform: translateY(0); }
.tool-btn {
display: flex; align-items: center; justify-content: center;
height: 40px; min-width: 40px; background: rgba(255,255,255,0.08);
border: 1px solid rgba(255,255,255,0.05); border-radius: 20px;
color: #eee; cursor: pointer; transition: 0.3s;
padding: 0 10px; white-space: nowrap; outline: none; position: relative; overflow: hidden;
}
.tool-btn svg { width: 18px; height: 18px; fill: currentColor; flex-shrink: 0; position: relative; z-index: 2; }
.tool-btn.disabled { pointer-events: none; opacity: 0.5; cursor: not-allowed; }
.tool-btn:not(.disabled):hover { background: rgba(255,255,255,0.15); color: #2af598; transform: scale(1.05); }
.tool-btn.close-btn:not(.disabled):hover { background: #ff4757; color: white; }
.tool-btn.dl-btn:not(.disabled):hover { color: #34ace0; }
</style>
</head>
<body>
<div id="overlay">
<div id="player-wrap">
<video id="native-vid" controls autoplay playsinline></video>
<div id="error-overlay">${Icons.error}</div>
</div>
<div id="action-toolbar">
<button class="tool-btn" id="t-copy">${Icons.copy}</button>
${isM3U8 ? `<button class="tool-btn dl-btn" id="t-dl">${Icons.download}</button>` : ''}
<div style="width: 1px; height: 20px; background: rgba(255,255,255,0.15); margin: 0 2px;"></div>
<button class="tool-btn close-btn" id="t-close">${Icons.close}</button>
</div>
</div>
</body>
</html>
`);
doc.close();
requestAnimationFrame(() => doc.getElementById('overlay').classList.add('show'));
const vid = doc.getElementById('native-vid');
const triggerErrorState = () => {
const errOverlay = doc.getElementById('error-overlay');
if (errOverlay) errOverlay.classList.add('show');
const copyBtn = doc.getElementById('t-copy');
if (copyBtn) copyBtn.classList.add('disabled');
const dlBtn = doc.getElementById('t-dl');
if (dlBtn) dlBtn.classList.add('disabled');
};
vid.addEventListener('error', triggerErrorState);
if (isM3U8) {
if (window.Hls && Hls.isSupported()) {
hlsInstance = new window.Hls();
hlsInstance.loadSource(url);
hlsInstance.attachMedia(vid);
hlsInstance.on(window.Hls.Events.ERROR, function(event, data) {
if (data.fatal) triggerErrorState();
});
} else if (vid.canPlayType('application/vnd.apple.mpegurl')) {
vid.src = url;
} else {
triggerErrorState();
}
} else {
vid.src = url;
}
bindIframeEvents(doc, url, vid);
};
const bindIframeEvents = (doc, url, vid) => {
const wrap = doc.getElementById('player-wrap');
const adaptSize = () => {
if (!vid || !vid.videoWidth) return;
const maxW = window.innerWidth * 0.85;
const maxH = window.innerHeight * 0.75;
const videoRatio = vid.videoWidth / vid.videoHeight;
const screenRatio = maxW / maxH;
let finalW, finalH;
if (videoRatio > screenRatio) {
finalW = maxW;
finalH = maxW / videoRatio;
} else {
finalH = maxH;
finalW = maxH * videoRatio;
}
wrap.style.width = `${Math.floor(finalW)}px`;
wrap.style.height = `${Math.floor(finalH)}px`;
};
vid.addEventListener('loadedmetadata', adaptSize);
if (vid.readyState >= 1) adaptSize();
if (window._umptResizeHandler) window.removeEventListener('resize', window._umptResizeHandler);
window._umptResizeHandler = adaptSize;
window.addEventListener('resize', window._umptResizeHandler);
const triggerFeedback = (btn, isError = false) => {
if (btn.classList.contains('disabled')) return;
const originalSvg = btn.querySelector('svg').outerHTML;
if (isError) {
btn.querySelector('svg').outerHTML = Icons.error;
btn.style.color = '#ff4757'; btn.style.background = 'rgba(255, 71, 87, 0.15)';
} else {
btn.querySelector('svg').outerHTML = Icons.check;
btn.style.color = '#2af598'; btn.style.background = 'rgba(42, 245, 152, 0.15)';
}
setTimeout(() => {
btn.style.color = ''; btn.style.background = '';
setTimeout(() => { if(!btn.classList.contains('disabled')) btn.querySelector('svg').outerHTML = originalSvg; }, 200);
}, 1500);
};
const btnCopy = doc.getElementById('t-copy');
if (btnCopy) {
btnCopy.onclick = () => {
if (btnCopy.classList.contains('disabled')) return;
GM_setClipboard(url);
triggerFeedback(btnCopy);
};
}
const btnDl = doc.getElementById('t-dl');
if (btnDl) {
btnDl.onclick = () => {
if (btnDl.classList.contains('disabled')) return;
window.open(`https://m3u8players.com/?url=${encodeURIComponent(url)}`, '_blank');
};
}
const closeOverlay = () => {
doc.getElementById('overlay').classList.remove('show');
setTimeout(() => {
iframeContainer.style.display = 'none';
isPlayerOpen = false;
if (hlsInstance) { hlsInstance.destroy(); hlsInstance = null; }
vid.src = '';
}, 300);
};
doc.getElementById('t-close').onclick = closeOverlay;
doc.getElementById('overlay').onclick = (e) => { if (e.target.id === 'overlay') closeOverlay(); };
};
const openPlayer = () => {
const url = getRealUrl(currentTarget);
if (!url) return;
isPlayerOpen = true;
floatBtn.style.display = 'none';
iframeContainer.style.display = 'block';
buildIframeContent(url, iframeContainer.contentDocument);
};
let ticking = false;
document.addEventListener('pointermove', (e) => {
if (isPlayerOpen || !floatBtn) return;
if (!ticking) {
requestAnimationFrame(() => {
let isHoveringAnyVideo = false;
let hitRect = null;
let hitElement = null;
const liveMedia = Array.from(document.querySelectorAll('video'));
const allMediaToScan = new Set([...liveMedia, ...mediaCache]);
for (let media of allMediaToScan) {
const rect = media.getBoundingClientRect();
if (rect.width > 50 && rect.height > 50 &&
e.clientX >= rect.left && e.clientX <= rect.right &&
e.clientY >= rect.top && e.clientY <= rect.bottom) {
if (isMediaValid(media)) {
isHoveringAnyVideo = true;
hitRect = rect;
hitElement = media;
break;
}
}
}
const bRect = floatBtn.getBoundingClientRect();
const isHoveringButton = floatBtn.style.display === 'flex' &&
e.clientX >= (bRect.left - 15) && e.clientX <= (bRect.right + 15) &&
e.clientY >= (bRect.top - 15) && e.clientY <= (bRect.bottom + 15);
if (isHoveringAnyVideo) {
currentTarget = hitElement;
floatBtn.style.display = 'flex';
floatBtn.style.top = `${hitRect.top + 10}px`;
floatBtn.style.left = `${hitRect.right - 54}px`;
} else if (!isHoveringButton) {
floatBtn.style.display = 'none';
currentTarget = null;
}
ticking = false;
});
ticking = true;
}
}, { capture: true, passive: true });
window.addEventListener('scroll', () => {
if (currentTarget && floatBtn.style.display === 'flex' && !isPlayerOpen) {
const rect = currentTarget.getBoundingClientRect();
floatBtn.style.top = `${rect.top + 10}px`;
floatBtn.style.left = `${rect.right - 54}px`;
}
}, { capture: true, passive: true });
if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', initTopLevelUI); } else { initTopLevelUI(); }
})();