YouTube Downloader v0.23 (C) 2009, 2010 Pepak http://www.pepak.net/download/youtube-downloader/ http://www.pepak.net


Nástroj pro stahování videa z YouTube a dalších webových úložišť videa. Funguje z příkazové řádky, odkud přijme libovolný počet URL ke stažení, případně soubor se seznamem URL. Soubory ukládá pod název z YouTube, preferuje HD video, pokud je k dispozici.

Podporované weby a formáty URL:

Od verze 0.15 program zahrnuje podporu pro streamované video podle protokolu RTMP. Protokol je implementován pomocí knihovny vzniklé drobnou úpravou projektu RTMPDUMP (http://rtmpdump.mplayerhq.hu). Tato implementace má řadu nedostatků, se kterými je třeba počítat:

1) Neumí přesně určit celkovou velikost videa. Velikost je odhadována na základě dosud stažené velikosti, dosud staženého času a celkového času videa.

2) Z knihovny nejsou do Downloaderu předávány informace o chybách. Místo toho je v TEMP adresáři uživatele generován klasický log projektu RTMPDUMP, ve kterém lze příčiny případných chyb dohledat.

3) Aby šlo stahovat z RTMP streamů, jsou vyžadovány následující DLL knihovny: - RTMPDUMP_DLL.DLL - je součástí YTD. - CRYPTOEAY32-0.9.8.DLL - součást OpenSSL verze 0.9.8. V OpenSSL může být pojmenována i CRYPTOEAY32.DLL. - SSLEAY32-0.9.8.DLL - součást OpenSSL. Alternativní jméno SSLEAY32.DLL.

4) Nelze stoprocentně detekovat, zda bylo video staženo kompletní.

