[update] node-red-contrib-sox-utils : beta

Continuing from

Bump to 0.2.6

I added the possibility to convert raw audio files and buffers with the convert node. For this to work you need to include the necessary audio header information that sox needs to process raw audio as msg properties. The format of this is described in the nodes info panel. This can also be used to add wav headers or process raw audio to be played by the play node by routing it through the convert node first.
I will look to publish the node to npm before the end of the year.



Bump to 0.2.7

  • fixed a condition where the node would stall until restart if the tmp file was not available after conversion / recording ended
  • updated the readme to include info about raw conversion and passing additional effects/arguments in msg.options
1 Like

Update to 0.3.0

  • this update adds two major feature enhancements to the nodes:

    • The record node can now record from a stream of raw audio chunks that are send to it. Just select the option from the source dropdown and the node automatically changes to input mode and a menu section where you have to enter the necessary header information for the audio becomes available. This can be very useful if you are streaming the raw audio from another machine or are you using some other way to receive the stream in nodered.
    • the play node has also gained the functionality to playback a stream of raw audio, for example to listen in on levels while recording or establishing a Walkie-Talkie function between to nodered instances. This feature is exclusive to the normal file playback options. So these become unavailable if the stream playback option is selected. Similar to the record node a header section will become available if selected and needs to be filled in for the stream processing to work.



Bump to 0.3.1

  • fixed a bug/regression in the convert node that let to the auto guessing of the file format not working for buffer input
1 Like


it would be great if you publish this great repository so it becomes available in the node-red palette.


1 Like

Update to 0.4.2

This Beta release marks a milestone towards a release on npm.
It has added several new features:

  • the record and play node used to only work if the nodes were able to retrieve a list of input/output devices. Now I added the functionality to still use it in this case (inspired by @janvda) with either trying the default, raw audio chunks through the node input or with a manually entered device, which brings me to the next feature:
  • you can now choose to enter a input/output device manually should the one you want to use not be available or when you are working with one of the Linux audio servers like pulseaudio/Jack or something like oss. So anything that is not straightforward ALSA devices.
    You have to enter the device as per the sox documentation. so for example: -t alsa hw:1,0.
    This brings me to the last feature:
  • highly experimental support for platforms other than Linux:
    • Not tested and only available for the record node right now
    • other than default you have to use the manual device input option, so for example on Mac:
      -t coreaudio "yourDevice"
    • non of the options that need tmp files are available right now. In the record node this means that you can’t output a whole wav buffer after recording at the moment.

I would be really happy if somebody could test this on a Mac/Windows with sox and node-red installed as I have neither available and would really like to know if the record node works there before I move to adapt the other nodes too.

Thanks again, Johannes


This topic was automatically closed after 60 days. New replies are no longer allowed.