jellyfin / jellyfin-web

Web Client for Jellyfin
https://jellyfin.org
GNU General Public License v2.0
2.31k stars 1.23k forks source link

Arabic Subtitle ASS/SSA format are displayed as squares #2489

Closed bison529 closed 3 years ago

bison529 commented 3 years ago

Describe The Bug I face problem with External ASS/SSA style subtitle with special fonts, it's displayed as squares or default font in jellyfin.

Media Information http://URL/videos/e2923786-a006-eb87-2870-4ea40ce9e8d8/hls1/main/0.ts?DeviceId=TW96aWxsYS81LjAgKFdpbmRvd3MgTlQgMTAuMDsgV2luNjQ7IHg2NDsgcnY6ODYuMCkgR2Vja28vMjAxMDAxMDEgRmlyZWZveC84Ni4wfDE2MTUwNjA5OTUwMDc1&MediaSourceId=e2923786a006eb8728704ea40ce9e8d8&VideoCodec=h264&AudioCodec=mp3,aac&AudioStreamIndex=1&VideoBitrate=93141333&AudioBitrate=192000&PlaySessionId=bfa96ba34a8547639f06fb0918ec2af8&api_key=aee82a501e0347849d22a57c0e7589d3&TranscodingMaxAudioChannels=2&RequireAvc=false&Tag=a1111dcdba9a5364d6ee0f4189f35db6&SegmentContainer=ts&MinSegments=1&BreakOnNonKeyFrames=True&h264-profile=high,main,baseline,constrainedbaseline&h264-level=51&h264-deinterlace=true&TranscodeReasons=VideoCodecNotSupported

{"Protocol":"File","Id":"e2923786a006eb8728704ea40ce9e8d8","Path":"/mnt/unionfs/Anime Series/Yu☆Gi☆Oh! Sevens (2020)/Yu☆Gi☆Oh! Sevens - S01/Yu☆Gi☆Oh! Sevens - S01E01.mkv","Type":"Default","Container":"mkv,webm","Size":753662720,"Name":"Yu☆Gi☆Oh! Sevens - S01E01","IsRemote":false,"ETag":"a1111dcdba9a5364d6ee0f4189f35db6","RunTimeTicks":14400629760,"ReadAtNativeFramerate":false,"IgnoreDts":false,"IgnoreIndex":false,"GenPtsInput":false,"SupportsTranscoding":true,"SupportsDirectStream":true,"SupportsDirectPlay":true,"IsInfiniteStream":false,"RequiresOpening":false,"RequiresClosing":false,"RequiresLooping":false,"SupportsProbing":true,"VideoType":"VideoFile","MediaStreams":[{"Codec":"h264","ColorTransfer":"bt709","ColorPrimaries":"bt709","TimeBase":"1/1000","CodecTimeBase":"1001/60000","VideoRange":"SDR","DisplayTitle":"1080p H264","NalLengthSize":"0","IsInterlaced":false,"IsAVC":false,"BitRate":4186832,"BitDepth":8,"RefFrames":1,"IsDefault":true,"IsForced":false,"Height":1080,"Width":1920,"AverageFrameRate":29.97003,"RealFrameRate":29.97003,"Profile":"High","Type":"Video","AspectRatio":"16:9","Index":0,"IsExternal":false,"IsTextSubtitleStream":false,"SupportsExternalStream":false,"PixelFormat":"yuv420p","Level":40},{"Codec":"aac","Language":"jap","TimeBase":"1/1000","CodecTimeBase":"1/48000","DisplayTitle":"Jap AAC stereo Default","IsInterlaced":false,"ChannelLayout":"stereo","BitRate":192000,"Channels":2,"SampleRate":48000,"IsDefault":true,"IsForced":false,"Profile":"LC","Type":"Audio","Index":1,"IsExternal":false,"IsTextSubtitleStream":false,"SupportsExternalStream":false,"Level":0},{"Codec":"ass","Language":"eng","TimeBase":"1/1000","CodecTimeBase":"0/1","localizedUndefined":"Undefined","localizedDefault":"Default","localizedForced":"Forced","DisplayTitle":"Eng - Default","IsInterlaced":false,"IsDefault":true,"IsForced":false,"Type":"Subtitle","Index":2,"IsExternal":false,"IsTextSubtitleStream":true,"SupportsExternalStream":true,"Level":0},{"Codec":"ass","Language":"ara","localizedUndefined":"Undefined","localizedDefault":"Default","localizedForced":"Forced","DisplayTitle":"Ara","IsInterlaced":false,"IsDefault":false,"IsForced":false,"Type":"Subtitle","Index":3,"IsExternal":true,"IsTextSubtitleStream":true,"SupportsExternalStream":true,"Path":"/mnt/unionfs/Anime Series/Yu☆Gi☆Oh! Sevens (2020)/Yu☆Gi☆Oh! Sevens - S01/Yu☆Gi☆Oh! Sevens - S01E01.ar.ass"}],"MediaAttachments":[],"Formats":[],"Bitrate":4378832,"RequiredHttpHeaders":{}}

/usr/lib/jellyfin-ffmpeg/ffmpeg -fflags +genpts -f matroska,webm -i file:"/mnt/unionfs/Anime Series/Yu☆Gi☆Oh! Sevens (2020)/Yu☆Gi☆Oh! Sevens - S01/Yu☆Gi☆Oh! Sevens - S01E01.mkv" -map_metadata -1 -map_chapters -1 -threads 0 -map 0:0 -map 0:1 -map -0:s -codec:v:0 copy -vsync -1 -codec:a:0 copy -copyts -avoid_negative_ts disabled -f hls -max_delay 5000000 -hls_time 6 -individual_header_trailer 0 -hls_segment_type mpegts -start_number 0 -hls_segment_filename "/config/transcodes/8c735c024c37521e80c398b6dc7ab0a6%d.ts" -hls_playlist_type vod -hls_list_size 0 -y "/config/transcodes/8c735c024c37521e80c398b6dc7ab0a6.m3u8"

