New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Import from YouTube is not using the highest quality available #3987
Comments
|
hi @SimplyCorbett, Could you fill the issue template and be more specific in your issue title? I don't see any problem description in your issue. |
|
@rigelk Tried to make this more clear. I think what's going on is if you have 1080p selected but 4k disabled peertube will grab the 1080p youtube video. The 1080p youtube video has more compression then the 4k version and so the final product on peertube is more watered down. |
|
@SimplyCorbett we changed the import selector to only import the video matching the highestd resolution selected, so this is only to be expected. It allows faster imports and transcode, especially for small instances that only selected small resolutions. As for the "watered down" effect, it is also due to YT being the source, and not the original file. |
|
@rigelk Right, I'm just pointing out the 4k file when transcoded down to 1080p is 1Mbps higher/double the bitrate. Not sure if a faster transcode time is worth the quality loss, but that's my opinion. Any chance you could make this optional on the admin backend? |
|
transcoding from a low bit rate source should not be the default, imo. peertube is pretty hard on folks who are trying to keep their video quality high. |
Sure; and as @scanlime pointed most people favor quality over VPS load. |
|
Any progress on this? |
|
Hello, If the new option transcoding.always_transcode_original_resolution is set to |
|
@Chocobozzz testing on 4.2.2...7804e57 (fresh install) with a fresh yt-dlp, nodejs 16 and ffmpeg 5.0.1. It does work (and keep) the original resolution. So, yay! Any chance you can add the option to remove the original resolution once transcoding has finished? The idea was that since youtube starved bitrate on lower resolution videos that if your instance was limited to 1080p if a 1440p or 4k version was available it would transcode off the highest resolution possible, but your instance would still only have the 1080p resolution available for play. Maybe I didn't explain that right originally. Sometimes I'm dumb like that. |
|
As an example youtube has a 1440p version with 10.5Mbps bitrate and a 1080p with 3.5Mbps. I want peertube to grab the 1440p (higher bitrate) version and then transcode the 1080p video from that. I don't want it to waste CPU cycles transcoding the 1440p version (which with VP9 will take hours). By using 1440p as the base resolution the bitrate is doubled on the transcoded 1080p video. |
|
For anyone who wants higher quality 1080p transcodes (because youtube starves 1080p bitrate): In server/helpers/youtube-dl/youtube-dl-cli.ts: Change this to: |
I'm comparing two video imports from the same URL. One is downloaded through peertube, another is downloaded with youtube-dl and uploaded manually.
URL: https://www.youtube.com/watch?v=eByKuI7_F7g
Peertube URL import: https://vidrot.com/videos/watch/cd93a375-9655-45a1-a0d8-9430af53db97
youtube-dl upload (4k, please use 1080p option to compare): https://vidrot.com/videos/watch/ea61d8d8-3e9c-46d6-9dbb-2d7f0c356e80
PeerTube instance:
VOD Setup:
480p, 1080p allowed, the rest disabled.
Steps to reproduce:
Expected behavior:
Bitrate should be the same on both clips.
The text was updated successfully, but these errors were encountered: