กลับไปหน้าบทความ

อ่าน 2 นาที

ฮาร์ดแวร์โอเวอร์เลย์

ในด้านคอมพิวเตอร์การซ้อนภาพด้วยฮาร์ดแวร์ซึ่งเป็นประเภทหนึ่งของ การซ้อนภาพ ด้วยวิดีโอเป็นวิธีการเรนเดอร์ภาพไปยังหน้าจอแสดงผลโดยใช้บัฟเฟอร์หน่วยความจำเฉพาะภายในฮาร์ดแวร์วิดีโอ...

ฮาร์ดแวร์โอเวอร์เลย์

ในด้านคอมพิวเตอร์การซ้อนภาพด้วยฮาร์ดแวร์ซึ่งเป็นประเภทหนึ่งของ การซ้อนภาพ ด้วยวิดีโอเป็นวิธีการเรนเดอร์ภาพไปยังหน้าจอแสดงผลโดยใช้บัฟเฟอร์หน่วยความจำเฉพาะภายในฮาร์ดแวร์วิดีโอ ของคอมพิวเตอร์ เทคนิคนี้มีจุดมุ่งหมายเพื่อปรับปรุงการแสดงผล ภาพวิดีโอที่เคลื่อนไหวเร็วเช่นเกมคอมพิวเตอร์ดีวีดีหรือสัญญาณจากการ์ดทีวีการ์ดวิดีโอส่วนใหญ่ที่ผลิตตั้งแต่ประมาณปี 1998 และเครื่องเล่นมีเดีย ส่วนใหญ่ รองรับการซ้อนภาพด้วยฮาร์ดแวร์[ 1 ]

โอเวอร์เลย์เป็นบัฟเฟอร์เฉพาะที่แอปหนึ่งสามารถเรนเดอร์ (โดยทั่วไปคือวิดีโอ) ได้โดยไม่ต้องเสียค่าใช้จ่ายด้านประสิทธิภาพอย่างมากในการตรวจสอบการตัดและการเรนเดอร์ที่ทับซ้อนกันโดยแอปอื่น เฟรมบัฟเฟอร์มีการรองรับฮาร์ดแวร์สำหรับการนำเข้าและเรนเดอร์เนื้อหาบัฟเฟอร์โดยไม่ต้องผ่าน GPU [ 2 ]

ภาพรวม

การใช้แผ่นปิดทับฮาร์ดแวร์มีความสำคัญด้วยเหตุผลหลายประการ:

  1. ในระบบปฏิบัติการที่มีส่วนติดต่อผู้ใช้แบบกราฟิก (GUI) เช่นWindowsโดยทั่วไปแล้วอุปกรณ์แสดงผลหนึ่งเครื่องสามารถแสดงแอปพลิเคชันหลายตัวพร้อมกันได้
  2. ลองนึกถึงวิธีการทำงานของจอแสดงผลโดยไม่มีฮาร์ดแวร์ซ้อนทับ เมื่อแต่ละแอปพลิเคชันวาดภาพลงบนหน้าจอ ระบบกราฟิกของระบบปฏิบัติการจะต้องตรวจสอบอย่างต่อเนื่องเพื่อให้แน่ใจว่าวัตถุที่กำลังวาดปรากฏบนตำแหน่งที่เหมาะสมบนหน้าจอ และไม่ชนกับหน้าต่างที่ทับซ้อนหรืออยู่ใกล้เคียง ระบบกราฟิกจะต้องตัดวัตถุขณะที่กำลังวาดเมื่อเกิดการชนกัน การตรวจสอบและการตัดอย่างต่อเนื่องนี้ช่วยให้แอปพลิเคชันต่างๆ สามารถทำงานร่วมกันได้โดยใช้จอแสดงผลร่วมกัน แต่ก็ใช้พลังการประมวลผลจำนวนมากเช่นกัน

