Commit Graph

265 Commits

Author SHA1 Message Date
bnnm
5c45178892 Fix some SCHl multi-language videos [MOH Warfighter, NFS The Run] 2018-12-27 16:08:48 +01:00
bnnm
212cdf7a32 Rename *vs_ffx.c to *vs_square.c and *ps2_strlr.c to *vs_str.c 2018-12-22 20:12:13 +01:00
bnnm
c74da3884d Clean .vs naming 2018-12-22 20:09:01 +01:00
bnnm
a1d559d529 Rename *emff.c to *mul.c 2018-12-22 19:52: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
1d97f9ad78 Clean Melbourne House .vs 2018-12-21 23:53:02 +01:00
bnnm
28f4896818 Fix stereo .vs [All Star Pro-Wrestling 2/3 (PS2)] 2018-12-21 22:38:48 +01:00
bnnm
eaa176864c Simplify debug off_t casting for easier build
Also reorder some custom opus funcs that don't depend on ffmpeg
2018-12-01 18:52:30 +01:00
bnnm
2e2eeb8723 Tweak .vs doc 2018-11-01 16:41:23 +01:00
bnnm
33aa532c34 Add blocked VS [Final Fantasy X (PS2)] 2018-10-20 15:30:46 +02:00
bnnm
7d91ef1432 Cast off_t to off64_t when printf'ing for future 4GB file support 2018-09-23 03:01:13 +02:00
bnnm
f2a5b5954f Move wsi to its own file, since it's not very standard 2018-08-26 17:40:40 +02:00
bnnm
5aad45ab87 Clean AST meta 2018-08-26 13:48:14 +02:00
bnnm
92f35029bb Make generic block_update and auto-call in vgmstream_open_stream 2018-08-26 13:46:07 +02:00
bnnm
88f50985de Optimize segmented layout decode samples 2018-08-26 01:05:07 +02:00
bnnm
ee03726bbc Find loop_segment automatically in segmented_layout + remove from metas 2018-08-26 00:59:31 +02:00
bnnm
c9dc0917ff Fix interleave layout hanging when no interleave size set 2018-08-25 21:15:10 +02:00
bnnm
3130eebf0c Minor layout cleanup + doc 2018-08-25 20:46:54 +02:00
bnnm
b17719f69c Rename render_vgmstream_nolayout to _flat for clarity/consistency
But not layout_none to layout_flat, since it's used everywhere
2018-08-24 19:37:02 +02:00
bnnm
f576d9568c Rename nolayout.c to flat.c for consistency/clarity 2018-08-24 19:29:39 +02:00
bnnm
6c553882f3 Rename codec_version to codec_config to clarify 2018-08-23 18:07:45 +02:00
bnnm
bb07299dae Make libvorbis/libmpg123 optional in autotools 2018-08-20 19:21:51 +02:00
bnnm
485e5b9cf7 Fix blocks hanging with broken files/incorrect offsets
Also removes unnecessary halpst case
2018-08-19 19:02:22 +02:00
bnnm
d93a4b2c7a Add proper H4M decoding [Resident Evil 0 (GC), Tales of Symphonia (GC)] 2018-08-19 00:38:08 +02:00
Christopher Snowhill
7840d9df1f
Merge pull request #279 from NicknineTheEagle/ea-fixes
EA formats
2018-08-13 14:43:56 -07:00
bnnm
9c6376fb25 Fix rare EA 1SNh crashes 2018-08-12 10:59:19 +02:00
bnnm
36db25e876 Fix layered layout with layers of varying channels 2018-08-11 17:58:59 +02:00
NicknineTheEagle
15cc60e604 Some organization and better endianness checks in EA parsers 2018-08-08 17:06:39 +03:00
bnnm
6a86414990 Fix form1 XA bugs [Glint Glitters (PS1), Dance! Dance! Dance! (PS1)] 2018-08-02 17:21:09 +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
NicknineTheEagle
5af027e5f9 Added streamed ABK version support (ABK/AST combo) 2018-07-18 02:39:47 +03:00
bnnm
383bd41b5f Don't setup offsets when samples=0 to avoid EOF reads 2018-07-06 21:07:08 +02:00
bnnm
2df613d893 Fix various music .ivaud [GTA IV (PC)] 2018-07-06 21:04:06 +02:00
bnnm
2695612624 Fix The Bouncer .vs (.str) 2018-06-30 16:01:29 +02:00
bnnm
a535a497f4 Fix some vid EA SCHl and simplify EA block parsing 2018-06-17 01:06:38 +02:00
bnnm
8dd90cd783 Make sure samples_to_do 0 does nothing in blocked layout
It would affect some decoders with codec_data (ex. EA-MT), even though
decoded samples were being ignored
2018-06-17 01:04:16 +02:00
bnnm
9d86c42ea4 Add .H4M videos (wip) 2018-06-03 13:08:41 +02:00
bnnm
f586f443e8 Fix some EA SWVR [Freekstyle (PS2/GC)] 2018-05-05 23:02:22 +02:00
bnnm
59ac455447 Fix some EA SCHl [Need for Speed 3 (PC)] 2018-04-29 19:41:38 +02:00
bnnm
7a212eed9b Allow layers of more than 1 channel 2018-04-22 02:19:37 +02:00
bnnm
5435080684 Fix EA SWVR sample rate and PC codec 2018-04-15 02:29:17 +02:00
bnnm
abd4cc4d56 Fix EA SWVR .stream (MGAV) [Freekstyle (PS2/GC), NASCAR Rumble (PS)] 2018-04-14 02:36:28 +02:00
bnnm
887ceec4cd Simplify WVE block parsing by ignoring empty blocks 2018-04-13 16:46:24 +02:00
bnnm
0482a120bc Minor cleanup 2018-04-13 16:40:50 +02:00
bnnm
dd64be04dd Simplify block parsing by just having 0 samples on empty blocks 2018-04-12 23:37:05 +02:00
bnnm
6f3522348e Allow blocks with 0 samples (ignored, then next block is called)
Happens in Kakuto Chojin .stx, can be used to simplify some blocks
parsers so they don't have to manually search for next valid block and
can just set 0 samples if empty block is found.

