bnnm
9b90a7a260
cleanup: minor codec renames
2024-06-11 00:36:54 +02:00
bnnm
af71e611c1
cleanup: riff helpers
2023-01-21 22:08:46 +01:00
bnnm
3c7770bbfb
cleanup: add xma2 raw init function
2023-01-21 13:51:27 +01:00
bnnm
41bad49872
Fix hang on full loops with xma1 formats
...
- happens with FFmpeg n5.1.2
2023-01-19 00:08:33 +01:00
bnnm
039541f881
ffmpeg: internals cleanup
2021-07-23 18:55:03 +02:00
bnnm
4cdc039200
Fix XBOX-IMA GENH with bad interleave
2020-04-15 18:18:57 +02:00
bnnm
c4b259f5d8
Clean MSADPCM frame size and add extra check
2019-10-20 16:35:52 +02:00
bnnm
97c090886f
Tweak Yamaha/AICA codec naming
2019-09-21 19:15:01 +02:00
bnnm
84038b0fea
Improve raw ATRAC3 decoding accuracy and cleanup
2019-08-26 22:58:43 +02:00
bnnm
023e5b8d99
Fix dual TXTH/GENH Yamaha ADPCM + add .P04 extension
2019-07-07 15:26:43 +02:00
bnnm
2b4570395a
Add AAC codec for TXTH and bytes-to-samples
2019-03-09 22:57:21 +01:00
bnnm
8850ddacff
Rename internal coding AICA to YAMAHA
...
AICA is simply Dreamcast's sound chip that uses standard Yamaha ADPCM,
codec used by Yamaha in many other places well before the Dreamcast
2019-03-03 02:30:52 +01:00
bnnm
e5480f4bb0
Fix minor shadowing issues
2019-02-23 03:15:49 +01:00
bnnm
29bed4b1e0
Add TXTH/GENH interleave_last option
2019-01-20 00:17:06 +01:00
bnnm
093fa28a2f
Add OKI16 TXTH/GENH decoder [Sweet Legacy (PS2), Hooligan (PS2)]
2019-01-12 13:02:08 +01:00
NicknineTheEagle
5190b362a9
Added 4-bit PCM decoder
2019-01-09 22:30:15 +03:00
bnnm
e53740f27f
Add PCFX for GENH/TXTH [Der Langrisser FX (PC-FX)]
2018-12-27 16:14:59 +01:00
bnnm
0706aeffbf
Fix some GENH with small header_size and allow N channel DSPs
...
- "DSP coef right offset" becomes "DSP coef spacing" when channels is
more than 2
2018-12-01 02:40:28 +01:00
bnnm
467ca19450
Fix XMA gapless/looping/samples
...
fixes: standard, wem, xwc, xwb, xnb, xwx, rak, pk, txth, genh, seg, rsd, past, p3d, nub-xma, gtd, gsp, fsb, eaac, cxs, awc, aac
2018-11-18 17:01:31 +01:00
bnnm
9d7d536da7
Add interleaved 2ch XBOX-IMA to TXTH/GENH
2018-09-04 17:11:08 +02:00
bnnm
ad4478ac2c
Set dual stereo as a meta flag rather than a static list
...
Mainly for cleanup/style
2018-08-23 18:00:34 +02:00
bnnm
eb52b3fb57
Add stereo AICA to GENH/TXTH (no interleave) [SF3 Double Impact (DC)]
2018-03-28 00:30:59 +02:00
bnnm
93c26cfef0
Rename coding_AICA to coding_AICA_int since it only does mono data
2018-03-27 23:32:01 +02:00
bnnm
e9b2751064
Add XBOX mono/int to GENH/TXTH (as codec_mode 1) [Manhunt (Xbox)]
2018-03-03 01:09:44 +01:00
bnnm
9cf9416665
Add/use xbox_ima_bytes_to_samples, rename coding_XBOX to XBOX_IMA
...
Currently same as ms_ima_bytes_to_samples, but this will change; renamed
for consistency with all other IMA variations. Also clean a bit some
metas since I was testing anyway.
2018-02-17 12:30:14 +01:00
bnnm
757e4cde69
Rename init_x_codec_data to init_x for consistency
2018-01-04 23:22:03 +01:00
bnnm
8f9b22d46f
Change layout_interleave_byte with coding_NGC_DSP_subint
...
Meant to simplify layouts
2017-12-06 21:04:34 +01:00
bnnm
d0be7e0c36
Minor tweaks/comments/renames/etc
2017-11-25 00:43:18 +01:00
bnnm
c17db6f30e
Add GENH AC3 and update code so it mirrors TXTH for easier sharing
2017-11-10 19:37:07 +01:00
bnnm
6308818b77
Simplify MPEG coding/layouts to allow blocked layouts and future changes
2017-07-29 13:05:23 +02:00
bnnm
cac3af887a
Allow mono MSADPCM; validate interleave for endless loops in some codecs
2017-04-29 20:28:14 +02:00
bnnm
d5aee307f0
Rename coding_INT_X to coding_X_int for consistency with other codecs
2017-04-29 02:53:36 +02:00
bnnm
5260314bc7
Minor check
2017-03-24 16:39:57 +01:00
bnnm
ce591bbe12
Added new GENH codecs: ATRAC3/plus, XMA1/2, FFMPEG
...
Also some extra fields: total samples, skip samples, data size,
atrac3/xma modes
2017-03-09 19:33:31 +01:00
bnnm
098946057e
Do some GENH cleanup before further additions
...
No changes in logic (tested for all types):
- move codec types to enum for later reference
- move NGC_DTK validation and AICA/DSP adpcm init to setup block
- use vgmstream_open_stream instead of manual stream opening.
There were 2 cases, interleave (different offset per channel, multiple
streamfiles) and none (same offsets per channel, one streamfile), now
handled by it.
2017-03-09 16:53:34 +01:00
bnnm
7f98f5b4f6
Remove MPEG sample rate check and channel/sample rate pointer updates
...
Rarely used, frame sample rate/channels are now exposed, and FFmpeg will
end up playing any MP3 anyway.
Encoders may modify sample rate to adjust looping to frame boundaries,
too.
2017-02-19 21:16:09 +01:00
bnnm
a7982bc743
Remove MPEG internals
2017-02-17 16:48:29 +01:00
bnnm
c7c1564d9f
Minor cleanups (no functionality changes)
...
- added comments, code alignment for clarity
- renamed some decoders for consistency (ex. eaxa > ea_xa, invert_psx >
psx_bmdx, vgm_adpcm_cfg > psx_cfg)
- removed layout_dkt_interleave (same as nolayout)
- removed skip_last_channel (not used anymore)
- removed meta_DSP_HALP (not used anymore)
2017-01-08 01:09:20 +01:00
halleyscometsw
1854d42e97
Extend GENH to support little-endian "Gamecube" DSP ADPCM coefficients, for some 3DS titles.
...
This involves a reinterpretation of byte 0x30 (coef type). Formerly this byte took on only two values, to indicate how the ADPCM coefficients (aka codebook) were stored:
0 - normal coefs: all 16 coefs interleaved into one array, offset given at 0x24 for left, 0x28 for right
1 - split coefs: 8 coefs in the main array, additional offset to 2nd array given at 0x34 for left, 0x38 for right
Now I am considering this to be indicated only by bit 0 of the coef type. Bit 1 is taking on an additional interpretation, if it is set, we consider the coefficients to be little endian rather than the normal big endian.
This should maintain backwards compatibility with old GENH files, which should have only used the value 0 or 1.
Thus, in effect we have:
0: normal, big endian
1: split, big endian
2: normal, little endian
3: split, little endian
I don't know of any situation in which 3 would be used (yet), but I'm sure devs will continue to surprise me.
2014-06-26 20:53:49 -07:00
Chris Moeller
142cfc971d
Raised path length limit to 32767 characters, controlled by a global enum definition
2013-05-26 20:55:50 -07:00
manakoat
9d25a6bbb4
Add Apple Quicktime 4-bit IMA ADPCM to GENH, ID 17 (0x11)
...
git-svn-id: https://vgmstream.svn.sourceforge.net/svnroot/vgmstream@960 51a99a44-fe44-0410-b1ba-c3e57ba2b86b
2011-06-20 16:40:32 +00:00
halleyscometsw
7b78a5262d
MPEG fixes from kode54, get the right freq and srate even with MPG123_NEED_MORE, avoid locking up with too little data
...
git-svn-id: https://vgmstream.svn.sourceforge.net/svnroot/vgmstream@911 51a99a44-fe44-0410-b1ba-c3e57ba2b86b
2011-01-19 13:54:59 +00:00
halleyscometsw
5ddbf90379
fix screwed up mpeg stuff
...
git-svn-id: https://vgmstream.svn.sourceforge.net/svnroot/vgmstream@838 51a99a44-fe44-0410-b1ba-c3e57ba2b86b
2010-09-11 18:28:43 +00:00
halleyscometsw
617ee5cdff
make MPEG detection accessible to anyone, add MPEG support for XVAG (though it seems that the sample count is wrong)
...
git-svn-id: https://vgmstream.svn.sourceforge.net/svnroot/vgmstream@831 51a99a44-fe44-0410-b1ba-c3e57ba2b86b
2010-09-10 21:49:56 +00:00
halleyscometsw
5a7e89be6a
8-bit unsigned pcm with no interleave assumption
...
git-svn-id: https://vgmstream.svn.sourceforge.net/svnroot/vgmstream@639 51a99a44-fe44-0410-b1ba-c3e57ba2b86b
2009-04-28 16:52:49 +00:00
halleyscometsw
a3804d64f4
typo (Bad hcs! Compile before committing!)
...
git-svn-id: https://vgmstream.svn.sourceforge.net/svnroot/vgmstream@636 51a99a44-fe44-0410-b1ba-c3e57ba2b86b
2009-04-21 22:35:14 +00:00
halleyscometsw
db35fe501d
fix yamaha "aica" adpcm for GENH
...
git-svn-id: https://vgmstream.svn.sourceforge.net/svnroot/vgmstream@635 51a99a44-fe44-0410-b1ba-c3e57ba2b86b
2009-04-21 22:32:01 +00:00
halleyscometsw
8963ee3eed
Microsoft IMA for riff and genh
...
git-svn-id: https://vgmstream.svn.sourceforge.net/svnroot/vgmstream@590 51a99a44-fe44-0410-b1ba-c3e57ba2b86b
2009-03-09 12:48:53 +00:00
manakoAT
4b578db302
fixed capcom hack in .genh
...
added .sng (WII)
git-svn-id: https://vgmstream.svn.sourceforge.net/svnroot/vgmstream@532 51a99a44-fe44-0410-b1ba-c3e57ba2b86b
2008-12-24 00:00:10 +00:00
manakoAT
bbe32bdad6
some changes in .genh
...
git-svn-id: https://vgmstream.svn.sourceforge.net/svnroot/vgmstream@531 51a99a44-fe44-0410-b1ba-c3e57ba2b86b
2008-12-23 18:01:18 +00:00