MantisBT - MPfm
View Issue Details
0000070MPfmUI | Windows | Main Windowpublic2011-04-24 11:572012-02-18 11:40
0000070: Add a auto update library background process
Display the status on the status bar. Make sure this doesn't block audio playback.
No tags attached.
Issue History
2011-04-24 11:57ycastonguayNew Issue
2011-04-24 11:57ycastonguayStatusnew => assigned
2011-04-24 11:57ycastonguayAssigned To => ycastonguay
2011-10-30 13:17ycastonguayTarget Version0.5.0.0 =>
2012-01-18 18:29ycastonguayTarget Version0.5.2.0 =>
2012-01-18 19:57ycastonguayTarget Version0.6.0.0 =>
2012-01-19 09:34svnCheckin
2012-01-19 09:34svnNote Added: 0000366
2012-01-21 11:28svnCheckin
2012-01-21 11:28svnNote Added: 0000371
2012-01-21 11:30svnCheckin
2012-01-21 11:30svnNote Added: 0000375
2012-01-21 11:31ycastonguayNote Deleted: 0000375
2012-01-25 14:09ycastonguayTarget Version0.5.2.0 =>
2012-02-18 11:40ycastonguayTarget Version0.7.1.0 =>
2012-04-17 19:07ycastonguayCategoryMain Form => Main Window
2012-04-17 19:09ycastonguayCategoryMain Window => Window - Main
2012-04-21 09:57ycastonguayCategoryWindow - Main => UI - Windows - Main Window
2012-04-22 10:10ycastonguayCategoryUI - Windows - Main Window => UI | Windows | Main Window

2012-01-19 09:34   
The user admin has checked in files related to this issue (revision 271).

- Tested a new method for the new UpdateLibrary process. Seems to work really well.
  It starts X threads to read audio file metadata, waits for all threads to finish, and then inserts the files into the database.
  If there are more files to process it starts again X threads and insert files into the database until the list is complete.
  The downside is that it will insert files into the database often, but the upside is that it seems to work without locking (since
  the mechanism is out of the thread code).

Related to issue 0000070 and issue 0000160.

Files modified:
U MPfm/branches/current/MPfm/Other Screens/frmSettings.Designer.cs
U MPfm/branches/current/MPfm/Other Screens/frmSettings.cs
U MPfm/branches/current/MPfm.Library/UpdateLibrary/UpdateLibrary.cs

2012-01-21 11:28   
The user admin has checked in files related to this issue (revision 276).

- Added .NET Async CTP Library to the project.
- Player: The audio buffer is now cleared when skipping to a new position or when skipping to a new song.
- Player: The position returned by the player now counts in for the buffer size lag. In fact it is now using the
          main stream output position with a offset position (since the main output position is "infinite" and
          reset to 0 when the audio buffer needs to be cleared).
          It's not 100% done yet though; I need to add a syncmix proc to set the offset position exactly when the
          new song is heard. However the offset is 100% accurate already (since the channel is locked when getting the
          position, and the data available in the buffer is also added).
- UpdateLibrary: The new prototype drops Rx and uses only ASYNC for now. Works fine so far, but the application
                 gets lagged when updating files (especially when generating peak files).
- UpdateLibrary: A prototype UI for the background update library has been added to the main form.

Related to issue 0000070, issue 0000160, issue 0000168 and issue 0000275.

Files modified:
U MPfm/branches/current/MPfm/MPfm.csproj
U MPfm/branches/current/MPfm/Other Screens/frmSettings.Designer.cs
U MPfm/branches/current/MPfm/Other Screens/frmSettings.cs
U MPfm/branches/current/MPfm/Properties/AssemblyInfo.cs
U MPfm/branches/current/MPfm/frmMain.Designer.cs
U MPfm/branches/current/MPfm/frmMain.cs
U MPfm/branches/current/MPfm/frmMain.resx
U MPfm/branches/current/MPfm.Core/Properties/AssemblyInfo.cs
U MPfm/branches/current/MPfm.Fonts/Properties/AssemblyInfo.cs
A MPfm/branches/current/MPfm.Library/Lib/AsyncCtpLibrary.dll
A MPfm/branches/current/MPfm.Library/Lib/AsyncCtpLibrary.xml
U MPfm/branches/current/MPfm.Library/MPfm.Library.csproj
U MPfm/branches/current/MPfm.Library/Properties/AssemblyInfo.cs
U MPfm/branches/current/MPfm.Library/UpdateLibrary/UpdateLibrary.cs
U MPfm/branches/current/MPfm.Player/Player.cs
U MPfm/branches/current/MPfm.Player/Properties/AssemblyInfo.cs
U MPfm/branches/current/MPfm.Sound/Bass.Net/Channel.cs
U MPfm/branches/current/MPfm.Sound/Properties/AssemblyInfo.cs
U MPfm/branches/current/MPfm.WindowsControls/Properties/AssemblyInfo.cs