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

อ่าน 6 นาที

โอเพ่นแม็กซ์

OpenMAX (Open Media Acceleration) ซึ่งมักย่อว่า " OMX " เป็นชุดอิน เทอร์เฟซการเขียนโปรแกรม ภาษา C ข้ามแพลตฟอร์มที่ไม่ผูกขาดและไม่เสียค่าลิขสิทธิ์ โดยมีนามธรรมสำหรับรูทีนต่างๆ...

โอเพ่นแม็กซ์

โอเพ่นแม็กซ์
นักพัฒนากลุ่มโครโนส
เว็บไซต์www.khronos.org/openmax/

OpenMAX (Open Media Acceleration) ซึ่งมักย่อว่า " OMX " เป็นชุดอิน เทอร์เฟซการเขียนโปรแกรม ภาษา C ข้ามแพลตฟอร์มที่ไม่ผูกขาดและไม่เสียค่าลิขสิทธิ์ โดยมีนามธรรมสำหรับรูทีนต่างๆ ที่มีประโยชน์อย่างยิ่งสำหรับการประมวลผลเสียง วิดีโอ และภาพนิ่ง[ 1 ] [ 2 ]มีจุดประสงค์สำหรับอุปกรณ์พลังงานต่ำและระบบฝังตัว (รวมถึงสมาร์ทโฟนเครื่องเล่นเกมเครื่องเล่นสื่อดิจิทัลและกล่องรับสัญญาณ ) ที่ต้องการประมวลผลข้อมูลมัลติมีเดียจำนวนมากอย่างมีประสิทธิภาพในรูปแบบที่คาดการณ์ได้ เช่น ตัวแปลงสัญญาณวิดีโอ ไลบรารีกราฟิก และฟังก์ชันอื่นๆ สำหรับวิดีโอ ภาพ เสียง เสียงพูด และคำพูด[ 3 ]

OpenMAX มีอินเทอร์เฟซสามชั้น ได้แก่ ชั้นแอปพลิเคชัน (AL) ชั้นการบูรณาการ (IL) และชั้นการพัฒนา (DL) OpenMAX บริหารจัดการโดยกลุ่มเทคโนโลยีที่ไม่แสวงหาผลกำไรKhronos Group [ 4 ]

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

ประกาศครั้งแรกในเดือนกรกฎาคม พ.ศ. 2547 [ 5 ] กลุ่มทำงาน OpenMAX ก่อตั้งขึ้นครั้งแรกโดยสมาชิกARM , Motorola , Samsung , STMicroelectronicsและTexas Instrumentsข้อกำหนดเวอร์ชัน 1.0 ได้รับการเผยแพร่ในเดือนธันวาคม พ.ศ. 2548 [ 6 ]ร่างฉบับสุดท้ายที่จัดทำโดยกลุ่มทำงาน OpenMAX (1.2.0) มีอายุตั้งแต่ปี พ.ศ. 2554 [ 7 ]และไม่มีผลิตภัณฑ์ใดได้รับการประกาศว่าสอดคล้องตั้งแต่ปี พ.ศ. 2555 [ 8 ]ข้อกำหนด OpenMAX ไม่เคยได้รับการอัปเดตเพื่อรองรับตัวแปลงสัญญาณรุ่นใหม่ เช่น HEVC หรือ VP9 ทำให้ Android กลายเป็นแหล่งที่มาของการอัปเดตมาตรฐาน OpenMAX IL โดยปริยาย[ 9 ]

ชั้นต่างๆ

OpenMAX ALเป็นอินเทอร์เฟซระหว่างแอปพลิเคชันมัลติมีเดีย เช่น โปรแกรมเล่นสื่อ และเฟรมเวิร์กสื่อ ของแพลตฟอร์ม ช่วยให้บริษัทที่พัฒนาแอปพลิเคชันสามารถย้ายแอปพลิเคชันของตนไปยังแพลตฟอร์มต่างๆ (ลูกค้า) ที่รองรับ อินเทอร์เฟซการเขียนโปรแกรมแอปพลิเคชัน (API) ของ OpenMAX AL ได้อย่างง่ายดาย[ 10 ]