คอมพิวเตอร์แสดงผลบนหน้าจอโดยการเขียนภาพกราฟิกแบบบิตแมป ไปยังส่วนพิเศษของหน่วยความจำที่เรียกว่า หน่วยความจำวิดีโอหากไม่มีฮาร์ดแวร์ซ้อนทับ หน่วยความจำวิดีโอจะมีเพียงส่วนเดียวที่แอปพลิเคชันทั้งหมดต้องใช้ร่วมกัน และตำแหน่งของหน่วยความจำวิดีโอของแอปพลิเคชันใดแอปพลิเคชันหนึ่งจะเปลี่ยนไปทุกครั้งที่ผู้ใช้เปลี่ยนตำแหน่งของหน้าต่างแอปพลิเคชันนั้น ด้วยหน่วยความจำวิดีโอที่ใช้ร่วมกัน แอปพลิเคชันจะต้องตรวจสอบอยู่เสมอว่ากำลังเขียนข้อมูลลงในหน่วยความจำที่เป็นของแอปพลิเคชันนั้นเท่านั้น

เมื่อใช้งานแอปพลิเคชันวิดีโอที่ใช้แบนด์วิดท์สูง เช่น โปรแกรมเล่นภาพยนตร์หรือเกมบางเกม พลังการประมวลผลและความซับซ้อนที่จำเป็นในการตัดต่อและตรวจสอบอย่างต่อเนื่องจะส่งผลเสียต่อประสิทธิภาพและความเข้ากันได้ การใช้ฮาร์ดแวร์โอเวอร์เลย์ช่วยหลีกเลี่ยงข้อจำกัดเหล่านี้ นอกจากนี้หน่วยประมวลผลกราฟิก (GPU) ยังมีวิธีที่มีประสิทธิภาพในการปรับขนาดวิดีโอ และมักจะทำการแปลงรูปแบบสี (เช่น แปลง YCbCr ของ MPEG-2 เป็น RGB)

แอปพลิเคชันที่ใช้ฮาร์ดแวร์โอเวอร์เลย์จะได้รับส่วนของหน่วยความจำวิดีโอที่แยกต่างหาก ซึ่งเป็นของแอปพลิเคชันนั้นเพียงแอปพลิเคชันเดียว เนื่องจากไม่มีแอปพลิเคชันอื่นใช้ส่วนนี้ โปรแกรมจึงไม่จำเป็นต้องเสียทรัพยากรในการตรวจสอบว่าส่วนใดของหน่วยความจำนั้นเป็นของตนหรือไม่ และไม่จำเป็นต้องตรวจสอบว่าผู้ใช้เลื่อนหน้าต่างและเปลี่ยนตำแหน่งของหน่วยความจำวิดีโอหรือไม่ เพื่อให้ภาพจากหน่วยความจำวิดีโอที่แยกต่างหากแสดงผลควบคู่ไปกับองค์ประกอบอื่นๆ ที่ใช้ร่วมกันบนหน้าจอ ระบบกราฟิกจะกำหนดคุณลักษณะบางอย่าง (เช่น สีเฉพาะ) เป็น "มาสก์" สำหรับโอเวอร์เลย์นั้น ซึ่งการ์ดกราฟิกจะเข้าใจว่าหมายถึงการวาดภาพจากบัฟเฟอร์โอเวอร์เลย์ที่แยกต่างหากลงบนหน้าจอ (เทคนิคนี้เป็นที่รู้จักกันในชื่อ " โครมาคีย์ ")

ยกตัวอย่างเช่น สมมติว่าระบบกราฟิกกำหนดให้สี "ม่วง" เป็นสีมาสก์ที่ใช้กระตุ้นให้โอเวอร์เลย์ปรากฏขึ้น แอปพลิเคชันที่เล่นดีวีดีจะวาดสี่เหลี่ยมสีม่วงทึบลงบนหน้าจอที่ใช้ร่วมกัน จากนั้น "เล่น" ดีวีดีลงในพื้นที่หน่วยความจำพิเศษที่จัดสรรไว้สำหรับโอเวอร์เลย์ การ์ดกราฟิกจะแสดงผลการเล่นดีวีดีเฉพาะภายในพื้นที่สีม่วงเท่านั้น หากหน้าต่างอื่นเลื่อนมาทับพื้นที่สีม่วงและบดบังส่วนใดส่วนหนึ่ง ฮาร์ดแวร์กราฟิกจะทำการตัดส่วนนั้นออกเอง ในทางปฏิบัติแล้ว สี "ม่วง" จริงๆ นั้นไม่ได้ถูกนำมาใช้ แต่จะใช้สีดำที่ไม่ระบุรายละเอียด (เนื่องจากระบบมักมีเฉดสีดังกล่าวให้เลือกหลายพันเฉด) หรือกำหนดพื้นที่มาสก์โดยใช้วิธีการมาสก์ที่คล้ายกันซึ่งไม่เกี่ยวข้องกับสี

