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

[YouTube] Channel page - Shorts videos no longer display their duration #8034

Closed
5 tasks done
mxxcon opened this issue Mar 14, 2022 · 14 comments
Closed
5 tasks done

[YouTube] Channel page - Shorts videos no longer display their duration #8034

mxxcon opened this issue Mar 14, 2022 · 14 comments
Labels
bug Issue is related to a bug requires extractor change This issue requires a change to the extractor youtube Service, https://www.youtube.com/

Comments

@mxxcon
Copy link

mxxcon commented Mar 14, 2022

Checklist

  • I am able to reproduce the bug with the latest version.
  • I made sure that there are no existing issues - open or closed - which I could contribute my information to.
  • I have taken the time to fill in all the required details. I understand that the bug report will be dismissed otherwise.
  • This issue contains only one bug.
  • I have read and understood the contribution guidelines.

Affected version

0.22.1

Steps to reproduce the bug

Open channel https://youtube.com/c/Ingress in NewPipe.

Expected behavior

Channel should open and show videos

Actual behavior

Channel opens and shows videos, but at the bottom of the screen I see message "Something went wrong".

Screenshots/Screen recordings

Screenshot_20220314-155509_NewPipe

Logs

Exception

  • User Action: requested channel
  • Request: Start loading: https://www.youtube.com/channel/UCIQMW4-IH91Ed4VPVbKMsaQ
  • Content Country: US
  • Content Language: en-US
  • App Language: en_US
  • Service: YouTube
  • Version: 0.22.1
  • OS: Linux samsung/r8qsqx/r8q:12/SP1A.210812.016/G781USQU6EULI:user/release-keys 12 - 31
Exceptions (7)

Crash log 1

java.lang.NumberFormatException: For input string: ""
	at java.lang.Integer.parseInt(Integer.java:627)
	at java.lang.Integer.parseInt(Integer.java:650)
	at org.schabi.newpipe.extractor.services.youtube.YoutubeParsingHelper.parseDurationString(YoutubeParsingHelper.java:213)
	at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamInfoItemExtractor.getDuration(YoutubeStreamInfoItemExtractor.java:126)
	at org.schabi.newpipe.extractor.stream.StreamInfoItemsCollector.extract(StreamInfoItemsCollector.java:60)
	at org.schabi.newpipe.extractor.stream.StreamInfoItemsCollector.commit(StreamInfoItemsCollector.java:116)
	at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeChannelExtractor.collectStreamsFrom(YoutubeChannelExtractor.java:418)
	at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeChannelExtractor.getInitialPage(YoutubeChannelExtractor.java:338)
	at org.schabi.newpipe.extractor.utils.ExtractorHelper.getItemsPageOrLogError(ExtractorHelper.java:19)
	at org.schabi.newpipe.extractor.channel.ChannelInfo.getInfo(ChannelInfo.java:83)
	at org.schabi.newpipe.extractor.channel.ChannelInfo.getInfo(ChannelInfo.java:48)
	at org.schabi.newpipe.util.ExtractorHelper.lambda$getChannelInfo$4(ExtractorHelper.java:124)
	at org.schabi.newpipe.util.ExtractorHelper.$r8$lambda$BOLWstv98dC8pFAG_uir5gPXYwY(Unknown Source:0)
	at org.schabi.newpipe.util.ExtractorHelper$$ExternalSyntheticLambda3.call(Unknown Source:4)
	at io.reactivex.rxjava3.internal.operators.single.SingleFromCallable.subscribeActual(SingleFromCallable.java:43)
	at io.reactivex.rxjava3.core.Single.subscribe(Single.java:4813)
	at io.reactivex.rxjava3.internal.operators.single.SingleDoOnSuccess.subscribeActual(SingleDoOnSuccess.java:35)
	at io.reactivex.rxjava3.core.Single.subscribe(Single.java:4813)
	at io.reactivex.rxjava3.internal.operators.single.SingleOnErrorReturn.subscribeActual(SingleOnErrorReturn.java:38)
	at io.reactivex.rxjava3.core.Single.subscribe(Single.java:4813)
	at io.reactivex.rxjava3.core.Single.blockingGet(Single.java:3644)
	at org.schabi.newpipe.local.feed.service.FeedLoadService.startLoading$lambda-8(FeedLoadService.kt:221)
	at org.schabi.newpipe.local.feed.service.FeedLoadService.$r8$lambda$ANP-_WSenKPpH-hSUb1ISrX5jY8(Unknown Source:0)
	at org.schabi.newpipe.local.feed.service.FeedLoadService$$ExternalSyntheticLambda7.apply(Unknown Source:4)
	at io.reactivex.rxjava3.internal.operators.parallel.ParallelMap$ParallelMapSubscriber.onNext(ParallelMap.java:116)
	at io.reactivex.rxjava3.internal.operators.parallel.ParallelFilter$ParallelFilterSubscriber.tryOnNext(ParallelFilter.java:132)
	at io.reactivex.rxjava3.internal.operators.parallel.ParallelRunOn$RunOnConditionalSubscriber.run(ParallelRunOn.java:399)
	at io.reactivex.rxjava3.internal.schedulers.ScheduledRunnable.run(ScheduledRunnable.java:65)
	at io.reactivex.rxjava3.internal.schedulers.ScheduledRunnable.call(ScheduledRunnable.java:56)
	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:301)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
	at java.lang.Thread.run(Thread.java:920)

