Commit graph

6026 commits

Author SHA1 Message Date
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
6c52ec524d Fix typo (warning.) 2014-05-23 08:47:12 -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
b9ede6aade Add a class to create helper threads from HLE.
This should be usable from sceIo as well.
2014-05-22 23:38:21 -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
288d867588 Fix a type comparison warning. 2014-05-21 08:00:31 -07:00
Unknown W. Brackets
29bd4b63e4 Fix a bunch of formatting warnings. 2014-05-21 07:59:58 -07:00
Unknown W. Brackets
67fc607671 Oops, dumb mistake in reporting. 2014-05-21 01:17:15 -07:00
Unknown W. Brackets
5c13d482e0 When reporting module versions, include devkit ver.
Looks like this'll be the ticket for scePsmfPlayer, which has different
functionality in different versions (including when and how end of video
is flagged, which FF2 depends on.)

Now let's see what versions are out there.
2014-05-21 01:11:33 -07:00
Henrik Rydgård
90c3768ba8 Merge pull request #6101 from hilesaz/master
Fix nonblocking ptpConnect on Windows
2014-05-20 15:29:51 +02:00
Henrik Rydgård
2cfc6bb880 Merge pull request #6100 from sum2012/sceMpegAvcCsc
Revert "Apply hleDelayResult to sceMpegAvcCsc"
2014-05-20 14:11:39 +02:00
Henrik Rydgård
c5d5a696a1 Merge pull request #6104 from unknownbrackets/psmfplayer
Recopy the video in between frames in psmfplayer, other minor fixes
2014-05-20 10:04:04 +02: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
sum2012
c23f4402fd Temp disable SCE_UTILITY_STATUS_SCREENSHOT_UNKNOWN 2014-05-19 05:27:05 +08:00
Bovine
c76548377c Fix nonblocking ptpConnect on Windows
According to
http://msdn.microsoft.com/en-us/library/windows/desktop/ms737625%28v=vs.85%29.aspx
"[...] it is not recommended that applications use multiple calls to
connect to detect connection completion.  If they do, they must be
prepared to handle WSAEINVAL and WSAEWOULDBLOCK error values the same
way that they handle WSAEALREADY, to assure robust operation."

Ideally socket->state should be set to a different state and select()
used to poll sockets until state can be switched to closed or
established.  Changes to socket->state are visible to games as so
probably should not be done without testing.
2014-05-18 06:41:02 -07:00
sum2012
f047320a9c Revert "Apply hleDelayResult to sceMpegAvcCsc"
Fix video 's screen dislocation in Bleach heat of soul 6
#5535
2014-05-18 12:25:32 +08:00
sum2012
b8d82e0a92 Correct Memory check in sysclib_memset 2014-05-18 04:23:10 +08:00
sum2012
bc36555f24 sysclib_memset change to WrapU_UII 2014-05-18 04:20:48 +08:00
sum2012
21c301962b Add some kernal module
Find in bugz Homebrew
2014-05-17 23:06:01 +08:00
Unknown W. Brackets
5b24e0107f x86jit: Correct vsat0/vsat1 handling. 2014-05-16 01:04:58 -07:00
Unknown W. Brackets
ccc5458a84 x86jit: Correctly handle NaNs in vfpxd sat clamps.
May be a small performance jit, but we've seen games with bugs because of
NaNs recently, so better to be safe.
2014-05-16 01:04:57 -07:00
Unknown W. Brackets
69b0b622be armjit: Fix D-prefix sat clamp NAN handling.
They should leave NAN alone.
2014-05-16 01:04:57 -07:00
Unknown W. Brackets
bc32f0e0b2 armjit: Correct disabled vslt NaN handling.
Can possibly enable?
2014-05-16 01:04:57 -07:00
Unknown W. Brackets
a3ad238a44 Add notes for proper NaN handling in vmin/vmax. 2014-05-16 01:04:56 -07:00
Unknown W. Brackets
2ad06d777b Eat cycles and resched in sceGeContinue().
Fixes the gpu/ge/queue test.
2014-05-15 22:45:09 -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
16f08cfde0 Oops, always grab the first, not latest, audio pts.
In case it wraps around.
2014-05-15 01:09:38 -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
e522eea2b4 Improve psmf seek perf and audio sync. 2014-05-15 00:28:54 -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