MantisBT - MPfm
View Issue Details
0000275MPfmPlayerpublic2012-01-21 10:372012-02-06 20:42
ycastonguay 
ycastonguay 
urgentmajoralways
resolvedfixed 
0.5.0.0 
0.5.2.00.5.2.0 
0000275: The position returned by the Player does not count for the buffer size lag
If the buffer size is set at 1000ms, the position is quite off.

The main output position should now be used, because it is always accurate with any buffer size. However, the position is reset to 0 when the audio buffer needs to be cleared (ex: skipping to a new song, skipping to a new position). That means the seek position needs to be tracked and added to the position in the GetPosition method.
No tags attached.
related to 0000168resolved ycastonguay Clear the audio buffer when setting a new position in the current song or when skipping to a new song 
Issue History
2012-01-21 10:37ycastonguayNew Issue
2012-01-21 10:37ycastonguayStatusnew => assigned
2012-01-21 10:37ycastonguayAssigned To => ycastonguay
2012-01-21 10:37ycastonguayRelationship addedrelated to 0000168
2012-01-21 11:28svnCheckin
2012-01-21 11:28svnNote Added: 0000374
2012-01-21 11:30svnCheckin
2012-01-21 11:30svnNote Added: 0000378
2012-01-21 11:32ycastonguayNote Deleted: 0000378
2012-01-21 17:29svnCheckin
2012-01-21 17:29svnNote Added: 0000381
2012-01-21 17:30ycastonguayStatusassigned => resolved
2012-01-21 17:30ycastonguayFixed in Version => 0.5.2.0
2012-01-21 17:30ycastonguayResolutionopen => fixed
2012-02-05 12:51ycastonguayStatusresolved => assigned
2012-02-05 12:59svnCheckin
2012-02-05 12:59svnNote Added: 0000395
2012-02-05 13:42svnCheckin
2012-02-05 13:42svnNote Added: 0000396
2012-02-05 14:43svnCheckin
2012-02-05 14:43svnNote Added: 0000398
2012-02-05 16:00svnCheckin
2012-02-05 16:00svnNote Added: 0000399
2012-02-06 20:40svnCheckin
2012-02-06 20:40svnNote Added: 0000400
2012-02-06 20:42ycastonguayStatusassigned => resolved

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

Comment:
MPfm 0.5.2.0
- 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

(0000381)
svn   
2012-01-21 17:29   
The user admin has checked in files related to this issue (revision 278).

Comment:
MPfm 0.5.2.0
- Player: The loops and markers are now emptying the audio buffer when setting new audio positions.
          The loop position wasn't working after the last check-in.

Related to issue 0000168 and issue 0000275.

Files modified:
U MPfm/branches/current/MPfm/frmMain.cs
U MPfm/branches/current/MPfm.Player/Player.cs
U MPfm/branches/current/MPfm.Sound/Bass.Net/Channel.cs

(0000395)
svn   
2012-02-05 12:59   
The user admin has checked in files related to this issue (revision 290).

Comment:
MPfm 0.5.2.0
- Player: Added list of sync procs for triggering the PlaylistIndexChanged event and change stream sample rate if needed.
          Still have a bit more work to do though.

Related to issue 0000275.

Files modified:
U MPfm/branches/current/MPfm/frmMain.cs
U MPfm/branches/current/MPfm.Player/MPfm.Player.csproj
A MPfm/branches/current/MPfm.Player/Objects/PlayerSyncProc.cs
U MPfm/branches/current/MPfm.Player/Player.cs

(0000396)
svn   
2012-02-05 13:42   
The user admin has checked in files related to this issue (revision 291).

Comment:
MPfm 0.5.2.0
- Player: Added the RemoveSyncCallbacks method. Some bug fixes too.

Related to issue 0000275.

Files modified:
U MPfm/branches/current/MPfm.Player/Player.cs

(0000398)
svn   
2012-02-05 14:43   
The user admin has checked in files related to this issue (revision 292).

Comment:
MPfm 0.5.2.0
- Player: Moved the PlaylistIndexChanged event to the PlayerSyncProc method. It now works very well.
          It still needs a bit of testing to make sure there are no bugs.
- Player: Added code to switch main stream sample rate to the PlayerSyncProc method. It now switches sample rate
          right when the audio file changes.

Related to issue 0000158 and issue 0000275.

Files modified:
U MPfm/branches/current/MPfm.Player/Player.cs

(0000399)
svn   
2012-02-05 16:00   
The user admin has checked in files related to this issue (revision 293).

Comment:
MPfm 0.5.2.0
- Player: Fixed bugs with sync procs not setting correctly the second time.

Related to issue 0000275.

Files modified:
U MPfm/branches/current/MPfm.Player/Player.cs

(0000400)
svn   
2012-02-06 20:40   
The user admin has checked in files related to this issue (revision 294).

Comment:
MPfm 0.5.2.0
- Player: Fixed bug where the offset position would not be correct when switching sample rates.

Related to issue 0000275.

Files modified:
U MPfm/branches/current/MPfm.Player/Player.cs