Od verze 0.17 je podporována rodina protokolů kolem MMS a RTSP (mimo jiné Microsoftí streamy, Real streamy a řada dalších). Protokol je implementován pomocí knihovny vzniklé drobnou úpravou projektu MSDL (http://msdl.sf.net/). Počítejte s tím, že cílem bylo mít úpravu hotovou rychle a s minimem změn v původním projektu (podobně jako u podpory RTMP výše), takže jsem spoustu možných variant prostě ignoroval; až je budu potřebovat, rozšířím příslušně úpravy MSDL.

Pozn.: Celková velikost stahovaného streamu je jen odhad, který nemusí být úplně přesný. Klidně se může stát, že přenos skončí v 93 % a přesto se ohlásí jako úspěšný - a přehráním skutečně zjistíte, že stream je stažen kompletně.

Od verze 0.19 jsou podporovány zdroje, ve kterých je jeden pořad tvořen několika samostatnými mediálními soubory (např. Markiza.sk). YouTube Downloader momentálně neumožňuje vybrat, které ze souborů se stáhnou a které ne - stahují se vždy všechny.

SYNTAXE

ytd.exe [] [] ...

kde je buď URL, nebo jedna z následujících možností:

-i <soubor> ... Stáhne všechna URL z textového souboru <soubor>, kde
                každý řádek reprezentuje jednu URL.
-o <cesta> .... Soubory se budou stahovat do adresáře <cesta>. Výchozí
                hodnotou je aktuální pracovní adresář.
-e <soubor> ... Do souboru <soubor> se budou zapisovat všechny downloady,
                které skončily chybou.
-s <zdroj> .... <zdroj> (soubor nebo URL) se prohledá na podporované
                odkazy a ty nalezené se stáhnou.
-n ............ Nikdy nepřepisovat existující soubory.
-a ............ Vždy přepsat existující soubory.
-r ............ Pokud soubor se stejným názvem existuje, automaticky
                vygenerovat nový název, který už bude jedinečný.
-k ............ Pokud soubor existuje, zeptat se uživatele (výchozí).

Např.: ytd.exe "http://www.youtube.com/watch?v=6wXkI4t7nuc" ytd.exe -i c:\temp\seznam.txt ytd.exe -a "http://www.youtube.com/watch?v=6wXkI4t7nuc"

Pokud nejsou uvedeny parametry, spustí se grafická verze programu.

CHANGELOG

v0.23

* Přepracována práce s playlisty tak, aby výstupy (pro command-line
  verzi) byly přehlednější a snáze se přidávaly další formáty playlistů.

* Podpora pro YouTube videa označená jako "jen pro dospělé".

* Parametr -e pro logování nepodařených downloadů.

* Parametr -s pro vložení odkazů z HTML zdroje. Podporovány jsou lokální
  soubory i stránky na webu. Příklad:

  ytd.exe -s "http://www.zive.cz"
  ytd.exe -s "c:\temp\zive.html"

* Do grafického rozhraní byly doplněny funkce pro načtení seznamu URL ze
  souboru (jako -i v CLI verzi), načtení podporovaných URL z HTML souboru 
  a načtení podporovaných URL z HTML stránky (obojí jako -s v CLI).

* V grafickém rozhraní lze nyní uložit seznam nestažených odkazů do
  souboru, který lze později načíst pomocí parametru -i.

v0.22

* V grafickém prostředí se zobrazuje nápověda pro jednotlivá tlačítka.

* Změněna výchozí reakce na existující soubor. Starší verze tento soubor
  bez ptaní přepsaly. Verze 0.22 se uživatele zeptá na požadovanou akci,
  je možné též použít parametry -n (nepřepisovat), -a (přepisovat),
  -r (automaticky přejmenovávat) a -k (ptát se uživatele).

  Grafická verze se ptá pokaždé, když narazí na existující soubor, kromě
  případu, kdy je zaškrtnuta volba "Auto-overwrite" - pak se automaticky
  přepisuje jako v předchozích verzích.

* Grafická verze se minimalizuje do traye.

* Pro stahování z YouTube jsou podporovány playlisty (ve formátu
  http://www.youtube.com/view_play_list?p=90D6E7C4DE68E49E) - stáhne
  se vždy celý playlist.

v0.21

* Podpora pro Markízu a spol. znefunkčnila YouTube a ostatní providery
  fungující na bázi protokolu HTTP.

v0.20

* Česká televize: Podpora pro pořady programu PORT.

v0.19

* Některé vytvořené regulární výrazy se z paměti neuvolňovaly, dokud
  aplikace neskončila.

* YouTube: Video "http://www.youtube.com/watch?v=7INIRLe7x0Y" se ukládalo
  s příponou ".mp4", ale správně je ".flv". Je možné, že jsou i další
  podobné případy, příponu přiřazuji pomocí výčtu a zdaleka nemám 
  kompletní seznam. Když narazíte na video uložené pod špatnou příponou,
  dejte mi prosím vědět.

* Podpora pro http://www.tvcom.cz.

* Podpora pro http://www.markiza.sk. Pokud je pořad tvořen několika
  samostatnými soubory, budou staženy všechny.

* Podpora pro http://www.rozhlas.cz. Pokud je pořad tvořen několika
  samostatnými soubory, budou staženy všechny.

v0.18

* Podpora pro změněný design YouTube.

v0.17

* Podpora pro protokoly MMS, MMSH, RTSP a jejich varianty tunelované
  přes FTP a HTTP. Podpora je řešena pomocí knihovny MSDL_DLL.DLL,
  která vznikla drobnou úpravou programu MSDL (http://msdl.sf.net/).

* Podpora pro iVysílání České televize.

* RTMPDUMP aktualizován na nejčerstvější verzi.

v0.16

* Zkráceny výpisy v command-line verzi programu, aby se při stahování
  souborů větších než 100 MB nemnožily řádky s průběhem.

* Podpora pro videa televize Nova (nova.cz).

v0.15:

* Restrukturalizován zdrojový kód, aby umožňoval lépe přidávat další
  zdroje médií.

* Podpora pro stahování streamů přenášených protokolem RTMP. Download
  je řešen pomocí knihovny RTMPDUMP_DLL.DLL, která vznikla drobnou
  úpravou programu RTMPDUMP (http://rtmpdump.mplayerhq.hu). Knihovna
  potřebuje OpenSSL verze 0.9.8, konkrétně knihovny SSLEAY32-0.9.8.DLL
  a CRYPTOEAY32-0.9.8.DLL.

* Podpora pro Barrandov.tv.

v0.14:

* Podpora pro Stream.cz z minulé verze rozhodila ostatní zdroje
  videa, které kvůli tomu nefungovaly. To je nyní opraveno.

* Upraveno grafické rozhraní (ikonky, tlačítka atd.).

* Přidána možnost zkompilovat jen CLI nebo jen GUI verzi programu:
  Při spouštění BUILD.BAT můžete použít parametr "CLI" (jen command
  line verze) resp. "GUI" (jen grafická verze) (v obou případech bez
  uvozovek). "CLI" výrazně zmenší výsledný EXE soubor, "GUI" odstraní
  okno konzole. Ve výchozím stavu se kompiluje verze s CLI i GUI
  současně.

* Knihovna Synapse aktualizována na release 39. Problém se Stream.cz
  (viz upozornění výše) ale stále trvá.

* Podpora pro download z iPrima.cz (používá Stream.cz).

v0.13:

* Přidána podpora pro Stream.cz. Je v tom ale zatím neodhalená chyba,
  viz výše v sekci "podporované weby a formáty."

* Kromě názvu videa a souboru se nyní zobrazuje i adresa, ze které
  lze video stáhnout "ručně" (např. WGETem).

v0.12:

* Nefungovalo stahování filmů, které na YouTube neměly některou
  HD verzi.

* Kompletně přepracovaná GUI verze. Nyní zobrazuje seznam URL ke
  stažení, umí stahovat víc odkazů najednou atd.

v0.11:

* Experimentální podpora pro vyšší formáty HD videa (720HQ, 1080p).
  Prosím, pokud narazíte na video, kde to nefunguje, pošlete mi
  odkaz.

v0.10:

* Kompletně restrukturalizováno, aby se daly snadno přidávat další
  zdroje videa.

* Změněn tvar všech výstupů, aby byl přehlednější.

* Podpora pro n-joy.cz.

* Podpora pro blip.tv.

* Podpora pro seznam URL v souboru (pomocí parametru -i).

* Pozor, program nyní potřebuje knihovnu pcre.dll (přiložena).

* Přidány informace o aplikaci pro GetFileVersionEx. Přidána ikonka.

* Přidáno jednoduché grafické rozhraní, které se zobrazí, pokud program
  spustíte bez parametrů.

v0.06:

* Podpora pro URL ve tvaru http://www.youtube.com/v/(id)

v0.05:

* Přeuspořádány zdrojové kódy a buildovací dávka.

* Podpora pro URL ve tvaru http://www.youtube.com/watch/v/(id)