Скорее всего, MFAudio не видит конца и бесконечно лепит пустоту. Мне больше нравится утилита от все того же VGMToolBox, - test.exe. За ней такого замечено не было, плюс, чтобы наверняка, ставлю еще ключ -i который принудительно ставит количество лупов на 1 и файл просто считывается 1 раз от начала и до конца.
vgmstream
d:\TEMP\!BUILDS\!Utils>test -h
vgmstream CLI decoder r1050-3600-g2c6edf58 Feb 17 2021
Usage: test [-o <outfile.wav>] [options] <infile>
Options:
-o <outfile.wav>: name of output .wav file, default <infile>.wav
<outfile> wildcards can be ?s=subsong, ?n=stream name, ?f=infile
-l loop count: loop count, default 2.0
-f fade time: fade time in seconds after N loops, default 10.0
-d fade delay: fade delay in seconds, default 0.0
-F: don't fade after N loops and play the rest of the stream
-i: ignore looping information and play the whole stream once
-e: force end-to-end looping
-E: force end-to-end looping even if file has real loop points
-s N: select subsong N, if the format supports multiple subsongs
-m: print metadata only, don't decode
-L: append a smpl chunk and create a looping wav
-2 N: only output the Nth (first is 0) set of stereo channels
-p: output to stdout (for piping into another program)
-P: output to stdout even if stdout is a terminal
-c: loop forever (continuously) to stdout
-x: decode and print adxencd command line to encode as ADX
-g: decode and print oggenc command line to encode as OGG
-b: decode and print batch variable commands
-h: print extra commands (for testing)
-V: print version info and supported extensions as JSON
-I: print requested file info as JSON
-v: validate extensions (for extension testing)
-r: output a second file after resetting (for reset testing)
-k N: seeks to N samples before decoding (for seek testing)
-K N: seeks again to N samples before decoding (for seek testing)
-t file: print tags found in file (for tag testing)
-T: print title (for title testing)
-D <max channels>: downmix to <max channels> (for plugin downmix testing)
-O: decode but don't write to file (for performance testing)
 |
Цитата: |
 |
|
|
|
|
|
|
4 ситуация: лупы.
|
|
 |
|
 |
|
Тут опять поможет test.exe и ключ -i
 |
Цитата: |
 |
|
|
|
|
|
|
в том же Гарри Поттере... но извлечь оригинальный файл там вроде нельзя. Можно только оффсеты узнать.
|
|
 |
|
 |
|
Если узнаешь все оффсеты и если выдаст еще и размеры, могу попробовать набросать тебе батник, который порежет архив на части. Ну или если только оффсеты, то тогда при условии, что файлы идут сразу друг за другом, чтобы можно было размер вычислить.
Тут да, самые хреновые случаи, когда разрабы убирают оконцовку звуков или лепят свою, кастомную. В таких случаях я беру от оригинального файла шапку и оконцовку (обычно 16 байт) и леплю вместо своих.