Commit Graph
212 Commits
Author SHA1 Message Date
Unknown W. Brackets f60aef2e16 Add a more specific interface for video frames.
Since we know more about them.  No functional change yet.
2016-01-17 12:57:26 -08:00
Unknown W. Brackets d6cd3bd5ad Remove some unused variables. 2015-12-23 15:22:28 -08:00
Unknown W. Brackets 2450724be2 Make Memory::Memcpy() execute memchecks directly.
This makes it easier to handle breakpoints in HLE.
2015-04-05 18:09:20 -07:00
Unknown W. Brackets fcf0518223 Update all the HLE tables with arg and ret info. 2015-03-22 20:51:55 -07:00
Lioncash 0e3d68e27f scePsmf: Remove unnecessary conditions
tempBuf is a stack-allocated array, and filehandle has a check for it above this conditional.
2014-12-10 23:30:19 -05:00
Lioncash 4ccb838306 Core: Mark some module functions as static 2014-12-08 04:40:08 -05:00
Lioncash a962bc5a6c Mark some functions as const 2014-12-07 17:08:13 -05:00
Unknown W. Brackets 9d97eb5b12 Oops, fix an old typo.
Thanks Lioncash.  This broke a small range of old savestates.
2014-12-03 12:49:52 -08:00
Lioncash f830d5dec7 Core: Mark some functions as const 2014-12-03 15:16:11 -05:00
Unknown W. Brackets 3fbab33c91 Only loop at video end.
In case of a short video that runs out of data but isn't ready to loop
yet.
2014-08-17 15:46:04 -07:00
Henrik Rydgard 8560e317d0 Reload the stream on loop. Fixes #6703. Thanks to @unknownbrackets 2014-08-17 22:29:01 +02:00
Unknown W. Brackets 3bd945c2a8 Ignore displaybuf in psmfplayer when warming up.
Should fix #6704.
2014-08-10 21:56:05 -07:00
Henrik Rydgard b7ac539420 Fix crash after loading state from within Psmf movie
(a variable was not initialized)
2014-07-28 00:01:28 +02:00
Unknown W. Brackets c7a2753a00 Fix savestates when there are psmfplayers.
Oops.  Fixes #6613.
2014-07-25 09:19:07 -07:00
Unknown W. Brackets ae13d51cef Don't skip the first psmf frame when syncing audio.
Fixes #6374.
2014-06-20 09:07:18 -07:00
Unknown W. Brackets aa3a429a0b Avoid unaligned 32 bit reads.
They make Symbian do odd things.
2014-06-05 01:12:27 -07:00
Unknown W. Brackets c142207a93 Fix a few warnings, mostly type comparisons. 2014-05-31 21:42:57 -07:00
Unknown W. Brackets df22d0609f End the video when we run out of packets.
If there are no audio or video packets left, even if we haven't hit the
pts, the video is over.
Fixes #6135, hanging in Chinese translation of Clannad.
2014-05-25 18:45:31 -07:00
Unknown W. Brackets 213646b218 Correct errors in minor psmfplayer funcs. 2014-05-24 15:35:51 -07:00
Unknown W. Brackets 68bccebdeb Clear the psmfplayer handle on delete. 2014-05-24 14:13:18 -07:00
Unknown W. Brackets c651a0d1e9 Correct status check in scePsmfPlayerStop(). 2014-05-24 12:46:34 -07:00
Unknown W. Brackets 64df42d613 Don't change status in scePsmfPlayerBreak().
It was changed to INIT in d37100b30a, but I
think that only fixed the game because STANDBY was wrong.  Not changing
the status is the correct behavior.
2014-05-24 12:41:40 -07:00
Unknown W. Brackets d4e548013e Don't zero paused, but do zero end in psmfplayer.
To make sure the video/audio sync up.

