การสร้างวิดีโอด้วย AI ไม่ควรเริ่มจากการสุ่ม Prompt ภาพหลายใบแล้วค่อยหาทางเอามาต่อกัน เพราะสุดท้ายตัวละครเปลี่ยน หน้าตาสินค้าไม่เหมือนเดิม และเรื่องไม่ต่อเนื่อง

วิธีที่ควบคุมได้คือ คิดทั้งเรื่องก่อน แล้วผลิตทีละ Shot เหมือนกองถ่ายขนาดเล็กที่มี AI ทำงานตามใบสั่งงาน

บทนี้ต่อยอดจาก บทที่ 42 Workflow ตัดต่อด้วย AI ซึ่งเริ่มจากคลิปที่ถ่ายมาแล้ว และ บทที่ 43 ให้ AI ทำภาพให้ร้าน ซึ่งเน้นภาพเดี่ยว คราวนี้เราจะเชื่อมทั้งเส้นตั้งแต่ Story ไปจนถึง Final MP4

สไลด์ 1 — Pipeline ทั้งเส้น

Pipeline ที่ควรจำมี 7 ช่วง

Brief → Story → Shot List → Image API → Video API → HyperFrames → Final MP4

1. Brief — บอกเป้าหมาย ผู้ชม ความยาว และสิ่งที่ต้องการให้คนดูทำ 2. Story — ให้ AI วางโครงเรื่องตั้งแต่เปิดจนจบ 3. Shot List — แตกเรื่องเป็นภาพย่อยทีละ Shot 4. Image API — สร้างภาพต้นทางของแต่ละ Shot 5. Video API — ทำภาพนิ่งให้มีการเคลื่อนไหว 6. HyperFrames — เรียง Timeline ใส่เสียง ซับ กราฟิก และเพลง 7. Final MP4 — ตรวจแล้วจึงส่งออก

แต่ละช่วงต้องมีไฟล์ส่งต่อที่ตรวจได้ อย่าให้ AI จำงานทั้งหมดอยู่ในแชต เพราะเมื่อแก้ Shot หนึ่ง เราควรทำใหม่เฉพาะ Shot นั้น ไม่ใช่เริ่มวิดีโอทั้งเรื่องใหม่

คิดทั้งเรื่องก่อน แล้วค่อยผลิตทีละ Shot

สไลด์ 2 — ศัพท์ 5 คำที่ต้องรู้

  • Storyboard — แผนภาพรวมของเรื่องว่าแต่ละช่วงเล่าอะไร
  • Shot List — ตารางใบสั่งงานราย Shot ระบุภาพ การเคลื่อนไหว เวลา และเสียง
  • Reference Image — ภาพอ้างอิงสินค้า ฉาก สี หรือสไตล์ เพื่อให้แต่ละ Shot ไปในทิศทางเดียวกัน
  • Render Job — งานสร้างวิดีโอที่ส่งให้ระบบประมวลผล แล้วได้ Job ID กลับมาติดตามสถานะ
  • Timeline — เส้นเวลาที่กำหนดว่า Shot ไหนเริ่มเมื่อไร จบเมื่อไร และเสียงใดอยู่ตรงไหน

Image API ใช้สร้างหรือแก้ภาพจาก Prompt ได้ ส่วน Responses API เหมาะกับ flow ที่ต้องแก้ภาพต่อเนื่องหลายรอบ.[1] Video API สามารถรับภาพอ้างอิงและคืนผลเป็นงานที่ต้องรอประมวลผล.[2]

Storyboard คุมเรื่อง · Shot List คุมงาน · Timeline คุมเวลา

สไลด์ 3 — เริ่มจากเรื่อง ไม่ใช่ Prompt ภาพ

ก่อนให้ AI เขียนเรื่อง เตรียม Brief เพียง 4 ข้อ

  • Goal: วิดีโอนี้ต้องการขาย สอน หรือสร้างความสนใจ
  • Audience: คนดูคือใคร และรู้เรื่องนี้แค่ไหน
  • Duration: ต้องการวิดีโอสั้นหรือยาวประมาณใด
  • CTA: ดูจบแล้วต้องการให้คนดูทำอะไร

