#3 24mb in fdroid

Cerrada
abierta hace 8 años por bugabinga · 5 comentarios

Thank you for sharing this app. Love it!

The apk in FDroid is 24MB which seems overly large to me.

I am short on time right now, but would like to investigate this later.

Thank you for sharing this app. Love it! The apk in FDroid is 24MB which seems overly large to me. I am short on time right now, but would like to investigate this later.
zPlus comentado hace 8 años
Propietario

Hey, I'm glad that the app is useful to somebody else :)

Yes I've also noticed that the final apk is rather large. The app in src/ is actually pretty small, ~300KB. I think the problem is with some dependency that I'm pulling in.

Hey, I'm glad that the app is useful to somebody else :) Yes I've also noticed that the final apk is rather large. The app in `src/` is actually pretty small, ~300KB. I think the problem is with some dependency that I'm pulling in.
bugabinga comentado hace 8 años
Autor

@zPlus You are right. The reason is certainly this dep: https://github.com/wseemann/FFmpegMediaMetadataRetriever

It supports ARM, ARMv7, x86, x86_64, MIPS and ARM_64 and for each platform has copies of the shared libraries (basically a copy of ffmpeg) in the apk.

I am not sure what it does exactly, but it seems to replace a standard Android API. Can the standard API be used instead?

@zPlus You are right. The reason is certainly this dep: https://github.com/wseemann/FFmpegMediaMetadataRetriever It supports ARM, ARMv7, x86, x86_64, MIPS and ARM_64 and for each platform has copies of the shared libraries (basically a copy of ffmpeg) in the apk. I am not sure what it does exactly, but it seems to replace a standard Android API. Can the standard API be used instead?
zPlus comentado hace 8 años
Propietario

That dependency is used only to retrieve Icecast data, see here. As it's described in the FFmpegMediaMetadataRetriever's README, "URL support (Unlike MediaMetadataRetriever)". Android's MediaMetadataRetriever seems to be able to fetch metadata only for local files, not remote files or streams.

I don't know if this library can be stripped down to something smaller, or if there is any alternative library to retrieve metadata from Internet audio streams.

That dependency is used only to retrieve Icecast data, [see here](https://notabug.org/metadb-apps/InternetRadio/src/master/app/src/main/java/community/peers/internetradio/network/Player.java#L139). As it's described in the FFmpegMediaMetadataRetriever's [README](https://github.com/wseemann/FFmpegMediaMetadataRetriever/blob/master/README.md), "URL support (Unlike MediaMetadataRetriever)". Android's MediaMetadataRetriever seems to be able to fetch metadata only for local files, not remote files or streams. I don't know if this library can be stripped down to something smaller, or if there is any alternative library to retrieve metadata from Internet audio streams.
bugabinga comentado hace 8 años
Autor

I have found a smaller library which does only what is needed here.

https://github.com/vsmaks/audiostream-metadata-retriever

Unfortunately, it does not seem maintained any more so I tried to recreate the relevant functionality:

https://github.com/vsmaks/audiostream-metadata-retriever/blob/master/library/src/main/java/com/vodyasov/amr/AudiostreamMetadataRetriever.java

But I am struggling with the Volley API which makes it hard to deal with headers (response and request), which the IceCast metadata api seems to rely on.

Anyway, this should be simple but will take me a while, because I need to learn some more about Android.

I have found a smaller library which does only what is needed here. https://github.com/vsmaks/audiostream-metadata-retriever Unfortunately, it does not seem maintained any more so I tried to recreate the relevant functionality: https://github.com/vsmaks/audiostream-metadata-retriever/blob/master/library/src/main/java/com/vodyasov/amr/AudiostreamMetadataRetriever.java But I am struggling with the Volley API which makes it hard to deal with headers (response and request), which the IceCast metadata api seems to rely on. Anyway, this should be simple but will take me a while, because I need to learn some more about Android.
zPlus comentado hace 8 años
Propietario

Thank you @bugabinga

Making a new (async) request with Volley should be as easy as this. I'll also try a few options as soon as possible.

Note to self: relevant.

Thank you @bugabinga Making a new (async) request with Volley should be as easy as [this](https://developer.android.com/training/volley/simple.html#simple). I'll also try a few options as soon as possible. Note to self: [relevant](http://uniqueculture.net/2010/11/stream-metadata-plain-java/).
zPlus mencionada esta incidencia en un commit hace 8 años
Inicie sesión para unirse a esta conversación.
Sin etiquetas
Sin Milestone
Sin asignado
2 participantes
Cargando...
Cancelar
Guardar
Aún no existe contenido.