Thursday, July 19, 2018

loudness with reaper - dB and RMS and LUFS

Found an interesting discussion on Reaper forums regarding RMS normalization to particular presets - https://forum.cockos.com/showthread.php?t=165331

In particular, the advice given by Michal is, "use actions from SWS.

SWS: Set RMS analysis/normalize options
Here you can set your RMS level target, it is one time operation..

SWS: Normalize items to overall peak RMS
You can select all items on the track and run this action for RMS normalization to predefined level.."

Of course, right now I'm not likely to try any of these...

Monday, July 09, 2018

troubleshooting streaming delay on Google Home device

While testing our Google Assistant action for our audio streams, SC reported that
 I'm still seeing ~100 second delays even on this stream on the Home device. On my phone/browser, it plays instantly.

I tried changing the burst-size but initially did not find any difference - 

64 kB  = 65535   = 100 sec delay - this is the default burst-size for icecast
128 kB = 131072  = 100 sec delay
256 kB = 262144  = 100 sec delay
512 kB = 524288  = 100 sec delay
1 MB   = 1048576 = 100 sec delay

Then it turned out that I was using a relay for testing, and on-demand was set to 1. After setting the relay's on-demand parameter to 0 (so that the relay is always ready and doesn't have to start after a new connection is made),  

128000 = started within 4 seconds!
64000  = 100 sec delay

Repeated this three times, waiting 100 sec + each time after restarting the server. Seems to work well with 128000. So, set this as the burst-size for all our streams. 

Sunday, July 08, 2018

Google Home Mini - a mini review

As long as you don't have inflated expectations, this device does a pretty good job. But my initial problem was that I had higher expectations from Google :)

Expectation - I thought "Google Home" should be able to do a google search, like
OK google, do a google search for callisthenics
Sorry, I don't understand.

Reality - the device needs the prompt "tell me about", or "what is" - like
OK google, tell me about callisthenics.
According to wikipedia, callisthenics is.... (the first sentence only.)

OK google, what is a meteorite?
etc.

OK google, tell me more about callisthenics.
Sorry, I don't know how to help with that yet.

So, it can't read more than the first sentence.

It can tell jokes and do trivia etc, as described in various posts elsewhere.

OK google, tell me a joke.
(it tells a different one-liner every time.)

It needs an exact match for playing radio stations. For example,
OK google, play all india radio on tunein
Sorry, artists aren't available on tunein.

OK google, play All India Radio Classical on tunein
Sure, here's All India Radio Classical on tunein - (plays immediately).

Unfortunately, the music player in the API seems to buffer for quite a while, so currently, if we do
OK google, ask Radiosai to play bhajans
Playing radiosai bhajanstream - (plays after 100 seconds!)
We will try to fix this. It appears this is fixed now, by increasing the burst-size to 128000 on our server.

The radiosai action is a work in progress, but currently, things like this work -
OK google, talk to Radiosai
Sairam, welcome to radiosai etc...
Search for Climate Change
It appears your current device does not have a screen, so here's the first result... etc
(plays immediately).

OK google, increase volume to 50%
works when radiosai or some other agent is not having context.

The touch interface on the device has recently been enabled. So, long touch on either side makes it pause or resume, a tap on the left side makes it reduce volume, and a tap on the right side makes it increase volume. This was not immediately obvious.

It can do more complicated things, but within a limited repertoire. For example,
OK google, tell me how to make idlis
(reads out ingredients and steps one by one, saying let me know when you want to continue, etc.)
OK google, continue
Nothing is playing at the moment
OK google, next ingredient
(reads out the next ingredient.)
OK google, next.
(reads out the next ingredient.)
OK google, next.
(Reads instructions one step at a time, we have to say next for the next step.)
OK google, previous step
(Reads the previous instruction)
(Asks if we want an alarm to be set for required time, etc.)

Apparently there's a 640 character limit for each interaction from the device. So, reading out a large page would need user interaction like the above series of steps for the recipe. Wikihow works in a similar way.

OK google, wikihow
Hi, how's it going?
Bake a cake.
Hi, how's it going?
Wiki how to bake a cake.
I didn't get that, can you tell me what you were looking to do one more time?
(never got it to work.)

It can play news, weather forecast etc. - OK google, how is my day?

And for those with home automation systems, it can be set up to put on lights, play something on the TV with Chromecast, and so on.

So, some people will like it, especially if they memorize the phrases needed for the device to do the required action. But others will be frustrated by it. Examples can be seen in the comments in the article below,


Edit - and here is a "comprehensive list which is periodically updated" from CNET, of all Google Home commands - https://www.cnet.com/how-to/google-home-complete-list-of-commands/

Tuesday, July 03, 2018

packet sniffing wifi

Packet sniffing on a wifi network is a bit more complicated than using a wired network and a hub. Promiscuous mode alone is not enough -

https://osqa-ask.wireshark.org/questions/61656/promiscuous-mode-not-working

https://wiki.wireshark.org/CaptureSetup/WLAN#Monitor_mode

Then the packets have to be decrypted.

https://wiki.wireshark.org/HowToDecrypt802.11

For that, if using WEP, the WEP password has to be converted to the Hexadecimal key -
http://corecoding.com/utilities/wep2hex.php

change Google Home mini wifi settings without Google Assistant app

Trying out a Google Home Mini device. For setup, it needs the Google Home App on an Android or iOS device. For changing certain settings, it needs Google Assistant to be enabled on your phone. Since my current phone runs an earlier Android version than 5.0 which is the least required for Google Assistant, I am unable to change language of the device, unable to change the voice, and so on. Even changing the wifi network needs a different procedure than the one listed on google support.

So, my procedure, found by trial and error, was:

1. Open the Google Home app
2. Tap on the devices icon on top right corner.
3. If there is a card which says "your speaker name" speaker needs setup, and a setup link, you can use that.
4. Else, click on your device name, if it is listed, and the three dots on top right.
5. Choose reboot.
6. From the list of linked devices, unlink the device for which wifi needs to be set up.
7. Tap the back button to go to the home screen of the Home app.
7. Then the app would say that it has found one device which is ready for setup.
8. Click through to set up, including linking to an account and wifi settings.
9. When using a wifi network which was previously configured, it does not ask for the wifi password again.