mp3,html5-audio,webrtc,audio-streaming,p2p
WebRTC supports 2 audio codecs: OPUS (max bitrate 510kbit/s) and G711. You stick with OPUS, it is modern and more promising, introduced in 2012. Main files in webrtc-mp3-stream are outdated by 2 years (Jul 18, 2013). I couldn't find OPUS preference in the code, so possibly demo runs via G711....
must be the usual problem with callbacks inside for loop, try binding the value of i: for (var i = 0; i<list.length - 1; i++) { pc[list[i]] = createPC(list[i]); (function(i){ pc[list[i]].createOffer(function (localDesc) { pc[list[i]].setLocalDescription(localDesc); send(localDesc, list[i]); }, doNothing, constraints); })(i); } Edit: another option might be( i am assuming that...
python,networking,tcp,p2p,peer
Yes, two sockets are necessary. The listening socket should open on a constant port, and the client port should be opened on a different (potentially dynamic) port, usually higher in the port range. As an example: Server sockets on port 1500, client sockets on port 1501. Peer1: 192.168.1.101 Peer2: 192.168.1.102...
node.js,ip-address,p2p,xor,stun
Here's my XOR operator from my CryptoPals code: var xor = function (b0, b1) { if (Buffer.isBuffer(b0)) { b0 = new Buffer(b0); } if (Buffer.isBuffer(b1)) { b1 = new Buffer(b1); } if (b0.length !== b1.length) { console.log(b0.length, b1.length); throw new Error('Tried to xor two buffers of differing length'); } var...
You can use ffmpeg to produce media segments. Eg: ffmpeg -i in.mkv -map 0 -codec:v libx264 -codec:a libfaac -f segment -segment_list out.list out%03d.ts Source: ffmpeg official documentation...
You cannot. From the "outside" NAT acts as your only client and you only know its (NAT's) source IP and (not always) source port....
node.js,google-chrome-extension,google-chrome-app,p2p,chrome-gcm
No. Chrome does not give any tools to do so; any kind of interaction has to go through a 3rd-party server. GCM, for that matter, is just a routing service between clients and an app server. Extensions cannot listen for incoming connections. Chrome Apps, however, do. In that case, you...
Each PC needs to recreate an offer (as bwrent said). as you obviously are using a p2p multiparty (multiple peer connections) you might want to pass on the peerID to the createOffer success callback every time, then you don't have to worry about it being asynchronous. You need to...
You can easily achieve this using GCM. Here is the detailed tutorial: http://www.appsrox.com/android/tutorials/instachat/...
sockets,tcp,network-programming,p2p
Your router has its own public IP that it uses when talking to the outside world. If it did not, there would be no point to your question, since you would only be able to transfer data with other computers within your private network, you would have no Internet connection,...
I think all your expectations except for 6. can be fulfilled with MQTT if you use it the right way. You should have a look at http://www.eclipse.org/paho/ and http://mosquitto.org/ for OpenSource implementations. As MQTT has a publish-subscribe architecture where every message is send to and distributed by the message broker...
ios,p2p,mesh,multipeer-connectivity
Check this link for a start. I found it very useful. http://www.appcoda.com/intro-multipeer-connectivity-framework-ios-programming/ There is also Part 2 for this sample in the link....
c#,ios,.net,cross-platform,p2p
There are some open source reverse engineering based solutions. All of them are not completely conforming with rfc7016 and rfc7425.For server side there are two solutions: 1. https://github.com/OpenRTMFP/Cumulus 2. https://github.com/MonaSolutions/MonaServer There is currently no client based lib as open source. If you are interested in that solution, I have implemented...
For being able to connect devices for peer to peer connection you have the following options: 1. Wifi Direct 2. Bluetooth 3. Wifi Hotspot Here is a basic tutorial on how to build a chat over wifi direct http://developer.android.com/guide/topics/connectivity/wifip2p.html And for bluetooth http://developer.android.com/samples/BluetoothChat/index.html You can also import these sample projects...
One problem is that the NAT mappings in Alice's NAT server will time out, either after a fixed time, or after a period of inactivity. A second potential problem is that the NAT server could make the restriction that Alice's NAT mapping is only "good" for TCP connections established by...
I don't know which port you accept from the peer, but if the peer is connecting to your server (e.g. then one calling accept) it will connect from a (more or less) random port, that's how TCP works. It connects from a fixed port only if the peer explicitly binds...
Depending on who your customers are, where they are, and the types of devices they use (PCs vs Mobile), the results can vary. In practice (based on my experience), ICE connectivity with STUN alone is about 85% successful for desktop and laptop PCs. But if it works once for a...
You seems to use static IP . In that case gateway-address should be the P2P-GO's IP address. When you start your android phone as a P2P-GO, you have to give an IP-Address to it. This is the IP address of the P2P-GO in your android phone. Apart from that, if...
Basically, there is no broadcasts available with the API. instead, you use the createGroup to form a group, then create local service, and then make sure the peerDiscovery is on (I'm rather sure the device and the local service is only visible to others when the API is active) In...
You cannot redirect already opened TCP connections to another device, because in this case the endpoints of the connection would need to change - but the endpoint (ip+port) is an essential part of the connection. So you could only transfer the data you received at the server from one connection...
I don't understand why you think, that somebody wants you to use chord for it. There are different architectures for it, there is the torrent network, based on which original architecture the BitTorrent-Sync is written. It works differently from a torrent in the way that you don't have one file...
ios,p2p,multipeer-connectivity,rssi
Unfortunately, it's not possible. I think there is a good reason for this. As you can read in the docs: The Multipeer Connectivity framework provides support for discovering services provided by nearby iOS devices using infrastructure Wi-Fi networks, peer-to-peer Wi-Fi, and Bluetooth personal area networks and subsequently communicating with those...
You are correct in assuming P2P peers are applications with both server and client functionality. Server being the fact that it receives connections from other peers and client being the fact that it connects outward to other peers. TCP is possible but due to most home/corporate/ISP networks using NAT, peers...
android,sockets,networking,p2p,3g
In 4), you say you know about NAT and firewall's. Then you should also be aware of the IPv4 shortage. So, on your provider, mobile node's get a private IP address (from the DHCP server of the G3 provider, and the public address is just an address the provides has...
finally found the problem. You had to start the RendezVous service on each groups, and not only the netPeerGroup. That's why my software works locally but not on internet....
It is possible if peers are not behind a NAT. If they are you have to make port mapping(forward ports). You can easily write a function to check if a peers machine is behind NAT or not. And if it is, you can reconsider using server as a transfer place...
algorithm,data-structures,p2p,distributed-system,dht
I don't fully understand how each node acquires a globally unique ID though. I'd say that's not really relevant to the title of your question and implementation-specific anyway. But generally it's either done at random or based on a hash of their public IP + some random sub-part modulo...
Using a direct connection between the two clients, using the server to faciliate IP discovery, is the best option when possible. Client1 can try to connect to Client2, and if that fails then the clients can switch roles and have Client2 try to connect to Client1. In case it is...
Maybe it is just using the filesystem as the database. For example, if it knows all the files it downloads are to a specific folder, then it just scans that folder for previously downloaded files. Edit: After reading that this application also stores IP Addresses, then either this information must...
c#,.net,networking,network-programming,p2p
Few months ago I was looking for a similar solution, but unfortunately I got suck and dropped it. People say you could use something called UDP hole punching or TCP hole punching, but I was unable to do this (I'm not a specialist in computer networks though). Whether it will...
There is currently no way to do this though from Android 4.2.2 it is possible to remember previous groups. Look at this issue(it deals with this exact problem):https://code.google.com/p/android/issues/detail?id=30880...