• เครื่องเล่นมีเดียโอเพนซอร์สอเนกประสงค์ที่พัฒนาด้วย Swift และทำงานร่วมกับ Force Touch/Touch Bar/System Media Controls ของ Mac ได้อย่างดี
  • ใช้เอนจิน mpv จึงเล่นสื่อได้เกือบทุกชนิด และรองรับฟีเจอร์อย่าง PIP, โหมดมืด, คำบรรยายออนไลน์ เป็นต้น
  • ตั้งแต่เวอร์ชัน 1.4.0 ได้เพิ่ม ระบบปลั๊กอินบนพื้นฐาน JavaScript ทำให้สามารถ ปรับแต่ง ได้อย่างอิสระตั้งแต่การควบคุมการเล่นไปจนถึง UI แบบกำหนดเอง ด้วย โค้ดเพียงไม่กี่บรรทัด
  • ความสามารถที่ปลั๊กอินเข้าถึงได้
    • Core: ควบคุมการเล่น, เฟรมหน้าต่าง, ตรวจสอบและตั้งค่าสถานะแทร็กคำบรรยาย
    • Playlist: ควบคุมเพลย์ลิสต์และเพิ่มเมนูแบบกำหนดเอง
    • Subtitle: ลงทะเบียนตัวดาวน์โหลดคำบรรยายแบบกำหนดเอง และรองรับการผสานเข้ากับ UI
    • Menu: เพิ่มรายการในเมนูปลั๊กอินพร้อมคีย์ลัด
    • Overlay: แสดงเนื้อหาแบบกำหนดเองบนวิดีโอด้วย webview
    • Sidebar View: เพิ่มแท็บบนพื้นฐาน webview ในแถบด้านข้าง
    • Standalone Window: มีหน้าต่างแยกสำหรับ UI ที่ซับซ้อน
    • Global Controller: สร้างและควบคุมอินสแตนซ์ของเครื่องเล่นหลายตัว
    • File: เข้าถึงระบบไฟล์ของผู้ใช้ จัดการไฟล์ชั่วคราวและข้อมูลใน sandbox
    • Preferences: บันทึกการตั้งค่าและเพิ่มหน้าเฉพาะในแผง Preferences
    • Utils: แสดงกล่องโต้ตอบของระบบ, เรียกใช้ไฟล์ปฏิบัติการภายนอก
    • Console: แสดงล็อกดีบัก และตรวจสอบได้ในตัวดูล็อกของ IINA
    • MPV: ใช้พร็อพเพอร์ตีและฮุกของ mpv API เพื่อควบคุมการเล่นขั้นสูง
    • Event: ลงทะเบียน/ยกเลิกตัวรับเหตุการณ์ของ IINA และ mpv
    • HTTP: ส่งคำขอ HTTP และ XMLRPC
  • ตัวอย่างปลั๊กอิน
    // 비디오 상단에 48폰트 크기로 제목 표시하기  
    const { core, event, overlay } = iina;  
    event.on("iina.file-loaded", () => {  
      overlay.simpleMode();  
      overlay.setContent(`<p>${core.status.title}</p>`);  
      overlay.setStyle(`p { font-size: 48px; }`);  
      overlay.show();  
    })  
    
    // 비디오가 멈추면 윈도우를 최소화 하고, 원복되면 다시 시작   
    const { core, event } = iina;  
    event.on("mpv.pause.changed", () => {  
      core.window.miniaturized = core.status.paused;  
    });  
    event.on("iina.window-deminiaturized", () => {  
      core.resume();  
    });  
    

ยังไม่มีความคิดเห็น

ยังไม่มีความคิดเห็น