Frage

I'm reading Propellerheads' NN-XT file-format, but I'm having problems with the REFE chunk. The NN-XT specifications says, the chunk is structured as follows:


There is a REFE chunk for every sample referenced by the NN-XT patch. (If a patch has no samples it does not have any REFE chunks.)

  • Chunk name
  • Chunk size
  • Version
  • Relative Path to sample
  • Database Path to sample
  • Absolute Path to sample
  • Sample name
  • ReFill name
  • ReFill URL
  • Reserved (Checkpoint)
  • Package Name

The Refill Name is the name of the ReFill as it appears in the Reason Browser, not the file name. A Package is a ReFill, a REX file or a SoundFont file. If the REX or SoundFont file is inside a ReFill, the Package Name should contain the name of the REX or SoundFont file.


Reading this chunk does run fine, but after the Package name has been read, there are still bytes that belong to this chunk (I know this because this chunk appears multiple times and the next "REFE" is about 378 bytes away from the current position in the file [in this particular case of course]).

The documentation does not say anything about bytes that eventually follow, etc. Do you have an Idea of what theese additional bytes may be?

I'm processing the NN-XT file using Python. The following is an example output of the above mentioned chunk-structure.

size:                   832
version:                NNXTVersion(1, 3, 0)
relative path:          NNXTRelativePath(NNXTVersion(1, 1, 0), False)
database path:          NNXTDatabasePath(NNXTVersion(1, 2, 0), True, 'Reason Factory Sound Bank')
absolute path:          NNXTAbsolutePath(NNXTVersion(1, 4, 0), True, 11, NNXTVolume(, 15), True)
sample name:            PianoC23.wav
ReFill name:            Reason Factory Sound Bank
ReFill Url:             www.propellerheads.se
Project name:           Reason Factory Sound Bank

The bytes that I cannot process are as follows (Escaped, max-line width: 80):

 \x00\x00\x00\x0cPianoC23.wav\xbc\x01\x05\x00\x00\x00\xbc\x01\x05\x00\x00\x01\x00\x00\x00\x19Reason Factory Sound Bank\x00\x00\x00
\x06\x00\x00\x00\x19Reason Factory Sound Bank\x00\x00\x00\x15NN-XT Sampler Patches\x00\x00\x00\x05Piano\x00\x00\x00\rPiano samples
\x00\x00\x00\nGrandPiano\x00\x00\x00\x0cPianoC23.wav\x01\xbc\x01\t\x00\x00\x01\x00\x00\x00\x00\x0f\x00\x00\x00\x0b\x00\x00\x00\x08
Computer\x00\x00\x00\x0cwindows (C:)\x00\x00\x00\x0fProgramme (x86)\x00\x00\x00\rPropellerhead\x00\x00\x00\x06Reason\x00\x00\x00\x
16Factory Sound Bank.rfl\x00\x00\x00\x15NN-XT Sampler Patches\x00\x00\x00\x05Piano\x00\x00\x00\rPiano samples\x00\x00\x00\nGrandPi
ano\x00\x00\x00\x0cPianoC23.wav\x01G\x00\x00\x00\x00\x00

After this bytestream, the next REFE chunk begins.

I don't think I am allowed to distribute the specifications, but if you really are interested, you can download it after a simple registration at the Propellerheads' homepage.

Thank you very very much, Niklas R

PS: If you don't have any idea, maybe you know about an email address developers can email to, I couldn't find one.

War es hilfreich?

Lösung

I've recieved an answer from the official devloper support (development@proppellerheads.se). They told me I obviously use an outdated file-format specification, however I've downloaded it from their servers just recently. They told me they will fix this issue and make the newest documentation available.

In Reason 4, new data was added to this chunk. If the Version is equal or later to (1, 3, 0), additional 4 values follow, if not, the chunk's end was reached.

  • Physical Sample name (String)
  • Relative Path to sample (Relative Path)
  • Relative Path to sample (Database Path)
  • Relative Path to sample (Absolute Path)
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top