aboutsummaryrefslogtreecommitdiff
path: root/src/Jellyfin.MediaEncoding.Keyframes/KeyframeData.cs
blob: 06f9180e787478499cf5bd86e68d41ab8a1aa12d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
using System.Collections.Generic;

namespace Jellyfin.MediaEncoding.Keyframes;

/// <summary>
/// Keyframe information for a specific file.
/// </summary>
public class KeyframeData
{
    /// <summary>
    /// Initializes a new instance of the <see cref="KeyframeData"/> class.
    /// </summary>
    /// <param name="totalDuration">The total duration of the video stream in ticks.</param>
    /// <param name="keyframeTicks">The video keyframes in ticks.</param>
    public KeyframeData(long totalDuration, IReadOnlyList<long> keyframeTicks)
    {
        TotalDuration = totalDuration;
        KeyframeTicks = keyframeTicks;
    }

    /// <summary>
    /// Gets the total duration of the stream in ticks.
    /// </summary>
    public long TotalDuration { get; }

    /// <summary>
    /// Gets the keyframes in ticks.
    /// </summary>
    public IReadOnlyList<long> KeyframeTicks { get; }
}