Skip to content
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

Video not playing in DASH format #5855

Open
3 tasks done
VitoItalianGamer opened this issue Apr 2, 2024 · 40 comments
Open
3 tasks done

Video not playing in DASH format #5855

VitoItalianGamer opened this issue Apr 2, 2024 · 40 comments
Labels
bug Something isn't working help wanted Looking for help

Comments

@VitoItalianGamer
Copy link

Steps to reproduce

1.Watch a video by searching or whatever
2.the video remains black and no sound

Expected behavior

The video plays like normal

Actual behavior

The video remains black and plays only in HLS

LibreTube version

0.22.2

Android version

Android 12

Other details

Was it of next DNS or libretube itself

Acknowledgements

  • I have searched the existing issues and this is a new ticket, NOT a duplicate or related to another open issue.
  • I have written a short but informative title.
  • I will fill out all of the requested information in this form.
@VitoItalianGamer VitoItalianGamer added the bug Something isn't working label Apr 2, 2024
@ngn13
Copy link

ngn13 commented Apr 2, 2024

To fix 1002 errors Piped project disabled ump with this commit: TeamPiped/Piped-Backend@d5572d7

Which breaks DASH for some reason

@Bnyro Bnyro mentioned this issue Apr 2, 2024
3 tasks
@Bnyro Bnyro added the help wanted Looking for help label Apr 2, 2024
@VitoItalianGamer

This comment was marked as spam.

@Bnyro Bnyro mentioned this issue Apr 3, 2024
3 tasks
@Bnyro Bnyro pinned this issue Apr 3, 2024
@Not-A-Coder2023
Copy link

This happened to me just recently

@consoleaf
Copy link

This happened to me just recently

Try disabling DASH in settings. Worked for me, probably will for you as well

@QuestioningEspecialy
Copy link

QuestioningEspecialy commented Apr 4, 2024

This happened to me just recently

Try disabling DASH in settings. Worked for me, probably will for you as well

This did it for me.
Settings -> Audio and video -> Quality -> Use HLS

edit:
GrapheneOS
Android 14
Pixel 6a

edit2: it pauses every few minutes now, though

@Bnyro Bnyro mentioned this issue Apr 4, 2024
3 tasks
@anoo2niem
Copy link

For those using libretube with a selfhosted piped server with docker, where switching to HLS doesn't seem to work and where the backend got updated recently by watchtower;

1337kavin/piped@sha256:afa51dbe3089686e42e894a405dabf7cc6f649b739c4f801c766153bf7a96a3c is the image with digestID just before the update that disabled UMP and breaks DASH as mentioned by @ngn13.

Currently using this image, back up and running, till the issue git fixed.

@0x24D
Copy link
Contributor

0x24D commented Apr 4, 2024

Debug log shows the issue comes from ExoPlayer:

playerFailed [eventTime=2.76, mediaPos=0.00, window=0, period=0, errorCode=ERROR_CODE_IO_READ_POSITION_OUT_OF_RANGE
                   androidx.media3.exoplayer.ExoPlaybackException: Source error
                       at androidx.media3.exoplayer.ExoPlayerImplInternal.handleIoException(ExoPlayerImplInternal.java:713)
                       at androidx.media3.exoplayer.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:685)
                       at android.os.Handler.dispatchMessage(Handler.java:102)
                       at android.os.Looper.loopOnce(Looper.java:201)
                       at android.os.Looper.loop(Looper.java:288)
                       at android.os.HandlerThread.run(HandlerThread.java:67)
                   Caused by: androidx.media3.datasource.cronet.CronetDataSource$OpenException
                       at androidx.media3.datasource.cronet.CronetDataSource.skipFully(CronetDataSource.java:928)
                       at androidx.media3.datasource.cronet.CronetDataSource.open(CronetDataSource.java:676)
                       at androidx.media3.datasource.DefaultDataSource.open(DefaultDataSource.java:275)
                       at androidx.media3.datasource.StatsDataSource.open(StatsDataSource.java:86)
                       at androidx.media3.exoplayer.source.chunk.ContainerMediaChunk.load(ContainerMediaChunk.java:129)
                       at androidx.media3.exoplayer.upstream.Loader$LoadTask.run(Loader.java:421)
                       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1137)
                       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:637)
                       at java.lang.Thread.run(Thread.java:1012)
                 ]

The DASH manifest created using PlayerHelper::createDashSource works fine using other video player, including Piped (shaka-player).

@VitoItalianGamer
Copy link
Author

I'm using hls and the auto generated captions don't appear.

@CarlosRuiz-globalqss
Copy link

I'm using hls and the auto generated captions don't appear.

same here - DASH is not working, and HLS is slow and without automatic subtitles

@Bnyro
Copy link
Member

Bnyro commented Apr 5, 2024

I am getting

