2015-02-27 12 views
8

Tôi muốn thực hiện cuộc gọi video với webrtc. Tôi có hai luồng, một luồng là cục bộ và luồng thứ hai là luồng từ xa.Không thể tắt tiếng thẻ video HTML5 trong Firefox

Trong Chrome, tôi tắt tiếng thẻ video của mình để không nghe thấy giọng nói của tôi. Thẻ HTML của tôi giống như;

<video style="position:absolute;right:5px;bottom:5px;display: inline;" class="localVideo" autoplay="autoplay" 
muted="true" 
src="mediastream:3ffffe01-da89-44d9-b9cf-454b11ec6a6a" height="25%" width="25%"></video> 

Trong Firefox tắt tiếng = "true" sở hữu không làm việc, vì vậy mà tôi nghe giọng nói của riêng tôi. Tôi đã cố gắng để thiết lập muty thích hợp với nhiều cách trong các chủ đề khác như;

var video = document.querySelector("#movie");  
video.muted = true; 

các biến thể khác nhau của đoạn mã này với jquery không hoạt động.

Sau đó, tôi đã quyết định thêm thuộc tính điều khiển vào thẻ video, để xem cách các nút điều khiển của Firefox hoạt động. Tôi đã thấy rằng nút tắt tiếng trên bộ điều khiển Firefox cũng không hoạt động.

Sự cố này xảy ra ở cả Firefox 35 và Firefox ESR 31.5 với cửa sổ 7 - 8.1, macOS với Yosemite. Tôi nhận được luồng truyền thông qua thư viện webrtc localStream.

Đây có phải là sự cố đã biết, nếu có thì có cách nào khác để khắc phục sự cố này không?

Cảm ơn.

+0

Những thư viện để bạn sử dụng? Hoặc trong trường hợp bạn tự viết mã, vui lòng chia sẻ một số đoạn mã hữu ích của bạn. Thật khó để nói tại sao nó thất bại vì tài sản này làm việc cho tôi trong cả Chrome và FF. Ngoài ra xin vui lòng chia sẻ hệ điều hành và phiên bản FF. – igorpavlov

+0

Tôi đã thêm một số thông tin. Cảm ơn! –

+0

Video của bạn không có id = "movie". Cung cấp cho nó một ID đầu tiên. Cũng cố gắng thực hiện trong giao diện điều khiển đoạn mã sau: document.getElementById ("movie"). Muted = true – igorpavlov

Trả lời

1

Tôi cũng gặp sự cố khi tắt tiếng video với Firefox. Không vấn đề gì trong Chrome. Tôi đã làm việc xung quanh vấn đề Firefox bằng cách thiết lập âm lượng bằng không. Cùng một hiệu ứng ròng?

var video = document.querySelector("#movie");  
video.volume = 0; 
2

Lưu ý: Có một câu trả lời tốt hơn trong này question

Tôi cũng có vấn đề này trong FF45. Giải pháp là để đặt tắt tiếng trong mã so với DOM.

$("#browserCheck").get(0) 
<video id="browserCheck" class="img-responsive" autoplay="" muted="true"> 
$("#browserCheck").get(0).muted 
false 
$("#browserCheck").get(0).muted = true 
true 
$("#browserCheck").get(0).muted 
true 
9

Tôi cũng đã xem qua vấn đề này với Firefox, giải pháp đơn giản nhất tôi đã tìm thấy được bằng cách sử dụng sự kiện onloadedmetadata như sau:

video { 
 
    width: 200px; 
 
    height: 200px; 
 
}
<video 
 
    src="https://scontent-lhr3-1.cdninstagram.com/t50.2886-16/12930587_1020784647992081_252978711_n.mp4" 
 
    muted 
 
    onloadedmetadata="this.muted = true" 
 
    onmouseenter="play()" 
 
    onmouseleave="pause()">

+0

Perfect, đã làm việc tốt cho tôi! – Danmoreng

Các vấn đề liên quan