Se connecter
Se connecter

ou
Créer un compte

ou
FR
EN
Tablettes tactiles

Android et audio

  • 24 réponses
  • 4 participants
  • 3 188 vues
  • 6 followers
Sujet de la discussion Android et audio
Hey,

Limite les mains dans le cambouis, mais quelqu'un a déjà programmé en audio sur Android ? Avec le NDK peut-être ? Je pensais à un mini éditeur audio (un vrai, pas les trucs à 1€ trouvables sur le Google Play)
2

flag même si j'ai déja ce qu'il me faut , le sujet m'intéresse

edit ce n'est pas de la pub mais vu que c'est aussi pour les chanteurs:

edit 2 : faut au moins la version 4 d'android

Beat Thang iz Dead 

[ Dernière édition du message le 11/08/2013 à 11:12:09 ]

3
Donc iRig fonctionne aussi sous Android ?
4

Citation de : miles1981

Donc iRig fonctionne aussi sous Android ?

si tu parles d' irig recorder oui et tout les accessoires sont là ->

https://www.ikmultimedia.com/products/cat-view.php?C=mobile-ios-android-accessories

 

Beat Thang iz Dead 

[ Dernière édition du message le 11/08/2013 à 14:01:43 ]

5
J'ai acheté le iRig Mic Cast pour mon téléphone Android Nexus 4.

Ca marche plutôt bien, je l'ai testé surtout avec l'application IK Multimedia correspondante, mais ça marche avec n'importe quelle fonctionnalité audio de l'appareil sans rien avoir à installer, c'est assez sympa.

En répète on peut y aller assez fort sans que ça sature (ya un réglage du gain 2 positions : high et low).

Ca choppe plus de basses que l'iPhone et ça sature un peu moins vite (l'iPhone il faut déjà y aller pour le faire saturer, mais en répète dans un petit local, ça arrive assez vite quand même).

En fait l'iphone applique automatiquement à l'entrée audio un filtre coupe bas qui sert à éviter le bruit du vent par exemple, mais qui s'avère un peu dommage pour enregistrer de la musique. Par contre le limiteur/compresseur intégré est très bon et ça ça manque sur Android. Je cherche toujours une appli audio qui permette d'enregistrer avec un limiteur ou un réglage automatique du gain.


Sinon j'ai commencé à développer un synthé sur Android avec la classe AudioTrack (en partant de ce tuto : http://audioprograming.wordpress.com/2012/10/18/a-simple-synth-in-android-step-by-step-guide-using-the-java-sdk/), mais ça me parait limité au niveau performance, je suis en train de regarder des tutos pour utiliser OpenSL ES, en espérant qu'il n'y ai pas trop de bugs...
6
Pour ma part, je suis parti sur la creation d'un editeur audio (lecture, enregistrement, filtre...), aussi sur openSL ES. Ca fonctinne bien, sauf quand tu passes sur l'emulateur.
Le pb du reglage de gain, c'est que c'est apres la numerisation, donc gain ou pas gain, ca ne change rien, non ?

[ Dernière édition du message le 11/09/2013 à 17:16:03 ]

7
Clairement, faudra qu'ils supportent un jour l'USB audio. Ca changerait tellement de choses en bien !
8
Citation :
aussi sur openSL ES. Ca fonctinne bien, sauf quand tu passes sur l'emulateur.