Crash log 2

java.lang.NumberFormatException: For input string: ""
	at java.lang.Integer.parseInt(Integer.java:627)
	at java.lang.Integer.parseInt(Integer.java:650)
	at org.schabi.newpipe.extractor.services.youtube.YoutubeParsingHelper.parseDurationString(YoutubeParsingHelper.java:213)
	at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamInfoItemExtractor.getDuration(YoutubeStreamInfoItemExtractor.java:126)
	at org.schabi.newpipe.extractor.stream.StreamInfoItemsCollector.extract(StreamInfoItemsCollector.java:60)
	at org.schabi.newpipe.extractor.stream.StreamInfoItemsCollector.commit(StreamInfoItemsCollector.java:116)
	at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeChannelExtractor.collectStreamsFrom(YoutubeChannelExtractor.java:418)
	at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeChannelExtractor.getInitialPage(YoutubeChannelExtractor.java:338)
	at org.schabi.newpipe.extractor.utils.ExtractorHelper.getItemsPageOrLogError(ExtractorHelper.java:19)
	at org.schabi.newpipe.extractor.channel.ChannelInfo.getInfo(ChannelInfo.java:83)
	at org.schabi.newpipe.extractor.channel.ChannelInfo.getInfo(ChannelInfo.java:48)
	at org.schabi.newpipe.util.ExtractorHelper.lambda$getChannelInfo$4(ExtractorHelper.java:124)
	at org.schabi.newpipe.util.ExtractorHelper.$r8$lambda$BOLWstv98dC8pFAG_uir5gPXYwY(Unknown Source:0)
	at org.schabi.newpipe.util.ExtractorHelper$$ExternalSyntheticLambda3.call(Unknown Source:4)
	at io.reactivex.rxjava3.internal.operators.single.SingleFromCallable.subscribeActual(SingleFromCallable.java:43)
	at io.reactivex.rxjava3.core.Single.subscribe(Single.java:4813)
	at io.reactivex.rxjava3.internal.operators.single.SingleDoOnSuccess.subscribeActual(SingleDoOnSuccess.java:35)
	at io.reactivex.rxjava3.core.Single.subscribe(Single.java:4813)
	at io.reactivex.rxjava3.internal.operators.single.SingleOnErrorReturn.subscribeActual(SingleOnErrorReturn.java:38)
	at io.reactivex.rxjava3.core.Single.subscribe(Single.java:4813)
	at io.reactivex.rxjava3.core.Single.blockingGet(Single.java:3644)
	at org.schabi.newpipe.local.feed.service.FeedLoadService.startLoading$lambda-8(FeedLoadService.kt:221)
	at org.schabi.newpipe.local.feed.service.FeedLoadService.$r8$lambda$ANP-_WSenKPpH-hSUb1ISrX5jY8(Unknown Source:0)
	at org.schabi.newpipe.local.feed.service.FeedLoadService$$ExternalSyntheticLambda7.apply(Unknown Source:4)
	at io.reactivex.rxjava3.internal.operators.parallel.ParallelMap$ParallelMapSubscriber.onNext(ParallelMap.java:116)
	at io.reactivex.rxjava3.internal.operators.parallel.ParallelFilter$ParallelFilterSubscriber.tryOnNext(ParallelFilter.java:132)
	at io.reactivex.rxjava3.internal.operators.parallel.ParallelRunOn$RunOnConditionalSubscriber.run(ParallelRunOn.java:399)
	at io.reactivex.rxjava3.internal.schedulers.ScheduledRunnable.run(ScheduledRunnable.java:65)
	at io.reactivex.rxjava3.internal.schedulers.ScheduledRunnable.call(ScheduledRunnable.java:56)
	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:301)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
	at java.lang.Thread.run(Thread.java:920)

