Jump to content

IOS app ass subtitle and HLS problem (hevc h.265 with subset fonts)


Efina

Recommended Posts

Sorry if this is addressed somewhere else in advance.

I was testing if I can play a mkv file with hevc x1, flac x2, ass x1, and ttf subset x5 (media info as below)

I want to ensure the video on my server can be directly played while showing ass effect with fonts properly on android, ios and PC platforms without encoding (hard-sub)

 

PC: web is not okay for ass effect, but the PC client I am using (not standard emby theater) is able to show correctly (directly play)

Android: app is not smooth enough (Exoplayer I assumed?), switched to VLC player, became smooth and ass display is correct (directly play)

IOS(both on iPad and iphone): container is not compatiable and HLS format is needed, HEVC is directly played, while flac needs to be transcoded to mp3 (while the same flac is directly played with AVC + Flac in mkv container), fonts of ass is not used and turned to be the default font. (not directly play)

 

I would like to know:

1. What is the compatiable container for IOS app? HLS format appeared even if the audio is aac in mkv container or flac in mp4 container with HEVC as video stream. Any way to get around this?

2. I think the emby app can support ass effect with fonts, but it turned out not the case in IOS. Is there any method to show embed fonts for ass subtitle on IOS platform? 

___________________________________________________________________________________________________________

It shows HVC1 in MPC-HC player

Video: HVC1 1920x1080 23.976fps [V: hevc rext L4.0, yuv444p10le, 1920x1080 [default]]
Audio: FLAC (framed) 48000Hz stereo 2304kbps [A: flac, 48000 Hz, stereo, s24 [default]]
Audio: FLAC (framed) 48000Hz stereo 2304kbps [A: コメンタリー (flac, 48000 Hz, stereo, s24)]
Subtitle: Advanced SubStation Alpha [S: 繁體 [cht] (ass) [default]]
Subtitle: UTF-8 [S: No subtitles]

___________________________________________________________________________________________________________

General
Unique ID : 156709209093414132247110442661145388684 (0x75E51888AB9ECBEF1F908B7C139AA68C)
Complete name : \\...xxxxx...S01.E02.[AI-Raws].mkv
Format : Matroska
Format version : Version 4
File size : 1.16 GiB
Duration : 23 min 41 s
Overall bit rate mode : Variable
Overall bit rate : 7 020 kb/s
Movie name : S01.E02.[AI-Raws]
Writing application : Lavf58.76.100
Writing library : Lavf58.76.100
ErrorDetectionType : Per level 1
Attachments : 仓耳今楷01 W05.146F4902.ttf / 方正粗圆_GBK.1C4025C1.ttf / 方正新楷体_GBK.3819E60D.ttf / 方正仿宋_GBK.E9AA63B2.TTF / 仓耳今楷01-27533 W03.1C19A3A6.ttf

Video
ID : 2
Format : HEVC
Format/Info : High Efficiency Video Coding
Format profile : Format Range@L4@High
Codec ID : V_MPEGH/ISO/HEVC
Duration : 23 min 41 s
Bit rate : 4 242 kb/s
Width : 1 920 pixels
Height : 1 080 pixels
Display aspect ratio : 16:9
Frame rate mode : Constant
Frame rate : 23.976 (24000/1001) FPS
Chroma subsampling : 4:4:4
Bit depth : 10 bits
Bits/(Pixel*Frame) : 0.085
Stream size : 719 MiB (60%)
Writing library : x265 2.9+8-27d8424c799d:[Windows][MSVC 1900][64 bit] 10bit
Encoding settings : cpuid=1111039 / frame-threads=4 / numa-pools=16 / wpp / no-pmode / no-pme / no-psnr / no-ssim / log-level=2 / input-csp=3 / input-res=1920x1080 / interlace=0 / total-frames=0 / level-idc=0 / high-tier=1 / uhd-bd=0 / ref=4 / no-allow-non-conformance / no-repeat-headers / annexb / no-aud / no-hrd / info / hash=0 / no-temporal-layers / open-gop / min-keyint=23 / keyint=250 / gop-lookahead=0 / bframes=4 / b-adapt=2 / b-pyramid / bframe-bias=0 / rc-lookahead=25 / lookahead-slices=4 / scenecut=40 / radl=0 / no-intra-refresh / ctu=64 / min-cu-size=8 / rect / no-amp / max-tu-size=32 / tu-inter-depth=1 / tu-intra-depth=1 / limit-tu=0 / rdoq-level=2 / dynamic-rd=0.00 / no-ssim-rd / signhide / no-tskip / nr-intra=0 / nr-inter=0 / no-constrained-intra / strong-intra-smoothing / max-merge=3 / limit-refs=3 / limit-modes / me=3 / subme=3 / merange=57 / temporal-mvp / weightp / no-weightb / no-analyze-src-pics / deblock=0:0 / sao / no-sao-non-deblock / rd=4 / no-early-skip / rskip / no-fast-intra / no-tskip-fast / no-cu-lossless / no-b-intra / no-splitrd-skip / rdpenalty=0 / psy-rd=2.00 / psy-rdoq=1.00 / no-rd-refine / no-lossless / cbqpoffs=6 / crqpoffs=6 / rc=crf / crf=14.5 / qcomp=0.60 / qpstep=4 / stats-write=0 / stats-read=0 / vbv-maxrate=25600 / vbv-bufsize=10240 / vbv-init=0.9 / crf-max=0.0 / crf-min=0.0 / ipratio=1.40 / pbratio=1.30 / aq-mode=1 / aq-strength=1.00 / cutree / zone-count=0 / no-strict-cbr / qg-size=32 / no-rc-grain / qpmax=31 / qpmin=0 / no-const-vbv / sar=0 / overscan=0 / videoformat=5 / range=0 / colorprim=1 / transfer=2 / colormatrix=2 / chromaloc=0 / display-window=0 / max-cll=0,0 / min-luma=0 / max-luma=1023 / log2-max-poc-lsb=8 / vui-timing-info / vui-hrd-info / slices=1 / no-opt-qp-pps / no-opt-ref-list-length-pps / no-multi-pass-opt-rps / scenecut-bias=0.05 / no-opt-cu-delta-qp / no-aq-motion / no-hdr / no-hdr-opt / no-dhdr10-opt / no-idr-recovery-sei / analysis-reuse-level=5 / scale-factor=0 / refine-intra=0 / refine-inter=0 / refine-mv=0 / no-limit-sao / ctu-info=0 / no-lowpass-dct / refine-mv-type=0 / copy-pic=1 / max-ausize-factor=1.0 / no-dynamic-refine / no-single-sei
Default : Yes
Forced : No
Color range : Limited
Color primaries : BT.709

