Modified by: dyek real.com
Date: 11/5/2007
Project: Helix Player
Synopsis:
Replace random playback with real Playlist Shuffle /
Playlist records error and continues.
Overview:
Implemented a better Shuffle by replacing random playback
with
"real Shuffle" (all clips played once) and by
emulating
normal Shuffle in incremental random-select operations.
This implementation should perform better in large Playlist
as compared
to shuffling huge list right in the beginning.
It simplifies adding and removing Playlist entries after
Shuffle-playback started.
It also has a nice property that memory usage is
incrementally larger,
corresponding to the number of clips played (not that it is
very
substantial.)
Also fixed bugs where the Playlist didn't continue with
subsequent clips after an error or an Upgrade Request.
Now, the Playlist logs the error message "in the error
badge" and then
continues playing back subsequent clips.
Previous button in Shuffle mode now corresponds to the
actual (random)
clips played.
The behavior of Previous and Next buttons is working well
enough to be
checked in, but more work is needed to implement behavior
identical
to other players and to fix some defects.
I'm hoping to gather all Previous and Next buttons' policies
code in
one or two places and make it/them object(s).
As it is now, the policies/code are scattered all over the
places.
Files Modified:
player/app/gtk/playlistdialog.cpp
player/app/gtk/mainapp.cpp
player/app/gtk/playlistdialog-private.h
player/common/gtk/hxplaylist.cpp
player/common/gtk/pub/hxplaylist.h
Image Size and Heap Use impact (Client -Only):
None.
Platforms and Profiles Affected:
Linux
Distribution Libraries Affected:
None.
Distribution library impact and planned action:
None.
Platforms and Profiles Build Verified:
Profile: helix_client_all_define
Platform: Fedora Core 6
Platforms and Profiles Functionality verified:
Profile: helix_client_all_define
Platform: Fedora Core 6
Branch: HEAD
Copyright assignment: I am a RealNetworks employee.
--
Daniel Yek.
_______________________________________________
Player-dev mailing list
Player-dev helixcommunity.org
http://lists.helixcommunity.org/mailman/listinfo/play
er-dev
|