ภาพหน้าจอ

เนื่องจากการใช้งานฮาร์ดแวร์โอเวอร์ เลย์ โปรแกรม จับภาพหน้าจอ (เช่น โปรแกรมที่ติดตั้งมากับ Windows โดยอัตโนมัติ ซึ่งจะทำงานเมื่อผู้ใช้กดปุ่ม PrtSc) มักจะไม่จับภาพเนื้อหาที่ปรากฏในหน้าต่างฮาร์ดแวร์โอเวอร์เลย์ แต่จะจับภาพเฉพาะพื้นที่ว่างที่มีสีมาสก์พิเศษเท่านั้น เนื่องจากขั้นตอนการจับภาพหน้าจอไม่ได้พิจารณาพื้นที่หน่วยความจำวิดีโอพิเศษที่จัดสรรไว้สำหรับโอเวอร์เลย์ แต่จะจับภาพเฉพาะหน้าจอหลักที่ใช้ร่วมกันซึ่งแสดงผลโดยระบบกราฟิกของซอฟต์แวร์เท่านั้น

จอแสดงผลรอง

การ์ดจอใหม่ๆ หลายรุ่นรองรับการแสดงผลบนจอภาพมากกว่าหนึ่งจอและ/หรือจอทีวีได้ โดยปกติแล้วจะต้องกำหนดให้อุปกรณ์แสดงผลตัวใดตัวหนึ่งเป็นอุปกรณ์ "หลัก" และมีเพียงอุปกรณ์หลักเท่านั้นที่สามารถแสดงภาพซ้อนทับบนจอภาพได้ อย่างไรก็ตาม มีข้อยกเว้นอยู่บ้าง เช่น Intel ระบุในคำถามที่พบบ่อยสำหรับไดรเวอร์กราฟิกแบบฝังตัวว่า สามารถแสดงภาพซ้อนทับบนจอภาพได้เพียงจอเดียว แต่ไม่ใช่ทั้งสองจอ (หมายเหตุ: ชิปเซ็ต Intel 945, G33-Q965 ในปัจจุบันรองรับการแสดงภาพซ้อนทับบนจอภาพทั้งสองจอ และสามารถแสดงผล mpeg2 คุณภาพดีบนจอภาพรองได้เมื่อติดตั้งซอฟต์แวร์ที่เหมาะสม) และการ์ดจอ Matrox รุ่นใหม่บางรุ่นรองรับการแสดงภาพซ้อนทับบนจอภาพทั้งสองจอ (เช่น ซีรี่ส์ Parhelia)

จอแสดงผลรองต้องได้รับการสนับสนุนทั้งจากฮาร์ดแวร์และไดรเวอร์ การ์ดกราฟิกบางรุ่นอาจรองรับการแสดงผลซ้อนทับบนจอแสดงผลที่สองได้ แต่ไดรเวอร์อาจยังไม่รองรับ (หมายเหตุ: ข้อบกพร่องของไดรเวอร์ชิปเซ็ตกราฟิกเมื่อเร็วๆ นี้ (กรกฎาคม 2551) อาจทำให้รูปแบบวิดีโอส่วนใหญ่ ยกเว้น mpeg2 ใช้งานได้บนทั้งสองจอ และ mpeg2 ใช้งานได้เฉพาะบนจอหลักเท่านั้นในโปรแกรมเล่นส่วนใหญ่)

