Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/zackees/ytclip
Downloads and clips videos from youtube, rumble, bitchute (using yt-dlp) and clips the video using ffmpeg.
https://github.com/zackees/ytclip
Last synced: 3 months ago
JSON representation
Downloads and clips videos from youtube, rumble, bitchute (using yt-dlp) and clips the video using ffmpeg.
- Host: GitHub
- URL: https://github.com/zackees/ytclip
- Owner: zackees
- License: mit
- Created: 2022-02-19T01:10:33.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2024-07-30T22:44:57.000Z (3 months ago)
- Last Synced: 2024-07-31T23:11:12.925Z (3 months ago)
- Language: Python
- Size: 191 KB
- Stars: 14
- Watchers: 2
- Forks: 3
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# ytclip - Quickly clip any video you see online and save it to your harddrive
# Usage
Make sure python (>3.7) is installed on your system.
```bash
> pip install ytclip
> ytclip https://www.youtube.com/watch?v=dQw4w9WgXcQ
# Follow the prompts
```[![Actions Status](https://github.com/zackees/ytclip/workflows/MacOS_Tests/badge.svg)](https://github.com/zackees/ytclip/actions/workflows/push_macos.yml)
[![Actions Status](https://github.com/zackees/ytclip/workflows/Win_Tests/badge.svg)](https://github.com/zackees/ytclip/actions/workflows/push_win.yml)
[![Actions Status](https://github.com/zackees/ytclip/workflows/Ubuntu_Tests/badge.svg)](https://github.com/zackees/ytclip/actions/workflows/push_ubuntu.yml)# About
This utility provides a command that will automate downloading files and creating clips out of them.
Uses `yt-dlp` to do the downloading of files and uses `static_ffmpeg` to do the actual cutting.
### Windows
For easy use, just download the [`run_ytclip.bat`](https://raw.githubusercontent.com/zackees/ytclip/main/run_ytclip.bat) file and place it into any folder you want. Now you have a double clickable icon for users that don't like going to the command line. Make sure you've installed the [latest python](https://python.org/download), checking the box that says "ADD TO PATH" during installation.
# Running
```bash
# (Interactive)
> cd
> ytclip
Add new video:
url: ...
start_timestamp: 08:08
end_timestamp: 08:20
output_name: my_file
``````bash
# (CMD-line)
> cd
> ytclip https://www.youtube.com/watch?v=CLXt3yh2g0s --start_timestamp 00:32 --end_timestamp 00:52 --outname myoutputfile
``````bash
# Help file
> ytclip --help
```# Api
You can also use it as an api:
```python
from ytclip.ytclip import run_download_and_cutrun_download_and_cut(
url="https://www.youtube.com/watch?v=-wtIMTCHWuI",
start_timestamp="1:10",
end_timestamp="1:30",
outname="myclip_withoutsuffix")
```You can also turn off logging like so:
```python
from ytclip.ytclip import run_download_and_cut, set_loggingset_logging(False)
run_download_and_cut(...)
```# Server
See the server version: [ytclip-server](https://github.com/zackees/ytclip-server)
# Releases
* 1.2.10: Adds `--crf` to control bit rate encoding.
* 1.2.9: Drm video now detected properly and an output error message is emitted.
* 1.2.8: Minimum version of `yt-dlp` bumped. Adds `--upgrade` for upgrading `yt-dlp`
* 1.2.7: Brighteon downloads have been fixed, thanks to the brighteon plugin.
* 1.2.6: Fix error where omitting length would cause error.
* 1.2.5: Cleans youtube videos by removing the ?t= part of the url.
* 1.2.4: Adds update warning for ytclip if out of date.
* 1.2.3: Make yt-dlp use 1.2.3 or higher (fixes downloader).# TODO
* Add lossless cut to tool:
* https://github.com/mifi/lossless-cut