RenderHeads / UnityPlugin-AVProVideo

AVPro Video is a multi-platform Unity plugin for advanced video playback
https://www.renderheads.com/products/avpro-video/
236 stars 28 forks source link

If you play the video for a long time, the video stops. #1061

Closed SecretTonto closed 2 years ago

SecretTonto commented 2 years ago

Describe the issue If you do Live Streaming for a long time, you will stop. (Play it for more than 30 minutes.)

I thought it would be solved as #1010 was modified, but the problem is still coming up.

Also, if this issue occurs, error events are not being called in AVProVideo.

And the position event is called, but only the same location continues to be called. (ex:position - 89815) Looking at this, AVPRO's thread doesn't seem to have stopped. How can I solve this problem?

Unity version: 2019.4.15f1 AVPro Video version (number and edition (core): 2.3.1 Operating system version: Android OS 10, 11 Device model: Galaxy Z Fold3 5G_SM-F926N (11.0.0)_5G / Galaxy S21 5G_SM-G991N (12.0.0)_5G Video specs (resolution, frame-rate, codec, file size): 1080P, 7.5mbps

Logs 2022-01-05 10:58:35.323 6351-6351/? D/io_stats: !@ 8,0 r 229911 12644784 w 347068 20415060 d 38482 412847048 f 57825 59506 iot 335808 254357 th 102400 0 0 pt 0 inp 0 0 70382.327 2022-01-05 10:58:35.350 5449-5713/? D/NetworkController.MobileSignalController(0/2): onSignalStrengthsChanged signalStrength=SignalStrength:{mCdma=Invalid,mGsm=Invalid,mWcdma=CellSignalStrengthWcdma: ss=-61 ber=99 rscp=-58 ecno=0 level=4,mTdscdma=Invalid,mLte=Invalid,mNr=Invalid,SignalBarInfo{ wcdmaLevel=4 },P,rat=3,primary=CellSignalStrengthWcdma} level=4 2022-01-05 10:58:35.351 5449-5713/? D/NetworkController.MobileSignalController(0/2): getMobileIconGroup(): 0 2022-01-05 10:58:35.794 4795-4795/? E/audit: type=1400 audit(1641347915.787:39216): avc: denied { search } for pid=23605 comm="GENP.0" name="thermal" dev="sysfs" ino=25475 scontext=u:r:untrusted_app:s0:c117,c258,c512,c768 tcontext=u:object_r:sysfs_thermal:s0 tclass=dir permissive=0 SEPF_SM-N960N_10_0020 audit_filtered 2022-01-05 10:58:35.797 4795-4795/? I/chatty: uid=5555(vendor_audit) /system/bin/auditd identical 3 lines 2022-01-05 10:58:35.797 4795-4795/? E/audit: type=1400 audit(1641347915.791:39220): avc: denied { search } for pid=23605 comm="GENP.0" name="thermal" dev="sysfs" ino=25475 scontext=u:r:untrusted_app:s0:c117,c258,c512,c768 tcontext=u:object_r:sysfs_thermal:s0 tclass=dir permissive=0 SEPF_SM-N960N_10_0020 audit_filtered 2022-01-05 10:58:36.073 23605-23994/com.skt.treal.jumpvrm E/ExoPlayerImplInternal: Playback error com.google.android.exoplr2avp.ExoPlaybackException: Source error at com.google.android.exoplr2avp.ExoPlayerImplInternal.handleIoException(ExoPlayerImplInternal.java:628) at com.google.android.exoplr2avp.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:604) at android.os.Handler.dispatchMessage(Handler.java:103) at android.os.Looper.loop(Looper.java:237) at android.os.HandlerThread.run(HandlerThread.java:67) Caused by: com.google.android.exoplr2avp.source.hls.playlist.HlsPlaylistTracker$PlaylistStuckException at com.google.android.exoplr2avp.source.hls.playlist.DefaultHlsPlaylistTracker$MediaPlaylistBundle.processLoadedPlaylist(DefaultHlsPlaylistTracker.java:732) at com.google.android.exoplr2avp.source.hls.playlist.DefaultHlsPlaylistTracker$MediaPlaylistBundle.onLoadCompleted(DefaultHlsPlaylistTracker.java:577) at com.google.android.exoplr2avp.source.hls.playlist.DefaultHlsPlaylistTracker$MediaPlaylistBundle.onLoadCompleted(DefaultHlsPlaylistTracker.java:505) at com.google.android.exoplr2avp.upstream.Loader$LoadTask.handleMessage(Loader.java:475) at android.os.Handler.dispatchMessage(Handler.java:107) at android.os.Looper.loop(Looper.java:237)  at android.os.HandlerThread.run(HandlerThread.java:67)  2022-01-05 10:58:36.073 23605-26207/com.skt.treal.jumpvrm I/ACodec: [OMX.Exynos.avc.dec] signalFlush 2022-01-05 10:58:36.073 23605-26208/com.skt.treal.jumpvrm I/ACodec: [OMX.Exynos.avc.dec] ExecutingState flushing now (codec owns 0/5 input, 11/16 output). 2022-01-05 10:58:36.074 23605-26208/com.skt.treal.jumpvrm I/ACodec: [OMX.Exynos.avc.dec] Now Flushing 2022-01-05 10:58:36.075 4854-26214/? W/libexynosv4l2: failed to ioctl: VIDIOC_DQBUF (22 - Invalid argument) 2022-01-05 10:58:36.075 4854-26209/? I/EXYNOS_BASE_PORT: [0xee177e00][Exynos_OMX_BufferFlushProcess] OMX_EventCmdComplete(Flush/input port) 2022-01-05 10:58:36.076 23605-26208/com.skt.treal.jumpvrm I/ACodec: [OMX.Exynos.avc.dec] FlushingState onOMXEvent(0,1,0) 2022-01-05 10:58:36.077 4854-26213/? W/libexynosv4l2: failed to ioctl: VIDIOC_DQBUF (22 - Invalid argument) 2022-01-05 10:58:36.081 4854-26209/? I/EXYNOS_BASE_PORT: [0xee177e00][Exynos_OMX_BufferFlushProcess] OMX_EventCmdComplete(Flush/output port) 2022-01-05 10:58:36.081 23605-26208/com.skt.treal.jumpvrm I/ACodec: [OMX.Exynos.avc.dec] FlushingState onOMXEvent(0,1,1) 2022-01-05 10:58:36.081 23605-26208/com.skt.treal.jumpvrm I/ACodec: [OMX.Exynos.avc.dec] Now Executing 2022-01-05 10:58:36.084 23605-26218/com.skt.treal.jumpvrm I/CCodec: flush(), timeUs 0, frameindex 0 2022-01-05 10:58:36.084 23605-26218/com.skt.treal.jumpvrm I/CCodec: flush(), timeUs 0, frameindex 0