ผู้ใช้บางรายสังเกตว่าภาพยนตร์ DVD แสดงผลได้อย่างถูกต้องบนหน้าจอแล็ปท็อป แต่ไม่แสดงผลบนทีวีที่เชื่อมต่อกับแล็ปท็อป ในกรณีเช่นนี้ อาจเป็นไปได้ที่จะกำหนดให้ทีวีเป็นจอแสดงผลหลัก บางครั้ง อาจต้องปิดการใช้งานการซ้อนทับฮาร์ดแวร์ในโปรแกรมเล่นมีเดีย อย่างไรก็ตาม การ์ดกราฟิกบางรุ่นมีตัวเลือกในการเปลี่ยนเส้นทางการซ้อนทับฮาร์ดแวร์ไปยังหน้าจอทีวีโดยสมบูรณ์ ในกรณีนี้ การเริ่มเล่น DVD บนหน้าจอหลักโดยเปิดใช้งานการซ้อนทับจะทำให้วิดีโอแสดงผลบนหน้าจอทีวีที่เชื่อมต่ออยู่

การนำไปใช้งานในระบบปฏิบัติการต่างๆ

ความสามารถด้านกราฟิกที่ได้รับการปรับปรุงของ Windows Vistaแทนที่แนวคิดพื้นฐานของฮาร์ดแวร์โอเวอร์เลย์ด้วยการประมวล ผลภาพด้วยฮาร์ดแวร์เต็มรูปแบบ สำหรับทุกหน้าต่างแอปพลิเคชันที่ทำงานบนระบบ ไม่ใช่แค่โปรแกรมเล่นภาพยนตร์หรือเกมเท่านั้น ผ่านทางDesktop Window Manager Mac OS Xใช้การประมวลผลภาพด้วยฮาร์ดแวร์มาตั้งแต่การเปิดตัวQuartz ExtremeในMac OS X 10.2เพื่อปรับปรุงประสิทธิภาพ แต่ละโปรแกรมจะวาดลงในบัฟเฟอร์หน่วยความจำอิสระของตัวเองแทนที่จะวาดลงในระบบย่อยกราฟิกที่ทำงานช้า (ใน Windows Vista ฮาร์ดแวร์โอเวอร์เลย์แต่ละอันจะเรียกว่าพื้นผิว Direct3D อย่างถูกต้องกว่า) จากนั้นGPU ของระบบ จะประกอบหน้าต่างแต่ละบานเข้าด้วยกันเป็นหน้าจอแสดงผลเดียวแบบเรียลไทม์ ด้วย GPU รุ่นใหม่ที่สามารถประมวลผลกราฟิก 3 มิติขั้นสูงได้ (ซึ่งเป็นผลมาจากอุตสาหกรรมวิดีโอเกม) ระบบปฏิบัติการจึงสามารถใช้เอฟเฟกต์การเคลื่อนไหว การปรับขนาด และแสงที่ต้องใช้การคำนวณอย่างหนักกับหน้าต่าง 2 มิติปกติได้

เนื่องจากความจำเป็นในการลดการใช้พลังงาน Windows 7จึงเพิ่มการสนับสนุนแบบจำกัดสำหรับโอเวอร์เลย์[ 3 ] [ 4 ]และWindows 8.1เพิ่มการสนับสนุนสำหรับโอเวอร์เลย์แบบหลายระนาบ[ 5 ]โอเวอร์เลย์แบบหลายระนาบช่วยให้ตัวจัดการหน้าต่างเดสก์ท็อปสามารถเรนเดอร์ส่วนต่างๆ ของเดสก์ท็อปเป็นโอเวอร์เลย์โดยอัตโนมัติ ซึ่งช่วยประหยัดพลังงานได้ในหลายกรณี

ในระบบ X Window Systemซึ่งเป็นระบบจัดการหน้าต่างของระบบปฏิบัติการUnix ส่วนใหญ่ ส่วนขยาย XVideoช่วยให้แอปพลิเคชันสามารถใช้ฮาร์ดแวร์โอเวอร์เลย์ได้ นอกจากนี้ยังมีการใช้คอมโพสิตติ้ง โดยโปรแกรมจัดการหน้าต่างคอมโพ สิตติ้งอย่าง compizและBeryl เป็นตัวอย่างที่โดดเด่นที่สุดตั้งแต่ปี 2006 พวกมันสามารถใช้ประโยชน์จากOpenGL (ผ่านส่วนขยาย glx) สำหรับเอฟเฟกต์ภาพโอเวอร์เลย์ 3 มิติและ 2 มิติ การใช้งานอื่นๆ เช่นMetacityและxfwmก็มีให้ใช้งานมาตั้งแต่ปี 2004 แล้ว

