ts-flp 1.0.2 → 1.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,257 +0,0 @@
1
- /**
2
- * Auto-generated event constants from PyFLP
3
- * FL Studio .flp file event IDs and types
4
- *
5
- * Event ID ranges:
6
- * - BYTE (0-63): 1 byte data
7
- * - WORD (64-127): 2 bytes data
8
- * - DWORD (128-191): 4 bytes data
9
- * - TEXT (192-207): Variable length strings (+ some IDs in DATA range)
10
- * - DATA (208+): Variable length binary data
11
- */
12
- // Base offsets for event ID ranges
13
- export const BYTE = 0;
14
- export const WORD = 64;
15
- export const DWORD = 128;
16
- export const TEXT = 192;
17
- export const DATA = 208;
18
- // IDs for TEXT events that use UTF-16LE in newer FL versions
19
- export const NEW_TEXT_IDS = [
20
- TEXT + 49, // ArrangementID.Name
21
- TEXT + 39, // DisplayGroupID.Name
22
- TEXT + 47, // TrackID.Name
23
- ];
24
- /**
25
- * Event IDs used by FL Studio project files
26
- * Based on PyFLP's event definitions
27
- */
28
- export const EVENT_ID = {
29
- // === Project IDs (from project.py) ===
30
- PROJECT_LOOP_ACTIVE: 9,
31
- PROJECT_SHOW_INFO: 10,
32
- PROJECT__VOLUME: 12,
33
- PROJECT_PAN_LAW: 23,
34
- PROJECT_LICENSED: 28,
35
- PROJECT__TEMPO_COARSE: WORD + 2, // 66
36
- PROJECT_PITCH: WORD + 16, // 80
37
- PROJECT__TEMPO_FINE: WORD + 29, // 93
38
- PROJECT_CUR_GROUP_ID: DWORD + 18,
39
- PROJECT_TEMPO: DWORD + 28,
40
- PROJECT_FL_BUILD: DWORD + 31,
41
- PROJECT_TITLE: TEXT + 2, // 194
42
- PROJECT_COMMENTS: TEXT + 3, // 195
43
- PROJECT_URL: TEXT + 5, // 197
44
- PROJECT__RTF_COMMENTS: TEXT + 6, // 198
45
- PROJECT_FL_VERSION: TEXT + 7, // 199
46
- PROJECT_LICENSEE: TEXT + 8, // 200
47
- PROJECT_DATA_PATH: TEXT + 10, // 202
48
- PROJECT_GENRE: TEXT + 14, // 206
49
- PROJECT_ARTISTS: TEXT + 15, // 207
50
- PROJECT_TIMESTAMP: DATA + 29, // 237
51
- // === Channel IDs (from channel.py) ===
52
- CHANNEL_IS_ENABLED: 0,
53
- CHANNEL__VOL_BYTE: 2,
54
- CHANNEL__PAN_BYTE: 3,
55
- CHANNEL_ZIPPED: 15,
56
- CHANNEL_PING_PONG_LOOP: 20,
57
- CHANNEL_TYPE: 21,
58
- CHANNEL_ROUTED_TO: 22,
59
- CHANNEL_IS_LOCKED: 32,
60
- CHANNEL_NEW: WORD,
61
- CHANNEL_FREQ_TILT: WORD + 5, // 69
62
- CHANNEL_FX_FLAGS: WORD + 6, // 70
63
- CHANNEL_CUTOFF: WORD + 7, // 71
64
- CHANNEL__VOL_WORD: WORD + 8, // 72
65
- CHANNEL__PAN_WORD: WORD + 9, // 73
66
- CHANNEL_PREAMP: WORD + 10, // 74
67
- CHANNEL_FADE_OUT: WORD + 11, // 75
68
- CHANNEL_FADE_IN: WORD + 12, // 76
69
- CHANNEL_RESONANCE: WORD + 19, // 83
70
- CHANNEL_STEREO_DELAY: WORD + 21, // 85
71
- CHANNEL_POGO: WORD + 22, // 86
72
- CHANNEL_TIME_SHIFT: WORD + 25, // 89
73
- CHANNEL_CHILDREN: WORD + 30, // 94
74
- CHANNEL_SWING: WORD + 33, // 97
75
- CHANNEL_RING_MOD: DWORD + 3,
76
- CHANNEL_CUT_GROUP: DWORD + 4,
77
- CHANNEL_ROOT_NOTE: DWORD + 7,
78
- CHANNEL_DELAY_MOD_XY: DWORD + 10,
79
- CHANNEL_REVERB: DWORD + 11,
80
- CHANNEL__STRETCH_TIME: DWORD + 12,
81
- CHANNEL_FINE_TUNE: DWORD + 14,
82
- CHANNEL_SAMPLER_FLAGS: DWORD + 15,
83
- CHANNEL_LAYER_FLAGS: DWORD + 16,
84
- CHANNEL_GROUP_NUM: DWORD + 17,
85
- CHANNEL_AU_SAMPLE_RATE: DWORD + 25,
86
- CHANNEL__NAME: TEXT,
87
- CHANNEL_SAMPLE_PATH: TEXT + 4, // 196
88
- CHANNEL_DELAY: DATA + 1, // 209
89
- CHANNEL_PARAMETERS: DATA + 7, // 215
90
- CHANNEL_ENVELOPE_LFO: DATA + 10, // 218
91
- CHANNEL_LEVELS: DATA + 11, // 219
92
- CHANNEL_POLYPHONY: DATA + 13, // 221
93
- CHANNEL_TRACKING: DATA + 20, // 228
94
- CHANNEL_LEVEL_ADJUSTS: DATA + 21, // 229
95
- CHANNEL_AUTOMATION: DATA + 26, // 234
96
- // === Plugin IDs (from plugin.py) ===
97
- PLUGIN_COLOR: DWORD,
98
- PLUGIN_ICON: DWORD + 27,
99
- PLUGIN_INTERNAL_NAME: TEXT + 9, // 201
100
- PLUGIN_NAME: TEXT + 11, // 203
101
- PLUGIN_WRAPPER: DATA + 4, // 212
102
- PLUGIN_DATA: DATA + 5, // 213
103
- // === Display Group IDs ===
104
- DISPLAY_GROUP_NAME: TEXT + 39, // 231
105
- // === Rack IDs ===
106
- RACK_SWING: 11,
107
- RACK__FIT_TO_STEPS: 13,
108
- RACK_WINDOW_HEIGHT: DWORD + 5,
109
- // === Mixer IDs (from mixer.py) ===
110
- MIXER_SLOT_INDEX: WORD + 34, // 98
111
- MIXER_INSERT_ICON: WORD + 31, // 95
112
- MIXER_INSERT_OUTPUT: DWORD + 19,
113
- MIXER_INSERT_COLOR: DWORD + 21,
114
- MIXER_INSERT_INPUT: DWORD + 26,
115
- MIXER_INSERT_NAME: TEXT + 12, // 204
116
- MIXER_INSERT_ROUTING: DATA + 27, // 235
117
- MIXER_INSERT_FLAGS: DATA + 28, // 236
118
- };
119
- /**
120
- * Maps event IDs to their data type
121
- * Used for proper serialization/deserialization
122
- */
123
- export const EVENT_KIND = {
124
- // Project events
125
- [EVENT_ID.PROJECT_LOOP_ACTIVE]: "u8",
126
- [EVENT_ID.PROJECT_SHOW_INFO]: "u8",
127
- [EVENT_ID.PROJECT__VOLUME]: "u8",
128
- [EVENT_ID.PROJECT_PAN_LAW]: "u8",
129
- [EVENT_ID.PROJECT_LICENSED]: "u8",
130
- [EVENT_ID.PROJECT__TEMPO_COARSE]: "u16",
131
- [EVENT_ID.PROJECT_PITCH]: "i16",
132
- [EVENT_ID.PROJECT__TEMPO_FINE]: "u16",
133
- [EVENT_ID.PROJECT_CUR_GROUP_ID]: "i32",
134
- [EVENT_ID.PROJECT_TEMPO]: "u32",
135
- [EVENT_ID.PROJECT_FL_BUILD]: "u32",
136
- [EVENT_ID.PROJECT_TITLE]: "text",
137
- [EVENT_ID.PROJECT_COMMENTS]: "text",
138
- [EVENT_ID.PROJECT_URL]: "text",
139
- [EVENT_ID.PROJECT__RTF_COMMENTS]: "text",
140
- [EVENT_ID.PROJECT_FL_VERSION]: "text",
141
- [EVENT_ID.PROJECT_LICENSEE]: "text",
142
- [EVENT_ID.PROJECT_DATA_PATH]: "text",
143
- [EVENT_ID.PROJECT_GENRE]: "text",
144
- [EVENT_ID.PROJECT_ARTISTS]: "text",
145
- [EVENT_ID.PROJECT_TIMESTAMP]: "data",
146
- // Channel events
147
- [EVENT_ID.CHANNEL_IS_ENABLED]: "u8",
148
- [EVENT_ID.CHANNEL__VOL_BYTE]: "u8",
149
- [EVENT_ID.CHANNEL__PAN_BYTE]: "u8",
150
- [EVENT_ID.CHANNEL_ZIPPED]: "u8",
151
- [EVENT_ID.CHANNEL_PING_PONG_LOOP]: "u8",
152
- [EVENT_ID.CHANNEL_TYPE]: "u8",
153
- [EVENT_ID.CHANNEL_ROUTED_TO]: "i8",
154
- [EVENT_ID.CHANNEL_IS_LOCKED]: "u8",
155
- [EVENT_ID.CHANNEL_NEW]: "u16",
156
- [EVENT_ID.CHANNEL_FREQ_TILT]: "u16",
157
- [EVENT_ID.CHANNEL_FX_FLAGS]: "u16",
158
- [EVENT_ID.CHANNEL_CUTOFF]: "u16",
159
- [EVENT_ID.CHANNEL__VOL_WORD]: "u16",
160
- [EVENT_ID.CHANNEL__PAN_WORD]: "u16",
161
- [EVENT_ID.CHANNEL_PREAMP]: "u16",
162
- [EVENT_ID.CHANNEL_FADE_OUT]: "u16",
163
- [EVENT_ID.CHANNEL_FADE_IN]: "u16",
164
- [EVENT_ID.CHANNEL_RESONANCE]: "u16",
165
- [EVENT_ID.CHANNEL_STEREO_DELAY]: "u16",
166
- [EVENT_ID.CHANNEL_POGO]: "u16",
167
- [EVENT_ID.CHANNEL_TIME_SHIFT]: "u16",
168
- [EVENT_ID.CHANNEL_CHILDREN]: "u16",
169
- [EVENT_ID.CHANNEL_SWING]: "u16",
170
- [EVENT_ID.CHANNEL_RING_MOD]: "u32",
171
- [EVENT_ID.CHANNEL_CUT_GROUP]: "u32",
172
- [EVENT_ID.CHANNEL_ROOT_NOTE]: "u32",
173
- [EVENT_ID.CHANNEL_DELAY_MOD_XY]: "u32",
174
- [EVENT_ID.CHANNEL_REVERB]: "u32",
175
- [EVENT_ID.CHANNEL__STRETCH_TIME]: "f32",
176
- [EVENT_ID.CHANNEL_FINE_TUNE]: "i32",
177
- [EVENT_ID.CHANNEL_SAMPLER_FLAGS]: "u32",
178
- [EVENT_ID.CHANNEL_LAYER_FLAGS]: "u32",
179
- [EVENT_ID.CHANNEL_GROUP_NUM]: "i32",
180
- [EVENT_ID.CHANNEL_AU_SAMPLE_RATE]: "u32",
181
- [EVENT_ID.CHANNEL__NAME]: "text",
182
- [EVENT_ID.CHANNEL_SAMPLE_PATH]: "text",
183
- [EVENT_ID.CHANNEL_DELAY]: "data",
184
- [EVENT_ID.CHANNEL_PARAMETERS]: "data",
185
- [EVENT_ID.CHANNEL_ENVELOPE_LFO]: "data",
186
- [EVENT_ID.CHANNEL_LEVELS]: "data",
187
- [EVENT_ID.CHANNEL_POLYPHONY]: "data",
188
- [EVENT_ID.CHANNEL_TRACKING]: "data",
189
- [EVENT_ID.CHANNEL_LEVEL_ADJUSTS]: "data",
190
- [EVENT_ID.CHANNEL_AUTOMATION]: "data",
191
- // Plugin events
192
- [EVENT_ID.PLUGIN_COLOR]: "u32",
193
- [EVENT_ID.PLUGIN_ICON]: "u32",
194
- [EVENT_ID.PLUGIN_INTERNAL_NAME]: "text",
195
- [EVENT_ID.PLUGIN_NAME]: "text",
196
- [EVENT_ID.PLUGIN_WRAPPER]: "data",
197
- [EVENT_ID.PLUGIN_DATA]: "data",
198
- // Display Group events
199
- [EVENT_ID.DISPLAY_GROUP_NAME]: "data",
200
- // Rack events
201
- [EVENT_ID.RACK_SWING]: "u8",
202
- [EVENT_ID.RACK__FIT_TO_STEPS]: "u8",
203
- [EVENT_ID.RACK_WINDOW_HEIGHT]: "u32",
204
- // Mixer events
205
- [EVENT_ID.MIXER_SLOT_INDEX]: "u16",
206
- [EVENT_ID.MIXER_INSERT_ICON]: "i16",
207
- [EVENT_ID.MIXER_INSERT_OUTPUT]: "i32",
208
- [EVENT_ID.MIXER_INSERT_COLOR]: "u32",
209
- [EVENT_ID.MIXER_INSERT_INPUT]: "i32",
210
- [EVENT_ID.MIXER_INSERT_NAME]: "text",
211
- [EVENT_ID.MIXER_INSERT_ROUTING]: "data",
212
- [EVENT_ID.MIXER_INSERT_FLAGS]: "data",
213
- };
214
- /**
215
- * Determines the event kind based on ID
216
- * Falls back to range-based detection if not explicitly mapped
217
- */
218
- export function getEventKind(eventId) {
219
- // Check explicit mapping first
220
- const mapped = EVENT_KIND[eventId];
221
- if (mapped !== undefined) {
222
- return mapped;
223
- }
224
- // Fall back to range-based detection
225
- if (eventId < WORD) {
226
- return "u8";
227
- }
228
- else if (eventId < DWORD) {
229
- return "u16";
230
- }
231
- else if (eventId < TEXT) {
232
- return "u32";
233
- }
234
- else if (eventId < DATA || NEW_TEXT_IDS.includes(eventId)) {
235
- return "text";
236
- }
237
- else {
238
- return "data";
239
- }
240
- }
241
- /**
242
- * Returns the fixed size for BYTE/WORD/DWORD events
243
- * Returns -1 for variable-length events (TEXT/DATA)
244
- */
245
- export function getEventFixedSize(eventId) {
246
- if (eventId < WORD) {
247
- return 1;
248
- }
249
- else if (eventId < DWORD) {
250
- return 2;
251
- }
252
- else if (eventId < TEXT) {
253
- return 4;
254
- }
255
- return -1; // Variable length
256
- }
257
- //# sourceMappingURL=events.generated.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"events.generated.js","sourceRoot":"","sources":["../../../src/generated/events.generated.ts"],"names":[],"mappings":"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"}
@@ -1,159 +0,0 @@
1
- /**
2
- * Binary reader for FL Studio .flp files
3
- * Uses smart-buffer for binary reading and protobufjs for VarInt decoding
4
- */
5
- import * as protobuf from "protobufjs/minimal.js";
6
- import { SmartBuffer } from "smart-buffer";
7
- export class BinaryReader {
8
- sb;
9
- constructor(buffer) {
10
- this.sb = SmartBuffer.fromBuffer(buffer);
11
- }
12
- /**
13
- * Returns current read position
14
- */
15
- tell() {
16
- return this.sb.readOffset;
17
- }
18
- /**
19
- * Seeks to an absolute position
20
- */
21
- seek(pos) {
22
- this.sb.readOffset = pos;
23
- }
24
- /**
25
- * Seeks relative to current position
26
- */
27
- skip(offset) {
28
- this.sb.readOffset += offset;
29
- }
30
- /**
31
- * Returns total buffer length
32
- */
33
- length() {
34
- return this.sb.length;
35
- }
36
- /**
37
- * Returns remaining bytes to read
38
- */
39
- remaining() {
40
- return this.sb.remaining();
41
- }
42
- /**
43
- * Returns true if there are more bytes to read
44
- */
45
- hasMore() {
46
- return this.sb.remaining() > 0;
47
- }
48
- /**
49
- * Reads an unsigned 8-bit integer
50
- */
51
- readU8() {
52
- return this.sb.readUInt8();
53
- }
54
- /**
55
- * Reads a signed 8-bit integer
56
- */
57
- readI8() {
58
- return this.sb.readInt8();
59
- }
60
- /**
61
- * Reads an unsigned 16-bit integer (little-endian)
62
- */
63
- readU16LE() {
64
- return this.sb.readUInt16LE();
65
- }
66
- /**
67
- * Reads a signed 16-bit integer (little-endian)
68
- */
69
- readI16LE() {
70
- return this.sb.readInt16LE();
71
- }
72
- /**
73
- * Reads an unsigned 32-bit integer (little-endian)
74
- */
75
- readU32LE() {
76
- return this.sb.readUInt32LE();
77
- }
78
- /**
79
- * Reads a signed 32-bit integer (little-endian)
80
- */
81
- readI32LE() {
82
- return this.sb.readInt32LE();
83
- }
84
- /**
85
- * Reads a 32-bit float (little-endian)
86
- */
87
- readF32LE() {
88
- return this.sb.readFloatLE();
89
- }
90
- /**
91
- * Reads a 64-bit float (little-endian)
92
- */
93
- readF64LE() {
94
- return this.sb.readDoubleLE();
95
- }
96
- /**
97
- * Reads raw bytes
98
- */
99
- readBytes(length) {
100
- return this.sb.readBuffer(length);
101
- }
102
- /**
103
- * Reads a VarInt (variable-length integer) using protobufjs
104
- * FL Studio uses this encoding for TEXT and DATA event sizes
105
- */
106
- readVarInt() {
107
- // Get remaining buffer from current position
108
- const remainingBuffer = this.sb.toBuffer().subarray(this.sb.readOffset);
109
- const reader = protobuf.Reader.create(remainingBuffer);
110
- const value = reader.uint32();
111
- // Advance our position by how many bytes protobufjs consumed
112
- this.sb.readOffset += reader.pos;
113
- return value;
114
- }
115
- /**
116
- * Reads an ASCII string (null-terminated)
117
- */
118
- readAsciiString(length) {
119
- const str = this.sb.readString(length, "ascii");
120
- // Remove null terminator if present
121
- const nullPos = str.indexOf("\0");
122
- return nullPos === -1 ? str : str.substring(0, nullPos);
123
- }
124
- /**
125
- * Reads a UTF-16LE string (null-terminated)
126
- */
127
- readUtf16LEString(length) {
128
- const bytes = this.sb.readBuffer(length);
129
- const str = bytes.toString("utf16le");
130
- // Remove null terminator if present
131
- const nullPos = str.indexOf("\0");
132
- return nullPos === -1 ? str : str.substring(0, nullPos);
133
- }
134
- /**
135
- * Peeks at bytes without advancing position
136
- */
137
- peek(length) {
138
- const pos = this.sb.readOffset;
139
- const data = this.sb.readBuffer(length);
140
- this.sb.readOffset = pos;
141
- return data;
142
- }
143
- /**
144
- * Peeks at a single byte without advancing position
145
- */
146
- peekU8() {
147
- const pos = this.sb.readOffset;
148
- const value = this.sb.readUInt8();
149
- this.sb.readOffset = pos;
150
- return value;
151
- }
152
- /**
153
- * Returns the internal buffer
154
- */
155
- toBuffer() {
156
- return this.sb.toBuffer();
157
- }
158
- }
159
- //# sourceMappingURL=BinaryReader.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"BinaryReader.js","sourceRoot":"","sources":["../../../src/io/BinaryReader.ts"],"names":[],"mappings":"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"}
@@ -1,124 +0,0 @@
1
- /**
2
- * Binary writer for FL Studio .flp files
3
- * Uses smart-buffer for binary writing and protobufjs for VarInt encoding
4
- */
5
- import { SmartBuffer } from "smart-buffer";
6
- import * as protobuf from "protobufjs/minimal.js";
7
- export class BinaryWriter {
8
- sb;
9
- constructor() {
10
- this.sb = new SmartBuffer();
11
- }
12
- /**
13
- * Returns current write position (total bytes written)
14
- */
15
- tell() {
16
- return this.sb.writeOffset;
17
- }
18
- /**
19
- * Writes an unsigned 8-bit integer
20
- */
21
- writeU8(value) {
22
- this.sb.writeUInt8(value & 0xff);
23
- }
24
- /**
25
- * Writes a signed 8-bit integer
26
- */
27
- writeI8(value) {
28
- this.sb.writeInt8(value);
29
- }
30
- /**
31
- * Writes an unsigned 16-bit integer (little-endian)
32
- */
33
- writeU16LE(value) {
34
- this.sb.writeUInt16LE(value & 0xffff);
35
- }
36
- /**
37
- * Writes a signed 16-bit integer (little-endian)
38
- */
39
- writeI16LE(value) {
40
- this.sb.writeInt16LE(value);
41
- }
42
- /**
43
- * Writes an unsigned 32-bit integer (little-endian)
44
- */
45
- writeU32LE(value) {
46
- this.sb.writeUInt32LE(value >>> 0);
47
- }
48
- /**
49
- * Writes a signed 32-bit integer (little-endian)
50
- */
51
- writeI32LE(value) {
52
- this.sb.writeInt32LE(value);
53
- }
54
- /**
55
- * Writes a 32-bit float (little-endian)
56
- */
57
- writeF32LE(value) {
58
- this.sb.writeFloatLE(value);
59
- }
60
- /**
61
- * Writes a 64-bit float (little-endian)
62
- */
63
- writeF64LE(value) {
64
- this.sb.writeDoubleLE(value);
65
- }
66
- /**
67
- * Writes raw bytes
68
- */
69
- writeBytes(data) {
70
- this.sb.writeBuffer(data);
71
- }
72
- /**
73
- * Writes a VarInt (variable-length integer) using protobufjs
74
- * FL Studio uses this encoding for TEXT and DATA event sizes
75
- */
76
- writeVarInt(value) {
77
- const writer = protobuf.Writer.create();
78
- writer.uint32(value);
79
- const encoded = writer.finish();
80
- this.sb.writeBuffer(Buffer.from(encoded));
81
- }
82
- /**
83
- * Writes an ASCII string (null-terminated)
84
- */
85
- writeAsciiString(str) {
86
- this.sb.writeString(str + "\0", "ascii");
87
- }
88
- /**
89
- * Writes a UTF-16LE string (null-terminated)
90
- */
91
- writeUtf16LEString(str) {
92
- const buf = Buffer.from(str + "\0", "utf16le");
93
- this.sb.writeBuffer(buf);
94
- }
95
- /**
96
- * Gets the final buffer
97
- */
98
- toBuffer() {
99
- return this.sb.toBuffer();
100
- }
101
- }
102
- /**
103
- * Encodes a VarInt to a Buffer using protobufjs (standalone utility)
104
- */
105
- export function encodeVarInt(value) {
106
- const writer = protobuf.Writer.create();
107
- writer.uint32(value);
108
- return Buffer.from(writer.finish());
109
- }
110
- /**
111
- * Calculates the byte size needed for a VarInt
112
- */
113
- export function varIntSize(value) {
114
- if (value < 0x80)
115
- return 1;
116
- if (value < 0x4000)
117
- return 2;
118
- if (value < 0x200000)
119
- return 3;
120
- if (value < 0x10000000)
121
- return 4;
122
- return 5;
123
- }
124
- //# sourceMappingURL=BinaryWriter.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"BinaryWriter.js","sourceRoot":"","sources":["../../../src/io/BinaryWriter.ts"],"names":[],"mappings":"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"}