Caused by: androidx.media3.common.ParserException: Invalid integer size: 8101{contentIsMalformed=true, dataType=1}
                                                                                                          at androidx.media3.extractor.mkv.DefaultEbmlReader.read(DefaultEbmlReader.java:121)
                                                                                                          at androidx.media3.extractor.mkv.MatroskaExtractor.read(MatroskaExtractor.java:514)
                                                                                                          at androidx.media3.exoplayer.source.chunk.BundledChunkExtractor.read(BundledChunkExtractor.java:149)
                                                                                                          at androidx.media3.exoplayer.source.chunk.ContainerMediaChunk.load(ContainerMediaChunk.java:129)
                                                                                                          at androidx.media3.exoplayer.upstream.Loader$LoadTask.run(Loader.java:414)
                                                                                                          at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
                                                                                                          at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:644)
                                                                                                          at java.lang.Thread.run(Thread.java:1012)

I've logged and compared requests from Piped and LibreTube at the proxy's side, and they're pretty much identical. So I suspect that when disabling ump, YouTube's video format is different and thus no longer compatible with the ExoPlayer, while Shaka does handle things differently at the Piped frontend on the web.

I've tested downgrading the ExoPlayer version - without any notable changes.

@ARR552
Copy link

ARR552 commented Apr 6, 2024

This happened to me just recently

Try disabling DASH in settings. Worked for me, probably will for you as well

This worked for me as well but only for the video. It is still failing in audio mode...

@Ehab-d
Copy link

Ehab-d commented Apr 6, 2024

This worked for me as well but only for the video. It is still failing in audio mode...

The audio player did not respect the Use HLS setting and always used DASH. This issue was resolved in #5862. You can expect it to be resolved in the next release or try the nightly builds.

@VitoItalianGamer

This comment was marked as off-topic.

@aviallon

This comment was marked as off-topic.

@VitoItalianGamer

This comment was marked as off-topic.

@sonisaltiner

This comment was marked as off-topic.

@Moonstone3010

This comment was marked as off-topic.

@sonisaltiner

This comment was marked as off-topic.

@Bnyro Bnyro mentioned this issue May 3, 2024
3 tasks
@DanielProg39 DanielProg39 mentioned this issue May 6, 2024
3 tasks
@Bnyro Bnyro mentioned this issue May 9, 2024
3 tasks
@0xrxL

This comment was marked as off-topic.

@0xrxL

This comment was marked as off-topic.

@Bnyro

This comment was marked as off-topic.

@0xrxL

This comment was marked as off-topic.

@Bnyro

This comment was marked as off-topic.

@Pamilg8

This comment was marked as off-topic.

@mckellenjaundice122

This comment was marked as off-topic.

@Pamilg8

This comment was marked as off-topic.

@VitoItalianGamer

This comment was marked as off-topic.

@codenyte
Copy link

NewPipe is more stable. Innertube or NewPipe Extractor as additional support would be great

I'll install New Pipe until LibreTube fixes the DASH problem

You can simply disable the proxying in the settings. Go to settings -> Instance and select 'Disable Piped proxy'. That setting will make LibreTube basically act just like NewPipe.

@BatDevil

This comment was marked as off-topic.

@VitoItalianGamer

This comment was marked as off-topic.

@VitoItalianGamer

This comment was marked as off-topic.

@Not-A-Coder2023
Copy link

unrelated but apparently adding a channel to a group crashes libretube debug

@codenyte
Copy link

codenyte commented Jun 22, 2024

unrelated but apparently adding a channel to a group crashes libretube debug

@Not-A-Coder2023 Please open a new issue for that

@alejandro-alzate
Copy link

Which breaks DASH for some reason

Pinnacle of subtle software quirks.

@GlytchMeister
Copy link

GlytchMeister commented Aug 11, 2024

I know a previous comment said not to comment just to say one is experiencing this problem as well, but I feel like something has happened recently; Up until a few minutes ago, I have been able to play DASH on at least one instance.

But now, every instance is either unable to play DASH or is returning "sign in to confirm you're not a not" errors.

HLS, as mentioned in the setting to use it over DASH, is QUITE slow... and there is a limit to how far the video will buffer. Once it hits that limit, it won't buffer any more, even if I begin playing the video. I have to change the resolution to clear the played buffer once I reach the end of the buffer so the video can buffer the next 30 seconds or so of the video.

This is an awful lot of hoops to jump through to watch a video, even at just 144p and "worst" audio quality

@ngn13
Copy link

ngn13 commented Aug 13, 2024

@GlytchMeister

I know a previous comment said not to comment just to say one is experiencing this problem as well, but I feel like something has happened recently; Up until a few minutes ago, I have been able to play DASH on at least one instance.

The instance you were using was probably running an older version of Piped, with this commit Piped disabled ump, which breaks DASH

But now, every instance is either unable to play DASH or is returning "sign in to confirm you're not a not" errors.

The "sign in" error you are getting is not related to HLS or DASH, please see this issue.

@Notesure
Copy link

Notesure commented Sep 16, 2024

Now, this problem has been fixed in the latest Debug version thanks to the local stream extractor. This is a Piped proxy problem
#6485
#6489

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working help wanted Looking for help
Projects
None yet
Development

No branches or pull requests