Commit Graph

116 Commits

Author SHA1 Message Date
bnnm
41bad49872 Fix hang on full loops with xma1 formats
- happens with FFmpeg n5.1.2
2023-01-19 00:08:33 +01:00
Hexagon123
ff7dd2aa80
Add fsb .xen extension 2022-09-06 15:34:30 -05:00
bnnm
4e390bd61a cleanup 2022-07-31 15:14:25 +02:00
bnnm
c56dcc59ca Add .sfx FSB extension 2022-02-13 21:18:10 +01:00
bnnm
892098cd3d logs 2021-10-31 20:22:30 +01:00
bnnm
7935682c6c Fix FSB3 using XMA2 instead of XMA1 (no diffs) [Guitar Hero III (X360)] 2020-06-04 20:13:12 +02:00
bnnm
907016fead Fix some memleaks 2020-05-23 23:27:52 +02:00
bnnm
3e52b1dd0b Cleanup 2020-05-23 23:23:17 +02:00
bnnm
0b98aff930 Fix FSB5 loop end +1 samples and tweaks 2019-09-24 23:56:27 +02:00
bnnm
948aa26706 Fix FSB4 loop end +1 samples and tweak loop detection [Hard Reset (PC)] 2019-09-24 00:52:48 +02: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
6eaf516b23 Tweak FSB ifdefs 2018-08-15 21:19:25 +02:00
bnnm
fa848c2ccd Fix FSB with CELT disabled 2018-08-12 23:12:09 +02:00
bnnm
0e924b6467 Fix possible FSB memleak 2018-08-12 13:57:53 +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
18173d6870 Clean FSB4 for future changes 2018-08-11 18:06:03 +02:00
bnnm
8f17cf75d6 Tweak non-interleaved mode for VAG/GCADPCM (from tool tests), cleanup 2018-08-03 02:12:47 +02:00
bnnm
2e75bce0c3 Add .fsb basic headers mode [Biker Mice from Mars (PS2)] 2018-06-17 00:52:46 +02:00
bnnm
ff6abc48fa Fix some FSB [Hard Reset (PC)] 2018-06-09 17:32:35 +02: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
528b5c3197 Fix bitrate for subsongs and rename streams > subsongs 2018-01-28 00:41:25 +01:00
bnnm
a0a5143daa Fix some FSB IMA [Dead to Rights 2 (Xbox)] 2018-01-27 23:00:27 +01:00
bnnm
d161050fca Update STREAMFILE code a bit 2018-01-27 11:08:51 +01:00
bnnm
7d51693177 Clean FSB variable names and code 2018-01-20 01:40:42 +01:00
bnnm
8607c7a952 Change init_vgmstream_fsb4_wav to use custom IO, as a test 2018-01-20 00:55:37 +01:00
bnnm
757e4cde69 Rename init_x_codec_data to init_x for consistency 2018-01-04 23:22:03 +01:00
bnnm
a3b991ac3f Modify SCD/P3D/FSB/XVAG interleave and fix short last interleave
Previously, the streams' offsets needed to be pre-adjusted with the
interleave; now assumes all streams start in the same offset (first
stream).
This simplifies short last interleaves (SCD/P3D) and makes
layout_mpeg_custom unnecessary (also allows theoretical variable-sized
interleaves).
2017-12-17 19:25:10 +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
86641dc699 Fix log 2017-11-10 23:20:08 +01:00
bnnm
b2ab42673a Tweak FSB log 2017-11-10 22:36:54 +01:00
bnnm
0bb62ce57d Minor comments/documentation 2017-09-29 23:26:42 +02:00
bnnm
6dcc890d19 Adjust FSB4 looping so most jingles don't loop 2017-08-26 03:23:39 +02:00
bnnm
d219804b99 Add stream selection and/or stream name reading for some formats 2017-08-12 11:46:28 +02:00
bnnm
d54492cb95 Update MPEG "interleaved" decoder: now "custom", restructured, added AHX
To support future MPEGs of uncertain layout and frame variations (namely
EALayer3) the code has been restructured: mpeg_decoder does stream
procesing and decoding, while mpeg_custom_utils_x does init and parsing
(write to data buffer + update offsets), per MPEG subtype. Internals
have changed but still gives byte-exact results.
AHX has been adapted to this format as a test. Some modes
(P3D/EALayer3/LyN/AWC) are defined for later development but will fail
on init ATM.
2017-07-29 23:14:04 +02:00
bnnm
6308818b77 Simplify MPEG coding/layouts to allow blocked layouts and future changes 2017-07-29 13:05:23 +02:00
bnnm
86cb660f76 Define MPEG interleave type to improve and simplify some internals 2017-06-25 02:09:12 +02:00
bnnm
003e48e88c Add FSB4 celt comment 2017-03-25 19:05:08 +01:00
bnnm
4bc254d67c Allow FSBs with encryption flag set [Double Fine games] 2017-03-24 16:37:56 +01:00
bnnm
a4327c3529 Improve total_streams check 2017-03-18 17:17:24 +01:00
bnnm
5763a1a229 Use interleaved MPEG FSB decoder [Timeshift, DJ Hero] 2017-03-13 20:05:28 +01:00
bnnm
39abb97b61 Save number of streams info 2017-03-04 02:09:00 +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
f993fe37de Add some preliminar code for multichannel FSBs 2017-02-19 20:28:13 +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
b44cd87a7b Fix multichannel IMA FSB 2017-02-04 19:37:48 +01:00
bnnm
7e106d6a33 Add basic multistream FSB support 2017-01-27 18:01:40 +01:00
bnnm
c68608149c Moved check_extensions/open_stream to streamfile.c/vgmstream.c 2017-01-14 00:59:54 +01:00
bnnm
14d2363670 Moved dsp_read_coefs_be to ngc_dsp_decoder.c 2017-01-13 23:56:48 +01:00
bnnm
f5750ba2cc Moved make_riff_x to ffmpeg_decoder.c (only actually used by FFmpeg)
Also added make_riff_xma2_from_fmt_be
2017-01-13 23:47:52 +01:00
bnnm
aaf137817c IMA tweaks 2017-01-02 17:03:49 +01:00