How to feed Winamp vis plugins with data? - plugins

Does anybody have any idea what is the right way to feed sound data to Winamp visualisation plugin, so it could produce nice output? I succeded in feedin it the wrong way. Plugin is producing output, but it does not follow the music.

By default, the visualization only follows winamp's sound output. You can change it to use an external audio source.
Goto the menu: Play > Location
Type: linein:// (make sure line-in is selected as the recording source for your OS)
Start the input sound source
Start the visualization!

Related

Download Result of Source Destination (Web Audio API)

I'm building a tool to edit audio with the Web Audio API.
Here is where I'm stuck:
...
source
.connect(gainNode)
.connect(analyser)
.connect(analyser2)
.connect(audioCtx.destination);
};
What I've written (which ends with the code above) successfully allows the user to upload a file, apply effects, and listen to it on play(). How would I then allow the user to click a button to export the results to a WAV file?
I've tried several methods online that have not worked for my use case.
Please let me know if more code is needed. Thank you for taking a look!
If you want a WAV file, I think you have to do that yourself. WAV files are quite simple. In this case, you'll need to add either a ScriptProcessorNode or AudioWorkletNode just before the destination to capture all the audio and convert it to a WAV file that can be downloaded.
If a compressed file is ok, you can look into MediaRecorder to save the data for you.
I ended up solving this by writing an entirely different script to download the file using OfflineAudioContext.
My original script plays the audio with effects, and the second script downloads it with the same effects. Now to figure out why there is latency on the effects while using OfflineAudioContext.

VLC command line to stream/convert/record from an rtsp stream

I am using Lubuntu linux 18.04LTS, VLC 3.0.8 trying to record via vlc a video stream from a security camera and so far have not had success. I tried using the GUI "Convert" but despite choosing mp4, it seems to only play back as an mp3. Then I thought the command line might work, but I haven't found a clear tutorial in how to set up the right parameters. The closest I've gotten is this, which is:
vlc -vvv rtsp://#192.168.0.xyz:XXXX/videofeed --sout="#transcode{vcodec=h264,acodec=mpga,ab=128,channels=2,samplerate=44100,scodec=none}:file{mux=mp4,dst=/media/my/external/hard/disk/yard-01.mp4,no-overwrite}" :no-sout-all :sout-keep
The problem is the file created is not usable/readable. Using Gnome MPV player, I get "Format not recognized." And it doesn't play. Xine seems to play it, but treat it as a silent audio file (guessing at that). When I look at the command line messages, I get a long scroll of "mp4 mux warning: i_length <= 0" which, I am guessing, cannot be good.
I'm the first to admit I don't know much about the options in that line above...just cut them from other folks' posts who said they got this to work. Is there something I can tweak above to make it record video properly? It doesn't have to be mp4, just something decent that will allow me to get a good feed for security purposes.
I should add that the streaming part works fine in VLC. I have a nice feed whenever I want via live streaming. So I know the hardware and access part is fine. It's just the transcoding that I think is going awry.
Any and all help greatly appreciated. Thank you in advance!

Record audio, add effects, then save result to a audio file

I am having trouble doing what the title said. My goal is to be able to add any desired effects to your recording, save the modified audio, then send that to a server.
I have searched the fourms and came across these threads:
viewtopic.php?f=7&t=13029&p=45362&hilit=saving#p45362
viewtopic.php?f=7&t=12660&p=44586&hilit=saving#p44586
viewtopic.php?f=7&t=13178&p=45746&hilit=saving#p45746
After reading those, I see it is possible to save the modified audio, but can it only be saved as a wav? Like I said after it is saved it will be sent to a server, so size is a big deal and wavs are relatively big compared to other formats. Ignoring that fact, I tried to implement FMOD_OUTPUTTYPE_WAVWRITER and I cannot get that to work; are there any good examples of using it? I looked though the examples in the library but I didn't see any..
But the basic structure of the app is to record, turn some switches off and on to see what filters you want, preview it, then press a button "Save" that will save it. What would this save function consist of?
Any help appreciated, thanks.
Using FMOD_OUTPUTTYPE_WAVWRITER is fairly straight forward, you set the type via System::setOutput, specify the output file via System::init extradriverdata. The extradriverdata should be an absolute path to a writable area of the device such as the documents directory. After you have finished playing, call System::release and the file will be complete.
The other option for recording wave data with effects is by creating a custom DSP and connecting it to the channel playing the recorded data. You will then get regular callbacks giving you float data that you must write out to disk yourself. You can find examples of DSPs and writing wav files in the dsp_custom and recordtodisk examples respectively.
Finally note that FMOD doesn't come with the facility to write compressed audio to disk, you will need another API to achieve this goal.
You can save as an AAC file via the ExtAudioFile API.

How to make Red 5 media server stream different formats of files?

I need to stream both audio and video files from the Red 5 server. By default Red 5 only supports flash, but I need to add support for other file types too.
I need to dynamically (on the run time) transcode the media file in one format to desired formats as per client request. Is it possible ? How to go for it ? I have been reading of vlcj project, but dont know how to integrate them.
If audio / video transcoding is not possible in Red 5, is there any other open source alternative I can look forward to ?
Any help will be really appreciated...
Thanks !
Check out the StreamableFileFactory bean inside your red5-common.xml, to see what kind of files can be streamed by default (flv, mp3, mp4, m4a). If you copy any of these files in your red5 service's streaming directory, it will be able to play it.
If the source you need to stream is in different format (like youtube uploads), then the best way for you to go is ffmpeg.
You build it to your server, then
from inside your red5
service check whether there are any
unsupported files in your streaming
directory (should be a scheduled job), and
if so, use ffmpeg with the proper
parameters to convert the new files
to streamable formats.
that's it.

Artifact on playing a audio file on a phone from a Asterisk server

I have an Asterisk SIP server. When I playback an audio file (.ulaw file, compressed using ulaw) I hear a noticeable click (or sound artifact) before the playback begins. This "click" is not in the actual audio file and happens at the start of every Playback command in the ael script. Should I be using a different format, is this a codec issue, how do I resolve this issue?
Here are some of my files:
http://kscserver.com/hello.zip
http://kscserver.com/thankyou.zip
Without looking at the file, it's hard to say, but if the first sample of the file starts at some value other than 0, you may get a click (since the output will go from 0 to N in one sample - a broad noise impulse). If you don't know a sample starts "clean" it can make sense to ramp it in volume-wise, or search the uncompressed data for a zero-crossing and start there.