Hacker News new | past | comments | ask | show | jobs | submit login
Ask HN: Best way to store, index and categorize audio recordings
16 points by growse on March 2, 2024 | hide | past | favorite | 7 comments
As my kids grow up, I realise I've got a bunch of sound recordings taken on my phone, usually of them saying or doing something hilarious. Right now, it's just a big directory where each filename is a timestamp, but I figure there must be a better way to make these more accessible & searchable.

A bit like lightroom/darktable helps organise and add metadata to photos, is there an equivalent for sound files?

(I'm almost tempted to crack out some sort of machine learning thing to transcribe and then tag each file, but maybe this already exists?)




I am not an expert on this but I think regardless of the tools or platforms being used to organize the files, more important is likely going to be the MP3 metadata added to the files with date, participants, genre, comments, etc... so that you can easily switch platforms later and don't have to rely on saving some ever-growing database. Maybe you could also get the kids to give you a comment or quote to also add to the MP3 metadata.

The only platform I have used to organize and share music is Ampache [1] but that is likely overkill for your intended purpose. I don't know what the best tools would be to add the metadata to MP3 files however.

[1] - https://github.com/ampache/ampache/wiki


I would agree with this - it's the most standardised way we have. Most of the prescribed fields are designed to work for contemporary popular music, but a subset of fields could be used (and if you look into a lot of the definitions they are more abstract than they appear at first).

On top of that, standard data hoarding management applies:

- Take backups. - Try to record in lossless forms if you can - better flexibility later if you don't throw data away.


EasyTag is a great, free program for adfingvmeta tags to audio files.

https://flathub.org/apps/org.gnome.EasyTAG


You could start with a simple experiment using DeepSpeech[1] as an automatic transcription tool (I assume these recordings are non-public, so you'd prefer a local service instead of a cloud solution, which detection rate would probably be better).

After having the text auto-transcribed into a simple txt file, I would check the quality and do some manual corrections, where required.

Then import the transcribed text into the audio file metadata (e.g. Lyrics, Description or Comment, depending on your metadata format).

The relevant fields I would look at are:

  Description
  LongDescription
  Comment
  Lyrics
  Group
  Title
  Album
  Composer
Depending on the length of the recording you could also add chapters. Here is a nice audio book guide with some further ideas: https://github.com/seanap/Plex-Audiobook-Guide?tab=readme-ov...

Now you should have access to the metadata via audio player - maybe even a search would be supported.

[1]: https://deepgram.com/learn/guide-deepspeech-speech-to-text


If you're doing a pipelined bulk processing pass to add metadata tags after extracting them via Speech to text, or have delimited notes in a text file, or ... etc.

You might find ExifTool useful.

It's pure commandline (with a few third party GUI's IIRC) multiplatform and purpose built to display, edit, add media tags to all sorts of AV files.

https://exiftool.org/


I like a low-tech approach for this kind of thing. I'd just improve on what you're doing by coming up with a directory structure (no more than two levels deep), and descriptive filenames along with the timestamp.

maybe:

birthdays/joey/2020-01-28-cutting-cake.mp3

holidays/disneyland/2022-02-13-roller-coaster.mp3

...


Every time you want to search your voice clips, do it in a text file or notes on your phone.

If that file is empty in 6 months then you’ve just saved yourself some time and effort and can just delete the files.




Consider applying for YC's Fall 2025 batch! Applications are open till Aug 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: