Re: [PD] direct connection from pd to webrowser, low latency
The software works by taking a 'feed' off your default playback device on Windows so its really easy to setup (to clarify, I didn't work SoundWire, I only used it for this project). Have Pd running as you would and just make sure the the SoundWire client is running. On the phone you can get the app to automatically search for the client IP or you can manually enter in the address. On connecting with the server it automatically starts playing back sound. I can't remember the limitations of the free version, but the paid app allows for fine tweaking the compression settings and buffer sizes. I didn't make exact measurements of the latency but it must have been about ~150ms. If you have access to an Android phone I suggest you give the free version a spin and see if it lives up to your expectations. (iOS has a similar app called AirPhones, with very very lot latency but it doesn't allow multiple connections to the server AFAIK). -Varun pd-list-requ...@iem.at wrote: yes please! that sounds perfect. i mainly need to know to bit that serves up the audio at low latencies. ive got the icecast server stuff working wirelessly to multiple devices but the latency is killing me (10-5 sec). would it be possible to use your server directly to the browser? currently, i simply need a low latency stereo audio instance to come on when they log into my network. that is it (for now) i have alot of other things i want to build around it, but i really need to know 1. what format does pd need to output to useful to... 2. a way to serve said audio out from my wireless router 3. instant sound output as soon as they login. so far, i have investigated web audio api and just started digging into the idea of feeding the audio feed as a data dump so i can at least see that it is transmitting anything-garbage-to the browser, then i can figure out how to deal with it after that is sorted. i am playing with netsend~ right now with mixed results (server connection issues). any insight is much appreciated. Onyx -- www.onyx-ashanti.com ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] direct connection from pd to webrowser, low latency
On 29/04/13 01:36, o...@onyx-ashanti.com wrote: I implemented a version of an idea that had been done several times in the past ... a silent disco, where there are two djs playing to wireless headsets over 2 different channels ... with all sharing the same physical space. The result is quite fun, in our case it was in a public square and was all powered by people jumping onto bikes hooked up to alternators etc (well - I did have quite a large battery in the circuit just to be sure it wouldn't all wind down and get boring, but we did generate enough power almost all the time) was this using wifi? how were you able to implement it? was it a server type system or a broadcast system? might need to bike alternators as well to power this joint, lol. the audio side was just standard wireless hifi headphones, using lots of headphones but only two of the transmitters. The interesting part technically was the bike powered generators, but the 2 channel headphones dance floor and double DJ thing was lots of fun. Simon ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] direct connection from pd to webrowser, low latency
the audio side was just standard wireless hifi headphones, using lots of headphones but only two of the transmitters. The interesting part technically was the bike powered generators, but the 2 channel headphones dance floor and double DJ thing was lots of fun. ah, nice. very clever! would love to check that out! I may be making a bit of headway in looking at rtmp and hls streaming media servers like mist server and the rtmp module for nginx webserver. it accepts a raw connection to its input ports. my question now becomes, which of the signal capable network objects can work without an associated in~ object? i have been toying with netsend~, udpsend~ mp3streamout~ streamout~ and mp3cast~, which works with the icecast server, but the others return errors so far. i have the greatest confidence in getting the netsend~ to eventually work, but does anyone have any experience with the others in regards to sending their outputs to non-pd or max based inputs like network ports set up to recieve other data? Onyx -- www.onyx-ashanti.com ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] direct connection from pd to webrowser, low latency
onyx, I would also check out the latency in the browser audio player. I somehow suspect that is where you are acquiring the largest portion of buffers and latency. I'm unsure, however, if you can even access and set the incoming buffer there. If not, you might have to write your own audio player...which would defeat your purpose of using the browser in a cell phone. Flash does let you set the incoming audio buffer, ...but alas, many phones can't run flash. WebRTC might be the best option on the browser side. keep us posted! suerte -august. the audio side was just standard wireless hifi headphones, using lots of headphones but only two of the transmitters. The interesting part technically was the bike powered generators, but the 2 channel headphones dance floor and double DJ thing was lots of fun. ah, nice. very clever! would love to check that out! I may be making a bit of headway in looking at rtmp and hls streaming media servers like mist server and the rtmp module for nginx webserver. it accepts a raw connection to its input ports. my question now becomes, which of the signal capable network objects can work without an associated in~ object? i have been toying with netsend~, udpsend~ mp3streamout~ streamout~ and mp3cast~, which works with the icecast server, but the others return errors so far. i have the greatest confidence in getting the netsend~ to eventually work, but does anyone have any experience with the others in regards to sending their outputs to non-pd or max based inputs like network ports set up to recieve other data? Onyx -- www.onyx-ashanti.com -- http://aug.ment.org GPG: 0A8D 2BC7 243D 57D0 469D 9736 C557 458F 003E 6952 ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] direct connection from pd to webrowser, low latency
I implemented a version of an idea that had been done several times in the past ... a silent disco, where there are two djs playing to wireless headsets over 2 different channels ... with all sharing the same physical space. The result is quite fun, in our case it was in a public square and was all powered by people jumping onto bikes hooked up to alternators etc (well - I did have quite a large battery in the circuit just to be sure it wouldn't all wind down and get boring, but we did generate enough power almost all the time) was this using wifi? how were you able to implement it? was it a server type system or a broadcast system? might need to bike alternators as well to power this joint, lol. -- www.onyx-ashanti.com ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] direct connection from pd to webrowser, low latency
I recently worked a on a project where we wrote a custom OSC Android app that sent control data to the patch and an app called SoundWire that received audio on the phone and ran in the background. All communication was over a WiFi network we setup. Latency did obviously exist but it was manageable. The audio server app runs on Linux and Windows (no OSX unfortunately) and can have multiple devices connected to it. http://georgielabs.99k.org/SoundWireHelp.html I'd be happy to share more details if required. yes please! that sounds perfect. i mainly need to know to bit that serves up the audio at low latencies. ive got the icecast server stuff working wirelessly to multiple devices but the latency is killing me (10-5 sec). would it be possible to use your server directly to the browser? currently, i simply need a low latency stereo audio instance to come on when they log into my network. that is it (for now) i have alot of other things i want to build around it, but i really need to know 1. what format does pd need to output to useful to... 2. a way to serve said audio out from my wireless router 3. instant sound output as soon as they login. so far, i have investigated web audio api and just started digging into the idea of feeding the audio feed as a data dump so i can at least see that it is transmitting anything-garbage-to the browser, then i can figure out how to deal with it after that is sorted. i am playing with netsend~ right now with mixed results (server connection issues). any insight is much appreciated. Onyx -- www.onyx-ashanti.com ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] direct connection from pd to webrowser, low latency
On 27/04/13 05:38, o...@onyx-ashanti.com wrote: On Apr 26, 2013 10:08 PM, katjakatjavet...@gmail.com wrote: Hi Onyx, What is your aim, do you want to entertain your (physically present) audience via smart phones instead of PA system? Actually it a sonic space I want to explore. To play to people on their own personal bionic ear. Click and listen. The scope for experimentation intrigues me. Gestural binaural processing will be fun. I implemented a version of an idea that had been done several times in the past ... a silent disco, where there are two djs playing to wireless headsets over 2 different channels ... with all sharing the same physical space. The result is quite fun, in our case it was in a public square and was all powered by people jumping onto bikes hooked up to alternators etc (well - I did have quite a large battery in the circuit just to be sure it wouldn't all wind down and get boring, but we did generate enough power almost all the time) Simon ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] direct connection from pd to webrowser, low latency
On Sat, Apr 27, 2013 at 1:31 AM, Jonathan Wilkes jancs...@yahoo.com wrote: Btw-- are you sending compressed or uncompressed audio? Uncompressed, 16 bit ints. Compression requires analysis, introducing extra latency. I'm not using it in practice yet, as I still have to find (or develop) a solution for packet loss concealment. As of now, I use a cheap work-around for wireless monitoring only: an FM 'stereo' transmitter and receiver. FM stereo does not send over two frequency channels, therefore audio quality is suboptimal, not suitable for regular PA situations. However it may be suitable for 'silent concert' experiments in small venues. Onyx, is that an idea? Most cell phones do have an FM receiver. They only work with wired headset connected, functioning as antenna. As wired headsets can be cheap, just offer them for sale during the event. The good thing with FM is, it has zero latency. I got a LinexFM transmitter from here: http://www.linexfm.nl/ Rumors go that USA versions have higher transmission power than the ones sold in Europe. Katja ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] direct connection from pd to webrowser, low latency
If you are looking at the audience carrying smart phones.. I recently worked a on a project where we wrote a custom OSC Android app that sent control data to the patch and an app called SoundWire that received audio on the phone and ran in the background. All communication was over a WiFi network we setup. Latency did obviously exist but it was manageable. The audio server app runs on Linux and Windows (no OSX unfortunately) and can have multiple devices connected to it. http://georgielabs.99k.org/SoundWireHelp.html I'd be happy to share more details if required. -Varun -- Twitter: @ntkeep re-sounding.com http://re-sounding.com designingsound.org http://designingsound.org pd-list-requ...@iem.at mailto:pd-list-requ...@iem.at 27 April 2013 11:00 Message: 1 Date: Sat, 27 Apr 2013 14:13:14 +0800 From: Simon Wisesimonzw...@gmail.com Subject: Re: [PD] direct connection from pd to webrowser, low latency To: pd-list@iem.at Message-ID:517b6c7a.6060...@gmail.com Content-Type: text/plain; charset=ISO-8859-1; format=flowed On 27/04/13 05:38, o...@onyx-ashanti.com wrote: On Apr 26, 2013 10:08 PM, katjakatjavet...@gmail.com wrote: Hi Onyx, What is your aim, do you want to entertain your (physically present) audience via smart phones instead of PA system? Actually it a sonic space I want to explore. To play to people on their own personal bionic ear. Click and listen. The scope for experimentation intrigues me. Gestural binaural processing will be fun. I implemented a version of an idea that had been done several times in the past ... a silent disco, where there are two djs playing to wireless headsets over 2 different channels ... with all sharing the same physical space. The result is quite fun, in our case it was in a public square and was all powered by people jumping onto bikes hooked up to alternators etc (well - I did have quite a large battery in the circuit just to be sure it wouldn't all wind down and get boring, but we did generate enough power almost all the time) Simon ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] direct connection from pd to webrowser, low latency
From: katja katjavet...@gmail.com To: Jonathan Wilkes jancs...@yahoo.com Cc: Phil Stone pkst...@ucdavis.edu; pd-list Pd-list@iem.at Sent: Saturday, April 27, 2013 5:24 AM Subject: Re: [PD] direct connection from pd to webrowser, low latency On Sat, Apr 27, 2013 at 1:31 AM, Jonathan Wilkes jancs...@yahoo.com wrote: Btw-- are you sending compressed or uncompressed audio? Uncompressed, 16 bit ints. Compression requires analysis, introducing extra latency. I'm not using it in practice yet, as I still have to find (or develop) a solution for packet loss concealment. You might check out Opus. http://en.wikipedia.org/wiki/Opus_%28audio_format%29 -Jonathan As of now, I use a cheap work-around for wireless monitoring only: an FM 'stereo' transmitter and receiver. FM stereo does not send over two frequency channels, therefore audio quality is suboptimal, not suitable for regular PA situations. However it may be suitable for 'silent concert' experiments in small venues. Onyx, is that an idea? Most cell phones do have an FM receiver. They only work with wired headset connected, functioning as antenna. As wired headsets can be cheap, just offer them for sale during the event. The good thing with FM is, it has zero latency. I got a LinexFM transmitter from here: http://www.linexfm.nl/ Rumors go that USA versions have higher transmission power than the ones sold in Europe. Katja ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] direct connection from pd to webrowser, low latency
On 04/25/2013 04:36 PM, o...@onyx-ashanti.com wrote: Thanks for getting back to me do quickly. Is there a network audio object (s) that can output standard formatted audio? i've started writing an RTP infrastructure for Pd [1], though it currently only supports uncompressed audio. RTP is a pretty standard protocol, and latency can go down to a few ms. there are also RTCP components. keep in mind though, that this is not a plug-and-play object, but instead a framework (so you might need to know what RTP is and ow it works in order to get it do what you want). whether it works in browser or not, i don't know. keep in mind, that browsers are still mainly consumer goods, and as such latency doesn't matter so much (if you only listen to a stream on a remote place it doesn't matter if it is 10ms behind or 2mins - since there is no feedback and nothing to compare with, tere is no absolute time) gfamdr IOhannes [1] https://github.com/iem-projects/pd-iemrtp ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] direct connection from pd to webrowser, low latency
IOhannes zmölnig wrote: i've started writing an RTP infrastructure for Pd [1], though it currently only supports uncompressed audio. RTP is a pretty standard protocol, and latency can go down to a few ms. there are also RTCP components. May I add that firewalls have a tendency to kill RTP/RTCP, too. Don't expect it to work everywhere. Just like active FTP some years ago. Cheers, Charles ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] direct connection from pd to webrowser, low latency
- Original Message - From: IOhannes zmölnig zmoel...@iem.at To: pd-list@iem.at Cc: Sent: Friday, April 26, 2013 5:21 AM Subject: Re: [PD] direct connection from pd to webrowser, low latency On 04/25/2013 04:36 PM, o...@onyx-ashanti.com wrote: Thanks for getting back to me do quickly. Is there a network audio object (s) that can output standard formatted audio? i've started writing an RTP infrastructure for Pd [1], though it currently only supports uncompressed audio. RTP is a pretty standard protocol, and latency can go down to a few ms. there are also RTCP components. keep in mind though, that this is not a plug-and-play object, but instead a framework (so you might need to know what RTP is and ow it works in order to get it do what you want). whether it works in browser or not, i don't know. keep in mind, that browsers are still mainly consumer goods, and as such latency doesn't matter so much (if you only listen to a stream on a remote place it doesn't matter if it is 10ms behind or 2mins - since there is no feedback and nothing to compare with, tere is no absolute time) www.webrtc.org/ There's already a working demo for audio/video conferencing with firefox nightly (and maybe chrome). One of the claimed benefits is the ability to connect and send data peer-to-peer with nat traversal, although the claim is made in such a cavalier manner about such a disruptive feature that I'm suspicious there are a thousand catches. -Jonathan gfamdr IOhannes [1] https://github.com/iem-projects/pd-iemrtp ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] direct connection from pd to webrowser, low latency
From: katja katjavet...@gmail.com To: o...@onyx-ashanti.com onyxasha...@gmail.com Cc: pd-list Pd-list@iem.at; Martin Peach martin.pe...@sympatico.ca Sent: Friday, April 26, 2013 4:08 PM Subject: Re: [PD] direct connection from pd to webrowser, low latency Hi Onyx, What is your aim, do you want to entertain your (physically present) audience via smart phones instead of PA system? I have a similar quest pending: to send Pd audio from a wearable computer over wireless to PA system. Why not send FUDI to a box connected directly to the PA system? -Jonathan ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] direct connection from pd to webrowser, low latency
That's a fairly brilliant idea. No need for fancy audio-quality wireless units, either. Phil On 4/26/13 1:19 PM, Jonathan Wilkes wrote: From: katja katjavet...@gmail.com To: o...@onyx-ashanti.com onyxasha...@gmail.com Cc: pd-list Pd-list@iem.at; Martin Peach martin.pe...@sympatico.ca Sent: Friday, April 26, 2013 4:08 PM Subject: Re: [PD] direct connection from pd to webrowser, low latency Hi Onyx, What is your aim, do you want to entertain your (physically present) audience via smart phones instead of PA system? I have a similar quest pending: to send Pd audio from a wearable computer over wireless to PA system. Why not send FUDI to a box connected directly to the PA system? -Jonathan ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] direct connection from pd to webrowser, low latency
Yeah, sending FUDI would be good. Or OSC. In case of synthesis, better send controller data instead of audio. In my case (sending processed acoustic audio input) that wouldn't work, but never mind. Katja On Fri, Apr 26, 2013 at 10:36 PM, Phil Stone pkst...@ucdavis.edu wrote: That's a fairly brilliant idea. No need for fancy audio-quality wireless units, either. Phil On 4/26/13 1:19 PM, Jonathan Wilkes wrote: __**__ From: katja katjavet...@gmail.com To: o...@onyx-ashanti.com onyxasha...@gmail.com Cc: pd-list Pd-list@iem.at; Martin Peach martin.pe...@sympatico.ca Sent: Friday, April 26, 2013 4:08 PM Subject: Re: [PD] direct connection from pd to webrowser, low latency Hi Onyx, What is your aim, do you want to entertain your (physically present) audience via smart phones instead of PA system? I have a similar quest pending: to send Pd audio from a wearable computer over wireless to PA system. Why not send FUDI to a box connected directly to the PA system? -Jonathan __**_ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/** listinfo/pd-list http://lists.puredata.info/listinfo/pd-list __**_ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/** listinfo/pd-list http://lists.puredata.info/listinfo/pd-list ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] direct connection from pd to webrowser, low latency
On Apr 26, 2013 10:08 PM, katja katjavet...@gmail.com wrote: Hi Onyx, What is your aim, do you want to entertain your (physically present) audience via smart phones instead of PA system? Actually it a sonic space I want to explore. To play to people on their own personal bionic ear. Click and listen. The scope for experimentation intrigues me. Gestural binaural processing will be fun. I have a similar quest pending: to send Pd audio from a wearable computer over wireless to PA system. It's simpler than your purpose (because it does not involve an internet browser), but still complicated enough. So far I've learned that UDP is the preferred protocol for real time audio transmission, because it can go one way without the time-consuming error-checking and recovery. I use UDP with the new wireless system I put together and it completely overhauled my latency. I think the new HTML 5 components for real-time audio will work since they are also primed for VoIP. I am also tweaking this shout cast server to buffer maybe 2-3kbps so I can try for a hoped for 100-300ms latency. I think it's just a matter of tweaking a few things. I am looking into possibly using mp3streamout to stream directly into a stream input in the browser itself, without any other code. I don't know how yet but everything I read makes me believe it is very doable to get 50 stable, low latency 128kbps mp3 streams at 1000ms or less. Smart phones only do wireless, and wireless suffers a lot from packet loss, and packet loss must be concealed with clever dsp routines. Besides that, there is the (in this case relatively minor) issue of clock drift between two sound card clocks. Even if you send audio between two computers with [udpsend~] / [udpreceive~] over an ad hoc (point to point) wireless network you'll notice these issues. Just try it with two laptops and you'll see what I mean to say (here's how to set up ad hoc wireless network: https://help.ubuntu.com/community/WifiDocs/Adhoc). At this point, I'd rather have crackly-fast low quality sound, than ok-3 second lag-sound. Which of the audio network able objects work without a receive object? Still I think that ad hoc networking would be the way to go for low latency local wireless connection. It would not work with regular internet browsers though. A yet to design (Pd or Jack based) app would be required at the receiving end, which does packet concealment and clock drift compensation. About clock drift compensation, Miller Puckette had a hint a while ago, very probably referring to this article: http://kokkinizita.linuxaudio.org/papers/adapt-resamp.pdf I will check that out. Thank you. Hope you are well. Onyx Katja On Thu, Apr 25, 2013 at 4:14 PM, o...@onyx-ashanti.com onyxasha...@gmail.com wrote: Greetings! I hope all is well with you. I wanted to ask if i might gain some of your insight on a project i am undertaking. I am currently attempting to stream my audio into html5 capable web browsers of smartphones. i have created a local network and installed nginx as my webserver. i and a friend got everything working with the oggcast~ and mp3cast~ objects and the icecast 2 server, but the latency was horrific-5-15seconds. I would like to investigate the idea of taking advantage of the plugin-less nature of these modern fast browsers and pipe the audio directly into it as directly as possible the same way voip works but lower bandwidth and only one way. I see that udpsend~ can do alot of what i think i want, but i am confused as to how i might connect it with the audio socket in the client browser (if socket is even the right term). Any insight would be greatly appreciated. and if i get it working, as before, i will document the findings in a step by step once it works. thank you. cheers! Onyx -- www.onyx-ashanti.com ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] direct connection from pd to webrowser, low latency
Why not send FUDI to a box connected directly to the PA system? The sound space is the headphone s.I want to use the digital sonic space to play in live. And there Afr so many smartphones in circulation that it is viable as a presentation platform now. And if it isn't. I can always connect to a speaker system normally. -Jonathan ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] direct connection from pd to webrowser, low latency
From: katja katjavet...@gmail.com To: Phil Stone pkst...@ucdavis.edu Cc: Jonathan Wilkes jancs...@yahoo.com; pd-list Pd-list@iem.at Sent: Friday, April 26, 2013 5:11 PM Subject: Re: [PD] direct connection from pd to webrowser, low latency Yeah, sending FUDI would be good. Or OSC. In case of synthesis, better send controller data instead of audio. In my case (sending processed acoustic audio input) that wouldn't work, but never mind. Btw-- are you sending compressed or uncompressed audio? Katja On Fri, Apr 26, 2013 at 10:36 PM, Phil Stone pkst...@ucdavis.edu wrote: That's a fairly brilliant idea. No need for fancy audio-quality wireless units, either. Phil On 4/26/13 1:19 PM, Jonathan Wilkes wrote: From: katja katjavet...@gmail.com To: o...@onyx-ashanti.com onyxasha...@gmail.com Cc: pd-list Pd-list@iem.at; Martin Peach martin.pe...@sympatico.ca Sent: Friday, April 26, 2013 4:08 PM Subject: Re: [PD] direct connection from pd to webrowser, low latency Hi Onyx, What is your aim, do you want to entertain your (physically present) audience via smart phones instead of PA system? I have a similar quest pending: to send Pd audio from a wearable computer over wireless to PA system. Why not send FUDI to a box connected directly to the PA system? -Jonathan ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
[PD] direct connection from pd to webrowser, low latency
Greetings! I hope all is well with you. I wanted to ask if i might gain some of your insight on a project i am undertaking. I am currently attempting to stream my audio into html5 capable web browsers of smartphones. i have created a local network and installed nginx as my webserver. i and a friend got everything working with the oggcast~ and mp3cast~ objects and the icecast 2 server, but the latency was horrific-5-15seconds. I would like to investigate the idea of taking advantage of the plugin-less nature of these modern fast browsers and pipe the audio directly into it as directly as possible the same way voip works but lower bandwidth and only one way. I see that udpsend~ can do alot of what i think i want, but i am confused as to how i might connect it with the audio socket in the client browser (if socket is even the right term). Any insight would be greatly appreciated. and if i get it working, as before, i will document the findings in a step by step once it works. thank you. cheers! Onyx -- www.onyx-ashanti.com ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] direct connection from pd to webrowser, low latency
Well, [udpsend~] is meant to work with [udpreceive~], so you really have to run Pd on both ends of the connection. Of course you are free to modify the code to make it work with your setup -- that would mean integrating [udpsend~] into the server and [udpreceive~] into the clients' browsers, which I have no idea how to do. Martin On 2013-04-25 10:14, o...@onyx-ashanti.com wrote: Greetings! I hope all is well with you. I wanted to ask if i might gain some of your insight on a project i am undertaking. I am currently attempting to stream my audio into html5 capable web browsers of smartphones. i have created a local network and installed nginx as my webserver. i and a friend got everything working with the oggcast~ and mp3cast~ objects and the icecast 2 server, but the latency was horrific-5-15seconds. I would like to investigate the idea of taking advantage of the plugin-less nature of these modern fast browsers and pipe the audio directly into it as directly as possible the same way voip works but lower bandwidth and only one way. I see that udpsend~ can do alot of what i think i want, but i am confused as to how i might connect it with the audio socket in the client browser (if socket is even the right term). Any insight would be greatly appreciated. and if i get it working, as before, i will document the findings in a step by step once it works. thank you. cheers! Onyx -- www.onyx-ashanti.com http://www.onyx-ashanti.com ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] direct connection from pd to webrowser, low latency
Thanks for getting back to me do quickly. Is there a network audio object (s) that can output standard formatted audio? On Apr 25, 2013 4:32 PM, Martin Peach martin.pe...@sympatico.ca wrote: Well, [udpsend~] is meant to work with [udpreceive~], so you really have to run Pd on both ends of the connection. Of course you are free to modify the code to make it work with your setup -- that would mean integrating [udpsend~] into the server and [udpreceive~] into the clients' browsers, which I have no idea how to do. Martin On 2013-04-25 10:14, o...@onyx-ashanti.com wrote: Greetings! I hope all is well with you. I wanted to ask if i might gain some of your insight on a project i am undertaking. I am currently attempting to stream my audio into html5 capable web browsers of smartphones. i have created a local network and installed nginx as my webserver. i and a friend got everything working with the oggcast~ and mp3cast~ objects and the icecast 2 server, but the latency was horrific-5-15seconds. I would like to investigate the idea of taking advantage of the plugin-less nature of these modern fast browsers and pipe the audio directly into it as directly as possible the same way voip works but lower bandwidth and only one way. I see that udpsend~ can do alot of what i think i want, but i am confused as to how i might connect it with the audio socket in the client browser (if socket is even the right term). Any insight would be greatly appreciated. and if i get it working, as before, i will document the findings in a step by step once it works. thank you. cheers! Onyx -- www.onyx-ashanti.com http://www.onyx-ashanti.com ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] direct connection from pd to webrowser, low latency
On 2013-04-25 10:36, o...@onyx-ashanti.com wrote: Thanks for getting back to me do quickly. Is there a network audio object (s) that can output standard formatted audio? I don't know. netjack? The thing with browsers is they run TCP, which is not good for low-latency audio. Maybe you want a separate UDP audio link, but I don't know how to integrate that with a browser. Martin ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] direct connection from pd to webrowser, low latency
Onyx, Interesting idea. What kind of threshold are you looking for regarding latency? I assume this would be for a local network, right? If I were you, I would first try to fine-tune your current setup by getting all latency variables as low as possible (icecast, pd+oggcast~, and the html audio player). ICECAST: There should be config settings for it where you can manage the buffering/latency. Usually buffering/latency is good for streaming media since you never know what will happen on the network. oggcast~ : I'm guessing it is as low as it can go right now, but there may be an internal buffer that you can adjust/downsize. HTML audio player: Most importantly, in the HTML, you should check to make sure that the audio is not buffering. My guess is that this is where you are experiencing the largest latency. Since HTML5 is a moving target, I'm not sure how you would currently do that. May not even be possible. https://developer.mozilla.org/en-US/docs/HTML/Element/audio ... Then, if the above didn't work, you might try to hook up the output of a TCP netsend to a websocket and then translate the audio data chunks into JS Audio. UDP won't work on websockets AFAIK. best -august. o...@onyx-ashanti.com say: Greetings! I hope all is well with you. I wanted to ask if i might gain some of your insight on a project i am undertaking. I am currently attempting to stream my audio into html5 capable web browsers of smartphones. i have created a local network and installed nginx as my webserver. i and a friend got everything working with the oggcast~ and mp3cast~ objects and the icecast 2 server, but the latency was horrific-5-15seconds. I would like to investigate the idea of taking advantage of the plugin-less nature of these modern fast browsers and pipe the audio directly into it as directly as possible the same way voip works but lower bandwidth and only one way. I see that udpsend~ can do alot of what i think i want, but i am confused as to how i might connect it with the audio socket in the client browser (if socket is even the right term). Any insight would be greatly appreciated. and if i get it working, as before, i will document the findings in a step by step once it works. thank y cheers! Onyx -- www.onyx-ashanti.com ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list -- http://aug.ment.org GPG: 0A8D 2BC7 243D 57D0 469D 9736 C557 458F 003E 6952 ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] direct connection from pd to webrowser, low latency
Or you could try a different approach. Instead of streaming the audio, generate it client-side ... example, this performance that I did last week-end with WebPd : https://vimeo.com/64514693 2013/4/25 august aug...@alien.mur.at Onyx, Interesting idea. What kind of threshold are you looking for regarding latency? I assume this would be for a local network, right? If I were you, I would first try to fine-tune your current setup by getting all latency variables as low as possible (icecast, pd+oggcast~, and the html audio player). ICECAST: There should be config settings for it where you can manage the buffering/latency. Usually buffering/latency is good for streaming media since you never know what will happen on the network. oggcast~ : I'm guessing it is as low as it can go right now, but there may be an internal buffer that you can adjust/downsize. HTML audio player: Most importantly, in the HTML, you should check to make sure that the audio is not buffering. My guess is that this is where you are experiencing the largest latency. Since HTML5 is a moving target, I'm not sure how you would currently do that. May not even be possible. https://developer.mozilla.org/en-US/docs/HTML/Element/audio ... Then, if the above didn't work, you might try to hook up the output of a TCP netsend to a websocket and then translate the audio data chunks into JS Audio. UDP won't work on websockets AFAIK. best -august. o...@onyx-ashanti.com say: Greetings! I hope all is well with you. I wanted to ask if i might gain some of your insight on a project i am undertaking. I am currently attempting to stream my audio into html5 capable web browsers of smartphones. i have created a local network and installed nginx as my webserver. i and a friend got everything working with the oggcast~ and mp3cast~ objects and the icecast 2 server, but the latency was horrific-5-15seconds. I would like to investigate the idea of taking advantage of the plugin-less nature of these modern fast browsers and pipe the audio directly into it as directly as possible the same way voip works but lower bandwidth and only one way. I see that udpsend~ can do alot of what i think i want, but i am confused as to how i might connect it with the audio socket in the client browser (if socket is even the right term). Any insight would be greatly appreciated. and if i get it working, as before, i will document the findings in a step by step once it works. thank y cheers! Onyx -- www.onyx-ashanti.com ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list -- http://aug.ment.org GPG: 0A8D 2BC7 243D 57D0 469D 9736 C557 458F 003E 6952 ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] direct connection from pd to webrowser, low latency
cool video. I dont know if my synthesis and performance system would work from a server and if it did, i doubt i would get the 2-5ms latency i am comfortably getting now. is webpd able to deal with heavy patches? the idea sounds interesting. what is the realtime latency of webpd in real terms?it might be cool, if the latency is controllable and if it can scale with evolving complexity. thanks! On Thu, Apr 25, 2013 at 10:03 PM, s p seb...@gmail.com wrote: Or you could try a different approach. Instead of streaming the audio, generate it client-side ... example, this performance that I did last week-end with WebPd : https://vimeo.com/64514693 2013/4/25 august aug...@alien.mur.at Onyx, Interesting idea. What kind of threshold are you looking for regarding latency? I assume this would be for a local network, right? If I were you, I would first try to fine-tune your current setup by getting all latency variables as low as possible (icecast, pd+oggcast~, and the html audio player). ICECAST: There should be config settings for it where you can manage the buffering/latency. Usually buffering/latency is good for streaming media since you never know what will happen on the network. oggcast~ : I'm guessing it is as low as it can go right now, but there may be an internal buffer that you can adjust/downsize. HTML audio player: Most importantly, in the HTML, you should check to make sure that the audio is not buffering. My guess is that this is where you are experiencing the largest latency. Since HTML5 is a moving target, I'm not sure how you would currently do that. May not even be possible. https://developer.mozilla.org/en-US/docs/HTML/Element/audio ... Then, if the above didn't work, you might try to hook up the output of a TCP netsend to a websocket and then translate the audio data chunks into JS Audio. UDP won't work on websockets AFAIK. best -august. o...@onyx-ashanti.com say: Greetings! I hope all is well with you. I wanted to ask if i might gain some of your insight on a project i am undertaking. I am currently attempting to stream my audio into html5 capable web browsers of smartphones. i have created a local network and installed nginx as my webserver. i and a friend got everything working with the oggcast~ and mp3cast~ objects and the icecast 2 server, but the latency was horrific-5-15seconds. I would like to investigate the idea of taking advantage of the plugin-less nature of these modern fast browsers and pipe the audio directly into it as directly as possible the same way voip works but lower bandwidth and only one way. I see that udpsend~ can do alot of what i think i want, but i am confused as to how i might connect it with the audio socket in the client browser (if socket is even the right term). Any insight would be greatly appreciated. and if i get it working, as before, i will document the findings in a step by step once it works. thank y cheers! Onyx -- www.onyx-ashanti.com ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list -- http://aug.ment.org GPG: 0A8D 2BC7 243D 57D0 469D 9736 C557 458F 003E 6952 ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list -- www.onyx-ashanti.com ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] direct connection from pd to webrowser, low latency
WebPd isn't able to deal with really heavy patches. In fact that performance was running the biggest patch I've ever tried with it, you can judge by yourself whether that's heavy : https://gist.github.com/sebpiq/5462949 I would say the biggest problem with WebPd right now is its lack of objects. You have to be very minimalistic when composing :) The only latency there is the messages that you server sends to the client running WebPd. I couldn't tell you how much that is. 2013/4/25 o...@onyx-ashanti.com onyxasha...@gmail.com cool video. I dont know if my synthesis and performance system would work from a server and if it did, i doubt i would get the 2-5ms latency i am comfortably getting now. is webpd able to deal with heavy patches? the idea sounds interesting. what is the realtime latency of webpd in real terms?it might be cool, if the latency is controllable and if it can scale with evolving complexity. thanks! On Thu, Apr 25, 2013 at 10:03 PM, s p seb...@gmail.com wrote: Or you could try a different approach. Instead of streaming the audio, generate it client-side ... example, this performance that I did last week-end with WebPd : https://vimeo.com/64514693 2013/4/25 august aug...@alien.mur.at Onyx, Interesting idea. What kind of threshold are you looking for regarding latency? I assume this would be for a local network, right? If I were you, I would first try to fine-tune your current setup by getting all latency variables as low as possible (icecast, pd+oggcast~, and the html audio player). ICECAST: There should be config settings for it where you can manage the buffering/latency. Usually buffering/latency is good for streaming media since you never know what will happen on the network. oggcast~ : I'm guessing it is as low as it can go right now, but there may be an internal buffer that you can adjust/downsize. HTML audio player: Most importantly, in the HTML, you should check to make sure that the audio is not buffering. My guess is that this is where you are experiencing the largest latency. Since HTML5 is a moving target, I'm not sure how you would currently do that. May not even be possible. https://developer.mozilla.org/en-US/docs/HTML/Element/audio ... Then, if the above didn't work, you might try to hook up the output of a TCP netsend to a websocket and then translate the audio data chunks into JS Audio. UDP won't work on websockets AFAIK. best -august. o...@onyx-ashanti.com say: Greetings! I hope all is well with you. I wanted to ask if i might gain some of your insight on a project i am undertaking. I am currently attempting to stream my audio into html5 capable web browsers of smartphones. i have created a local network and installed nginx as my webserver. i and a friend got everything working with the oggcast~ and mp3cast~ objects and the icecast 2 server, but the latency was horrific-5-15seconds. I would like to investigate the idea of taking advantage of the plugin-less nature of these modern fast browsers and pipe the audio directly into it as directly as possible the same way voip works but lower bandwidth and only one way. I see that udpsend~ can do alot of what i think i want, but i am confused as to how i might connect it with the audio socket in the client browser (if socket is even the right term). Any insight would be greatly appreciated. and if i get it working, as before, i will document the findings in a step by step once it works. thank y cheers! Onyx -- www.onyx-ashanti.com ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list -- http://aug.ment.org GPG: 0A8D 2BC7 243D 57D0 469D 9736 C557 458F 003E 6952 ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list -- www.onyx-ashanti.com ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] direct connection from pd to webrowser, low latency
I was just wondering. would it be possible to use the mp3streamout~ object to stream directly to a modern browser? to make it listen for the stream somehow, without shout/icecast, and just play? shouldnt it be as simple as; pd to mp3streamout mp3streamout to port number port to (i dont know...websocket, voodoo, tardis...) to browser, just blasting. or, possibly to create, say, 50 mp3streamouts, each with their own port, which could be served up by the webserver?basically, pd would be the server. of course i dont know what i am talking about but can any of these work On Thu, Apr 25, 2013 at 11:21 PM, o...@onyx-ashanti.com onyxasha...@gmail.com wrote: On Thu, Apr 25, 2013 at 10:54 PM, august aug...@alien.mur.at wrote: What kind of threshold are you looking for regarding latency? No more than 100ms. I feel that should be achievable with a close range private network. hmm. I'm not so sure you'll be able to get 100ms or less. Each component in your set up is going to need some buffering. With an ideal streaming setup, you have at least 2 components: the streamer and the receiver, each with buffering. With your setup, you have even more: pd+oggcast, icecast, audio player. Depending on your network, you could have extra buffering for wireless , packet filtering etc. You might be able to whittle it down even further by dumping oggcast~ and then using low-latency pd+jack. Then just stream directly from jack. There may even be a wav streamer. If not it would be simple to write. I am open to this option. I dont see a reason why i shouldnt be able to take the audio from something like [netsend~] and dump it to a port, then push that out to (???) so it comes out of the browser or media player of the device in realtime. I am very not married to oggcast or icecast or any cast. my only real hinderance is my lack of knowledge of the protocols. although i will say that websockets look really really good. i'm investigating some way of creating a sort of one-way voip thing. that definitely comes in around 50-100ms and most voip sounds pretty good even over the internet so a local feed should be very decent. the jack idea looks interesting. how would that work? Onyx I assume this would be for a local network, right? Yes If I were you, I would first try to fine-tune your current setup by getting all latency variables as low as possible (icecast, pd+oggcast~, and the html audio player). ICECAST: There should be config settings for it where you can manage the buffering/latency. Usually buffering/latency is good for streaming media since you never know what will happen on the network. oggcast~ : I'm guessing it is as low as it can go right now, but there may be an internal buffer that you can adjust/downsize. HTML audio player: Most importantly, in the HTML, you should check to make sure that the audio is not buffering. My guess is that this is where you are experiencing the largest latency. Since HTML5 is a moving target, I'm not sure how you would currently do that. May not even be possible. https://developer.mozilla.org/en-US/docs/HTML/Element/audio Thanks! I will check all of those tonight. Websockets for HTML 5 looks like it might be the ticket. They seem to be catering to the gamers, so I think that might work as well as allow future development. ... Then, if the above didn't work, you might try to hook up the output of a TCP netsend to a websocket and then translate the audio data chunks into JS Audio. UDP won't work on websockets AFAIK. I will try this tonight! Netsend formats the audio in a manner that the Websockets understand? If that is the case, then it is Christmas! Unfortunately, it will be more like a devout catholic easter. You;ll have to fast for 40 days to get some candy! Websockets are pretty new and the implementation in browsers is shoddy. You would have to script it all yourself and then write the output in the browser using the html5 audio apiwhich is another can of worms. suerte! -a. -- www.onyx-ashanti.com -- www.onyx-ashanti.com ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list