Commit graph

102 commits

Author SHA1 Message Date
Unknown W. Brackets
2863e74e52 For now, ignore duplicate sceMpegInit()/Finish()'s.
Need to properly handle module unload for this to work right.

Fixes #2364.
2013-06-20 01:53:07 -07:00
oioitff
09d5a404e2 Both video/audio timestamp seem to start from firstTimeStamp in sceMpeg.
Fix video playback for Castlevania Dracula X Chronicles.
2013-06-13 21:03:17 +08:00
Henrik Rydgard
b8959b956b sceMpegGetUserDataAu: return ERROR_MPEG_NO_DATA. Add some notes for later implementing mpeg user data. Fixes part of #2172. Thanks to [unknown] 2013-06-11 19:27:02 +02:00
Henrik Rydgård
6b84743082 Merge pull request #2217 from oioitff/mpeg-fix
Add support for multiple video/audio stream.
2013-06-11 07:42:19 -07:00
oioitff
77a17cacc5 Add support for multiple video/audio stream. 2013-06-11 19:04:14 +08:00
Unknown W. Brackets
4cbd44a6ca Add fixes to sceMpegAvcDecodeYCbCr().
It seems a lot like sceMpegAvcDecode(), these are just copy/paste.
2013-06-10 23:18:08 -07:00
Henrik Rydgard
e115ed4187 Work-around crash in sceMpeg with bad ringbuffer address.
Add reminder on first run to access the ingame menu with ESC on windows.
2013-06-11 00:51:10 +02:00
oioitff
32fb534375 Improve mpeg timestamp.
Read 6 bytes timestamp instead.
2013-06-10 04:21:36 +08:00
Henrik Rydgard
51daa1f878 Delete the "Use Media Engine" option. 2013-06-08 22:53:36 +02:00
Unknown W. Brackets
14034fd9c1 PSP can decode directly to vram, so detect that.
Not sure if any games do this but I did it in a test.
2013-06-08 04:52:37 -07:00
Unknown W. Brackets
4de27773d2 Detect audio end separately from video end.
Fixes Crisis Core, broken by Wipeout Pure fix.
2013-06-08 03:00:50 -07:00
Unknown W. Brackets
0852d8734a Try to handle video end more correctly. 2013-06-08 03:00:49 -07:00
Unknown W. Brackets
6844c7cab6 Don't read more than total packets per mpeg put.
And add notes on how it's supposed to really work.
2013-06-08 03:00:47 -07:00
Unknown W. Brackets
8544cf2359 Delay sceMpegCreate() a bit to match PSP firmware. 2013-06-08 03:00:47 -07:00
Unknown W. Brackets
8b25545849 Don't allow sceMpegInit() twice. 2013-06-08 03:00:46 -07:00
oioitff
156c4ca78a Fix crash for invalid mpeg header. 2013-06-05 15:46:04 +08:00
oioitff
c913f92427 More improvement for mpeg pts.
The mpeglastTimeStamp is probably wrong in some videos. So a video is
end only if there is no more data for decoding.
2013-06-04 23:03:09 +08:00
oioitff
a9ba797ce5 Improve mpeg pts.
A real PSP return a value start from 0.
2013-06-03 17:00:58 +08:00
Unknown W. Brackets
b32a52f35c Convert videos directly to the desired format.
This still converts at least in some cases, but less.  But these seem
backwards, why are the BGR formats converting to RGB?
2013-06-02 00:31:16 -07:00
Unknown W. Brackets
3d1e426e4a Send games a free packet count that makes sense. 2013-06-01 15:33:47 -07:00
oioitff
0b23e0389f Rewrite and implement sceMpeg with MediaEngine. 2013-06-02 01:29:59 +08:00
Unknown W. Brackets
4f069a23d9 Since we don't use readlength yet, don't add it.
This would actually go negative often enough, making us consume packets
more slowly than we should, or even never finish consuming.  4 is probably
too small, though.
2013-05-26 17:59:13 -07:00
Unknown W. Brackets
45b72c8b4a Add a couple more unknown syscalls. 2013-05-23 23:41:10 -07:00
Unknown W. Brackets
8580780194 Add more unknown syscalls from reporting. 2013-05-22 01:19:25 -07:00
Unknown W. Brackets
86ce95a658 Add some syscall entries from reporting. 2013-05-19 22:12:38 -07:00
Jacky TSUI
95addc09b1 Separate sceMp3 from sceMpeg 2013-05-06 21:14:58 +08:00
Unknown W. Brackets
273080a48b Add delays to the sceMpegGet*Au() functions.
Mostly from JPCSP.  I'm having trouble building a good test that
replicates these, but this fixes #1198 and seems right.
2013-04-20 23:17:10 -07:00
Unknown W. Brackets
a296bba3e1 Also delay inside sceMpegAtracDecode().
This is just from JPCSP but we don't have the function working properly
yet anyway.
2013-04-20 22:42:51 -07:00
Unknown W. Brackets
3914742485 Make sceMpegAvcDecode() reschedule, based on tests.
Timing seems variable but this should be safe-ish.
2013-04-20 22:38:56 -07:00
Unknown W. Brackets
a232764728 Fix error code for empty ringbuffer in mpeg. 2013-04-20 22:16:41 -07:00
Unknown W. Brackets
1bb66ea7eb Respect looping in sceMp3Decode(). 2013-04-15 02:00:03 -07:00
Unknown W. Brackets
40067470c2 Initial sceMpegGetUserdataAu() from JPCSP.
Because I got the stub wrong, so now it does something.
2013-04-08 00:47:25 -07:00
Unknown W. Brackets
4974124587 Fix some small constant-comparison type warnings. 2013-04-05 20:58:35 -07:00
Unknown W. Brackets
832edb0a8f Fix some x64 type conversion warnings. 2013-04-05 20:29:20 -07:00
Unknown W. Brackets
b80a3e83c3 Reset video pts when registering new streams. 2013-04-01 07:56:43 -07:00
Unknown W. Brackets
7bc4b47b85 Don't wipe all streams in sceMpegFlushAllStreams().
Patapon and Patapon 2 didn't like it, sitll works in Crisis Core.
2013-03-31 17:09:33 -07:00
Unknown W. Brackets
7b608b6946 Fix logging typo. 2013-03-31 12:35:14 -07:00
Unknown W. Brackets
6b9930d4f2 When no packets to decode, return no data more. 2013-03-31 12:35:13 -07:00
Unknown W. Brackets
d03eaab774 Implement sceMpegFlushAllStream(). Fixes FF7CC. 2013-03-31 12:35:13 -07:00
raven02
d540ff816c Improve sceMpegAvcDecode/YCbCr 2013-03-31 03:10:29 +08:00
Unknown W. Brackets
0d4b0a1246 Track unknown sceIoIoctl commands better.
Also an mpeg stub.
2013-03-29 01:54:04 -07:00
Unknown W. Brackets
d8dd889bfd Couple more minor warning fixes. 2013-03-15 08:19:02 -07:00
sum2012
9b63e457c8 better mpeg fix 2013-03-14 22:03:26 +08:00
sum2012
024a61e058 sceMpegRingbufferPut fix (Handle numPackets <= 0) 2013-03-14 00:32:09 +08:00
raven02
1593bc1cc2 Keep Write_U32 for ctx->mp3StreamPosition 2013-03-12 09:18:51 +08:00
raven02
bd39a69125 Add UseMediaEngine check 2013-03-12 08:41:46 +08:00
Henrik Rydgard
5b015dd788 Set default pixel mode for sceMpeg to 8888 2013-03-10 23:38:54 +01:00
raven02
85920312c2 Cleanup sceMpegQueryStreamOffset/sceMpegQueryStreamSize 2013-03-11 03:55:19 +08:00
sum2012
bb82ad1685 Correct WrapI_UUUI and IMP sceMpegAvcConvertToYuv420 2013-03-10 15:21:55 +08:00
raven02
db7f23faf7 Turn down level sceMpegAtracDecode log level 2013-03-06 07:01:40 +08:00