If an audio frame was already decoded, it should technically be returned,
but after that it will return an error.
2014-05-24 01:31:50 -07:00
Unknown W. Brackets 222be04b38 Cleanup err codes in scePsmfPlayerGetAudioData().
Even if there's no *more* audio, if the current audio is valid return 0.
2014-05-24 01:10:26 -07:00
Unknown W. Brackets bc661f4f10 Clean up a duplicate if branch. 2014-05-23 23:02:23 -07:00
Unknown W. Brackets 28a9f7155a Handle a default video with of 0 in psmfplayer. 2014-05-23 23:01:26 -07:00
Unknown W. Brackets c03aa31240 Write video frames even while paused.
This function just writes the video data to the buffer if at all possible.
2014-05-23 23:00:48 -07:00
Unknown W. Brackets 13b735fd02 Validate more params in scePsmfPlayerGetVideoData. 2014-05-23 23:00:01 -07:00
Unknown W. Brackets ab57bcd4b3 Fix errors and scheduling in psmfplayer stop. 2014-05-22 23:41:38 -07:00
Unknown W. Brackets 75e4575ffe Properly schedule psmfplayer video finish.
Fixes #2251, hurray.
2014-05-22 23:40:44 -07:00
Unknown W. Brackets a2031cdc62 scePsmfPlayerGetVideoData() keeps going at end.
Even if the video has ended, this happily returns the last frame (with the
same pts value) over and over.  Audio or no audio.

It only returns no data when it's called too early.
2014-05-22 22:19:10 -07:00
Unknown W. Brackets e79d700bf0 Fix error codes in scePsmfPlayerGetVideoData(). 2014-05-22 22:17:42 -07:00
Unknown W. Brackets da03308bfa Small correction to psmfplayer seeking.
Should be the specific position after the fileoffset, and should be offset
by the start pts thing...
2014-05-22 00:34:47 -07:00
Unknown W. Brackets 1c4053f3c6 Correct scePsmfPlayerUpdate() finished timing.
With or without audio, it always sets the end on the second call after the
last frame.  Makes sense.
2014-05-22 00:08:18 -07:00
Unknown W. Brackets 346f725334 Don't allow seeking without an EPmap. 2014-05-18 21:58:43 -07:00
Unknown W. Brackets aafc8f1cec Validate and report initial psmfplayer playMode.
We only support play and pause, but they're the only ones I've seen.
2014-05-18 21:41:15 -07:00
Unknown W. Brackets 0c77d3c2ea Delay scePsmfPlayerStart() when seeking.
It seems to only delay when it was already playing.
2014-05-18 20:59:18 -07:00
Unknown W. Brackets ceebdca2fb Check scePsmfPlayerStart() params like the PSP.
It doesn't care if there's actually audio data here.
2014-05-18 20:48:02 -07:00
Unknown W. Brackets cd9d85caff Add a delay when setting the psmfplayer file.
This roughly matches the delay that occurs on a real PSP, during which
other threads can run.
2014-05-18 20:43:10 -07:00
Unknown W. Brackets 923189ab47 Prevent a crash on bogus data in psmfplayer. 2014-05-18 20:30:58 -07:00
Unknown W. Brackets 242fe2f3a9 scePsmfPlayerGetVideoData() writes every frame.
Thought it didn't due to dcache not being invalidated.  Fixes #6085.
2014-05-18 19:26:05 -07:00
Unknown W. Brackets 55fd30b520 Skip a bit of work when syncing video/audio. 2014-05-18 19:20:34 -07:00
Unknown W. Brackets f7424c6671 Validate the psmf address in scePsmfSetPsmf().
Just to prevent crashes, don't think it's happening anyway.
2014-05-15 01:11:50 -07:00
Unknown W. Brackets a5e374fc57 Only warn when getting pts without any frame yet. 2014-05-15 00:30:06 -07:00
Unknown W. Brackets a429e5f8d6 Defer psmf seeking to Update() calls, use epmap.
This improves performance significantly.
2014-05-15 00:14:27 -07:00
Unknown W. Brackets b0ebcfd087 Allow creating a Psmf from non-PSP RAM.
This way we can reuse the epmap reading code, etc.
2014-05-15 00:10:01 -07:00
Unknown W. Brackets 8404a52ab9 Fix typo in scePsmfPlayerStart() rewind. 2014-05-12 07:33:00 -07:00
Unknown W. Brackets 578e4e049b When psmfplayer video is behind audio, skip frames.
This is what the PSP does.  Basically the audio pts drives sync.
2014-05-11 21:51:28 -07:00
Unknown W. Brackets 3205964204 Validate and support stream params in psmfplayer. 2014-05-11 14:23:14 -07:00
Unknown W. Brackets 66a480ba95 scePsmfPlayerStart() can also rewind. 2014-05-11 14:23:13 -07:00