ผมเป็นคนทำวิดีโอที่ใช้ DaVinci Resolve ในงานตัดต่อและแต่งสีเป็นประจำ แต่ผมไม่ได้เป็นโปรแกรมเมอร์ และไม่สามารถเขียนซอฟต์แวร์ด้วยตัวเองได้เลย
ก่อนหน้านี้ เวลาทำงานแล้วอยากได้เอฟเฟกต์หรือเครื่องมือที่ไม่มีอยู่ในโปรแกรม ทางเลือกของผมมีแค่สองอย่าง คือออกไปค้นหาปลั๊กอินที่คนอื่นพัฒนาไว้มาซื้อใช้ หรือไม่ก็ต้องปรับวิธีทำงานของตัวเองให้เข้ากับเครื่องมือเท่าที่มีอยู่
แต่ในช่วงปลายเดือนกันยายนถึงเดือนตุลาคม 2026 ผมได้ทดลองทำสิ่งที่ต่างออกไป คือการใช้ Claude AI ช่วยสร้างซอฟต์แวร์สำหรับงานวิดีโอของตัวเองขึ้นมา 2 ตัว ตัวแรกคือปลั๊กอินแต่งสีฟิล์ม JohnwickTH Film Look และตัวที่สองคือแอปคัดฟุตเทจอัตโนมัติ JOHNWICK.TH CUT DOWN
ทั้งสองโปรเจกต์ไม่ได้เริ่มต้นจากความต้องการอยากเรียนเขียนโปรแกรม แต่เริ่มต้นจาก "ปัญหาจริงในการทำงาน" ที่ทำให้ผมลองใช้วิธีอธิบายความต้องการเป็นภาษาธรรมชาติให้ AI ฟัง แล้วร่วมกันสร้าง ทดสอบ แก้ไข และปรับแต่งจนเข้ากับวิธีทำงานของตัวเอง
[!TIP]
ชมวิดีโอสาธิตการทำงานจริงของปลั๊กอิน JohnwickTH Film Look ได้ที่ TikTok:
👉 ดูคลิปเบื้องหลังและการใช้งาน JohnwickTH Film Look บน TikTok คลิกที่นี่
1. จุดเริ่มต้นจากหน้างาน: ทำไมถึงอยากมีปลั๊กอินแต่งสีของตัวเอง?
ใครที่ใช้ DaVinci Resolve จะทราบดีว่านี่คือโปรแกรมตัดต่อและเกรดสีระดับมืออาชีพที่มีเครื่องมือควบคุมสีและภาพทรงพลังมาก แต่ในความทรงพลังนั้น การจะปั้น "ลุคฟิล์ม (Film Look)" ขึ้นมาสักหนึ่งแบบ มักจะต้องปรับแต่งแยกย่อยหลายส่วน ทั้งการดึงโทนสี คอนทราสต์ การเติมเม็ดฟิล์ม (Film Grain) แสงฟุ้งขอบไฮไลต์ (Halation) แสงฟุ้งนวล (Bloom) ไปจนถึงการใส่กรอบฟิล์ม
สิ่งที่ผมต้องการคือการรวบขั้นตอนเหล่านี้ให้อยู่ในปลั๊กอินตัวเดียวที่เปิดขึ้นมาแล้วสามารถเลือกบุคลิกสีฟิล์ม ปรับรายละเอียดปลีกย่อย และสลับใช้งานกับทั้ง วิดีโอแนวนอน (16:9) และ วิดีโอแนวตั้ง (9:16) สำหรับโซเชียลมีเดียได้ทันทีโดยไม่ต้องต่อ Node ใหม่ซ้ำๆ ทุกโปรเจกต์
เมื่อรู้ชัดว่าตัวเองต้องการอะไร ผมจึงเริ่มให้ Claude AI ช่วยสร้างเครื่องมือนี้ขึ้นมาตั้งแต่วันที่ 28 กันยายน ถึง 1 ตุลาคม 2026 รวมระยะเวลาพัฒนาประมาณ 4 วัน
2. จากไฟล์ DCTL 3 ตัว สู่ปลั๊กอิน OpenFX ภาษา C++ บน Metal GPU
ในการคุยกับ Claude AI วันแรกๆ เราไม่ได้เริ่มจากสิ่งที่ซับซ้อนทันที แต่เริ่มจากการสร้างไฟล์ DCTL (DaVinci Color Transform Language) จำนวน 3 ตัว ซึ่งเป็นสูตรประมวลผลภาพอย่างง่ายเพื่อทดสอบแนวคิดเรื่องโทนสีก่อน
เมื่อเห็นว่าสูตรการคำนวณสีไปในทิศทางที่ใช้ได้ ผมจึงขยับโจทย์ให้ Claude ช่วยพัฒนาต่อยอดเป็นปลั๊กอินมาตรฐาน OpenFX (OFX) ที่มีหน้าต่างควบคุมพารามิเตอร์ครบถ้วนและติดตั้งใช้งานภายใน DaVinci Resolve บนระบบ macOS ได้โดยตรง โดย Claude ทำหน้าที่เขียนโค้ดภาษา C++ และส่วนประมวลผลกราฟิกผ่าน Metal GPU รวมถึงช่วยไล่แก้ข้อผิดพลาดทางเทคนิคที่เกิดขึ้นระหว่างการคอมไพล์และทดสอบ
ข้อมูลทางเทคนิคจากการพัฒนา JohnwickTH Film Look
| รายการ | ข้อมูลจากบันทึกการพัฒนา |
|---|---|
| ชื่อเครื่องมือ | JohnwickTH Film Look |
| ประเภทซอฟต์แวร์ | DaVinci Resolve OpenFX (OFX) Plugin |
| ระบบที่พัฒนาและทดสอบ | macOS (ทดสอบประสิทธิภาพบนเครื่อง Mac ชิป M4 Pro) |
| ระยะเวลาพัฒนา | ประมาณ 4 วัน (28 กันยายน – 1 ตุลาคม 2026) |
| จำนวนโค้ดหลัก | 2,551 บรรทัด |
| ภาษาและเทคโนโลยี | C++, DCTL, OpenFX, Metal GPU |
| จำนวนลุคฟิล์ม (Film Looks) | 41 แบบ |
| พรีเซ็ตสำเร็จรูป (Presets) | 15 แบบ (รวมถึงโทนภาพเมืองกลางคืนอย่าง Neon Bangkok) |
| ชุดควบคุมพารามิเตอร์ | ประมาณ 68 รายการ |
| การรองรับโปรไฟล์กล้อง | ตัวเลือก Input Log / Color Space 14 รายการ |
(หมายเหตุ: ตัวเลขข้างต้นเป็นข้อมูลจากบันทึกการพัฒนาบนเครื่องของผู้สร้าง ไม่ได้หมายความว่าปลั๊กอินผ่านการรับรองหรือทดสอบกับคอมพิวเตอร์ทุกรุ่นแล้ว)
3. ความสามารถหลัก: จำลองบุคลิกฟิล์ม 41 แบบ พร้อมชุดแต่งภาพครบวงจร
เป้าหมายของปลั๊กอินนี้คือการช่วยให้คนทำวิดีโอเลือก "อารมณ์ของภาพ" ที่เข้ากับเรื่องที่จะเล่าได้เร็วที่สุด โดยภายในปลั๊กอินมีลุคฟิล์มจำลอง (Film Stock Simulation) ให้เลือก 41 แบบ ตัวอย่างลุคที่ผมนำมาใช้เล่าเรื่องบ่อยๆ ได้แก่:
- Kodak Portra 400: ให้โทนสีผิวที่ค่อนข้างนุ่มนวล สีสันดูเป็นธรรมชาติ เหมาะมากกับภาพบุคคลและงานแนวไลฟ์สไตล์
- Kodak Gold 200: โทนภาพอุ่น สีสันสดใส ให้บรรยากาศย้อนยุคและเหมาะกับวิดีโอท่องเที่ยว
- Kodak Ektar 100: ให้สีที่ค่อนข้างสดและโดดเด่น เหมาะกับการถ่ายภาพเมืองและทิวทัศน์ธรรมชาติ
- CineStill 800T: โดดเด่นด้วยบุคลิกของภาพกลางคืนและสีสันของแสงไฟนีออนในเมือง
- Kodak Vision3 500T: โทนภาพแนวภาพยนตร์สำหรับสภาพแสงประดิษฐ์และฉากกลางคืน
- Fuji 400H: โทนสีอ่อนละมุน สบายตา เหมาะกับภาพบุคคลที่ต้องการความนุ่มนวล
- Ilford HP5: ลุคขาวดำที่เน้นมิติคอนทราสต์และพื้นผิวของภาพอย่างชัดเจน
นอกจากการเลือกโทนฟิล์มแล้ว ในหน้าต่างควบคุมเดียวกันยังรวมฟังก์ชันการปรับแต่ง Film Grain, Halation, Bloom, Color Grade, Film Print และพรีเซ็ตสำเร็จรูปอีก 15 แบบ เช่น โทน Neon Bangkok สำหรับภาพบรรยากาศกรุงเทพฯ ยามค่ำคืน
4. บทเรียนสำคัญตอนแก้บั๊ก "วิดีโอแนวตั้ง": AI เขียนโค้ดได้ แต่คนต้องเป็นคนตรวจผลลัพธ์
หนึ่งในฟีเจอร์ที่ผมตั้งใจทำเพื่อการผลิตคอนเทนต์ยุคนี้โดยเฉพาะ คือระบบ ขอบฟิล์ม (Film Border) และ Film Overscan ที่สามารถปรับสัดส่วนตามวิดีโอแนวนอนหรือวิดีโอแนวตั้งได้อัตโนมัติ
แต่ในระหว่างที่นำปลั๊กอินไปทดสอบกับโปรเจกต์จริง ผมพบความผิดปกติอย่างหนึ่งที่โค้ดไม่ได้แจ้งเตือนว่า Error นั่นคือ เมื่อนำปลั๊กอินไปใส่ในไทม์ไลน์วิดีโอแนวตั้งขนาด 1080 × 1920 พิกเซล เม็ดฟิล์ม (Film Grain) กลับมีขนาดใหญ่กว่าที่ควรจะเป็นถึงประมาณ 1.78 เท่า!
เมื่อไล่ตรวจสอบกับ Claude จึงพบสาเหตุว่า สูตรคำนวณขนาดเม็ดฟิล์มในโค้ดชุดแรกไปยึดเอา "ความสูงของเฟรมภาพ (Frame Height)" เป็นตัวกำหนดขนาด เมื่อวิดีโอแนวนอน 1920 × 1080 มีความสูง 1,080 พิกเซล เม็ดฟิล์มจึงดูพอดี แต่พอกลับด้านเป็นวิดีโอแนวตั้ง 1080 × 1920 ความสูงของภาพพุ่งขึ้นเป็น 1,920 พิกเซล โปรแกรมจึงขยายขนาดเม็ดฟิล์มตามความสูงไปด้วย (1920 ÷ 1080 = 1.777 เท่า)
เราจึงแก้ไขวิธีคำนวณใหม่ให้โปรแกรมยึดเอา "ด้านที่สั้นกว่าของภาพ" เป็นฐานในการคำนวณแทน ทำให้ไม่ว่าจะตัดต่อคลิปแนวนอนหรือแนวตั้ง ขนาดของเม็ดฟิล์มก็จะมีความละเอียดสม่ำเสมอเท่ากัน
เหตุการณ์นี้สะท้อนความจริงที่สำคัญมากของการใช้ AI เขียนโปรแกรม นั่นคือ AI สามารถเขียนโค้ดที่รันผ่านได้โดยไม่มีบั๊กทางเทคนิค แต่ผู้ใช้งานยังต้องเป็นคนทดลองดูภาพจริง และใช้สายตาของคนทำงานตรวจสอบว่าผลลัพธ์ที่ได้ถูกต้องตามหลักการใช้งานจริงหรือไม่
5. ผลการทดสอบประสิทธิภาพบน Mac ชิป M4 Pro
เนื่องจากงานประมวลผลภาพระดับ 4K ที่มีการซ้อนเอฟเฟกต์ทั้งเม็ดฟิล์มและแสงฟุ้งต้องใช้พลังคำนวณสูง การย้ายงานประมวลผลไปรันบน GPU ผ่านสถาปัตยกรรม Metal จึงเป็นหัวใจสำคัญ โดยผลการทดสอบบนเครื่อง Mac ที่ใช้ชิป M4 Pro มีตัวเลขดังนี้:
- การประมวลผลด้วย CPU: ใช้เวลาประมาณ 113 มิลลิวินาทีต่อเฟรม
- การประมวลผลส่วนที่ทดสอบด้วย GPU (ที่ความละเอียด 4K): ใช้เวลาประมาณ 5.7 มิลลิวินาทีต่อเฟรม (เร็วกว่าการประมวลผลด้วย CPU ประมาณ 20 เท่า สำหรับงานส่วนที่นำมาเปรียบเทียบกัน)
- เมื่อเปิดใช้งานเอฟเฟกต์เต็มชุดทั้งหมด: ใช้เวลาประมวลผลวัดได้ประมาณ 21 มิลลิวินาทีต่อเฟรม
(ข้อสังเกตเพื่อความชัดเจน: ตัวเลข 5.7 มิลลิวินาที และ 21 มิลลิวินาที เป็นคนละขอบเขตการทดสอบกัน จึงไม่ควรนำไปอ้างอิงว่าเมื่อเปิดครบทุกฟังก์ชันแล้วจะใช้เวลาเพียง 5.7 มิลลิวินาทีต่อเฟรม)
6. ข้อจำกัดที่ต้องบอกอย่างตรงไปตรงมา
แม้ปลั๊กอิน JohnwickTH Film Look จะสามารถนำมาใช้งานจริงในงานของผมได้แล้ว แต่การพัฒนาเครื่องมือขึ้นเองในเวลา 4 วันก็มีข้อจำกัดสำคัญที่ต้องระบุไว้อย่างชัดเจน:
- เป็นการจำลองลักษณะภาพ ไม่ใช่โปรไฟล์ทางวิทยาศาสตร์: ลุคฟิล์มทั้ง 41 แบบเป็นการจำลองบุคลิกสีและอารมณ์ของภาพ (Visual Simulation) เพื่อให้ทำงานได้เร็วขึ้น ไม่ใช่โปรไฟล์ฟิล์มที่สร้างจากการวัดค่าทางห้องปฏิบัติการ จึงไม่สามารถอ้างได้ว่าสีจะเหมือนฟิล์มจริงทุกประการ
- การทดสอบยังจำกัดอยู่บนเครื่องที่ใช้พัฒนา: ปลั๊กอินนี้ได้รับการออกแบบและทดสอบบนสภาพแวดล้อมการทำงานของผมเอง ยังไม่ได้ผ่านการยืนยันความเข้ากันได้กับคอมพิวเตอร์ทุกระบบ กล้องทุกรุ่น หรือ DaVinci Resolve ทุกเวอร์ชัน
- ต้นแบบที่ใช้งานเองได้ ไม่ใช่ซอฟต์แวร์เชิงพาณิชย์ที่สมบูรณ์: การใช้เวลาพัฒนา 4 วันไม่ได้แปลว่าเราได้ซอฟต์แวร์สำเร็จรูปพร้อมวางจำหน่ายในระดับอุตสาหกรรม และกระบวนการสร้างก็ยังมีต้นทุนทั้งเวลาทำงาน เครื่องคอมพิวเตอร์ และค่าบริการ AI
บทสรุปจากโปรเจกต์แรก: เมื่อคนทำคอนเทนต์เริ่มออกแบบเครื่องมือจากงานของตัวเอง
สิ่งที่ผมได้เรียนรู้จากการสร้าง JohnwickTH Film Look คือการเห็นความเป็นไปได้ใหม่ในการทำงาน จากเดิมที่เราต้องปรับตัวเข้าหาซอฟต์แวร์สำเร็จรูปเสมอไป วันนี้เราสามารถเริ่มออกแบบเครื่องมือจากลักษณะงานจริงของตัวเอง แล้วใช้ AI เป็นสะพานช่วยเปลี่ยนความคิดนั้นให้กลายเป็นซอฟต์แวร์ที่ใช้งานได้จริง
และประสบการณ์จากปลั๊กอินแต่งสีตัวนี้เอง ที่ทำให้อีกไม่กี่สัปดาห์ต่อมา เมื่อผมต้องเจอกับกองฟุตเทจทริปเยอรมนีมากกว่าพันคลิป ผมจึงตัดสินใจให้ AI ช่วยสร้างเครื่องมือตัวที่สองขึ้นมาอีกครั้ง



