mirror of
https://github.com/jellyfin/jellyfin.git
synced 2026-04-22 01:54:42 +01:00
Support subtitle offset
This commit is contained in:
@@ -7,7 +7,6 @@ using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Runtime.Serialization;
|
||||
using System.Threading;
|
||||
|
||||
namespace MediaBrowser.Controller.Entities.Audio
|
||||
{
|
||||
@@ -15,7 +14,6 @@ namespace MediaBrowser.Controller.Entities.Audio
|
||||
/// Class Audio
|
||||
/// </summary>
|
||||
public class Audio : BaseItem,
|
||||
IHasMediaStreams,
|
||||
IHasAlbumArtist,
|
||||
IHasArtist,
|
||||
IHasMusicGenres,
|
||||
|
||||
@@ -1,10 +0,0 @@
|
||||
|
||||
namespace MediaBrowser.Controller.Entities
|
||||
{
|
||||
/// <summary>
|
||||
/// This is essentially a marker interface
|
||||
/// </summary>
|
||||
public interface IHasMediaStreams
|
||||
{
|
||||
}
|
||||
}
|
||||
@@ -20,7 +20,6 @@ namespace MediaBrowser.Controller.Entities
|
||||
/// Class Video
|
||||
/// </summary>
|
||||
public class Video : BaseItem,
|
||||
IHasMediaStreams,
|
||||
IHasAspectRatio,
|
||||
IHasTags,
|
||||
ISupportsPlaceHolders,
|
||||
|
||||
@@ -6,7 +6,7 @@ using System.Threading.Tasks;
|
||||
|
||||
namespace MediaBrowser.Controller.LiveTv
|
||||
{
|
||||
public interface ILiveTvRecording : IHasImages, IHasMediaStreams
|
||||
public interface ILiveTvRecording : IHasImages, IHasMediaSources
|
||||
{
|
||||
string ServiceName { get; set; }
|
||||
|
||||
|
||||
@@ -128,7 +128,6 @@
|
||||
<Compile Include="Entities\IHasImages.cs" />
|
||||
<Compile Include="Entities\IHasKeywords.cs" />
|
||||
<Compile Include="Entities\IHasMediaSources.cs" />
|
||||
<Compile Include="Entities\IHasMediaStreams.cs" />
|
||||
<Compile Include="Entities\IHasMetascore.cs" />
|
||||
<Compile Include="Entities\IHasPreferredMetadataLanguage.cs" />
|
||||
<Compile Include="Entities\IHasProductionLocations.cs" />
|
||||
|
||||
@@ -41,26 +41,6 @@ namespace MediaBrowser.Controller.MediaEncoding
|
||||
/// <param name="cancellationToken">The cancellation token.</param>
|
||||
/// <returns>Task{Stream}.</returns>
|
||||
Task<Stream> ExtractVideoImage(string[] inputFiles, InputType type, Video3DFormat? threedFormat, TimeSpan? offset, CancellationToken cancellationToken);
|
||||
|
||||
/// <summary>
|
||||
/// Extracts the text subtitle.
|
||||
/// </summary>
|
||||
/// <param name="inputFiles">The input files.</param>
|
||||
/// <param name="type">The type.</param>
|
||||
/// <param name="subtitleStreamIndex">Index of the subtitle stream.</param>
|
||||
/// <param name="copySubtitleStream">if set to true, copy stream instead of converting.</param>
|
||||
/// <param name="outputPath">The output path.</param>
|
||||
/// <param name="cancellationToken">The cancellation token.</param>
|
||||
/// <returns>Task.</returns>
|
||||
Task ExtractTextSubtitle(string[] inputFiles, InputType type, int subtitleStreamIndex, bool copySubtitleStream, string outputPath, CancellationToken cancellationToken);
|
||||
|
||||
/// <summary>
|
||||
/// Gets the subtitle language encoding parameter.
|
||||
/// </summary>
|
||||
/// <param name="path">The path.</param>
|
||||
/// <param name="language">The language.</param>
|
||||
/// <returns>System.String.</returns>
|
||||
string GetSubtitleLanguageEncodingParam(string path, string language);
|
||||
|
||||
/// <summary>
|
||||
/// Gets the media info.
|
||||
|
||||
@@ -6,16 +6,46 @@ namespace MediaBrowser.Controller.MediaEncoding
|
||||
{
|
||||
public interface ISubtitleEncoder
|
||||
{
|
||||
/// <summary>
|
||||
/// Converts the subtitles.
|
||||
/// </summary>
|
||||
/// <param name="stream">The stream.</param>
|
||||
/// <param name="inputFormat">The input format.</param>
|
||||
/// <param name="outputFormat">The output format.</param>
|
||||
/// <param name="startTimeTicks">The start time ticks.</param>
|
||||
/// <param name="cancellationToken">The cancellation token.</param>
|
||||
/// <returns>Task{Stream}.</returns>
|
||||
Task<Stream> ConvertSubtitles(
|
||||
Stream stream,
|
||||
string inputFormat,
|
||||
Stream stream,
|
||||
string inputFormat,
|
||||
string outputFormat,
|
||||
long startTimeTicks,
|
||||
CancellationToken cancellationToken);
|
||||
|
||||
Task<Stream> GetSubtitles(string itemId,
|
||||
/// <summary>
|
||||
/// Gets the subtitles.
|
||||
/// </summary>
|
||||
/// <param name="itemId">The item identifier.</param>
|
||||
/// <param name="mediaSourceId">The media source identifier.</param>
|
||||
/// <param name="subtitleStreamIndex">Index of the subtitle stream.</param>
|
||||
/// <param name="outputFormat">The output format.</param>
|
||||
/// <param name="startTimeTicks">The start time ticks.</param>
|
||||
/// <param name="cancellationToken">The cancellation token.</param>
|
||||
/// <returns>Task{Stream}.</returns>
|
||||
Task<Stream> GetSubtitles(string itemId,
|
||||
string mediaSourceId,
|
||||
int subtitleStreamIndex,
|
||||
string outputFormat,
|
||||
long startTimeTicks,
|
||||
CancellationToken cancellationToken);
|
||||
|
||||
/// <summary>
|
||||
/// Gets the subtitle language encoding parameter.
|
||||
/// </summary>
|
||||
/// <param name="path">The path.</param>
|
||||
/// <param name="language">The language.</param>
|
||||
/// <returns>System.String.</returns>
|
||||
string GetSubtitleFileCharacterSet(string path, string language);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user