จากนั้นให้ AI วางเรื่องเป็น 4 ช่วง

Hook → Problem → Proof → CTA

ตัวอย่างคำสั่ง:

ช่วยวางโครงวิดีโอแนะนำบริการ AI สำหรับร้านอาหาร
ผู้ชมคือเจ้าของร้านที่ไม่ใช่โปรแกรมเมอร์
เปิดด้วยปัญหางานหลังร้าน ใช้ตัวอย่างรายงานยอดขายเป็นหลักฐาน
ปิดด้วยการชวนทดลองระบบ
ตอนนี้ยังไม่ต้องสร้างภาพ ให้ส่ง Story พร้อมเหตุผลของแต่ละช่วงมาก่อน

เจ้าของต้องอนุมัติ Story ก่อน เพราะการแก้เรื่องในขั้นนี้ถูกกว่าการสร้างภาพและวิดีโอเสร็จแล้วค่อยรื้อ

อนุมัติเรื่องก่อน จึงอนุมัติให้ผลิต

สไลด์ 4 — แตกเรื่องเป็น Shot List

เมื่อเรื่องผ่านแล้ว ให้ AI สร้างตาราง Shot List เช่น

Shotช่วงเรื่องภาพMotionระยะเวลาOutput
01Hookบิลกองโตกล้องค่อย ๆ เข้าใกล้3 วินาทีshot-01.mp4
02Problemออเดอร์กระจัดกระจายกระดาษขยับเบา ๆ4 วินาทีshot-02.mp4
03ProofDashboard สรุปยอดตัวเลขปรากฏทีละส่วน4 วินาทีshot-03.mp4
04CTAกล่องสินค้าพร้อมส่งกล้องค่อย ๆ ถอยออก3 วินาทีshot-04.mp4

ในไฟล์จริงควรมีข้อมูลเพิ่ม เช่น

{
  "id": "shot-01",
  "story_section": "hook",
  "image_prompt": "...",
  "motion_prompt": "...",
  "reference": "product.png",
  "duration_seconds": 3,
  "narration": "...",
  "output": "shot-01.mp4"
}

สิ่งสำคัญคือ Image Prompt กับ Motion Prompt ต้องแยกกัน ภาพต้นทางบอกว่ามีอะไรอยู่ในฉาก ส่วน Motion Prompt บอกว่าอะไรเคลื่อน กล้องไปทางไหน และอะไรต้องอยู่นิ่ง

ตัวอย่างนี้ตั้งใจใช้สินค้า วัตถุ และฉากที่ไม่มีใบหน้าคน เพราะนโยบาย input และบุคคลจริงแตกต่างกันตามผู้ให้บริการ และ Videos API ที่ใช้อ้างอิงในบทนี้ยังปฏิเสธภาพ input ที่มีใบหน้ามนุษย์.[2] ก่อนผลิตจริงต้องตรวจ policy ของ provider ที่เลือกอีกครั้ง

หนึ่งแถวใน Shot List ต้องผลิตเป็นไฟล์ได้หนึ่งชิ้น

สไลด์ 5 — สร้างภาพทีละ Shot

OpenAI ระบุว่า Image API เหมาะกับการสร้างหรือแก้ภาพหนึ่งภาพจากหนึ่ง Prompt ส่วน flow ที่ต้องสนทนาและแก้ภาพต่อเนื่องสามารถใช้ Responses API ได้.[1]

ก่อนเรียก API ให้เตรียม 4 ส่วน

1. Style Lock — สี แสง เลนส์ และอารมณ์ที่ทุก Shot ต้องเหมือนกัน 2. Reference — สินค้า โลโก้ หรือฉากหลักที่ provider อนุญาต 3. Shot Prompt — สิ่งที่เกิดใน Shot นี้เท่านั้น 4. Aspect Ratio — กำหนดแนวนอนหรือแนวตั้งตั้งแต่ต้นตามปลายทาง

โครงไฟล์ที่ควรเก็บ:

project/
  story.json
  shots.json
  prompts/images/
  assets/references/
  assets/images/shot-01.png
  assets/images/shot-02.png