Crash log 3

java.lang.NumberFormatException: For input string: ""
	at java.lang.Integer.parseInt(Integer.java:627)
	at java.lang.Integer.parseInt(Integer.java:650)
	at org.schabi.newpipe.extractor.services.youtube.YoutubeParsingHelper.parseDurationString(YoutubeParsingHelper.java:213)
	at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamInfoItemExtractor.getDuration(YoutubeStreamInfoItemExtractor.java:126)
	at org.schabi.newpipe.extractor.stream.StreamInfoItemsCollector.extract(StreamInfoItemsCollector.java:60)
	at org.schabi.newpipe.extractor.stream.StreamInfoItemsCollector.commit(StreamInfoItemsCollector.java:116)
	at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeChannelExtractor.collectStreamsFrom(YoutubeChannelExtractor.java:418)
	at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeChannelExtractor.getInitialPage(YoutubeChannelExtractor.java:338)
	at org.schabi.newpipe.extractor.utils.ExtractorHelper.getItemsPageOrLogError(ExtractorHelper.java:19)
	at org.schabi.newpipe.extractor.channel.ChannelInfo.getInfo(ChannelInfo.java:83)
	at org.schabi.newpipe.extractor.channel.ChannelInfo.getInfo(ChannelInfo.java:48)
	at org.schabi.newpipe.util.ExtractorHelper.lambda$getChannelInfo$4(ExtractorHelper.java:124)
	at org.schabi.newpipe.util.ExtractorHelper.$r8$lambda$BOLWstv98dC8pFAG_uir5gPXYwY(Unknown Source:0)
	at org.schabi.newpipe.util.ExtractorHelper$$ExternalSyntheticLambda3.call(Unknown Source:4)
	at io.reactivex.rxjava3.internal.operators.single.SingleFromCallable.subscribeActual(SingleFromCallable.java:43)
	at io.reactivex.rxjava3.core.Single.subscribe(Single.java:4813)
	at io.reactivex.rxjava3.internal.operators.single.SingleDoOnSuccess.subscribeActual(SingleDoOnSuccess.java:35)
	at io.reactivex.rxjava3.core.Single.subscribe(Single.java:4813)
	at io.reactivex.rxjava3.internal.operators.single.SingleOnErrorReturn.subscribeActual(SingleOnErrorReturn.java:38)
	at io.reactivex.rxjava3.core.Single.subscribe(Single.java:4813)
	at io.reactivex.rxjava3.core.Single.blockingGet(Single.java:3644)
	at org.schabi.newpipe.local.feed.service.FeedLoadService.startLoading$lambda-8(FeedLoadService.kt:221)
	at org.schabi.newpipe.local.feed.service.FeedLoadService.$r8$lambda$ANP-_WSenKPpH-hSUb1ISrX5jY8(Unknown Source:0)
	at org.schabi.newpipe.local.feed.service.FeedLoadService$$ExternalSyntheticLambda7.apply(Unknown Source:4)
	at io.reactivex.rxjava3.internal.operators.parallel.ParallelMap$ParallelMapSubscriber.onNext(ParallelMap.java:116)
	at io.reactivex.rxjava3.internal.operators.parallel.ParallelFilter$ParallelFilterSubscriber.tryOnNext(ParallelFilter.java:132)
	at io.reactivex.rxjava3.internal.operators.parallel.ParallelRunOn$RunOnConditionalSubscriber.run(ParallelRunOn.java:399)
	at io.reactivex.rxjava3.internal.schedulers.ScheduledRunnable.run(ScheduledRunnable.java:65)
	at io.reactivex.rxjava3.internal.schedulers.ScheduledRunnable.call(ScheduledRunnable.java:56)
	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:301)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
	at java.lang.Thread.run(Thread.java:920)

