androidx / media

Jetpack Media3 support libraries for media use cases, including ExoPlayer, an extensible media player for Android
Apache License 2.0
1.36k stars 322 forks source link

MPEG-H support in ExoPlayer #1461

Open cecosme opened 2 weeks ago

cecosme commented 2 weeks ago

MPEG-H (ISO/IEC 23008-3) support in ExoPlayer

The MPEG-H Audio system was already adopted by ATSC (ATSC 3.0 TV), DVB, TTA (Korean TV) and now is adopted by Brazilian SBTVD as the sole audio codec for Brazil's second-generation DTT called TV 3.0 (more details here: https://forumsbtvd.org.br/tv3_0/#panel-phase2). Since lots of TV sets in the Brazilian market run Android OS, I would like to request the support of MPEG-H in ExoPlayer. Is it underway? Is there a roadmap? Best regards, Carlos Cosme

FongMi commented 2 weeks ago

https://github.com/androidx/media/tree/ts_mpegh_reader_patch Done

tonihei commented 2 weeks ago

Thanks for the feature request. There is already some work in progress to add parsing support for MPEG-H (see example linked above). Are you looking for any specific subset of MPEG-H features you would like to support in your app?

cecosme commented 2 weeks ago

Thank you for pointing to the ongoing work on the parsing support for MPEG-H. We are trying to enable the capabilities according to the TV 3.0 standard, which include not only decoding but especially the user interactivity options and MPEG-H HDMI passthrough. I’m wondering how difficult it is use MPEG-H in media3 using the source software decoder available on GitHub (https://github.com/Fraunhofer-IIS/mpeghdec)

tonihei commented 2 weeks ago

The initial support will likely involve an ExoPlayer extension published by Fraunhofer using the software decoder you linked. The changes we are making all ensure that such an extension can be easily written and used without any special forks of ExoPlayer. This setup should also support the interactive features and HDMI passthrough you mentioned.