-
-
Notifications
You must be signed in to change notification settings - Fork 3.1k
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
Intermittent, constant buffering #6949
Comments
This comment has been minimized.
This comment has been minimized.
No, and I don't use queue anyway. In fact I got the buffering to occur after only two videos in the RC, whereas on 0.21.8 I had to watch 15-20 before it finally occured. That might have just been random chance though. |
Same thing happens for me. |
The Kodi YouTube plug-in and youtube-dl seem to have a similar problem. anxdpanic/plugin.video.youtube#163 tl;dr: YT sends a .js file with some JavaScript for the browser to execute and passes a value to it. Browser must execute JavaScript which calculates the new value and returns it. If the value is wrong or not returned then the stream is eventually throttled to about 50KB/s. Some metadata is involved as you can clear the Kodi YouTube plug-in's data cache and play the same video again and that will make throttling go away for a while. Proposed solutions in the linked issues are cancelling the download and restarting it, spoofing an Android device (devices which present themselves as Android don't seem to have this problem), creating a regex which picks out the values to be returned from JavaScript file (but that may be easily defeated by YouTube), or running a full JavaScript interpreter. |
For me its very inconsistant, a 1 hour video could run fine then the next video i pick which could be around 20 minutes could slow to a halt. |
I'm also experiencing the same issue on the latest version 0.21.11 with good connection. It's more frustrating because the majority of time, even clearing cache doesn't fix the issue. |
Yeah, in recent times it's gotten a lot worse. Every time without fail, and half of the time clearing cache + restart app doesn't help. On the plus side, I guess it's a lot easier to reproduce now, if ever needed. |
Here is the pull request for the change which fixed (for now) the issue in yt-dlp (youtube-dl fork). They took the "spoofing an Android device" approach: Click through to issue 319 at the bottom of the linked page about the age-gate bypass to see some more info about what parameters they pass to YT. |
Would this apply to NewPipe (extractor) though? Given that it's already being ran from an Android device. Or does NewPipe spoof not being an Android device? |
I guess NewPipe might be sending parameters in a slightly different way which means YT realises it's not the real YT Android client. This is why it doesn't happen in Vanced, it's the real YT client with adverts stripped out. |
An observation: switching video resolution to 480p, no issues, ever. 720p and above though, basically unwatchable. I wonder if they might be doing something similar to Netflix, where 480p and lower are unrestricted, but HD resolutions require stricter authenticatiom checks? |
I switched the default resolution in the settings, so videos always load at 480p directly. Reloading never fixes it for me unfortunately. |
Hmmm... no, this development is perfectly acceptable 👍 |
Nobody cares if you're switching from one free app to another. The world doesn't revolve around you. Comparing Vanced to NewPipe is apples to oranges. Either way, I'm updating the issue title, because I think the cached metadata thing may have been a red herring. Please refrain from posting comments unless you actually have something to contribute. |
This comment has been minimized.
This comment has been minimized.
I have it too:
Xiaomi Mi 9T pro |
Do you have problems with 480p or lower? I'm interested in seeing if this issue only affects HD and higher resolutions. |
Sometimes switching to a different res fixes it. See cases describes above. Usually non-720p or webp can solve the problem, but not always. |
Are there any plans on switching to yt-dlp? I noticed it was mentioned earlier. I don't know about android, but on Linux desktop yt-dlp has a lot better speeds then yt-dl for the reasons mentioned above. I have also noticed that switch between cellular and wifi fixes buffering for a minute or two. |
@minecraftchest1 Newpipe doesn't use youtube-dl. It uses the Newpipe Extractor, which has been written from scratch. |
I would like to chime in that I am also experiencing the issue. NewPipe is basically unusable for me for videos. I am also experiencing this issue in youtube-dl, and they showed up around the same time, so this may be IP-based.
This sounds to me like YouTube is specifically implementing a new system for suppressing traffic from 3rd-party services like NewPipe and
|
I was having this issue (constant buffering) and thought it might be resolution based, so it was showing 720, so I tapped it, and selected 480, and the app crashed. It came up with a Guru Mediation, as below: Exception
Crash log
|
Solution for Kodi's YT Plugin seems to be the following:
ytdl-org/youtube-dl#29326 (comment)
|
This comment has been minimized.
This comment has been minimized.
@what-aboot That's a completely unrelated error. Please open a new issue for it, after checking for duplicates. |
Could you please test the APK of #6537 which makes the app use the streaming URLs of the Direct link of the APK: https://github.com/TeamNewPipe/NewPipe/suites/4224687319/artifacts/109290035 |
I'm not sure if related, but I noticed that videos and audio load faster when downloading then watching. If I try to download a 44min video, 720p, it will finish in a minute or two. It happens more frequently at high speeds like 2x, with fast-forward during silence enabled. Is it the same issue? |
Possibly related: I downloaded a video or several and watched the download speed: there were periods of saturating the wireless connection and getting some 40MByte/s and every couple of seconds, there's massive throttling to less than 50KByte/s. If it's not possible to fix the periodic throttling, can the allowed amount to buffer ahead of playback be increased instead? My connection can grab like half the video in a couple of seconds, as soon as the throttling is relaxed. Also, as suggested, I messed with the playback interval size trying every value, restarting the app between, and it had no obvious effect. I think this lack of effect is in line with YouTube periodically throttling the heck out of the video load. |
That would be a good solution for my case. |
Constant buffering doesn't matter the resolution or the configuration. Only audio works more or less okey, but videos are unwatchable |
I couldn't find this information but why doesn't NewPipe just use https://github.com/yt-dlp/yt-dlp instead of having their own https://github.com/TeamNewPipe/NewPipeExtractor implementation? |
After testing old and new version I found out that buffering is present in new version if we increase speed there is more buffer and clearing cache also not work in new version |
I have tried both version on Samsung one UI and they have the same problem. This bug has opened long time back. Any recent updates? |
It seems something is causing the app to either (just download at a slow speed) or (use only a single thread for download) Does the app use multiple threads while watching? Or only downloading? It's possible that it may be faster using HTTP/2 and maybe google is throttling HTTP/1 as well, but it might need reworking? And possibly websockets? |
Yeah I also think same but why newpipe team is not taking the issue serious
|
No, we are, everything is explained in this Reddit post: https://www.reddit.com/r/NewPipe/comments/u5wf7m/about_youtube_buffering_issues/
That's not possible, unfortunately, see the post. |
For now just use apk in Checks tab of this PR #8153 its debug apk so its little slow but there is no buffering. Using it since last few weeks. |
The Firefox browser and UC browser have support to increase the cache size for faster viewing. NewPipe can refer to features and updates. |
This new version works in Samsung device. Thanks for your effort. |
I exclusively use NewPipe at 2.7 speed and the silence taken out at 240p to 480p, with closed captions to catch a few words that I might miss. 2x seems very, very slow to me anymore. However recently, I find NewPipe is unusable because of buffering. I think after the latest upgrade. Even at 144p and a tiresome slow 2x or 1.75 x, it is constantly and consistently buffering, while youtu.be doesn't buffer at 2x and 720p. It has to deliberate throttling by youtu.be to stop detected NewPipe users. I may have been easy to detect, due to the fast speed I use and the number of videos I can cram into an hour. . I have been defaulting back to the Yt client, which works fine at 2x at all resolutions. The previous version of new pipe, I noticed that only 360p worked. 480 and 240 constantly buffered. Maybe they patched the offers on the Yt server side. I was thinking that they probably carried 144, 360, 720p60fps, 1080. But 240, 480, was being transcoded on the fly, which was causing the buffer at lower resolution. 240 and 480 are my favorite resolutions, because of the bitrate v. Clarity of the two. 4k might have a place on cad tutorials, where 1080 seems blurry. |
@degarb I don't think they are detecting it with playback speed alone. I regularly watch at 3x or 4x speed on desktop (youtube.com and |
Please try the release candidate, available in #8548. Does the issue is improved? |
Hi, I always had delay and slow loading in the last few Newpipe versions (~4-6 months or so, and also in v0.23.0). So I just downloaded the debug release (Release v0.23.1 #8548) and installed the apk. All the slow load/buffer/slow skip issues are fixed, everything works fine in the new debug version I installed. Thank you very much! Comparing it to the last version, it's like double the speed now at least. Thanks again and good work |
This comment was marked as spam.
This comment was marked as spam.
@degarb Instead of complaining, why not using the debug APK of the release candidate of 0.23.1? According to the feedbacks we received and my intensive testing since more than a month of the change from progressive playback to DASH playback for YouTube contents, the issue should be solved. |
Isn't this fixed now? |
Indeed. Let's close this now. If the problem crops up again, it should be discussed in a new issue. |
This issue is back since 2 days now. Version 0.23.2 |
@Donkey-Doug Is the content on which you got the issue age-restricted or did you use the 720p stream on a 720p60 or higher video? If so, that's related to the decryption failure of the throttling parameter. Also remember that:
|
Not age restricted and only occurs on 720p and 720p @ 60Hz It only happens sometimes so I decided to wait before making an new issue until I know when it occurs. |
Checklist
Steps to reproduce the bug
I use WebM, if that matters.
Actual behavior
Eventually, seemingly at random, a video will decide it wants to endlessly buffer on/off, making it unwatchable.
When this happens, I can see that download speed consistently stays at around 60 KB/s. Closing out of the video, clearing cached metadata, then returning to that same video makes it work as normal again, varying between 100 B/s to 1-2 MB/s as you would expect.
Expected behavior
For one, the app is supposed to buffer at least 25 seconds ahead before playback resumes, as per #5516 (comment). Simply enforcing the 25 second minimum probably wouldn't fix the underlying issue, though.
Screenshots/Screen recordings
ScreenRecord-2021-08-20-21-22-38.mp4
Logs
Cleaned up to remove screen recorder spam, from the moment I enabled the recorder to the end of the recording. I hope that's enough?
Click to reveal
Device info
The text was updated successfully, but these errors were encountered: