AVC

AV Fans Talk => Technical Support => ข้อความที่เริ่มโดย: อบเชยเฉยๆ ที่ ตุลาคม 01, 2024, 11:26:38 PM



หัวข้อ: วิธีติดตั้ง FFMPEG และการใช้งานเบื้องต้น
เริ่มหัวข้อโดย: อบเชยเฉยๆ ที่ ตุลาคม 01, 2024, 11:26:38 PM
(https://img5.pic.in.th/file/secure-sv1/0014bec7f96ccb25090.png)
ไปที่ https://ffmpeg.org/download.html แล้วเลือกดาวโหลดตามระบบปฏิบัติการ
อย่าง windows ก็หน้าต่างฟ้าๆ แล้วเลือกลิงก์มาสักอัน แนะนำอันบน เพราะอันบนๆเท่ากับดีย์

(https://img5.pic.in.th/file/secure-sv1/00293e68986faac5061.png)
แล้วเราก็มองหาลิงก์ดาวน์โหลด แนะนำตัว Full ไปเลย กดโหลดมา

(https://img2.pic.in.th/pic/003583c7c9d8cc7153e.png)
จากนั้นก็ทำการแตกไฟล์

(https://img2.pic.in.th/pic/0042089f50ffdab9396.png)
จากนั้นเข้าโฟร์เดอร์ bin จะเห็น 3 ไฟล์

(https://img2.pic.in.th/pic/005cd6ac724a8c2cc61.png)
ให้เราก๊อบไปวางที่ โฟร์เดอร์ใหม่ ณ ไดร์ฟไหนก็ได้ตามใจ
ส่วนของผมเป็นไดร์ฟ C: และชื่อโฟร์เดอร์คือ FFMPEG

(https://img5.pic.in.th/file/secure-sv1/006f80d769183ab5b6f.png)
จากนั้นกดปุ่ม windows บนคีย์บอร์ด หรือก็คือปุ่ม start มุมซ้ายล่าง แล้วพิมพ์ไปว่า path
แล้วกดเข้าไปใน Edit the system environment variables

(https://img5.pic.in.th/file/secure-sv1/00711fd2fe16939ec2e.png)
จากนั้นกด Environment Variables..

(https://img2.pic.in.th/pic/008ff8e6740c9d5b11c.png)
มองช่องล่าง คลิ๊ก 1 ที ที่ Path แล้วกด Edit..

(https://img2.pic.in.th/pic/009c9d40023df42faa5.png)
กด Browse.. แล้วเลือกไดร์ฟและโฟร์เดอร์ที่เราเก็บ FFMPEG ไว้
แล้วก็กดโอเคยาวๆเลย

(https://img5.pic.in.th/file/secure-sv1/010380ec19e2404da17.png)
จากนั้นไปโฟร์เดอร์ไหนก็ได้สักโฟร์เดอร์นึ่ง
ในช่อง Address..

(https://img5.pic.in.th/file/secure-sv1/011b1715f45c46a8865.png)
พิมพ์ไปว่า cmd แล้ว Enter จะเป็นการเรียก cmd จากช่อง address
ซึ่งจะใช้บ่อยในการทำงานกับ ffmpeg จำไว้ให้ดี

(https://img2.pic.in.th/pic/0122ff7dcb45d0ee9ff.png)
จากนั้นพิมพ์ไป ffmpeg แล้ว Enter

(https://img2.pic.in.th/pic/0131c3a6b3d8c4a6ac2.png)
ถ้าขึ้นแบบนี้แปลว่าติดตั้งเรียบร้อยแล้ว


หัวข้อ: Re: วิธีติดตั้ง FFMPEG และการใช้งานเบื้องต้น
เริ่มหัวข้อโดย: อบเชยเฉยๆ ที่ ตุลาคม 01, 2024, 11:27:36 PM
การใช้งานเบื้องต้น
ท่านสามารถไปพิมพ์ถามพวก AI อย่าง Chat GPT หรือ Bard Google
ในส่วนที่ท่านต้องการจะทำกับไฟล์มีเดียที่ท่านมีเอาได้เลย
AI มักจะตอบมาค่อนข้างตรง ถ้าคำถามไม่ชวนงงจนเกินไป
ส่วนใหญ่ท่านก็แทนค่าด้วย ชื่อไฟล์ขาเข้า (input) และ ชื่อไฟล์ขาออก (output) ตามที่่ AI ให้โค๊ดเรามา

##############################################################

การแปลงไฟล์ โดยไม่ลดรายละเอียดไม่ลดคุณภาพไม่ลดขนาด ราวกับ copy-paste
ให้เราเข้าโฟร์เดอร์เก็บไฟล์ต้นทาง เรียก cmd ขึ้นมาจากช่อง address
แล้วใช้ ffmpeg แปลงไฟล์โดยใช้โค๊ดข้างล่าง
ตัวอย่างเช่น...
แปลงไฟล์ .ts  ไป .mp4
โค๊ด:
ffmpeg -i input.ts -c:v copy -c:a copy output.mp4
แปลงไฟล์ .ts  ไป .mp4 กรณีถ้าพบ Error parsing ADTS frame header!
โค๊ด:
ffmpeg -i input.ts -c:v copy -c:a aac output.mp4
แปลงไฟล์ .mp4  ไป .mkv
โค๊ด:
ffmpeg -i input.mp4 -c:v copy -c:a copy output.mkv
แปลงไฟล์ .avi  ไป .mkv
โค๊ด:
ffmpeg -i input.avi -c:v copy -c:a copy output.mkv
แปลงไฟล์ .mkv ไป .mp4
โค๊ด:
ffmpeg -i input.mkv -c:v copy -c:a copy output.mp4
แปลงไฟล์ .wmv ไป .mp4
ให้ไปใช้โปรแกรมอื่นเพราะมันต้องเรนเดอร์เท่านั้น
แปลงไฟล์ .mov ไป .mp4
ให้ไปใช้โปรแกรมอื่นเพราะมันต้องเรนเดอร์เท่านั้น

##############################################################

เราสามารถใช้ ffmpeg ฝังฮาร์ดซับหรือซอฟซับได้
แต่ผมไม่แนะนำเลย ไปใช้ HandBrake ฝังเอาดีกว่าเยอะครับ

##############################################################

วิธีทำ Gif ด้วย ffmpeg ภาพสวยๆชัดๆขนาดพอดีๆ และที่สำคัญไวมาก
ให้เปิดหนังขึ้นมาแล้วทำการจดเวลาที่ต้องการ
ให้เราเข้าโฟร์เดอร์เก็บไฟล์ต้นทาง เรียก cmd ขึ้นมาจากช่อง address
แล้วใช้ ffmpeg ทำ Gif

ตัวอย่างเช่น

โค๊ด:
ffmpeg -ss 02:23:05 -t 10 -i STARS-599.mp4 -filter_complex "[0:v] fps=12,scale=w=480:h=-1,split [a][b];[a] palettegen=stats_mode=single [p];[b][p] paletteuse=new=1" STARS-599EATRICE.gif

อธิบายเพิ่มเติมคือ ผมสั่งให้ ffmpeg ข้ามไปที่นาที 02:23:05
โค๊ด:
-ss 02:23:05
แล้วเริ่มต้นจับภาพไปอีก 10 วิ จากเรื่อง STARS-599.mp4
โค๊ด:
-t 10 -i STARS-599.mp4
ทำอัตราเฟรมเรทอยู่ที่ 12 เฟรมต่อวิ ขนาดกว้าง 480p
โค๊ด:
fps=12,scale=w=480
แต่งภาพแต่งสีนิดหน่อยไม่ให้ภาพมันแตกและออกมาสวย
แล้วก็จะได้ออกมาเป็น STARS-599EATRICE.gif

(https://img2.pic.in.th/pic/STARS-599EATRICE.gif)
และนี่คือรูป gif ที่ผมสั่งให้ ffmpeg ทำออกมา

##############################################################

เราสามารถใช้ ffmpeg ตัดหนังผ่านการคำนวนเวลาได้ ก่อนอื่นให้เราเข้าไปที่โฟร์เดอร์เรื่องที่ต้องการตัด
เรียก cmd ขึ้นมาจากช่อง address แล้วคำนวนจดเวลาของฉากที่ต้องการ
เช่น ในเรื่อง STARS-703 ผมต้องการตัดจากนาทีที่ 01:21:46 จนถึง 01:24:28 เก็บไว้ดูเล่นๆ
ให้เอาเวลาลาสุดท้ายตั้ง 01:24:28 ลบด้วยเวลาเริ่ม 01:21:46 จะได้เวลา -to = 00:02:42

และนี่คือตัวอย่าง
โค๊ด:
ffmpeg -ss 01:21:46 -i STARS-703.mp4 -to 00:02:42 -c:v copy -c:a copy STARS-703TESTCUT.mp4

##############################################################

เราสามารถใช้ ffmpeg รวมไฟล์ในฟอร์เดอร์ได้
ก่อนอื่นเอาไฟล์ที่จะรวมมาไว้โฟร์เดอร์เดียวกัน
แล้ว cmd ขึ้นมาจากช่อง address
ขั้นแรกให้สร้าง mylist.txt ด้วยคำสั่ง
โค๊ด:
(for %i in (*.mp4) do @echo file '%i') > mylist.txt
เราก็จะได้ ไฟล์ mylist.txt อยู่ในโฟร์เดอร์ ซึ่งข้างในมันจะเรียงตามชื่ออักษรไฟล์ย่อย
ที่เราจะรวมในขั้นตอนต่อไปโดย ffmpeg
โค๊ด:
ffmpeg -f concat -i mylist.txt -c copy output.mp4

##############################################################

เราสามารถใช้ ffmpeg แปลงไฟล์ทั้งฟอร์เดอร์ได้
ไฟล์รูปภาพเช่น...
.webp ไป .jpg
โค๊ด:
for %i in (*.webp) do ffmpeg -i %i %i.jpg
.jpg ไป .png
โค๊ด:
for %i in (*.jpg) do ffmpeg -i %i %i.png
.png ไป .jpg
โค๊ด:
for %i in (*.png) do ffmpeg -i %i %i.jpg
ไฟล์วิดีโอเช่น...
.ts ไป .mp4
โค๊ด:
for %i in (*.ts) do ffmpeg -i %i -c copy -c:a copy %i.mp4
.mkv ไป mp4
โค๊ด:
for %i in (*.mkv) do ffmpeg -i %i -c copy -c:a copy %i.mp4

##############################################################

ถ้าท่านประสบกับปัญหาฮาร์ดดิกส์เต็มเพราะไฟล์ใหญ่
ต้องการย่อไฟล์ให้เล็กลงแต่คุณภาพเท่าๆเดิม
ให้ท่านเรียก cmd จากช่อง address แล้วใช้คำสั่งนี้
โค๊ด:
ffmpeg -i input.mp4 -c:v libx265 -vtag hvc1 -c:a copy output.mp4
ท่านก็จะได้ไฟล์ในรูปแบบ x265 ที่คุณภาพเท่าเดิมเลย แต่ขนาดไฟล์จะเล็กลงไปเกือบครึ่ง


หัวข้อ: Re: วิธีติดตั้ง FFMPEG และการใช้งานเบื้องต้น
เริ่มหัวข้อโดย: pictureuploadsex ที่ ตุลาคม 02, 2024, 01:15:45 PM
...















AV Community Since 2009 : AVCollectors.com - Advertising please contact [email protected]