markdown-ai-rewriter 1.1.2 → 1.2.0

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.
package/dist/cli.js CHANGED
@@ -6,6 +6,7 @@ const fs_1 = require("fs");
6
6
  const path_1 = require("path");
7
7
  const rewriter_1 = require("./core/rewriter");
8
8
  const video_generator_1 = require("./core/video-generator");
9
+ const music_generator_1 = require("./core/music-generator");
9
10
  const PROVIDER_ENV_KEY_MAP = {
10
11
  openai: 'OPENAI_API_KEY',
11
12
  anthropic: 'ANTHROPIC_API_KEY',
@@ -286,5 +287,157 @@ program
286
287
  process.exit(1);
287
288
  }
288
289
  });
290
+ // 音乐 Provider 环境变量映射
291
+ const MUSIC_PROVIDER_ENV_MAP = {
292
+ minimax: 'MINIMAX_API_KEY',
293
+ };
294
+ // 音乐生成命令
295
+ program
296
+ .command('music')
297
+ .description('Generate music from Markdown article or prompt')
298
+ .option('-i, --input <file>', 'Input Markdown file (optional, for background music generation)')
299
+ .option('-p, --prompt <prompt>', 'Music style prompt (e.g., "Indie folk, melancholic, introspective")')
300
+ .option('-l, --lyrics <lyrics>', 'Song lyrics (use \\n for line breaks, supports [verse], [chorus] tags)')
301
+ .option('--lyrics-file <file>', 'Read lyrics from file')
302
+ .option('-o, --output <file>', 'Output audio file path (default: output.mp3)')
303
+ .option('--music-provider <provider>', 'Music provider: minimax (default: minimax)', 'minimax')
304
+ .option('--model <model>', 'Music model: music-2.5+, music-2.5 (default: music-2.5+)', 'music-2.5+')
305
+ .option('--instrumental', 'Generate instrumental music (no vocals)')
306
+ .option('--auto-lyrics', 'Auto-generate lyrics from prompt (when no lyrics provided)')
307
+ .option('--format <format>', 'Audio format: mp3, wav (default: mp3)', 'mp3')
308
+ .option('--sample-rate <rate>', 'Sample rate (default: 44100)', parseInt, 44100)
309
+ .option('--bitrate <rate>', 'Bitrate (default: 256000)', parseInt, 256000)
310
+ .option('--timeout <ms>', 'Timeout in milliseconds (default: 300000)', parseInt, 300000)
311
+ .option('--summary-provider <provider>', 'AI provider for music prompt generation: openai, anthropic, minimax, gemini, deepseek, qwen, glm, doubao')
312
+ .option('--summary-model <model>', 'Model for music prompt generation')
313
+ .option('-v, --verbose', 'Verbose output')
314
+ .action(async (options) => {
315
+ try {
316
+ // 验证参数
317
+ if (!options.input && !options.prompt) {
318
+ console.error('❌ 错误:需要提供 --input 或 --prompt');
319
+ process.exit(1);
320
+ }
321
+ const musicProvider = options.musicProvider;
322
+ const musicEnvKey = MUSIC_PROVIDER_ENV_MAP[musicProvider];
323
+ const musicApiKey = process.env[musicEnvKey];
324
+ if (!musicApiKey) {
325
+ console.error(`❌ 错误:需要 ${musicEnvKey} 环境变量`);
326
+ process.exit(1);
327
+ }
328
+ // 读取歌词
329
+ let lyrics;
330
+ if (options.lyricsFile) {
331
+ lyrics = (0, fs_1.readFileSync)(options.lyricsFile, 'utf-8');
332
+ }
333
+ else if (options.lyrics) {
334
+ lyrics = options.lyrics.replace(/\\n/g, '\n');
335
+ }
336
+ // 非纯音乐模式且没有歌词,需要启用自动歌词
337
+ const isInstrumental = options.instrumental === true;
338
+ const lyricsOptimizer = !isInstrumental && !lyrics && options.autoLyrics === true;
339
+ if (!isInstrumental && !lyrics && !lyricsOptimizer) {
340
+ console.error('❌ 错误:非纯音乐模式需要提供歌词 (--lyrics/--lyrics-file) 或启用自动歌词 (--auto-lyrics)');
341
+ console.error(' 或者使用 --instrumental 生成纯音乐');
342
+ process.exit(1);
343
+ }
344
+ console.log(`🎵 开始生成音乐 (${musicProvider})...\n`);
345
+ if (isInstrumental) {
346
+ console.log(' 模式: 纯音乐(无人声)');
347
+ }
348
+ else if (lyrics) {
349
+ console.log(' 模式: 歌曲(带歌词)');
350
+ }
351
+ else {
352
+ console.log(' 模式: 歌曲(自动生成歌词)');
353
+ }
354
+ const musicGenerator = new music_generator_1.MusicGenerator({
355
+ provider: musicProvider,
356
+ apiKey: musicApiKey,
357
+ model: options.model,
358
+ isInstrumental,
359
+ lyricsOptimizer,
360
+ outputFormat: 'url',
361
+ audioSetting: {
362
+ format: options.format,
363
+ sampleRate: options.sampleRate,
364
+ bitrate: options.bitrate,
365
+ },
366
+ timeout: options.timeout,
367
+ verbose: options.verbose,
368
+ });
369
+ let result;
370
+ if (lyrics) {
371
+ // 带歌词生成
372
+ const prompt = options.prompt || 'Pop, melodic, emotional';
373
+ result = await musicGenerator.generateMusicWithLyrics(prompt, lyrics);
374
+ }
375
+ else if (options.input) {
376
+ // 从 Markdown 生成背景音乐
377
+ const markdown = (0, fs_1.readFileSync)(options.input, 'utf-8');
378
+ let summaryProvider;
379
+ if (options.summaryProvider) {
380
+ const providerKey = PROVIDER_ENV_KEY_MAP[options.summaryProvider];
381
+ const providerApiKey = process.env[providerKey];
382
+ if (!providerApiKey) {
383
+ console.error(`❌ 错误:需要 ${providerKey} 环境变量`);
384
+ process.exit(1);
385
+ }
386
+ const rewriter = new rewriter_1.MarkdownRewriter({
387
+ provider: options.summaryProvider,
388
+ apiKey: providerApiKey,
389
+ model: options.summaryModel,
390
+ verbose: options.verbose,
391
+ });
392
+ summaryProvider = {
393
+ rewrite: async (text, opts) => {
394
+ const result = await rewriter.rewrite(text);
395
+ return result.rewritten;
396
+ },
397
+ };
398
+ }
399
+ result = await musicGenerator.generateFromMarkdown(markdown, summaryProvider);
400
+ }
401
+ else {
402
+ // 直接使用 prompt 生成
403
+ result = await musicGenerator.generateMusic(options.prompt);
404
+ }
405
+ if (result.success && result.audioUrl) {
406
+ console.log('\n✅ 音乐生成成功!');
407
+ if (result.duration) {
408
+ console.log(` 时长: ${(result.duration / 1000).toFixed(1)}s`);
409
+ }
410
+ if (result.fileSize) {
411
+ console.log(` 大小: ${(result.fileSize / 1024).toFixed(1)}KB`);
412
+ }
413
+ console.log(` 音频 URL: ${result.audioUrl}`);
414
+ // 下载音频到本地
415
+ const outputPath = options.output || `output.${options.format}`;
416
+ console.log(`\n📥 下载音频到: ${outputPath}`);
417
+ try {
418
+ const audioResponse = await fetch(result.audioUrl);
419
+ if (audioResponse.ok) {
420
+ const audioBuffer = Buffer.from(await audioResponse.arrayBuffer());
421
+ (0, fs_1.writeFileSync)(outputPath, audioBuffer);
422
+ console.log(`✅ 音频已保存: ${outputPath}`);
423
+ }
424
+ else {
425
+ console.log(`⚠️ 下载失败,请手动下载: ${result.audioUrl}`);
426
+ }
427
+ }
428
+ catch (downloadError) {
429
+ console.log(`⚠️ 下载失败,请手动下载: ${result.audioUrl}`);
430
+ }
431
+ }
432
+ else {
433
+ console.error(`❌ 音乐生成失败: ${result.error}`);
434
+ process.exit(1);
435
+ }
436
+ }
437
+ catch (error) {
438
+ console.error(`❌ 错误:${error.message}`);
439
+ process.exit(1);
440
+ }
441
+ });
289
442
  program.parse();