อุปกรณ์โอเวอร์เลย์ฮาร์ดแวร์เฉพาะบางตัวใช้Linux แบบฝังตัว เป็นระบบปฏิบัติการ ตัวอย่างเช่น เครื่องบันทึกวิดีโอ[1]ของ Racelogic ใช้ ไมโครคอนโทรลเลอร์ Texas Instruments DM355 เพื่อผสมเฟรมบัฟเฟอร์ที่มีกราฟิกเข้ากับฟีดวิดีโอสด จากนั้นจัดเก็บผลลัพธ์ใน รูปแบบ MPEG-4บนการ์ดหน่วยความจำแฟลช

การรองรับการแสดงผลแบบโอเวอร์เลย์ หรือที่เรียกว่า Picture In Picture (PIP) ถูกนำมาใช้ในAmigaOSพร้อมกับการเปิดตัวการ์ดกราฟิกสำหรับพีซีระบบไดรเวอร์กราฟิก Picasso96 และ CyberGraphX ​​หรือที่เรียกว่า ReTargetable Graphicsสำหรับการ์ด Picasso IV และVoodoo3 ระบบไดรเวอร์ Picasso96 กลายเป็นมาตรฐานใน AmigaOS 3.5 Moovid เป็นหนึ่งในโปรแกรมเล่นวิดีโอแรกๆ ที่รองรับการแสดงผลแบบโอเวอร์เลย์ด้วยฮาร์ดแวร์ (PIP) บนAmigaOS

ดึงข้อมูลมาจาก " https://en.wikipedia.org/w/index.php?title=Hardware_overlay&oldid=1358514300 "

สรุปเนื้อหา

ข้อมูลสำคัญจากบทความ

ข้อมูลสำคัญเกี่ยวกับ ฮาร์ดแวร์โอเวอร์เลย์

ในด้านคอมพิวเตอร์การซ้อนภาพด้วยฮาร์ดแวร์ซึ่งเป็นประเภทหนึ่งของ การซ้อนภาพ ด้วยวิดีโอเป็นวิธีการเรนเดอร์ภาพไปยังหน้าจอแสดงผลโดยใช้บัฟเฟอร์หน่วยความจำเฉพาะภายในฮาร์ดแวร์วิดีโอ...

ภาพรวม

การใช้แผ่นปิดทับฮาร์ดแวร์มีความสำคัญด้วยเหตุผลหลายประการ:

ภาพหน้าจอ

เนื่องจากการใช้งานฮาร์ดแวร์โอเวอร์ เลย์ โปรแกรม จับภาพหน้าจอ (เช่น โปรแกรมที่ติดตั้งมากับ Windows โดยอัตโนมัติ ซึ่งจะทำงานเมื่อผู้ใช้กดปุ่ม PrtSc) มักจะไม่จับภาพเนื้อหาที่ปรากฏในหน้าต่างฮาร์ดแวร์โอเวอร์เลย์ แต่จะจับภาพเฉพาะพื้นที่ว่างที่มีสีมาสก์พิเศษเท่านั้น...

จอแสดงผลรอง

การ์ดจอใหม่ๆ หลายรุ่นรองรับการแสดงผลบนจอภาพมากกว่าหนึ่งจอและ/หรือจอทีวีได้ โดยปกติแล้วจะต้องกำหนดให้อุปกรณ์แสดงผลตัวใดตัวหนึ่งเป็นอุปกรณ์ "หลัก" และมีเพียงอุปกรณ์หลักเท่านั้นที่สามารถแสดงภาพซ้อนทับบนจอภาพได้ อย่างไรก็ตาม มีข้อยกเว้นอยู่บ้าง เช่น Intel...