2016-07-18 24 views
0

Ich versuche eine webrtc-Verbindung zwischen Browser und Medienserver herzustellen. Als Antwort auf das Angebot des Media-Servers wählt Firefox VP8-Codec anstelle von H264. Leider ist der Media Server jetzt nicht mit VP8 kompatibel und unterstützt nur H264. Wie kann ich Firefox dazu bringen, ein kompatibles Format mit Media Server zu verwenden?WebRTC-Verbindung kann nicht hergestellt werden (verschiedene Codecs und Payload-Typ in SDP)

Fern SDP (Angebot):

v=0 
o=Flussonic 1468826141836803755 0 IN IP4 0.0.0.0 
s=- 
t=0 0 
a=sendrecv 
a=fingerprint:sha-256C7:B3:54:AA:EB:53:21:B0:19:81:D6:29:F8:71:71:F3:1C:36:AC:DA:E9:43:8A:4B:96:C2:31:E3:A2:92:3D:95 
a=group:BUNDLE video_t1 
a=ice-options:trickle 
a=msid-semantic:WMS * 
m=video 9 UDP/TLS/RTP/SAVPF 126 
c=IN IP4 0.0.0.0 
a=bundle-only 
a=sendrecv 
a=fmtp:126 profile-level-id=64e01f;level-asymmetry-allowed=0;sprop-parameter-sets=Z2QAH6wrUCgC3IAAAAABZ2QAH6wrUCgC3IAAAAABZ2QAH6wrUCgC3IA=,aO48MA==;packetization-mode=1 
a=ice-pwd:804089D4B00B2DF987C9B443387755E8 
a=ice-ufrag:E39A4B11 
a=mid:video_t1 
a=msid:{ffe2aa2b-d835-478f-abcb-ab35424e2eb4} {9547d2eb-2fd4-427d-986c-a579646ecd29} 
a=rtcp-fb:126 nack pli 
a=rtcp-fb:126 ccm fir 
a=rtcp-mux 
a=rtpmap:126 H264/90000 
a=setup:actpass 
a=ssrc:4070073620 cname:{ef2d113f-c17c-40ab-bf9c-67c9dcb9eb20} 

Lokale SDP (Antwort):

v=0 
o=mozilla...THIS_IS_SDPARTA-47.0.1 2896632948472560668 0 IN IP4 0.0.0.0 
s=- 
t=0 0 
a=sendrecv 
a=fingerprint:sha-256 0D:FC:13:73:48:21:B0:16:79:49:62:FC:64:D6:E2:2B:66:EA:FA:92:5A:15:BD:F4:92:ED:29:22:9E:0A:9E:3F 
a=ice-options:trickle 
a=msid-semantic:WMS * 
m=video 0 UDP/TLS/RTP/SAVPF 120 
c=IN IP4 0.0.0.0 
a=inactive 
a=end-of-candidates 
a=rtpmap:120 VP8/90000 

Firefox Version: 47.0.1 OpenH264 Version: 1.5.3

Antwort

0

Firefox ablehnt Ihr Angebot, der Port in der m-line ist auf 0 gesetzt. Sie benötigen wahrscheinlich eine fmtp-Zeile, die mindestens Ihre h264 Profil-Level-ID beschreibt (ebenso wie die Asymmetrie des Levels) und Paketierungsmodus)

0

Sie können Firefox dazu bringen, H.264 zu priorisieren.

  • In der über :: config Suche nach h264
  • Set auf true media.peerconnection.video.h264_enabled.
  • Setzen Sie media.navigator.video.preferred_codec auf 126 (dies ist der Code für H.264). Erstellen Sie diesen Eintrag, wenn er nicht existiert.
0

Ich habe auch das gleiche Problem.

habe ich versucht, die folgende ein:
(1) Erzeugen eine zusätzliche H.264 Fähigkeit einschließlich "-Profil-Ebene-id = 42e01f"
(2)

die Beschreibung oben an der Spitze des Videoblockes von SDP Vergeben

Nach dem Test funktioniert es - beantwortet SDP mit H.264 und beide Seiten haben die Medienströme gegenseitig.

(Firefox Version: 55.0.3, OpenH264 Version: 1,6)

JEDOCH

Bei Chrome (60.0.3112.113) Ich habe "488 Not Acceptable Here" vom Beantworter der Frage,
und ich habe versucht, die Position der hinzugefügten H.264-Beschreibung an den unteren Rand der Videofunktionen zu ändern,
es ist gelöst, aber für den Fall von FireFox fehlgeschlagen.
Bisher habe ich noch keine Ahnung davon ...