Closed dyeray closed 2 months ago
Thanks for reporting. The video part of the app has been left alone for quite long. Will update shortly.
Wasn't able to reproduce the crash.
Me neither now... I was reproducing it consistently at some point. Should have recorded a video. If I'm able to reproduce it again, I'll record the exact steps.
Update: I got it, let me edit the video a bit and upload it.
See how at some point when the app crashed, when opening it again, the video would start playing automatically, or at the end, when stopping the recording, the notification itself started the play of the video again.
6.5.0 should have fixed the crash bug and also improved on behavior of video mode toggling. Other suggestions will be implemented shortly.
6.5.1 has more enhancement based on your suggestions.
Thanks a lot! I've done a quick test of 6.5.1 and seems much better. I've found a small bug though. It seems video in fullscreen is now played in a small window instead of taking the whole screen. I think it is the same size as the video when it is not in full screen. I think ideally it should take most of available screen while keeping aspect ratio and showing full video (meaning using black bands on top/bottom or left/right when aspect ratio does not match screen).
The old video player has quite some problems on sizing the video. Refined it in 6.5.5.
close this for now. feel free to reopen
Checklist
App version
6.3.7
Where did you get the app from
F-Droid
Android version
Android 14 (GrapheneOS)
Device model
No response
First occurred
No response
Steps to reproduce
Not sure how the issue happened. Just navigating the menus while playing a video triggered an exception (see logs below). I think it happens pressing play, then going back to the podcast list, then play again, then back 2 or 3 times and the app will crash.
I'd like to also report some quality of life issues with video playback.
When a video podcast is played, the detailed view is opened. If the user gets out of this detailed view, the podcast is paused. If the user turns on full screen mode, the video is paused. If the user gets out of full screen mode, the video is paused. I don't know if there are more cases where this happens. In my mind, playback should not be paused, except when the user pushes pause explicitly. I think the main feature of a podcast app is listening. Having video is nice (and I'm a heavy user of video podcasts), but when moving away I think playback should continue on. I think in fact, the only way to listen to video is switching to full screen and then pushing the musical note icon while in full screen (audio only button). Note if in this state, the user goes back to full screen mode, the video will pause, but the state of the controls will suppose the video is playing, so the pause button will show on screen and the user will need to touch to play/pause twice so the status of play/pause syncs with the real pause/play status of the video.
Expected behaviour
No response
Current behaviour
No response
Logs
type: crash osVersion: google/bluejay/bluejay:14/AP2A.240805.005.F1/2024080600:user/release-keys package: ac.mdiq.podcini.R:3020231 process: ac.mdiq.podcini.R processUptime: 16066 + 431 ms installer: com.android.packageinstaller
java.lang.IllegalStateException: Fragment VideoEpisodeFragment{118df93} (4e4e666a-c3c9-4605-acd1-eb0c5c468770) not attached to a context. at androidx.fragment.app.Fragment.requireContext(SourceFile:977) at ac.mdiq.podcini.ui.fragment.VideoEpisodeFragment.hideVideoControls(SourceFile:467) at ac.mdiq.podcini.ui.fragment.VideoEpisodeFragment.hideVideoControls$lambda$11(SourceFile:446) at ac.mdiq.podcini.ui.fragment.VideoEpisodeFragment.$r8$lambda$DfwEYLuIyKNQBB1yPfpYcPsZplc(SourceFile:0) at ac.mdiq.podcini.ui.fragment.VideoEpisodeFragment$$ExternalSyntheticLambda1.run(SourceFile:0) at android.os.Handler.handleCallback(Handler.java:959) at android.os.Handler.dispatchMessage(Handler.java:100) at android.os.Looper.loopOnce(Looper.java:232) at android.os.Looper.loop(Looper.java:317) at android.app.ActivityThread.main(ActivityThread.java:8623) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:580) at com.android.internal.os.ExecInit.main(ExecInit.java:50) at com.android.internal.os.RuntimeInit.nativeFinishInit(Native Method) at com.android.internal.os.RuntimeInit.main(RuntimeInit.java:369)