2
0

EncodingOptions.cs 1.6 KB

123456789101112131415161718192021222324252627282930313233343536
  1. namespace MediaBrowser.Model.Configuration
  2. {
  3. public class EncodingOptions
  4. {
  5. public int EncodingThreadCount { get; set; }
  6. public string TranscodingTempPath { get; set; }
  7. public double DownMixAudioBoost { get; set; }
  8. public bool EnableThrottling { get; set; }
  9. public int ThrottleDelaySeconds { get; set; }
  10. public string HardwareAccelerationType { get; set; }
  11. public string EncoderAppPathCustom { get; set; } // FFmpeg path as set by the user via the UI
  12. public string EncoderAppPath { get; set; } // The current FFmpeg path being used by the system
  13. public string VaapiDevice { get; set; }
  14. public int H264Crf { get; set; }
  15. public string H264Preset { get; set; }
  16. public string DeinterlaceMethod { get; set; }
  17. public bool EnableHardwareEncoding { get; set; }
  18. public bool EnableSubtitleExtraction { get; set; }
  19. public string[] HardwareDecodingCodecs { get; set; }
  20. public EncodingOptions()
  21. {
  22. DownMixAudioBoost = 2;
  23. EnableThrottling = true;
  24. ThrottleDelaySeconds = 180;
  25. EncodingThreadCount = -1;
  26. // This is a DRM device that is almost guaranteed to be there on every intel platform, plus it's the default one in ffmpeg if you don't specify anything
  27. VaapiDevice = "/dev/dri/renderD128";
  28. H264Crf = 23;
  29. EnableHardwareEncoding = true;
  30. EnableSubtitleExtraction = true;
  31. HardwareDecodingCodecs = new string[] { "h264", "vc1" };
  32. }
  33. }
  34. }