Hacker News new | past | comments | ask | show | jobs | submit login
A comforting lie (dansdata.com)
92 points by colinprince on Dec 29, 2014 | hide | past | favorite | 18 comments



The comfort noise that he is referring to is the white noise that is intentionally introduced by modern digital cell phones. Most cell phones have a CODEC that will detect silence and rather than wasting valuable bandwidth on nothing, a silence packet is sent that says something like "quiet for the next 250ms" or something like that. The GSM specification for the AMR CODEC provides for a feature called comfort noise. It turns out that on the other end, if the listener hears total silence, they worry that the connection was lost. So instead it will provide white noise, specifically +/- 2048 (of a 16 bit word). Since a pseudo random number generator on the phone is typically used, it is making white noise, similar to the white noise you hear on an old fashioned analog phone or as the author references, a radio tuned to no station and you hear random static a percentage of which is cosmic MW background radiation from the big bang. It is ironic that with all that digital technology and people still like the comfort of white noise in the background, not complete silence. Of course the carriers could instead use some extra BW and transmit the actual background noise of whoever you are talking to.


A little bit more advanced, but specifically the AMR codec also provides a noise colouring packet to be sent. This packet requires far less bandwidth than the actual voice codec packets.

This packet describes the background noise that is present at the sender, so that when speach resumes, the natural background noise and the fake comfort noise sounds the same and so there is no discontinuity between the two.

To give an idea of the bandwidth requirements, the actual data portion every 20 milliseconds of speech audio is ~14 Bytes, noise colouring ~6 Bytes and silence packets is 1 Byte. It might be implementation specific though.

edit - sorry it was not clear, but during silent periods the silent packets and noise colouring packets are intermixed in a ratio of something like 6 to 1.

So a typical transmission might look as follows:

V V V V V C S S S S S C S S S S S C etc.

V - Voice C - Noise colour S - Silence


I hadn't made the connection before, but this is basically how many industrial sensors work. They transmit currents of 4 to 20 mA, with 0 mA likely indicating power loss or a short.

The goal is essentially the same: make it easier to tell if the line's gone dead or not. I think it would be interesting if there could be a good use for comfort noise in these signals, too; at least for me, I've watched for noise levels to shift to figure out if something was amiss.


> It is ironic that with all that digital technology and people still like the comfort of white noise in the background, not complete silence. Of course the carriers could instead use some extra BW and transmit the actual background noise of whoever you are talking to.

"Comfort noise" is actaully useful to signal if the call (or the audio channel) is active. Otherwise people ask each other "You still there? Can you hear me?" hearing the noise indicates the channel is still open.

As for carriers transmitting the actual background noise, it would increase bandwidth requirements. But I am not sure if I would even like to hear the background of the person talking. It could be distracting (even if it wouldn't make a difference for bandwidth consumption).


"Of course the carriers could instead use some extra BW and transmit the actual background noise of whoever you are talking to."

Another effect is the overall system would get more complicated and latency would increase because you'd need some fancier echo cancellers.


It's less complicated and unrelated to echo cancellation; you just tell the transmitting codec to always encode whatever audio you've given it, rather than detecting silence.

(Echo cancel is usually in the local audio path before data is passed to the codec. So the outbound codec would hear silence rather than an echo of inbound audio. At least that's my experience of working with PJ-SIP)


And my copy of Linux Mint still uses the shutter-click-motor winding sound for screen shots... Since the photos get dropped in the Pictures folder, it is one of the few ways I know it happened, unlike the copy of Ubuntu I am running on another box that shows the Save As interface.

So we developers keep adding the comfort noises, as well.

At least Mint didn't use the AOL's "File's done" announcement :)


"shutter-click-motor winding sound"

Anecdotally my kids are rapidly approaching teenage years and they have no personal experience with film cameras, or floppy disks. Most attempts at real world icons fail miserably because 1) multicultural 2) one glyph can't explain anything complicated which is why our writing uses alphabet and words.

Notice that however poorly point 2) was written, it contained 15 words and many letters, not a iconic graphic interpretation resembling mating centipedes on a teacup, or whatever GUI icon would be appropriate.

Its almost 2015, the GUI concept is dead and starting to smell, just some haven't noticed yet.

Nothing in IT is ever new and everything in the rotating wheel comes back into style and I GREATLY look forward to the inevitable return of simple text menus as the dominant UI.


Remember that it's not always about comfort, sometimes it genuinely is about usability. Consider Skeuocard [0]: it's much easier to enter information when the place you're entering it looks like the place you're reading it from.

[0]: http://kenkeiter.com/skeuocard/


One "comfort noise" that Just Ain't Right is the fake engine noise they pipe over the speakers of cars that have a lot of sound proofing, etc.

It gives you feedback (which increases safety) but it raises trust issues.


The (well-heeled) car enthusiasts have nothing good to say about the engine sounds that BMW plays through the car's speakers.

http://www.cnet.com/news/bmw-m5-generates-fake-engine-noise-...


I once tried to start a car that was already started because its engine was so quiet.


Note that in current gas/electric hybrids, the concept of "started" loses most of its meaning. The system as a whole can be "on" or "off", but doesn't intrinsically make any sound that distinguishes the two states. The gas engine subsystem will get turned on and off at the whim of the controller; if the engine is up to operating temperature and the battery's charge level isn't too low, the controller will turn off the engine whenever its power isn't needed (stopped at a stoplight, driving very slowly, coasting down a hill, etc.). On some models, it's also possible to press a button to tell the system "delay starting the gas engine as long as possible". Hence the concerns about hybrids "sneaking up" on pedestrians.


Only once? You must be a fast learner!

I learned to drive on my parents' then 10-year-old car that never let you forget when it was running. When I started renting cars, it was quite a shock to me to find how quiet modern cars are.


On this, I've had taxis sneak up in me (small streets) because they were hybrid and were driving slowly. I , for one, like that fake car noises are a thing. Maybe a new sound would be necessary though


Maybe some kind of red flag could work? Carried by a person ahead of the car? ;)


Sony's Magic Cap had a skeuomorphic interface as well. I always wanted to try it, given that Bill Atkinson was involved, but I never had the chance.

The Wikipedia page has a screenshot for those who haven't seen it: https://en.wikipedia.org/wiki/Magic_Cap


When I first saw them I assumed Magic Cap was also influential in some early Android pre-1.0 concepts.

Rubin was an engineer on Magic Cap either at General Magic or when it was still Apple if I recall correctly.




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

Search: