bnnm
051cad9462
Minor shadowing fixes and cleanup
2019-03-02 19:23:37 +01:00
bnnm
d9296c6693
Add multichannel layout for OGG/MP4/WEM/FFmpeg and use in foobar
2019-03-02 15:57:41 +01:00
bnnm
c99034cff8
Update mixing code
2019-02-25 00:38:35 +01:00
bnnm
40c23dc3f5
Add Vicious Cycle .mus [Dinotopia (Xbox/GC)]
2019-02-24 11:34:09 +01:00
bnnm
0725785824
Add some constants
2019-02-23 23:38:53 +01:00
bnnm
e5ddc9337a
Remove unused AIX layout
...
This layout handled ADX segments+layers at the same time. While there is
some merit in that, it's more flexible and easier to maintain to mix
layer and segment layouts.
Performance and memory used is slightly worse though (impact should be
minimal)
2019-02-23 16:17:29 +01:00
bnnm
111c4dd97c
Change some sample to sample_t
2019-02-23 02:54:23 +01:00
bnnm
dd31d1af33
Add Blitz IMA .str+wav [Zapper (PC)]
2019-02-23 00:12:58 +01:00
bnnm
4b3ec51667
Add .ds2 [Star Wars Bounty Hunter (GC)]
2019-02-17 23:17:14 +01:00
bnnm
fa4e56a6b1
Prepare parts for mixing
2019-02-17 20:28:27 +01:00
bnnm
98587ec8e7
Fix memory corruption when forcing loops and clean internals
2019-02-15 22:28:20 +01:00
bnnm
4c038cb0ea
Add Ocean .DSF, .208 and DSA decoder [Last Rites (PC)]
2019-02-10 01:36:05 +01:00
bnnm
011fe56614
Fix EALayer3 11ch, V1b PCM, V2S loops [Army of Two 3 (PS3), NFS:W (PS3)]
2019-02-09 23:42:59 +01:00
bnnm
097f7b0285
Fix some SDF [Mr. Bean's Wacky World (Wii)]
2019-01-26 17:04:43 +01:00
bnnm
8f1ec86bda
Fix UE4 MSADPCM .adpcm [Heroes of Ark (iOS), Angels in the Sky (iOS)]
2019-01-19 23:08:26 +01:00
bnnm
093fa28a2f
Add OKI16 TXTH/GENH decoder [Sweet Legacy (PS2), Hooligan (PS2)]
2019-01-12 13:02:08 +01:00
bnnm
d56bca12f8
Remove ps2_khv.c as it's now parsed in vag.c
2019-01-12 02:55:24 +01:00
bnnm
5d610be086
Add .gin and EA-XAS v0 decoder [Need for Speed Most Wanted]
2019-01-12 02:26:38 +01:00
NicknineTheEagle
5190b362a9
Added 4-bit PCM decoder
2019-01-09 22:30:15 +03:00
bnnm
78099c096b
Fix .vsv/psh decoding and mono files [Dawn of Mana (PS2)]
2019-01-05 20:20:08 +01:00
bnnm
be9399b370
Redo Infernal Engine .smp [Ghostbusters (multi)]
2019-01-05 04:36:20 +01:00
bnnm
dd97d29f80
Add EA EACS banks [Need for Speed (PC)]
2019-01-02 17:17:14 +01:00
bnnm
e53740f27f
Add PCFX for GENH/TXTH [Der Langrisser FX (PC-FX)]
2018-12-27 16:14:59 +01:00
bnnm
aa970bbdef
Adjust RedSpark case
2018-12-23 13:39:50 +01:00
bnnm
9245dc8a15
Add iNiS .IMC [Gitaroo Man (PS2)]
2018-12-23 13:38:18 +01:00
bnnm
c74da3884d
Clean .vs naming
2018-12-22 20:09:01 +01:00
bnnm
47ab52f4f2
Fix various PS2/GC/Wii/PC/Xbox/PSP .mul/emff [TR Legend, TR Underworld]
2018-12-22 19:47:17 +01:00
bnnm
34d4500e54
Add .sps EAMP3 [Need for Speed (PS4)]
2018-12-15 11:17:47 +01:00
bnnm
12edc39bff
Add looping Ogg Opus [Monster Boy and the Cursed Kingdom (Switch)]
2018-12-09 02:00:47 +01:00
bnnm
13a7a5382d
Add .opusx/adpcmx [Touhou Genso Wanderer -Reloaded- (Switch)]
2018-12-09 01:23:40 +01:00
bnnm
30481a5dcc
Clean XA names
2018-12-08 02:50:54 +01:00
bnnm
d31e11b6f9
Fix .fag num_samples/subsongs [Jackie Chan Stuntmaster (PS1)]
2018-12-08 02:45:19 +01:00
bnnm
60945577c0
Add Vicarious Visions .zss/zsm/ens/enm [X-Men Legends II (multi)]
2018-12-08 00:10:44 +01:00
bnnm
42bc5de623
Add From Software .xps/.xps+dat [Metal Wolf Chaos (Xbox), Otogi (Xbox)]
2018-12-01 14:01:52 +01:00
bnnm
c87aff04f9
Add opus+sli looping [Sabbat of the Witch (PC)]
2018-12-01 02:47:57 +01:00
bnnm
56ced57ece
Add TamaSoft .msf [Abandoner: The Severed Dreams (PC)]
2018-11-17 17:52:07 +01:00
bnnm
ab90e08484
Add ADPCM .xpcm [Eternal Fantasy (PC)]
2018-11-10 00:09:03 +01:00
bnnm
9b7161a207
Add PCM16LE .xpcm [Eternal Fantasy (PC)]
2018-11-09 22:57:35 +01:00
bnnm
b56f9e9acd
Add NWAV [Fuurai no Shiren Gaiden: Onnakenshi Asuka Kenzan! (PC)]
2018-11-09 21:23:31 +01:00
bnnm
ec63b8ff38
Tweak .svs sample rate
2018-11-01 16:39:53 +01:00
bnnm
1380faf5bb
Add PC/X360/Wii .seg and fixes [The Spiderwick Chronicles (multi)]
2018-11-01 16:34:53 +01:00
bnnm
33aa532c34
Add blocked VS [Final Fantasy X (PS2)]
2018-10-20 15:30:46 +02:00
bnnm
e49a688559
Add .xopus decoding [Angry Birds Transformers (Android)]
2018-10-13 21:01:58 +02:00
Christopher Snowhill
3d9ae0932c
Update vgmstream.h
...
Clean up formatting.
2018-10-09 15:49:04 -07:00
style_of_2001
107f9a658e
Add konami / sony VA3 support (fix crash in cli :P)
2018-10-09 09:53:10 -05:00
bnnm
80aad4f15a
Add/fix XWMA start and num samples
2018-10-07 23:27:31 +02:00
bnnm
f59faa0c07
Fix some .lse [Operation Abyss (PC), Operation Babel (PC)]
2018-10-04 20:43:23 +02:00
bnnm
1056092bf3
Fix Final Fantasy Tactics A2 IMA decoding
2018-10-04 19:43:37 +02:00
bnnm
2a5516fe7c
Restore G719 max frame size as 2560 bits (0x140) is decoder max
2018-09-27 23:56:44 +02:00
bnnm
c0d484a715
Add .lse Ogg [Labyrinth of Refrain (PC)]
2018-09-27 23:41:26 +02:00
bnnm
d717f21189
Add UE4OPUS decoder [Fortnite (PC), ARK: Survival Evolved (PC)]
2018-09-23 04:26:11 +02:00
bnnm
f29012edb7
Add Capcom .adpcm [Resident Evil: Revelations (Switch)]
2018-09-22 17:45:02 +02:00
bnnm
0e4ee632b9
Remove standard G.722.1 (Siren7), since no game uses it
...
Siren14 wasn't affected by this
2018-09-22 16:32:21 +02:00
bnnm
37d7fe83c4
Move NXA Opus to its own file, since it's not very standard
2018-09-10 02:24:59 +02:00
bnnm
804fceb5e7
Remove custom FFmpeg, as custom IO streamfile can be used instead
2018-09-10 02:19:34 +02:00
bnnm
74536e0933
Swap custom FFmpeg OPUS for custom streamfile IO
2018-09-10 01:23:34 +02:00
bnnm
6bee2a6209
Add .utk [The Sims Online (PC), SimCity 4 (PC)]
2018-09-09 15:29:34 +02:00
bnnm
2b7cd654b2
Allow arbitrary frame sizes for G719 and cleanup
2018-09-09 12:24:08 +02:00
bnnm
47b5a189cf
Clean EA-MT code
2018-09-08 23:36:31 +02:00
bnnm
417cc59277
Fix EA-MT looping [SSX3 (PS2)]
2018-09-08 19:22:56 +02:00
bnnm
1810d3ced6
Add TXTP commands for looping/time (#i #E #lN #fN #dN #F)
...
- #i (ignore loop)
- #E (force end-to-end loop)
- #lN (force N loops)
- #fN (fade time)
- #dN (fade delay)
- #F (don't fade after N loops and play song end)
2018-09-07 19:34:31 +02:00
bnnm
19f69e14b7
Add ALP IMA decoder [Lego Racers (PC)]
2018-09-06 20:25:04 +02:00
bnnm
f519b1ad70
Add DERF DPCM decoder [Stupid Invaders (PC)]
2018-09-06 17:45:34 +02:00
bnnm
59b303d753
Update libacm to 1.2 and add .WAVC sfx
2018-09-04 22:42:21 +02:00
bnnm
f70852095c
Tweak minor ACM stuff for opaqueness
2018-09-04 18:37:51 +02:00
bnnm
3113342a71
Minor tweaks
2018-09-02 21:06:15 +02:00
bnnm
43764d6c8d
Fix HCA num samples/looping [Binary Domain (PC), Octopath Traveller]
...
Decoder has been modified a bit so it's easier to feed an arbitrary
number of discard samples (or at least, easier for me to understand),
since encoder delay can be >1024 (frame size) and would make some calcs
go all wobbly
2018-08-29 23:42:47 +02:00
bnnm
411fa498bb
Clean HCA meta/decoder for future changes
2018-08-29 20:05:31 +02:00
bnnm
d5a11d58e8
Add various metas
...
- DSP: itl, vag (PPP)
- PS2: int (A2M), ahv, msv, sdf, svg, vis
- PC: .aif (Asobo), ao, apc, wv2
- Xbox: xau (Konami)
2018-08-28 18:47:56 +02:00
bnnm
cc537270c1
Add RFRM .csmp and cleanup [Donkey Kong Country Tropical Freeze (Wii U)]
2018-08-26 19:16:24 +02:00
bnnm
4ee39206c3
Fix Lunar 2 SCD loops/sample rate/stereo and PCM8 cleanup
2018-08-26 16:36:08 +02:00
bnnm
ee03726bbc
Find loop_segment automatically in segmented_layout + remove from metas
2018-08-26 00:59:31 +02:00
bnnm
3130eebf0c
Minor layout cleanup + doc
2018-08-25 20:46:54 +02:00
bnnm
a734e9c5cb
Remove custom ATRAC9 in favor of custom IO
...
Formats using custom layouts tend to be weird enough that it's a pain to
add support directly in the decoder.
Instead should use custom layouts and I/O streamfiles that, though a bit
wordy and unwieldy at the moment, are a lot more flexible.
2018-08-25 17:48:01 +02:00
bnnm
9e54efe6d8
Remove FFMPEG_EA_XMA as it's now done with custom IO + layers
2018-08-25 13:22:57 +02:00
bnnm
6c553882f3
Rename codec_version to codec_config to clarify
2018-08-23 18:07:45 +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
dcbc7e5b9b
Lower parse priority of raw metas so TXTH has a chance to go first
2018-08-22 20:39:31 +02:00
bnnm
925916690a
Parse PS3 .bnk properly and remove ps3_klbs.c [L@ve Once (PS3)]
2018-08-22 19:26:19 +02:00
bnnm
75fb12eed4
Fix PS2 VGS/ASS/VPK/etc samples, glitches and cleanup
2018-08-22 19:19:31 +02:00
bnnm
cae82e9074
Clean builds and enable VGM_USE_VORBIS/MPEG manually for consistency
2018-08-20 20:08:24 +02:00
bnnm
2e6f6c8176
Remove unnecessary FFmpeg ifdef
2018-08-19 19:09:37 +02:00
bnnm
ca04dbca70
Add old .scd SSCF [Crisis Core FFVII (PSP), Dissidia 012 (PSP)]
2018-08-19 16:42:39 +02:00
bnnm
d93a4b2c7a
Add proper H4M decoding [Resident Evil 0 (GC), Tales of Symphonia (GC)]
2018-08-19 00:38:08 +02:00
bnnm
9e06652264
Redo .nus3bank to parse as a bank with subsongs
...
Also removes hacky code from idsp, since it's now on its own file
2018-08-15 19:59:10 +02:00
bnnm
79cad960ae
Add Sony .bnk [Puyo Puyo Tetris (PS4), NekoBuro: Cats Block (Vita)]
2018-08-15 17:34:17 +02:00
bnnm
b36646aacf
Add .hd3+bd3 [Elevator Action Deluxe (PS3), R-Type Dimensions (PS3)]
2018-08-14 00:28:15 +02:00
bnnm
36c6168c27
Add Firebrand Games .wavebatch [NFS: The Run (3DS), F&F: Showdown (3DS)]
2018-08-13 23:03:39 +02:00
bnnm
5720278d2d
IDSP cleanup
2018-08-12 18:04:19 +02:00
bnnm
efb01a921c
Add .wua IDSP and cleanup [Lego Dimensions (Wii U)]
2018-08-12 17:13:51 +02:00
bnnm
0502a6a74f
Fix VPK num_samples and cleanup [God of War (PS2), NBA 08 (PS3)]
2018-08-12 02:19:17 +02:00
bnnm
07bb40071a
Add FSB CELT decoder [Vessel (PC), Runner2 (PC)]
...
Corresponding libs will be added later
2018-08-12 00:58:20 +02:00
bnnm
790525f990
Redo Blitz Games STR+WAV [Zapper (GC), Tak (PS2)]
...
Also removes 3 metas that parsed Blitz stuff
2018-08-04 21:02:10 +02:00
bnnm
16f2474a50
Add .WV6 IMA [The Fairly OddParents: Breakin' Da Rules (PC)]
2018-08-02 18:22:01 +02:00
bnnm
a4f67bf077
Add Cricket Audio .cks/ckb [Part Time UFO, Mega Man 1-6 (Android)]
...
Includes Cricket Audio's MSADPCM variation, also cleaned up MSADPCM code
2018-08-02 17:15:09 +02:00
bnnm
61034484ab
Add XMD decoder [Silent Hill 4, Castlevania: Curse of Darkness (Xbox)
2018-07-27 17:11:11 +02:00
bnnm
fd7ecbd393
Add AIFF with XA ADPCM [Crusader: No Remorse (SAT), Road Rash (3DO)]
2018-07-22 23:13:03 +02:00
bnnm
0dc2c81ab9
Handle XA ADPCM in a more standard way
...
It was decoding one 28-sample subframes and blocked layout handled
frames, doing some voodoo to skip CD sectors.
Now decodes one 28*8-sample frame and blocked layout handles CD sectors.
Decoding is byte-exact vs before.
2018-07-22 23:08:09 +02:00
bnnm
57b8c6acd3
Add TXTP 'm' channel mapper/swapper
...
Credit to topher-au for the initial idea/code
2018-07-22 00:46:08 +02:00
bnnm
d6795b63c3
Add ASF decoder [Croc 2 (PC), Aladdin: Nasira's Revenge (PC)]
2018-07-18 00:52:24 +02:00
bnnm
2df613d893
Fix various music .ivaud [GTA IV (PC)]
2018-07-06 21:04:06 +02:00
bnnm
dbb5a4458b
Add .mus Ogg [Redux - Dark Matters (PC)]
2018-06-30 13:43:12 +02:00
bnnm
12233dd0bb
Remove ps2_adsc as it's handled in ps2_ads now
2018-06-17 01:12:53 +02:00
bnnm
9d86c42ea4
Add .H4M videos (wip)
2018-06-03 13:08:41 +02:00
Christopher Snowhill
b341f8d6b6
Merge branch 'master' into master
2018-05-20 16:22:31 -07:00
bxaimc
05aca5ceeb
Formatting some things
2018-05-19 16:17:18 -04:00
bxaimc
94a9cf1f7f
Add SADF DSP variant from Xenoblade Chronicles 2 (Switch)
2018-05-19 16:05:25 -04:00
bnnm
a57134dc2b
Add .gwd Ogg [Adagio Cloudburst (PC)]
2018-05-19 11:37:21 +02:00
bnnm
92419c2143
Add tri-Ace .aac Vita [Judas Code (Vita)]
2018-05-12 13:53:58 +02:00
Christopher Snowhill
35cd14fa04
Merge pull request #220 from bnnm/bao-downmix-etc
...
BAO, downmix, etc
2018-04-29 17:04:19 -07:00
bnnm
d292531654
Add switch_audio [Gal Gun 2 (Switch)]
2018-04-29 21:04:55 +02:00
bnnm
10e506675b
Add (wip) Ubi .pk support [Just Dance (Wii)]
2018-04-29 20:28:27 +02:00
bxaimc
ce2082a8d4
Add .KNS for KTSS meta
2018-04-29 13:24:01 -04:00
bnnm
686d77debc
Clean Switch opus meta
...
Separate header variations since every other dev is going to make their
own, it was getting kind of messy.
2018-04-21 21:52:30 +02:00
bnnm
5229e7385d
Clean dsp meta
...
Use a common function since most parsers did the same thing with minor
config params.
Also add extra validations to Cabela's DSP since it was hijacking other
DSPs.
2018-04-21 02:14:21 +02:00
bnnm
165cb400b1
Add .at9 opus [Penny-Punching Princess (Switch)]
2018-04-20 20:37:19 +02:00
bnnm
befcbbd4fb
Add PPST .sng [Parappa the Rapper (PSP)]
2018-04-20 18:27:08 +02:00
bnnm
ab2cecf92d
Add encrypted .ogg from Ys VIII (PC)
2018-04-20 17:02:56 +02:00
bnnm
12cba40baf
Add .smc+smh [Wangan Midnight (System 246)]
2018-04-15 01:08:27 +02:00
bnnm
56d6cbbf6c
Add artificial format TXTP (.txtp)
...
Used to play separate intro+loop files, mask channels, play subsongs in
single files without having to demux, etc.
Also a channel mask parsing during main render_vgmstream.
2018-04-15 00:48:37 +02:00
bnnm
34522fafee
Add .eno Ogg [Metronomicon (PC)]
2018-04-12 22:46:18 +02:00
bnnm
27087edea2
Add .rpgmvo Ogg [RPG Maker MV games]
2018-04-07 19:04:06 +02:00
bnnm
b2766bf137
Add .msb+msh sfx [EyeToy Play (PS2), Ace Combat 2 (PS2)]
2018-04-07 13:35:33 +02:00
bnnm
d4556f3310
Ignore LyN RIFF as it's parsed in its own file now; cleanup
2018-04-07 11:37:44 +02:00
bnnm
41e60f29da
Add Ubi LyN (.sns/son/wav) [Adventures of Tintin, From Dust (multi)]
2018-04-07 11:31:43 +02:00
bnnm
8fab88be8f
Remove ps2_psw.c as it's now parsed by ubi_jade.c
2018-04-06 20:55:11 +02:00
bnnm
d39e7ec67d
Fix Ubi Jade (.wam) [Beyond Good & Evil (PS3), Rayman Rabbids (Wii/PS2)]
...
Adds X360/PS3/PC support and fixes looping
2018-04-06 20:48:24 +02:00
bnnm
b35f88159c
Add .mcadpcm [Skyrim (Switch)]
2018-03-31 13:28:30 +02:00
bnnm
b7da78e68e
Add .PCM+.SRE [Viewtiful Joe (PS2)]
2018-03-31 13:10:57 +02:00
bnnm
94572fede5
Use meta_MP4 for MP4 FFmpeg too, so no need to ifdef
2018-03-30 21:37:11 +02:00
bnnm
c843c350d1
Clean scd_int layout and rename to layered layout for later reuse
2018-03-30 21:28:32 +02:00
bnnm
642c833fcd
Simplify STREAMFILE handling in scd_int_layout
...
It's not the easiest thing to follow so here is what's going on with
STREAMFILEs:
- external player opens base-streamfile, with a base FILE
- meta scd parses stuff, then per DSP channel/layer:
- open temp-streamfile, which does custom IO with base-streamfile
(doesn't open any FILE)
- pass temp-streamfile to init_vgmstream_ngc_dsp_std
- init parses ok, and re-opens temp-streamfile (with custom IO) as its
own dsp-vgmstream-streamfile; internally it does fopen/fdopen the
original FILE from base-streamfile
- scd_int_layout stores the newly created VGMSTREAM (internally has
the dsp-vgmstream-streamfile too)
- close temp-streamfile, that doesn't close base-streamfile as it's
wrapped to avoid doing so, nor affects dsp-vgmstream-streamfile in any
way.
- meta parsing is done, so external player closes base-streamfile (but
the re-fopen'ed dsp-vgmstream-streamfile FILE remains)
- vgmstream renders pcm buffers, etc
- finally player calls close_vgmstream
- scd_int_layout calls close_vgmstream for each stored VGMSTREAM
- the VGMSTREAM internally closes the dsp-vgmstream-streamfile, which
in turn closes its own FILE
So ultimately all FILEs, STREAMFILEs and their clones should be properly
handled and closed.
2018-03-30 19:14:37 +02:00
bnnm
99888d6517
Merge branch 'master' of https://github.com/kode54/vgmstream into test
2018-03-30 11:02:28 +02:00
bxaimc
d5c9165d07
Merge branch 'master' of git://github.com/kode54/vgmstream
2018-03-29 21:04:09 -04:00
bnnm
531e8dc9b8
Rename blocked layout for consistency
2018-03-29 19:00:04 +02:00
bnnm
dfeb1da3ef
Add .stx STHD [Kakuto Chojin (Xbox)]
2018-03-29 17:01:46 +02:00
bnnm
c052848e26
Add EA .WVE videos [Supercross 2000 (PS), Wing Commander 3/4 (PS)]
2018-03-29 15:39:33 +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
1708dcaf63
Remove PCM16-XOR decoder and use decryption streamfile instead
...
The encryption is built on top of the data, so this way mimics the
actual setup and removes another superfluous decoder
2018-03-27 23:24:24 +02:00
bnnm
0f529ea1a7
Remove BMDX decoder and use decryption streamfile instead
...
The encryption is built on top of PS ADPCM data, so this way mimics the
actual setup and removes a superfluous decoder
2018-03-27 22:39:05 +02:00
bnnm
c72ff8dd46
Clean ngc_bo2
...
Move code to rkv.c as it's the same format, add .rkv (archive)
extension, remove file and rename to init ngc_rkv
2018-03-25 11:08:36 +02:00
bnnm
eca9b83208
Simplify last block interleave
...
Remove layout_interleave_shortblock for clarity as the value is enough
to signal its use. Also fix .snd last block calculation, and clean some
metas since I was testing changes anyway.
2018-03-24 19:27:24 +01:00
bnnm
f132c11764
Add .aac ADPCM [Star Ocean Ananmesis v1, Heaven x Inferno (Mobile)]
2018-03-24 12:17:04 +01:00
bnnm
6a5ef288ff
Add NXAP (bad decoding) [Time Crisis 4, Time Crisis Razing Storm (PS3)]
2018-03-24 12:13:40 +01:00
bnnm
fbd8e94e41
Add Yamaha/NXAP ADPCM decoder
2018-03-24 12:08:16 +01:00
bnnm
13a5322e26
Add .smv [Cho Aniki Zero (PSP)]
2018-03-23 22:41:42 +01:00
bnnm
49331423e2
Add true multichannel XBOX-IMA
2018-03-23 21:21:44 +01:00
bnnm
a53712d495
Add RSD6WMA [Scarface (Xbox)]
2018-03-23 18:54:20 +01:00
bnnm
8bb9fa5f4a
Clean .WSI
2018-03-23 18:34:37 +01:00