Also move block_update code since it was getting a bit unwieldy.
2018-04-12 22:51:24 +02:00
bnnm
bf4898a770 Fix 6ch EAlayer3 in EA SCHl [Medal of Honor 2010 (PC)] 2018-04-07 13:56:20 +02:00
bnnm
da568d47c3 Remove incorrect comment and move code around 2018-03-30 21:29:32 +02:00
bnnm
d990d8b8cd Rename scd_int_layout.c to layered.c for consistency 2018-03-30 21:29: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
868834d52b Accept EA SCHl "SHFR" blocks [Medal of Honor (PC) movies] 2018-03-29 22:52:15 +02: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
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
bd684f7680 Rename wsi_blocked.c to blocked_wsi.c 2018-03-23 18:35:53 +01:00
bnnm
8bb9fa5f4a Clean .WSI 2018-03-23 18:34:37 +01:00
bnnm
ad1f719cf3 Remove mus_acm_layout.c as it's not neede anymore 2018-03-16 17:23:50 +01:00
bnnm
de94edb34b Clean segmented layout setup 2018-03-11 19:43:26 +01:00
bnnm
78f4d5eb7d Fix some .ADM glitches [Dragon Quest V (PS2)] 2018-03-11 01:06:31 +01:00
bnnm
5cebfc49db Rename aax_layout.c to segmented.c 2018-03-10 20:28:23 +01:00
bnnm
15f221af7c Rename aax layout to segmented layout, as now can be used for others 2018-03-10 20:25:57 +01:00
bnnm
1c7a944633 Remove AAX copying ADPCM history between segments
ADX already have history in the header (resulting output is slightly
different but probably more accurate).
2018-03-10 17:39:32 +01:00
bnnm
66c9a06351 Add AAX HCA [Binary Domain (PS3)] 2018-03-10 17:33:48 +01:00
bnnm
693fbf8e3b Clean AAX layout (rename parts, move code around, etc) 2018-03-10 12:19:30 +01:00
bnnm
22063cf0d8 Rename caf files for consistency 2018-03-08 23:31:07 +01:00
bnnm
c0906d1b0f Add CAF .caf/empty extension, cleanup [Baten Kaitos (GC), Fragile (Wii)] 2018-03-08 23:26:10 +01:00
bnnm
e7b564462f Rename some blocked layouts files for clarity 2018-02-25 16:58:21 +01:00
bnnm
c44b7ef264 Rename some blocked layouts for clarity 2018-02-25 16:52:57 +01:00
bnnm
494dfb8194 Fix .adm [Dragon Quest V (PS2)] 2018-02-25 15:04:29 +01:00
bnnm
2f05cfa2e9 Rename psx_mgav to ea_swvr 2018-02-17 21:19:55 +01:00
bnnm
216ecf04b2 Rename psx_mgav to ea_swvr and clean for future changes 2018-02-17 21:15:21 +01:00
bnnm
c3b637a199 Add EA SNS/SPS DSP [Need for Speed Nitro sfx (Wii)] 2018-02-03 17:19:38 +01:00
bnnm
9a279c35b5 Remove debug crap 2018-02-03 15:40:43 +01:00
bnnm
562341f999 Fix SCHl EA-XA v1 mono [Supercross 2000 videos] 2018-01-27 10:47:53 +01:00
bnnm
3236676d5d Fix some XVAG interleave/subsongs/multichannel [God of War 3 (PS4)] 2018-01-13 11:36:35 +01:00
bnnm
ef4ef28ace Simplify xa_init_get_high_nibble call 2018-01-04 23:59:30 +01:00
bnnm
166b9d411e Rename makefile.audacious to makefile.autotools, as now can build more
Not sure about the naming convention but hopefully clear enough
2018-01-04 22:59:07 +01:00
Daniel Richard G
bc45567208 Various updates to the Autotools build system:
Makefile.audacious.am:

