FFMpegCore/FFMpegCore/FFProbe/FrameAnalysis.cs
2025-10-16 12:38:57 +02:00

62 lines
2.1 KiB
C#

using System.Text.Json.Serialization;
namespace FFMpegCore;
public class FFProbeFrameAnalysis
{
[JsonPropertyName("media_type")] public string MediaType { get; set; } = null!;
[JsonPropertyName("stream_index")] public int StreamIndex { get; set; }
[JsonPropertyName("key_frame")] public int KeyFrame { get; set; }
[JsonPropertyName("pkt_pts")] public long PacketPts { get; set; }
[JsonPropertyName("pkt_pts_time")] public string PacketPtsTime { get; set; } = null!;
[JsonPropertyName("pkt_dts")] public long PacketDts { get; set; }
[JsonPropertyName("pkt_dts_time")] public string PacketDtsTime { get; set; } = null!;
[JsonPropertyName("best_effort_timestamp")]
public long BestEffortTimestamp { get; set; }
[JsonPropertyName("best_effort_timestamp_time")]
public string BestEffortTimestampTime { get; set; } = null!;
[JsonPropertyName("pkt_duration")] public int PacketDuration { get; set; }
[JsonPropertyName("pkt_duration_time")]
public string PacketDurationTime { get; set; } = null!;
[JsonPropertyName("pkt_pos")] public long PacketPos { get; set; }
[JsonPropertyName("pkt_size")] public int PacketSize { get; set; }
[JsonPropertyName("width")] public long Width { get; set; }
[JsonPropertyName("height")] public long Height { get; set; }
[JsonPropertyName("pix_fmt")] public string PixelFormat { get; set; } = null!;
[JsonPropertyName("pict_type")] public string PictureType { get; set; } = null!;
[JsonPropertyName("coded_picture_number")]
public long CodedPictureNumber { get; set; }
[JsonPropertyName("display_picture_number")]
public long DisplayPictureNumber { get; set; }
[JsonPropertyName("interlaced_frame")] public int InterlacedFrame { get; set; }
[JsonPropertyName("top_field_first")] public int TopFieldFirst { get; set; }
[JsonPropertyName("repeat_pict")] public int RepeatPicture { get; set; }
[JsonPropertyName("chroma_location")] public string ChromaLocation { get; set; } = null!;
}
public class FFProbeFrames
{
[JsonPropertyName("frames")] public List<FFProbeFrameAnalysis> Frames { get; set; } = null!;
}