Bạn có thể tải xuống video và / hoặc chỉ âm thanh và sau đó xem / nghe chúng bằng cách sử dụng youtube-dl
. Kịch bản được viết bằng Python và sử dụng ffmpeg
Tôi tin.
$ youtube-dl --help
Usage: youtube-dl [options] url [url...]
Options:
General Options:
-h, --help print this help text and exit
--version print program version and exit
-U, --update update this program to latest version.
Make sure that you have sufficient
permissions (run with sudo if needed)
...
...
Để tải xuống video, bạn chỉ cần cung cấp cho URL từ trang bạn muốn video và tập lệnh thực hiện phần còn lại:
$ youtube-dl https://www.youtube.com/watch?v=OwvZemXJhF4
[youtube] Setting language
[youtube] OwvZemXJhF4: Downloading webpage
[youtube] OwvZemXJhF4: Downloading video info webpage
[youtube] OwvZemXJhF4: Extracting video information
[youtube] OwvZemXJhF4: Encrypted signatures detected.
[youtube] OwvZemXJhF4: Downloading js player 7N
[youtube] OwvZemXJhF4: Downloading js player 7N
[download] Destination: Joe Nichols - Yeah (Audio)-OwvZemXJhF4.mp4
[download] 100% of 21.74MiB in 00:16
Sau đó, bạn có thể sử dụng vlc
hoặc mplayer
để xem những địa phương này:
$ vlc "Joe Nichols - Yeah (Audio)-OwvZemXJhF4.mp4"
VLC media player 2.1.5 Rincewind (revision 2.1.4-49-gdab6cb5)
[0x1cd1118] main libvlc: Running vlc with the default interface. Use 'cvlc' to use vlc without interface.
Fontconfig warning: FcPattern object size does not accept value "0"
Fontconfig warning: FcPattern object size does not accept value "0"
Fontconfig warning: FcPattern object size does not accept value "0"
Fontconfig warning: FcPattern object size does not accept value "0"
OK nhưng tôi muốn xem những video này khi chúng được phát trực tuyến & trong ASCII
Tôi tìm thấy bài viết trên blog này có tiêu đề: Trên ascii, youtube và cho phép trình bày phương pháp mà tôi đã thảo luận trong phòng chat, chủ yếu sử dụng youtube-dl
làm "phụ trợ" có thể thực hiện tải xuống luồng YouTube và sau đó chuyển hướng nó sang một ứng dụng khác.
Bài viết này cho thấy nó đang được thực hiện với mplayer
:
$ youtube-dl http://www.youtube.com/watch?v=OC83NA5tAGE -o - | \
mplayer -vo aa -monitorpixelaspect 0.5 -
Video đang được tải xuống youtube-dl
được chuyển hướng qua STDOUT ở trên , -o -
. Có một bản demo của hiệu ứng ở đây .
Với việc cài đặt các thư viện bổ sung, video ASCII có thể được tăng cường hơn nữa.
OK nhưng tôi muốn video trong thiết bị đầu cuối thực tế của tôi?
Tôi đã tìm thấy thủ thuật này cho phép phát video trong một đoạn xterm
trong O'Reilly có tiêu đề: Xem video trong Nghệ thuật ASCII .
$ xterm -fn 5x7 -geometry 250x80 -e "mplayer -vo aa:driver=curses j.mp4
Các kết quả trên trong một xterm
cửa sổ đang được mở nơi video phát.
Vì vậy, tôi nghĩ, tại sao không đặt bơ đậu phộng và sô cô la như thế này:
$ xterm -fn 5x7 -geometry 250x80 -e \
"youtube-dl http://www.youtube.com/watch?v=OC83NA5tAGE -o - | \
mplayer -vo aa:driver=curses -"
Điều này gần như hoạt động! Tôi không chắc tại sao video không thể phát trong cửa sổ, nhưng có vẻ như nó sẽ có thể. Cửa sổ bật lên và bắt đầu chơi nhưng sau đó đóng lại. Tôi thấy video trong vài giây và sau đó không có gì.
Có lẽ những điều trên sẽ giúp bạn tiến gần hơn đến giải pháp cuối cùng của mình, hoặc có lẽ nó chỉ cần được điều chỉnh một chút về các tùy chọn.
Thư viện bổ sung
Nếu bạn đã libcaca
cài đặt (phiên bản được tô màu của aalib
) và bạn giảm kích thước phông chữ của mình gnome-terminal
thành một cái gì đó thực sự nhỏ, như nói 3, lệnh sau sẽ hiển thị video ASCII trông đẹp hơn trực tiếp trong thiết bị đầu cuối:
$ CACA_DRIVER=ncurses mplayer -vo caca video.mp4
Thiết bị đầu cuối
Dường như việc lựa chọn thiết bị đầu cuối có thể tạo ra một vấn đề lớn về việc liệu mplayer
có thể phát trực tiếp bên trong thiết bị đầu cuối hay liệu nó có mở một cửa sổ riêng biệt hay không. Bộ nhớ đệm cũng mplayer
tạo ra sự khác biệt lớn trong việc có thể phát trực tiếp trong các thiết bị đầu cuối.
Sử dụng lệnh này tôi đã có thể phát terminator
, ít nhất là cho 1/4 đầu tiên của video trước khi nó bị cắt:
$ youtube-dl http://www.youtube.com/watch?v=OC83NA5tAGE -o - | \
mplayer -cache 32767 -vo aa:driver=curses -
Phiên bản màu đã sử dụng lệnh này:
$ youtube-dl http://www.youtube.com/watch?v=OC83NA5tAGE -o - | \
CACA_DRIVER=ncurses mplayer -cache 64000 -vo caca -
Những lệnh tương tự có thể chơi trong gnome-terminal
& xterm
quá.
LƯU Ý: Đó là (từ trái sang phải) xterm
, terminator
, gnome-terminal
, và terminology
.