vgmstream/src/meta/sfh_streamfile.h
2020-02-02 21:20:51 +01:00

25 lines
834 B
C

#ifndef _SFH_STREAMFILE_H_
#define _SFH_STREAMFILE_H_
#include "deblock_streamfile.h"
/* Deblocks SFH streams, skipping 0x10 garbage added to every chunk */
static STREAMFILE* setup_sfh_streamfile(STREAMFILE *sf, off_t stream_offset, size_t chunk_size, size_t clean_size, const char* extension) {
STREAMFILE *new_sf = NULL;
deblock_config_t cfg = {0};
cfg.stream_start = stream_offset;
cfg.chunk_size = chunk_size;
cfg.skip_size = 0x10;
/* setup sf */
new_sf = open_wrap_streamfile(sf);
new_sf = open_io_deblock_streamfile_f(new_sf, &cfg);
//new_sf = open_buffer_streamfile_f(new_sf, 0);
new_sf = open_clamp_streamfile_f(new_sf, 0x00, clean_size);
if (extension)
new_sf = open_fakename_streamfile_f(new_sf, NULL, extension);
return new_sf;
}
#endif /* _SFH_STREAMFILE_H_ */