Videos https://cph-p2p-msl.akamaized.net/hls/live/2000341/test/master.m3u8

kahnivore commented 2 years ago

Struggling to reproduce this. Streamed provided url for an hour on Redmi Note 9T, using AVPro Video Core 2.3.1.

Does this always stop after the same period of time for you?

Do you perhaps have another device to test on?

SecretTonto commented 2 years ago

@kahnivore

  1. High frequency of reproduction if left unattended for more than 30 minutes. (Various occurrences such as within 5 minutes, more than 30 minutes, and more than 1 hour and 30 minutes)

  2. Test device. Samsung galaxy Flip, Samsung galaxy Fold2, Samsung galaxy S8, Samsung galaxy S9, Samsung galaxy note9, Samsung galaxy note10, LG-V50S ThinQ, Samsung galaxy A42, Samsung galaxy A72, LG-Velvet, pixel4 In particular, it occurs frequently in A42, LG-Velvet, Pixel 4, Note 9, and S8.

  3. Reproduction rate. 60%

  4. It often occurs in self-streaming videos, and if you tell me the period of time to test, I will maintain the streaming video during that period.

kahnivore commented 2 years ago

@SecretTonto would you be able to stream it today? Will be able to test in about an hour from now

SecretTonto commented 2 years ago

@kahnivore You can use this. https://mediapoccdndev2-standard-ms-ams.azureedge.net/1a338594-731d-4114-ae6d-63151a8838b8/98eeffc4-725f.ism/manifest(audio-only=false,format=m3u8-aapl-v3).m3u8

SecretTonto commented 2 years ago

