I have a requirement when I need to extract ID3 tags from TS2 MPEG2 (HLS STREAM). MPEG2 has limited support in android regarding file playback. But my concern is to extract the ID3 tags (no need to play the file). Therefore, I am not interested in codecs (encoding and decoding).
I studied the following options:
libstagefright and OpenMax . Playback engine implemented by Google with Android 2.0. It has a MediaExtractor responsible for retrieving track data and associated metadata from the underlying file system or the http stream. But in accordance with this message Adding a video codec in Android, I need to create my own firmware or my own media player. I hope that I don’t need to go this way. More information about stagefright and openMax can be found here:
Player Overview Stagefright
Android Stagefright Media Player Architecture
Integration of custom Wrapper converters in Android
How to integrate a decoder into a multimedia infrastructure
Compilation and use of FFMPEG . A complete, cross-platform solution for recording, converting and transmitting audio and video. We can demultiplex ts files using this library, as indicated here:
FFmpeg - Extract video and audio from a transport stream file (.ts) .
But I'm not sure if I can extract ID3 tags from the HLS stream. libavformat can do this, but I still need to come up with a mechanism for passing read metadata to my application.
Compiling vlc for android : I compiled vlc for android and made some changes inside the transport module in demux to extract the tags, but it cannot play all the streams that I provide them.
, . , . ffmpeg , . :
, Android?
, ?
, ?
. . .