Christoph Oelckers
fe106d9bfe
merge FileData and ResourceData.
2023-12-14 17:22:29 +01:00
Christoph Oelckers
96b3f1f5e0
removed unused variable in M_FindResponseFile and added file length check in ANM player.
2023-12-10 11:55:42 +01:00
Christoph Oelckers
fc84579319
let FileReader::Read return an opaque buffer instead of std::vector.
...
This can later allow returning a pointer to a static buffer from a cache without creating copies.
2023-12-10 09:07:49 +01:00
Christoph Oelckers
7a5a2858a2
yet even more GetChars calls added.
2023-10-07 23:29:24 +02:00
Christoph Oelckers
21d6eb99eb
use std::vector as return value for the FileReader's buffer readers.
2023-08-22 22:18:21 +02:00
Christoph Oelckers
d173c0453c
- handle all remaining places of sound ID conversions after removing the conversion operators.
2022-11-24 23:52:52 +01:00
Chris Robinson
9aee7415eb
Sync movie video playback to the audio, when possible
2022-10-14 07:10:06 +02:00
Chris Robinson
d2f8c57136
Make frame timing consistent between movie players
2022-10-10 08:33:23 +02:00
Chris Robinson
bf2e7c210d
Use a MovieAudioTrack for synchronized audio with MvePlayer
2022-10-10 08:33:23 +02:00
Chris Robinson
573784b37f
Handle the SoundStream in MvePlayer instead of InterplayDecoder
2022-10-10 08:33:23 +02:00
Chris Robinson
80bf62cb3c
Start the VPX audio track on the first frame
...
MoviePlayer::Start is called about a second (potentially) before
MoviePlayer::Frame starts getting called to actually play the video, causing
the audio to start early and require significant synchronization adjustment.
This isn't ideal to constantly check if the audio track needs to play in
MoviePlayer::Frame, but it's better than starting prematurely.
2022-10-10 08:33:23 +02:00
Chris Robinson
5e465a65e2
Make a common class to help with movie audio streams
2022-10-10 08:33:23 +02:00
Chris Robinson
d11e2ef1ac
Always output 16-bit samples from SmackerDecoder
2022-10-10 08:33:23 +02:00
Chris Robinson
1a692f5c28
Synchronize Smacker movie audio tracks
2022-10-10 08:33:23 +02:00
Chris Robinson
5d00b96e5f
Read Smacker video and audio data separately
2022-10-10 08:33:23 +02:00
Chris Robinson
7401e02a14
Include the source latency for movie audio synchronization
2022-10-10 08:33:23 +02:00
Chris Robinson
c825ff3543
Use a more reasonable buffer size for the movie audio stream
2022-10-10 08:33:23 +02:00
Chris Robinson
a2f0c1aee6
Update the audio offset when skipping a full update
2022-10-10 08:33:23 +02:00
Chris Robinson
1a233b08c3
Synchronize the VPX "soundtrack" with the frame clock
2022-10-10 08:33:23 +02:00
Chris Robinson
c808aad595
Play the VPX "soundtrack" as a SoundStream
2022-10-10 08:33:23 +02:00
Christoph Oelckers
b225a910a0
- Backend update from Raze
2022-10-09 13:44:43 +02:00
Christoph Oelckers
c62e14d2c1
- Backend update from Raze
...
Mostly cleanup and better separation of game/backend concerns.
2022-06-06 12:09:29 +02:00
Christoph Oelckers
0ee1cc85ec
- fixed: The IVF decoder never accounted for odd dimensions when applying the UV subsampling.
...
To simplify the code the 'optimized' loop was replaced with one iterating over all pixels - even in the worst of cases the little savings are hardly performance relevant.
2022-06-05 08:09:50 +02:00
Christoph Oelckers
7ed8d3b3e2
- screenjob. fixes from Raze
2022-04-26 20:50:35 +02:00
Christoph Oelckers
d994369fd0
- timer code fixes.
2022-04-26 20:50:35 +02:00
Christoph Oelckers
5aaabbeb01
- did some project file cleanup.
2022-04-26 20:50:34 +02:00
Christoph Oelckers
69a7715a02
- added all the prerequisites for the cutscene system from Raze:
...
* libvpx library
* libsmackerdec
* playmve
* MoviePlayer class.
* ScreenJob engine core.
2022-04-26 20:50:34 +02:00