Nelle scorse ore è stato eliminato un codice obsoleto in Mesa. Il nuovo aggiornamento Mesa 24.3 è ora più leggero di 11.600 righe di codice grazie alla rimozione del supporto per l’API OpenMAX (OMX), che era stato implementato come un tracciatore di stato Gallium3D molto tempo fa e non aveva visto attività negli ultimi anni. Inoltre, il lavoro sugli standard OpenMAX a livello upstream si era interrotto più di un decennio fa. Sebbene il gruppo Khronos abbia sviluppato con successo molti standard industriali aperti come OpenGL, OpenCL, Vulkan API e altri, OpenMAX è stato uno di quegli standard che non ha mai visto una grande diffusione.
OpenMAX era un’API multipiattaforma e senza royalties per l’elaborazione di audio, video e immagini, pensata soprattutto per sistemi mobili e embedded. OpenMAX iniziò circa vent’anni fa con il supporto di aziende come Samsung, ARM, STMicroelectronics e Texas Instruments. Tuttavia, non ha ricevuto aggiornamenti stabili da oltre dieci anni e il supporto applicativo è molto limitato. Poiché OpenMAX non è stato aggiornato per gestire i codec video più recenti, è ormai da considerarsi obsoleto.
Mesa 24.3: la richiesta di merge per la rimozione di OpenMAX
Nel 2014, AMD aveva contribuito con il tracker di stato OpenMAX per i driver Gallium3D di Mesa. Tuttavia, da allora VA-API e VDPAU hanno visto una vasta adozione, mentre OpenMAX è gradualmente scomparso. Con una richiesta di merge, il codice OpenMAX è stato rimosso da Mesa 24.3. La motivazione fornita è stata: “Rimuovi OMX. L’API è stata abbandonata da tempo e non ci sono più utenti. FFmpeg supporta solo la codifica, ma non ha mai funzionato con Mesa. GStreamer ha completamente rimosso il supporto a OMX nella versione 1.24.”
Gli sviluppatori hanno avuto qualche esitazione nell’accettare la richiesta di merge, per il potenziale impatto sui clienti AMD per l’uso su dispositivi Android. Tuttavia, anche su Android l’API OpenMAX è considerata obsoleta. Le versioni più recenti di Android utilizzano Codec2 che può avvolgere la VA-API come metodo preferito con i moderni dispositivi Android. Infine, con l’attuale Mesa Git, tutto il vecchio codice OpenMAX è stato abbandonato.