Commit Graph

364 Commits

Author SHA1 Message Date
Sacha
cd20288d99 Fix some compiler warnings. 2014-07-17 00:49:58 +10:00
Henrik Rydgard
e444e21a8a Oops 2014-06-23 22:56:12 +02:00
Henrik Rydgard
b4a9780b81 Typo fix 2014-06-23 22:51:22 +02:00
Henrik Rydgard
8e7570e8cd Improve some error messages 2014-06-23 21:42:31 +02:00
Unknown W. Brackets
47ad97617e Play AT3 files in background audio too.
Fixes 3rd Birthday and PQ2, at least.
2014-06-22 09:55:14 -07:00
Henrik Rydgard
8c36921d3c Have SimpleAudio respect channels/samplerate passed in 2014-06-22 18:33:09 +02:00
Henrik Rydgard
dc66e18c00 Minor perf fix in SimpleAudio: Lazily create resampling contexts once instead of every audio frame 2014-06-22 17:50:47 +02:00
Henrik Rydgard
cefc0bc96f Play the game's SND0.AT3 when a game is selected in the menu and on the "game screen". 2014-06-22 17:02:04 +02:00
Henrik Rydgard
12cef8fa80 Oops, buildfixes 2014-06-22 14:23:06 +02:00
Henrik Rydgard
1d0cc3417c Audio stuff: Cleanup, delete dead code 2014-06-22 14:01:23 +02:00
Unknown W. Brackets
c142207a93 Fix a few warnings, mostly type comparisons. 2014-05-31 21:42:57 -07:00
Unknown W. Brackets
95414d6727 Get rid of some duplicate code. 2014-05-29 08:30:00 -07:00
Unknown W. Brackets
29a9ff369e Make a note when we need to reset the shader.
Hmm, not sure this is the cleanest way.
2014-05-27 22:12:25 +02:00
Unknown W. Brackets
bd31b776c7 Report GHA phase shifting. 2014-05-27 00:03:28 -07:00
Unknown W. Brackets
13b735fd02 Validate more params in scePsmfPlayerGetVideoData. 2014-05-23 23:00:01 -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
e522eea2b4 Improve psmf seek perf and audio sync. 2014-05-15 00:28:54 -07:00
Unknown W. Brackets
2042672ec7 Correct the audio pts from the actual stream data.
Before, we would just increment it and hope we were right.  There's no
reason we'd be wrong, but with seeking we have to be more careful.
2014-05-15 00:05:40 -07:00
Unknown W. Brackets
0e781cd053 Fix ranged mpeg memchecks, oops. 2014-05-11 21:52:15 -07:00
Unknown W. Brackets
9c0bc32f52 Add support for initPts in scePsmfPlayerStart().
It won't be super speedy though, could more ideally do it on the calls to
Update()...
2014-05-11 14:23:13 -07:00
Unknown W. Brackets
f052778c2d Unlock reslts before scheduling.
To prevent deadlock while debugging with events all running sync.
2014-04-28 22:32:34 -07:00
Unknown W. Brackets
647d6c0960 Invalidate when writing video image.
It is required to update the framebuffer, of course.  Fixes Dead or Alive
video flicker.
2014-04-27 08:23:42 -07:00
Unknown W. Brackets
6c53f19854 Trigger memchecks on audio decode from video. 2014-04-26 11:51:06 -07:00
Unknown W. Brackets
065677095f Trigger memchecks on writing out video data. 2014-04-26 11:48:02 -07:00
Unknown W. Brackets
eae4c9cc49 Check for no audio more directly.
This fixes some cases where the flag was set wrong.
2014-04-26 09:38:13 -07:00
Unknown W. Brackets
1de6941482 Correct PTS reading during audio demux. 2014-04-25 22:50:36 -07:00
Unknown W. Brackets
891764d8ee Make scePsmfPlayerSelect*() actually switch.
Don't have any games actually using this, so let's report too.  Audio is
falsely working when the stream isn't playable, not exactly sure the best
way to detect that.
2014-04-22 08:07:49 -07:00
kaienfr
c6a1b0e743 Provide a new method AuCtx::AuCreateCodecContextFromSource()
This method can automatically read audio information from file (as channels, sample rate etc) via ffmpeg,
and create accurate ffmpeg's codec context.
Especially used for unknown audio format but supported  by ffmpeg.
2014-04-14 13:23:10 +02:00
kaienfr
d5fde0baee implement sceMp3GetFrameNum 2014-04-14 11:47:28 +02:00
kaienfr
7ef2678cc9 Update sceAac module in using universal audio context class (AuCtx) 2014-04-13 14:38:42 +02:00
kaienfr
e25bc6908a Fix nonsmooth sound issue and incomplete frame at the end of source and pcm buffers.
using a std::string to save the source buffer, and changing the loading strategy so as we will not get any incomplete frame.
2014-04-12 23:16:38 +02:00
kaienfr
d5c1d58506 Audio Speed Hack (fill pcm buffer)
Dead or alive will be better to using this hack, but some other games will be too fast.
So, it's optional.
2014-04-12 17:16:31 +02:00
kaienfr
b3a7568811 change the way in AuGetInfoToAddStreamData and AuNotifyAddStreamData.
readPos and available buffer is firstly updated in AuGetInfoToAddStreamData then notified in AuNotifyAddStreamData.
Since, some games as Dead and alive may not call NotifyAddStreamData after GetInfoToAddStreamData
2014-04-12 14:54:25 +02:00
kaienfr
a7691737b5 Transfer old mp3 savestate into new mode; Rename class functions sceAu... to Au...
Tests on games are just ok.
2014-04-12 02:12:25 +02:00
kaienfr
ee1d541c28 Update minor comments 2014-04-11 23:42:07 +02:00
kaienfr
3a12cf2ad7 Universal Audio Class
Based on my implementation in sceAac https://github.com/hrydgard/ppsspp/pull/5836
I've created a class AuCtx included in My SimpleAudioDec.cpp/.h which aims at providing a standard easy implementation to support all codecs in ffmpeg.
Here, I also completely re-code sceMp3 file with this class to give an example how to use this class, and it has solved all mp3 issues I've observed in the current master.
Tests on different freq and channels mp3 audios as:
Miku custom BGM (48kHz, stereo), Hanayaka Nari Wa ga Ichizoku(32kHz, mono, a little fast but better than before now), downstreet panic (44.1kHz, stereo), and learn jp09(44.1kHz, stero) are just all right.
Especially, I am very glad to see that Miku's Custom BGMs have no repetition issues in first tone any more and no longer stopped in the first second neither. :)
We will come into a new age to fast support new audio formats from now on I hope :P
2014-04-11 22:56:59 +02:00
kaienfr
c216b535ee Save current changes 2014-04-11 15:09:31 +02:00
Henrik Rydgård
f328cfe655 Merge pull request #5816 from raven02/patch-8
No need to init packet as 0
2014-04-09 15:01:00 +02:00
kaienfr
a576420547 Remove decode function of SimpleAudioDec and use its class method. 2014-04-08 01:09:28 +02:00
kaienfr
99cf2654b7 Merge remote-tracking branch 'origin/master' into pmp_video_branch 2014-04-07 19:36:57 +02:00
raven02
619039aed6 No need to init packet as {0} 2014-04-07 19:29:57 +08:00
raven02
3fb85dde8f ME : Init packet as {0} 2014-04-06 20:40:04 +08:00
Henrik Rydgård
c724a6c06a Merge pull request #5764 from kaienfr/cleanup
Cleanup SimpleAudioDec
2014-04-06 12:01:05 +02:00
kaienfr
04756b91e0 Do State PMP media, and some other updates to PMP media. 2014-04-04 23:01:25 +02:00
Unknown W. Brackets
91323ebe92 Clear m_sws_ctx when freeing it.
Oops.  May help #5781.
2014-04-01 21:25:03 -07:00
kaienfr
03898fd1e6 updates 2014-04-01 04:58:56 +02:00
kaienfr
17174d0d24 fix for AAC audio playing 2014-04-01 00:37:01 +02:00
kaienfr
c03e591ecd Cleanup SimpleAudioDec
and remove unused AudioCreate fonction, it can be down in the class constructor.
2014-04-01 00:33:46 +02:00
kaienfr
f5d4b7bcb4 PMP Video
Not ready for merge, only for discussion about the current stage.
The video frame seems been decoded into RGB24 by my decodePmpVideo function, and the dumped ppm output file have also something.
But in ppsspp, we can just see some nonsense noise on the screen, but already hear AAC audio :)
I still have no idea what's wrong. Can somebody help? Thanks!
2014-04-01 00:33:31 +02:00
Unknown W. Brackets
0ba0dba63d Correctly free a few FFmpeg resources. 2014-03-30 13:44:32 -07:00