Crash log 4

java.lang.NumberFormatException: For input string: ""
	at java.lang.Integer.parseInt(Integer.java:627)
	at java.lang.Integer.parseInt(Integer.java:650)
	at org.schabi.newpipe.extractor.services.youtube.YoutubeParsingHelper.parseDurationString(YoutubeParsingHelper.java:213)
	at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamInfoItemExtractor.getDuration(YoutubeStreamInfoItemExtractor.java:126)
	at org.schabi.newpipe.extractor.stream.StreamInfoItemsCollector.extract(StreamInfoItemsCollector.java:60)
	at org.schabi.newpipe.extractor.stream.StreamInfoItemsCollector.commit(StreamInfoItemsCollector.java:116)
	at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeChannelExtractor.collectStreamsFrom(YoutubeChannelExtractor.java:418)
	at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeChannelExtractor.getInitialPage(YoutubeChannelExtractor.java:338)
	at org.schabi.newpipe.extractor.utils.ExtractorHelper.getItemsPageOrLogError(ExtractorHelper.java:19)
	at org.schabi.newpipe.extractor.channel.ChannelInfo.getInfo(ChannelInfo.java:83)
	at org.schabi.newpipe.extractor.channel.ChannelInfo.getInfo(ChannelInfo.java:48)
	at org.schabi.newpipe.util.ExtractorHelper.lambda$getChannelInfo$4(ExtractorHelper.java:124)
	at org.schabi.newpipe.util.ExtractorHelper.$r8$lambda$BOLWstv98dC8pFAG_uir5gPXYwY(Unknown Source:0)
	at org.schabi.newpipe.util.ExtractorHelper$$ExternalSyntheticLambda3.call(Unknown Source:4)
	at io.reactivex.rxjava3.internal.operators.single.SingleFromCallable.subscribeActual(SingleFromCallable.java:43)
	at io.reactivex.rxjava3.core.Single.subscribe(Single.java:4813)
	at io.reactivex.rxjava3.internal.operators.single.SingleDoOnSuccess.subscribeActual(SingleDoOnSuccess.java:35)
	at io.reactivex.rxjava3.core.Single.subscribe(Single.java:4813)
	at io.reactivex.rxjava3.internal.operators.single.SingleOnErrorReturn.subscribeActual(SingleOnErrorReturn.java:38)
	at io.reactivex.rxjava3.core.Single.subscribe(Single.java:4813)
	at io.reactivex.rxjava3.core.Single.blockingGet(Single.java:3644)
	at org.schabi.newpipe.local.feed.service.FeedLoadService.startLoading$lambda-8(FeedLoadService.kt:221)
	at org.schabi.newpipe.local.feed.service.FeedLoadService.$r8$lambda$ANP-_WSenKPpH-hSUb1ISrX5jY8(Unknown Source:0)
	at org.schabi.newpipe.local.feed.service.FeedLoadService$$ExternalSyntheticLambda7.apply(Unknown Source:4)
	at io.reactivex.rxjava3.internal.operators.parallel.ParallelMap$ParallelMapSubscriber.onNext(ParallelMap.java:116)
	at io.reactivex.rxjava3.internal.operators.parallel.ParallelFilter$ParallelFilterSubscriber.tryOnNext(ParallelFilter.java:132)
	at io.reactivex.rxjava3.internal.operators.parallel.ParallelRunOn$RunOnConditionalSubscriber.run(ParallelRunOn.java:399)
	at io.reactivex.rxjava3.internal.schedulers.ScheduledRunnable.run(ScheduledRunnable.java:65)
	at io.reactivex.rxjava3.internal.schedulers.ScheduledRunnable.call(ScheduledRunnable.java:56)
	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:301)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
	at java.lang.Thread.run(Thread.java:920)

Crash log 5