บันทึก Prompt, ชื่อไฟล์ และ Shot ID คู่กันทุกครั้ง เพื่อให้ย้อนกลับมาแก้เฉพาะใบได้ และอย่าใส่ API key ไว้ในไฟล์หน้าเว็บหรือ commit เข้า Git ตามหลักใน บทที่ 45 ความปลอดภัย ก่อนให้ AI แตะธุรกิจจริง

Prompt ต้องย้อนหาได้ และทุกภาพต้องรู้ว่ามาจาก Shot ไหน

สไลด์ 6 — ตรวจภาพก่อนทำวิดีโอ

อย่าส่งภาพทุกใบเข้า Video API ทันที ให้ทำ Image Gate ก่อน เพราะถ้าภาพต้นทางผิด การเคลื่อนไหวจะขยายความผิดนั้นให้เห็นชัดขึ้น

ตรวจอย่างน้อย 4 จุด

  • Product / Scene: รูปทรง ฉลาก สี ฉาก และรายละเอียดหลักตรงกับ Reference
  • Composition: มีพื้นที่ให้กล้องเคลื่อนและไม่ตัดสิ่งสำคัญ
  • Text / Logo: ไม่มีข้อความมั่ว โลโก้เพี้ยน หรือแบรนด์ที่ไม่ได้ขอ
  • Aspect Ratio: ทุก Shot ตรงกับวิดีโอปลายทาง

ผลตรวจควรเป็นราย Shot

shot-01 PASS
shot-02 REGENERATE — สินค้าเปลี่ยนสี
shot-03 PASS
shot-04 REGENERATE — พื้นที่ด้านบนไม่พอใส่ข้อความ

ทำใหม่เฉพาะ Shot ที่ไม่ผ่าน แล้วล็อกภาพผ่านตรวจเป็น approved/ ก่อนเริ่ม Video API

ภาพไม่ผ่าน อย่าเพิ่งจ่ายรอบวิดีโอ

สไลด์ 7 — Image-to-Video เป็นงานรอผล

การสร้างวิดีโอผ่าน API มักไม่คืน MP4 ทันที ตัวอย่าง Videos API ของ OpenAI ทำงานแบบ asynchronous: สร้าง Render Job แล้วได้ Job ID กับสถานะเริ่มต้น จากนั้นติดตามสถานะด้วยการ poll หรือ webhook จนเสร็จ จึงดาวน์โหลดไฟล์ MP4.[2]

Create Job
   ↓
Job ID + Status
   ↓
Queued / In Progress
   ↓
Completed → Download MP4
Failed → อ่าน Error แล้ว Retry เฉพาะ Shot

Pseudo workflow:

job = create_video(image, motion_prompt)
save(job.id, shot.id)

while job is queued or in_progress:
    wait
    job = check(job.id)

if completed:
    download to assets/clips/shot-XX.mp4
else:
    log error and stop that shot

ต้องเก็บ Shot ID ↔ Job ID ↔ Output File และรองรับ retry โดยไม่ส่งงานซ้ำทั้งชุด หากระบบรองรับ webhook ให้ใช้แจ้งเมื่อเสร็จแทนการถามสถานะถี่เกินจำเป็น

Video API คือคิวงาน ไม่ใช่ปุ่มที่กดแล้วได้ไฟล์ทันที

สไลด์ 8 — HyperFrames รวมทุก Shot

HyperFrames เป็น framework แบบ open source ที่นำ HTML, CSS, media และ animation มาสร้างเป็นวิดีโอ MP4 ได้.[4] มันทำงานผ่าน composition และ timing ที่เรากำหนด ไม่ใช่ editor แบบลากวางที่คิดเรื่องให้เอง ในขั้นนี้เราเอาของที่ผ่านตรวจแล้วมาประกอบ จัด Timeline และเรนเดอร์

โครงโปรเจกต์ตัวอย่าง:

video-project/
  index.html
  assets/clips/
  assets/audio/
  assets/music/
  captions.json
  timeline.json

ลำดับงานคือ

1. นำ shot-01.mp4, shot-02.mp4 และคลิปที่เหลือเข้า assets/clips/ 2. เรียงเวลาเริ่ม–จบของแต่ละ Shot 3. ใส่ Voice-over, Caption, Graphic และ BGM 4. ตรวจว่าเสียงหลักตรงกับภาพและไม่มีช่องว่าง 5. Lint และ Preview 6. Render เป็น MP4

