Black Forest Labs: FLUX Video Edit
FLUX Video Edit [fast] เปลี่ยนคลิปเดิมด้วยคำสั่งแก้ไขเป็นข้อความ เพิ่ม ลบ หรือแทนองค์ประกอบ เปลี่ยนสถานที่หรือสไตล์ และแก้บทสนทนาเดิม ภายในข้อจำกัดความยาวต้นฉบับ กรอบภาพ และเสียงที่ระบุ
เกี่ยวกับโมเดล
คำอธิบายนี้ครอบคลุมความสามารถของโมเดล อินพุต เอาต์พุต และตัวเลือกที่ใช้ได้ใน Ailoot แสดงด้านล่างตามเมธอดที่เลือก
FLUX Video Edit [fast] เป็นเวิร์กโฟลว์ของ Black Forest Labs ที่ใช้พรอมป์ต์แก้วิดีโอเดิม รับคลิปต้นฉบับหนึ่งคลิปกับคำอธิบายการแก้ แล้วคืน MP4 ที่แก้แล้ว ต้นฉบับกำหนดโครงช็อตเริ่มต้น ทั้งความยาว กรอบภาพ การเคลื่อนกล้อง และจังหวะ ใช้พรอมป์ต์ระบุสิ่งที่จะต่างออกไป แทนบรรยายฉากใหม่ทั้งหมดจนไม่ชัดว่าจะเปลี่ยนอะไร
ระบุการเปลี่ยนและตำแหน่ง
การแก้ที่ระบุรวมการลบ เพิ่ม หรือแทนวัตถุและตัวละคร สร้างสถานที่ใหม่ เปลี่ยนสไตล์ ข้อความที่มองเห็น บทสนทนา หรือเสียง เริ่มจากเป้าหมายและการกระทำ เช่น ลบกระเป๋าบนเก้าอี้โดยคงคนนั่งและห้อง หรือเปลี่ยนแก้วธรรมดาเป็นแก้วเคลือบสีน้ำเงินโดยไม่เปลี่ยนการเคลื่อนไหวของมือ หากมีวัตถุคล้ายกันหลายชิ้น ให้แยกเป้าหมายด้วยตำแหน่ง รูปลักษณ์ หรือบทบาท
สำหรับการเพิ่ม ระบุตำแหน่ง ขนาด และการกระทำที่เกี่ยวข้อง โคมไฟแดงสูงข้างโซฟาเฉพาะเจาะจงกว่าโคมเพิ่มเติมที่ไม่บอกว่าอยู่ไหน สำหรับการแทนที่ ระบุว่าอะไรเปลี่ยนเป็นอะไร และการเคลื่อนไหวหรือการสัมผัสที่ต้องคงไว้ คู่มือแนะนำคำสั่งสั้นที่สุดที่ระบุการเปลี่ยนครบ แล้วเพิ่มรายละเอียดตามจำเป็น รักษาคุณสมบัติต้นฉบับโดยตั้งใจ แทนขอปรับปรุงทั่วไปที่ประเมินขอบเขตไม่ได้
สถานที่ สไตล์ และแอนิเมชันร่าง
การเปลี่ยนสถานที่สร้างสภาพแวดล้อมที่เห็นใหม่โดยคงการกระทำได้ ผู้ผลิตสาธิตเปลี่ยนพื้นผิวปีนเป็นโครงสร้างอื่นพร้อมระบุจุดสัมผัสใหม่ เพื่อให้มือและเท้าตัวละครยังสัมพันธ์กับพื้นผิวอย่างมีความหมาย ในฉากใช้งานจริง ให้บรรยายสถานที่ที่เปลี่ยนและเรขาคณิตที่การเคลื่อนไหวเดิมอาศัย พื้นหลังใหม่ประเมินง่ายเมื่อการกระทำเดิมมีความสัมพันธ์ชัดเจน
คู่มือยังสาธิตแปลงแอนิเมชันร่างเป็นภาพสมบูรณ์ ระบุว่าวัตถุบล็อกเอาต์ใดกลายเป็นรถหรืออุปกรณ์ที่ต้องการ แล้วรักษาเส้นทาง ความเร็ว และความสัมพันธ์กับกล้อง สำหรับเปลี่ยนสไตล์ให้บอกวัสดุ พื้นผิว แสง และแสงสะท้อน รวมแนวสุนทรียะ ฉากคล้ายดินเหนียวกับฉากเหมือนภาพถ่ายต้องใช้ลักษณะภาพต่างกันแม้ทำการกระทำเดียวกัน
การแก้ถัดไปใช้ผลครั้งแรกเป็นต้นฉบับใหม่ได้ เก็บต้นฉบับและแต่ละขั้นที่เลือก พร้อมให้รอบถัดไปมีจุดประสงค์เดียวชัดเจน ตัวอย่างที่ระบุพัฒนาจากพรีวิวร่างสู่สถานที่สมบูรณ์ แล้วปรับแสงอีกแบบ หลังแต่ละรอบเทียบกับแหล่งก่อนหน้าและตรวจว่าสิ่งที่ตั้งใจรักษายังอยู่
บทสนทนาต้องพอดีกับเวลาเดิม
เวิร์กโฟลว์คงเสียงต้นฉบับ เว้นแต่คำสั่งขอเปลี่ยนบทสนทนาหรือเสียง ต้นฉบับเงียบให้ผลเงียบ จึงไม่มีคำพูดเดิมให้แก้ สำหรับการแก้บทสนทนา ให้ใส่ประโยคใหม่ในเครื่องหมายคำพูด ระบุผู้พูด และทำให้ถ้อยคำพอดีกับช่วงพูดเดิม คู่มือรายงานว่าประโยคแทนที่ยาวกว่าถูกตัดเมื่อเกินเวลา การเขียนคำเพิ่มไม่ทำให้เวลาพูดในช็อตเพิ่ม
ตรวจประโยคที่ได้ยินร่วมกับการแสดงที่เห็น เก็บข้อความเดิมกับประโยคแทนที่ เพื่อระบุคำหาย จังหวะผิด หรือการเปลี่ยนเสียงที่ไม่ต้องการ ผลที่ใช้ได้คือช่วงพูดที่แก้ในฉาก ไม่ใช่ถือว่าข้อความตรงเพียงเพราะเรนเดอร์เสร็จ
ขีดจำกัดต้นฉบับและเอาต์พุตที่สืบทอด
โปรไฟล์ผู้ผลิตต้องมีวิดีโอกับพรอมป์ต์แก้ไข คำสั่งยาวหนึ่งถึง 4,096 อักขระหลังตัดช่องว่างหัวท้าย คลิปส่งด้วย URL หรือ MP4 ที่เข้ารหัส ความยาวสูงสุดสิบห้าวินาที และอินพุตไม่เกินห้าสิบ MiB แต่ละด้านอย่างน้อย 160 พิกเซล คลิปหลังปรับมาตรฐานต้องมีอย่างน้อยสิบเจ็ดเฟรมที่ 24 fps หรือประมาณเจ็ดในสิบวินาที ต้นฉบับยาวเกินจะถูกปฏิเสธแทนตัดเงียบ ๆ ส่วนเล็กเกินอาจล้มเหลวระหว่างประมวลผล
โฟลว์ที่ระบุประมวลผล 24 fps ตามความยาวและอัตราส่วนต้นฉบับ อินพุตสูงกว่าโปรไฟล์ 720p ถูกย่อ ผู้ผลิตยกตัวอย่าง 1920×1088 คืนเป็น 1248×704 ความยาว ความละเอียด และอัตราส่วนไม่ใช่ค่าตั้งเอาต์พุตอิสระในโปรไฟล์นี้ สูตร sampling จัดการภายใน และสัญญาคำขอที่ระบุไม่รับฟิลด์อย่าง mode, version, seed หรือ generate_audio
การใช้วิดีโอเพียงเป็นแรงบันดาลใจด้านการเคลื่อนไหวหรือสไตล์เพื่อช็อตใหม่เป็นคนละเวิร์กโฟลว์ ตัวแก้นี้ไม่รับภาพอ้างอิง เสียงอย่างเดียว มาสก์ หรือคำขอต่อคลิป เตรียมวิดีโอจริงที่จะเปลี่ยนและคงระยะเวลาที่เลือกก่อนเขียนคำสั่ง หลังประมวลผลแบบอะซิงโครนัส ผู้ผลิตคืน MP4 ที่แก้ผ่านลิงก์ลงนามชั่วคราว ใช้ได้ประมาณหนึ่งชั่วโมง บันทึกผลและเทียบวัตถุที่เปลี่ยน เฟรมรอบข้าง จังหวะ และเสียงกับต้นฉบับก่อนใช้ในงานตัดต่อยาว
Ailoot Ultra · วิดีโอ POST /v1/videos black-forest-labs/flux-video-edit
black-forest-labs/flux-video-edit
black-forest-labs/flux-video-editเริ่มต้น
FLUX Video Edit [fast] เปลี่ยนคลิปเดิมด้วยคำสั่งแก้ไขเป็นข้อความ เพิ่ม ลบ หรือแทนองค์ประกอบ เปลี่ยนสถานที่หรือสไตล์ และแก้บทสนทนาเดิม ภายในข้อจำกัดความยาวต้นฉบับ กรอบภาพ และเสียงที่ระบุ
- อินพุตที่รองรับ
- ข้อความ · รูปภาพ · เสียง · วิดีโอ
- ผลลัพธ์
- วิดีโอ
ใช้งานได้ใน Ailoot · อินพุตและเมธอด
Ailoot Ultra · วิดีโอ POST /v1/videos
- ขาเข้า
text,image,audio,video- ขาออก
video
| ฟิลด์ | ประเภท | ข้อกำหนด | ค่าและข้อจำกัด | ค่าเริ่มต้น |
|---|---|---|---|---|
ฟิลด์model | ประเภทstring | ข้อกำหนดจำเป็น | ค่าและข้อจำกัด black-forest-labs/flux-video-edit | ค่าเริ่มต้น— |
ฟิลด์input_references | ประเภทarray | ข้อกำหนดจำเป็น | ค่าและข้อจำกัด จำนวนรายการขั้นต่ำ: 1 จำนวนรายการสูงสุด: 1 | ค่าเริ่มต้น— |
ฟิลด์prompt | ประเภทstring | ข้อกำหนดจำเป็น | ค่าและข้อจำกัด ความยาวขั้นต่ำ: 1 | ค่าเริ่มต้น— |
พารามิเตอร์และวงจรการทำงานของเมธอด
| พารามิเตอร์ | ข้อกำหนด |
|---|---|
พารามิเตอร์content_type | ข้อกำหนดapplication/json |
พารามิเตอร์required | ข้อกำหนดmodel, input_references, prompt |
พารามิเตอร์material_types | ข้อกำหนดtext, image, audio, video |
พารามิเตอร์material_conditions | ข้อกำหนดใช้ URL เนื้อหาแอสเซ็ตวิดีโอจริงที่เสร็จสมบูรณ์และเป็นของคุณเพียงหนึ่งรายการ พร้อมลายเซ็นที่ส่งกลับ เจ้าของแอสเซ็ต ชนิด และหลักฐานไบต์ที่จัดเก็บต้องตรงกับคำขอ |
วงจรการทำงาน: asynchronous_job_then_owned_outputs
GET /v1/videos/{request_id} · id หรือ polling_url จริงที่ส่งกลับ
GET /v1/videos/{request_id}/content
ราคา
วิธีคำนวณค่าบริการสุดท้าย
อัตราที่แสดงใช้ประมาณการค่าใช้จ่ายก่อนการสร้างผลลัพธ์ ยอดเรียกเก็บสุดท้ายคำนวณจากค่าใช้จ่ายที่บันทึกไว้สำหรับการสร้างผลลัพธ์ครั้งเดิม ระยะเวลาของผลลัพธ์ที่วัดได้และปริมาณที่คาดการณ์ไว้ไม่ใช่ปริมาณสุดท้ายที่ใช้คิดค่าบริการ
ข้อมูลอัตราราคาไม่ได้เพิ่มตัวเลือกคำขอ พารามิเตอร์ที่รองรับระบุไว้สำหรับเมธอดที่เลือก
- โหมดรวดเร็ว
- ไม่ได้ระบุ เมื่อเลือกโหมดรวดเร็ว
- โหมดยืดหยุ่น
- ไม่ได้ระบุ เมื่อเลือกโหมด flex
- ระดับการใช้เหตุผลสูงสุด
- ไม่ได้ระบุ เมื่อใช้การปรับตามค่าเริ่มต้น (default) สำหรับระดับการใช้เหตุผลสูงสุด
อัตราประมาณการเพื่อเปรียบเทียบ
ราคาตามการตั้งค่า
เทียบค่าบริการแต่ละรายการกับเงื่อนไขที่แสดง เลือกใช้อัตราเดียวสำหรับแต่ละชุดการตั้งค่าที่เป็นตัวเลือกทดแทนกัน
| การตั้งค่า | ตารางอัตราค่าบริการ | ปริมาณคาดการณ์ | หน่วยคิดค่าบริการ | เงื่อนไขคิดค่าบริการ | ค่าบริการ |
|---|---|---|---|---|---|
| การตั้งค่าอัตราค่าบริการโทเคนพื้นฐาน | ตารางอัตราค่าบริการอัตราพื้นฐาน | ปริมาณคาดการณ์— | หน่วยคิดค่าบริการ— | เงื่อนไขคิดค่าบริการ— | ค่าบริการ ขาเข้า · โทเค็นอินพุต · ประมาณการเพื่อเปรียบเทียบเท่านั้น — / 1K โทเค็น ขาออก · โทเค็นเอาต์พุต · ประมาณการเพื่อเปรียบเทียบเท่านั้น — / 1K โทเค็น ขาเข้า · การอ่านแคช · ประมาณการเพื่อเปรียบเทียบเท่านั้น — / 1K โทเค็น ขาเข้า · การเขียนแคช · ประมาณการเพื่อเปรียบเทียบเท่านั้น — / 1K โทเค็น ขาเข้า · การเขียนแคช, 1 ชั่วโมง · ประมาณการเพื่อเปรียบเทียบเท่านั้น — / 1K โทเค็น |
| การตั้งค่าราคาวิดีโอ | ตารางอัตราค่าบริการ— | ปริมาณคาดการณ์— | หน่วยคิดค่าบริการต่อวินาทีของวิดีโอ | เงื่อนไขคิดค่าบริการไม่มีการระบุเงื่อนไขเพิ่มเติมในคีย์ราคานี้ | ค่าบริการ ขาออก · ราคาวิดีโอ · ประมาณการเพื่อเปรียบเทียบเท่านั้น $0.06 ต่อวินาทีของวิดีโอ |
| การตั้งค่าต้นทุนการสร้างโดยประมาณ | ตารางอัตราค่าบริการ— | ปริมาณคาดการณ์ค่าประมาณสำหรับการสร้างหนึ่งครั้ง | หน่วยคิดค่าบริการ— | เงื่อนไขคิดค่าบริการ— | ค่าบริการ ขาออก · ค่าใช้จ่ายในการสร้างโดยประมาณ · ประมาณการเพื่อเปรียบเทียบเท่านั้น $0.06 ประมาณการก่อนสร้าง ค่าประมาณนี้ไม่ใช่ค่าใช้จ่ายเพิ่มเติมหรืออัตราคงที่สำหรับการสร้างผลลัพธ์ที่เสร็จสมบูรณ์แล้ว |
Ailoot กันยอดเงินประมาณการไว้ก่อนส่งคำขอ หลังได้ผลลัพธ์ จะคิดค่าบริการสุดท้ายตามการใช้งานที่วัดได้ การคิดค่าบริการแบบสตรีมใช้บันทึกการใช้งานสุดท้าย วิธีกันยอดเงินและคิดค่าบริการสุดท้าย →
ตัวอย่างคำขอ
Ailoot Ultra · วิดีโอ
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_INPUT_REFERENCES_JSON:?Set the actual documented input value}"
export AILOOT_INPUT_REFERENCES_JSON
: "${AILOOT_PROMPT:?Set the actual documented input value}"
export AILOOT_PROMPT
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
request={'model': 'black-forest-labs/flux-video-edit', 'input_references': '${ACTUAL_OWNED_INPUT_REFERENCES}', 'prompt': '${ACTUAL_EDIT_PROMPT}'}
request['input_references']=json.loads(os.environ['AILOOT_INPUT_REFERENCES_JSON'])
request['prompt']=os.environ['AILOOT_PROMPT']
Path('request.json').write_text(json.dumps(request,ensure_ascii=False),encoding='utf-8')
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/videos \
-H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
--data-binary @request.json -D response-headers.txt -o response.bin
# Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again.
รับและบันทึกผลลัพธ์
Ailoot Ultra · วิดีโอ
GET /v1/videos/{request_id}GET /v1/videos/{request_id}/content
บันทึกไฟล์ที่สร้างเสร็จทั้งหมด
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_STATUS_FILE:?Set the actual completed status JSON file}"
export AILOOT_STATUS_FILE
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
from urllib.parse import urlsplit,urljoin
f=Path(os.environ["AILOOT_STATUS_FILE"])
if not f.is_file():raise SystemExit("Choose the actual completed status file")
r=json.loads(f.read_text())
if r.get("status")!="completed" or not isinstance(r.get("data"),list) or not r["data"]:raise SystemExit("Wait for a completed status with asset paths")
urls=[]
for x in r["data"]:
if not isinstance(x,str) or "\n" in x or "\r" in x:raise SystemExit("Invalid asset path")
u=urljoin("https://api.ailoot.ai",x)
z=urlsplit(u)
if z.scheme!="https" or z.netloc!="api.ailoot.ai" or z.username or z.password:raise SystemExit("Use the actual Ailoot asset paths from status")
urls.append(u)
Path("asset-urls.txt").write_text("\n".join(urls)+"\n")
PY_REQUEST
index=0
while IFS= read -r asset_url; do
curl --fail-with-body --silent --show-error "$asset_url" \
-H "Authorization: Bearer $AILOOT_API_KEY" -o "video-${index}.mp4"
index=$((index + 1))
done < asset-urls.txt
เก็บผลลัพธ์ที่เสร็จสมบูรณ์ทั้งหมด
บันทึกวิดีโอที่สร้างเสร็จหรือไฟล์ที่ส่งกลับมาทุกไฟล์ และดึงไฟล์สื่อจากทุก URL ที่ส่งกลับมาจริง
เก็บการตอบกลับและส่วนหัวให้ครบถ้วน เก็บผลลัพธ์จริงทุกรายการ ตัวระบุที่ส่งกลับมาแต่เดิม และฟิลด์ข้อมูลการใช้งานทั้งหมด กู้คืนการดำเนินการเดิมโดยไม่ส่งคำขอสร้างซ้ำ
เมื่อต้องตรวจสอบการตอบกลับต้นฉบับ
เก็บ X-Client-Request-ID, X-Ailoot-Task-Id และ id/polling_url จริงที่ส่งกลับ ดำเนินงานเดิมต่อ อย่าส่งคำขอสร้างซ้ำ
ฟิลด์การตอบกลับ
| ฟิลด์ | ประเภท |
|---|---|
ฟิลด์id | ประเภท |
ฟิลด์status | ประเภท |
ฟิลด์data[] | ประเภท |
ฟิลด์outputs[] | ประเภท |
ชื่ออื่น
ชื่ออื่นของโมเดล
Ailoot Ultra black-forest-labs/flux-video-edit
ชื่อพาธเมธอดอื่น
ใช้พาธเมธอดที่แสดงด้านบน
ID ที่เกี่ยวข้องสำหรับเรียกใช้โมเดล
FAQ · Black Forest Labs: FLUX Video Edit
- มีอินพุตและผลลัพธ์ใดบ้าง?
POST /v1/videos·black-forest-labs/flux-video-edit:text,image,audio,video→video- คำขอใช้ฟิลด์ใดบ้าง?
POST /v1/videos·black-forest-labs/flux-video-edit:model,input_references,prompt