Record Sounds in the Android App

It would be nice to record sounds in the Android app instead of recording a sound in a separate app and uploading it later on the website. Specifically, I’d like to

  1. Record new sounds in the Android app for new observations
  2. Record new sounds in the Android app for existing observations
  3. Import existing sound files for any observation
  4. Play back the sound associated with any observation (both recorded in the app and those uploaded directly to the website)

Sound editing (at least cropping and amplification) would be a huge nice-to-have, but probably not a requirement.

For what it’s worth, I suspect this would be a lot of work, and might not even be feasible, but it’s certainly something I want.

I have done a limited amount of recording obs, and because I carry my phone in my pocket on record, there is often some background noise to filter out. I also crop and normalise, rather than amplify (I suppose that’s just a fancy amplification!).

i rarely record sounds but if it were possible to do it in-app i’d do it more often. Not often enough that i’m going to spend a vote for it though


This appeals to me, but I was testing sound recording apps the other day and was amazed at how they vary in quality. Smart Recorder gave much better results and clearer sound than the other I tried (same phone; same bird). So it would be good to understand how to add this feature in a way that was appropriate for wildlife recording.


Here are eBird/Macaulay Library’s tips for best quality apps and settings if it helps for development/comparison:

I don’t record very often and I haven’t tried comparing different apps, so I can’t confirm anything they say though.


@upupa-epops great link, thanks!

Yes! Sound recording would be a great function to streamline.

Developer question: Could this function work they same way as photos, where iNat calls a recording app to fulfill the recording function, and then automatically attaches the file? I don’t think android has a native sound recorder, but perhaps you could get a 3rd party app and set it as the default for the iNat app.

Simple sound editing like a cropping tool would be great, since so much nature recording is just waiting. These things are what keep me from trying, and would probably encourage user interest in audio observations.


It could, and this would probably be the easiest way for us to implement it. Whether it’s the best way is TBD. On the one hand, we’ll probably never make a sound recorder that’s as good as a dedicated sound recording app. On the other, some people not have an audio recording app on their phone and might be disappointed to discover they need to download or maybe even purchase one separately.

1 Like

I think a development priority would be to be able to upload existing audio files from the app. That should be significantly easier than recording from the app. I do a lot of recordings. For birds, I’ve posted to xeno-canto. But other animals make a lot of noise too! Crickets, grasshoppers, frogs, mammals, etc. Also, it is often easier to record animals than it is to get a good photo of them (my mobile phone camera with 13 MP isn’t great for moving, distant objects like birds and bats), and this is particularly the case for nocturnal animals. Koalas and kangaroos, for instance, make a lot of noise, and it would be cool and easier to show their presence in an area by recording them, e.g. leaving a phone recording overnight.

Good point, I use the WaveEditor app, which is pretty good for recording to WAV or MP3, and advanced editing.


I’d love to see this for both Android and iOS apps. I have a decent workflow that works for me, but it’s still easy to forget about pulling the sound files in via the website, and it would be nice not to have to leave a placeholder in my phone app observations of “sound file to be uploaded later.”

I think a development priority would be to be able to upload existing audio files from the app.

I agree. The best development workflow is to get something functioning at a basic level to allow an activity, and then refine and optimize it over time. Maybe start with an upload ability in the same button as upload picture (Take a picture? Upload from file? Upload sound from file?), then work on calling a 3rd party sound recorder, then work on a native sound recorder tailored to the iNat app experience.


I would definitely upload more sounds if this feature was added. I also wish there was a option to change the life stage when you upload it. I would add adult, nymph, etc to all my photos if this was added.

The second part of your comment is an open feature request here:

1 Like

I agree with the approach of taitsougstad, simply having (in a first stage) the possibility to upload sounds via the app would already be great. After this the system could be refined (up to an ID suggestion system as currently with the images?)

I general I think this would be a good improvement, especially for the bird watching/hearing community, which is in many regions a very strong and passionate community.

Just want to note that this is currently being worked on by our Android developer. No estimated delivery date, though.


I have sound recordings pilling up in my voice memos app because I have to go to the website to upload these recordings.


Convenience Greedy

1 Like

Just a thought… If someone uploads 20 photos in a single obs, and you come to the conclusion after the first 3 that there is going to be nothing identifiable, it is easy to just skip to next (unless of course I have time up my sleeve). However, having to listen through a 10 minute recording to establish that I can’t help is going to be painful in the extreme! I would much rather audio be difficult enough to do that it makes doing it right not be that significantly harder, if that makes sense.

It would be nice if audio recordings showed a spectogram like they do on eBird so that you can skip back and forth visually.


you should be able to skip sounds or just mark reviewed quickly as you do I help. I think that makes more sense than making it hard to do on purpose. I for one never record sounds because it doesn’t work for me but if it’s in the app I’d do so. And i won’t be recording 10 minute clips. I do like the idea of the spectrogram - not sure how hard that is to do.

1 Like

Ok folks, this is currently in beta. If you’re already getting beta releases, you should get an update in the next 24 hours. If not, you can sign up for beta testing at

Things that are included:

  • Record sounds in the app: most people will see a built-in sound recorder we made. If you have one of the very few external sound recording apps that responds to requests by other apps to record sounds (like RecForge II), that other sound recording app will open instead. Currently this behavior is not configurable (we’re assuming that if you have an external sound recording app, you’ll prefer that to our internal one, but very few of them respond to the MediaStore.Audio.Media.RECORD_SOUND_ACTION intent, sadly).
  • Play sounds in the app: except for sounds that are in Soundcloud that we were never able to download.
  • Import existing sounds as observations: for me this opens up the built-in Google file chooser, which just defaults to recent files. I need to “Open from” audio and/or from RecForge to actually get at the sound files.

Things mentioned above that are not included:

  • Spectrogram visualization: I agree this would be great, but I also think it would be pointless and excessively difficult to do just in the Android app. If / when we do it, we should do it system-wide. Also a broader topic with lots of other problems, so kind of off-topic here.
  • Sound editing: might be something we could do as a future feature.

Some caveats:

  • Sounds generally don’t come with metadata that are useful for observations, like when the sound was recorded (vs. when the file was created), so importing a sound will give you a very empty observation. So even if you’re using an external recording app in the field, I would import it as an observation immediately to get the datetime and location right.
  • In order to write sound files recorded in the iNat app to a place you can access them from other apps, we have to register them as audio files with the operating system… which means some music playing apps, like Google Play Music, import them automatically. Play Music does this with sounds recorded in RecForge as well, so I think this is a trade-off we have to live with, unless people are ok with sounds not being accessible from outside the iNat app.

Some questions:

  • I suspect there will be some problems with AMR-formatted sounds. Still testing that.
  • The new observation slide-up menu is now a lot bigger. Is that annoying? For me it’s certainly still a one-handed operation, but I find myself having to think about what option to choose.
1 Like