mirror of
https://github.com/jellyfin/jellyfin.git
synced 2025-07-09 03:04:24 -04:00
Merge pull request #12627 from oxixes/burn-subtitle-cache
This commit is contained in:
commit
e6ceab46a4
@ -189,6 +189,8 @@
|
|||||||
- [TheMelmacian](https://github.com/TheMelmacian)
|
- [TheMelmacian](https://github.com/TheMelmacian)
|
||||||
- [ItsAllAboutTheCode](https://github.com/ItsAllAboutTheCode)
|
- [ItsAllAboutTheCode](https://github.com/ItsAllAboutTheCode)
|
||||||
- [pret0rian8](https://github.com/pret0rian)
|
- [pret0rian8](https://github.com/pret0rian)
|
||||||
|
- [jaina heartles](https://github.com/heartles)
|
||||||
|
- [oxixes](https://github.com/oxixes)
|
||||||
|
|
||||||
# Emby Contributors
|
# Emby Contributors
|
||||||
|
|
||||||
|
@ -1652,13 +1652,15 @@ namespace MediaBrowser.Controller.MediaEncoding
|
|||||||
setPtsParam);
|
setPtsParam);
|
||||||
}
|
}
|
||||||
|
|
||||||
var mediaPath = state.MediaPath ?? string.Empty;
|
var subtitlePath = _subtitleEncoder.GetSubtitleFilePath(
|
||||||
|
state.SubtitleStream,
|
||||||
|
state.MediaSource,
|
||||||
|
CancellationToken.None).GetAwaiter().GetResult();
|
||||||
|
|
||||||
return string.Format(
|
return string.Format(
|
||||||
CultureInfo.InvariantCulture,
|
CultureInfo.InvariantCulture,
|
||||||
"subtitles=f='{0}':si={1}{2}{3}{4}{5}",
|
"subtitles=f='{0}'{1}{2}{3}{4}",
|
||||||
_mediaEncoder.EscapeSubtitleFilterPath(mediaPath),
|
_mediaEncoder.EscapeSubtitleFilterPath(subtitlePath),
|
||||||
state.InternalSubtitleStreamOffset.ToString(CultureInfo.InvariantCulture),
|
|
||||||
alphaParam,
|
alphaParam,
|
||||||
sub2videoParam,
|
sub2videoParam,
|
||||||
fontParam,
|
fontParam,
|
||||||
|
@ -44,5 +44,14 @@ namespace MediaBrowser.Controller.MediaEncoding
|
|||||||
/// <param name="cancellationToken">The cancellation token.</param>
|
/// <param name="cancellationToken">The cancellation token.</param>
|
||||||
/// <returns>System.String.</returns>
|
/// <returns>System.String.</returns>
|
||||||
Task<string> GetSubtitleFileCharacterSet(MediaStream subtitleStream, string language, MediaSourceInfo mediaSource, CancellationToken cancellationToken);
|
Task<string> GetSubtitleFileCharacterSet(MediaStream subtitleStream, string language, MediaSourceInfo mediaSource, CancellationToken cancellationToken);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Gets the path to a subtitle file.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="subtitleStream">The subtitle stream.</param>
|
||||||
|
/// <param name="mediaSource">The media source.</param>
|
||||||
|
/// <param name="cancellationToken">The cancellation token.</param>
|
||||||
|
/// <returns>System.String.</returns>
|
||||||
|
Task<string> GetSubtitleFilePath(MediaStream subtitleStream, MediaSourceInfo mediaSource, CancellationToken cancellationToken);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -902,6 +902,13 @@ namespace MediaBrowser.MediaEncoding.Subtitles
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public async Task<string> GetSubtitleFilePath(MediaStream subtitleStream, MediaSourceInfo mediaSource, CancellationToken cancellationToken)
|
||||||
|
{
|
||||||
|
var info = await GetReadableFile(mediaSource, subtitleStream, cancellationToken)
|
||||||
|
.ConfigureAwait(false);
|
||||||
|
return info.Path;
|
||||||
|
}
|
||||||
|
|
||||||
/// <inheritdoc />
|
/// <inheritdoc />
|
||||||
public void Dispose()
|
public void Dispose()
|
||||||
{
|
{
|
||||||
|
Loading…
x
Reference in New Issue
Block a user