2020-02-06 15:20:23 +01:00
|
|
|
#pragma warning disable CS1591
|
|
|
|
|
2019-01-13 20:54:44 +01:00
|
|
|
using System;
|
2016-02-12 08:01:38 +01:00
|
|
|
using System.Threading;
|
|
|
|
using System.Threading.Tasks;
|
2017-05-15 21:45:39 +02:00
|
|
|
using MediaBrowser.Controller.Library;
|
2016-02-12 08:01:38 +01:00
|
|
|
using MediaBrowser.Model.Dto;
|
|
|
|
|
2016-11-04 00:35:19 +01:00
|
|
|
namespace Emby.Server.Implementations.LiveTv.EmbyTV
|
2016-02-12 08:01:38 +01:00
|
|
|
{
|
|
|
|
public interface IRecorder
|
|
|
|
{
|
2016-03-01 05:24:42 +01:00
|
|
|
/// <summary>
|
|
|
|
/// Records the specified media source.
|
|
|
|
/// </summary>
|
2021-10-02 20:15:33 +02:00
|
|
|
/// <param name="directStreamProvider">The direct stream provider, or <c>null</c>.</param>
|
|
|
|
/// <param name="mediaSource">The media source.</param>
|
|
|
|
/// <param name="targetFile">The target file.</param>
|
|
|
|
/// <param name="duration">The duration to record.</param>
|
|
|
|
/// <param name="onStarted">An action to perform when recording starts.</param>
|
|
|
|
/// <param name="cancellationToken">The cancellation token.</param>
|
|
|
|
/// <returns>A <see cref="Task"/> that represents the recording operation.</returns>
|
2021-08-28 17:32:09 +02:00
|
|
|
Task Record(IDirectStreamProvider? directStreamProvider, MediaSourceInfo mediaSource, string targetFile, TimeSpan duration, Action onStarted, CancellationToken cancellationToken);
|
2016-05-10 07:15:06 +02:00
|
|
|
|
|
|
|
string GetOutputPath(MediaSourceInfo mediaSource, string targetFile);
|
2016-02-12 08:01:38 +01:00
|
|
|
}
|
|
|
|
}
|