OpenMAX ILเป็นอินเทอร์เฟซระหว่างเฟรมเวิร์กสื่อ (เช่นStageFrightหรือ MediaCodec API บน Android, DirectShowบน Windows, FFmpegหรือGStreamerบน Linux) และชุดส่วนประกอบมัลติมีเดีย (เช่นตัวแปลง สัญญาณเสียงหรือวิดีโอ ) ช่วยให้บริษัทที่สร้างแพลตฟอร์ม (เช่น อนุญาตให้ใช้งานเครื่องเล่น MP3) สามารถเปลี่ยนส่วนประกอบต่างๆ เช่น ตัวถอดรหัส MP3 และเอฟเฟกต์อีควอไลเซอร์ และซื้อส่วนประกอบสำหรับแพลตฟอร์มของตนจากผู้จำหน่ายต่างๆ ได้อย่างง่ายดาย[ 11 ]

OpenMAX DLคืออินเทอร์เฟซระหว่างฮาร์ดแวร์ทางกายภาพ เช่น ชิป ประมวลผลสัญญาณดิจิทัล (DSP), CPU , GPUและซอฟต์แวร์ เช่นตัวแปลงสัญญาณ วิดีโอ และเอนจิ้น 3 มิติ ช่วยให้บริษัทต่างๆ สามารถผสานรวมฮาร์ดแวร์ใหม่ที่รองรับ OpenMAX DL ได้อย่างง่ายดายโดยไม่ต้องปรับแต่งซอฟต์แวร์ระดับต่ำของตนใหม่

ชั้นแอปพลิเคชัน

โอเพ่นแม็กซ์ เอแอล
นักพัฒนากลุ่มโครโนส
เวอร์ชันเสถียร
1.1 / 18 มกราคม 2554 ( 18 มกราคม 2011 )
ระบบปฏิบัติการข้ามแพลตฟอร์ม
พิมพ์API
ใบอนุญาตหลากหลาย
เว็บไซต์www.khronos.org/openmax/ แก้ไขข้อมูลนี้บนวิกิดาต้า

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

OpenMAX AL เป็น API มัลติมีเดียระดับแอป พลิเคชันที่เขียน ด้วยภาษา C ออกแบบมาสำหรับอุปกรณ์ที่มีทรัพยากรจำกัด การออกแบบ API ของ OpenMAX AL เน้นเป็นพิเศษที่การทำให้มั่นใจว่า API นั้นเหมาะสมกับ อุปกรณ์ฝังตัวแบบพกพารวมถึงโทรศัพท์มือถือพื้นฐาน โทรศัพท์ฟีเจอร์โฟนอัจฉริยะ PDA และเครื่องเล่นเพลงดิจิทัลแบบพกพา อย่างไรก็ตาม นี่ไม่ได้หมายความว่าจะไม่สามารถนำไปใช้กับอุปกรณ์เล่นและบันทึกสื่อที่ซับซ้อนอื่นๆ ได้

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

คุณสมบัติ

คุณสมบัติของ OpenMAX AL ประกอบด้วย:

  • การเล่นและการบันทึกวิดีโอ
  • การเล่นและการบันทึกเสียง
  • การจับภาพ (กล้อง) และการแสดงผล
  • การควบคุมกล้อง
  • วิทยุและRDS
  • การเล่นMIDIขั้นพื้นฐาน
  • การดึงและการแทรกเมตาเดตา

การขยายสัญญาณทีวีดิจิทัล

ข้อกำหนดส่วนขยายโทรทัศน์ดิจิทัล (DTV) ของ OpenMAX AL เพิ่มฟังก์ชันการปรับจูน การเล่น การบันทึก และคู่มือรายการอิเล็กทรอนิกส์สำหรับทีวีเคลื่อนที่ที่ไม่ขึ้นกับมาตรฐานให้กับ OpenMAX AL Multimedia API ซึ่งเป็น API ภาษา C แบบโมดูลาร์ที่ไม่ต้องเสียค่าลิขสิทธิ์และใช้งานได้หลายแพลตฟอร์ม สำหรับแอปพลิเคชันที่เกี่ยวข้องกับทีวีดิจิทัลประสิทธิภาพสูงบนอุปกรณ์เคลื่อนที่และอุปกรณ์ฝังตัว ส่วนขยาย DTV เข้ากันได้กับมาตรฐานทีวีเคลื่อนที่หลักทั้งหมด (เช่น DVB-H, ISDB-T, T-DMB เป็นต้น) และรองรับวิธีการส่งแบบบรอดแคสต์ ยูนิคาสต์ และมัลติคาสต์สำหรับทีวีดิจิทัล[ 12 ] [ 13 ]

เวอร์ชันข้อมูลจำเพาะ

  • ข้อกำหนดเบื้องต้นของ OpenMAX AL 1.0 - เวอร์ชันชั่วคราว ลงวันที่ 2 กันยายน 2550 เพื่อเปิดโอกาสให้ชุมชนแสดงความคิดเห็นก่อนการเผยแพร่เวอร์ชัน 1.0 อย่างเป็นทางการ
  • ข้อกำหนด OpenMAX AL 1.0 - ลงวันที่ 23 มิถุนายน 2552
  • ข้อกำหนด OpenMAX AL 1.0.1 - ลงวันที่ 12 มีนาคม 2553
  • ข้อกำหนด OpenMAX AL 1.1 - ลงวันที่ 18 มกราคม 2011 [ 14 ]

การนำไปใช้

  • Android 4.0 และเวอร์ชันต่อมาเปิดเผย OpenMAX AL เป็นส่วนหนึ่งของNDK (Native Development Kit ) [ 15 ]
  • LIM OpenMAXเป็นซอฟต์แวร์โอเพนซอร์สที่นำ OpenMAX AL และ OpenMAX IL มาใช้งานบนระบบ Linux

การเปรียบเทียบกับ OpenSL ES

OpenSL ES (Open Sound Library for Embedded Systems) เป็น API อีกตัวหนึ่งของ Khronos Group ที่ให้บริการไลบรารีเสียงสำหรับกลุ่มเป้าหมายเดียวกันกับ OpenMAX AL ในขณะที่ OpenMAX มุ่งเป้าไปที่บริการมัลติมีเดียแบบครบวงจร ชุดย่อยเสียงของ OpenSL ES และ OpenMAX AL มีสถาปัตยกรรมร่วมกันและมีคุณสมบัติร่วมกันบางประการ:

  • การเล่นและการบันทึกเสียง
  • การเล่น MIDI ขั้นพื้นฐาน
  • การดึงข้อมูลเมตา

ชั้นการบูรณาการ

OpenMAX IL
นักพัฒนากลุ่มโครโนส
เวอร์ชันเสถียร
1.1.2 / 15 กันยายน 2551 ( 15 กันยายน 2551 )
รุ่นทดลองใช้งาน
1.2.0 / 7 พฤศจิกายน 2554 ( 7 พฤศจิกายน 2011 )
ระบบปฏิบัติการข้ามแพลตฟอร์ม
พิมพ์API
ใบอนุญาตหลากหลาย
เว็บไซต์www.khronos.org/openmax/ แก้ไขข้อมูลนี้บนวิกิดาต้า

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

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

การออกแบบ API ของ OpenMAX IL ให้ความสำคัญเป็นพิเศษกับความยืดหยุ่นในการใช้งานและการถ่ายโอนข้อมูลระหว่างส่วนประกอบต่างๆ อย่างมีประสิทธิภาพสูงสุด

