FMUSER Wirless ส่งวิดีโอและเสียงได้ง่ายขึ้น!
es.fmuser.org
it.fmuser.org
fr.fmuser.org
de.fmuser.org
af.fmuser.org -> แอฟริคานส์
sq.fmuser.org -> แอลเบเนีย
ar.fmuser.org -> ภาษาอาหรับ
hy.fmuser.org -> อาร์เมเนีย
az.fmuser.org -> อาเซอร์ไบจัน
eu.fmuser.org -> บาสก์
be.fmuser.org -> เบลารุส
bg.fmuser.org -> บัลแกเรีย
ca.fmuser.org -> คาตาลัน
zh-CN.fmuser.org -> ภาษาจีน (ประยุกต์)
zh-TW.fmuser.org -> ภาษาจีน (ดั้งเดิม)
hr.fmuser.org -> โครเอเชีย
cs.fmuser.org -> เช็ก
da.fmuser.org -> เดนมาร์ก
nl.fmuser.org -> ดัตช์
et.fmuser.org -> เอสโตเนีย
tl.fmuser.org -> ฟิลิปปินส์
fi.fmuser.org -> ฟินแลนด์
fr.fmuser.org -> ฝรั่งเศส
gl.fmuser.org -> กาลิเซีย
ka.fmuser.org -> จอร์เจีย
de.fmuser.org -> เยอรมัน
el.fmuser.org -> กรีก
ht.fmuser.org -> ชาวเฮติครีโอล
iw.fmuser.org -> ภาษาฮิบรู
hi.fmuser.org -> ภาษาฮินดี
hu.fmuser.org -> ฮังการี
is.fmuser.org -> ไอซ์แลนด์
id.fmuser.org -> ชาวอินโดนีเซีย
ga.fmuser.org -> ไอริช
it.fmuser.org -> อิตาเลี่ยน
ja.fmuser.org -> ภาษาญี่ปุ่น
ko.fmuser.org -> ภาษาเกาหลี
lv.fmuser.org -> ลัตเวีย
lt.fmuser.org -> ลิทัวเนีย
mk.fmuser.org -> มาซิโดเนีย
ms.fmuser.org -> มาเลย์
mt.fmuser.org -> มอลตา
no.fmuser.org -> นอร์เวย์
fa.fmuser.org -> เปอร์เซีย
pl.fmuser.org -> โปแลนด์
pt.fmuser.org -> โปรตุเกส
ro.fmuser.org -> โรมาเนีย
ru.fmuser.org -> รัสเซีย
sr.fmuser.org -> เซอร์เบีย
sk.fmuser.org -> สโลวัก
sl.fmuser.org -> สโลวีเนีย
es.fmuser.org -> สเปน
sw.fmuser.org -> ภาษาสวาฮิลี
sv.fmuser.org -> สวีเดน
th.fmuser.org -> ไทย
tr.fmuser.org -> ตุรกี
uk.fmuser.org -> ยูเครน
ur.fmuser.org -> ภาษาอูรดู
vi.fmuser.org -> เวียดนาม
cy.fmuser.org -> เวลส์
yi.fmuser.org -> ยิดดิช
OSD (การแสดงผลบนหน้าจอ) เป็นเทคโนโลยีการแสดงผลบนหน้าจอชนิดหนึ่งที่ใช้เพื่อแสดงตัวอักษรกราฟิกและภาพบนขั้วแสดงผล
หน่วยความจำวิดีโอหรือที่เรียกว่าเฟรมบัฟเฟอร์ใช้เพื่อเก็บข้อมูลการเรนเดอร์ที่ประมวลผลหรือกำลังจะถูกแยกโดยชิปกราฟิก เช่นเดียวกับหน่วยความจำคอมพิวเตอร์หน่วยความจำวิดีโอเป็นส่วนประกอบที่ใช้ในการจัดเก็บข้อมูลกราฟิกที่จะประมวลผล ภาพที่เราเห็นบนจอแสดงผลประกอบด้วยพิกเซลแต่ละพิกเซลและแต่ละพิกเซลใช้ข้อมูล 4-32 หรือ 64 บิตเพื่อควบคุมความสว่างและสี ข้อมูลเหล่านี้ต้องบันทึกผ่านหน่วยความจำวิดีโอ จากนั้นจะถูกกำหนดโดยชิปแสดงผลและซีพียูและสุดท้ายผลลัพธ์ของการดำเนินการจะถูกแปลงเป็นกราฟิกและส่งออกไปยังจอแสดงผล
1. การคำนวณหน่วยความจำวิดีโอ:
กว้าง * สูง * PIXEL_SIZE (ความลึกบิต)
8 บิต 16 บิต 32 บิต
U32 * p = (U32 *) GetMemoryAddr ();
p [y * width + x] = 0xffff0000;
ตัวอย่างเช่นความละเอียดคือ 1280 * 720 โหมดภาพคือ ARGB8888 และบัฟเฟอร์หน่วยความจำวิดีโอของคุณคือ 1280 * 720 * 4 ถ้าเป็น ARGB1555, 1280 * 720 * 2, 4 และ 2 แสดงถึงความลึกของบิตซึ่งเป็นจำนวนไบต์
ความละเอียดคือ 1280 * 720 และโหมดภาพคือ ARGB8888 บนหน้าจอเดียวมี 1280 พิกเซลในหนึ่งแถวและ 720 พิกเซลในหนึ่งคอลัมน์ หนึ่งพิกเซลถูกควบคุมโดยข้อมูล 4 ไบต์
2. ขั้นตอนการรับรู้คือเนื้อหาของหน่วยความจำวิดีโอสอดคล้องกับพิกเซลบนขั้วแสดงผลแบบหนึ่งต่อหนึ่ง โดยทั่วไปการติดต่อแบบตัวต่อตัวนี้จะถูกกำหนดโดยรีจิสเตอร์จากนั้นจึงนำไปใช้งานโดยฮาร์ดแวร์ การทำงานของเนื้อหาหน่วยความจำจะเปลี่ยนพิกเซลของหน้าจอเพื่อให้สามารถรับรู้การแสดงผลของอินเทอร์เฟซเฉพาะได้ ในความเป็นจริงนี่เป็นวิธีการสำหรับการแสดงผลแบบดิจิตอลทั่วไป ตัวอย่างเช่น: OSD 320 * 240 พิกเซลแบบโมโนโครม (1 บิต) พิกเซลต้องการพื้นที่เก็บข้อมูล 40 * 240 ไบต์เพื่อให้สอดคล้องกับมัน 320 * 240 16 สี (4 บิต) พิกเซล OSD ต้องการพื้นที่จัดเก็บ 160 * 240 ไบต์เพื่อให้สอดคล้องกับมัน
ตอนนี้คุณสามารถเปลี่ยนพิกเซลของ OSD ได้โดยการปรับเปลี่ยนเนื้อหาของหน่วยจัดเก็บข้อมูล แต่ยังคงมีปัญหาหลักในการใช้งานตามความต้องการนั่นคือวิธีการตั้งค่าพิกเซลบางสีให้เป็นสีที่กำหนด ต่อไปเราจะแนะนำแนวคิดของตัวอย่าง
เนื้อหาของบิตสี่ตัวล่างในไบต์จะสอดคล้องกับพิกเซลแบบหนึ่งต่อหนึ่งและค่าของมันคือ "3" จากนั้นสีที่แสดงด้วยตัวเลข "3" จะถูกกำหนดโดยจานสีจากนั้นจึงเลือกหน้าจอ OSD ถูกขับเคลื่อนเพื่อตั้งค่าพิกเซลเป็นสีที่ระบุ ในทำนองเดียวกัน
ความสัมพันธ์ที่สอดคล้องกันระหว่างจานสีนี้กับหน้าจอแสดงผล OSD ทางกายภาพโดยทั่วไปจะตั้งค่าโดยรีจิสเตอร์ซึ่งได้รับการรับรองจากฮาร์ดแวร์ สำหรับสภาพแวดล้อมการแสดงผลเฉพาะโดยทั่วไปจานสีนี้จะได้รับการแก้ไข
ปัจจุบันมีวิธีการใช้งาน OSD หลักสองวิธี: การซ้อนทับและการสังเคราะห์ระหว่างตัวสร้าง OSD ภายนอกและตัวประมวลผลวิดีโอ ตัวประมวลผลวิดีโอรองรับ OSD ภายในและซ้อนทับข้อมูล OSD โดยตรงภายในบัฟเฟอร์วิดีโอ
1. หลักการทำให้เกิดการสังเคราะห์ซ้อนทับระหว่างตัวสร้าง OSD ภายนอกและตัวประมวลผลวิดีโอคือตัวสร้างอักขระและบัฟเฟอร์การแสดงผลที่สร้างขึ้นใน MCU โดยใช้สัญญาณ Fast-Blank เพื่อสลับหน้าจอทีวีและเนื้อหาที่แสดง OSD สร้างตัวอักษร OSD และเนื้อหาอื่น ๆ ที่ซ้อนทับบนหน้าจอแสดงผลสุดท้ายใน OSD และกระบวนการซ้อนทับหน้าจอแสดงผลโดยการปรับอัตราส่วนระหว่างทั้งสองจะทำให้ได้เอฟเฟกต์ OSD กึ่งโปร่งใส (ผสม) ในเวลาเดียวกันโดยการเข้ารหัสสัญญาณสีแดงเขียวและน้ำเงินในสัญญาณ OSD อีกครั้งจะสามารถรับเอฟเฟกต์สี OSD ที่แตกต่างกันได้
2. วิธีการใช้งานอีกวิธีหนึ่งคือการสนับสนุน OSD ภายในตัวประมวลผลวิดีโอและวางซ้อนข้อมูล OSD ไว้ในบัฟเฟอร์วิดีโอโดยตรง การประมวลผลวิดีโอประเภทนี้มักจะมีหน่วยความจำภายนอกหรือบัฟเฟอร์บรรทัดภายในจำนวนเล็กน้อยรวมทั้งตัวสร้าง OSD การสังเคราะห์และการควบคุม OSD จะเสร็จสมบูรณ์โดยตรงในบัฟเฟอร์วิดีโอและยังมีฟังก์ชั่นการควบคุมความโปร่งแสงและสีที่กล่าวถึงข้างต้น OSD มีสองประเภท ได้แก่ Font-Based และ Bit-Map
OSD อักขระ: เพื่อประหยัดแคชการแสดงผลโซลูชันในช่วงต้นและต้นทุนต่ำจะใช้ตัวสร้าง OSD ของอักขระ หลักการคือการแบ่งเนื้อหาที่แสดงใน OSD ออกเป็นบล็อกตามรูปแบบเฉพาะ (12 × 18, 12 × 16 เป็นต้น) เช่นตัวเลข 0-9 ตัวอักษร az ความสว่างที่ใช้กันทั่วไปสัญลักษณ์ความคมชัดเป็นต้น และเนื้อหาเหล่านี้จะแข็งตัวใน ROM หรือ Flash เฉพาะหมายเลขดัชนีที่เกี่ยวข้องเท่านั้นที่จะถูกเก็บไว้ในแคชที่แสดงโครงสร้าง "พจนานุกรม" ดังกล่าวจะลดลงอย่างมากแสดงความจำเป็นในการแคช ในขณะเดียวกันเพื่อให้สามารถควบคุมสีและคุณลักษณะอื่น ๆ ของแต่ละอักขระโดยปกติจะมีบัฟเฟอร์แอตทริบิวต์ที่มีขนาดเท่ากับบัฟเฟอร์การแสดงผลและแอตทริบิวต์ (สีพื้นหน้าสีพื้นหลังการกะพริบ ฯลฯ ) มีผลกับแต่ละพิกเซลในอักขระทั้งหมด เพื่อชดเชยข้อบกพร่องของการไม่สามารถระบุสีสำหรับแต่ละพิกเซลด้วยวิธีนี้ผู้ออกแบบตัวสร้าง OSD จึงเสนอวิธีแก้ปัญหาสำหรับการนำเสนออักขระหลายสีโดยการรวมบัฟเฟอร์การแสดงผลหลาย ๆ หลักการคือบัฟเฟอร์การแสดงผลแต่ละชุดจะกำหนดโครงร่างสี เมื่อรวมบัฟเฟอร์การแสดงผลตั้งแต่สองตัวขึ้นไปอักขระหลายสีที่มีมากกว่าสองสีจะสามารถ "ต่อกัน" ได้ ข้อดีของอักขระ OSD คือสามารถใช้บัฟเฟอร์การแสดงผลภายใน OSD ได้น้อยลงและ MCU จำเป็นต้องระบุดัชนีของเนื้อหาที่แสดงเพื่อแสดงข้อมูล OSD ที่สอดคล้องกันซึ่งสามารถนำไปใช้กับ MCU ที่มีความเร็วค่อนข้างต่ำได้ แต่เป็นเพราะสิ่งที่กล่าวมาข้างต้น
ข้อมูลการแสดงผลและวิธีการเข้ารหัสสีไม่เข้าใจง่ายเพียงพอซึ่งจะทำให้เกิดปัญหาในการพัฒนาเฟิร์มแวร์ของ OSD ตัวละคร โดยปกติแล้วจอภาพ LCD ทีวีจอแบนราคาประหยัดและทีวีแบบ CRT จะใช้ OSD ประเภทนี้และยังคงครองตำแหน่งหลักในตลาด เมื่อเทียบกับตัวอักษร OSD หลักการประมวลผลของบิตแมป OSD นั้นใช้งานง่ายและเรียบง่ายกว่า: โดยการเปลี่ยนแต่ละพิกเซลในพื้นที่เฉพาะของเนื้อหาการแสดงผลขั้นสุดท้ายข้อมูล OSD จะถูกซ้อนทับโดยตรงบนหน้าจอแสดงผลสุดท้าย
การควบคุมแบบพิกเซลต่อพิกเซลช่วยให้มั่นใจได้ว่ามีหลายสีและมีประสิทธิภาพเพียงพอ ตัวสร้างบิตแมป OSD มักสร้างขึ้นในตัวประมวลผลวิดีโอและแชร์บัฟเฟอร์การแสดงผลหลักร่วมกัน นอกจากนี้ยังมีตัวสร้างบิตแมป OSD แบบมืออาชีพที่ไม่ขึ้นอยู่กับตัวประมวลผลวิดีโอเช่น Maxim's MAX4455 โดยปกติชิปประเภทนี้ต้องการ SDRAM ภายนอกเป็นบัฟเฟอร์การแสดงผล ผลการแสดงผลของบิตแมป OSD ในทางทฤษฎีจะสมบูรณ์แบบมาก มันสามารถให้วัตถุต่างๆที่มีเอฟเฟกต์สามมิติคล้ายกับ Windows เช่นปุ่มเงากราฟิกและข้อความที่มีสีสันเป็นต้นข้อเสียคือต้องมีแคชการแสดง OSD เพียงพอและข้อกำหนดความเร็วสำหรับ MCU แบบพิกเซลต่อพิกเซล การประมวลผลพิกเซล OSD ประเภทนี้มักใช้กับทีวีจอแบนระดับไฮเอนด์ขนาดใหญ่และจอภาพระดับมืออาชีพ ด้วยการพัฒนาเทคโนโลยีอย่างต่อเนื่องและต้นทุนหน่วยความจำที่ลดลงอย่างต่อเนื่อง OSD ในอนาคตทั้งหมดควรได้รับการแมปบิต
โดยทั่วไปการวาด osd จะใช้กลไกการแคชสองบัฟเฟอร์
บัฟเฟอร์ตัวหนึ่งคือสิ่งที่เรามองเห็นและอีกตัวมองไม่เห็น เมื่อวาดภาพขั้นแรกให้ประมวลผลข้อมูลในบัฟเฟอร์ที่มองไม่เห็น เมื่อวาดภาพให้คัดลอกข้อมูลของบัฟเฟอร์นี้เพื่อดู
|
ป้อนอีเมลเพื่อรับเซอร์ไพรส์
es.fmuser.org
it.fmuser.org
fr.fmuser.org
de.fmuser.org
af.fmuser.org -> แอฟริคานส์
sq.fmuser.org -> แอลเบเนีย
ar.fmuser.org -> ภาษาอาหรับ
hy.fmuser.org -> อาร์เมเนีย
az.fmuser.org -> อาเซอร์ไบจัน
eu.fmuser.org -> บาสก์
be.fmuser.org -> เบลารุส
bg.fmuser.org -> บัลแกเรีย
ca.fmuser.org -> คาตาลัน
zh-CN.fmuser.org -> ภาษาจีน (ประยุกต์)
zh-TW.fmuser.org -> ภาษาจีน (ดั้งเดิม)
hr.fmuser.org -> โครเอเชีย
cs.fmuser.org -> เช็ก
da.fmuser.org -> เดนมาร์ก
nl.fmuser.org -> ดัตช์
et.fmuser.org -> เอสโตเนีย
tl.fmuser.org -> ฟิลิปปินส์
fi.fmuser.org -> ฟินแลนด์
fr.fmuser.org -> ฝรั่งเศส
gl.fmuser.org -> กาลิเซีย
ka.fmuser.org -> จอร์เจีย
de.fmuser.org -> เยอรมัน
el.fmuser.org -> กรีก
ht.fmuser.org -> ชาวเฮติครีโอล
iw.fmuser.org -> ภาษาฮิบรู
hi.fmuser.org -> ภาษาฮินดี
hu.fmuser.org -> ฮังการี
is.fmuser.org -> ไอซ์แลนด์
id.fmuser.org -> ชาวอินโดนีเซีย
ga.fmuser.org -> ไอริช
it.fmuser.org -> อิตาเลี่ยน
ja.fmuser.org -> ภาษาญี่ปุ่น
ko.fmuser.org -> ภาษาเกาหลี
lv.fmuser.org -> ลัตเวีย
lt.fmuser.org -> ลิทัวเนีย
mk.fmuser.org -> มาซิโดเนีย
ms.fmuser.org -> มาเลย์
mt.fmuser.org -> มอลตา
no.fmuser.org -> นอร์เวย์
fa.fmuser.org -> เปอร์เซีย
pl.fmuser.org -> โปแลนด์
pt.fmuser.org -> โปรตุเกส
ro.fmuser.org -> โรมาเนีย
ru.fmuser.org -> รัสเซีย
sr.fmuser.org -> เซอร์เบีย
sk.fmuser.org -> สโลวัก
sl.fmuser.org -> สโลวีเนีย
es.fmuser.org -> สเปน
sw.fmuser.org -> ภาษาสวาฮิลี
sv.fmuser.org -> สวีเดน
th.fmuser.org -> ไทย
tr.fmuser.org -> ตุรกี
uk.fmuser.org -> ยูเครน
ur.fmuser.org -> ภาษาอูรดู
vi.fmuser.org -> เวียดนาม
cy.fmuser.org -> เวลส์
yi.fmuser.org -> ยิดดิช
FMUSER Wirless ส่งวิดีโอและเสียงได้ง่ายขึ้น!
ติดต่อ
ที่ตั้ง:
เลขที่ 305 อาคาร HuiLan เลขที่ 273 Huanpu Road Guangzhou China 510620
หมวดหมู่
จดหมายข่าว