{"id":16358119,"url":"https://github.com/botspot/youtubuddy","last_synced_at":"2025-03-21T00:31:36.526Z","repository":{"id":47611209,"uuid":"321174650","full_name":"Botspot/youtubuddy","owner":"Botspot","description":"Search/Watch/Download YouTube videos with a lightweight, interactive tool","archived":false,"fork":false,"pushed_at":"2023-03-28T08:22:13.000Z","size":413,"stargazers_count":42,"open_issues_count":2,"forks_count":10,"subscribers_count":6,"default_branch":"main","last_synced_at":"2025-03-17T19:21:20.346Z","etag":null,"topics":["gui","selected-videos","video","vlc","youtube","youtube-dl","youtube-downloader","youtube-player"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Botspot.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"COPYING","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-12-13T22:38:47.000Z","updated_at":"2025-03-13T23:11:01.000Z","dependencies_parsed_at":"2024-10-28T09:11:52.264Z","dependency_job_id":"2e8a6ef6-b47c-431f-93fd-f93f3c04966a","html_url":"https://github.com/Botspot/youtubuddy","commit_stats":{"total_commits":67,"total_committers":5,"mean_commits":13.4,"dds":0.3880597014925373,"last_synced_commit":"028031b20e6eeab6389e76652571d65a3785fa48"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Botspot%2Fyoutubuddy","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Botspot%2Fyoutubuddy/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Botspot%2Fyoutubuddy/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Botspot%2Fyoutubuddy/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Botspot","download_url":"https://codeload.github.com/Botspot/youtubuddy/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244717381,"owners_count":20498283,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["gui","selected-videos","video","vlc","youtube","youtube-dl","youtube-downloader","youtube-player"],"created_at":"2024-10-11T02:04:53.185Z","updated_at":"2025-03-21T00:31:36.233Z","avatar_url":"https://github.com/Botspot.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# YouTubuddy\n## Search/Watch/Download YouTube videos with a lightweight, interactive tool\n\n![2020-12-15-220913_1920x1080_scrot](https://user-images.githubusercontent.com/54716352/102304904-3d9cf080-3f24-11eb-9d66-a7e3a75b88fb.png)\n\n- Simple\n  - Does not need a web browser to operate\n  - One `bash` script that runs everything\n  - Based on `youtube-dl`\n  - Minimal dependencies\n  - Minimal size: less than 500 KB total\n- Secure\n  - YouTube can't track you\n  - Videos won't appear in your browsing history\n- Flexible\n  - Add your own flags to VLC and youtube-dl. For example, make VLC repeat the playlist, or play in fullscreen\n- Awesome\n  - Supports playlists, direct links, and searches\n  - Displays video thumbnails and tooltips in search results\n  - Allows selecting multiple videos from a list\n  - Easily Download multiple videos with a single click\n  - Play all selected videos in VLC\n## To download:\n```\ngit clone https://github.com/Botspot/youtubuddy\n```\n\n## To run:\n```\n~/youtubuddy/gui\n```\nThe first time you run it, YouTubuddy takes care of dependencies and adds a menu button.\n## Updating:\nYouTubuddy will automatically keep itself updated with this main repo. To disable this feature, create a file at `~/youtubuddy/no-update`.\n\n## How it works:\nIt turns out `youtube-dl` has [this little-known feature](https://github.com/Botspot/pi-apps/issues/116#issuecomment-743803001) that allows you to search YouTube.  \nAs it searches, `youtube-dl` [creates a JSON file](https://github.com/Botspot/youtubuddy/blob/51ba7a6e360888fb49a32db2d93480e6ee31cb63/gui#L201) at `~/youtubuddy/data/search.json`.\nEvery new line in the file is another search result.  \nMost of the rest of the script is dedicated to reading that json file and displaying the search results in a YAD dialog window.\n\n# Optional Settings:\n## To change video playback quality:\nOpen VLC:  \nGo to tools \u003e preferences  \nEnable \"All\" option in settings  \nIn the left pane select \"input/codecs\" then on the right pane in \"track settings\" click preferred resolution option and select the video quality.  \nNote: This option will also degrade the video quality for all video (local, streams etc).\n\n## To change video download quality:\nTo change the default download quality open youtubuddy \u003e options \u003e youtube-dl args, and insert something like `-f 135+140`.  \nThe `135` sets the video quality, which in this case is 480p. The `140` is audio quality.  \nList of video quality codes:\n```\ncode        format  quality\n140         m4a       audio only\n160         mp4       144p       \n133         mp4       240p      \n134         mp4       360p      \n135         mp4       480p       \n136         mp4       720p   \n17          3gp       176x144     \n36          3gp       320x240     \n5           flv       400x240     \n43          webm      640x360     \n18          mp4       640x360     \n22          mp4       1280x720 \n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbotspot%2Fyoutubuddy","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbotspot%2Fyoutubuddy","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbotspot%2Fyoutubuddy/lists"}