java.lang.NumberFormatException: For input string: ""
	at java.lang.Integer.parseInt(Integer.java:627)
	at java.lang.Integer.parseInt(Integer.java:650)
	at org.schabi.newpipe.extractor.services.youtube.YoutubeParsingHelper.parseDurationString(YoutubeParsingHelper.java:213)
	at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamInfoItemExtractor.getDuration(YoutubeStreamInfoItemExtractor.java:126)
	at org.schabi.newpipe.extractor.stream.StreamInfoItemsCollector.extract(StreamInfoItemsCollector.java:60)
	at org.schabi.newpipe.extractor.stream.StreamInfoItemsCollector.commit(StreamInfoItemsCollector.java:116)
	at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeChannelExtractor.collectStreamsFrom(YoutubeChannelExtractor.java:418)
	at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeChannelExtractor.getInitialPage(YoutubeChannelExtractor.java:338)
	at org.schabi.newpipe.extractor.utils.ExtractorHelper.getItemsPageOrLogError(ExtractorHelper.java:19)
	at org.schabi.newpipe.extractor.channel.ChannelInfo.getInfo(ChannelInfo.java:83)
	at org.schabi.newpipe.extractor.channel.ChannelInfo.getInfo(ChannelInfo.java:48)
	at org.schabi.newpipe.util.ExtractorHelper.lambda$getChannelInfo$4(ExtractorHelper.java:124)
	at org.schabi.newpipe.util.ExtractorHelper.$r8$lambda$BOLWstv98dC8pFAG_uir5gPXYwY(Unknown Source:0)
	at org.schabi.newpipe.util.ExtractorHelper$$ExternalSyntheticLambda3.call(Unknown Source:4)
	at io.reactivex.rxjava3.internal.operators.single.SingleFromCallable.subscribeActual(SingleFromCallable.java:43)
	at io.reactivex.rxjava3.core.Single.subscribe(Single.java:4813)
	at io.reactivex.rxjava3.internal.operators.single.SingleDoOnSuccess.subscribeActual(SingleDoOnSuccess.java:35)
	at io.reactivex.rxjava3.core.Single.subscribe(Single.java:4813)
	at io.reactivex.rxjava3.internal.operators.single.SingleOnErrorReturn.subscribeActual(SingleOnErrorReturn.java:38)
	at io.reactivex.rxjava3.core.Single.subscribe(Single.java:4813)
	at io.reactivex.rxjava3.core.Single.blockingGet(Single.java:3644)
	at org.schabi.newpipe.local.feed.service.FeedLoadService.startLoading$lambda-8(FeedLoadService.kt:221)
	at org.schabi.newpipe.local.feed.service.FeedLoadService.$r8$lambda$ANP-_WSenKPpH-hSUb1ISrX5jY8(Unknown Source:0)
	at org.schabi.newpipe.local.feed.service.FeedLoadService$$ExternalSyntheticLambda7.apply(Unknown Source:4)
	at io.reactivex.rxjava3.internal.operators.parallel.ParallelMap$ParallelMapSubscriber.onNext(ParallelMap.java:116)
	at io.reactivex.rxjava3.internal.operators.parallel.ParallelFilter$ParallelFilterSubscriber.tryOnNext(ParallelFilter.java:132)
	at io.reactivex.rxjava3.internal.operators.parallel.ParallelRunOn$RunOnConditionalSubscriber.run(ParallelRunOn.java:399)
	at io.reactivex.rxjava3.internal.schedulers.ScheduledRunnable.run(ScheduledRunnable.java:65)
	at io.reactivex.rxjava3.internal.schedulers.ScheduledRunnable.call(ScheduledRunnable.java:56)
	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:301)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
	at java.lang.Thread.run(Thread.java:920)

Crash log 6

