#
8dd3060d |
|
12-Apr-2010 |
Axel Dörfler <axeld@pinc-software.de> |
* The AudioProducer now correctly handles late producer notices by ignoring extra notices for buffers already scheduled. * Also, the AudioSupplier/AudioReader classes now know their initial latency, and the AudioProducer is now using that one to advertize its own initial latency - this fixes late buffers on start, causing the latency to grow too large. * Cleanup here and there. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36199 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
c60fcc87 |
|
23-May-2009 |
Stephan Aßmus <superstippi@gmx.de> |
* Changed the PlaylistItem interface to be hopefully more flexible. It can probably still be improved. * Renamed EntryRefPlaylistItem to just FilePlaylistItem. * Moved the "move into Trash" and "restore from Trash" implementation into FilePlaylistItem. Also added what's needed to allow Tracker to restore the entry itself. * Refactored everything to make Playlist use PlaylistItems instead of entry_refs and all that entails... * The transition to virtualize PlaylistItems is not complete yet in the Controller, since it still uses BMediaFile there. But it's much easier to change that now. * Objects which keep a PlaylistItem around do correct reference counting, but some commands could be simplified if they were using references as well. It still should work correctly, though, if I didn't miss anything. It should also fix theoretical situations of encountering out-of-memory while messing with the Playlist leading to inconsistent state between Undo/Redo and then leaking items because of that. * Added the discussed change that MediaPlayer checks it's own supported types before rejecting a file by super type. (untested) * When importing playlist items, the currently playling item is better maintained during Undo/Redo. * Some debugging code added in MediaTrackAudioSupplier, no functional changes. * Fixed a number of coding style issues and automatic whitespace cleanup. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30834 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
e6ac2ec4 |
|
05-Jul-2008 |
Stephan Aßmus <superstippi@gmx.de> |
* The window would not reset the audio/video track to 0 on a new file if the Controller would keep the last audio/video track index across files (which would be nice for certain situations). * Better error message for unsupported files, especially for the B_MEDIA_NO_HANDLER error. * In the Controller, try to obtain the track duration and ignore tracks that return a bogus duration. I have some MP3 files on ZETA that are obviously not handled correctly by the ZETA mp3 decoder. Previously, the player would just sit there and appeared to have some other internal error. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26261 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
0fc56ed5 |
|
30-May-2008 |
Stephan Aßmus <superstippi@gmx.de> |
* Moved a bunch of non-primary interface classes into a new subfolder "interface" * Complete reimplementation of the playback engine using Media Nodes: - Seeking video files does not appear to lockup the playback anymore, but works on a frame accurate level even for keyframe based streams. There is currently a problem with certain container formats, the audio track reports a "Device Seek Error" in certain conditions. In that case audio goes silent, and can be restarted by going back to the beginnings of the stream. - Video overlays are now supported. - It would be possible to connect the output of the MediaPlayer to other applications or dormant media nodes. * Known regressions: - The volume slider has currently no effect anymore. - Switching the audio track during playback has a known race condition and can crash the player. - The new engine is not as "light weight" as the old one. I tagged the previous implementation in tags/components/mediaplayer-engine-v1. It does not seem to have any noticable effect though. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25725 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
2a72b9fe |
|
05-Jun-2007 |
Stephan Aßmus <superstippi@gmx.de> |
* re-enabled the InfoWin git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21335 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
5fa5e5fe |
|
29-May-2007 |
Stephan Aßmus <superstippi@gmx.de> |
* added notification support to Playlist and Controller * added AbstractLOAdapter by Ingo Weinhold which makes notifications asynchronous * removed "Player" interface/concept, replaced it by the notification mechanism (window loads new file when "current" ref index changes in Playlist) * removed some cross classes dependencies * the wind buttons are not displayed anymore for now * lots of changes to the Controller - the decoder/player threads are kept running for the entire lifetime of the Controller object (in essence, makes it possible to playback seamless) - abstracted BMediaTrack usage into "Video-" and "AudioSupplier" objects (the BMediaTrack pointers are only still there, because I have not gotten around to fix the messy/hacky InfoWindow) - reaching the end of the stream will trigger a notification, so that the next file from the playlist is played - fSoundOutput is managed by the Controller - tried to make seeking seem more controlled (slider doesn't jump back to previous position) - playback position is correctly updated in GUI - volume is maintained independend of SoundOutput so that it can be transfered from one to the next output - performance time is maintained correctly (?) even if no audio stream is present * work in progress Playlist window (drag sorting does not work yet!) * rearranged menus a bit * rearranged overlay code in the VideoView, but it cannot work like it is currently designed, since the buffers need to be switched all at once, which the video decoding thread is not doing yet * dragging files into the main window with shift held down appends to the existing playlist * dropping folders adds files recursively * pressing space toggles playback (instead of changing some settings of the GUI) * fixed some more minor issues or unimplemented stuff in the UI git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21276 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
8dd3060da4f50b8de2830fd93216b186efec7c4f |
|
12-Apr-2010 |
Axel Dörfler <axeld@pinc-software.de> |
* The AudioProducer now correctly handles late producer notices by ignoring extra notices for buffers already scheduled. * Also, the AudioSupplier/AudioReader classes now know their initial latency, and the AudioProducer is now using that one to advertize its own initial latency - this fixes late buffers on start, causing the latency to grow too large. * Cleanup here and there. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36199 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
c60fcc87e04b0af21ed9f01581b23d1f714a366f |
|
23-May-2009 |
Stephan Aßmus <superstippi@gmx.de> |
* Changed the PlaylistItem interface to be hopefully more flexible. It can probably still be improved. * Renamed EntryRefPlaylistItem to just FilePlaylistItem. * Moved the "move into Trash" and "restore from Trash" implementation into FilePlaylistItem. Also added what's needed to allow Tracker to restore the entry itself. * Refactored everything to make Playlist use PlaylistItems instead of entry_refs and all that entails... * The transition to virtualize PlaylistItems is not complete yet in the Controller, since it still uses BMediaFile there. But it's much easier to change that now. * Objects which keep a PlaylistItem around do correct reference counting, but some commands could be simplified if they were using references as well. It still should work correctly, though, if I didn't miss anything. It should also fix theoretical situations of encountering out-of-memory while messing with the Playlist leading to inconsistent state between Undo/Redo and then leaking items because of that. * Added the discussed change that MediaPlayer checks it's own supported types before rejecting a file by super type. (untested) * When importing playlist items, the currently playling item is better maintained during Undo/Redo. * Some debugging code added in MediaTrackAudioSupplier, no functional changes. * Fixed a number of coding style issues and automatic whitespace cleanup. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30834 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
e6ac2ec43e8d5c0215f33734b2bfbb1e69c138c8 |
|
05-Jul-2008 |
Stephan Aßmus <superstippi@gmx.de> |
* The window would not reset the audio/video track to 0 on a new file if the Controller would keep the last audio/video track index across files (which would be nice for certain situations). * Better error message for unsupported files, especially for the B_MEDIA_NO_HANDLER error. * In the Controller, try to obtain the track duration and ignore tracks that return a bogus duration. I have some MP3 files on ZETA that are obviously not handled correctly by the ZETA mp3 decoder. Previously, the player would just sit there and appeared to have some other internal error. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26261 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
0fc56ed57bdd5d2d44f33edd17d94210704613bd |
|
30-May-2008 |
Stephan Aßmus <superstippi@gmx.de> |
* Moved a bunch of non-primary interface classes into a new subfolder "interface" * Complete reimplementation of the playback engine using Media Nodes: - Seeking video files does not appear to lockup the playback anymore, but works on a frame accurate level even for keyframe based streams. There is currently a problem with certain container formats, the audio track reports a "Device Seek Error" in certain conditions. In that case audio goes silent, and can be restarted by going back to the beginnings of the stream. - Video overlays are now supported. - It would be possible to connect the output of the MediaPlayer to other applications or dormant media nodes. * Known regressions: - The volume slider has currently no effect anymore. - Switching the audio track during playback has a known race condition and can crash the player. - The new engine is not as "light weight" as the old one. I tagged the previous implementation in tags/components/mediaplayer-engine-v1. It does not seem to have any noticable effect though. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25725 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
2a72b9fead28a8cb1cad04c7a8bb023adb41bea0 |
|
05-Jun-2007 |
Stephan Aßmus <superstippi@gmx.de> |
* re-enabled the InfoWin git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21335 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
5fa5e5fea7e2752ce0f9eb514b82f7c34ea308e6 |
|
29-May-2007 |
Stephan Aßmus <superstippi@gmx.de> |
* added notification support to Playlist and Controller * added AbstractLOAdapter by Ingo Weinhold which makes notifications asynchronous * removed "Player" interface/concept, replaced it by the notification mechanism (window loads new file when "current" ref index changes in Playlist) * removed some cross classes dependencies * the wind buttons are not displayed anymore for now * lots of changes to the Controller - the decoder/player threads are kept running for the entire lifetime of the Controller object (in essence, makes it possible to playback seamless) - abstracted BMediaTrack usage into "Video-" and "AudioSupplier" objects (the BMediaTrack pointers are only still there, because I have not gotten around to fix the messy/hacky InfoWindow) - reaching the end of the stream will trigger a notification, so that the next file from the playlist is played - fSoundOutput is managed by the Controller - tried to make seeking seem more controlled (slider doesn't jump back to previous position) - playback position is correctly updated in GUI - volume is maintained independend of SoundOutput so that it can be transfered from one to the next output - performance time is maintained correctly (?) even if no audio stream is present * work in progress Playlist window (drag sorting does not work yet!) * rearranged menus a bit * rearranged overlay code in the VideoView, but it cannot work like it is currently designed, since the buffers need to be switched all at once, which the video decoding thread is not doing yet * dragging files into the main window with shift held down appends to the existing playlist * dropping folders adds files recursively * pressing space toggles playback (instead of changing some settings of the GUI) * fixed some more minor issues or unimplemented stuff in the UI git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21276 a95241bf-73f2-0310-859d-f6bbb57e9c96
|