bnnm
0e10b75beb
Fix interleaved FSB MPEG decoding
...
Padding doesn't apply to Layer II FSBs, and it needed to manually get
info from MPEG frames since mpg123 functions weren't always working.
2017-03-13 20:04:09 +01:00
Christopher Snowhill
a36bf19790
Merge pull request #73 from bnnm/master
...
New GENH codecs, short MPDS
2017-03-10 15:29:18 -08:00
bnnm
1a0da46703
Some more IMA cleanup (no functional changes)
2017-03-10 18:08:12 +01:00
bnnm
ae26d35f0c
Improve handling of different lengths in check_extensions
2017-03-10 17:57:28 +01:00
bnnm
663cb43b3f
Make init_vgmstream_hca_offset local (wasn't used anywhere else)
2017-03-10 17:32:42 +01:00
bnnm
79a5942cb9
Add HCA extension check to avoid some malloc/frees
2017-03-10 17:26:27 +01:00
bnnm
b8a25dbc27
Some IMA cleanup (no functional changes)
2017-03-09 21:47:23 +01:00
bnnm
8fc73c6d02
Minor SCD cleanup
2017-03-09 20:56:26 +01:00
bnnm
613766e856
Add comment
2017-03-09 20:38:52 +01:00
bnnm
a5556e587c
Added "short" MPDS (coefs missing) [T3, MI: Operation Surma (GC)]
2017-03-09 20:37:48 +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
2cdef093cb
Added FFmpeg fake atrac3plus RIFF
2017-03-09 19:13:05 +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
Christopher Snowhill
4f9df81f9b
Merge pull request #72 from bnnm/stuff
...
Stuff
2017-03-05 12:52:46 -08:00
bnnm
0e658031cc
Add basic multistream FSB5 support; code cleanup
2017-03-05 17:43:41 +01:00
bnnm
af0c31d61f
Minor tweaks/log
2017-03-05 17:35:45 +01:00
bnnm
7f90359e40
Fix some XWB XACT2 looping [Blue Dragon, Prey]
2017-03-05 17:34:37 +01:00
bnnm
7f2e8f58db
Add minor malloc fail check
2017-03-04 02:17:03 +01:00
bnnm
9d97a346d3
Save number of streams info
2017-03-04 02:16:35 +01:00
bnnm
39abb97b61
Save number of streams info
2017-03-04 02:09:00 +01:00
bnnm
93bcf85e9c
Minor code cleanup
2017-03-04 02:07:48 +01:00
bnnm
3d1ae80f56
Fixed SFX SGDXs; show multi stream number
2017-03-04 02:06:11 +01:00
bnnm
85a3ec749f
Show stream numbers in the description (few multi-stream formats only)
2017-03-04 02:05:07 +01:00
Christopher Snowhill
59c2a57ecf
Updated FFmpeg binaries.
2017-02-28 19:16:15 -08:00
Christopher Snowhill
dae2cead2e
Update FFmpeg build options.
2017-02-28 19:13:48 -08:00
Christopher Snowhill
f2b0a96afc
Merge pull request #71 from bnnm/xwb
...
XWB support
2017-02-28 19:12:44 -08:00
bnnm
f92babb383
Fix looping for XACT1/2 PCM and XMA
2017-02-25 19:53:21 +01:00
bnnm
d2a31378c2
move xma_get_samples from xma.c to FFmpeg utils (needed by XWB)
...
xma.c now uses ffmpeg's fmt_chunk_swap_endian, too
2017-02-25 19:52:07 +01:00
bnnm
8b72e32a97
Adjust XMA sample reader (cleanup, looping, prep for changes)
2017-02-25 18:35:56 +01:00
bnnm
fbb9af5410
Tweak FFmpeg XMA1 fake RIFF
2017-02-25 17:29:25 +01:00
bnnm
0296be392f
Redone XWB with full support [many XBOX360 games]
...
Includes PCM/XBOX-ADPCM/MS-ADPCM/XMA1/XMA2/WMAv1/WMAv2/WMApro.
Known issues (examples needed):
- PCM8bit, WMAv1 (XBOX) and WMApro (late XBOX360) not tested
- compact mode not tested
- earlier (XACT2) MS-ADPCM looping not tested
- XACT2 v35/36/37 may not play correctly (~few mid 2006 games)
2017-02-25 13:57:18 +01:00
bnnm
04f2cb0344
Moved FFmpeg RIFF utils to their own file
...
I'm going to add more later so it was getting kind of unwieldy
2017-02-25 13:54:05 +01:00
bnnm
9ff0e2b8a7
Fix again rare FFmpeg bug when reading "fake" filesizes
2017-02-25 13:43:05 +01:00
bnnm
248ec021d8
Add FFmpeg fake riff helpers: XMA1, XWMA, XMA2 tweaks
2017-02-25 12:25:10 +01:00
Christopher Snowhill
223f732e17
Merge pull request #70 from bnnm/interleaved-mpeg
...
Interleaved MPEG
2017-02-19 21:41:42 -08: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
f993fe37de
Add some preliminar code for multichannel FSBs
2017-02-19 20:28:13 +01:00
bnnm
c38aa72761
Enable multichannel MPEG (fixed frame size) in XVAGs
2017-02-19 20:21:57 +01:00
bnnm
0101572718
Add multichannel MPEG decoder
...
Supports fixed-size frames (for XVAG) or variable/padded frames (for
FSB), but FSB support has some bugs so it's not used yet.
2017-02-19 20:20:13 +01:00
Christopher Snowhill
83276b5f0d
Merge pull request #69 from haolink/master
...
Fairy Fencer F: Advent Dark Force Looping OGG support added.
2017-02-18 12:30:42 -08:00
bnnm
e0d129e06c
Prepare MPEG stuff for multichannel
2017-02-18 18:27:21 +01:00
bnnm
d3a1fba917
Simplify XVAG/code cleanup preparations
2017-02-18 15:43:29 +01:00
bnnm
4673050fcb
Add find_chunk with configurable endianness
2017-02-18 15:19:25 +01:00
Link
4963e97216
Fairy Fencer F: Advent Dark Force Looping OGG support added.
2017-02-18 08:04:16 +01:00
bnnm
7418b61793
Hide buffer and mpeg_bytes_to_samples MPEG internals; cleanup
...
Also removes VBR check from metas; it's only needed because
mpeg_bytes_to_samples doesn't work with VBR, but now it'll return 0,
which would be validated later.
2017-02-18 00:17:38 +01:00
bnnm
2e41586e68
Move AHX MPEG init code to mpeg_decoder and other cleanup
2017-02-17 18:35:58 +01:00
bnnm
6b99cf8f72
Use free_mpeg to close MPEG internals
2017-02-17 18:18:06 +01:00
bnnm
df84602e85
Move reset/seek/free MPEG code to mpeg_decoder (for later changes)
2017-02-17 17:20:40 +01:00
bnnm
a7982bc743
Remove MPEG internals
2017-02-17 16:48:29 +01:00
bnnm
ef5b17f508
Remove old FSB5 mpeg code
2017-02-17 16:44:07 +01:00