java.lang.NumberFormatException: For input string: ""
	at java.lang.Integer.parseInt(Integer.java:627)
	at java.lang.Integer.parseInt(Integer.java:650)
	at org.schabi.newpipe.extractor.services.youtube.YoutubeParsingHelper.parseDurationString(YoutubeParsingHelper.java:213)
	at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamInfoItemExtractor.getDuration(YoutubeStreamInfoItemExtractor.java:126)
	at org.schabi.newpipe.extractor.stream.StreamInfoItemsCollector.extract(StreamInfoItemsCollector.java:60)
	at org.schabi.newpipe.extractor.stream.StreamInfoItemsCollector.commit(StreamInfoItemsCollector.java:116)
	at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeChannelExtractor.collectStreamsFrom(YoutubeChannelExtractor.java:418)
	at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeChannelExtractor.getInitialPage(YoutubeChannelExtractor.java:338)
	at org.schabi.newpipe.extractor.utils.ExtractorHelper.getItemsPageOrLogError(ExtractorHelper.java:19)
	at org.schabi.newpipe.extractor.channel.ChannelInfo.getInfo(ChannelInfo.java:83)
	at org.schabi.newpipe.extractor.channel.ChannelInfo.getInfo(ChannelInfo.java:48)
	at org.schabi.newpipe.util.ExtractorHelper.lambda$getChannelInfo$4(ExtractorHelper.java:124)
	at org.schabi.newpipe.util.ExtractorHelper.$r8$lambda$BOLWstv98dC8pFAG_uir5gPXYwY(Unknown Source:0)
	at org.schabi.newpipe.util.ExtractorHelper$$ExternalSyntheticLambda3.call(Unknown Source:4)
	at io.reactivex.rxjava3.internal.operators.single.SingleFromCallable.subscribeActual(SingleFromCallable.java:43)
	at io.reactivex.rxjava3.core.Single.subscribe(Single.java:4813)
	at io.reactivex.rxjava3.internal.operators.single.SingleDoOnSuccess.subscribeActual(SingleDoOnSuccess.java:35)
	at io.reactivex.rxjava3.core.Single.subscribe(Single.java:4813)
	at io.reactivex.rxjava3.internal.operators.single.SingleOnErrorReturn.subscribeActual(SingleOnErrorReturn.java:38)
	at io.reactivex.rxjava3.core.Single.subscribe(Single.java:4813)
	at io.reactivex.rxjava3.core.Single.blockingGet(Single.java:3644)
	at org.schabi.newpipe.local.feed.service.FeedLoadService.startLoading$lambda-8(FeedLoadService.kt:221)
	at org.schabi.newpipe.local.feed.service.FeedLoadService.$r8$lambda$ANP-_WSenKPpH-hSUb1ISrX5jY8(Unknown Source:0)
	at org.schabi.newpipe.local.feed.service.FeedLoadService$$ExternalSyntheticLambda7.apply(Unknown Source:4)
	at io.reactivex.rxjava3.internal.operators.parallel.ParallelMap$ParallelMapSubscriber.onNext(ParallelMap.java:116)
	at io.reactivex.rxjava3.internal.operators.parallel.ParallelFilter$ParallelFilterSubscriber.tryOnNext(ParallelFilter.java:132)
	at io.reactivex.rxjava3.internal.operators.parallel.ParallelRunOn$RunOnConditionalSubscriber.run(ParallelRunOn.java:399)
	at io.reactivex.rxjava3.internal.schedulers.ScheduledRunnable.run(ScheduledRunnable.java:65)
	at io.reactivex.rxjava3.internal.schedulers.ScheduledRunnable.call(ScheduledRunnable.java:56)
	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:301)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
	at java.lang.Thread.run(Thread.java:920)

Crash log 7

