#3 24mb in fdroid

Fermé
Créé il y a 8 ans par bugabinga · 5 commentaires

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 a commenté il y a 8 ans
Propriétaire

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 a commenté il y a 8 ans
Publier

@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 a commenté il y a 8 ans
Propriétaire

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 a commenté il y a 8 ans
Publier

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 a commenté il y a 8 ans
Propriétaire

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 a référencé ce problème à partir d'un commit il y a 8 ans
Connectez-vous pour rejoindre cette conversation.
Pas d'étiquette
Aucun jalon
Pas d'assignataire
2 Participants
Chargement…
Annuler
Enregistrer
Il n'existe pas encore de contenu.