Merge pull request #597 from zakame/use-yt-dlp

server/net: use yt-dlp instead of youtube-dl
This commit is contained in:
Neo 2023-11-05 12:22:03 +01:00 committed by GitHub
commit 9e00f37464
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
5 changed files with 7 additions and 7 deletions

View file

@ -8,7 +8,7 @@ scrubbing](https://sjp.pwn.pl/sjp/;2527372). It is pronounced as *shoorubooru*.
## Features ## Features
- Post content: images (JPG, PNG, GIF, animated GIF), videos (MP4, WEBM), Flash animations - Post content: images (JPG, PNG, GIF, animated GIF), videos (MP4, WEBM), Flash animations
- Ability to retrieve web video content using [youtube-dl](https://github.com/ytdl-org/youtube-dl) - Ability to retrieve web video content using [yt-dlp](https://github.com/yt-dlp/yt-dlp)
- Post comments - Post comments
- Post notes / annotations, including arbitrary polygons - Post notes / annotations, including arbitrary polygons
- Rich JSON REST API ([see documentation](doc/API.md)) - Rich JSON REST API ([see documentation](doc/API.md))

View file

@ -165,9 +165,9 @@ way. The files, however, should be passed as regular fields appended with a
accepts a file named `content`, the client should pass accepts a file named `content`, the client should pass
`{"contentUrl":"http://example.com/file.jpg"}` as a part of the JSON message `{"contentUrl":"http://example.com/file.jpg"}` as a part of the JSON message
body. When creating or updating post content using this method, the server can body. When creating or updating post content using this method, the server can
also be configured to employ [youtube-dl](https://github.com/ytdl-org/youtube-dl) also be configured to employ [yt-dlp](https://github.com/yt-dlp/yt-dlp) to
to download content from popular sites such as youtube, gfycat, etc. Access to download content from popular sites such as youtube, gfycat, etc. Access to
youtube-dl can be configured with the `'uploads:use_downloader'` permission yt-dlp can be configured with the `'uploads:use_downloader'` permission
Finally, in some cases the user might want to reuse one file between the Finally, in some cases the user might want to reuse one file between the
requests to save the bandwidth (for example, reverse search + consecutive requests to save the bandwidth (for example, reverse search + consecutive

View file

@ -29,7 +29,7 @@ RUN apk --no-cache add \
"coloredlogs==5.0" \ "coloredlogs==5.0" \
"pyheif==0.6.1" \ "pyheif==0.6.1" \
"heif-image-plugin>=0.3.2" \ "heif-image-plugin>=0.3.2" \
youtube_dl \ yt-dlp \
"pillow-avif-plugin>=1.1.0" \ "pillow-avif-plugin>=1.1.0" \
&& apk --no-cache del py3-pip && apk --no-cache del py3-pip

View file

@ -12,4 +12,4 @@ pyRFC3339>=1.0
pytz>=2018.3 pytz>=2018.3
pyyaml>=3.11 pyyaml>=3.11
SQLAlchemy>=1.0.12, <1.4 SQLAlchemy>=1.0.12, <1.4
youtube_dl yt-dlp

View file

@ -64,7 +64,7 @@ def download(url: str, use_video_downloader: bool = False) -> bytes:
def _get_youtube_dl_content_url(url: str) -> str: def _get_youtube_dl_content_url(url: str) -> str:
cmd = ["youtube-dl", "--format", "best", "--no-playlist"] cmd = ["yt-dlp", "--format", "best", "--no-playlist"]
if config.config["user_agent"]: if config.config["user_agent"]:
cmd.extend(["--user-agent", config.config["user_agent"]]) cmd.extend(["--user-agent", config.config["user_agent"]])
cmd.extend(["--get-url", url]) cmd.extend(["--get-url", url])