Posts Tagged ‘sound’
Here, I conneced a solar panel (via a transformer) to a sound interface as if it’s a microphone, to reveal the subtle pulsing and filckering of various light sources. If you don’t like 50 Hz, this video isn’t for you.
Thankfully, the infrared light from my camcorder is apparently very clean (not pulsing), so I can use that to see things in the dark without affecting the sound.
The transformer is just designed to convert 230V AC to 12V DC, so its audio properties are not very good (it muffles things a lot). Ideally, I’d be using an audio transformer that’s designed to sound good, but this is all I had available. I am using it to remove the DC current that the solar panel makes, because I don’t fancy putting 17.5V into my Quad-Capture (sound interface)’s mic input. I originally tried to make a high-pass filter to remove the DC, using a capacitor and resistor, but it only worked until the capacitor became fully-charged, at which point the sound faded. It was much clearer-sounding than the transformer, but there was also a huge amount of background noise.
I want to revisit this idea in the future, especially to take it for a drive at night, listening to the street lights and car lights (since modern cars use PWM to dim the tail lights).
A quick look inside a Yamaha KX-393 cassette deck from the 90s, and demo of Dolby noise reduction. That damn tape counter gives away all the times I cut out my failure to speak properly. =P
Headphones are recommended for the noise reduction demo.
The waveforms displayed while Dolby is selected are simulations – versions of the original audio processed by a compressor/expander. In reality, Dolby mostly only affects the treble (as you can hear), since that’s where most of the tape hiss is, so you wouldn’t get big low-frequency waves, but hey, it’s easier to visualise this way.
My usual video editor did not feel like working, so I made this entire thing in Avisynth – it’s like coding, but for video. Please kill me now. Well, I used VirtualDub for the cropping out of all the dead air, my failures to speak, and misinformation which I said by mistake. On the plus side, I learned a lot of stuff by editing this way (such as how badly Avisynth is designed regarding modifying audio). Also, I didn’t have to screen-capture anything to get those waveforms – they’re being made in realtime by the Waveform plugin, which is processing audio from different Dolby simulations which are also being made in realtime by SoxFilter‘s “compand” function.
This video didn’t turn out as well as I would’ve liked – from the poor view of the mechanism to the incomplete demonstration of the functions and different tape types, and the fact that the only time I could record this (free of disturbances and noise) was a 45-minute slot was when I was half-asleep. So, if people are interested, I might re-visit this.
With all the old technologies on my blog/YouTube channel such as a dot matrix printer, FM MIDI synth, SC-88Pro, and now a cassette recorder, perhaps I should rename this place to “SomethingRetro”. There’s an old VCR here just waiting to be opened, too…
Or: How not to solder / How to annoy people by saying “can” as many times as possible.
These Superex Pro-B VI studio headphones from the 1970s belong to my grandpa, and sound amazing, but only when they work. Which, unfortunately, was not very often. I looked around online, and it’s apparently fairly common for the capacitors to die with age. So I replaced each (0.0025 uF) with the closest value I could get hold of (0.0022 uF).
Let-down noticed after a few hours: It didn’t fix the problem. But at least that’s two components that should last longer now. But if it’s not the capacitors then it may well be the custom-wound transformers in each ear, which are obviously not made anymore. Oh well, it gave me an excuse to make a casual camcorder/chatty video for the first time in a while.
This version has just a few little improvements. Firstly, the I’ve removed the title bar and border from the “Picture Waveform” window. You can move the window by clicking anywhere on it and dragging. Right-click to move it to the top-left of the screen. This lets the picture fully cover your entire monitor if you use a picture that is the same resolution as your monitor.
The other changes are to playback via the internal PC speaker.
The two old PWM methods have been combined into one “PWM – Software” method. The old, optimised “unscaled” method is automatically used if volume is set to 100%, and no longer clips. A new “PWM – Hardware” method gives a more stable result (less background noise) especially on slower CPUs, and is also louder. The PWM is controlled by a timer on the motherboard instead of by the CPU. Finally, the volume control now works properly and can give a big boost to the sound level without simply adding distortion (the waveform is no longer shifted off-centre internally). This can massively improve the signal-to-noise ratio, drowning out the background noise. By the way, setting the process priority to a higher level on Task Manager also helps reduce the background noise a lot. Oh, and tooltips have been added to some controls on this window – you can hold the mouse pointer over them to see some more info.
You can grab this new version from here (1.87 MB).
Waveform Display should now run on computers without an EasyLase installed again (the last version would crash on startup on such computers). Also:
- The size of images when bending the waveform into a picture is no longer limited to 640×480. Of course, bigger images require more CPU time.
- Parallel port output works again (it was accidentally left disabled in revision 19 again).
- More effort is made to keep as close to 60 FPS as possible, instead of the frame rate dropping to half if a frame isn’t drawn quickly enough. As a result, more CPU time will be used, but the animation should be smoother.
NOTE: You may need to run “Fix DLL OCX.exe” before this new version will run, as a new DLL file (vbalHTmr6.dll) is now used for timing the drawing of frames.
The following changes to pitch detection were also made in the last version, which most people were not able to run, which I forgot to mention before:
- Detected pitch should be less likely to jump up/down by a fifth-note (7 semitones, 150% of the frequency).
- Added an experimental option for pitch detection: “Link to waveform’s horizontal scale”. This attempts to use the knowledge of the pitch of the sound to make the waveform display more stable. More specifically, it stretches and shifts the waveform horizontally so that only 3 cycles of the waveform (at the detected frequency) are shown.
Please grab the new version from here (1.87 MB).
This release focuses on the PC speaker. You can now use the PC speaker even on Windows 7 or Windows 8, and even on 64-bit Windows! Previously, it was only possible on Windows XP or earlier. It also gives you the choice of three different methods of PC speaker control. When ticking the checkbox to enable the PC speaker, options that allow the best sound will automatically be selected. When unticking the checkbox, the options will automatically be reverted back to how they used to be.
You will need to run this version as an administrator (right-click the EXE file) for the first time, if you have never run it or BaWaMI before, so that it can set up the driver for accessing the PC speaker. (Waveform Display now uses the same driver as Bawami.)
NOTE: Laser projector control is not possible in this version. If you want to output to an EasyLase, please continue to use revision 18.
You can download this new version from here (1.90 MB).
I decided to modify my phone’s USB headphone cable to turn it into a normal headphone socket. Now I can connect anything I want, instead of being stuck with horrible things that just fall straight out of my ears!
Yes, this is an old phone, and yes, this isn’t complicated at all (although I suck at soldering), but oh well.
This release fixes parallel port output, and adds an option of which parallel port address to use. The standard addresses 0378 (LPT1), 0278 (LPT2) and 03BC (LPT port on an old graphics card) are available.
I had left the parallel port output disabled by mistake again, while testing revision 16…
This release fixes the bug where the text of the last file in the playlist would never return to normal (black, not bold) after having become red or blue.
Here’s the usual download place.
This is a big update, with the most notable change being playlist functionality. I’ve also sorted the playback position bug when looping audio files (until you disable looping…), and added tooltips to most controls (hold the mouse over a control such as a checkbox to see a little explanation about that control). There are also changes and bug fixes related to pitch detection (revision 14 broke logarithmic scaling while pitch detection was enabled, but it’s fixed again). I removed some controls that were broken or never even used in the history of the program, and added one. Full details are a long way below, after the page break below, which is after my waffling about the playlist system.
Here’s the usual download place.
(Click it to see full-size image)
Since the new playlist system introduces some new things, I’ll briefly go over it here. When you browse for an audio file, you can now select more than one (by holding Shift/Ctrl). If you do this, the Playlist window will appear with the queued files in a list. You can drag-and-drop more files to this list without having to use the old “Browse for audio” button. There are 2 special coloured files in the list: currently-playing and next (pre-loaded). At any time, you can double-click a file in the playlist, and the program will pre-load it as the “next” file to play, just like when you browse for an audio file while one’s already playing. However, by default, the program will automatically load the file following the currently-playing one as soon as possible, turning it blue, so that there will be no gap between the end of the current file and the start of the next file. If you like, you can set it to do this only when the current file finishes playing, so that the waveform displays won’t freeze during playback, or you can disable automatic loading entirely. That is the basic idea of the playlist system. Waveform Display has always handled 2 files at once, but it was never possible to see which 2 files you were dealing with until now.