@lee-jisoo/n8n-nodes-mediafx 1.6.17 โ†’ 1.6.19

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/README.md CHANGED
@@ -10,7 +10,7 @@ This is a custom n8n node for comprehensive, local media processing using FFmpeg
10
10
 
11
11
  ## ๐Ÿ†• What's New in This Fork
12
12
 
13
- ### v1.6.15
13
+ ### v1.6.19
14
14
  **New Features**
15
15
 
16
16
  - **๐Ÿ” Get Metadata (Probe)**: Extract comprehensive metadata from video/audio files
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lee-jisoo/n8n-nodes-mediafx",
3
- "version": "1.6.17",
3
+ "version": "1.6.19",
4
4
  "description": "N8N custom nodes for video editing and media processing (Enhanced fork with Speed control and Subtitle fixes)",
5
5
  "license": "MIT",
6
6
  "author": {
package/README.ko-KR.md DELETED
@@ -1,392 +0,0 @@
1
- # n8n-nodes-mediafx (ํ•œ๊ตญ์–ด)
2
-
3
- [![NPM Version](https://img.shields.io/npm/v/n8n-nodes-mediafx?style=flat-square)](https://www.npmjs.com/package/n8n-nodes-mediafx)
4
- [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg?style=flat-square)](https://opensource.org/licenses/MIT)
5
- [![N8N Community Node](https://img.shields.io/badge/n8n-community--node-blue.svg?style=flat-square)](https://n8n.io)
6
-
7
- ์ด ์ €์žฅ์†Œ๋Š” FFmpeg์˜ ๊ฐ•๋ ฅํ•œ ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•˜์—ฌ ํฌ๊ด„์ ์ธ ๋กœ์ปฌ ๋ฏธ๋””์–ด ์ฒ˜๋ฆฌ๋ฅผ ์œ„ํ•œ ์ปค์Šคํ…€ n8n ๋…ธ๋“œ๋ฅผ ํฌํ•จํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์™ธ๋ถ€ API๋‚˜ ์„œ๋น„์Šค ์—†์ด n8n ์›Œํฌํ”Œ๋กœ์šฐ ๋‚ด์—์„œ ์ง์ ‘ ๋‹ค์–‘ํ•œ ๋น„๋””์˜ค, ์˜ค๋””์˜ค, ์ด๋ฏธ์ง€, ํ…์ŠคํŠธ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
8
-
9
- <!-- Optional: Add a GIF of the node in action here -->
10
- <!-- <p align="center"><img src="link/to/your/demo.gif" alt="MediaFX Node Demo"></p> -->
11
-
12
- ## v1.6.15์˜ ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ
13
-
14
- - **๐Ÿ” ๋ฏธ๋””์–ด ๋ถ„์„ (Probe)**: ๋น„๋””์˜ค/์˜ค๋””์˜ค ํŒŒ์ผ์—์„œ ๋ฉ”ํƒ€์ •๋ณด๋ฅผ ์ถ”์ถœํ•˜๋Š” ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ
15
- - ํฌ๋งท ์ •๋ณด: ํŒŒ์ผ๋ช…, ํฌ๋งท, ์žฌ์ƒ์‹œ๊ฐ„, ํŒŒ์ผํฌ๊ธฐ, ๋น„ํŠธ๋ ˆ์ดํŠธ
16
- - ๋น„๋””์˜ค ์ŠคํŠธ๋ฆผ: ์ฝ”๋ฑ, ํ•ด์ƒ๋„, ํ”„๋ ˆ์ž„๋ ˆ์ดํŠธ, ํ™”๋ฉด๋น„์œจ, ํ”ฝ์…€ํฌ๋งท
17
- - ์˜ค๋””์˜ค ์ŠคํŠธ๋ฆผ: ์ฝ”๋ฑ, ์ƒ˜ํ”Œ๋ ˆ์ดํŠธ, ์ฑ„๋„ ์ˆ˜, ์ฑ„๋„ ๋ ˆ์ด์•„์›ƒ
18
- - ํƒœ๊ทธ: ์ œ๋ชฉ, ์•„ํ‹ฐ์ŠคํŠธ, ์•จ๋ฒ” ๋“ฑ ํŒŒ์ผ์— ํฌํ•จ๋œ ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ
19
-
20
- - **๐Ÿ”ค ์‹œ์Šคํ…œ ํฐํŠธ ์ง€์›**: ์‹œ์Šคํ…œ์— ์„ค์น˜๋œ ํฐํŠธ๋ฅผ ์‚ฌ์šฉ ๊ฐ€๋Šฅ
21
- - ๊ธ€๊ผด > ๋ชฉ๋ก ์ž‘์—…์—์„œ "์‹œ์Šคํ…œ ํฐํŠธ ํฌํ•จ" ์˜ต์…˜์œผ๋กœ ์‹œ์Šคํ…œ ํฐํŠธ ์Šค์บ”
22
- - ํ…์ŠคํŠธ/์ž๋ง‰ ์ž‘์—…์—์„œ ์‹œ์Šคํ…œ ํฐํŠธ ๊ฒฝ๋กœ ์ง์ ‘ ์ง€์ • ๊ฐ€๋Šฅ
23
- - macOS, Linux, Windows์˜ ์‹œ์Šคํ…œ ํฐํŠธ ๋””๋ ‰ํ† ๋ฆฌ ์ง€์›
24
-
25
- ## v1.4.2์˜ ๊ธฐ๋Šฅ
26
-
27
- - **๋ฒ„๊ทธ ์ˆ˜์ •**: ๋น„๋””์˜ค ์†Œ์Šค๊ฐ€ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์„ค์ •๋˜์ง€ ์•Š์€ ๊ฒฝ์šฐ ์˜ค๋””์˜ค ๋ถ„๋ฆฌ ์ž‘์—…์—์„œ "did not produce an output" ์˜ค๋ฅ˜ ์ˆ˜์ •
28
- - ์†Œ์Šค๊ฐ€ ๋ˆ„๋ฝ๋œ ๊ฒฝ์šฐ ๋ช…ํ™•ํ•œ ์˜ค๋ฅ˜ ๋ฉ”์‹œ์ง€์™€ ํ•จ๊ป˜ ์ ์ ˆํ•œ ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ ์ถ”๊ฐ€
29
-
30
- ### v1.4.1
31
-
32
- - **์˜ค๋””์˜ค ๋ถ„๋ฆฌ**: ๋น„๋””์˜ค๋ฅผ ๋ฌด์Œ ๋น„๋””์˜ค์™€ ์ถ”์ถœ๋œ ์˜ค๋””์˜ค ํŠธ๋ž™์œผ๋กœ ๋ถ„๋ฆฌํ•˜๋Š” ์ƒˆ๋กœ์šด Video ์ž‘์—…
33
- - ์‚ฌ์šฉ์ž ์ •์˜ ๊ฐ€๋Šฅํ•œ ํ•„๋“œ๋ช…์œผ๋กœ ๋‘ ์ถœ๋ ฅ์„ ๋‹จ์ผ ์•„์ดํ…œ์œผ๋กœ ๋ฐ˜ํ™˜
34
- - ๋‹ค์–‘ํ•œ ๋น„๋””์˜ค ํฌ๋งท(MP4, MOV, AVI, MKV) ๋ฐ ์˜ค๋””์˜ค ํฌ๋งท(MP3, AAC, WAV, FLAC) ์ง€์›
35
- - ๊ฐ€์žฅ ๋น ๋ฅธ ์ฒ˜๋ฆฌ๋ฅผ ์œ„ํ•œ copy(์žฌ์ธ์ฝ”๋”ฉ ์—†์Œ) ํฌํ•จ ์˜ค๋””์˜ค ์ฝ”๋ฑ ์˜ต์…˜
36
-
37
- ### v1.4.0
38
- - **์‚ฌ์šฉ์ž ์ •์˜ ์ถœ๋ ฅ ํ•„๋“œ๋ช…**: ์›Œํฌํ”Œ๋กœ์šฐ ๊ตฌ์„ฑ ๊ฐœ์„ ์„ ์œ„ํ•œ ๋ฐ”์ด๋„ˆ๋ฆฌ ์ถœ๋ ฅ ํ•„๋“œ๋ช… ์„ค์ • ๊ฐ€๋Šฅ
39
- - **ํ–ฅ์ƒ๋œ Merge ๋…ธ๋“œ ์ง€์›**: ๋‹ค์ค‘ ์ž…๋ ฅ ์ž‘์—…์„ ์œ„ํ•œ n8n Merge ๋…ธ๋“œ์™€์˜ ์›ํ™œํ•œ ์—ฐ๋™
40
- - **์ž๋™ ํ•ด์ƒ๋„ ์ฒ˜๋ฆฌ**: ์ „ํ™˜ ํšจ๊ณผ์—์„œ ์„œ๋กœ ๋‹ค๋ฅธ ํ•ด์ƒ๋„์˜ ๋น„๋””์˜ค ์Šค๋งˆํŠธ ์Šค์ผ€์ผ๋ง
41
- - **๊ฐœ์„ ๋œ ์˜ค๋ฅ˜ ๋ฉ”์‹œ์ง€**: ์ƒ์„ธํ•œ ๋ฐ”์ด๋„ˆ๋ฆฌ ํ”„๋กœํผํ‹ฐ ์ •๋ณด๋กœ ๋” ๋‚˜์€ ๋””๋ฒ„๊น… ์ง€์›
42
-
43
- ## MediaFX๋ฅผ ์‚ฌ์šฉํ•ด์•ผ ํ•˜๋Š” ์ด์œ 
44
-
45
- - **ํ”„๋ผ์ด๋ฒ„์‹œ ์ค‘์‹ฌ**: ๋ชจ๋“  ์ฒ˜๋ฆฌ๊ฐ€ n8n ์ธ์Šคํ„ด์Šค์—์„œ ๋กœ์ปฌ๋กœ ์ด๋ฃจ์–ด์ง‘๋‹ˆ๋‹ค. ๋ฏธ๋””์–ด ํŒŒ์ผ์€ ์ ˆ๋Œ€ ์„œ๋ฒ„ ์™ธ๋ถ€๋กœ ๋‚˜๊ฐ€์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
46
- - **์™ธ๋ถ€ API ๋ถˆํ•„์š”**: API ํ‚ค, ๊ตฌ๋…, ์ œ3์ž ์„œ๋น„์Šค ๋น„์šฉ์ด ํ•„์š” ์—†์Šต๋‹ˆ๋‹ค.
47
- - **๊ฐ•๋ ฅํ•œ ์„ฑ๋Šฅ**: ๊ณ ํ’ˆ์งˆ ๋ฏธ๋””์–ด ์กฐ์ž‘์„ ์œ„ํ•ด FFmpeg์˜ ๋ชจ๋“  ๊ธฐ๋Šฅ์„ ํ™œ์šฉํ•ฉ๋‹ˆ๋‹ค.
48
- - **์ž์ฒด ํฌํ•จ**: `@ffmpeg-installer/ffmpeg`๋ฅผ ํ†ตํ•ด FFmpeg๊ฐ€ ์ž๋™์œผ๋กœ ๋‹ค์šด๋กœ๋“œ๋˜๊ณ  ํฌํ•จ๋˜์–ด, ๋Œ€๋ถ€๋ถ„์˜ ๊ฒฝ์šฐ ์‹œ์Šคํ…œ ์ข…์†์„ฑ์„ ์ˆ˜๋™์œผ๋กœ ์„ค์น˜ํ•  ํ•„์š”๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค.
49
- - **์œ ์—ฐ์„ฑ**: ๊ฐ„๋‹จํ•œ ์ž๋ฅด๊ธฐ๋ถ€ํ„ฐ ๋ณต์žกํ•œ ์˜ค๋””์˜ค ๋ฏน์‹ฑ, ํ…์ŠคํŠธ ์˜ค๋ฒ„๋ ˆ์ด๊นŒ์ง€ ๋‹ค์–‘ํ•œ ์ž‘์—…์„ ์ฒ˜๋ฆฌํ•ฉ๋‹ˆ๋‹ค.
50
-
51
- ## ์ฃผ์š” ๊ธฐ๋Šฅ
52
-
53
- - **๋น„๋””์˜ค ์ฒ˜๋ฆฌ**: ์—ฌ๋Ÿฌ ํด๋ฆฝ ๋ณ‘ํ•ฉ, ํŠน์ • ๊ตฌ๊ฐ„ ์ž๋ฅด๊ธฐ, ์ž๋™ FFmpeg ํ˜ธํ™˜์„ฑ ๊ฐ์ง€๋กœ ๋น„๋””์˜ค ๊ฐ„ ์ „ํ™˜ ํšจ๊ณผ ์ ์šฉ, ๋‹จ์ผ ๋น„๋””์˜ค์— ํŽ˜์ด๋“œ ์ธ/์•„์›ƒ ํšจ๊ณผ ์ถ”๊ฐ€.
54
- - **๊ณ ๊ธ‰ ์˜ค๋””์˜ค ์กฐ์ž‘**:
55
- - ๋น„๋””์˜ค์—์„œ ๋‹ค์–‘ํ•œ ํ˜•์‹(MP3, WAV, AAC, FLAC)์œผ๋กœ ์˜ค๋””์˜ค ์ถ”์ถœ
56
- - ๊ฐ ์†Œ์Šค๋ณ„ ์ •๋ฐ€ํ•œ ๋ณผ๋ฅจ ์กฐ์ ˆ๋กœ ์˜ค๋””์˜ค ํŠธ๋ž™ ๋ฏน์‹ฑ
57
- - **๋ถ€๋ถ„ ์˜ค๋””์˜ค ๋ฏน์‹ฑ**: ์‹œ์ž‘ ์‹œ๊ฐ„๊ณผ ์ง€์† ์‹œ๊ฐ„์„ ์กฐ์ ˆํ•˜์—ฌ ํŠน์ • ์‹œ๊ฐ„ ๋ฒ”์œ„์— ์˜ค๋””์˜ค ์‚ฝ์ž…
58
- - **์˜ค๋””์˜ค ๋ฐ˜๋ณต**: ์งง์€ ์˜ค๋””์˜ค๋ฅผ ์›ํ•˜๋Š” ๊ธธ์ด์— ๋งž๊ฒŒ ์ž๋™ ๋ฐ˜๋ณต
59
- - **๋…๋ฆฝ์ ์ธ ํŽ˜์ด๋“œ ํšจ๊ณผ**: ์ „์ฒด ๋ฏน์‹ฑ๊ณผ ๋ถ€๋ถ„ ๋ฏน์‹ฑ ๋ชจ๋‘์—์„œ ์‚ฌ์šฉ์ž ์ง€์ • ๊ธธ์ด๋กœ ํŽ˜์ด๋“œ ์ธ/์•„์›ƒ ํšจ๊ณผ ์ ์šฉ
60
- - **๊ณ ๊ธ‰ ์ด๋ฏธ์ง€ ์ž‘์—…**:
61
- - ์‚ฌ์šฉ์ž ์ง€์ • ํฌ๊ธฐ ๋ฐ ๊ธธ์ด๋กœ ์ด๋ฏธ์ง€์—์„œ ๋น„๋””์˜ค ํด๋ฆฝ ์ƒ์„ฑ
62
- - **์Šค๋งˆํŠธ ์›Œํ„ฐ๋งˆํฌ**: ์œ„์น˜, ํฌ๊ธฐ, ํšŒ์ „, ํˆฌ๋ช…๋„ ์กฐ์ ˆ
63
- - **์‹œ๊ฐ„ ์ œ์–ด**: ํŠน์ • ๊ตฌ๊ฐ„์—๋งŒ ์›Œํ„ฐ๋งˆํฌ ํ‘œ์‹œ ๋˜๋Š” ์ „์ฒด ์˜์ƒ์— ํ‘œ์‹œ
64
- - **ํ–ฅ์ƒ๋œ ํ…์ŠคํŠธ ๋ฐ ์ž๋ง‰**:
65
- - ๊ด‘๋ฒ”์œ„ํ•œ ์Šคํƒ€์ผ๋ง(๊ธ€๊ผด, ํฌ๊ธฐ, ์ƒ‰์ƒ, ์œค๊ณฝ์„ , ๋ฐฐ๊ฒฝ ์ƒ์ž)์œผ๋กœ ํ…์ŠคํŠธ ์˜ค๋ฒ„๋ ˆ์ด ์ถ”๊ฐ€
66
- - **์Šค๋งˆํŠธ ์œ„์น˜ ์ง€์ •**: ์ •๋ ฌ ํ”„๋ฆฌ์…‹(์ขŒ/์ค‘์•™/์šฐ, ์ƒ/์ค‘๊ฐ„/ํ•˜) ๋˜๋Š” ์‚ฌ์šฉ์ž ์ง€์ • ์ขŒํ‘œ ์‚ฌ์šฉ
67
- - **ํŒจ๋”ฉ ์กฐ์ ˆ**: ๊ฐ€์žฅ์ž๋ฆฌ์—์„œ ๊ฐ€๋กœ ๋ฐ ์„ธ๋กœ ํŒจ๋”ฉ ๊ฐœ๋ณ„ ์กฐ์ ˆ
68
- - ๋™์ผํ•œ ํ…์ŠคํŠธ ์Šคํƒ€์ผ๋ง ์˜ต์…˜์œผ๋กœ ์™ธ๋ถ€ ์ž๋ง‰ ํŒŒ์ผ(`.srt`) ์ถ”๊ฐ€ ๋ฐ ์Šคํƒ€์ผ๋ง
69
- - **๊ธ€๊ผด ๊ด€๋ฆฌ**: ํ…์ŠคํŠธ ์ž‘์—…์— ์‚ฌ์šฉํ•  ์‚ฌ์šฉ์ž ์ง€์ • ๊ธ€๊ผด(TTF, OTF) ์—…๋กœ๋“œ, ๋ชฉ๋ก ์กฐํšŒ, ๋ฏธ๋ฆฌ๋ณด๊ธฐ, ๊ฒ€์ฆ ๋ฐ ์‚ญ์ œ.
70
-
71
- ## n8n์— ์„ค์น˜ํ•˜๊ธฐ
72
-
73
- 1. **์„ค์ • > ์ปค๋ฎค๋‹ˆํ‹ฐ ๋…ธ๋“œ**๋กœ ์ด๋™ํ•ฉ๋‹ˆ๋‹ค.
74
- 2. **์„ค์น˜**๋ฅผ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.
75
- 3. **npm ํŒจํ‚ค์ง€ ์ด๋ฆ„ ์ž…๋ ฅ** ํ•„๋“œ์— `n8n-nodes-mediafx`๋ฅผ ์ž…๋ ฅํ•ฉ๋‹ˆ๋‹ค.
76
- 4. **์„ค์น˜**๋ฅผ ๋‹ค์‹œ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.
77
-
78
- ๋…ธ๋“œ๊ฐ€ ์„ค์น˜๋˜๊ณ  n8n์ด ๋‹ค์‹œ ์‹œ์ž‘๋ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋ฉด ๋…ธ๋“œ ํŒจ๋„์—์„œ "MediaFX" ๋…ธ๋“œ๋ฅผ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
79
-
80
- ๊ตฌ๋ฒ„์ „ n8n ๋˜๋Š” ์ˆ˜๋™ ์„ค์น˜์˜ ๊ฒฝ์šฐ:
81
-
82
- 1. n8n ์‚ฌ์šฉ์ž ๋ฐ์ดํ„ฐ ํด๋”(๊ธฐ๋ณธ๊ฐ’: `~/.n8n/`)๋กœ ์ด๋™ํ•ฉ๋‹ˆ๋‹ค.
83
- 2. `nodes` ๋””๋ ‰ํ† ๋ฆฌ๋กœ ๋“ค์–ด๊ฐ‘๋‹ˆ๋‹ค: `cd ~/.n8n/nodes`.
84
- 3. ํŒจํ‚ค์ง€๋ฅผ ์„ค์น˜ํ•ฉ๋‹ˆ๋‹ค: `npm install n8n-nodes-mediafx`.
85
- 4. n8n ์ธ์Šคํ„ด์Šค๋ฅผ ๋‹ค์‹œ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค.
86
-
87
- ## ๋…ธ๋“œ: MediaFX
88
-
89
- ๋ชจ๋“  ๋ฏธ๋””์–ด ์ฒ˜๋ฆฌ ์ž‘์—…์„ ์œ„ํ•œ ๋ฉ”์ธ ๋…ธ๋“œ์ž…๋‹ˆ๋‹ค. `๋ฆฌ์†Œ์Šค` ์œ ํ˜•์„ ์„ ํƒํ•œ ๋‹ค์Œ ํ•ด๋‹น ๋ฆฌ์†Œ์Šค์— ๋Œ€ํ•ด ์ˆ˜ํ–‰ํ•  `์ž‘์—…`์„ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.
90
-
91
- ### ๋ฆฌ์†Œ์Šค ๋ฐ ์ž‘์—…
92
-
93
- #### **๋น„๋””์˜ค** ๋ฆฌ์†Œ์Šค
94
- - `๋ณ‘ํ•ฉ`: ์—ฌ๋Ÿฌ ๋น„๋””์˜ค ํŒŒ์ผ์„ ํ•˜๋‚˜๋กœ ๊ฒฐํ•ฉํ•ฉ๋‹ˆ๋‹ค.
95
- - `์ž๋ฅด๊ธฐ`: ๋น„๋””์˜ค๋ฅผ ํŠน์ • ์‹œ์ž‘ ๋ฐ ์ข…๋ฃŒ ์‹œ๊ฐ„์œผ๋กœ ์ž๋ฆ…๋‹ˆ๋‹ค.
96
- - `์ „ํ™˜`: ์ž๋™ FFmpeg ๋ฒ„์ „ ๊ฐ์ง€ ๋ฐ ๋Œ€์ฒด ์ง€์›์œผ๋กœ ์—ฌ๋Ÿฌ ๋น„๋””์˜ค ๊ฐ„ ์ „ํ™˜ ํšจ๊ณผ๋ฅผ ์ ์šฉํ•ฉ๋‹ˆ๋‹ค.
97
- - `ํŽ˜์ด๋“œ`: ํ•˜๋‚˜์˜ ๋น„๋””์˜ค์— ํŽ˜์ด๋“œ ์ธ/์•„์›ƒ ํšจ๊ณผ๋ฅผ ์ ์šฉํ•ฉ๋‹ˆ๋‹ค.
98
- - `์˜ค๋””์˜ค ๋ถ„๋ฆฌ`: ๋น„๋””์˜ค๋ฅผ ๋ฌด์Œ ๋น„๋””์˜ค ํŒŒ์ผ๊ณผ ์ถ”์ถœ๋œ ์˜ค๋””์˜ค ํŒŒ์ผ๋กœ ๋ถ„๋ฆฌํ•˜์—ฌ ๋™์‹œ์— ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.
99
-
100
- #### **์˜ค๋””์˜ค** ๋ฆฌ์†Œ์Šค
101
- - `์ถ”์ถœ`: ๋น„๋””์˜ค ํŒŒ์ผ์—์„œ ์˜ค๋””์˜ค ํŠธ๋ž™์„ ์ง€์ •๋œ ํ˜•์‹(MP3, WAV, AAC, FLAC)์œผ๋กœ ์ถ”์ถœํ•ฉ๋‹ˆ๋‹ค.
102
- - `๋ฏน์‹ฑ`: ๊ธฐ๋ณธ ๋น„๋””์˜ค์˜ ์˜ค๋””์˜ค๋ฅผ ๋ณด์กฐ ์˜ค๋””์˜ค ์†Œ์Šค์™€ ๊ณ ๊ธ‰ ๊ธฐ๋Šฅ์œผ๋กœ ๋ฏน์‹ฑํ•ฉ๋‹ˆ๋‹ค:
103
- - **๋ณผ๋ฅจ ์กฐ์ ˆ**: ๊ธฐ๋ณธ ๋ฐ ๋ณด์กฐ ์†Œ์Šค ๊ฐ๊ฐ์— ๋Œ€ํ•œ ๋…๋ฆฝ์ ์ธ ๋ณผ๋ฅจ ์กฐ์ •
104
- - **์ „์ฒด ๋ฏน์Šค ๋ชจ๋“œ**: ์ „์ฒด ๊ธธ์ด์— ๊ฑธ์ณ ์˜ค๋””์˜ค ๋ฏน์‹ฑ (์ตœ๋‹จ/์ตœ์žฅ/์ฒซ ๋ฒˆ์งธ ์†Œ์Šค)
105
- - **๋ถ€๋ถ„ ๋ฏน์Šค ๋ชจ๋“œ**: ์ •ํ™•ํ•œ ์‹œ์ž‘ ์‹œ๊ฐ„๊ณผ ์ง€์† ์‹œ๊ฐ„์œผ๋กœ ํŠน์ • ์‹œ๊ฐ„ ๋ฒ”์œ„์— ์˜ค๋””์˜ค ์‚ฝ์ž…
106
- - **์˜ค๋””์˜ค ๋ฐ˜๋ณต**: ์งง์€ ์˜ค๋””์˜ค๋ฅผ ์ง€์ •๋œ ๊ธธ์ด์— ๋งž๊ฒŒ ์ž๋™ ๋ฐ˜๋ณต
107
- - **๋…๋ฆฝ์ ์ธ ํŽ˜์ด๋“œ ํšจ๊ณผ**: ์ „์ฒด ๋ฏน์‹ฑ๊ณผ ๋ถ€๋ถ„ ๋ฏน์‹ฑ ๋ชจ๋‘์—์„œ ์‚ฌ์šฉ์ž ์ง€์ • ๊ธธ์ด๋กœ ํŽ˜์ด๋“œ ์ธ ๋ฐ ํŽ˜์ด๋“œ ์•„์›ƒ ํšจ๊ณผ ์ ์šฉ
108
-
109
- #### **์ด๋ฏธ์ง€** ๋ฆฌ์†Œ์Šค
110
- - `์ด๋ฏธ์ง€๋ฅผ ๋น„๋””์˜ค๋กœ`: ์†Œ์Šค ์ด๋ฏธ์ง€์—์„œ ๋น„๋””์˜ค๋ฅผ ์ƒ์„ฑํ•˜๊ณ , ๊ธธ์ด ๋ฐ ์ถœ๋ ฅ ํฌ๊ธฐ๋ฅผ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค.
111
- - `์ด๋ฏธ์ง€ ์Šคํƒฌํ”„`: ๊ณ ๊ธ‰ ์›Œํ„ฐ๋งˆํฌ ๊ธฐ๋Šฅ์œผ๋กœ ๋น„๋””์˜ค์— ์ด๋ฏธ์ง€๋ฅผ ์˜ค๋ฒ„๋ ˆ์ดํ•ฉ๋‹ˆ๋‹ค:
112
- - **์œ„์น˜ ๋ฐ ํฌ๊ธฐ ์กฐ์ ˆ**: ์ •ํ™•ํ•œ ํ”ฝ์…€ ์œ„์น˜์™€ ํฌ๊ธฐ ์„ค์ •
113
- - **ํšŒ์ „ ๋ฐ ํˆฌ๋ช…๋„**: ๊ฐ๋„ ์กฐ์ ˆ๊ณผ ํˆฌ๋ช…๋„ ์ œ์–ด
114
- - **์‹œ๊ฐ„ ์ œ์–ด**: ํŠน์ • ์‹œ๊ฐ„ ๊ตฌ๊ฐ„์—๋งŒ ํ‘œ์‹œํ•˜๊ฑฐ๋‚˜ ์ „์ฒด ์˜์ƒ์— ํ‘œ์‹œ
115
-
116
- #### **ํ…์ŠคํŠธ** ๋ฆฌ์†Œ์Šค
117
- - `๋ฌธ์ž์—ด ์ถ”๊ฐ€`: ๋น„๋””์˜ค์— ํ…์ŠคํŠธ ์˜ค๋ฒ„๋ ˆ์ด๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.
118
- - `์ž๋ง‰ ์ถ”๊ฐ€`: `.srt` ํŒŒ์ผ์—์„œ ์ž๋ง‰์„ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.
119
-
120
- #### **๋ถ„์„ (Probe)** ๋ฆฌ์†Œ์Šค
121
- - `๋ฉ”ํƒ€์ •๋ณด ์กฐํšŒ`: ๋น„๋””์˜ค/์˜ค๋””์˜ค ํŒŒ์ผ์—์„œ ํฌ๋งท ์ •๋ณด, ์ŠคํŠธ๋ฆผ ์ •๋ณด, ํƒœ๊ทธ ๋“ฑ ์ƒ์„ธํ•œ ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ๋ฅผ ์ถ”์ถœํ•ฉ๋‹ˆ๋‹ค.
122
-
123
- #### **๊ธ€๊ผด** ๋ฆฌ์†Œ์Šค
124
- - `๋ชฉ๋ก`: ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ๋ชจ๋“  ์‹œ์Šคํ…œ ๋ฐ ์‚ฌ์šฉ์ž ์—…๋กœ๋“œ ๊ธ€๊ผด ๋ชฉ๋ก์„ ๊ฐ€์ ธ์˜ต๋‹ˆ๋‹ค.
125
- - `์—…๋กœ๋“œ`: ํ…์ŠคํŠธ ์ž‘์—…์— ์‚ฌ์šฉํ•  ์‚ฌ์šฉ์ž ์ง€์ • ๊ธ€๊ผด ํŒŒ์ผ(`.ttf`, `.otf`)์„ ์—…๋กœ๋“œํ•ฉ๋‹ˆ๋‹ค.
126
- - `์‚ญ์ œ`: ์ด์ „์— ์—…๋กœ๋“œํ•œ ์‚ฌ์šฉ์ž ๊ธ€๊ผด์„ ์ œ๊ฑฐํ•ฉ๋‹ˆ๋‹ค.
127
-
128
- ## ์‚ฌ์šฉ ์˜ˆ์ œ
129
-
130
- ### ๋ฏธ๋””์–ด ๋ฉ”ํƒ€์ •๋ณด ์กฐํšŒ (v1.6.15 ์‹ ๊ทœ)
131
- ๋น„๋””์˜ค ๋˜๋Š” ์˜ค๋””์˜ค ํŒŒ์ผ์—์„œ ๋ฉ”ํƒ€์ •๋ณด๋ฅผ ์ถ”์ถœํ•ฉ๋‹ˆ๋‹ค.
132
-
133
- ```json
134
- {
135
- "resource": "probe",
136
- "operation": "getMetadata",
137
- "probeSource": {
138
- "source": { "sourceType": "binary", "binaryProperty": "data" }
139
- }
140
- }
141
- ```
142
-
143
- ์ถœ๋ ฅ ์˜ˆ์‹œ:
144
- ```json
145
- {
146
- "success": true,
147
- "operation": "getMetadata",
148
- "format": {
149
- "filename": "video.mp4",
150
- "formatName": "mov,mp4,m4a,3gp,3g2,mj2",
151
- "duration": 120.5,
152
- "size": 15728640,
153
- "bitRate": 1048576
154
- },
155
- "video": {
156
- "codec": "h264",
157
- "width": 1920,
158
- "height": 1080,
159
- "frameRate": 30,
160
- "aspectRatio": "16:9"
161
- },
162
- "audio": {
163
- "codec": "aac",
164
- "sampleRate": 48000,
165
- "channels": 2,
166
- "channelLayout": "stereo"
167
- },
168
- "hasVideo": true,
169
- "hasAudio": true
170
- }
171
- ```
172
-
173
- ### ์‹œ์Šคํ…œ ํฐํŠธ ์‚ฌ์šฉํ•˜๊ธฐ (v1.6.15 ์‹ ๊ทœ)
174
-
175
- ๋จผ์ € ์‹œ์Šคํ…œ์— ์„ค์น˜๋œ ํฐํŠธ ๋ชฉ๋ก์„ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค:
176
- ```json
177
- {
178
- "resource": "font",
179
- "operation": "list",
180
- "filterOptions": {
181
- "includeSystemFonts": true,
182
- "fontType": "system"
183
- }
184
- }
185
- ```
186
-
187
- ์‹œ์Šคํ…œ ํฐํŠธ๋กœ ์ž๋ง‰ ์ถ”๊ฐ€ํ•˜๊ธฐ:
188
- ```json
189
- {
190
- "resource": "subtitle",
191
- "operation": "addSubtitle",
192
- "fontSource": "system",
193
- "systemFontPath": "/System/Library/Fonts/AppleSDGothicNeo.ttc",
194
- "size": 48,
195
- "color": "white"
196
- }
197
- ```
198
-
199
- ### Merge ๋…ธ๋“œ์™€ ํ•จ๊ป˜ ์‚ฌ์šฉํ•˜๊ธฐ (v1.4.0 ์‹ ๊ทœ)
200
- n8n์˜ Merge ๋…ธ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์—ฌ๋Ÿฌ ๋น„๋””์˜ค ์ž…๋ ฅ์„ ๊ฒฐํ•ฉํ•  ๋•Œ:
201
-
202
- 1. ์—ฌ๋Ÿฌ ๋น„๋””์˜ค ์†Œ์Šค๋ฅผ Merge ๋…ธ๋“œ์— ์—ฐ๊ฒฐ
203
- 2. Merge ๋…ธ๋“œ๋ฅผ "Combine All" ๋ชจ๋“œ๋กœ ์„ค์ •
204
- 3. MediaFX ๋…ธ๋“œ์—์„œ Binary Property ์ด๋ฆ„์„ `data1`, `data2` ๋“ฑ์œผ๋กœ ์„ค์ • (Merge ๋…ธ๋“œ ์ถœ๋ ฅ๊ณผ ์ผ์น˜)
205
- 4. MediaFX๊ฐ€ ๋ชจ๋“  ๋ณ‘ํ•ฉ๋œ ์ž…๋ ฅ์„ ์ž๋™์œผ๋กœ ๊ฐ์ง€ํ•˜๊ณ  ์ฒ˜๋ฆฌ
206
-
207
- ### ์ด๋ฏธ์ง€๋ฅผ ๋น„๋””์˜ค๋กœ ๋ณ€ํ™˜
208
- ๋‹จ์ผ ์ด๋ฏธ์ง€์—์„œ 1920x1080 ํ•ด์ƒ๋„์˜ 10์ดˆ์งœ๋ฆฌ ๋น„๋””์˜ค๋ฅผ ๋งŒ๋“ญ๋‹ˆ๋‹ค.
209
-
210
- ```json
211
- {
212
- "resource": "image",
213
- "operation": "imageToVideo",
214
- "sourceImage": {
215
- "source": { "sourceType": "binary", "binaryProperty": "data" }
216
- },
217
- "duration": 10,
218
- "videoSize": {
219
- "width": 1920,
220
- "height": 1080
221
- },
222
- "outputFormat": "mp4"
223
- }
224
- ```
225
-
226
- ### ํŽ˜์ด๋“œ ํšจ๊ณผ๊ฐ€ ์žˆ๋Š” ๊ณ ๊ธ‰ ์˜ค๋””์˜ค ๋ฏน์‹ฑ
227
- `main_video.mp4`์˜ 15์ดˆ ์ง€์ ๋ถ€ํ„ฐ 30์ดˆ ๋™์•ˆ `new_audio.mp3`๋ฅผ ๋ฏน์‹ฑํ•˜๊ณ , ๋ฐ˜๋ณต ์žฌ์ƒ๊ณผ ํŽ˜์ด๋“œ ํšจ๊ณผ๋ฅผ ์ ์šฉํ•ฉ๋‹ˆ๋‹ค.
228
-
229
- ```json
230
- {
231
- "resource": "audio",
232
- "operation": "mixAudio",
233
- "mixVideoSourceType": "url",
234
- "mixVideoSourceUrl": "/path/to/main_video.mp4",
235
- "mixAudioSourceType": "url",
236
- "mixAudioSourceUrl": "/path/to/new_audio.mp3",
237
- "videoVolume": 1.0,
238
- "audioVolume": 0.5,
239
- "enablePartialMix": true,
240
- "startTime": 15,
241
- "duration": 30,
242
- "loop": true,
243
- "enableFadeIn": true,
244
- "fadeInDuration": 2,
245
- "enableFadeOut": true,
246
- "fadeOutDuration": 3
247
- }
248
- ```
249
-
250
- ### ์Šค๋งˆํŠธ ์œ„์น˜ ์ง€์ •์œผ๋กœ ํ…์ŠคํŠธ ์˜ค๋ฒ„๋ ˆ์ด ์ถ”๊ฐ€
251
- ์ •๋ ฌ ํ”„๋ฆฌ์…‹๊ณผ ์‚ฌ์šฉ์ž ์ง€์ • ์Šคํƒ€์ผ๋ง์„ ์‚ฌ์šฉํ•˜์—ฌ ๋น„๋””์˜ค์— ํ…์ŠคํŠธ๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.
252
-
253
- ```json
254
- {
255
- "resource": "subtitle",
256
- "operation": "addText",
257
- "source": { "source": { "sourceType": "binary", "binaryProperty": "data" } },
258
- "textOptions": {
259
- "text": "์•ˆ๋…•ํ•˜์„ธ์š”, ์ปค์Šคํ…€ ํฐํŠธ!",
260
- "fontKey": "my-custom-font",
261
- "size": 48,
262
- "color": "yellow",
263
- "positionType": "alignment",
264
- "horizontalAlign": "center",
265
- "verticalAlign": "bottom",
266
- "paddingX": 20,
267
- "paddingY": 50,
268
- "startTime": 0,
269
- "endTime": 10
270
- }
271
- }
272
- ```
273
-
274
- ### ๊ณ ๊ธ‰ ์›Œํ„ฐ๋งˆํฌ ์Šคํƒฌํ”„ ์ ์šฉ
275
- ํŠน์ • ์‹œ๊ฐ„ ๊ตฌ๊ฐ„์— ์›Œํ„ฐ๋งˆํฌ๋ฅผ ์ ์šฉํ•ฉ๋‹ˆ๋‹ค.
276
-
277
- ```json
278
- {
279
- "resource": "image",
280
- "operation": "stampImage",
281
- "sourceVideo": {
282
- "source": { "sourceType": "binary", "binaryProperty": "data" }
283
- },
284
- "stampImage": {
285
- "source": { "sourceType": "binary", "binaryProperty": "watermark" }
286
- },
287
- "width": 200,
288
- "height": -1,
289
- "x": "(main_w-overlay_w)-20",
290
- "y": "20",
291
- "rotation": 15,
292
- "opacity": 0.8,
293
- "enableTimeControl": true,
294
- "startTime": 5,
295
- "endTime": 25
296
- }
297
- ```
298
-
299
- ### ๋น„๋””์˜ค์—์„œ ์˜ค๋””์˜ค ๋ถ„๋ฆฌ (v1.4.1 ์‹ ๊ทœ)
300
- ๋น„๋””์˜ค๋ฅผ ๋ฌด์Œ ๋น„๋””์˜ค์™€ ์ถ”์ถœ๋œ ์˜ค๋””์˜ค ํŠธ๋ž™์œผ๋กœ ๋ถ„๋ฆฌํ•ฉ๋‹ˆ๋‹ค.
301
-
302
- ```json
303
- {
304
- "resource": "video",
305
- "operation": "separateAudio",
306
- "separateSource": {
307
- "source": { "sourceType": "binary", "binaryProperty": "data" }
308
- },
309
- "separateVideoFormat": "mp4",
310
- "separateAudioFormat": "mp3",
311
- "separateAudioCodec": "copy",
312
- "separateAudioBitrate": "192k",
313
- "separateVideoFieldName": "video",
314
- "separateAudioFieldName": "audio"
315
- }
316
- ```
317
-
318
- **์ถœ๋ ฅ**: ๋‘ ๊ฐœ์˜ ๋ฐ”์ด๋„ˆ๋ฆฌ ์†์„ฑ์„ ๊ฐ€์ง„ ๋‹จ์ผ ์•„์ดํ…œ์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค:
319
- - `video`: ๋ฌด์Œ ๋น„๋””์˜ค ํŒŒ์ผ (์˜ค๋””์˜ค ํŠธ๋ž™ ์—†์Œ)
320
- - `audio`: ์ถ”์ถœ๋œ ์˜ค๋””์˜ค ํŒŒ์ผ
321
-
322
- ## ์š”๊ตฌ ์‚ฌํ•ญ
323
-
324
- - n8n: ๋ฒ„์ „ 1.0 ์ด์ƒ ๊ถŒ์žฅ.
325
- - Node.js: ๋ฒ„์ „ 16 ์ด์ƒ.
326
- - FFmpeg: `@ffmpeg-installer/ffmpeg`๋ฅผ ํ†ตํ•ด ์ž๋™์œผ๋กœ ๋‹ค์šด๋กœ๋“œ๋˜๊ณ  ํฌํ•จ๋˜๋ฉฐ, `ffmpeg-static`์ด ๋Œ€์ฒด ์ˆ˜๋‹จ์œผ๋กœ ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค. ์ผ๋ถ€ ์‹œ์Šคํ…œ์—์„œ๋Š” ์ˆ˜๋™ ์„ค์น˜๊ฐ€ ํ•„์š”ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
327
-
328
- ### FFmpeg ์„ค์น˜
329
-
330
- ๋…ธ๋“œ๋Š” `@ffmpeg-installer/ffmpeg` ํŒจํ‚ค์ง€๋ฅผ ํ†ตํ•ด FFmpeg๋ฅผ ์ž๋™์œผ๋กœ ๋‹ค์šด๋กœ๋“œํ•ฉ๋‹ˆ๋‹ค(`ffmpeg-static`์ด ๋Œ€์ฒด ์ˆ˜๋‹จ). ์„œ๋ฒ„์—์„œ FFmpeg ๊ด€๋ จ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•˜๋Š” ๊ฒฝ์šฐ ์ˆ˜๋™์œผ๋กœ FFmpeg๋ฅผ ์„ค์น˜ํ•ด์•ผ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค:
331
-
332
- **Ubuntu/Debian:**
333
- ```bash
334
- sudo apt update && sudo apt install ffmpeg
335
- ```
336
-
337
- **CentOS/RHEL/Rocky Linux:**
338
- ```bash
339
- sudo yum install epel-release && sudo yum install ffmpeg
340
- # ๋˜๋Š” ์ตœ์‹  ๋ฒ„์ „์˜ ๊ฒฝ์šฐ:
341
- sudo dnf install ffmpeg
342
- ```
343
-
344
- **Alpine Linux (Docker):**
345
- ```bash
346
- apk add ffmpeg
347
- ```
348
-
349
- **macOS:**
350
- ```bash
351
- brew install ffmpeg
352
- ```
353
-
354
- ## ๊ฐœ๋ฐœ
355
-
356
- ์ด ๋…ธ๋“œ์— ๊ธฐ์—ฌํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด:
357
-
358
- 1. ์ด ์ €์žฅ์†Œ๋ฅผ ๋ณต์ œ(Clone)ํ•ฉ๋‹ˆ๋‹ค.
359
- 2. `npm install`๋กœ ์ข…์†์„ฑ์„ ์„ค์น˜ํ•ฉ๋‹ˆ๋‹ค.
360
- 3. `npm run build`๋กœ ๋…ธ๋“œ๋ฅผ ๋นŒ๋“œํ•ฉ๋‹ˆ๋‹ค.
361
- 4. ๊ฐœ๋ฐœ ์ค‘์—๋Š” `npm run dev`๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ๊ฐ์‹œํ•˜๊ณ  ์ž๋™์œผ๋กœ ๋‹ค์‹œ ๋นŒ๋“œํ•ฉ๋‹ˆ๋‹ค.
362
- 5. [๋กœ์ปฌ ์ €์žฅ์†Œ๋ฅผ n8n ๋…ธ๋“œ ๋””๋ ‰ํ† ๋ฆฌ์— ์—ฐ๊ฒฐํ•ฉ๋‹ˆ๋‹ค.](https://docs.n8n.io/integrations/creating-nodes/test-node/#linking-the-node)
363
-
364
- ## ์ €์žฅ์†Œ
365
-
366
- **GitHub**: [https://github.com/dandacompany/n8n-nodes-mediafx](https://github.com/dandacompany/n8n-nodes-mediafx)
367
-
368
- ## ๊ฐœ๋ฐœ์ž
369
-
370
- **๊ฐœ๋ฐœ์ž**: Dante
371
- **์ด๋ฉ”์ผ**: datapod.k@gmail.com
372
- **์œ ํŠœ๋ธŒ ์ฑ„๋„**: [๋‹จํ…Œ๋žฉ์Šค](https://www.youtube.com/@๋‹จํ…Œ๋žฉ์Šค)
373
-
374
- ## ๊ธฐ์—ฌํ•˜๊ธฐ
375
-
376
- ๊ธฐ์—ฌ๋ฅผ ํ™˜์˜ํ•ฉ๋‹ˆ๋‹ค! [GitHub ์ €์žฅ์†Œ](https://github.com/dandacompany/n8n-nodes-mediafx)์—์„œ ์ด์Šˆ, ๊ธฐ๋Šฅ ์š”์ฒญ ๋˜๋Š” ํ’€ ๋ฆฌํ€˜์ŠคํŠธ๋ฅผ ์ž์œ ๋กญ๊ฒŒ ์ œ์ถœํ•ด ์ฃผ์„ธ์š”.
377
-
378
- ## ์ง€์›
379
-
380
- - **์ด์Šˆ**: [GitHub Issues](https://github.com/dandacompany/n8n-nodes-mediafx/issues)
381
- - **ํ† ๋ก **: [GitHub Discussions](https://github.com/dandacompany/n8n-nodes-mediafx/discussions)
382
- - **์œ ํŠœ๋ธŒ**: [๋‹จํ…Œ๋žฉ์Šค](https://www.youtube.com/@๋‹จํ…Œ๋žฉ์Šค)์—์„œ ํŠœํ† ๋ฆฌ์–ผ๊ณผ ๋ฐ๋ชจ๋ฅผ ํ™•์ธํ•˜์„ธ์š”
383
-
384
- ## ํ”„๋กœ์ ํŠธ ํ›„์›
385
-
386
- ์ด ๋…ธ๋“œ๊ฐ€ ์œ ์šฉํ•˜์…จ๋‹ค๋ฉด, ์ปคํ”ผ ํ•œ ์ž” ํ›„์›์„ ๊ณ ๋ คํ•ด ์ฃผ์„ธ์š”!
387
-
388
- [![Buy Me A Coffee](https://img.shields.io/badge/Buy%20Me%20A%20Coffee-Support-yellow?style=for-the-badge&logo=buy-me-a-coffee)](https://buymeacoffee.com/dante.labs)
389
-
390
- ## ๋ผ์ด์„ ์Šค
391
-
392
- MIT