Comments (4)
This server is provided by libnice. Of course you can change to google stun server.
I am not sure whether it is possible to avoid using stun server or not, but if you want to use local isolated network, you can consider run a stun server on your machine. The stun server has been built in pear/third_party/libnice/builddir/stun/tools
.
Then modify STUN_ADDR
in pear/src/peer_connection.c
and iceServers
of pear/examples/surveillance/index.html
to your local IP address.
And if you want to use google stun server, you need to try to build the Google WebRTC native code. It will generate a stun server binary.
from libpeer.
My question was not exact and clear enough as I am newbie to WebRTC.
Problem was that examples was not working if I set iceServers = []
in index.html
After some digging I found that enabling mDNS solves the problem.
But while it works in Chromium/Opera, it doesn't in Firefox, possibly due to this bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1691189. I use Ubuntu 18.04 and 20.04 and browser binaries from official ubuntu repos.
Have you had any experience using pear with Firefox?
from libpeer.
I have tried using Firefox, but it doesn't work.
If there is a candidate in SDP is xxxx.local
, it means you need to enable mDNS. When I tested with Firefox, I checked there is no candidate using mDNS, so I guess it has nothing to do with mDNS. I'm still debugging
You can check your offer SDP with browser console by modifying code as bellow
diff --git a/examples/surveillance/index_html.h b/examples/surveillance/index_html.h
index 00a194f..db706e4 100644
--- a/examples/surveillance/index_html.h
+++ b/examples/surveillance/index_html.h
@@ -18,6 +18,7 @@ const char index_html[] = " \
}); \n \
var log = msg => { console.log(msg); }; \n \
function sendOfferToCall(sdp) { \n \
+ console.log(sdp);\n \
var xhttp = new XMLHttpRequest(); \n \
xhttp.onreadystatechange = function() { \n \
if (this.readyState == 4 && this.status == 200) { \n \
from libpeer.
In our project we disable mdns. Firefox indeed has strange behavior with mdns, but the problem may be relaxed by disabling mdns obfuscation (go to about:config
and turn off media.peerconnection.ice.obfuscate_host_addresses
)
There were more problems in supporting Firefox, I can share my expirience in separate issue if you are interested. Also you can investigate my fork here https://github.com/aldoshkind/pear
from libpeer.
Related Issues (20)
- [QUESTION] Can it work with ESP32 Arduino? HOT 2
- whip的esp32s3编译报错 HOT 6
- mdns? HOT 3
- Error during make HOT 1
- the sample demo in waiting status forever HOT 7
- missing headers HOT 2
- Windows support HOT 5
- Is usrsctp required to open the data channel for string HOT 1
- Support WHEP
- Permissions and candidates
- IPv6 support HOT 2
- how to test
- libpeer does not work in Firefox, and takes ~40s to load in Chrome HOT 2
- Candidate pairs are not tested based on priority.
- Where to set ICE Candidate generate by remote?
- Can't compile for Arduino ESP32. HOT 1
- ports_resolve_mdns_host always return -1 for ESP32
- More documentation please + Arduino support if possible HOT 1
- Is libpeer ice connection only support a=setup:passive?
- Any support or idea how to run on STM32 MCU ? thanks HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from libpeer.