DisableTranscodingThrottling.cs 1.1 KB

1234567891011121314151617181920212223242526272829303132
  1. using System;
  2. using System.IO;
  3. using MediaBrowser.Common.Configuration;
  4. using MediaBrowser.Model.Configuration;
  5. using Microsoft.Extensions.Configuration;
  6. using Microsoft.Extensions.Logging;
  7. namespace Jellyfin.Server.Migrations.Routines
  8. {
  9. /// <summary>
  10. /// Updater that takes care of bringing configuration up to 10.5.0 standards.
  11. /// </summary>
  12. internal class DisableTranscodingThrottling : IUpdater
  13. {
  14. /// <inheritdoc/>
  15. public string Name => "DisableTranscodingThrottling";
  16. /// <inheritdoc/>
  17. public void Perform(CoreAppHost host, ILogger logger)
  18. {
  19. // Set EnableThrottling to false as it wasn't used before, and in 10.5.0 it may introduce issues
  20. var encoding = ((IConfigurationManager)host.ServerConfigurationManager).GetConfiguration<EncodingOptions>("encoding");
  21. if (encoding.EnableThrottling)
  22. {
  23. logger.LogInformation("Disabling transcoding throttling during migration");
  24. encoding.EnableThrottling = false;
  25. host.ServerConfigurationManager.SaveConfiguration("encoding", encoding);
  26. }
  27. }
  28. }
  29. }