* Add test/ subdirectory to the Autotools build

* Add version.h to EXTRA_DIST so that "make distcheck" passes

audacious/Makefile.audacious.am:

* Install Audacious plug-in into the appropriate directory

* No need to include CXXFLAGS in AM_CXXFLAGS, as the former is already
  included in the compiler invocation

configure.ac:

* Need to link to libvorbis in order for static-library builds
  (--disable-shared) to link correctly

* Only add GCC-specific compiler flags if GCC is detected

* Tightened up the GCC warning flags

* Don't set LIBS, so that different targets can link against different
  libraries

* Generate makefile for test/ subdirectory

src/Makefile.audacious.am:

* Install libvgmstream into the library directory

* Removed GCC-specific flag from AM_CFLAGS

* No need to include CFLAGS in AM_CFLAGS, as the former is already
  included in the compiler invocation

* Add libvgmstream dependencies via LIBADD instead of global LIBS var

test/Makefile.audacious.am:

* New makefile template for test/ subdirectory

unbootstrap:

* Also remove "compile" script from bootstrap
2017-12-25 22:18:55 -05:00
bnnm
69644716d7 Improve SCHl: fix EOF/video blocks/SHEN audio, fix num_samples bugs 2017-12-24 01:49:51 +01:00
bnnm
12aa4ef7ef Improve 1SNh: add mu-Law, fix video blocks/SEAD audio, fix some IMA 2017-12-24 01:48:26 +01:00
bnnm
bd88cc2a65 Minor comments/SPS block adjust 2017-12-17 17:38:54 +01:00
Christopher Snowhill
93685b0c8f Simplify interleave handler, safe for mono files as well. 2017-12-09 14:13:25 -08:00
bnnm
cc8256d178 Fix some VAWX multichannel files 2017-12-09 19:01:36 +01:00
bnnm
b5da881a44 Remove thpNextFrameSize and use full_block_size instead 2017-12-08 01:20:09 +01:00
bnnm
666d47ef84 Remove layout_interleave_byte as NGC_DSP_subint is used instead
The layout was designed to do subframe deinterleave (when
less-than-a-frame bytes of each channel are interleaved) in an array and
pass it to "mem" decoders.

In practice this only happens in a handful of formats, was only used
with DSP, and since making "mem" decoders is required it's simpler to
make normal decoders handling the byte layout directly.

In an effort to simplify vgmstream's layouts, code, and other esoteric
features I changed the old decode_ngc_dsp_mem for decode_ngc_dsp_subint;
results are byte-exact.
2017-12-06 21:12:42 +01:00
Christopher Snowhill
d2f48b2066
Merge pull request #149 from bnnm/master
MPC, VXN, SNS/SPS, OGG, FLX, MT
2017-12-03 14:07:53 -08:00
bnnm
6072d17f50 Add EA MicroTalk decoder [FIFA 2001 PS2, Ultima IX voices] 2017-12-03 13:44:55 +01:00
Christopher Snowhill
7037434ae6 Fix 3DO STR SNDS for stereo interleave. 2017-12-03 00:56:39 -08:00
bnnm
8f8b14f80f Fix EALayer3 multichannel and looping bugs 2017-12-01 20:04:33 +01:00
bnnm
e2c059bc31 Add EA .SNS+SNR / .SPS [Burnout Crash, NFS Hot Pursuit PS3] 2017-12-01 17:27:49 +01:00
bnnm
db3af4d407 Rename some blocked layouts for clarity (hopefully) 2017-11-25 01:18:27 +01:00
bnnm
7c7af0bf18 Rename *_DE2 to _*DEC for consistency and since it was first 2017-11-23 22:48:11 +01:00
bnnm
162ec1fb9c Add/fix Falcom RIFF (.dec/de2) + looping [Xanadu Next, Gurumin (PC)] 2017-11-23 22:36:49 +01:00
bnnm
5ce20a710e Fix segfaults when blocks functions set wrong samples/sizes; cleanup 2017-11-18 02:22:57 +01:00
bnnm
79c5cfab49 Clean EA 1SNh/EACS (ea_old) and fix some bugs/looping 2017-11-18 02:20:52 +01:00
bnnm
624b4ead0e Move eacs_block_update to its own file 2017-11-17 20:46:51 +01:00
bnnm
4a2cf9dd91 Fuse EACS and DVI IMA decoder into a configurable IMA decoder
EACS was just DVI (high nibble first) with stereo and mono modes, while
old DVI was mono only.
This unifies both decoders, so DVI_IMA (not interleaved) works with mono
and stereo while DVI_IMA_int (interleaved) forces mono.
Some metas needed to explicitly set DVI_IMA_int but others work with no
change.
2017-11-17 17:18:17 +01:00
bnnm
4dfbc3cf6a Improve CD-XA detection and RIFF-less support; minor XA code cleanup 2017-11-16 19:47:42 +01:00