ลายน้ำสเกล (หรือกึ่งกลาง) พร้อม ffmpeg ไปจนถึงความละเอียดเดียวกับไฟล์เอาต์พุต
ฉันต้องการให้ลายน้ำถูกปรับขนาดที่ความละเอียดเดียวกันกับไฟล์เอาต์พุต ฉันจะทำสิ่งนี้ได้อย่างไร หรือฉันจะกำหนดลายน้ำให้อยู่ตรงกลางของผลลัพธ์แทนได้อย่างไร นี่คือสิ่งที่ฉันมี: ffmpeg -i input.mp4 -i watermark.png -filter_complex \ "[0:v]scale=min(640\, iw):-1[scaled]; \ [scaled][1:v]overlay[scaledwatermarked]; \ [scaledwatermarked]drawtext=fontfile=/path/to/FreeSans.ttf:text='TEST':\ x=0:y=0[text]" -map "[text]" \ -vcodec libx264 output.mov ดังนั้นฉันจึงขยายขนาดไฟล์ภาพยนตร์อินพุทที่ใช้scale=min(640\, iw):-1เช่นสูงสุด 640 พิกเซลในแนวนอนขณะที่รักษาอัตราส่วนของไฟล์ภาพยนตร์อินพุท จากนั้นฉันก็เพิ่มลายน้ำแล้วตามด้วยข้อความ ลายน้ำควรถูกปรับให้มีขนาดเท่ากับไฟล์เอาต์พุตโดยไม่สนใจอัตราส่วนภาพที่เป็นผลลัพธ์ของไฟล์ลายน้ำ ควรยืดหรือหดให้พอดีกับความกว้างและความสูงของเอาต์พุตโดยไม่สนใจอัตราส่วนภาพดั้งเดิมของไฟล์ลายน้ำ เมื่อใช้คำสั่งข้างต้นไฟล์ที่ใส่ลายน้ำแทนจะถูกตัดออกแทนที่จะถูกย่อขนาด (จากคำสั่งฉันได้ลบคุณภาพ, รหัสเวลาและตัวเลือกเสียงเพื่อความชัดเจน) นี่คือผลลัพธ์จาก ffmpeg: ffmpeg version 2.1.1 Copyright (c) 2000-2013 the FFmpeg developers built on Dec 7 2013 …