Audio #1
ID : 3
Format : FLAC
Format/Info : Free Lossless Audio Codec
Codec ID : A_FLAC
Duration : 23 min 41 s
Bit rate mode : Variable
Bit rate : 1 474 kb/s
Channel(s) : 2 channels
Channel layout : L R
Sampling rate : 48.0 kHz
Frame rate : 11.719 FPS (4096 SPF)
Bit depth : 24 bits
Compression mode : Lossless
Stream size : 250 MiB (21%)
Default : Yes
Forced : No

Audio #2
ID : 4
Format : FLAC
Format/Info : Free Lossless Audio Codec
Codec ID : A_FLAC
Duration : 23 min 41 s
Bit rate mode : Variable
Bit rate : 1 296 kb/s
Channel(s) : 2 channels
Channel layout : L R
Sampling rate : 48.0 kHz
Frame rate : 11.719 FPS (4096 SPF)
Bit depth : 24 bits
Compression mode : Lossless
Stream size : 220 MiB (18%)
Title : コメンタリー
Default : No
Forced : No

Text
ID : 1
Format : ASS
Codec ID : S_TEXT/ASS
Codec ID/Info : Advanced Sub Station Alpha
Duration : 23 min 40 s
Compression mode : Lossless
Title : 繁體
Language : cht
Default : Yes
Forced : No

Menu
00:00:00.000 : :第 01 章
00:00:23.023 : :第 02 章
00:01:53.030 : :第 03 章
00:11:17.051 : :第 04 章
00:17:50.027 : :第 05 章
00:19:20.076 : :第 06 章
00:23:35.039 : :第 07 章

___________________________________________________________________________________________________________

Edited by Efina
Link to comment
Share on other sites

Hi, the emby iOS app supports a broad range of formats. Did you check the stats feature in the video player to learn why it was transcoding?

Link to comment
Share on other sites

17 minutes ago, Luke said:

Hi, the emby iOS app supports a broad range of formats. Did you check the stats feature in the video player to learn why it was transcoding?

Hi Luke do you mean the "stats for nerds"?

If it is stats for nerds:

For my hevc video, it is always repacked in HLS format due to not compatible container. It is regardless of the transcoding of audio as direct playback of aac in mkv with direct playback of hevc still casue the HLS format.

I don't even know the player name in iOS app, mpv .. exo??

Link to comment
Share on other sites

7 hours ago, Luke said:

 

Hi there, let's look at an example. Please attach the information requested in how to report a media playback issue. Thanks!

 

Here are some logs I found in my server,

 

The mkv file I was testing with hevc x1, flac x2, ass x1, and ttf subset x5 (link below)

https://vtcmca-my.sharepoint.com/:v:/g/personal/210072868_stu_vtc_edu_hk/Ec5uknyXIw5Diub-nyw11lABBuSP3yU5uhbmKDnpJxWxYQ?e=8IAKqX

 

I use App: Emby for iOS 2.2.3 iPad (6) playback logs as examples.

Logs:

embyserver-63796032000 (server log for 13-08-2022)

ffmpeg-remux-fbc1a8ba-f29f-4687-ba52-e63b044631e2_1 (for the playback of the mkv file above)

ffmpeg-remux-1abb050a-9dbf-436f-b64b-98b43dba9f36_1(for the playback of the file that I repacked into mp4 with only hevc and flac)

ffmpeg-directstream-ce8d5bf4-c79c-4c73-a4ee-908528f36621_1(for the playback of the file that I used aac as audio track)

 

Is there a way to prevent HLS remux from happening? And can I view the ass effect correctly on Emby for iOS 2.2.3 wth my iPad (6)?

embyserver-63796032000.txt ffmpeg-directstream-ce8d5bf4-c79c-4c73-a4ee-908528f36621_1(aac in mkv).txt ffmpeg-remux-1abb050a-9dbf-436f-b64b-98b43dba9f36_1(mp4 with hevc and flac).txt ffmpeg-remux-fbc1a8ba-f29f-4687-ba52-e63b044631e2_1 (for the file).txt

Edited by Efina
Link to comment
Share on other sites

To avoid the transcoding altogether, the guy hevc needs to be hvc1. Apple devices do not support hev1.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...