Ok cool, je vais tester, j'ai commencé à rassembler des tutos et la doc. Je suis pas fan de l'émulateur de toutes façon, à part pour tester le rendu de l'interface graphique sur différents formats d'écrans (faudra que je teste Android Studio qui a l'air terrible pour ça!).

Citation :
Le pb du reglage de gain, c'est que c'est apres la numerisation, donc gain ou pas gain, ca ne change rien, non ?


Tu veux dire que la saturation proviendrait des limites matérielles du micro et/ou du convertisseur et qu'il n'y a pas moyen de rattraper le coup après?
Dans mon groupe on enregistre nos répètes avec un iPhone et c'est complétement dingue ce que le micro est capable d'encaisser par rapport à mon Nexus 4. Et en même temps le Nexus 4 est pas cher, ils ont forcément dû rogner sur la qualité de certains composants, je me demande si les Samsung haut de gamme ont un meilleur micro par exemple.

Citation :
Clairement, faudra qu'ils supportent un jour l'USB audio. Ca changerait tellement de choses en bien !


Android a fait d'énormes progrès en quelques années, alors on peut espérer que ça arrive un jour. Personnellement je pense que j'aurai craqué pour un enregistreur portable Zoom ou Tascam avant!

9
La, c'est pas le ;icro, il n'intervient pas, c'est celui de l'iRig qui joue. Apres, peut-etre qu'il y a un peu plus de marge sur l'iPhone en entree du convertisseur que sur le Nexus et Apple fait un limiteur apres?
De toute maniere, micro ou pas, on pourra vraiment faire des trucs sympa que lorsqu'il y aura l'USB audio. Avant, on sera toujours tributaire du constructeur d'origine :/
10
Là je parlais du micro intégré du Nexus 4, pas de celui de l'iRig.

Oui c'est sûr qu'il y a un limiteur software sur l'iPhone, ça s'entend clairement. J'ai lu quelque part qu'il y a aussi un filtre coupe-bas (pour éviter les bruits de vent en extérieur), et que depuis une mise à jour, les développeurs peuvent accéder au son "brut" provenant du micro, sans ces deux traitements (qui restent malgré tout actifs par défaut pour toutes les applications utilisant le micro).

Je ne peux pas vérifier directement car il faut payer pour avoir un compte développeur Apple qui permet d'accéder à la doc! Je demanderai à des potes développeurs iOS.

Faut avouer qu'Apple fait toujours un sacré effort sur l'audio, j'ai un pote qui enregistre des maquettes acoustiques sur garage band avec le micro intégré de son Mac Book, le tout sans latence et avec une qualité tout à fait satisfaisante pour une maquette.
11
Si le limiteur est post conversion, aucun intérêt. Ca sert juste à ralentir.
Oui, Apple a bien fait son système. Permettre de taper directement sur le système bas-niveau (donc sans le limiteur ou autre) est ce qui est indispensable pour avoir une latence acceptable.
12
Citation :
Si le limiteur est post conversion, aucun intérêt. Ca sert juste à ralentir.


Ou alors le micro est peu sensible - pour éviter la saturation du convertisseur - et il y a un compresseur post-conversion pour réhausser les signaux les plus faibles? Ou alors c'est un réglage automatique du volume sonore?

Ce qui est sûr, c'est qu'en enregistrant une petite guitare acoustique gentille ou une batterie qui tape bien, l'appli dictaphone de base enregistre avec des niveaux homogènes.

En tout cas les traitements sont bas niveau et bien optimisés, toute l'architecture audio est bien foutue en fait, on peut utiliser des plugins "AU". Pour la latence sur Android, je crois que ça ne pourra continuer à s'améliorer que quand Google imposera des normes plus strictes aux constructeurs concernant le hardware embarqué.
13
Si c'est débraillable, c'est que c'est numérique, donc vraiment aucun intérêt. Pour nous, c'est plus intéressant si on a le signal d'origine sans traitement. Ca ne m'étonnerait pas qu'ils gardent de la marge, mais ça signifie aussi qu'ils rééchantillonnent le signal à la volée. déjà que je ne pense pas qu'on ait plus de 16bits de précision, ça veut dire énormément de bruit. De toute manière, le mieux est de pouvoir brancher une carte son portable dessus en USB. Faut pas se leurrer, tout le reste est prévu pour un téléphone, pas pour de la musique, même si ça fait très bonne illusion sur iOS.

Sur Android, ça sera faisable quand Google décidera de mettre une API bas niveau comme celle d'iOS. Pas gagné apparemment :/
14
Non c'est sûr que ça va être à l'arrache pendant encore un moment, trop à l'arrache pour envisager de faire de l'audio sérieusement sur Android, comme ça commence à être le cas sur iOS.

Pour l'instant l'intérêt d'Android peut résider dans certaines applis permettant de faire de la musique "in the box" et d'exporter les pistes dans un séquenceur audio sérieux, sans avoir à passer par l'I/O audio du téléphone ou de la tablette.

Par exemple Caustic, Fruity Loops for Android et autres applis orientées synthèse/groovebox.

C'est pour ça que personnellement je m'intéresse plus à la synthèse qu'à l'enregistrement audio pour le moment en tant que développeur. En tant que musicien, l'iRig me permet tout de même de transformer mon téléphone en petit dictaphone potable pour garder des idées.
15
Je trouve qu'il y a trop de synthé, et peu de débouchés : OK, ça permet d'exporter le son vers l'extérieur, mais je vois moins l'intérêt, sérieux...
Enfin, ça m'arrange, tout le monde fait des synthés, j'ai le temps de faire mon éditeur et de juste changer par la suite les mécanismes d'I/O et tout sera prêt, même en avance de phase pour quand ça sera OK sur Android.
16

pour les synthés je ne sais pas mais pour les samples based music android est nickel , j'utilise du matos ik multimedia (irig mix) et retaffe le tout dans les apps faits par niko twenty (sonic chop, electrum , reloop) avec une portable turntable , ça fait un portable setup du tonnerre bravo

Beat Thang iz Dead 

17
Intéressant, ça donne une idée de ce qui existe pour la future concurrence...
18
Je travaille (en amateur) sur une appli musicale, mais rien à voir avec de la synthèse ou de l'enregistrement, ce que je fais est beaucoup plus simple (un jeu musical). Et pourtant je me heurte déjà aux limites de l'audio android. Notamment la latence.

J'ai trouvé un article encourageant à ce sujet cependant: http://www.androidpolice.com/2013/02/22/sonoma-wire-works-cracks-the-code-finds-a-fix-for-the-low-latency-audio-in-issue-on-android/


Et après tu peux faire un break genre Pom pom pa padam shtinnk shhhtou pa tschh schtaaaa???

19
C'est bien, mais il faut que ce soit Google qui le mette dans Android. Les autres ne le feront pas :/ Le pb du jeu musical, c'est que tu as aussi la latence GUI -> audio qui est bien plus importante que la latence I/O audio :(
20
Ah oui mais sauf si j'ai rien compris (possible :lol:), tu te retrouves avec des problèmes similaires de latence si tu fais un synthé. C'est quand même moins cool si t'entends sortir le son bien après avoir appuyé.

Mais aussi dans le cas d'une app type miniature de Cubase, Live... (désolé si les noms ne sont pas adaptés, je n'ai utilisés que ces deux là sur ordi). Imagine tu prépare un morceau, et dans le métro tu te dis "tiens et si j'essaye de mettre un synthe là", pour faire ça vite fait, tu utilise un clavier tactile, juste pour avoir un idée de ce que ça pourrait donner. Eh ben la latence n'aide pas...

Pour le premier point, bien sûr il faut que Google le mette eux-mêmes. Mais le fait qu'une boîte parle d'une solution, ça veut bien dire que c'est faisable, que c'est pas si dur et que si Google laisse ça traîner trop traîner, ils vont finir par se ridiculiser ou montrer qu'ils abandonnent complètement ce marché. Du coup je suis quand même optimiste!

Et après tu peux faire un break genre Pom pom pa padam shtinnk shhhtou pa tschh schtaaaa???

21
Complètement d'accord !
Le pb de la solution proprio que tu as indiquée, c'est qu'elle date déjà d'il y a 2 ans et depuis, pas une seule avancée :(
22
Oui, à mon avis ils ont d'autres priorités d'amélioration : ils sont en train de mettre en place la compilation des applis en code natif dès l'installation (ART) pour remplacer à terme la compilation "Just In Time" du bytecode Java.
Android 4.4 (la dernière release majeure) a été particulièrement soignée pour tourner de manière fluide sur des smartphones peu puissants (modèles anciens et/ou d'entrée de gamme).

En gros ils s'occupent d'abord d'une amélioration générale des performances du système, et de la conquête de nouveaux marchés (les pays émergents, les gens qui ne sont pas prêt à lâcher 600 balles pour un téléphone, etc...).
Du point de vue marketing, je pense qu'ils n'ont pas un grand espoir d'attaquer directement la clientèle audiophile d'Apple du jour au lendemain...

De plus ce n'est pas ça qui va leur ramener du pognon : Apple a intérêt à vendre des iPads, or des applications audio de qualité sont un argument de vente "hardware". Les 30% de commission sur le prix de vente des applications ne doivent pas ramener grand chose.
Pour google l'intérêt c'est d'avoir beaucoup d'utilisateurs réguliers pour des applications qui utilisent leur système de pub et pour leur moteur de recherche. C'est à dire des services qui sont rarement utilisés par les application audio (que ce soit DAW, contrôleur MIDI/OSC, synthé, sampleur etc...). Et l'achat des appareils, c'est de l'argent qui va dans la poche des constructeurs, pas dans celles de google.

Par contre qui sait ce que réserve ART en terme de performances? Peut être que le code audio écrit en Java sera compilé et optimisé directement pour l'architecture spécifique de l'appareil, et qu'on aura des meilleures performances tout en bénéficiant de la simplicité de l'API audio de Java?
Est ce que c'est une hypothèse qui se tient?
23
Non, je ne pense pas que ce sera efficace. On continuera à accéder à des fonctions de trop haut niveau, donc même compilé, on n'ira pas plus vite. Il ne faut pas oublier que les applis audio fonctionnent déjà avec un engine/kernel natif, ART ne leur servira donc à rien :/
24
Mais l'avantage de l'API en C sur Java Audio, c'est pas justement que le code est déjà compilé en langage machine lors de l’exécution?

Enfin ça devrait au moins améliorer la réactivité de l'interface graphique non?
25
Pour la réactivité de l'UI, oui. Pour le reste non, tu es et tu restes en C. Et ça reste peu utilisable pour faire de l'audio comme on peut le faire sur Apple (obligé de rester avec le convertisseur interne...)