Commit Graph

61 Commits

Author SHA1 Message Date
Matthew Hoops
da604b530b VIDEO: Allow for audio track selection in video types that support it 2014-01-11 18:43:41 -05:00
Matthew Hoops
254f0fcc06 VIDEO: Improve accuracy of getFrameTime() and getFrameAtTime() 2013-08-28 00:05:18 -04:00
Matthew Hoops
7a8689538a VIDEO: Use the main isSeekable() in seekToFrame() 2013-08-28 00:05:13 -04:00
Matthew Hoops
85614b0de4 VIDEO: Separate external and internal tracks
Prevents subclasses from having access to any audio track added from another file
2013-08-28 00:05:05 -04:00
Matthew Hoops
6e9390feb8 VIDEO: Don't allow VideoDecoder::seek() to be overridden
A new seekIntern() that performs the actual seeking is to be overriden instead. Having the caller override seek() and then call VideoDecoder::seek() kind of defeated the purpose of stopping/starting the audio.
2013-08-06 22:26:15 -04:00
Matthew Hoops
1d778360fe VIDEO: Fix potential memory leak when adding a stream file track 2013-04-15 18:35:11 -04:00
Matthew Hoops
9ae56146bb VIDEO: Add API changes to allow videos to be played backwards 2012-12-15 20:41:41 -05:00
Matthew Hoops
0bcd441405 VIDEO: Fix seeking when playing with a custom rate 2012-12-13 17:46:02 -05:00
Matthew Hoops
81ea69cd33 VIDEO: Fix setRate when _lastTimeChange is less than a frame
Thanks to bgK for noticing
2012-12-09 13:56:06 -05:00
Matthew Hoops
3b581a3b68 VIDEO: Rework the way the next video track is selected
Fixes missing the last frame in some decoders
2012-12-02 22:15:11 -05:00
Matthew Hoops
121faeaa94 VIDEO: Add preliminary API functions for seeking to a frame 2012-11-26 17:44:36 -05:00
Matthew Hoops
db908fcdc4 VIDEO: Add support for playing videos at a modified speed
Currently this only works for positive (forward) playback, but will eventually work for negative (backward).
2012-11-24 01:03:36 -05:00
Matthew Hoops
64e1483102 VIDEO: Make sure track pause status is reset upon stop too 2012-09-23 21:04:40 -04:00
Matthew Hoops
48c70d872e VIDEO: Fix pausing audio in videos 2012-09-22 15:03:15 -04:00
Matthew Hoops
8b46b64ad4 VIDEO: Fix getTime() after a stop() call 2012-09-19 00:36:03 -04:00
Matthew Hoops
8808393b3a VIDEO: Do not close/rewind videos after a stop()
It makes more sense to do this more like a hard "pause" and let the caller stop()/rewind() if they want
2012-09-11 17:38:33 -04:00
Matthew Hoops
058b9b9aca VIDEO: Restrict setEndTime()'s affects to videos that are playing 2012-09-05 11:27:01 -04:00
Matthew Hoops
ddffd74094 VIDEO: Improve setEndTime()
endOfVideo() and needsUpdate() are now more accurate
2012-08-31 21:47:52 -04:00
Matthew Hoops
dcdb40f79e VIDEO: Adjust start time after calling rewind() in start()
This wasn't an actual bug, but it makes more sense this way
2012-08-23 23:11:09 -04:00
Matthew Hoops
e24fd2ffe6 VIDEO: Cleanup VideoDecoder a bit
Functions and their comments now line up better
2012-08-16 22:49:22 -04:00
Matthew Hoops
18823198ad VIDEO: Merge AdvancedVideoDecoder into VideoDecoder 2012-08-16 14:00:14 -04:00
Matthew Hoops
7569ec7dc0 VIDEO: Rename setStopTime() to setEndTime()
To better differentiate with stop()
2012-08-16 13:34:28 -04:00
Matthew Hoops
fb35c7f46f VIDEO: Remove setSystemPalette() 2012-08-16 13:30:32 -04:00
Matthew Hoops
9e7f0e4753 VIDEO: Begin removing some of the deprecated functions from VideoDecoder 2012-08-16 12:27:05 -04:00
Matthew Hoops
48c591a233 VIDEO: Don't allow adding external stream files to unopened videos 2012-08-12 08:33:45 -04:00
Matthew Hoops
a458b91e7e VIDEO: Add set/getStopTime functions to AdvancedVideoDecoder
A video can now be stopped at a requested time
2012-08-12 00:09:23 -04:00
Matthew Hoops
220ca52f43 VIDEO: Fix getTime() when a video is not playing 2012-08-07 14:24:32 -04:00
Matthew Hoops
dd10e7191e VIDEO: Move Track's start()/stop() functions to AudioTrack 2012-07-29 12:38:51 -04:00
Matthew Hoops
90b72e31e4 VIDEO: Cleanup AdvancedVideoDecoder 2012-07-27 11:01:42 -04:00
Matthew Hoops
a364ef8f0f VIDEO: Remove Track::getStartTime()
That should be handled internally instead
2012-07-27 11:01:21 -04:00
Matthew Hoops
1f67c9dbbe VIDEO: Reset pause time when seeking/rewinding 2012-07-26 23:45:05 -04:00
Matthew Hoops
df5d6f7d08 VIDEO: Force an update after a seek 2012-07-26 23:42:35 -04:00
Matthew Hoops
af6e98ba01 VIDEO: Ignore finished video tracks in findNextVideoTrack() 2012-07-26 23:20:25 -04:00
Matthew Hoops
c0cece8d13 VIDEO: Add functions for default high color PixelFormat
To be used by video that converts from YUV to RGB
2012-07-25 11:19:36 -04:00
Matthew Hoops
714c6ae119 VIDEO: Add internal helper function for checking on video track end status 2012-07-25 00:44:22 -04:00
Matthew Hoops
09f1519d6d VIDEO: Stop and restart tracks when seeking/rewinding 2012-07-25 00:39:21 -04:00
Matthew Hoops
84e0b3a167 VIDEO: Add helper functions to easily add an external audio track 2012-07-24 13:23:45 -04:00
Matthew Hoops
3a780a63db VIDEO: Set _startTime when rewinding and seeking 2012-07-23 21:03:49 -04:00
Matthew Hoops
7654b20362 VIDEO: Merge the three Fixed* VideoTrack classes
Avoids diamond inheritance, which makes it impossible to downcast without rtti
2012-07-22 14:11:11 -04:00
Matthew Hoops
29541dc5f4 VIDEO: Hold tracks in an Array instead of a List
Decoders such as AVI will need to access them by index
2012-07-22 12:17:54 -04:00
Matthew Hoops
9bf17934d3 VIDEO: Take audio start time into account when syncing to audio 2012-07-22 00:58:38 -04:00
Matthew Hoops
067e02e90b VIDEO: Add StreamFileAudioTrack wrapper 2012-07-21 17:52:16 -04:00
Matthew Hoops
144b9ce918 VIDEO: Don't try to sync video off of finished audio tracks 2012-07-21 17:38:24 -04:00
Matthew Hoops
5cdb0f71a4 VIDEO: Fix AudioTrack::endOfTrack() 2012-07-21 17:30:43 -04:00
Matthew Hoops
fc1163ac28 VIDEO: Allow for disabling of automatic audio sync in AdvancedVideoDecoder 2012-07-21 17:30:06 -04:00
Matthew Hoops
1d565a2661 VIDEO: Fix volume/balance settings in AdvancedVideoDecoder 2012-07-21 17:11:09 -04:00
Matthew Hoops
c3cc3620c0 VIDEO: When adding tracks, keep them in sync with the main video status 2012-07-21 14:50:10 -04:00
Matthew Hoops
10341d2b57 VIDEO: Add getDuration() and getStartTime() functions to Track
The AdvancedVideoDecoder::getDuration() function now attempts to calculate duration based on the longest track.
2012-07-21 14:39:03 -04:00
Matthew Hoops
fb1edcd4fe VIDEO: Add getWidth()/getHeight()/getPixelFormat() functions to VideoTrack
The default implementations of those functions in AdvancedVideoDecoder now call into them.
2012-07-21 12:40:16 -04:00
Matthew Hoops
818c16bdd0 VIDEO: Add first draft of the new VideoDecoder API
It is currently named "AdvancedVideoDecoder" until all current VideoDecoders are converted to the new API.
2012-07-20 20:51:42 -04:00