I want to make any song sound like it's being played on a gramophone record in the 1920s. What specific filters would I apply to make this happen?

I'm looking for technical details, not some magical program that does it for me. I'm trying to create a programming interface that does this, so a user interface doesn't work. I'm a Math major with understanding of FFTs, but I don't know all the lingo.

  • $\begingroup$ I'm not entirely sure what you are asking here: do you want details of algorithms? or is your question about the architecture of software? (implied by you asking for a 'programming interface'? $\endgroup$ – Marko Jan 16 '13 at 10:00
  • $\begingroup$ Ohhhh dsp. I was wondering if there was an exchange for that. $\endgroup$ – Jonathan Ong Jan 16 '13 at 10:15
  • $\begingroup$ Well I plan to use sox. But I need to know the filters and effects to use. $\endgroup$ – Jonathan Ong Jan 16 '13 at 10:15
  • $\begingroup$ You can also overlay vinyl recordings. $\endgroup$ – Emre Jan 16 '13 at 17:27

I don't know the precise formula for 1920's gramophone, but this is the general process for audio antiquing and should get you started. Depending on the exact settings, you can get vinyl, telephone, etc.

  1. Convert to mono.
  2. Add white noise.
  3. Bandpass. I would start with a HP at 80 HZ and a steep LP at 8 kHz, but that's a guess. You'll have to use your ears until it sounds like the gramophone. You should try Chebychev and Butterworth filters if available.

You may also want to add "clicks" and "Pops". You can model those in a variety of ways. One way to start is with a Dirac function and filter it with bandpass functions. Depending on how strict your bandpass in step three is, you might be able to just add the clicks and pops as Diracs at the same time you add white noise, but then all your clicks and pops will sound about the same, which isn't very realistic.

Some other things you may want to try for more realism:

  • applying compression and saturation after step 1.
  • applying wow and flutter emulation either before step 2 or after (or, for most accuracy, two stages of white noise before and after the wow and flutter emulation).

You may want to ask on https://video.stackexchange.com/ to see exactly what filter settings they would recommend for 1920's gramophone in particular.

For tips on implementing basic audio filters, I have a blog post: http://blog.bjornroche.com/2012/08/basic-audio-eqs.html

| improve this answer | |
  • $\begingroup$ thanks! best answer i've gotten so far. and you speak my language, math! $\endgroup$ – Jonathan Ong Jan 16 '13 at 21:43
  • $\begingroup$ There exists an article and accompanying web page aiming exactly at what you are trying to achieve. $\endgroup$ – applesoup May 2 '16 at 13:39

Bjorn Roche gives most of the important points in his answer. Though what is an important consideration when modelling like this is early vinyl gramophones did not just create that "old" sound but also early microphone technology that created the recordings, which was very band-passed by todays terms. A lot of the energy in the signal can be found between 400-4000hz. I would look at microphone response charts (if you can find them!) to be more precise.

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.