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

อ่าน 8 นาที

วีดีพียู

Video Decode and Presentation API for Unix ( VDPAU ) เป็น อินเทอร์เฟซการเขียนโปรแกรมแอปพลิเคชัน (API) ที่ไม่มีค่าลิขสิทธิ์รวมถึงการใช้งานในรูปแบบ ไลบรารีโอ เพนซอร์สฟรี ( libvdpau...

วีดีพียู

วีดีพียู
ผู้เขียนต้นฉบับเอ็นดีวีดี
นักพัฒนาฟรีเดสก์ท็อป.org
ปล่อย17 กันยายน พ.ศ. 2552 [ 1 ] ( 17 กันยายน 2552 )
เวอร์ชันเสถียร
1.5 / 7 มีนาคม 2022 [ 2 ] ( 7 มีนาคม 2022 )
เขียนเป็นซี , ซี++
ระบบปฏิบัติการข้ามแพลตฟอร์ม
พิมพ์
ใบอนุญาตใบอนุญาต MIT
เว็บไซต์www .freedesktop .org /wiki /ซอฟต์แวร์/VDPAU /

Video Decode and Presentation API for Unix ( VDPAU ) เป็น อินเทอร์เฟซการเขียนโปรแกรมแอปพลิเคชัน (API) ที่ไม่มีค่าลิขสิทธิ์รวมถึงการใช้งานในรูปแบบไลบรารีโอเพนซอร์สฟรี ( libvdpau ) ที่เผยแพร่ภายใต้ใบอนุญาต MIT [ 1 ] VDPAU ยังได้รับการสนับสนุนจากNvidia อีก ด้วย [ 3 ]

อินเทอร์เฟซ VDPAU จะถูกนำไปใช้งานโดยไดรเวอร์อุปกรณ์เช่นไดรเวอร์ Nvidia GeForce , nouveauหรือamdgpuเพื่อให้ซอฟต์แวร์สำหรับผู้ใช้ปลายทาง เช่นโปรแกรมเล่นมีเดีย VLCหรือGStreamerสามารถเข้าถึง ฮาร์ดแวร์เร่งความเร็ว การบีบอัดวิดีโอ ที่มีอยู่ได้อย่างเป็นมาตรฐาน ในรูปแบบของ บล็อก วงจรรวมเฉพาะแอปพลิเคชัน (ASIC) บนหน่วยประมวลผลกราฟิก (GPU) เช่นPureVideo ของ Nvidia หรือUnified Video Decoder ของ AMDและใช้งานได้

VDPAU มุ่งเป้าไปที่ระบบปฏิบัติการที่คล้าย Unix (รวมถึงLinux , FreeBSDและSolaris ) [ 4 ] [ 5 ] [ 6 ]

ช่วงการทำงานของอินเทอร์เฟซ

VDPAU อนุญาตให้โปรแกรมวิดีโอเข้าถึง ASIC ถอดรหัสวิดีโอเฉพาะบน GPU เพื่อถ่ายโอนส่วนต่าง ๆ ของ กระบวนการ ถอดรหัสวิดีโอและการประมวลผลวิดีโอภายหลังจากCPUไปยัง GPU [ 7 ]

ปัจจุบัน ส่วนต่างๆ ที่สามารถถ่ายโอนโดย VDPAU ไปยัง GPU ได้แก่การชดเชยการเคลื่อนไหว (mo comp), การแปลงโคไซน์แบบไม่ต่อเนื่องผกผัน (iDCT), VLD (การถอดรหัสความยาวตัวแปร)และการลดบล็อกสำหรับวิดีโอที่เข้ารหัส MPEG-1 , MPEG-2 , MPEG-4 ASP (MPEG-4 Part 2) , H.264/MPEG-4 AVCและVC-1 , WMV3 / WMV9 [ 4 ]ตัวแปลงสัญญาณเฉพาะใดบ้างที่สามารถถ่ายโอนไปยัง GPU ได้นั้นขึ้นอยู่กับรุ่นของฮาร์ดแวร์ GPU

ประวัติศาสตร์

VDPAU ได้รับการออกแบบโดย Nvidia สำหรับบล็อก PureVideo SIPที่มีอยู่ในGeForce 8 seriesและ GPU รุ่นต่อมา[ 8 ]

เมื่อวันที่ 9 มีนาคม 2558 Nvidia ได้ออก VDPAU เวอร์ชัน 1.0 ซึ่งรองรับ การถอดรหัส High Efficiency Video Coding (HEVC) สำหรับโปรไฟล์ Main, Main 4:4:4, Main Still Picture, Main 10 และ Main 12 [ 9 ]

ไดรเวอร์อุปกรณ์และตัวควบคุมวิดีโอที่ใช้ VDPAU

VDPAU ถูกนำไปใช้ในไดรเวอร์อุปกรณ์ซอฟต์แวร์X11แต่ต้องอาศัยคุณสมบัติการเร่งความเร็วใน GPU ฮาร์ดแวร์ การ์ดกราฟิก Nvidia ทั้งหมดที่ไดรเวอร์ใช้ VDPAU จะแสดงอยู่ในNvidia PureVideo [ 10 ] S3 Graphicsได้เพิ่ม VDPAU ลงในไดรเวอร์ Linux ของการ์ดวิดีโอChrome 400 ของพวกเขา ตั้งแต่เวอร์ชัน 14.02.17 ของไดรเวอร์อุปกรณ์ Linux VDPAU สามารถใช้งานได้กับฮาร์ดแวร์ S3 Chrome 430 GT, S3 Chrome 440 GTX, S3 Chrome 530 GT และ S3 Chrome 540 GTX [ 11 ] ATI/AMDได้ปล่อยไดรเวอร์โอเพนซอร์สสำหรับการ์ดกราฟิก Radeon HD 4000+ ที่มีการเร่งความเร็ว VDPAU [ 12 ] [ 13 ] [ 14 ] Intelไม่ได้เสนอไดรเวอร์ VDPAU พวกเขาสนับสนุนเฉพาะVA-API ของพวกเขาเท่านั้น อย่างไรก็ตาม เป็นไปได้ที่จะใช้ไดรเวอร์ VA-API ของ Intel ผ่านทางlibvdpau-va- gl Nvidia หวังว่านักออกแบบ GPU รายอื่นจะทำให้ผลิตภัณฑ์ของตนเข้ากันได้กับไลบรารี VDPAU แบบโอเพนซอร์ส และจัดหาไดรเวอร์ที่มีการเร่งความเร็ว VDPAU โดยกล่าวถึงชื่อตัวอย่างของไดรเวอร์เฉพาะฮาร์ดแวร์สำหรับ Intel และ ATI: libvdpau_intel.so และ libvdpau_ati.so [ 15 ] Intel ระบุว่าพวกเขากำลังพิจารณา VDPAU [ 16 ] SoCของ sunxi ( Allwinner ) มีการใช้งาน VDPAU แบบทดลอง[ 17 ] Mesaเวอร์ชัน 8.0 มี VDPAU สำหรับการ์ดแสดงผลที่ใช้ Gallium3D

ไดรเวอร์ VDPAU ทั่วไป

ณ ปลายปี 2013 มีไดรเวอร์แบ็กเอนด์ที่พัฒนาโดยอิสระซึ่งใช้OpenGL (สำหรับการวาดและการปรับขนาด) และ VA-API หากมี (สำหรับการถอดรหัส) [ 18 ]มีรายงานว่าใช้งานได้กับกราฟิก Intel บางรุ่น และAdobe Flash Player [ 19 ]

การปรับขนาดภาพแบบเร่งความเร็วด้วยฟังก์ชัน OpenGL เพียงอย่างเดียวมีความจำเป็นส่วนใหญ่เนื่องจาก Flash Player ซึ่งใช้การปรับขนาดภาพแบบไม่เร่งความเร็วหาก VDPAU ไม่พร้อมใช้งาน ซอฟต์แวร์วิดีโออื่นๆ เกือบทั้งหมดที่ทำงานบน Linux หรือFreeBSDรองรับXvสิ่งนี้มีความสำคัญอย่างยิ่งสำหรับวิดีโอแบบเต็มหน้าจอในคอมพิวเตอร์ที่มีประสิทธิภาพต่ำกว่าและไม่มีการรองรับ VDPAU ในตัว

การแปลง VDPAU เป็น VA-API สำหรับการถอดรหัสฮาร์ดแวร์นั้นมีประโยชน์สำหรับฮาร์ดแวร์กราฟิก Intel รุ่นใหม่ๆ เนื่องจากซอฟต์แวร์บางตัวรองรับการถอดรหัสฮาร์ดแวร์ผ่าน VDPAU แต่ไม่รองรับ VA-API

ซอฟต์แวร์ที่รองรับ VDPAU

VDPAU ยังสามารถใช้เป็นแบ็กเอนด์สำหรับVA-APIและOpenMAX ILซึ่งครอบคลุมความสามารถย่อยของ VDPAU ดังนั้นซอฟต์แวร์ใดๆ ที่ใช้ VA-API หรือ OpenMAX IL ก็สามารถใช้ VDPAU ได้บางส่วนเช่นกัน (เช่น โปรแกรมเล่นมีเดีย VLC) [ 32 ]

ชุดคุณสมบัติ Nvidia VDPAU

ชุดคุณสมบัติ Nvidia VDPAU [ 33 ]คือ GPU รุ่นฮาร์ดแวร์ที่แตกต่างกันซึ่งรองรับความสามารถในการถอดรหัสฮาร์ดแวร์ (Nvidia PureVideo) ในระดับต่างๆ สำหรับชุดคุณสมบัติ A, B และ C ความกว้างและความสูงของวิดีโอสูงสุดคือ 2048 พิกเซล ความกว้างและความสูงต่ำสุดคือ 48 พิกเซล และตัวแปลงสัญญาณทั้งหมดในปัจจุบันถูกจำกัดไว้ที่ มาโครบล็อกสูงสุด 8192 บล็อก (8190 สำหรับ VC-1/WMV9) การเร่งความเร็วบางส่วนหมายความว่า การถอดรหัส VLD (บิตสตรีม) จะดำเนินการบน CPU โดยที่ GPU จะดำเนินการเฉพาะIDCTการชดเชยการเคลื่อนไหวและการลดการบล็อก เท่านั้น การเร่งความเร็วอย่างสมบูรณ์หมายความว่า GPU จะดำเนินการ VLD, IDCT, การชดเชยการเคลื่อนไหว และการลดการบล็อกทั้งหมด

ชุดคุณสมบัติ A
รองรับการเร่งความเร็วแบบเต็มรูปแบบสำหรับH.264 และการเร่งความเร็วบางส่วนสำหรับMPEG-1 , MPEG-2 , VC-1 / WMV9
ชุดคุณสมบัติ B
รองรับการเร่งความเร็วอย่างสมบูรณ์สำหรับ MPEG-1, MPEG-2, VC-1/WMV9 และ H.264
โปรดทราบว่าฮาร์ดแวร์ Feature Set B ทั้งหมดไม่สามารถถอดรหัส H.264 สำหรับความกว้างต่อไปนี้ได้: 769-784, 849-864, 929-944, 1009-1024, 1793-1808, 1873-1888, 1953-1968, 2033-2048 พิกเซล
ชุดคุณสมบัติ C
รองรับการเร่งความเร็วอย่างสมบูรณ์สำหรับ MPEG-1, MPEG-2, MPEG-4 Part 2 (หรือที่รู้จักในชื่อ MPEG-4 ASP) , VC-1/WMV9 และ H.264
ระบบชดเชยการเคลื่อนไหวทั่วโลกและการแบ่งพาร์ติชันข้อมูลไม่ได้รับการสนับสนุนสำหรับ MPEG-4 Part 2
ชุดคุณสมบัติ D
คล้ายกับชุดคุณสมบัติ C แต่เพิ่มการรองรับการถอดรหัส H.264 ที่ความละเอียดสูงสุด 4032 × 4080 พิกเซล และ MPEG-1/MPEG-2 ที่ความละเอียดสูงสุด 4032 × 4048 พิกเซล
ชุดคุณสมบัติ E
คล้ายกับชุดคุณสมบัติ D แต่เพิ่มการรองรับการถอดรหัส H.264 ด้วยความละเอียดสูงสุด 4096 × 4096 และ MPEG-1/MPEG-2 ด้วยความละเอียดสูงสุด 4080 × 4080 พิกเซล GPU ที่มีชุดคุณสมบัติ VDPAU E รองรับโหมดการปกปิดข้อผิดพลาดที่ได้รับการปรับปรุง ซึ่งให้การจัดการข้อผิดพลาดที่แข็งแกร่งยิ่งขึ้นเมื่อถอดรหัสสตรีมวิดีโอที่เสียหาย[ 34 ]
ชุดคุณสมบัติ F
แนะนำ การถอดรหัสวิดีโอ HEVC Main (8 บิต), Main 10 (10 บิต) และ VP9 Profile 0 (8 บิต) เฉพาะสำหรับความละเอียดสูงสุด 4096 × 2304 พิกเซล[ 35 ]
ชุดคุณสมบัติ G
เพิ่มการสนับสนุนฮาร์ดแวร์สำหรับการถอดรหัสวิดีโอ HEVC Main 12 (12 บิต) และ VP9 Profile 2 (12 บิต) [ 35 ]
ชุดคุณสมบัติ H
ชุดคุณสมบัติ H สามารถถอดรหัสสตรีมวิดีโอ H.265/HEVC ขนาด 8192x8192 (ความละเอียด 8k) ด้วยการเร่งความเร็วฮาร์ดแวร์ได้[ 36 ]
ชุดคุณสมบัติ I
คล้ายกับชุดคุณลักษณะ H [ 35 ]
ชุดคุณสมบัติ J
ชุดคุณสมบัติ J เพิ่มการรองรับการถอดรหัส HEVC 444 [ 35 ]
ชุดคุณสมบัติ K
ชุดคุณสมบัติ K สามารถถอดรหัสสตรีมวิดีโอ AV1 MAIN Profile ขนาด 8192x8192 (ความละเอียด 8k) โดยใช้ฮาร์ดแวร์เร่งความเร็วได้[ 35 ]

libvdpau ไลบรารี VDPAU แบบสแตนด์อโลน

ไลบรารี VDPAU แบบสแตนด์อโลน libvdpau ถูกแจกจ่ายโดย Nvidia อย่างอิสระจากไดรเวอร์กราฟิก Linux ที่เป็นกรรมสิทธิ์ของพวกเขา เพื่อช่วยให้ผู้ที่อยู่นอก Nvidia สามารถนำ VDPAU ไปใช้ได้ ไลบรารีโอเพนซอร์สนี้ประกอบด้วยไลบรารี wrapper และไลบรารี debugging ซึ่งช่วยให้ผู้ผลิตรายอื่นสามารถนำ VDPAU ไปใช้ในไดรเวอร์อุปกรณ์ของตนได้[ 8 ] [ 37 ] [ 38 ] [ 39 ]

ดูเพิ่มเติม

  • VDPAU (Video Decode and Presentation API for Unix) โดย Nvidia
  • ผลการทดสอบประสิทธิภาพ NVIDIA VDPAU
  • ส่วนหลังของ NVIDIA VDPAU สำหรับ VA-API ของ Intel
ดึงข้อมูลมาจาก " https://en.wikipedia.org/w/index.php?title=VDPAU&oldid=1351720880 "

สรุปเนื้อหา

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

ข้อมูลสำคัญเกี่ยวกับ วีดีพียู

Video Decode and Presentation API for Unix ( VDPAU ) เป็น อินเทอร์เฟซการเขียนโปรแกรมแอปพลิเคชัน (API) ที่ไม่มีค่าลิขสิทธิ์รวมถึงการใช้งานในรูปแบบ ไลบรารีโอ เพนซอร์สฟรี ( libvdpau...

ช่วงการทำงานของอินเทอร์เฟซ

VDPAU อนุญาตให้โปรแกรมวิดีโอเข้าถึง ASIC ถอดรหัสวิดีโอเฉพาะบน GPU เพื่อถ่ายโอนส่วนต่าง ๆ ของ กระบวนการ ถอดรหัสวิดีโอ และ การประมวลผลวิดีโอภายหลัง จาก CPU ไปยัง GPU [ 7 ]

ประวัติศาสตร์

VDPAU ได้รับการออกแบบโดย Nvidia สำหรับ บล็อก PureVideo SIP ที่มีอยู่ใน GeForce 8 series และ GPU รุ่นต่อมา [ 8 ]

ไดรเวอร์อุปกรณ์และตัวควบคุมวิดีโอที่ใช้ VDPAU

VDPAU ถูกนำไปใช้ใน ไดรเวอร์อุปกรณ์ ซอฟต์แวร์ X11 แต่ต้องอาศัยคุณสมบัติการเร่งความเร็วใน GPU ฮาร์ดแวร์ การ์ดกราฟิก Nvidia ทั้งหมดที่ไดรเวอร์ใช้ VDPAU จะแสดงอยู่ใน Nvidia PureVideo [ 10 ] S3 Graphics ได้เพิ่ม VDPAU ลงในไดรเวอร์ Linux ของการ์ด วิดีโอ Chrome 400...