290
443
  //# sourceMappingURL=cli.js.map
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,87 @@
1
+ import { RewriteOptions } from '../types';
2
+ import { MusicGenerationResult, AudioSetting } from './music-providers/types';
3
+ export { DEFAULT_MINIMAX_MUSIC_URL } from './music-providers/minimax';
4
+ export type { MusicGenerationResult, AudioSetting } from './music-providers/types';
5
+ export interface MusicGenerationConfig {
6
+ /** 音乐生成 Provider */
7
+ provider: 'minimax';
8
+ /** API Key */
9
+ apiKey: string;
10
+ /** 音乐模型 */
11
+ model?: string;
12
+ /** 是否纯音乐(无人声),默认 false */
13
+ isInstrumental?: boolean;
14
+ /** 是否自动生成歌词,默认 false */
15
+ lyricsOptimizer?: boolean;
16
+ /** 输出格式:url 或 hex,默认 url */
17
+ outputFormat?: 'url' | 'hex';
18
+ /** 音频设置 */
19
+ audioSetting?: AudioSetting;
20
+ /** 超时时间(毫秒),默认 300000(5分钟) */
21
+ timeout?: number;
22
+ /** 是否显示详细日志 */
23
+ verbose?: boolean;
24
+ }
25
+ /**
26
+ * 音乐生成器
27
+ *
28
+ * 支持的 Provider:
29
+ * - minimax: MiniMax Music 2.5+ (默认)
30
+ *
31
+ * 使用示例:
32
+ * ```typescript
33
+ * const generator = new MusicGenerator({
34
+ * provider: 'minimax',
35
+ * apiKey: 'your-api-key',
36
+ * isInstrumental: true, // 纯音乐模式
37
+ * });
38
+ *
39
+ * // 生成纯音乐
40
+ * const result = await generator.generateMusic('Indie folk, melancholic, introspective');
41
+ *
42
+ * // 生成歌曲(带歌词)
43
+ * const result = await generator.generateMusicWithLyrics(
44
+ * 'Pop, upbeat, energetic',
45
+ * '[verse]\nHello world\n[chorus]\nLa la la'
46
+ * );
47
+ * ```
48
+ */
49
+ export declare class MusicGenerator {
50
+ private config;
51
+ private provider;
52
+ constructor(config: MusicGenerationConfig);
53
+ /**
54
+ * 创建音乐 Provider
55
+ */
56
+ private createProvider;
57
+ /**
58
+ * 生成音乐(纯音乐或自动歌词)
59
+ *
60
+ * @param prompt 音乐风格描述
61
+ */
62
+ generateMusic(prompt: string): Promise<MusicGenerationResult>;
63
+ /**
64
+ * 生成歌曲(带歌词)
65
+ *
66
+ * @param prompt 音乐风格描述
67
+ * @param lyrics 歌词,支持结构标签如 [verse], [chorus] 等
68
+ */
69
+ generateMusicWithLyrics(prompt: string, lyrics: string): Promise<MusicGenerationResult>;
70
+ /**
71
+ * 从 Markdown 生成背景音乐
72
+ *
73
+ * 根据文章内容自动生成适合的背景音乐
74
+ */
75
+ generateFromMarkdown(markdown: string, summaryProvider?: {
76
+ rewrite: (text: string, options: RewriteOptions) => Promise<string>;
77
+ }): Promise<MusicGenerationResult>;
78
+ /**
79
+ * 使用 AI 生成音乐风格提示词
80
+ */
81
+ private generateMusicPrompt;
82
+ /**
83
+ * 简单提取提示词(不使用 AI)
84
+ */
85
+ private extractSimplePrompt;
86
+ }
87
+ //# sourceMappingURL=music-generator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"music-generator.d.ts","sourceRoot":"","sources":["../../src/core/music-generator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC1C,OAAO,EAAiB,qBAAqB,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAG7F,OAAO,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AAEtE,YAAY,EAAE,qBAAqB,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAEnF,MAAM,WAAW,qBAAqB;IACpC,oBAAoB;IACpB,QAAQ,EAAE,SAAS,CAAC;IACpB,cAAc;IACd,MAAM,EAAE,MAAM,CAAC;IACf,WAAW;IACX,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,0BAA0B;IAC1B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,wBAAwB;IACxB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,4BAA4B;IAC5B,YAAY,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC;IAC7B,WAAW;IACX,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,8BAA8B;IAC9B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,eAAe;IACf,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,MAAM,CAAwB;IACtC,OAAO,CAAC,QAAQ,CAAgB;gBAEpB,MAAM,EAAE,qBAAqB;IAYzC;;OAEG;IACH,OAAO,CAAC,cAAc;IAYtB;;;;OAIG;IACG,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAYnE;;;;;OAKG;IACG,uBAAuB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAY7F;;;;OAIG;IACG,oBAAoB,CACxB,QAAQ,EAAE,MAAM,EAChB,eAAe,CAAC,EAAE;QAAE,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,KAAK,OAAO,CAAC,MAAM,CAAC,CAAA;KAAE,GACxF,OAAO,CAAC,qBAAqB,CAAC;IAyBjC;;OAEG;YACW,mBAAmB;IA4BjC;;OAEG;IACH,OAAO,CAAC,mBAAmB;CAsB5B"}
@@ -0,0 +1,162 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MusicGenerator = exports.DEFAULT_MINIMAX_MUSIC_URL = void 0;
4
+ const minimax_1 = require("./music-providers/minimax");
5
+ var minimax_2 = require("./music-providers/minimax");
6
+ Object.defineProperty(exports, "DEFAULT_MINIMAX_MUSIC_URL", { enumerable: true, get: function () { return minimax_2.DEFAULT_MINIMAX_MUSIC_URL; } });
7
+ /**
8
+ * 音乐生成器
9
+ *
10
+ * 支持的 Provider:
11
+ * - minimax: MiniMax Music 2.5+ (默认)
12
+ *
13
+ * 使用示例:
14
+ * ```typescript
15
+ * const generator = new MusicGenerator({
16
+ * provider: 'minimax',
17
+ * apiKey: 'your-api-key',
18
+ * isInstrumental: true, // 纯音乐模式
19
+ * });
20
+ *
21
+ * // 生成纯音乐
22
+ * const result = await generator.generateMusic('Indie folk, melancholic, introspective');
23
+ *
24
+ * // 生成歌曲(带歌词)
25
+ * const result = await generator.generateMusicWithLyrics(
26
+ * 'Pop, upbeat, energetic',
27
+ * '[verse]\nHello world\n[chorus]\nLa la la'
28
+ * );
29
+ * ```
30
+ */
31
+ class MusicGenerator {
32
+ constructor(config) {
33
+ this.config = {
34
+ isInstrumental: false,
35
+ lyricsOptimizer: false,
36
+ outputFormat: 'url',
37
+ timeout: 300000,
38
+ ...config,
39
+ };
40
+ this.provider = this.createProvider();
41
+ }
42
+ /**
43
+ * 创建音乐 Provider
44
+ */
45
+ createProvider() {
46
+ const { provider, apiKey, model, timeout, verbose } = this.config;
47
+ switch (provider) {
48
+ case 'minimax':
49
+ return new minimax_1.MiniMaxMusicProvider(apiKey, model || 'music-2.5+', { timeout, verbose });
50
+ default:
51
+ throw new Error(`不支持的音乐 Provider: ${provider}`);
52
+ }
53
+ }
54
+ /**
55
+ * 生成音乐(纯音乐或自动歌词)
56
+ *
57
+ * @param prompt 音乐风格描述
58
+ */
59
+ async generateMusic(prompt) {
60
+ const { isInstrumental, lyricsOptimizer, outputFormat, audioSetting } = this.config;
61
+ return this.provider.generateMusic({
62
+ prompt,
63
+ isInstrumental,
64
+ lyricsOptimizer: !isInstrumental && lyricsOptimizer,
65
+ outputFormat,
66
+ audioSetting,
67
+ });
68
+ }
69
+ /**
70
+ * 生成歌曲(带歌词)
71
+ *
72
+ * @param prompt 音乐风格描述
73
+ * @param lyrics 歌词,支持结构标签如 [verse], [chorus] 等
74
+ */
75
+ async generateMusicWithLyrics(prompt, lyrics) {
76
+ const { outputFormat, audioSetting } = this.config;
77
+ return this.provider.generateMusic({
78
+ prompt,
79
+ lyrics,
80
+ isInstrumental: false,
81
+ outputFormat,
82
+ audioSetting,
83
+ });
84
+ }
85
+ /**
86
+ * 从 Markdown 生成背景音乐
87
+ *
88
+ * 根据文章内容自动生成适合的背景音乐
89
+ */
90
+ async generateFromMarkdown(markdown, summaryProvider) {
91
+ try {
92
+ // 1. 生成音乐风格提示词
93
+ let musicPrompt;
94
+ if (summaryProvider) {
95
+ musicPrompt = await this.generateMusicPrompt(markdown, summaryProvider);
96
+ }
97
+ else {
98
+ musicPrompt = this.extractSimplePrompt(markdown);
99
+ }
100
+ if (this.config.verbose) {
101
+ console.log(`🎵 音乐风格提示词:\n${musicPrompt}\n`);
102
+ }
103
+ // 2. 生成音乐
104
+ return await this.generateMusic(musicPrompt);
105
+ }
106
+ catch (error) {
107
+ return {
108
+ success: false,
109
+ error: error.message,
110
+ };
111
+ }
112
+ }
113
+ /**
114
+ * 使用 AI 生成音乐风格提示词
115
+ */
116
+ async generateMusicPrompt(markdown, provider) {
117
+ const prompt = `请根据以下文章内容,生成一个适合作为背景音乐的风格描述。
118
+
119
+ 要求:
120
+ 1. 分析文章的情感基调和主题
121
+ 2. 用英文描述音乐风格、情绪、场景
122
+ 3. 包含具体的音乐元素描述(如乐器、节奏、氛围)
123
+ 4. 输出长度控制在 50-200 字之间
124
+ 5. 只输出音乐风格描述,不要其他解释
125
+
126
+ 示例输出格式:
127
+ "Indie folk, melancholic, introspective, acoustic guitar, soft piano, gentle drums, rainy day atmosphere"
128
+
129
+ 文章内容:
130
+ ${markdown.slice(0, 2000)}`;
131
+ const result = await provider.rewrite(prompt, {
132
+ style: 'creative',
133
+ temperature: 0.7,
134
+ maxTokens: 500,
135
+ });
136
+ return result.replace(/^["']|["']$/g, '').trim();
137
+ }
138
+ /**
139
+ * 简单提取提示词(不使用 AI)
140
+ */
141
+ extractSimplePrompt(markdown) {
142
+ // 提取标题
143
+ const titleMatch = markdown.match(/^#\s+(.+)$/m);
144
+ const title = titleMatch ? titleMatch[1] : '';
145
+ // 简单情感分析
146
+ const positiveWords = ['happy', 'joy', 'success', 'love', 'beautiful', '快乐', '成功', '美好', '幸福'];
147
+ const negativeWords = ['sad', 'fail', 'loss', 'pain', '悲伤', '失败', '痛苦', '遗憾'];
148
+ const text = markdown.toLowerCase();
149
+ const hasPositive = positiveWords.some(w => text.includes(w));
150
+ const hasNegative = negativeWords.some(w => text.includes(w));
151
+ let mood = 'neutral, calm';
152
+ if (hasPositive && !hasNegative) {
153
+ mood = 'upbeat, cheerful, optimistic';
154
+ }
155
+ else if (hasNegative && !hasPositive) {
156
+ mood = 'melancholic, introspective, emotional';
157
+ }
158
+ return `Ambient, ${mood}, soft background music, suitable for reading, gentle melody`;
159
+ }
160
+ }
161
+ exports.MusicGenerator = MusicGenerator;
162
+ //# sourceMappingURL=music-generator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"music-generator.js","sourceRoot":"","sources":["../../src/core/music-generator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export { MiniMaxMusicProvider, DEFAULT_MINIMAX_MUSIC_URL } from './minimax';
2
+ export type { MusicProvider, MusicGenerationOptions, MusicGenerationResult, AudioSetting } from './types';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/music-providers/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,yBAAyB,EAAE,MAAM,WAAW,CAAC;AAC5E,YAAY,EAAE,aAAa,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC"}
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DEFAULT_MINIMAX_MUSIC_URL = exports.MiniMaxMusicProvider = void 0;
4
+ var minimax_1 = require("./minimax");
5
+ Object.defineProperty(exports, "MiniMaxMusicProvider", { enumerable: true, get: function () { return minimax_1.MiniMaxMusicProvider; } });
6
+ Object.defineProperty(exports, "DEFAULT_MINIMAX_MUSIC_URL", { enumerable: true, get: function () { return minimax_1.DEFAULT_MINIMAX_MUSIC_URL; } });
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/music-providers/index.ts"],"names":[],"mappings":";;;AAAA,qCAA4E;AAAnE,+GAAA,oBAAoB,OAAA;AAAE,oHAAA,yBAAyB,OAAA"}
@@ -0,0 +1,22 @@
1
+ import { MusicProvider, MusicGenerationOptions, MusicGenerationResult } from './types';
2
+ export declare const DEFAULT_MINIMAX_MUSIC_URL = "https://api.minimax.io/v1/music_generation";
3
+ /**
4
+ * MiniMax 音乐生成 Provider
5
+ *
6
+ * 支持模型:
7
+ * - music-2.5+ (推荐,支持纯音乐模式)
8
+ * - music-2.5
9
+ */
10
+ export declare class MiniMaxMusicProvider implements MusicProvider {
11
+ name: string;
12
+ private apiKey;
13
+ private model;
14
+ private verbose;
15
+ private timeout;
16
+ constructor(apiKey: string, model?: string, options?: {
17
+ verbose?: boolean;
18
+ timeout?: number;
19
+ });
20
+ generateMusic(options: MusicGenerationOptions): Promise<MusicGenerationResult>;
21
+ }
22
+ //# sourceMappingURL=minimax.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"minimax.d.ts","sourceRoot":"","sources":["../../../src/core/music-providers/minimax.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAEvF,eAAO,MAAM,yBAAyB,+CAA+C,CAAC;AAEtF;;;;;;GAMG;AACH,qBAAa,oBAAqB,YAAW,aAAa;IACxD,IAAI,SAAmB;IACvB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,OAAO,CAAS;gBAGtB,MAAM,EAAE,MAAM,EACd,KAAK,GAAE,MAAqB,EAC5B,OAAO,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,OAAO,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE;IAQ7C,aAAa,CAAC,OAAO,EAAE,sBAAsB,GAAG,OAAO,CAAC,qBAAqB,CAAC;CA2JrF"}
@@ -0,0 +1,137 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MiniMaxMusicProvider = exports.DEFAULT_MINIMAX_MUSIC_URL = void 0;
4
+ exports.DEFAULT_MINIMAX_MUSIC_URL = 'https://api.minimax.io/v1/music_generation';
5
+ /**
6
+ * MiniMax 音乐生成 Provider
7
+ *
8
+ * 支持模型:
9
+ * - music-2.5+ (推荐,支持纯音乐模式)
10
+ * - music-2.5
11
+ */
12
+ class MiniMaxMusicProvider {
13
+ constructor(apiKey, model = 'music-2.5+', options) {
14
+ this.name = 'minimax-music';
15
+ this.apiKey = apiKey;
16
+ this.model = model;
17
+ this.verbose = options?.verbose || false;
18
+ this.timeout = options?.timeout || 300000; // 默认 5 分钟超时
19
+ }
20
+ async generateMusic(options) {
21
+ const { prompt, lyrics, isInstrumental = false, lyricsOptimizer = false, outputFormat = 'url', stream = false, audioSetting, } = options;
22
+ if (this.verbose) {
23
+ console.log(`🎵 [MiniMax] 开始生成音乐...`);
24
+ console.log(` 模型: ${this.model}`);
25
+ console.log(` 纯音乐: ${isInstrumental}`);
26
+ console.log(` 自动歌词: ${lyricsOptimizer}`);
27
+ }
28
+ // 参数验证
29
+ if (!isInstrumental && !lyrics && !lyricsOptimizer) {
30
+ return {
31
+ success: false,
32
+ error: '非纯音乐模式必须提供歌词 (lyrics) 或启用自动歌词生成 (lyricsOptimizer: true)',
33
+ };
34
+ }
35
+ if (isInstrumental && this.model !== 'music-2.5+') {
36
+ return {
37
+ success: false,
38
+ error: '纯音乐模式仅支持 music-2.5+ 模型',
39
+ };
40
+ }
41
+ try {
42
+ // 构建请求体
43
+ const requestBody = {
44
+ model: this.model,
45
+ prompt,
46
+ output_format: outputFormat,
47
+ stream,
48
+ };
49
+ // 纯音乐模式
50
+ if (isInstrumental) {
51
+ requestBody.is_instrumental = true;
52
+ }
53
+ else {
54
+ // 非纯音乐模式
55
+ if (lyrics) {
56
+ requestBody.lyrics = lyrics;
57
+ }
58
+ if (lyricsOptimizer) {
59
+ requestBody.lyrics_optimizer = true;
60
+ }
61
+ }
62
+ // 音频设置
63
+ if (audioSetting) {
64
+ requestBody.audio_setting = {
65
+ sample_rate: audioSetting.sampleRate || 44100,
66
+ bitrate: audioSetting.bitrate || 256000,
67
+ format: audioSetting.format || 'mp3',
68
+ };
69
+ }
70
+ if (this.verbose) {
71
+ console.log(` 请求参数:`, JSON.stringify(requestBody, null, 2));
72
+ }
73
+ // 发送请求
74
+ const controller = new AbortController();
75
+ const timeoutId = setTimeout(() => controller.abort(), this.timeout);
76
+ const response = await fetch(exports.DEFAULT_MINIMAX_MUSIC_URL, {
77
+ method: 'POST',
78
+ headers: {
79
+ 'Authorization': `Bearer ${this.apiKey}`,
80
+ 'Content-Type': 'application/json',
81
+ },
82
+ body: JSON.stringify(requestBody),
83
+ signal: controller.signal,
84
+ });
85
+ clearTimeout(timeoutId);
86
+ if (!response.ok) {
87
+ const errorText = await response.text();
88
+ throw new Error(`API 请求失败: ${response.status} - ${errorText}`);
89
+ }
90
+ const result = await response.json();
91
+ // 检查响应状态
92
+ if (result.base_resp?.status_code !== 0) {
93
+ throw new Error(`音乐生成失败: ${result.base_resp?.status_code} - ${result.base_resp?.status_msg}`);
94
+ }
95
+ if (!result.data?.audio) {
96
+ throw new Error('未返回音频数据');
97
+ }
98
+ if (this.verbose) {
99
+ console.log(`✅ [MiniMax] 音乐生成成功!`);
100
+ if (result.extra_info) {
101
+ console.log(` 时长: ${(result.extra_info.music_duration || 0) / 1000}s`);
102
+ console.log(` 大小: ${((result.extra_info.music_size || 0) / 1024).toFixed(1)}KB`);
103
+ }
104
+ }
105
+ // 返回结果
106
+ const musicResult = {
107
+ success: true,
108
+ duration: result.extra_info?.music_duration,
109
+ sampleRate: result.extra_info?.music_sample_rate,
110
+ channels: result.extra_info?.music_channel,
111
+ bitrate: result.extra_info?.bitrate,
112
+ fileSize: result.extra_info?.music_size,
113
+ };
114
+ if (outputFormat === 'url') {
115
+ musicResult.audioUrl = result.data.audio;
116
+ }
117
+ else {
118
+ musicResult.audioData = result.data.audio;
119
+ }
120
+ return musicResult;
121
+ }
122
+ catch (error) {
123
+ if (error.name === 'AbortError') {
124
+ return {
125
+ success: false,
126
+ error: `音乐生成超时(等待 ${this.timeout / 1000}s)`,
127
+ };
128
+ }
129
+ return {
130
+ success: false,
131
+ error: error.message,
132
+ };
133
+ }
134
+ }
135
+ }
136
+ exports.MiniMaxMusicProvider = MiniMaxMusicProvider;
137
+ //# sourceMappingURL=minimax.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"minimax.js","sourceRoot":"","sources":["../../../src/core/music-providers/minimax.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,60 @@
1
+ /**
2
+ * 音乐生成 Provider 接口
3
+ */
4
+ export interface MusicProvider {
5
+ name: string;
6
+ generateMusic(options: MusicGenerationOptions): Promise<MusicGenerationResult>;
7
+ }
8
+ /**
9
+ * 音乐生成选项
10
+ */
11
+ export interface MusicGenerationOptions {
12
+ /** 音乐风格描述提示词 */
13
+ prompt: string;
14
+ /** 歌词(非纯音乐模式必需) */
15
+ lyrics?: string;
16
+ /** 是否纯音乐(无人声),默认 false */
17
+ isInstrumental?: boolean;
18
+ /** 是否自动生成歌词(当 lyrics 为空时从 prompt 生成),默认 false */
19
+ lyricsOptimizer?: boolean;
20
+ /** 输出格式:url 或 hex,默认 url */
21
+ outputFormat?: 'url' | 'hex';
22
+ /** 是否流式输出,默认 false */
23
+ stream?: boolean;
24
+ /** 音频设置 */
25
+ audioSetting?: AudioSetting;
26
+ }
27
+ /**
28
+ * 音频设置
29
+ */
30
+ export interface AudioSetting {
31
+ /** 采样率,默认 44100 */
32
+ sampleRate?: number;
33
+ /** 比特率,默认 256000 */
34
+ bitrate?: number;
35
+ /** 格式:mp3, wav 等,默认 mp3 */
36
+ format?: string;
37
+ }
38
+ /**
39
+ * 音乐生成结果
40
+ */
41
+ export interface MusicGenerationResult {
42
+ success: boolean;
43
+ /** 音频文件 URL(outputFormat 为 url 时) */
44
+ audioUrl?: string;
45
+ /** 音频数据(outputFormat 为 hex 时,hex 编码) */
46
+ audioData?: string;
47
+ /** 音乐时长(毫秒) */
48
+ duration?: number;
49
+ /** 采样率 */
50
+ sampleRate?: number;
51
+ /** 声道数 */
52
+ channels?: number;
53
+ /** 比特率 */
54
+ bitrate?: number;
55
+ /** 文件大小(字节) */
56
+ fileSize?: number;
57
+ /** 错误信息 */
58
+ error?: string;
59
+ }
60
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/core/music-providers/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,CAAC,OAAO,EAAE,sBAAsB,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAAC;CAChF;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,gBAAgB;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,mBAAmB;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,0BAA0B;IAC1B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,iDAAiD;IACjD,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,4BAA4B;IAC5B,YAAY,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC;IAC7B,sBAAsB;IACtB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,WAAW;IACX,YAAY,CAAC,EAAE,YAAY,CAAC;CAC7B;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,mBAAmB;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,oBAAoB;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,2BAA2B;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,OAAO,CAAC;IACjB,qCAAqC;IACrC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,wCAAwC;IACxC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU;IACV,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU;IACV,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU;IACV,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,eAAe;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW;IACX,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/core/music-providers/types.ts"],"names":[],"mappings":""}
package/dist/index.d.ts CHANGED
@@ -29,6 +29,10 @@ export { DoubaoVideoProvider } from './core/video-providers/doubao';
29
29
  export { KlingVideoProvider } from './core/video-providers/kling';
30
30
  export { RunwayVideoProvider } from './core/video-providers/runway';
31
31
  export type { VideoProvider, VideoGenerationOptions } from './core/video-providers/types';
32
+ export { MusicGenerator, DEFAULT_MINIMAX_MUSIC_URL } from './core/music-generator';
33
+ export type { MusicGenerationConfig, MusicGenerationResult, AudioSetting } from './core/music-generator';
34
+ export { MiniMaxMusicProvider } from './core/music-providers/minimax';
35
+ export type { MusicProvider, MusicGenerationOptions } from './core/music-providers/types';
32
36
  export { BaseProvider } from './core/text-providers/base';
33
37
  export { OpenAICompatibleProvider } from './core/text-providers/openai-compatible';
34
38
  export * from './types';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,gCAAgC,EAAE,MAAM,oCAAoC,CAAC;AAC3G,OAAO,EAAE,cAAc,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvF,OAAO,EAAE,gBAAgB,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAC7F,OAAO,EAAE,kBAAkB,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AACnG,OAAO,EAAE,YAAY,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACjF,OAAO,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAC9E,OAAO,EAAE,cAAc,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvF,OAAO,EAAE,cAAc,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvF,OAAO,EAAE,eAAe,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AAC1F,OAAO,EAAE,oBAAoB,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AACjG,OAAO,EAAE,mBAAmB,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AAC9F,OAAO,EAAE,mBAAmB,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AAC9F,OAAO,EAAE,mBAAmB,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AAC9F,OAAO,EAAE,uBAAuB,EAAE,4BAA4B,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AAC1H,OAAO,EAAE,cAAc,EAAE,yBAAyB,EAAE,wBAAwB,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AACtI,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAChE,YAAY,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAC3F,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AACtE,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AACpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAClE,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AACpE,YAAY,EAAE,aAAa,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AAC1F,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,wBAAwB,EAAE,MAAM,yCAAyC,CAAC;AACnF,cAAc,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,gCAAgC,EAAE,MAAM,oCAAoC,CAAC;AAC3G,OAAO,EAAE,cAAc,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvF,OAAO,EAAE,gBAAgB,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAC7F,OAAO,EAAE,kBAAkB,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AACnG,OAAO,EAAE,YAAY,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACjF,OAAO,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAC9E,OAAO,EAAE,cAAc,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvF,OAAO,EAAE,cAAc,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvF,OAAO,EAAE,eAAe,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AAC1F,OAAO,EAAE,oBAAoB,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AACjG,OAAO,EAAE,mBAAmB,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AAC9F,OAAO,EAAE,mBAAmB,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AAC9F,OAAO,EAAE,mBAAmB,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AAC9F,OAAO,EAAE,uBAAuB,EAAE,4BAA4B,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AAC1H,OAAO,EAAE,cAAc,EAAE,yBAAyB,EAAE,wBAAwB,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AACtI,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAChE,YAAY,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAC3F,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AACtE,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AACpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAClE,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AACpE,YAAY,EAAE,aAAa,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AAC1F,OAAO,EAAE,cAAc,EAAE,yBAAyB,EAAE,MAAM,wBAAwB,CAAC;AACnF,YAAY,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACzG,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AACtE,YAAY,EAAE,aAAa,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AAC1F,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,wBAAwB,EAAE,MAAM,yCAAyC,CAAC;AACnF,cAAc,SAAS,CAAC"}
package/dist/index.js CHANGED
@@ -14,7 +14,8 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.OpenAICompatibleProvider = exports.BaseProvider = exports.RunwayVideoProvider = exports.KlingVideoProvider = exports.DoubaoVideoProvider = exports.MiniMaxVideoProvider = exports.SEEDANCE_MODELS = exports.DEFAULT_KLING_VIDEO_URL = exports.DEFAULT_DOUBAO_VIDEO_URL = exports.DEFAULT_MINIMAX_VIDEO_URL = exports.VideoGenerator = exports.IMAGEN_MODELS = exports.DEFAULT_NANO_BANANA_BASE_URL = exports.NanoBananaImageProvider = exports.DEFAULT_DOUBAO_IMAGE_URL = exports.DoubaoImageProvider = exports.DEFAULT_GEMINI_IMAGE_URL = exports.GeminiImageProvider = exports.DEFAULT_OPENAI_IMAGE_URL = exports.OpenAIImageProvider = exports.DEFAULT_MINIMAX_IMAGE_URL = exports.MiniMaxImageProvider = exports.DEFAULT_MINIMAX_BASE_URL = exports.MinimaxProvider = exports.DEFAULT_WENXIN_BASE_URL = exports.WenxinProvider = exports.DEFAULT_DOUBAO_BASE_URL = exports.DoubaoProvider = exports.DEFAULT_GLM_BASE_URL = exports.GLMProvider = exports.DEFAULT_QWEN_BASE_URL = exports.QwenProvider = exports.DEFAULT_OPENROUTER_BASE_URL = exports.OpenRouterProvider = exports.DEFAULT_DEEPSEEK_BASE_URL = exports.DeepSeekProvider = exports.DEFAULT_GEMINI_BASE_URL = exports.GeminiProvider = exports.DEFAULT_AZURE_OPENAI_API_VERSION = exports.AzureOpenAIProvider = exports.AnthropicProvider = exports.OpenAIProvider = exports.ImageProcessor = exports.FullRewriter = exports.SectionRewriter = exports.SectionParser = exports.QuotaManager = exports.MarkdownParser = exports.MarkdownRewriter = void 0;
17
+ exports.MiniMaxMusicProvider = exports.DEFAULT_MINIMAX_MUSIC_URL = exports.MusicGenerator = exports.RunwayVideoProvider = exports.KlingVideoProvider = exports.DoubaoVideoProvider = exports.MiniMaxVideoProvider = exports.SEEDANCE_MODELS = exports.DEFAULT_KLING_VIDEO_URL = exports.DEFAULT_DOUBAO_VIDEO_URL = exports.DEFAULT_MINIMAX_VIDEO_URL = exports.VideoGenerator = exports.IMAGEN_MODELS = exports.DEFAULT_NANO_BANANA_BASE_URL = exports.NanoBananaImageProvider = exports.DEFAULT_DOUBAO_IMAGE_URL = exports.DoubaoImageProvider = exports.DEFAULT_GEMINI_IMAGE_URL = exports.GeminiImageProvider = exports.DEFAULT_OPENAI_IMAGE_URL = exports.OpenAIImageProvider = exports.DEFAULT_MINIMAX_IMAGE_URL = exports.MiniMaxImageProvider = exports.DEFAULT_MINIMAX_BASE_URL = exports.MinimaxProvider = exports.DEFAULT_WENXIN_BASE_URL = exports.WenxinProvider = exports.DEFAULT_DOUBAO_BASE_URL = exports.DoubaoProvider = exports.DEFAULT_GLM_BASE_URL = exports.GLMProvider = exports.DEFAULT_QWEN_BASE_URL = exports.QwenProvider = exports.DEFAULT_OPENROUTER_BASE_URL = exports.OpenRouterProvider = exports.DEFAULT_DEEPSEEK_BASE_URL = exports.DeepSeekProvider = exports.DEFAULT_GEMINI_BASE_URL = exports.GeminiProvider = exports.DEFAULT_AZURE_OPENAI_API_VERSION = exports.AzureOpenAIProvider = exports.AnthropicProvider = exports.OpenAIProvider = exports.ImageProcessor = exports.FullRewriter = exports.SectionRewriter = exports.SectionParser = exports.QuotaManager = exports.MarkdownParser = exports.MarkdownRewriter = void 0;
18
+ exports.OpenAICompatibleProvider = exports.BaseProvider = void 0;
18
19
  var rewriter_1 = require("./core/rewriter");
19
20
  Object.defineProperty(exports, "MarkdownRewriter", { enumerable: true, get: function () { return rewriter_1.MarkdownRewriter; } });
20
21
  var parser_1 = require("./core/parser");
@@ -91,6 +92,11 @@ var kling_1 = require("./core/video-providers/kling");
91
92
  Object.defineProperty(exports, "KlingVideoProvider", { enumerable: true, get: function () { return kling_1.KlingVideoProvider; } });
92
93
  var runway_1 = require("./core/video-providers/runway");
93
94
  Object.defineProperty(exports, "RunwayVideoProvider", { enumerable: true, get: function () { return runway_1.RunwayVideoProvider; } });
95
+ var music_generator_1 = require("./core/music-generator");
96
+ Object.defineProperty(exports, "MusicGenerator", { enumerable: true, get: function () { return music_generator_1.MusicGenerator; } });
97
+ Object.defineProperty(exports, "DEFAULT_MINIMAX_MUSIC_URL", { enumerable: true, get: function () { return music_generator_1.DEFAULT_MINIMAX_MUSIC_URL; } });
98
+ var minimax_4 = require("./core/music-providers/minimax");
99
+ Object.defineProperty(exports, "MiniMaxMusicProvider", { enumerable: true, get: function () { return minimax_4.MiniMaxMusicProvider; } });
94
100
  var base_1 = require("./core/text-providers/base");
95
101
  Object.defineProperty(exports, "BaseProvider", { enumerable: true, get: function () { return base_1.BaseProvider; } });
96
102
  var openai_compatible_1 = require("./core/text-providers/openai-compatible");
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,4CAAmD;AAA1C,4GAAA,gBAAgB,OAAA;AACzB,wCAA+C;AAAtC,wGAAA,cAAc,OAAA;AACvB,sDAAoD;AAA3C,6GAAA,YAAY,OAAA;AACrB,wDAAsD;AAA7C,+GAAA,aAAa,OAAA;AACtB,4DAA0D;AAAjD,mHAAA,eAAe,OAAA;AACxB,sDAAoD;AAA3C,6GAAA,YAAY,OAAA;AACrB,0DAAwD;AAA/C,iHAAA,cAAc,OAAA;AACvB,uDAA8D;AAArD,wGAAA,cAAc,OAAA;AACvB,6DAAoE;AAA3D,8GAAA,iBAAiB,OAAA;AAC1B,mEAA2G;AAAlG,mHAAA,mBAAmB,OAAA;AAAE,gIAAA,gCAAgC,OAAA;AAC9D,uDAAuF;AAA9E,wGAAA,cAAc,OAAA;AAAE,iHAAA,uBAAuB,OAAA;AAChD,2DAA6F;AAApF,4GAAA,gBAAgB,OAAA;AAAE,qHAAA,yBAAyB,OAAA;AACpD,+DAAmG;AAA1F,gHAAA,kBAAkB,OAAA;AAAE,yHAAA,2BAA2B,OAAA;AACxD,mDAAiF;AAAxE,oGAAA,YAAY,OAAA;AAAE,6GAAA,qBAAqB,OAAA;AAC5C,iDAA8E;AAArE,kGAAA,WAAW,OAAA;AAAE,2GAAA,oBAAoB,OAAA;AAC1C,uDAAuF;AAA9E,wGAAA,cAAc,OAAA;AAAE,iHAAA,uBAAuB,OAAA;AAChD,uDAAuF;AAA9E,wGAAA,cAAc,OAAA;AAAE,iHAAA,uBAAuB,OAAA;AAChD,yDAA0F;AAAjF,0GAAA,eAAe,OAAA;AAAE,mHAAA,wBAAwB,OAAA;AAClD,0DAAiG;AAAxF,+GAAA,oBAAoB,OAAA;AAAE,oHAAA,yBAAyB,OAAA;AACxD,wDAA8F;AAArF,6GAAA,mBAAmB,OAAA;AAAE,kHAAA,wBAAwB,OAAA;AACtD,wDAA8F;AAArF,6GAAA,mBAAmB,OAAA;AAAE,kHAAA,wBAAwB,OAAA;AACtD,wDAA8F;AAArF,6GAAA,mBAAmB,OAAA;AAAE,kHAAA,wBAAwB,OAAA;AACtD,kEAA0H;AAAjH,sHAAA,uBAAuB,OAAA;AAAE,2HAAA,4BAA4B,OAAA;AAAE,4GAAA,aAAa,OAAA;AAC7E,0DAAsI;AAA7H,iHAAA,cAAc,OAAA;AAAE,4HAAA,yBAAyB,OAAA;AAAE,2HAAA,wBAAwB,OAAA;AAAE,0HAAA,uBAAuB,OAAA;AACrG,wDAAgE;AAAvD,yGAAA,eAAe,OAAA;AAExB,0DAAsE;AAA7D,+GAAA,oBAAoB,OAAA;AAC7B,wDAAoE;AAA3D,6GAAA,mBAAmB,OAAA;AAC5B,sDAAkE;AAAzD,2GAAA,kBAAkB,OAAA;AAC3B,wDAAoE;AAA3D,6GAAA,mBAAmB,OAAA;AAE5B,mDAA0D;AAAjD,oGAAA,YAAY,OAAA;AACrB,6EAAmF;AAA1E,6HAAA,wBAAwB,OAAA;AACjC,0CAAwB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA,4CAAmD;AAA1C,4GAAA,gBAAgB,OAAA;AACzB,wCAA+C;AAAtC,wGAAA,cAAc,OAAA;AACvB,sDAAoD;AAA3C,6GAAA,YAAY,OAAA;AACrB,wDAAsD;AAA7C,+GAAA,aAAa,OAAA;AACtB,4DAA0D;AAAjD,mHAAA,eAAe,OAAA;AACxB,sDAAoD;AAA3C,6GAAA,YAAY,OAAA;AACrB,0DAAwD;AAA/C,iHAAA,cAAc,OAAA;AACvB,uDAA8D;AAArD,wGAAA,cAAc,OAAA;AACvB,6DAAoE;AAA3D,8GAAA,iBAAiB,OAAA;AAC1B,mEAA2G;AAAlG,mHAAA,mBAAmB,OAAA;AAAE,gIAAA,gCAAgC,OAAA;AAC9D,uDAAuF;AAA9E,wGAAA,cAAc,OAAA;AAAE,iHAAA,uBAAuB,OAAA;AAChD,2DAA6F;AAApF,4GAAA,gBAAgB,OAAA;AAAE,qHAAA,yBAAyB,OAAA;AACpD,+DAAmG;AAA1F,gHAAA,kBAAkB,OAAA;AAAE,yHAAA,2BAA2B,OAAA;AACxD,mDAAiF;AAAxE,oGAAA,YAAY,OAAA;AAAE,6GAAA,qBAAqB,OAAA;AAC5C,iDAA8E;AAArE,kGAAA,WAAW,OAAA;AAAE,2GAAA,oBAAoB,OAAA;AAC1C,uDAAuF;AAA9E,wGAAA,cAAc,OAAA;AAAE,iHAAA,uBAAuB,OAAA;AAChD,uDAAuF;AAA9E,wGAAA,cAAc,OAAA;AAAE,iHAAA,uBAAuB,OAAA;AAChD,yDAA0F;AAAjF,0GAAA,eAAe,OAAA;AAAE,mHAAA,wBAAwB,OAAA;AAClD,0DAAiG;AAAxF,+GAAA,oBAAoB,OAAA;AAAE,oHAAA,yBAAyB,OAAA;AACxD,wDAA8F;AAArF,6GAAA,mBAAmB,OAAA;AAAE,kHAAA,wBAAwB,OAAA;AACtD,wDAA8F;AAArF,6GAAA,mBAAmB,OAAA;AAAE,kHAAA,wBAAwB,OAAA;AACtD,wDAA8F;AAArF,6GAAA,mBAAmB,OAAA;AAAE,kHAAA,wBAAwB,OAAA;AACtD,kEAA0H;AAAjH,sHAAA,uBAAuB,OAAA;AAAE,2HAAA,4BAA4B,OAAA;AAAE,4GAAA,aAAa,OAAA;AAC7E,0DAAsI;AAA7H,iHAAA,cAAc,OAAA;AAAE,4HAAA,yBAAyB,OAAA;AAAE,2HAAA,wBAAwB,OAAA;AAAE,0HAAA,uBAAuB,OAAA;AACrG,wDAAgE;AAAvD,yGAAA,eAAe,OAAA;AAExB,0DAAsE;AAA7D,+GAAA,oBAAoB,OAAA;AAC7B,wDAAoE;AAA3D,6GAAA,mBAAmB,OAAA;AAC5B,sDAAkE;AAAzD,2GAAA,kBAAkB,OAAA;AAC3B,wDAAoE;AAA3D,6GAAA,mBAAmB,OAAA;AAE5B,0DAAmF;AAA1E,iHAAA,cAAc,OAAA;AAAE,4HAAA,yBAAyB,OAAA;AAElD,0DAAsE;AAA7D,+GAAA,oBAAoB,OAAA;AAE7B,mDAA0D;AAAjD,oGAAA,YAAY,OAAA;AACrB,6EAAmF;AAA1E,6HAAA,wBAAwB,OAAA;AACjC,0CAAwB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "markdown-ai-rewriter",
3
- "version": "1.1.2",
3
+ "version": "1.2.0",
4
4
  "description": "AI-powered Markdown content rewriter that preserves document structure",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",