Infuse 8.5 播放 emby 视频转码因为烧录字幕导致超时,转码失败

infuse 问题反馈 Code:GR7VF
同一个视频,同一个清晰度,同一个字幕,emby官方客户端可以转码成功,infuse 会失败。查看 emby server日志发现以下差异:

Infuse:

VideoCodec=hevc,h264,av1
AudioCodec=aac
VideoBitrate=3808002
AudioBitrate=192000
AudioStreamIndex=1
SubtitleStreamIndex=2
SubtitleMethod=Encode
TranscodingMaxAudioChannels=2
SegmentContainer=ts
MinSegments=1
BreakOnNonKeyFrames=True
TranscodeReasons=SubtitleCodecNotSupported

emby客户端:

VideoBitrate=3808002
AudioBitrate=192000
MaxWidth=1920
SubtitleStreamIndex=2
SubtitleMethod=Hls
SubtitleStreamIndexes=2,3,7
ManifestSubtitles=vtt
FillEmptySubtitleSegments=true
TranscodeReasons=ContainerBitrateExceedsLimit

看日志原因是:Infuse 8.5 在 Emby 转码时把内嵌 SRT 字幕声明为不支持,要求 Emby 将字幕烧录进视频;烧录路径的 libass/字体初始化超过 Emby 约 15 秒的首分片等待时间,Emby 主动杀掉 FFmpeg,最终向 Infuse 返回 HTTP 500。

官方客户端在完全相同的 4 Mbps 限制和同一字幕下,使用 HLS/WebVTT 独立字幕,不烧录,首个视频分片约 2.46 秒就返回成功。

即使在 infuse 播放设置里将字幕设置为“无”,仍把默认 SRT 字幕 Index 2 作为 Encode 提交给 Emby;Emby因此继续走 libass 烧录路径,首分片超过约 15 秒,最终被服务器终止。

我们会调查此事。感谢您的反馈。