<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Maciej[cc] &#187; ffmpeg</title><atom:link href="https://nabozny.io/tag/ffmpeg/index.xml" rel="self" type="application/rss+xml"/><link>https://nabozny.io/tag/ffmpeg/</link><description>Blog o programowaniu i nie tylko</description><lastBuildDate>Mon, 11 Feb 2019 22:41:12 +0000</lastBuildDate><language>pl-PL</language><generator>Hugo 0.167.0</generator><item><title>Pobieranie czegokolwiek z youtuba w fullhd z konsoli</title><link>https://nabozny.io/pobieranie-czegokolwiek-z-youtuba-w-fullhd-z-konsoli/</link><dc:creator>maciej</dc:creator><pubDate>Mon, 11 Feb 2019 22:41:12 +0000</pubDate><category>Inne</category><category>Linux</category><category>linux</category><category>ffmpeg</category><category>media</category><guid isPermaLink="true">https://nabozny.io/pobieranie-czegokolwiek-z-youtuba-w-fullhd-z-konsoli/</guid><description>Niektórzy lubią filmy, inni muzykę, a jeszcze inni po prostu potrzebują zapisać na dysk filmiki z kotami. Powód wymyślcie sobie sami :)</description><content:encoded>&lt;p&gt;Niektórzy lubią filmy, inni muzykę, a jeszcze inni po prostu potrzebują zapisać na dysk filmiki z kotami. Powód wymyślcie sobie sami :)&lt;/p&gt;&#10;&lt;p&gt;Od niedawna wszelkiego rodzaju pobieraczki youtubowe przestały oferować jakość full HD z dźwiękiem. No cóż, trzeba sobie radzić inaczej. Za pomocą youtube-dl można pobrać osobno dowolną ścieżkę audio z youtube oraz dowolną ścieżkę video, o wybranym bitrate, codecu oraz rozdzielczości.&lt;/p&gt;&#10;&lt;h5 id="co-będzie-potrzebne"&gt;Co będzie potrzebne?&lt;/h5&gt;&#10;&lt;p&gt;Potrzeba nam dwóch narzędzi. A w zasadzie trzech – pipem pobierzemy downloader:&lt;/p&gt;&#10;&lt;pre tabindex="0"&gt;&lt;code&gt;sudo apt install ffmpeg python3-pip&#10;sudo pip3 install youtube_dl&#10;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Pakiet &lt;em&gt;pip&lt;/em&gt; będzie nam służył do pobrania właściwego narzędzia w pythonie – youtube-dl. Za jego pomocą można zobaczyć co dany film oferuje do pobrania – wszystkie wersje audio i video oraz umożliwia pobranie ich. Ffmpeg posłuży do połączenia osobnych ścieżek audio oraz video w jeden plik.&lt;/p&gt;&#10;&lt;h5 id="pobranie-audio-i-video"&gt;Pobranie audio i video&lt;/h5&gt;&#10;&lt;p&gt;Po pierwsze wybierzmy jakieś interesujące video. Na przykład to: &lt;a href="https://www.youtube.com/watch?v=G1IbRujko-A"&gt;https://www.youtube.com/watch?v=G1IbRujko-A&lt;/a&gt;.&lt;/p&gt;&#10;&lt;p&gt;Za pomocą youtube-dl można wyświetlić listę dostępnych ścieżek audio i video:&lt;/p&gt;&#10;&lt;pre tabindex="0"&gt;&lt;code&gt;~&amp;gt; youtube-dl -F &amp;#39;https://www.youtube.com/watch?v=G1IbRujko-A&amp;#39;&#10;[youtube] G1IbRujko-A: Downloading webpage&#10;[youtube] G1IbRujko-A: Downloading video info webpage&#10;[youtube] G1IbRujko-A: Downloading js player vflYv1bWD&#10;[info] Available formats for G1IbRujko-A:&#10;format code extension resolution note&#10;249 webm audio only DASH audio 117k , opus @ 50k, 272.51MiB&#10;250 webm audio only DASH audio 136k , opus @ 70k, 351.10MiB&#10;140 m4a audio only DASH audio 162k , m4a_dash container, mp4a.40.2@128k, 545.84MiB&#10;171 webm audio only DASH audio 191k , vorbis@128k, 577.59MiB&#10;251 webm audio only DASH audio 207k , opus @160k, 667.00MiB&#10;160 mp4 256x144 144p 170k , avc1.4d400c, 24fps, video only, 205.76MiB&#10;133 mp4 426x240 240p 237k , avc1.4d4015, 24fps, video only, 543.85MiB&#10;278 webm 256x144 144p 281k , webm container, vp9, 24fps, video only, 401.04MiB&#10;242 webm 426x240 240p 302k , vp9, 24fps, video only, 467.08MiB&#10;134 mp4 640x360 360p 338k , avc1.4d401e, 24fps, video only, 968.71MiB&#10;243 webm 640x360 360p 528k , vp9, 24fps, video only, 1.41GiB&#10;135 mp4 854x480 480p 690k , avc1.4d401e, 24fps, video only, 2.24GiB&#10;244 webm 854x480 480p 739k , vp9, 24fps, video only, 2.37GiB&#10;247 webm 1280x720 720p 1090k , vp9, 24fps, video only, 3.61GiB&#10;136 mp4 1280x720 720p 1154k , avc1.4d401f, 24fps, video only, 4.41GiB&#10;137 mp4 1920x1080 1080p 2373k , avc1.640028, 24fps, video only, 9.32GiB&#10;248 webm 1920x1080 1080p 2647k , vp9, 24fps, video only, 5.18GiB&#10;43 webm 640x360 medium , vp8.0, vorbis@128k, 3.06GiB&#10;18 mp4 640x360 medium 485k , avc1.42001E, mp4a.40.2@ 96k (44100Hz), 2.04GiB&#10;22 mp4 1280x720 hd720 1179k , avc1.64001F, mp4a.40.2@192k (44100Hz) (best&#10;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;W tym przypadku można pobrać gotowy plik – ścieżkę 22. W niektórych filmach, np. w teledyskach nie ma połączonej wersji audio + video i jest możliwość pobrania tylko osobnego audio i osobnego video. Zróbmy więc tak:&lt;/p&gt;&#10;&lt;pre tabindex="0"&gt;&lt;code&gt;youtube-dl --format 171 &amp;#39;https://www.youtube.com/watch?v=G1IbRujko-A&amp;#39;&#10;youtube-dl --format 136 &amp;#39;https://www.youtube.com/watch?v=G1IbRujko-A&amp;#39;&#10;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Ścieżka o id formatu 171 to audio w kontenerze webm, z kodekiem vorbis i bitrate 191k (powyższa tabelka). Ścieżka 136 to video 1280x720 mp4. W bieżącym katalogu powinieneś widzieć dwa nowe pliki – jeden z rozszerzeniem webm, a drugi mp4. Po otworzeniu w dowolnym odtwarzaczu pierwszy z nich będzie grał, a drugi wyglądał.&lt;/p&gt;&#10;&lt;h5 id="łączenie-w-całość"&gt;Łączenie w całość&lt;/h5&gt;&#10;&lt;p&gt;Na koniec pozostaje połączyć jedno i drugie w jeden plik MP4:&lt;/p&gt;&#10;&lt;pre tabindex="0"&gt;&lt;code&gt;ffmpeg -i [plik].webm -i [plik].mp4 -acodec copy -vcodec copy plik-calosc.mp4&#10;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Powyższe polecenie przekopiuje ścieżkę audio (-acodec copy) oraz ścieżkę video (-vcodec copy) bez ponownej kompresji. Obie ścieżki zostaną zapisane w pliku &lt;em&gt;plik-calosc.mp4&lt;/em&gt;. I to wszystko.&lt;/p&gt;</content:encoded></item></channel></rss>