API OpenMAX IL ถูกเลือกใช้เป็นพื้นฐานสำหรับ API ในการรวมตัวแปลงสัญญาณเสียงและวิดีโอบน Android ซึ่งส่งผลให้ผู้ผลิต SoC ส่วนใหญ่จัดส่งการใช้งานขั้นต่ำที่รองรับเฉพาะส่วนย่อยที่ Android ต้องการเท่านั้น แอปพลิเคชันไม่ได้ใช้ส่วนประกอบ OpenMAX IL เหล่านั้นโดยตรง แต่ใช้ผ่าน API MediaCodec ของ Android เท่านั้น ส่วนย่อยของ OpenMAX IL สำหรับ Android พร้อมส่วนขยายต่างๆ จึงกลายเป็นมาตรฐานโดยพฤตินัยในปัจจุบัน

ในปี 2554 ได้มีการเผยแพร่เวอร์ชันชั่วคราว 1.2.0 [ 16 ]

การนำไปใช้

  • Tizoniaเป็นการใช้งาน OpenMAX IL แบบโอเพนซอร์สสำหรับ Linux ที่รองรับเวอร์ชัน 1.2.0 [ 17 ]
  • Bellagioเป็นการใช้งาน OpenMAX IL แบบโอเพนซอร์สสำหรับ Linux ซึ่งดูแลโดย STMicroelectronics [ 18 ]
  • LIM OpenMAXเป็นซอฟต์แวร์โอเพนซอร์สที่นำ OpenMAX AL และ OpenMAX IL มาใช้งานบนระบบ Linux
  • Mesaมีไดรเวอร์เร่งความเร็วฮาร์ดแวร์ที่สามารถใช้กับ Bellagio หรือ Tizonia ได้[ 19 ] [ 20 ]
  • Android StageFrightคือการใช้งาน IL เพียงบางส่วน ซึ่งถือเป็นมาตรฐานที่ใช้กันอย่างแพร่หลาย

ชั้นการพัฒนา

OpenMAX DL
นักพัฒนากลุ่มโครโนส
เวอร์ชันเสถียร
1.0.2 / 21 ธันวาคม 2550 ( 21 ธันวาคม 2550 )
ระบบปฏิบัติการข้ามแพลตฟอร์ม
พิมพ์API
ใบอนุญาตหลากหลาย
เว็บไซต์www.khronos.org/openmax/ แก้ไขข้อมูลนี้บนวิกิดาต้า

API OpenMAX DL กำหนดชุดของเคอร์เนลมัลติมีเดียระดับต่ำหรือส่วนประกอบพื้นฐานสำหรับการประมวลผลสื่อ ส่วนประกอบพื้นฐานเหล่านี้อาจใช้เพื่อเร่งความเร็วจุดประมวลผลที่ใช้ทรัพยากรมากแบบดั้งเดิมภายในตัวแปลงสัญญาณ สื่อมาตรฐาน และเครื่องมือประมวลผลสื่อแบบบูรณาการอื่นๆ ขอบเขตการทำงานของอินเทอร์เฟซ OpenMAX DL ครอบคลุมหลายโดเมน รวมถึงการประมวลผลสัญญาณและการประมวลผลภาพการเข้ารหัสเสียงการเข้ารหัสภาพและการเข้ารหัส วิดีโอ

OpenMAX DL แบ่งออกเป็นห้าโดเมนการใช้งาน:

  • AC - ตัวแปลงสัญญาณเสียง (ส่วนประกอบตัวถอดรหัส MP3 และตัวถอดรหัส AAC)
  • IC - ตัวแปลงสัญญาณภาพ (ส่วนประกอบ JPEG)
  • IP - การประมวลผลภาพ (ฟังก์ชันการประมวลผลภาพทั่วไป)
  • SP - การประมวลผลสัญญาณ (ฟังก์ชันการประมวลผลเสียงทั่วไป)
  • VC - ตัวแปลงสัญญาณวิดีโอ (ส่วนประกอบ H.264 และ MP4)

การนำไปใช้

  • ก่อนหน้านี้ ARM ได้จัดเตรียม การใช้งานที่ปรับให้เหมาะสมสำหรับNEON (สำหรับ คอร์ Cortex A8 ) และSIMD (สำหรับ คอร์ ARM11 ) รวมถึง การใช้งานอ้างอิง ANSI Cสำหรับผู้ใช้ที่ลงทะเบียนไว้[ 21 ] [ 22 ]
  • เครื่องเล่นเกมPlayStation 3รองรับ API OpenMAX

