Unknown W. Brackets
a0484dce65
Psmf: Use packets for end in all versions.
...
Turns out no version of the library looks at the pts for the end.
2016-08-15 21:00:10 -07:00
sum2012
00a379e9f0
Psmf: Ignore last timestamp with old PsmfPlayer libs
...
Until 5.50
Fix #6574
2016-08-16 03:57:36 +08:00
Unknown W. Brackets
f23391578f
Psmf: Ignore stream size with old PsmfPlayer libs.
...
Until 5.50, the stream size was not used. See #6574 .
2016-08-14 17:24:29 -07:00
Henrik Rydgård
eac18489e6
Merge pull request #8867 from unknownbrackets/mpeg
...
Improve mpeg parsing / corruption issues
2016-08-06 18:14:17 +02:00
Unknown W. Brackets
fd546ff21d
Fix some type comparison warnings.
2016-08-05 10:47:45 -07:00
Unknown W. Brackets
558b4620e8
Mpeg: Parse video streams from PSMF header.
...
Without doing this, FFmpeg will try to probe the streams to detect them
instead. When it does this, sometimes it tries to read beyond the data
that's available - and then gets confused by EOFs.
Parsing this way allows us to control the situation.
An example is Valkyrie Profile, corruption in the first frames of the
second video during the intro. Thi doesn't fix it yet, but now it's just
a matter of buffering.
2016-07-24 15:58:06 -07:00
Unknown W. Brackets
80d72acaec
Psmf: Correct default stream.
...
Fixes Jeanne d'Arc, others.
2016-06-07 20:41:13 -07:00
Unknown W. Brackets
bda1956f90
Psmf: Enable error check on player create.
...
Reporting makes it look like this should be safe.
2016-06-04 18:17:38 -07:00
Unknown W. Brackets
cf2796de41
Psmf: Allow each struct to have its own stream.
...
Some games will create a clone, and then set a different stream on it,
e.g. one for the video, another for the audio stream.
2016-06-04 18:17:37 -07:00
Unknown W. Brackets
b13c68a373
Psmf: Correct get video/audio info errors.
...
This actually grabs from the currently specified stream, and fails if it's
the wrong type. Additionally, return stream-specific info... unlikely to
matter, hard to imagine a video with a mono and stereo stream.
Also reduces log verbosity.
2016-06-04 18:17:37 -07:00
Unknown W. Brackets
185ad781f3
Psmf: Add better error handling for SetPsmf.
...
Checked on different devkit versions in case of changes.
2016-06-04 18:17:36 -07:00
Unknown W. Brackets
91887ad85c
Psmf: Correct errors in current stream num.
2016-05-31 09:55:51 -07:00
Unknown W. Brackets
0a00777403
Psmf: Only write current type/channel if valid.
...
And improve error handling in general.
2016-05-31 09:55:51 -07:00
Unknown W. Brackets
7ad07ca82e
Psmf: Handle stream specification per tests.
...
These seem buggy, but generally sane.
2016-05-31 09:55:50 -07:00
Unknown W. Brackets
cca9a73105
Psmf: Start at stream 0 when not specified.
2016-05-31 09:55:49 -07:00
Unknown W. Brackets
510db2051d
Psmf: Detect PCM streams from private stream info.
...
This logic comes from Jpcsp. Let's report though and see if there's more.
2016-05-31 09:55:49 -07:00
Unknown W. Brackets
74239c199d
Psmf: Allow AUDIO type when specifying streams.
2016-05-31 09:55:48 -07:00
Unknown W. Brackets
5f7c95f249
Psmf: Count PCM as an AUDIO stream as well.
2016-05-31 09:55:47 -07:00
Unknown W. Brackets
9df727f94f
Psmf: Stop pretending streamMap is a vector.
2016-05-31 09:55:47 -07:00
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