คำสั่งหลักจาก HyperFrames คือ:[4]

npx hyperframes preview
npx hyperframes render

สำหรับ workflow BizDrive ที่มีอยู่แล้ว ขั้น Render ใช้ npx hyperframes render หลังสร้าง composition และผ่าน lint/check ของโปรเจกต์

Video API สร้าง Shot · HyperFrames ประกอบและเรนเดอร์วิดีโอฉบับสมบูรณ์

สไลด์ 9 — Quality Gate ก่อนปล่อย

ก่อนเรียกว่าเสร็จ ให้ตรวจทั้งระบบ ไม่ใช่ดูแค่ว่าไฟล์เปิดได้

  • Story ต่อเนื่องและ CTA ตรงกับ Brief
  • ตัวละคร สินค้า สี และสไตล์ไม่กระโดดระหว่าง Shot
  • ไม่มี Shot ที่ status ล้มเหลวหรือใช้ไฟล์ placeholder
  • Voice, Caption และภาพตรงกันตาม Timeline
  • เสียงพูดชัด เพลงไม่กลบ และต้น–ท้ายไม่ถูกตัด
  • API key ไม่อยู่ใน source, log, screenshot หรือวิดีโอ
  • เปิดดู Final MP4 จริงตั้งแต่ต้นจนจบ
  • เก็บ Story, Shot List, Prompt, Job ID และไฟล์ที่อนุมัติไว้ทำซ้ำได้

ลองทำเลย

เลือกวิดีโอทดลองหนึ่งเรื่องที่มี 3 Shot และยังไม่ต้องเผยแพร่จริง

1. ให้ AI เขียน Story แบบ Hook → Problem → Proof → CTA 2. แตกเป็น shots.json 3. สร้างภาพแต่ละ Shot ผ่าน Image API 4. ตรวจภาพและอนุมัติทีละใบ 5. สร้างคลิปจากภาพผ่าน Video API 6. นำคลิปเข้า HyperFrames ใส่เสียงสั้น ๆ แล้ว Render 7. จดว่า Shot ใดต้องทำใหม่และเพราะอะไร

คำสั่งก้อนเดียวสำหรับให้ AI วางระบบ

ช่วยสร้างโปรเจกต์ผลิตวิดีโอด้วย AI แบบตรวจสอบย้อนกลับได้
เริ่มจาก Brief และ Story ก่อน ห้ามเรียก API จนกว่าฉันจะอนุมัติ
หลังอนุมัติให้สร้าง Shot List ที่แยก image_prompt กับ motion_prompt
สร้างภาพทีละ Shot เก็บ Prompt และชื่อไฟล์คู่กัน
ภาพต้องผ่าน Image Gate ก่อนส่งเข้า Video API
เก็บ Job ID และ Retry เฉพาะ Shot ที่ล้มเหลว
เมื่อได้คลิปครบ ให้นำเข้า HyperFrames จัด Timeline ใส่เสียง ซับ และ Render
API key เก็บใน Environment Variable และห้าม commit
ส่งรายงาน PASS/FAIL ทุก Gate พร้อม path ของหลักฐาน
คิดเป็นเรื่อง · ผลิตเป็น Shot · ตรวจทีละ Gate · รวมครั้งเดียวตอนท้าย

เช็คลิสต์ก่อนไปบทถัดไป

  • อธิบายความต่างของ Storyboard, Shot List และ Timeline ได้
  • แยก Image Prompt กับ Motion Prompt ได้
  • รู้ว่าต้องตรวจภาพก่อนเรียก Video API
  • เก็บความสัมพันธ์ระหว่าง Shot ID, Job ID และ Output File
  • รู้ว่า HyperFrames ทำหน้าที่จัด Timeline และ Render ไม่ใช่คิดเรื่องแทนเรา
  • มี approval gate ก่อนเรียก API และก่อนเผยแพร่

Sources

[1] https://platform.openai.com/docs/guides/image-generation [2] https://platform.openai.com/docs/guides/video-generation [4] https://github.com/heygen-com/hyperframes