คณะทำงาน

กลุ่มทำงาน OpenMAX ก่อตั้งขึ้นพร้อมกับโครงการพี่น้องอย่างOpenVGเมื่อวันที่ 6 กรกฎาคม 2547 สมาชิกผู้สนับสนุนในปี 2551 ได้แก่AMD , Apple , ARM , Creative , Dell Inc , Ericsson , Freescale , Imagination Technologies Group plc , Intel , IBM , Motorola , Nokia , Nvidia Corporation , Samsung Electronics Co. Ltd , SK Telecom , Sony Computer Entertainment IncและTexas Instruments

ดูเพิ่มเติม

  • Khronos Group — ภาพรวม OpenMAX และข้อกำหนด API
  • Khronos Group — ทะเบียน API สาธารณะ
  • Khronos Group — ข้อกำหนด OpenMAX AL 1.1
  • Khronos Group — ข้อกำหนด OpenMAX IL 1.1.2
  • Khronos Group — ข้อกำหนด OpenMAX DL 1.0.2
  • ARM - ไลบรารี OpenMAX ฟรี
  • Mentor Graphics - Nucleus MMF ใช้ประโยชน์จาก OpenMAX IL
  • Mentor Graphics - ข่าวประชาสัมพันธ์: Mentor ประสบความสำเร็จในการได้รับการรับรองมาตรฐาน OpenMAX สำหรับ Nuclues OS Multimedia Framework เป็นครั้งแรกในอุตสาหกรรม
ดึงข้อมูลมาจาก " https://en.wikipedia.org/w/index.php?title=OpenMAX&oldid=1337969641 "

สรุปเนื้อหา

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

ข้อมูลสำคัญเกี่ยวกับ โอเพ่นแม็กซ์

OpenMAX (Open Media Acceleration) ซึ่งมักย่อว่า " OMX " เป็นชุดอิน เทอร์เฟซการเขียนโปรแกรม ภาษา C ข้ามแพลตฟอร์มที่ไม่ผูกขาดและไม่เสียค่าลิขสิทธิ์ โดยมีนามธรรมสำหรับรูทีนต่างๆ...

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

ประกาศครั้งแรกในเดือนกรกฎาคม พ.ศ. 2547 [ 5 ] กลุ่มทำงาน OpenMAX ก่อตั้งขึ้นครั้งแรกโดยสมาชิก ARM , Motorola , Samsung , STMicroelectronics และ Texas Instruments ข้อกำหนดเวอร์ชัน 1.0 ได้รับการเผยแพร่ในเดือนธันวาคม พ.ศ.

ชั้นต่างๆ

OpenMAX AL เป็นอินเทอร์เฟซระหว่างแอปพลิเคชันมัลติมีเดีย เช่น โปรแกรมเล่นสื่อ และ เฟรมเวิร์กสื่อ ของแพลตฟอร์ม ช่วยให้บริษัทที่พัฒนาแอปพลิเคชันสามารถย้ายแอปพลิเคชันของตนไปยังแพลตฟอร์มต่างๆ (ลูกค้า) ที่รองรับ อินเทอร์เฟซการเขียนโปรแกรมแอปพลิเคชัน (API) ของ...

ชั้นแอปพลิเคชัน

OpenMAX AL รองรับกรณีการใช้งานแอปพลิเคชันมัลติมีเดียทั่วไปโดยการกำหนดมาตรฐานชุดของ วัตถุ ที่เป็นตัวแทน รวมถึง อินเทอร์เฟซ บนวัตถุเหล่านั้น เพื่อควบคุมและกำหนดค่า API ของ OpenMAX AL แบ่งออกเป็นสองโปรไฟล์ ได้แก่ เครื่องเล่นมีเดีย และ เครื่องเล่น/บันทึกมีเดีย...