ffmpeg version 4.3.1 Copyright (c) 2000-2020 the FFmpeg developers built with gcc 8 (Debian 8.3.0-6) configuration: --prefix=/usr/lib/jellyfin-ffmpeg --target-os=linux --disable-doc --disable-ffplay --disable-shared --disable-libxcb --disable-sdl2 --disable-xlib --enable-gpl --enable-version3 --enable-static --enable-libfontconfig --enable-fontconfig --enable-gmp --enable-gnutls --enable-libass --enable-libbluray --enable-libdrm --enable-libfreetype --enable-libfribidi --enable-libmp3lame --enable-libopus --enable-libtheora --enable-libvorbis --enable-libwebp --enable-libx264 --enable-libx265 --enable-libzvbi --arch=amd64 --enable-libzimg --enable-opencl --enable-vaapi --enable-amf --enable-libmfx --enable-vdpau --enable-cuda --enable-cuda-llvm --enable-cuvid --enable-nvenc --enable-nvdec --enable-ffnvcodec --enable-libdav1d libavutil 56. 51.100 / 56. 51.100 libavcodec 58. 91.100 / 58. 91.100 libavformat 58. 45.100 / 58. 45.100 libavdevice 58. 10.100 / 58. 10.100 libavfilter 7. 85.100 / 7. 85.100 libswscale 5. 7.100 / 5. 7.100 libswresample 3. 7.100 / 3. 7.100 libpostproc 55. 7.100 / 55. 7.100 Input #0, matroska,webm, from 'file:/mnt/unionfs/Anime Series/Yu☆Gi☆Oh! Sevens (2020)/Yu☆Gi☆Oh! Sevens - S01/Yu☆Gi☆Oh! Sevens - S01E01.mkv': Metadata: ENCODER : Lavf58.42.100 Duration: 00:24:00.06, start: 0.000000, bitrate: 4186 kb/s Chapter #0:0: start 0.000000, end 45.045000 Metadata: title : Intro Chapter #0:1: start 45.045000, end 135.002000 Metadata: title : OP Chapter #0:2: start 135.002000, end 531.998000 Metadata: title : Part A Chapter #0:3: start 531.998000, end 1319.985000 Metadata: title : Part B Chapter #0:4: start 1319.985000, end 1410.009000 Metadata: title : ED Chapter #0:5: start 1410.009000, end 1432.064000 Metadata: title : Monster corner Chapter #0:6: start 1432.064000, end 1439.939000 Metadata: title : Preview Stream #0:0: Video: h264 (High), yuv420p(tv, bt709, progressive), 1920x1080 [SAR 1:1 DAR 16:9], 29.97 fps, 29.97 tbr, 1k tbn, 59.94 tbc (default) Metadata: BPS-eng : 3990317 DURATION-eng : 00:23:59.972000000 NUMBER_OF_FRAMES-eng: 43156 NUMBER_OF_BYTES-eng: 718243143 _STATISTICS_WRITING_APP-eng: mkvmerge v45.0.0 ('Heaven in Pennies') 64-bit _STATISTICS_WRITING_DATE_UTC-eng: 2020-04-08 04:01:11 _STATISTICS_TAGS-eng: BPS DURATION NUMBER_OF_FRAMES NUMBER_OF_BYTES DURATION : 00:23:59.972000000 Stream #0:1(jap): Audio: aac (LC), 48000 Hz, stereo, fltp (default) Metadata: _STATISTICS_TAGS-eng: BPS DURATION NUMBER_OF_FRAMES NUMBER_OF_BYTES BPS-eng : 191810 DURATION-eng : 00:24:00.064000000 NUMBER_OF_FRAMES-eng: 67503 NUMBER_OF_BYTES-eng: 34527384 _STATISTICS_WRITING_APP-eng: mkvmerge v45.0.0 ('Heaven in Pennies') 64-bit _STATISTICS_WRITING_DATE_UTC-eng: 2020-04-08 04:01:11 DURATION : 00:24:00.063000000 Stream #0:2(eng): Subtitle: ass (default) Metadata: ENCODER : Lavc58.77.101 ssa DURATION : 00:23:59.990000000 Output #0, hls, to '/config/transcodes/8c735c024c37521e80c398b6dc7ab0a6.m3u8': Metadata: encoder : Lavf58.45.100 Stream #0:0: Video: h264 (High), yuv420p(tv, bt709, progressive), 1920x1080 [SAR 1:1 DAR 16:9], q=2-31, 29.97 fps, 29.97 tbr, 90k tbn, 29.97 tbc (default) Stream #0:1: Audio: aac (LC), 48000 Hz, stereo, fltp (default) Stream mapping: Stream #0:0 -> #0:0 (copy) Stream #0:1 -> #0:1 (copy)

Screenshots 2021-03-07_14-36-42

System (please complete the following information):

Additional Context if you can help me with tell me where can find fonts path in Jellyfin, like PLEX i found fonts path in /usr/lib/plexmediaserver/Resources/Fonts

nyanmisaka commented 3 years ago

You can give it a try on 10.7-RC4, where you can set custom fonts for SSA/ASS subtitles in playback settings.