jellyfin / jellyfin-expo

Jellyfin Mobile for iOS
https://jellyfin.org
Mozilla Public License 2.0
292 stars 63 forks source link

H264-High video jittering #411

Open joemej opened 1 year ago

joemej commented 1 year ago

Describe the bug

**System (please complete the following information):** - iOS Version: ios 14.6; PadOS13.3; Pad OS 16.2 - Jellyfin Expo version: 1.5.0 - Jellyfin Server version: 10.8.0/10.8.6/10.8.8 When some Web-client or iOS client were playing the h.264-high format video decoded by JellyFin-Server, the picture was severely jittering and there was frame dropping. 1、When the bug happened, the client's player was the html video player. At present, when testing Windows 10 computer client, the edge/chrome browser playing the video will appear jittering (closing/opening the hard decode is useless), while the firefox browser with built-in h.264 decoder will not appear jittering. If Windows uses Jellyfin client, the player will change to MPV Video Player, and no jittering will occur, guessing it is the problem of html video player. 2、In iOS/PadOS, Jellyfin client also jitters when playing some H264-high format videos, while SwiftFin does not jitter. In addition, the same video was tested in other html video players, such as Emby-Server server, Emby client, or Synology's DS-File built-in player, some videos do not jitter when playing, but jitter when playing in JellyFin client. 3、The video causing the bug, no matter the playback mode is soft decode or any mode of CPU hard decode, as long as the client is html video player and the playback mode is direct playback, it will jitter, and after reducing the resolution or limiting the bit rate for forced transcoding, it will no longer jitter. Guessing: 1、Jittering when playing H264-high format video is caused by html video player. 2、The version of html video player used by Jellyfin client is too old or there are compatibility issues? 3、Maybe the player used by SwiftFin is different from JellyFin, but JellyFin Client has more function than SwiftFin. (xd) The following are screenshots of tests on edge web client, firefox web client, windows JellyFin client and PadOS client. ![1111](https://user-images.githubusercontent.com/19995793/210071677-531365cb-1cf7-42a7-97a7-88c80b4ae377.png) ![2222](https://user-images.githubusercontent.com/19995793/210071685-be1dd542-2eae-4ff4-87b6-35f176ef1c6d.png) ![3333](https://user-images.githubusercontent.com/19995793/210071657-24a8a670-ec54-456d-a2a1-5e4039092ee9.png) ![4444](https://user-images.githubusercontent.com/19995793/210071710-7415fb63-a2f7-4ee8-8865-fdea45726c4a.png)