java.lang.NumberFormatException: For input string: ""
	at java.lang.Integer.parseInt(Integer.java:627)
	at java.lang.Integer.parseInt(Integer.java:650)
	at org.schabi.newpipe.extractor.services.youtube.YoutubeParsingHelper.parseDurationString(YoutubeParsingHelper.java:213)
	at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamInfoItemExtractor.getDuration(YoutubeStreamInfoItemExtractor.java:126)
	at org.schabi.newpipe.extractor.stream.StreamInfoItemsCollector.extract(StreamInfoItemsCollector.java:60)
	at org.schabi.newpipe.extractor.stream.StreamInfoItemsCollector.commit(StreamInfoItemsCollector.java:116)
	at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeChannelExtractor.collectStreamsFrom(YoutubeChannelExtractor.java:418)
	at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeChannelExtractor.getInitialPage(YoutubeChannelExtractor.java:338)
	at org.schabi.newpipe.extractor.utils.ExtractorHelper.getItemsPageOrLogError(ExtractorHelper.java:19)
	at org.schabi.newpipe.extractor.channel.ChannelInfo.getInfo(ChannelInfo.java:83)
	at org.schabi.newpipe.extractor.channel.ChannelInfo.getInfo(ChannelInfo.java:48)
	at org.schabi.newpipe.util.ExtractorHelper.lambda$getChannelInfo$4(ExtractorHelper.java:124)
	at org.schabi.newpipe.util.ExtractorHelper.$r8$lambda$BOLWstv98dC8pFAG_uir5gPXYwY(Unknown Source:0)
	at org.schabi.newpipe.util.ExtractorHelper$$ExternalSyntheticLambda3.call(Unknown Source:4)
	at io.reactivex.rxjava3.internal.operators.single.SingleFromCallable.subscribeActual(SingleFromCallable.java:43)
	at io.reactivex.rxjava3.core.Single.subscribe(Single.java:4813)
	at io.reactivex.rxjava3.internal.operators.single.SingleDoOnSuccess.subscribeActual(SingleDoOnSuccess.java:35)
	at io.reactivex.rxjava3.core.Single.subscribe(Single.java:4813)
	at io.reactivex.rxjava3.internal.operators.single.SingleOnErrorReturn.subscribeActual(SingleOnErrorReturn.java:38)
	at io.reactivex.rxjava3.core.Single.subscribe(Single.java:4813)
	at io.reactivex.rxjava3.core.Single.blockingGet(Single.java:3644)
	at org.schabi.newpipe.local.feed.service.FeedLoadService.startLoading$lambda-8(FeedLoadService.kt:221)
	at org.schabi.newpipe.local.feed.service.FeedLoadService.$r8$lambda$ANP-_WSenKPpH-hSUb1ISrX5jY8(Unknown Source:0)
	at org.schabi.newpipe.local.feed.service.FeedLoadService$$ExternalSyntheticLambda7.apply(Unknown Source:4)
	at io.reactivex.rxjava3.internal.operators.parallel.ParallelMap$ParallelMapSubscriber.onNext(ParallelMap.java:116)
	at io.reactivex.rxjava3.internal.operators.parallel.ParallelFilter$ParallelFilterSubscriber.tryOnNext(ParallelFilter.java:132)
	at io.reactivex.rxjava3.internal.operators.parallel.ParallelRunOn$RunOnConditionalSubscriber.run(ParallelRunOn.java:399)
	at io.reactivex.rxjava3.internal.schedulers.ScheduledRunnable.run(ScheduledRunnable.java:65)
	at io.reactivex.rxjava3.internal.schedulers.ScheduledRunnable.call(ScheduledRunnable.java:56)
	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:301)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
	at java.lang.Thread.run(Thread.java:920)


Affected Android/Custom ROM version

Android 12 /OneUI 4

Affected device model

Samsung Galaxy S20 FE

Additional information

No response

@mxxcon mxxcon added the bug Issue is related to a bug label Mar 14, 2022
@litetex
Copy link
Member

litetex commented Mar 14, 2022

Looks like these are YT shorts videos which don't have a time?
image

@mxxcon

This comment was marked as resolved.

@AudricV
Copy link
Member

AudricV commented Mar 15, 2022

