Can I Run Youtube Entirely From My Terminal? (No Browser)

Поделиться
HTML-код
  • Опубликовано: 10 май 2024
  • All of us have probably experienced the horrors beyond human comprehension that come with a classic RUclips session, so what do you say if, by taking this nigh infinite potential of the platform, while getting rid of all the fluff, we use it in the way it’s always been intended - running the entire thing from your terminal, no fancy useless UI, no fancy useless features and even no fancy useless graphics.
    Watch as, by combining the powers of the official RUclips API, the ever-dependable Python and the ingenuity (ahem) of yours truly, I try to get the entirety of the RUclips experience running in a terminal, in such a way that no matter the environment, you'll get to experience the platform in its most adequate form.
    Link to the repo: github.com/icitry/RUclipsCLI
  • НаукаНаука

Комментарии • 345

  • @icitry
    @icitry  26 дней назад +115

    Hi everyone!
    First off, I want to thank you all so much for the insane amounts of support / feedback and all around great discussions and suggestions. It's always a pleasure to read so many different opinions and ideas, especially as I try to tackle projects with many unknown factors to me, so thanks for teaching me stuff as well!
    Now, I noticed a lot of you suggested adding a couple of things, and I'll go in order:
    1. A requirements.txt file - I mean yeah, duhh, idk how I forgot about that one, consider it done.
    2. Add support for subtitles - Also, great suggestion so I went and did just that. You can now specify if you want to use subtitles and in which language using some new flags: --subtitles, -s | --subtitles-lang, -l. If none are found, it'll try to get autogenerated ones. I hope this is a pretty satisfying solution, and maybe an alleviator for point 4.
    3. Add support for RGB - Again, awesome idea (I mean they all are tbf), but for this one I had to sneak some trade-offs in, as for some reason, to this day and age, there are enough terminals that don't even support colors by default, nevermind a large palette of them. So I decided to use the basic ANSI-8 color palette (let's just embrace the vintage style ig) when rendering them, and also made it so it's disabled by default, in case your terminal doesn't support it. Also I should mention that, due to the fact that the project is based around an on-the-fly way of running, with everything rendered in real time, adding colors is quite the intensive task, so if you're set on using them, consider playing around with the frame size. You can enable this using the --colors, -c flag.
    Ah, also if the basic palette is too narrow for your tastes, I made it so you can expand the ANSIConstants.COLORS dictionary - just make sure to follow the established structure, and also beware that the more colors there are to choose from, the slower the conversion.
    4. And now for the final and most debated point - audio. As you might surmise from that nod in point 2, I decided against adding support for audio. I fiddled with the idea and tried some implementations, but I realized the added complexity would slow down the app, and raise a lot (and I mean a lot) of syncing problems, because, compared to other video-to-ASCII converters, this one does everything in real time, so merging the audio and video at the end into a file is out of the question.
    * Also I expanded the README file so there is more info about how to use the damn thing.
    ** Also also fixed the color scheme (it was inverted if the background of the terminal was darker than the characters, which is pretty much the base case, so... thanks for pointing it out), allowing to specify if the color scheme should be inverted or not and also (the 3rd one) now it's possible to render using Unicode characters instead of the default ASCII ones - just make sure your terminal fonts support Unicode.
    All of these are commited to the same repo: github.com/icitry/RUclipsCLI

    • @bozo_456
      @bozo_456 26 дней назад +4

      Who read
      👇

    • @AkaneEndespeakdevReal
      @AkaneEndespeakdevReal 25 дней назад

      Python has a getch() alt called input("Text: ")

    • @CheatingChicken
      @CheatingChicken 22 дня назад

      Is it possible that you have your ASCII char selection reversed?
      The way it is right now, black gets assigned to "$" while white gets " "
      I think it should be the opposite way
      When i reversed the string, things look much more accurate

    • @icitry
      @icitry  22 дня назад

      @@CheatingChicken Indeed that was the case 😅 I've seen multiple people pointing it out, and addressed it in the latest commit. Can't believe I overlooked that - guess I was too focused on it actually working

  • @iflyplanesthrutunnels
    @iflyplanesthrutunnels 27 дней назад +1260

    great! now add full RGB support and make it 8k HDR

    • @icitry
      @icitry  27 дней назад +271

      but 8k is so last year, 16-32k would be more in line with the standards of today tbf (also RGB is possible, just that you'd probably need a bigger terminal for it to actually be viable - just get the dominant color for each pixel group and use it for the corresponding character)

    • @roaringcow8163
      @roaringcow8163 27 дней назад +19

      @@icitry you can print 2 blank spaces (to match the height to width) and change the background color.

    • @V0R73X
      @V0R73X 27 дней назад +6

      @@roaringcow8163 that's exactly what I did when making the game of life and a script that shows the desktop environment display in the terminal.

    • @terrastudiosdev
      @terrastudiosdev 26 дней назад

      you could make it colored using terminal colors. If you place the this: ESC[38;2;⟨r⟩;⟨g⟩;⟨b⟩ infront of the char it sets the foreground color and this the background: ESC[48;2;⟨r⟩;⟨g⟩;⟨b⟩. The Colors are not full 0-255 per Channel in the windows console. (ANSI_escape_codes on Wikipedia)

    • @gabrielesilinic
      @gabrielesilinic 26 дней назад +4

      ​@@icitrybtw, you can do a lot with the half width block character by coloring foreground and background of different colors

  • @LichtMarv
    @LichtMarv 27 дней назад +299

    just watched this video again using the tool. text was a bit hard to read, which is funny, because its a literal terminal made for text lmao

    • @icitry
      @icitry  27 дней назад +63

      Well that's Inception-worthy enough. And hey, if you manage to tweak/line up the text pixel perfectly, you may actually get something readable (I, for one, prefer to keep my sanity levels in check though)

    • @nabibunbillah1839
      @nabibunbillah1839 26 дней назад +23

      ​@@icitry who needs sanity when you can have neck beard. (I use arch BTW)

    • @ShivterShivtik25
      @ShivterShivtik25 26 дней назад

      @@nabibunbillah1839 based

    • @louisbourgault
      @louisbourgault 25 дней назад

      @@nabibunbillah1839😂

    • @Yellowsam4145
      @Yellowsam4145 25 дней назад +1

      I wanted to create the inception D:

  • @Seedx
    @Seedx 26 дней назад +54

    Linux users removing bloat:

  • @mchlotg
    @mchlotg 27 дней назад +280

    Literally this is a good option for dopamine detoxers

    • @icitry
      @icitry  26 дней назад +55

      Oh, oh yeah I definitely thought about that when creating it pff (that's actually a really great idea - I'll use it when pitching it to the thousands of investors that'll come flying in any second now /s)

    • @HassanIQ777
      @HassanIQ777 26 дней назад +4

      Wait a sec
      how 💀

    • @furinick
      @furinick 26 дней назад

      ​@@icitry i offer -50 dollars for a 20% stake in this product

    • @verizonextron
      @verizonextron 26 дней назад +1

      @@HassanIQ777 coding

    • @HassanIQ777
      @HassanIQ777 26 дней назад +1

      @@verizonextron
      Wait a sec
      how 💀

  • @andrewrobinson2985
    @andrewrobinson2985 27 дней назад +140

    Reminds me of a decade ago when I was a kid and my only computer was a raspberry pi. It couldn't run youtube in a browser, so I installed a CLI interface for it that would let you search videos with the keyboard and then write the video directly to the framebuffer device.

    • @icitry
      @icitry  26 дней назад +39

      Ohh that's really neat, nice one!

    • @xanderplayz3446
      @xanderplayz3446 26 дней назад +8

      TTRUclips

    • @samuelthecamel
      @samuelthecamel 23 дня назад +6

      Average classmate in comp sci class

  • @CarlSenior-ru8dx
    @CarlSenior-ru8dx 27 дней назад +54

    linux users would rather make a custom JS engine than just using a web browser

    • @reilandeubank
      @reilandeubank 18 дней назад +2

      Windows powershell spotted🤢

  • @lightningx10
    @lightningx10 26 дней назад +26

    At first i thought this was just going to be some youtube-dl frontend for selecting videos to open in mpv... Holy shit this is even better :D

    • @icitry
      @icitry  26 дней назад +6

      And spare myself from some good ol' prolonged suffering? Couldn't be me

  • @davestorm6718
    @davestorm6718 25 дней назад +24

    Dude! This is far out stuff! This reminds me of, back in 1990 when we were making "video" with ANSI characters (in color), frame by frame. I wish I had a tape drive to read these old tapes - lot's of crazy ass code we did back then (and had 2 BBSes running continually). Great times!

    • @icitry
      @icitry  25 дней назад +5

      Ohh that sounds so cool! You should try to post them on youtube or the like, those are some real time capsules

  • @Reisensei774
    @Reisensei774 26 дней назад +81

    Cool project, now play Bad Apple on it!

  • @ichiroutakashima4503
    @ichiroutakashima4503 26 дней назад +20

    3:41, this guy is fully dedicated, he even bothered fixing the responsive issues, lmao. I totally lost it.

  • @csaratakij6339
    @csaratakij6339 26 дней назад +47

    No, the actual usable youtube in text based environment is tty + framebuffer (fbdev) + mpv with framebuffer support + mps-youtube

    • @pushstack1593
      @pushstack1593 26 дней назад +4

      Isn't that technically a graphical environment, expect insterad of using a Window Server you're using a framebuffer mate.

    • @phillipanselmo8540
      @phillipanselmo8540 26 дней назад

      I use ytfzf and fbterm, way better

    • @qbcd
      @qbcd 23 дня назад

      ​@@pushstack1593how are you supposed to watch videos without graphics

  • @lucaswa5taken
    @lucaswa5taken 13 дней назад +3

    Now i can finally watch youtube from my Ubuntu Server

  • @szigo3211
    @szigo3211 27 дней назад +78

    What about... sound?

    • @icitry
      @icitry  27 дней назад +28

      Just tap into your synaesthetic powers... But really, I thought about whether I should also include audio, as for consistent sound quality you'd most likely want to download the audio sources - not the most ideal thing if you're actually planning to rapidly navigate through many videos, and also against my idea of it being as lightweight and portable as possible.

    • @4rumani
      @4rumani 27 дней назад +16

      ​@@icitry --audio

    • @natalieeuley1734
      @natalieeuley1734 27 дней назад +4

      Maybe the CC or transcripts can be used?

    • @AnonymousUser77254
      @AnonymousUser77254 26 дней назад +16

      ​@@icitryaudio is bloat

    • @randomgamingin144p
      @randomgamingin144p 26 дней назад

      @@icitry use the pc speaker

  • @avi7278
    @avi7278 26 дней назад +11

    Yeah, i'm just overwhelmed by the video quality; I've been watching every .000000000000004K video out there.

  • @mydogis_olaf3274
    @mydogis_olaf3274 26 дней назад +9

    Does this support ads? If not, you better expect them coming for you over their TOS /s
    This is the final boss for RUclips in their war against ad-block lmao
    Really great work btw. I'm blown away how well you got it to work.

    • @icitry
      @icitry  25 дней назад +6

      Thank you! And guess I'll go start digging for my new anti-yt-tos bunker

  • @cmilkau
    @cmilkau 25 дней назад +2

    Advanced AA libs can use the shape of characters to better represent multiple pixels than just average them, which can lead to much better results.

    • @icitry
      @icitry  25 дней назад

      Oh definitely, this is very much a crude approach

  • @jetseverschuren
    @jetseverschuren 26 дней назад +2

    icitry: Builds a CLI YT player to have less bloat
    Also icitry: Processes raw frames in Python...

  • @S0L4RE
    @S0L4RE 26 дней назад +3

    You are an excellent software engineer. Great video.

  • @nothingtoseeherelolkek
    @nothingtoseeherelolkek 26 дней назад +20

    No sixels? Not even colors? No audio? Windows is truly abomination

    • @icitry
      @icitry  26 дней назад +2

      Oh you tell me, I added some of those or alternatives since then, but you can guess who the bottleneck was - again (aside from my brain ofc)

    • @krabstickle
      @krabstickle 25 дней назад +2

      ​@@icitry will you post an update?

  • @phpannotated
    @phpannotated 24 дня назад +1

    This was a great video! I now wanna try it in PHP as well 😬

  • @Feeeeeeenix
    @Feeeeeeenix 26 дней назад +11

    you can get double resolution and full RGB by displaying a half block with a custom background color and foreground color.
    as a side effect this also removes the stretching

    • @sossupummi
      @sossupummi 26 дней назад +1

      and ANSI characters

    • @davestorm6718
      @davestorm6718 25 дней назад +3

      Man, I wish I could find the old code we had for creating ANSI "videos" in color (1990) to share on our BBS systems (and the Internet - back when you had to be a student or professor OR pay a friggin' premium)

  • @jacobfreeman8904
    @jacobfreeman8904 27 дней назад +7

    Amazing, Love it

    • @icitry
      @icitry  27 дней назад +2

      Thank you so much!

  • @SaloCh
    @SaloCh 22 дня назад +2

    I feel like a simple fix that would've made the videos look so much better would've been to simply... invert the character list. Since the characters are white and the background is blue, it makes sense to use the densest character with the lighter pixels, not the darker ones.

    • @icitry
      @icitry  22 дня назад +2

      Yep, you perfectly pointed it out, thanks for that - I fixed it in the latest commit (still can't believe I missed that)

  • @physics1514
    @physics1514 21 день назад

    This is awesome, you should try using a color library or something. Though this would likely complicate it a lot it would be worth a shot.

  • @stundogha4947
    @stundogha4947 22 дня назад

    Excellent work

  • @SayedHamidFatimi
    @SayedHamidFatimi 26 дней назад +1

    Well daaaaammmmnnnn! Subscribed!

  • @JukeTheShark
    @JukeTheShark 23 дня назад

    dang the intro made me fall asleep so good

  • @jh-devv
    @jh-devv 26 дней назад +4

    I mean, for example for Linux at least, there is the Kitty terminal which supports images?

    • @opfax163
      @opfax163 26 дней назад +2

      Yes, You can use the terminal for browsing and you have the thumbnails. Once you select what you want to watch the video launch with MPV .

  • @Jarvx
    @Jarvx 26 дней назад +1

    Cool project idea! I think you could implement colors though, not really sure about how to do it in windows, but under linux I think you could play around with the terminal emulator's colorscheme

  • @TheZerohimself
    @TheZerohimself 26 дней назад +3

    (Edit: just read your pinned comment) audio world be nice.. hopefully someone figures out a simple & efficient way to implement it some day.
    I'm honestly not trolling here, I enjoyed this and it's been something on my todo list!
    And I also know I've seen other command line. Terminal video players do it in the past. Although it's been years

  • @I-OMusic
    @I-OMusic 26 дней назад +2

    bro the mr beast edit lmaooooo
    insane idea, excecuted brilliantly.

  • @adotinthecosmos
    @adotinthecosmos 26 дней назад +2

    This is awesome

  • @dogdillon2
    @dogdillon2 20 дней назад

    This is art.

  • @thedinobros1218
    @thedinobros1218 25 дней назад +1

    I genuinely want to try this!

  • @M.RNewman
    @M.RNewman 11 дней назад

    Love you bro

  • @UNITYMusics
    @UNITYMusics 18 дней назад

    good job!

  • @EmmanuelGoldstein322
    @EmmanuelGoldstein322 26 дней назад +3

    He just rickrolled everyone watching the video

  • @learnwithyan
    @learnwithyan 20 дней назад

    Haha😂 i like the idea
    You are crazy man

  • @syriuszb8611
    @syriuszb8611 26 дней назад +5

    They probably are less worried about their algorithm and more about apps that can replace yt apps and in result, their premium features and can remove or replace their ads. Algorithm changes, maybe even daily and for different users is probably different anyway, but they fight with for example with yt vanced for years now. They don't want to block all functionalities, but want to make competition worse than it could be, as bad as they can.
    What about... sound? Not possible?

    • @icitry
      @icitry  26 дней назад +1

      That too, for sure, biggest giveaway was that deprecation notice from last august, which *coincidentally* overlapped with them trying to crack down on 3rd party apps, but I'g wager they also don't want outsiders to reverse engineer their algos, as it's not like they change it in major ways nowadays, more so than tweak it regularly. Also yep, sound is possible, just that I was kinda on the fence about adding it, but I'll probably add support for it as well

    • @syriuszb8611
      @syriuszb8611 26 дней назад

      @@icitry Yeah, they are protective about algorithm, true. But I feel like the data from home page is not enough to reverse engineer, and you can scrape it anyway with bots. If you need the home page data at demand though, like with apps, it is much more important to have API. You probably could scrape it anyway, but I have no idea if its feasible in consumer product.
      I think that "the algorithm" is neural net/ some sort of AI anyway, so it would be like trying to use chatGPT answers to reverse engineer it.

    • @icitry
      @icitry  26 дней назад +2

      @@syriuszb8611 Oh yep, fair points across the board. Although I'd still argue it would be easier than with GPT as the "data sets" (video and user data) are much more accessible through the other endpoints in the case on YT, so it'd be easier to try to make your model output similar stuff to what a 'homepage' endpoint would generate, speeding up the process (I probably misspoke about it being reverse engineering, but moreso emulating the behavior). But really, great points all around!

    • @micmanegames695
      @micmanegames695 25 дней назад

      Yet they fail so horribly to get rid of vanced (I'm using it). There will NEVER not be an adblocker detector bypass for RUclips mobile and RUclips for PC.

  • @3VOX3
    @3VOX3 26 дней назад +1

    This is perfect.

  • @Kecske_Gaming
    @Kecske_Gaming 26 дней назад +2

    for the love of god, the only thing this needs is rgb. that is. nice job.

  • @syfontenot7427
    @syfontenot7427 22 дня назад +1

    The amount of times I got Rick Rolled in this video is insane.

  • @hervevazeilles3790
    @hervevazeilles3790 26 дней назад +12

    Your ascii conversion is inverted. You are making a video player but you don't care about the image at all?

  • @redcollard3586
    @redcollard3586 23 дня назад

    This is really really cool but I wish that you would do it with the graphical protocol in kitty. Since you are still going to be using the full bandwidth when downloading the video, it would be nice to show it for real.

  • @skitounet
    @skitounet 26 дней назад +1

    We now need the audio

  • @Devthedev.
    @Devthedev. 26 дней назад

    Underrated

  • @CandyCuber1
    @CandyCuber1 24 дня назад +1

    "...or does it?"
    *vsause music starts playing*
    im dying 🤣

  • @AI-xi4jk
    @AI-xi4jk 25 дней назад +1

    We can definitely survive the apocalypse now

  • @matthewarchibald5118
    @matthewarchibald5118 25 дней назад +2

    Duh, im watching this video in my computer's terminal, easy stuff bro.

  • @oakley6889
    @oakley6889 26 дней назад +2

    Awesome video, your code is so clean, it appreciate the architectural design haha
    Is there a repo for this? Id really like to fork it and try make it colour with some health threading abuse.
    Might even pull out the c++

    • @icitry
      @icitry  26 дней назад

      Oh, thank you! Yep, there's a link to the repo in the description. Go crazy, I'd actually be curios to see alternative implementations.

    • @some_vovan
      @some_vovan 23 дня назад

      On 15 may, there's no "C++" forks. If you start this project, may you take some help?

  • @Factosnashe
    @Factosnashe 5 дней назад +1

    you should have the "pixels" inverted and add a couple more blank spaces ' ' to the string. it will give you a better result

  • @NiceAesth
    @NiceAesth 26 дней назад +4

    you should look into the kitty graphics protocol if you want to keep working on this

  • @mr.pigeon0
    @mr.pigeon0 27 дней назад +2

    i had the idea yesterday to do that and was going to code it today lol

    • @icitry
      @icitry  27 дней назад +5

      I say go for it! You've got many areas to expand upon/improve compared to this one

    • @hrqmonteiro
      @hrqmonteiro 27 дней назад

      Uh, no you haven't.

  • @furinick
    @furinick 26 дней назад

    Very cool project, what about instead of sound you somehow use the subtitles?

  • @WotsTheMan
    @WotsTheMan 8 дней назад

    It is unironically batter than actual RUclips:
    1. You can watch it without ads
    2. You don't have shorts all over your screen
    3. Search should be functional instead of showing random videos that "you might also like"
    You really have to implement sound thought speaker and \a symbol. I know it wouldn't really work(

  • @bujitself
    @bujitself 25 дней назад +1

    And ofc I've watched this on the terminal :>

    • @icitry
      @icitry  25 дней назад

      Just the way I intended

  • @awesomecronk7183
    @awesomecronk7183 26 дней назад

    The video player is badass

  • @lunachocken
    @lunachocken 26 дней назад +1

    I wonder if you use colorama for printing coloured ascii to terminal. Heh that'd be interesting

  • @pivot9965
    @pivot9965 26 дней назад +2

    you can find everything on youtube for real.

  • @huysuh
    @huysuh 27 дней назад

    Fantastic

  • @dundavey
    @dundavey 26 дней назад +1

    I WILL SUBSCRIBE, but please make more terminal apps, like for spotify or whatever else, i would love to have this run on a remote stream, these days theres not many people use the terminal like a genius

    • @YourMom-rg5jk
      @YourMom-rg5jk 25 дней назад

      just use cmus or something lmfao

  • @Lampe2020
    @Lampe2020 26 дней назад +2

    Why don't you use sixels for rendering the videos?

  • @errorbot
    @errorbot 26 дней назад

    👍 now add RGB and Sound Support
    (I would sadly use this it had that…)

  • @user-wf5nb4jd1y
    @user-wf5nb4jd1y 12 дней назад

    Wouldn't a monospaced font be better to use instead of a user defined aspect ratio?

  • @Lewdiculous
    @Lewdiculous 4 дня назад

    The Sponsorblock and RUclips Plugin for MPV makes this actually a legit viable option. Just a lot less janky, haha.

  • @AnarchoAmericium
    @AnarchoAmericium 27 дней назад +1

    Amazing. Now implement sound.

  • @Jimiscool88
    @Jimiscool88 2 дня назад

    lets play the h1t1 video for the weirdest ways to play his video!

  • @naromsky
    @naromsky 7 дней назад

    Yep, long overdue.

  • @paulstrobeck8947
    @paulstrobeck8947 23 дня назад

    You need to add captions!

  • @quantdev
    @quantdev 24 дня назад

    your terminal ASCII palette seems to be inversed: dark parts are light and light parts are dark

  • @ebayman9532
    @ebayman9532 26 дней назад

    you should make the ascii colored (most cli support it) kind of like neofetch

  • @Monothefox
    @Monothefox 25 дней назад

    How wonderfully unuseless!

  • @thasave14
    @thasave14 26 дней назад

    sub deservered. Such a great project, you inspired me to do the same and if i do and publish it to github, i won't forget to mention you.

    • @icitry
      @icitry  26 дней назад

      Thank you! Go ahead, have fun, the code is free to use, I'm actually really curios what people can build upon or with parts from it

  • @tigerdan
    @tigerdan 26 дней назад

    Terminal supports color, using ansi escaoe codes. would be interesting to them used in the video

  • @delavanty
    @delavanty 7 дней назад

    This would be funny to do to avoid ads 😂

  • @TheBoxOfSteel
    @TheBoxOfSteel 7 дней назад

    Genius rickroll

  • @oblivion_2852
    @oblivion_2852 26 дней назад +2

    Instead of doing ascii black and white you could've done Unicode Upper Half Block foreground and background color keycodes in the terminal

    • @icitry
      @icitry  26 дней назад

      Really cool idea, props for it, but based on a user's installed fonts, the terminal might not be able to render unicode characters, so I'm kinda on the fence about this

  • @MunaAlaneme
    @MunaAlaneme 21 день назад

    You "Almost" mentioned my first 8th-grade teacher's name (before the switch).

  • @DissonantSynth
    @DissonantSynth 26 дней назад

    Commenting for the algorithm

  • @Fistach.
    @Fistach. 2 дня назад

    I just wanna say one big WOW!

  • @danielbrachman
    @danielbrachman 26 дней назад

    Could you use the subtitles potentially? Maybe this could be a future feature

    • @icitry
      @icitry  26 дней назад +1

      Yeah, it's a really good idea, I initially thought there'd be issues syncing them so I kinda put them aside, but reading your comment, I realized that I just have to tie the timestamps to the frame count

  • @Cart1416
    @Cart1416 19 дней назад

    you should make it colorful

  • @aaronglaser2992
    @aaronglaser2992 11 дней назад

    Is the distribution or use of yt dlp in any capacity illegal ?

  • @ficolas2
    @ficolas2 26 дней назад +1

    You got something wrong:
    Hipster cli tools made so that you dont have to use an official UI client and can use the terminal are written in rust, not python. Also use Linux, rice that terminal and add colors.

  • @tobidegnon4409
    @tobidegnon4409 26 дней назад +1

    Terminals can show colors right ? I feel like there is way to make this works for real

  • @NoobUndone
    @NoobUndone 16 дней назад

    Is there sound? Since it is a video player

  • @joelperpetua3929
    @joelperpetua3929 26 дней назад

    I wonder how this video would display in the cli

  • @BrentMalice
    @BrentMalice 26 дней назад +2

    when i clicked this i thought "lol i wonder how wild itd be to make it ascii based" cuz i expected it to just load frames at a time... ur actually doin it. absolute madlad. im stupid so this may sound stupid but if you got it running in neovim so i could watch primeagen in neovim while he talks about neovim, i think we could achieve world peace.

    • @icitry
      @icitry  26 дней назад

      Thank you, I always strive to reach the best (worst) possible solution, so ofc I had to go all the way with ascii. Also, are you sure a single text editor should be able to wield so much power? World peace is one option, but what if neovim becomes too powerful for it's opposition..

    • @avi7278
      @avi7278 26 дней назад

      image to ascii is a solved problem, not sure why it's reinvented here.

    • @BrentMalice
      @BrentMalice 26 дней назад

      @@avi7278 for fun and improvement. building things like this gives transferrable skills. otherwise ive seen stupid comments before ... so why are you here

    • @avi7278
      @avi7278 26 дней назад

      @@BrentMalice have fun then?

  • @codyf1
    @codyf1 24 дня назад

    Now to add audio...

  • @_Matchu
    @_Matchu 25 дней назад

    aint no shot i just got rick rolled in ASCII

  • @ICE0124
    @ICE0124 26 дней назад +2

    if there is a way you should add subtitles since there is no sound

    • @icitry
      @icitry  26 дней назад

      Yep, someone else suggested it as well - I'll look into it and see if I get a solution working

  • @thatonefoxxy
    @thatonefoxxy 26 дней назад +1

    How did you manage to make it stream the video off of youtube into your App?

    • @icitry
      @icitry  26 дней назад +2

      Well I get the URL to stream frames from using the yt_dlp library, then with that URL I create a cv2.VideoCapture object, from which I read the frames sequentially, which I then convert to ASCII and ultimately print to the console, clearing it before each render

  • @fanofpizzatower23199
    @fanofpizzatower23199 10 дней назад

    0:59 IS THAT JOHNNY SINS 💀💀💀💀

  • @theluckie7648
    @theluckie7648 26 дней назад

    quick question, how do i run this and where?

  • @chadyways8750
    @chadyways8750 26 дней назад

    It's neat, it itches my newly aquired terminal and vim motion monkey brain, but it's not practical :(

  • @pigeondriver8992
    @pigeondriver8992 26 дней назад

    Now do it for a real terminal, The debian command line.

  • @peterc-s6423
    @peterc-s6423 27 дней назад +1

    look into the sixel protocol and get video that actually looks good in the terminal

    • @icitry
      @icitry  26 дней назад

      I may be talking bs, as I haven't delved too deep into it, but I don't think it's inbuilt to all compilers, right? I more or less wanted to make sure it's plug and play wherever you use it, but other than that, yea, better graphics would definitely be an immediate improvement (although it'd lose that beautiful barely legible style I got going rn..)

    • @peterc-s6423
      @peterc-s6423 26 дней назад

      @@icitry i'm not quite sure how it works, you might be able to find a library to work with them. theres a utility called timg that allows you to play videos on disk and display images in the terminal with them but doesnt have audio or anything afaik. not all terminals have sixel support, though i know it works for kitty and i think iterm3.

    • @icitry
      @icitry  26 дней назад

      @@peterc-s6423 Oh, ok gotcha, I'll look into it, but I'm gonna prioritize it being cross-platform if it comes to it. Thanks for the heads-up!

  • @UtrxGaming2015
    @UtrxGaming2015 15 дней назад

    I DODGED THE RICK ROLL!!!🥳🥳🥳

  • @I-OMusic
    @I-OMusic 26 дней назад

    no search, iterate through all videos and compare strings