Giter Club home page Giter Club logo

osu-player's Introduction

Osu-Player

Runtime License CodeFactor

Releases Commits

A multifunctional player for playing music, hitsound, video and storyboard for osuers!.

Now you can close osu! and open osu player after making a cup of tea, and sit down to enjoy your afternoon.

Currently support

  • Ordinary media player interface and limited function, including
  • volume control
  • play control
  • play list
  • my favorites
  • search loacal library
  • video support
  • shortcut
  • lyric
  • Beatmap based playing (That's why fully for OSUer), no beatmap you can play nothing. But if you have (easy for osuer), except for playing music, it will
  • play the maps's hitsound (STD and mania)
  • show the background BG
  • play the video

Future mainly function

  • I18N
  • Support Storyboard (based on MikiraSora's project his GL render and logic)
  • Support DT NC HT DC mod (based on NAudio + SoundTouch)
  • Support Online Explore (because now api v2 looks fit to use)
  • Support slidertick, sliderslider and spinner emulation, support Taiko map playing
  • Intelligent recommendation when you exploring maps.

Compile from source code

Clone repo with submodules using git command git clone --recursive https://github.com/Milkitic/Osu-Player.

Open OsuPlayer.sln with Visual Studio, Rider or other .NET-platform IDEs.

Restore all nuget packages.

Compile the source code.

I18N

Welcome to help to translate this program! The program support localization and display in your preferred language.

See Template: OsuPlayer.Wpf/lang/en-US.xaml

Note the file name format should be like [locale-name].xaml which can be found at: https://docs.microsoft.com/en-us/cpp/c-runtime-library/language-strings

Develop

  • GUI: OsuPlayer.Wpf
  • Core with database, settings and other logics: OsuPlayer.Common
  • Audio playing: OsuPlayer.Media.Audio

如果你保持了高活跃度,我们(目前仅我)将会邀请你加入成为仓库的成员,当然还请加入QQ群764558401,便于讨论。此外还有Jetbrain开源许可证等福利。

Welcome to open pull requests if you have some ideas or just want to join in.

If you have a destructive change (framework, lib replacement, etc), please contact me first.

Please open PR and merge to develop branch.

Speicial Thanks

Non-commercial open source license

osu-player's People

Contributors

b11p avatar dependabot[bot] avatar kashouryo avatar kyrios0 avatar milkitic avatar yc7521 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

osu-player's Issues

Switch to mini mode when no beatmap cache.

System.NullReferenceException: 並未將物件參考設定為物件的執行個體。
  Module "Milky.OsuPlayer.Control.MiniPlayController", in UserControl_Loaded
  Module "System.Windows.RoutedEventHandlerInfo", in InvokeHandler
  Module "System.Windows.EventRoute", in InvokeHandlersImpl
  Module "System.Windows.UIElement", in RaiseEventImpl
  Module "System.Windows.UIElement", in RaiseEvent
  Module "System.Windows.BroadcastEventHelper", in BroadcastEvent
  Module "System.Windows.BroadcastEventHelper", in BroadcastLoadedEvent
  Module "MS.Internal.LoadedOrUnloadedOperation", in DoWork
  Module "System.Windows.Media.MediaContext", in FireLoadedPendingCallbacks
  Module "System.Windows.Media.MediaContext", in FireInvokeOnRenderCallbacks
  Module "System.Windows.Media.MediaContext", in RenderMessageHandlerCore
  Module "System.Windows.Media.MediaContext", in RenderMessageHandler
  Module "System.Windows.Media.MediaContext", in Resize
  Module "System.Windows.Interop.HwndTarget", in OnResize
  Module "System.Windows.Interop.HwndTarget", in HandleMessage
  Module "System.Windows.Interop.HwndSource", in HwndTargetFilterMessage
  Module "MS.Win32.HwndWrapper", in WndProc
  Module "MS.Win32.HwndSubclass", in DispatcherCallbackOperation
  Module "System.Windows.Threading.ExceptionWrapper", in InternalRealCall
  Module "System.Windows.Threading.ExceptionWrapper", in TryCatchWhen

歌词问题

ui中没有解锁歌词的按钮,拖动位置时歌词一变化就会自动回到固定的位置,字体写死了。

System.Exception: Type byte is not Null or String

image

====================11/15/2020 9:10:32 PM====================
System.Exception: Type byte is not Null or String (position: 34)
at osu.Shared.Serialization.SerializationReader.ReadString()
at osu_database_reader.Components.Beatmaps.BeatmapEntry.ReadFromStream(SerializationReader r)
at osu_database_reader.BinaryFiles.OsuDb.ReadFromStream(SerializationReader r)
at Milky.OsuPlayer.App.ReadDb() in C:\Users\YureruMiira\Source\Repos\完整项目\Osu-Player\OsuPlayer.Wpf\App.xaml.cs:line 288
at System.Lazy`1.CreateValue()
at System.Lazy`1.LazyInitValue()
at System.Lazy`1.get_Value()
at Milky.OsuPlayer.App.get_Beatmaps() in C:\Users\YureruMiira\Source\Repos\完整项目\Osu-Player\OsuPlayer.Wpf\App.xaml.cs:line 40
at Milky.OsuPlayer.PlayerList.RefreshPlayList(FreshType freshType, Nullable`1 playListMode, IEnumerable`1 entries, Boolean finishList) in C:\Users\YureruMiira\Source\Repos\完整项目\Osu-Player\OsuPlayer.Wpf\PlayerList.cs:line 46
at Milky.OsuPlayer.Windows.MainWindow.SetPlayMode(PlayerMode playmode) in C:\Users\YureruMiira\Source\Repos\完整项目\Osu-Player\OsuPlayer.Wpf\Windows\MainWindow.Event.cs:line 439
at Milky.OsuPlayer.Windows.MainWindow.<Window_Loaded>d__49.MoveNext() in C:\Users\YureruMiira\Source\Repos\完整项目\Osu-Player\OsuPlayer.Wpf\Windows\MainWindow.Event.cs:line 33
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.AsyncMethodBuilderCore.<>c.b__6_0(Object state)
at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
at System.Windows.Threading.DispatcherOperation.InvokeImpl()
at System.Windows.Threading.DispatcherOperation.InvokeInSecurityContext(Object state)
at MS.Internal.CulturePreservingExecutionContext.CallbackWrapper(Object obj)
at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
at MS.Internal.CulturePreservingExecutionContext.Run(CulturePreservingExecutionContext executionContext, ContextCallback callback, Object state)
at System.Windows.Threading.DispatcherOperation.Invoke()
at System.Windows.Threading.Dispatcher.ProcessQueue()
at System.Windows.Threading.Dispatcher.WndProcHook(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
at MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
at MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
at System.Windows.Threading.Dispatcher.LegacyInvokeImpl(DispatcherPriority priority, TimeSpan timeout, Delegate method, Object args, Int32 numArgs)
at MS.Win32.HwndSubclass.SubclassWndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam)
at MS.Win32.UnsafeNativeMethods.DispatchMessage(MSG& msg)
at System.Windows.Threading.Dispatcher.PushFrameImpl(DispatcherFrame frame)
at System.Windows.Threading.Dispatcher.PushFrame(DispatcherFrame frame)
at System.Windows.Application.RunDispatcher(Object ignore)
at System.Windows.Application.RunInternal(Window window)
at System.Windows.Application.Run(Window window)
at Milky.OsuPlayer.App.Main() in C:\Users\YureruMiira\Source\Repos\完整项目\Osu-Player\OsuPlayer.Wpf\App.xaml.cs:line 69

迷你播放器

迷你播放器一直是置顶显示,建议在迷你播放器上加一个图钉,方便切换置顶不置顶

部分地图音效播放存在问题

basara有滑条音效遗漏的情况..最明显的就1分16秒的7个3分拍的咚只出来一个
十六夜月(s/247580)没有读到文件夹里的自定义音效全是默认音效
Felys(s/197747)读到了音效但是调子都是错的

搜索列表性能问题

搜索列表在1w+条目时CPU 100%,基本拖不动。几百条时能拖动,但是基本也会用满CPU(猜测为单核CPU)

unable to build

This source code is extremely broken and unable to build on other computers.

严重性 代码 说明 项目 文件 行 禁止显示状态 错误 XML 命名空间“clr-namespace:Loaders;assembly=MrMitch.Loaders”中不存在标记“ChromeLoader”。 行 693 位置 18. OsuPlayer.Wpf C:\GitHub\Osu-Player\OsuPlayer.Wpf\Windows\MainWindow.xaml 693 错误 XML 命名空间“clr-namespace:Milky.OsuPlayer.Common.Metadata;assembly=OsuPlayer.Common”中不存在标记“BeatmapDataModel”。 行 103 位置 30. OsuPlayer.Wpf C:\GitHub\Osu-Player\OsuPlayer.Wpf\Pages\RecentPlayPage.xaml 103 错误 XML 命名空间“http://schemas.microsoft.com/expression/2010/drawing”中不存在标记“Arc”。 行 28 位置 30. MrMitch.Loaders C:\GitHub\Osu-Player\MrMitch.Loaders\Themes\Generic.xaml 28 错误 CS1929 “IEnumerable<MapInfo>”不包含“ToBeatmapEntries”的定义,并且最佳扩展方法重载“EntryExtension.ToBeatmapEntries(IEnumerable<IMapIdentifiable>, IEnumerable<BeatmapEntry>, bool)”需要类型为“IEnumerable<IMapIdentifiable>”的接收器 OsuPlayer.Common C:\GitHub\Osu-Player\OsuPlayer.Common\Data\EntryExtension.cs 118 活动的 错误 CS1929 “List<MapInfo>”不包含“ToBeatmapEntries”的定义,并且最佳扩展方法重载“EntryExtension.ToBeatmapEntries(IEnumerable<IMapIdentifiable>, IEnumerable<BeatmapEntry>, bool)”需要类型为“IEnumerable<IMapIdentifiable>”的接收器 OsuPlayer.Common C:\GitHub\Osu-Player\OsuPlayer.Common\Data\BeatmapEntryQuery.cs 96 活动的 错误 XDG0008 命名空间“clr-namespace:Loaders;assembly=MrMitch.Loaders”中不存在“ChromeLoader”名称。 OsuPlayer.Wpf MainWindow.xaml 693 错误 XDG0008 命名空间“clr-namespace:Milky.OsuPlayer.Converter”中不存在“IconMarginConverter”名称。 OsuPlayer.Wpf MainWindow.xaml 33 错误 XDG0008 命名空间“clr-namespace:Milky.OsuPlayer.Converter”中不存在“LyricWindowLockedConverter”名称。 OsuPlayer.Wpf MainWindow.xaml 37 错误 XDG0008 命名空间“clr-namespace:Milky.OsuPlayer.Converter”中不存在“LyricWindowShownConverter”名称。 OsuPlayer.Wpf MainWindow.xaml 36 错误 XDG0008 命名空间“clr-namespace:Milky.OsuPlayer.Converter”中不存在“MiniEnabledConverter”名称。 OsuPlayer.Wpf MainWindow.xaml 35 错误 XDG0008 命名空间“clr-namespace:Milky.OsuPlayer.Converter”中不存在“MsToStringConverter”名称。 OsuPlayer.Wpf MainWindow.xaml 39 错误 XDG0008 命名空间“clr-namespace:Milky.OsuPlayer.Converter”中不存在“NavigationColorConverter”名称。 OsuPlayer.Wpf MainWindow.xaml 76 错误 XDG0008 命名空间“clr-namespace:Milky.OsuPlayer.Converter”中不存在“NavigationWidthConverter”名称。 OsuPlayer.Wpf MainWindow.xaml 32 错误 XDG0008 命名空间“clr-namespace:Milky.OsuPlayer.Converter”中不存在“TitleVisibleConverter”名称。 OsuPlayer.Wpf MainWindow.xaml 34 错误 XDG0008 命名空间“clr-namespace:Milky.OsuPlayer.Converter”中不存在“VideoShowConverter”名称。 OsuPlayer.Wpf MainWindow.xaml 38 错误 XDG0008 命名空间“clr-namespace:Milky.OsuPlayer.ViewModels”中不存在“MainWindowViewModel”名称。 OsuPlayer.Wpf MainWindow.xaml 29 错误 CS0103 当前上下文中不存在名称“MetaString” OsuPlayer.Common C:\GitHub\Osu-Player\OsuPlayer.Common\Data\BeatmapEntryQuery.cs 105 活动的 错误 CS0103 当前上下文中不存在名称“MetaString” OsuPlayer.Common C:\GitHub\Osu-Player\OsuPlayer.Common\Data\BeatmapEntryQuery.cs 108 活动的 错误 XLS0503 无法将类型为“String”的值添加到类型为“InlineCollection”的集合或字典中。 OsuPlayer.Wpf MainWindow.xaml 124 错误 CS0016 未能写入输出文件“C:\Users\YureruMiira\Source\Repos\OSharp\OSharp\OSharp.xml”--“未能找到路径“C:\Users\YureruMiira\Source\Repos\OSharp\OSharp\OSharp.xml”的一部分。” OSharp.Api C:\GitHub\Osu-Player\OSharp.Api\CSC 1 活动的 错误 CS0006 未能找到元数据文件“C:\GitHub\Osu-Player\OSharp.Api\bin\Debug\netstandard2.0\OSharp.Api.dll” OsuPlayer.Common C:\GitHub\Osu-Player\OsuPlayer.Common\CSC 1 活动的 错误 CS0006 未能找到元数据文件“C:\GitHub\Osu-Player\OsuPlayer.Common\bin\Debug\OsuPlayer.Common.dll” OsuPlayer.Media.Audio C:\GitHub\Osu-Player\OsuPlayer.Media.Audio\CSC 1 活动的 错误 CS0246 未能找到类型或命名空间名“ConcurrentRandom”(是否缺少 using 指令或程序集引用?) OsuPlayer.Common C:\GitHub\Osu-Player\OsuPlayer.Common\Data\BeatmapEntryQuery.cs 12 活动的 错误 CS0246 未能找到类型或命名空间名“ConcurrentRandom”(是否缺少 using 指令或程序集引用?) OsuPlayer.Common C:\GitHub\Osu-Player\OsuPlayer.Common\Data\BeatmapEntryQuery.cs 12 活动的 错误 CS0246 未能找到类型或命名空间名“IMapIdentifiable”(是否缺少 using 指令或程序集引用?) OsuPlayer.Common C:\GitHub\Osu-Player\OsuPlayer.Common\Data\EF\Model\MapInfo.cs 9 活动的 错误 CS0246 未能找到类型或命名空间名“IMapIdentifiable”(是否缺少 using 指令或程序集引用?) OsuPlayer.Common C:\GitHub\Osu-Player\OsuPlayer.Common\Data\EntryExtension.cs 16 活动的 错误 CS0246 未能找到类型或命名空间名“IMapIdentifiable”(是否缺少 using 指令或程序集引用?) OsuPlayer.Common C:\GitHub\Osu-Player\OsuPlayer.Common\Data\EntryExtension.cs 22 活动的 错误 CS0246 未能找到类型或命名空间名“IMapIdentifiable”(是否缺少 using 指令或程序集引用?) OsuPlayer.Common C:\GitHub\Osu-Player\OsuPlayer.Common\Data\EntryExtension.cs 109 活动的 错误 类型引用无法找到名为“Arc”的公共类型。 行 21 位置 36. MrMitch.Loaders C:\GitHub\Osu-Player\MrMitch.Loaders\GooglePlusLoader.xaml 21

Also, for osharp references, they are using absolute paths which do not work on other computers either.

Awesome software overall, nice job Milkitic!

notify icon exception after window closed

System.InvalidOperationException: 关闭 Window 之后,无法设置 Visibility,也无法调用 Show、ShowDialogor 或 WindowInteropHelper.EnsureHandle。
  Module "System.Windows.Window", in VerifyCanShow
  Module "System.Windows.Window", in Show
  Module "Milky.OsuPlayer.Windows.MainWindow", in NotifyIcon_TrayMouseDoubleClick
  Module "System.Windows.RoutedEventHandlerInfo", in InvokeHandler
  Module "System.Windows.EventRoute", in InvokeHandlersImpl
  Module "System.Windows.UIElement", in RaiseEventImpl
  Module "System.Windows.UIElement", in RaiseEvent
  Module "Hardcodet.Wpf.TaskbarNotification.RoutedEventHelper", in RaiseEvent
  Module "Hardcodet.Wpf.TaskbarNotification.TaskbarIcon", in RaiseTrayMouseDoubleClickEvent
  Module "Hardcodet.Wpf.TaskbarNotification.TaskbarIcon", in RaiseTrayMouseDoubleClickEvent
  Module "Hardcodet.Wpf.TaskbarNotification.TaskbarIcon", in OnMouseEvent
  Module "Hardcodet.Wpf.TaskbarNotification.Interop.WindowMessageSink", in ProcessWindowMessage
  Module "Hardcodet.Wpf.TaskbarNotification.Interop.WindowMessageSink", in OnWindowMessageReceived

视频偏移未正确计算

现象和复现

Minimode播放任意带视频的map一段时间,切换到Mainwindow,视频会从0开始播放,导致音画不同步。

收藏夹功能似乎不可用了

把歌曲加入收藏夹后收藏夹依然是空的,且打开收藏夹时会提示Error while getting maps from collection: Error parsing column17
(addTime=24/03/30 15:12:06 - String)
我是mania玩家,会不会和谱子全是mania谱有关呢?

自动同步(或是手动)"osu!\collection.db",

没看懂收藏夹保存在哪里,
想的是,像"addons\workshop"一样

自动同步的收藏夹放在单独文件夹 即"workshop"文件夹
手动创建的收藏夹放在这一层外面 即"addons"文件夹

做一个"collection\osu!"文件夹

不能导入曲包

版本:2.1.7255.104
注:我之前在D:\Download目录下安装了osu!,后手动移动到%APPDATA%..\Local\osu!
选择%APPDATA%..\Local\osu!\osu!.db后不能导入
OS: Windows10 1703

升级优化

  • 双线升级渠道(配合gitee)
  • 自动覆盖 / 解压

MiniPlayer will not be hidden correctly

How to reproduce:

  1. Launch player
  2. Switch to mini mode
  3. Drag mini window to margin and hide it
  4. Switch to main mode
  5. Switch to mini mode

Behavior:

Hide when MouseMove(Hover)
Show when MouseLeave

导入不了曲包,错误日志显示索引超出了数组界限

自定义osu!db和曲库位置后就这样了

System.IndexOutOfRangeException: 索引超出了数组界限。
在 OSharp.Beatmap.Sections.TimingSection.Match(String line)
在 OSharp.Beatmap.Configurable.ConfigConvert.DeserializeObject[T](TextReader reader, Boolean sequential)
在 OSharp.Beatmap.OsuFile.<>c__DisplayClass36_0.b__0()
在 System.Threading.Tasks.Task`1.InnerInvoke()
在 System.Threading.Tasks.Task.Execute()
--- 引发异常的上一位置中堆栈跟踪的末尾 ---
在 System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
在 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
在 OSharp.Beatmap.OsuFile.d__36.MoveNext()
--- 引发异常的上一位置中堆栈跟踪的末尾 ---
在 System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
在 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
在 Milky.OsuPlayer.Common.Scanning.OsuFileScanner.d__10.MoveNext()
--- 引发异常的上一位置中堆栈跟踪的末尾 ---
在 System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
在 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
在 Milky.OsuPlayer.Common.Scanning.OsuFileScanner.d__8.MoveNext()
--- 引发异常的上一位置中堆栈跟踪的末尾 ---
在 System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
在 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
在 Milky.OsuPlayer.Windows.MainWindow.<Window_Loaded>d__20.MoveNext()
--- 引发异常的上一位置中堆栈跟踪的末尾 ---
在 System.Runtime.CompilerServices.AsyncMethodBuilderCore.<>c.b__6_0(Object state)
在 System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
在 System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)

非预期的快捷键触发

现象和复现

在使用过程中发现播放器主音量会莫名其妙增加,调试了一下发现触发条件如下:

  • 播放 / 暂停,上一首,下一首 快捷键已设置
  • 音量+ 快捷键未设置

触发动作

  • 当前窗口由Osu-Player切换到远程桌面连接(RDP)

分析

调试发现音量增加的原因是Osu-Player似乎捕捉到了Keys.None并执行了音量增加的回调函数(Osu-Player\OsuPlayer.Wpf\Windows\MainWindow.xaml.cs: line 87)
如果将音量+快捷键设置为任意按键,则切换窗口到RDP的动作会触发音量减小的回调函数(Osu-Player\OsuPlayer.Wpf\Windows\MainWindow.xaml.cs: line 92)

附加信息

我的快捷键设置

  "hot_keys": [
    11730944,
    11600128,
    11534848,
    768,
    1024,
    1280,
    1536,
    1792
  ],

config file was in use by another process

System.IO.IOException: 文件“G:\Osu-Player\config.json”正由另一进程使用,因此该进程无法访问此文件。
  Module "System.IO.__Error", in WinIOError
  Module "System.IO.FileStream", in Init
  Module "System.IO.FileStream", in .ctor
  Module "System.IO.StreamWriter", in CreateFile
  Module "System.IO.StreamWriter", in .ctor
  Module "System.IO.File", in InternalWriteAllText
  Module "System.IO.File", in WriteAllText
  Module "Milky.OsuPlayer.Common.ConcurrentFile", in WriteAllText
  Module "Milky.OsuPlayer.Common.Configuration.AppSettings", in SaveDefault
  Module "Milky.OsuPlayer.Windows.LyricWindow", in Show
  Module "Milky.OsuPlayer.Windows.MainWindow", in .ctor
System.Windows.Markup.XamlParseException: 对类型“Milky.OsuPlayer.Windows.MainWindow”的构造函数执行符合指定的绑定约束的调用时引发了异常。
  Module "System.Windows.Markup.WpfXamlLoader", in Load
  Module "System.Windows.Markup.WpfXamlLoader", in LoadBaml
  Module "System.Windows.Markup.XamlReader", in LoadBaml
  Module "System.Windows.Application", in LoadBamlStreamWithSyncInfo
  Module "System.Windows.Application", in LoadComponent
  Module "System.Windows.Application", in DoStartup
  Module "System.Windows.Application", in <.ctor>b__1_0
  Module "System.Windows.Threading.ExceptionWrapper", in InternalRealCall
  Module "System.Windows.Threading.ExceptionWrapper", in TryCatchWhen

Can't import osu!.db

播放器启动时报错退出

error.log:

System.Exception: Type byte is not Null or String (position: 34)
   在 osu.Shared.Serialization.SerializationReader.ReadString()
   在 osu_database_reader.Components.Beatmaps.BeatmapEntry.ReadFromStream(SerializationReader r)
   在 osu_database_reader.BinaryFiles.OsuDb.ReadFromStream(SerializationReader r)
   在 Milky.OsuPlayer.App.ReadDb() 位置 C:\Users\YureruMiira\Source\Repos\完整项目\Osu-Player\OsuPlayer.Wpf\App.xaml.cs:行号 288
   在 System.Lazy`1.CreateValue()
   在 System.Lazy`1.LazyInitValue()
   在 System.Lazy`1.get_Value()
   在 Milky.OsuPlayer.App.get_Beatmaps() 位置 C:\Users\YureruMiira\Source\Repos\完整项目\Osu-Player\OsuPlayer.Wpf\App.xaml.cs:行号 40
   在 Milky.OsuPlayer.PlayerList.RefreshPlayList(FreshType freshType, Nullable`1 playListMode, IEnumerable`1 entries, Boolean finishList) 位置 C:\Users\YureruMiira\Source\Repos\完整项目\Osu-Player\OsuPlayer.Wpf\PlayerList.cs:行号 46
   在 Milky.OsuPlayer.Windows.MainWindow.SetPlayMode(PlayerMode playmode) 位置 C:\Users\YureruMiira\Source\Repos\完整项目\Osu-Player\OsuPlayer.Wpf\Windows\MainWindow.Event.cs:行号 439
   在 Milky.OsuPlayer.Windows.MainWindow.<Window_Loaded>d__49.MoveNext() 位置 C:\Users\YureruMiira\Source\Repos\完整项目\Osu-Player\OsuPlayer.Wpf\Windows\MainWindow.Event.cs:行号 33
--- 引发异常的上一位置中堆栈跟踪的末尾 ---
   在 System.Runtime.CompilerServices.AsyncMethodBuilderCore.<>c.<ThrowAsync>b__6_0(Object state)
   在 System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
   在 System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
   在 System.Windows.Threading.DispatcherOperation.InvokeImpl()
   在 System.Windows.Threading.DispatcherOperation.InvokeInSecurityContext(Object state)
   在 MS.Internal.CulturePreservingExecutionContext.CallbackWrapper(Object obj)
   在 System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   在 System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   在 System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
   在 MS.Internal.CulturePreservingExecutionContext.Run(CulturePreservingExecutionContext executionContext, ContextCallback callback, Object state)
   在 System.Windows.Threading.DispatcherOperation.Invoke()
   在 System.Windows.Threading.Dispatcher.ProcessQueue()
   在 System.Windows.Threading.Dispatcher.WndProcHook(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   在 MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   在 MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
   在 System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
   在 System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
   在 System.Windows.Threading.Dispatcher.LegacyInvokeImpl(DispatcherPriority priority, TimeSpan timeout, Delegate method, Object args, Int32 numArgs)
   在 MS.Win32.HwndSubclass.SubclassWndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam)
   在 MS.Win32.UnsafeNativeMethods.DispatchMessage(MSG& msg)
   在 System.Windows.Threading.Dispatcher.PushFrameImpl(DispatcherFrame frame)
   在 System.Windows.Threading.Dispatcher.PushFrame(DispatcherFrame frame)
   在 System.Windows.Application.RunDispatcher(Object ignore)
   在 System.Windows.Application.RunInternal(Window window)
   在 System.Windows.Application.Run(Window window)
   在 Milky.OsuPlayer.App.Main() 位置 C:\Users\YureruMiira\Source\Repos\完整项目\Osu-Player\OsuPlayer.Wpf\App.xaml.cs:行号 69

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.