The issue is indeed caused by shorts (and seems to be the "Channels not loaded" issues in What's new feed (so we should rename the message to "Channels with loading errors", because content can still be extracted)): the change is currently rolling out and replaces the duration of shorts by a Shorts icon.

There is now no way to get the duration except parsing the accessibility data (available inside video items (gridVideoRenderer), in title.accessibility.accessibilityData.label), which look like this:

Courier Unmasked by Ingress 1 year ago 11 seconds 2,063 views - play Short

So we need a regular expression or (several regular expressions) that matches the content before a space before itself the last occurence of hour, minute, and second to extract hours, minutes and seconds and then convert everything into seconds.

@AudricV AudricV added youtube Service, https://www.youtube.com/ requires extractor change This issue requires a change to the extractor labels Mar 15, 2022
@litetex litetex changed the title Guru Meditation crash when requesting channel page. YT: Channel page - YT Shorts video now longer show time Mar 15, 2022
@litetex litetex changed the title YT: Channel page - YT Shorts video now longer show time YT: Channel page - YT Shorts videos now longer display video duration Mar 15, 2022
@opusforlife2
Copy link
Collaborator

I just tried refreshing now. I got 67 "Not loaded" channels. By refreshing repeatedly, I was able to bring that number down to 1.

@ktprograms
Copy link
Contributor

Courier Unmasked by Ingress 1 year ago 11 seconds 2,063 views - play Short

So we need a regular expression or (several regular expressions) that matches the content before a space before itself the last occurence of hour, minute, and second to extract hours, minutes and seconds and then convert everything into seconds.

@TiA4f8R

Correct me if I'm wrong, but I don't think there's any actual shorts that are >= 1 minute?

So wouldn't just something like /(\d+) seconds [0-9,]+ views - play Short/g work?
(Extract the first group for the seconds value)

@AudricV
Copy link
Member

AudricV commented Mar 16, 2022

I don't think there's any actual shorts that are >= 1 minute?

No, you are wrong, they can be equal to 1 minute, according to https://support.google.com/youtube/answer/10059070 and here how looks like the accessibility data in this case:

1 min short

Note that this data may be also used as a last ressort to get duration from other places (the same structure code is used in search results and playlists), so we should support extracting them, even if that's not really precise for longer videos: we are not able to know how many seconds there for 1 hour+ videos, and how many hours and seconds for 1 day+ videos.

litetex added a commit to litetex/NewPipeExtractor that referenced this issue Mar 17, 2022
As a workaround 0 is returned as duration for such videos.
See also TeamNewPipe/NewPipe#8034
litetex added a commit to litetex/NewPipeExtractor that referenced this issue Mar 17, 2022
As a workaround 0 is returned as duration for such videos.
See also TeamNewPipe/NewPipe#8034
@litetex
Copy link
Member

litetex commented Mar 17, 2022

A fix/workaround will be available with TeamNewPipe/NewPipeExtractor#813: TeamNewPipe/NewPipeExtractor#813 (comment)

@AudricV AudricV changed the title YT: Channel page - YT Shorts videos now longer display video duration [YouTube] Channel page - Shorts videos no longer display their duration Mar 17, 2022
@litetex litetex mentioned this issue Mar 18, 2022
5 tasks
litetex added a commit to litetex/NewPipeExtractor that referenced this issue Mar 19, 2022
As a workaround 0 is returned as duration for such videos.
See also TeamNewPipe/NewPipe#8034
@AudricV AudricV mentioned this issue Mar 25, 2022
5 tasks
litetex added a commit to litetex/NewPipeExtractor that referenced this issue Mar 26, 2022
As a workaround 0 is returned as duration for such videos.
See also TeamNewPipe/NewPipe#8034
@opusforlife2 opusforlife2 changed the title [YouTube] Channel page - Shorts videos no longer display their duration [YouTube] ["Not loaded" error] Channel page - Shorts videos no longer display their duration Mar 27, 2022
@itsme24082004

This comment was marked as duplicate.

coletdjnz added a commit to yt-dlp/yt-dlp that referenced this issue Mar 28, 2022
@litetex
Copy link
Member

litetex commented Mar 28, 2022

Related (PR with solution in yt-dlp): yt-dlp/yt-dlp#3171

@Cuardatheior

This comment was marked as off-topic.

@Cuardatheior

This comment was marked as off-topic.

@Nantedong

This comment was marked as off-topic.

@Nantedong

This comment was marked as off-topic.

@Stypox Stypox unpinned this issue Apr 16, 2022
@fohfuu fohfuu mentioned this issue Apr 25, 2022
5 tasks
@opusforlife2 opusforlife2 changed the title [YouTube] ["Not loaded" error] Channel page - Shorts videos no longer display their duration [YouTube] Channel page - Shorts videos no longer display their duration May 5, 2022
@SameenAhnaf
Copy link
Collaborator

Closing as #9182 is merged

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Issue is related to a bug requires extractor change This issue requires a change to the extractor youtube Service, https://www.youtube.com/
Projects
None yet
Development

No branches or pull requests

9 participants