@kahnivore This is a URL that occurs more often. But I don't know when this will be cut off, not by me. I think it would be good to check this, too. https://mediapoccdndev2-standard-ms-ams.azureedge.net/1dcd68c4-c2f7-4b82-b2d4-54d2d241acc1/9b3ae542-89cb.ism/manifest(audio-only=false,format=m3u8-aapl-v3).m3u8

kahnivore commented 2 years ago

Thanks, sorry for the delay, will test the second link now

SecretTonto commented 2 years ago

OK

kahnivore commented 2 years ago

Second link results in an error - will try previous

SecretTonto commented 2 years ago

The second link seems to have ended by the streamer. Can you try this?

https://mediapoccdndev2-standard-ms-ams.azureedge.net/7edf0fa8-5f52-4123-b613-1b7693a4afa5/47ba4bb3-89a0.ism/manifest(audio-only=false,format=m3u8-aapl-v3).m3u8

kahnivore commented 2 years ago

Doesn't seem to be live/has ended, stops after a minute or two

SecretTonto commented 2 years ago

Yes, I checked and found that the video just stops in the middle.

This link is maintained by me, so please use this.

https://mediapoccdndev2-standard-ms-ams.azureedge.net/1a338594-731d-4114-ae6d-63151a8838b8/98eeffc4-725f.ism/manifest(audio-only=false,format=m3u8-aapl-v3).m3u8

kahnivore commented 2 years ago

Will leave it running for a while. Just wanted to check - are you sure that the other times when it stops that it hasn't just stopped because the stream has ended?

SecretTonto commented 2 years ago

I'll keep it until you get off work. Thanks

kahnivore commented 2 years ago

Sure, I meant are you sure that the cases you've logged of the video stopping weren't caused by the stream ending?

My current test has been running smoothly for 90 min.

SecretTonto commented 2 years ago

I can be sure. This is because I was maintaining streaming, and when I played with a pod player with that link, it was playing, and it stopped at only one or two of the several terminals.

SecretTonto commented 2 years ago

We will test it again next Monday and provide you with a video and full log if the phenomenon occurs.

kahnivore commented 2 years ago

Cool, left it running for 2.5 hours without any issues. Will wait to hear more from you.

SecretTonto commented 2 years ago

@kahnivore This week, I was very busy preparing for the app release, so I couldn't proceed with the test.

We will conduct a test next week so that we can share the reproduction video and full log.

stale[bot] commented 2 years ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

stale[bot] commented 2 years ago

This issue has been automatically closed because it has not had recent activity. If you wish to continue this issue, then please create a new issue as we do not monitor closed issues.

stale[bot] commented 2 years ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

SecretTonto commented 2 years ago

Does this issue not follow up any more?

stale[bot] commented 2 years ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

kahnivore commented 2 years ago

@SecretTonto we are still waiting on the logs/build from you. There is not much more we can do if we do not have more information as we couldn't reproduce this.

SecretTonto commented 2 years ago

@kahnivore I attached the log and reproduction video here, but I will attach it again in the comments.

Logs https://drive.google.com/file/d/1zziDYGZob2HY-pU5LSseucT1zW3d8sNr/view?usp=sharing

Videos https://drive.google.com/file/d/1bwGPiGsgjMz-Sp8Tpp2qGpRXkRZ9jHgv/view?usp=sharing

We will make the build file from AVPro sample and check if it is reproduced and share it again.

kahnivore commented 2 years ago

Thanks for the logs. We suspect this might be an Exoplayer bug, so we'll need to update to the latest version and see if that fixes it for you.

Should happen in the next couple of weeks.

SecretTonto commented 2 years ago

@kahnivore Thank you. I will check it again when it is updated.

Ste-RH commented 2 years ago

@SecretTonto we have published a new build with the fix in. Please do let us know if this addresses the issue.

SecretTonto commented 2 years ago

@RenderHeadsSte I'll check and let you know.

SecretTonto commented 2 years ago

@Ste-RH I checked with AVPro Video 2.5.0 (Monday to Wednesday), and there was no problem.

However, this problem is rare, so if there is an issue related to it later, I will ask you again then.

Thank you.

kahnivore commented 2 years ago

Thanks for the update. I'm going to close this for now, but if the issue does persist please feel free to reopen.