Comments (11)
@tarrencev are we updating the docker image anytime now to include this fix?
from ion-sfu.
Hey @greko6 if you go to https://github.com/orgs/pion you should have an invite to join the org!
If you aren't able to join I will re-open, but hard for me to find bandwidth to help with Ion day-to-day :(
from ion-sfu.
Update based on the Slack thread.
TL;DR most likely we'll need to wait for v3
From Jeremija:
"The main issue here is that in the current version of pion/webrtc the PayloadTypes are defined in the webrtc.MediaEngine and are usually either populated from SDP or defined before any tracks are added. Populating from SDP does not scale well if you need to dynamically add tracks after the first negotiation.
The easiest solution for this is to generate the offers on the server-side and then the browsers will use server-defined PayloadTypes in their answers.
I think there are plans for v3 to fix this behavior."
from ion-sfu.
Also, this is the reason for the change: https://groups.google.com/forum/#!topic/discuss-webrtc/Z5YOWMC8TwU
It looks like Safari is using WebRTC before M57. Hence the reason why 100, but not 96.
Key quote from that thread: "External apps need to update their code to not rely on hardcoded values. This is all in accordance with the spec, payload types in the range 96-127 are dynamic and are not tied to any specific codec."
Most likely types will change again in the future.
from ion-sfu.
@greko6 this issue exists iOS platform mobile and iPad in general. Since even chrome in iphone and ipad uses WebKit rendering engine not V8 just the chrome UI. So any app built on ion-sdk-js is not working on iphone and ipad irrespective of the browser
from ion-sfu.
I did compile it and created a new docker for my own SFU for testing purposes - after the patch was applied.
Unfortunately, SFU is still not matching it. Here is what I can see:
The answer should be:
m=video (...)
(...)
a=rtmpmap: 100 VP8/90000
With 96 Safari is still interpreting the video track as h264.
from ion-sfu.
Surface Pro tablet is also affected by the same bug. As it's not fixed, can you reopen it, please?
from ion-sfu.
@tarrencev could you re-open this issue, please? That way people that are using sfu will have much better visibility as it's not working.
from ion-sfu.
@Sean-Der : This issue, once solved, will allow pion to drastically accelerate as currently, people that are testing it with MacOSes/iPhones/iPads are not getting the streams at all. More recently, I've learned that also Microsoft Surface Pro is affected because of the same simple mismatch reasons.
from ion-sfu.
this is working now but only on ion-sfu
not with ion
. you can verify it by running ion-sfu
with the pub-sub-in-browser
example. you will need a reverse proxy for ssl though since safari doesn't like ws
from ion-sfu.
@tarrencev : Nice! Did you receive a stream on Safari? Which diff fixed it?
from ion-sfu.
Related Issues (20)
- Adding Documentation HOT 2
- v1.11.0: missing RID method HOT 1
- Pass canvas through stream? HOT 1
- Relay Peer failed due to OnTrack not set
- [Need Suggestion] What's the ideal way to record video? HOT 2
- name of media engines are uppercase in pion/webrtc but are lowercase in pion/ion-sfu HOT 1
- Grammatical errors in README.md
- Installation failure
- Relay with All Simulcast Tracks
- If the sfu is down, how can the client detect it? HOT 1
- Is it possible to change signaling from websocket to Mqtt ? HOT 1
- [BUG] Simulcast can't work in examples/echotest-jsonrpc/index.html
- Not all relayed tracks received due to race condition
- How to add local candidate when peer connection of ion-sfu is set ice-lite. HOT 1
- Looking for a solution to create Subscriber offer with iceRestart option
- Single port p2p
- Transfer to ion org HOT 1
- What happens to ion-sfu when there is a global SSRC duplication?
- Should ion-sfu (and Ion) be archived and alternatives suggested HOT 9
- Can't get it to work deployed to my VPS 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 ion-sfu.