diff --git a/src/DownKyi/Services/Utils.cs b/src/DownKyi/Services/Utils.cs
index 13f1206..6161ba6 100644
--- a/src/DownKyi/Services/Utils.cs
+++ b/src/DownKyi/Services/Utils.cs
@@ -95,7 +95,7 @@ namespace DownKyi.Services
///
///
///
- private static ObservableCollection GetAudioQualityFormatList(PlayUrl playUrl, int defaultAudioQuality)
+ private static ObservableCollection GetAudioQualityFormatList_old(PlayUrl playUrl, int defaultAudioQuality)
{
List audioQualityFormatList = new List();
@@ -122,6 +122,43 @@ namespace DownKyi.Services
return new ObservableCollection(audioQualityFormatList);
}
+
+ ///
+ /// 设置音质
+ ///
+ ///
+ ///
+ ///
+ private static ObservableCollection GetAudioQualityFormatList(PlayUrl playUrl, int defaultAudioQuality)
+ {
+ List audioQualityFormatList = new List();
+
+ if (playUrl.Dash.Audio != null && playUrl.Dash.Audio.Count > 0)
+ {
+ foreach (PlayUrlDashVideo audio in playUrl.Dash.Audio)
+ {
+ // 音质id大于设置画质时,跳过
+ if (audio.Id > defaultAudioQuality) { continue; }
+
+ Quality audioQuality = Constant.GetAudioQualities().FirstOrDefault(t => { return t.Id == audio.Id; });
+ if (audioQuality != null)
+ {
+ ListHelper.AddUnique(audioQualityFormatList, audioQuality.Name);
+ }
+ }
+ }
+
+ if (playUrl.Dash.Dolby.Audio != null && playUrl.Dash.Dolby.Audio.Count > 0)
+ {
+ ListHelper.AddUnique(audioQualityFormatList, Constant.GetAudioQualities().Last().Name);
+ }
+
+ audioQualityFormatList.Sort(new StringLogicalComparer());
+ audioQualityFormatList.Reverse();
+
+ return new ObservableCollection(audioQualityFormatList);
+ }
+
///
/// 设置画质 & 视频编码
///
@@ -191,7 +228,7 @@ namespace DownKyi.Services
// 设置选中的视频编码
VideoQuality selectedVideoQuality = videoQualityList.FirstOrDefault(t => t.Quality == video.Id);
- if(selectedVideoQuality == null) { continue; }
+ if (selectedVideoQuality == null) { continue; }
if (videoQualityList[videoQualityList.IndexOf(selectedVideoQuality)].VideoCodecList.Count == 1)
{
diff --git a/src/DownKyi/ViewModels/PageViewModels/VideoPage.cs b/src/DownKyi/ViewModels/PageViewModels/VideoPage.cs
index f04787b..2eb1b07 100644
--- a/src/DownKyi/ViewModels/PageViewModels/VideoPage.cs
+++ b/src/DownKyi/ViewModels/PageViewModels/VideoPage.cs
@@ -91,32 +91,32 @@ namespace DownKyi.ViewModels.PageViewModels
///
private void ExecuteVideoQualitySelectedCommand()
{
- // 杜比视界
- string dolby = string.Empty;
- try
- {
- var qualities = Constant.GetAudioQualities();
- dolby = qualities[3].Name;
- }
- catch (Exception e)
- {
- Core.Utils.Debugging.Console.PrintLine("ExecuteVideoQualitySelectedCommand()发生异常: {0}", e);
- LogManager.Error("ExecuteVideoQualitySelectedCommand", e);
- }
+ //// 杜比视界
+ //string dolby = string.Empty;
+ //try
+ //{
+ // var qualities = Constant.GetAudioQualities();
+ // dolby = qualities[3].Name;
+ //}
+ //catch (Exception e)
+ //{
+ // Core.Utils.Debugging.Console.PrintLine("ExecuteVideoQualitySelectedCommand()发生异常: {0}", e);
+ // LogManager.Error("ExecuteVideoQualitySelectedCommand", e);
+ //}
- if (VideoQuality != null && VideoQuality.Quality == 126 && PlayUrl != null && PlayUrl.Dash != null && PlayUrl.Dash.Dolby != null)
- {
- ListHelper.AddUnique(AudioQualityFormatList, dolby);
- AudioQualityFormat = dolby;
- }
- else
- {
- if (AudioQualityFormatList.Contains(dolby))
- {
- AudioQualityFormatList.Remove(dolby);
- AudioQualityFormat = AudioQualityFormatList[0];
- }
- }
+ //if (VideoQuality != null && VideoQuality.Quality == 126 && PlayUrl != null && PlayUrl.Dash != null && PlayUrl.Dash.Dolby != null)
+ //{
+ // ListHelper.AddUnique(AudioQualityFormatList, dolby);
+ // AudioQualityFormat = dolby;
+ //}
+ //else
+ //{
+ // if (AudioQualityFormatList.Contains(dolby))
+ // {
+ // AudioQualityFormatList.Remove(dolby);
+ // AudioQualityFormat = AudioQualityFormatList[0];
+ // }
+ //}
}
#endregion