소스 검색

fix opus transcoding

Luke Pulverenti 9 년 전
부모
커밋
0aecb6e296
2개의 변경된 파일12개의 추가작업 그리고 4개의 파일을 삭제
  1. 6 2
      MediaBrowser.Api/Playback/Progressive/AudioService.cs
  2. 6 2
      MediaBrowser.MediaEncoding/Encoder/AudioEncoder.cs

+ 6 - 2
MediaBrowser.Api/Playback/Progressive/AudioService.cs

@@ -73,9 +73,13 @@ namespace MediaBrowser.Api.Playback.Progressive
                 audioTranscodeParams.Add("-ac " + state.OutputAudioChannels.Value.ToString(UsCulture));
             }
 
-            if (state.OutputAudioSampleRate.HasValue)
+            // opus will fail on 44100
+            if (!string.Equals(state.OutputAudioCodec, "opus", global::System.StringComparison.OrdinalIgnoreCase))
             {
-                audioTranscodeParams.Add("-ar " + state.OutputAudioSampleRate.Value.ToString(UsCulture));
+                if (state.OutputAudioSampleRate.HasValue)
+                {
+                    audioTranscodeParams.Add("-ar " + state.OutputAudioSampleRate.Value.ToString(UsCulture));
+                }
             }
 
             const string vn = " -vn";

+ 6 - 2
MediaBrowser.MediaEncoding/Encoder/AudioEncoder.cs

@@ -35,9 +35,13 @@ namespace MediaBrowser.MediaEncoding.Encoder
                 audioTranscodeParams.Add("-ac " + state.OutputAudioChannels.Value.ToString(UsCulture));
             }
 
-            if (state.OutputAudioSampleRate.HasValue)
+            // opus will fail on 44100
+            if (!string.Equals(state.OutputAudioCodec, "opus", StringComparison.OrdinalIgnoreCase))
             {
-                audioTranscodeParams.Add("-ar " + state.OutputAudioSampleRate.Value.ToString(UsCulture));
+                if (state.OutputAudioSampleRate.HasValue)
+                {
+                    audioTranscodeParams.Add("-ar " + state.OutputAudioSampleRate.Value.ToString(UsCulture));
+                }
             }
 
             const string vn = " -vn";