Thẻ video HTML5 không hoạt động trong Safari, iPhone và iPad


91

Tôi đang cố gắng tạo một trang web html5 trong đó có một video nhỏ như 13s, tôi đã chuyển đổi phiên bản flash của video này thành 3 định dạng: .ogv sử dụng fireFogg, .webm sử dụng firefogg và .mp4 sử dụng ứng dụng HandBrake tập lệnh html Tôi đã sử dụng trong trang của mình:

<video  width="800" height="640" loop preload="false" autoplay  controls tabindex="0">
  <source src="xmasvideo/video.mp4" type="video/mp4" />
  <source src="xmasvideo/M&P-Xmas 2.ogv" type="video/ogv" />
  <source type="video/webm" src="xmasvideo/M&P-Xmas.webm" />
</video>

Video hoạt động tốt trong Chrome và FireFox nhưng hoàn toàn không hoạt động trong Safari trên Máy tính để bàn hay trên iPhone hoặc iPad, đầu ra chỉ là một trang trống hiển thị các điều khiển của thẻ video nhưng không có gì được tải

Lưu ý rằng phiên bản Safari mà tôi có hỗ trợ video HTML5


Rõ ràng đó là sự cố MimeType Hãy kiểm tra liên kết này để biết thêm thông tin Tôi tìm thấy nó ở đây Chúc một ngày tốt lành :)
James Dayeh

1
điều tốt cần lưu ý, video trên iOS không bao giờ xảy ra autoplay: developer.apple.com/library/safari/documentation/AudioVideo/… ..
commonpike

2
Bạn đã thử thuộc tính playsinlinetrong thẻ video chưa?
Humayun kabir 27/09/18

Câu trả lời:


86

Tôi đã gặp vấn đề tương tự với các thiết bị apple như iPhone và iPad, tôi đã tắt chế độ nguồn điện thấp và nó hoạt động và bạn cũng nên bao gồm playsinlinethuộc tính trong thẻ video như sau:

<video class="video-background" autoplay loop muted playsinline>

Nó chỉ hoạt động khi bao gồm playsinline.


3
Chúng tôi không muốn hiển thị các điều khiển video mặc dù điều đó đã làm cho nó hoạt động trên iphones cho chúng tôi, nhưng việc thêm "Playinginline" hoạt động hoàn hảo và làm cho nó hoạt động trên iphones cũng như tất cả các thiết bị khác mà không hiển thị điều khiển. Câu trả lời hoàn hảo!
Erica Summers

10
Lưu ý cho bất kỳ ai sử dụng React: bạn sẽ cần sử dụng playsInlinetrong camelCase.
Ethan Ryan

6
Đây thực sự là câu trả lời tốt nhất ở đây.
RubyFanatic

điều này hoạt động 100% .. Tôi nhận thấy vấn đề không chỉ là bản thân trình duyệt chứ không phải iPhone nói chung vì video của tôi cũng không phát trong các trình duyệt khác trên iPhone
noel293

44

Một giải pháp khả thi khác cho bạn cho những người tìm kiếm trong tương lai: (Nếu vấn đề của bạn không phải là vấn đề về mimetype.)

Vì một số lý do, video sẽ không phát trên iPad trừ khi tôi đặt cờ control = "true".

Ví dụ: Điều này làm việc cho tôi trên iPhone nhưng không hiệu quả với iPad.

<video loop autoplay width='100%' height='100%' src='//some_video.mp4' type='video/mp4'></video>

Và điều này hiện hoạt động trên cả iPad và iPhone:

<video loop autoplay controls="true" width='100%' height='100%' src='//some_video.mp4' type='video/mp4'></video>

Đây cũng là vấn đề đối với tôi ... không có gì hoạt động cho đến khi thêm thuộc tính điều khiển vào thẻ video.
Bishbulb

Điều này làm việc hoàn hảo cho tôi. Đối với những độc giả trong tương lai, tôi đang nhúng mp4 bằng thẻ video mà @niknak đã đăng ở trên. Cảm ơn!
Jon

1
Đối với tôi, việc thêm autoplaytùy chọn đã hoạt động. Tôi có controls="false"trong mã của mình.
Hozefa

1
@Hozefa controls="false"là thừa; controlschính nó là một boolean mà khi có mặt sẽ bật các điều khiển và khi không có thì sẽ không có điều khiển nào. Xem thông số kỹ thuật
fahad

1
Ngoài ra, vì controlslà một thuộc tính Boolean, các giá trị hợp lệ duy nhất không có giá trị nào, một chuỗi rỗng hoặc tên riêng của nó. Giá trị đúng và sai không chính xác.
Ian Devlin

32

Máy chủ web của bạn có thể không hỗ trợ các yêu cầu phạm vi byte HTTP. Đây là trường hợp của máy chủ web tôi đang sử dụng và kết quả là tiện ích video tải và nút phát xuất hiện, nhưng việc nhấp vào nút này không có tác dụng. - Video hoạt động trong FF và Chrome, nhưng không hoạt động trên iPhone hoặc iPad.

Đọc thêm tại đây trên mobiforge.com về các yêu cầu phạm vi byte, trong Phụ lục A: Truyền trực tuyến cho Apple iPhone :

Đầu tiên, Trình duyệt Web Safari yêu cầu nội dung và nếu đó là tệp âm thanh hoặc video, nó sẽ mở trình phát đa phương tiện. Sau đó, trình phát đa phương tiện yêu cầu 2 byte đầu tiên của nội dung, để đảm bảo rằng Máy chủ web hỗ trợ các yêu cầu phạm vi byte. Sau đó, nếu nó hỗ trợ chúng, trình phát media của iPhone sẽ yêu cầu phần còn lại của nội dung theo phạm vi byte và phát nó.

Bạn có thể muốn tìm kiếm trên web cho "dải byte mp4 của iphone".



Đây là vấn đề của tôi. Tôi đang sử dụng Flask với các lệnh gọi 'send_file' và 'send_from_directory'. Tôi đã phải thêm đối số 'có điều kiện = Đúng' vào các lệnh gọi đó.
Joost

Câu trả lời này áp dụng cho tôi và đã làm việc trong quá trình triển khai Play Framework của tôi (2.7) Sử dụng RangeResult.ofPath(finalPath, range, Some(mime))và phải hoạt động từ 2.7 trở lên.
Manabu Tokunaga

PS: Quên thêm cách lấy phạm vi. Đó là cuộc gọi này. Nó có tên là "Phạm vi" `val range = request.headers.get (" Range ")`
Manabu Tokunaga

17

Nếu video của bạn được bảo vệ bởi hệ thống đăng nhập dựa trên phiên, Safari sẽ không tải được chúng. Điều này là do Safari đưa ra yêu cầu ban đầu cho video, sau đó chuyển giao nhiệm vụ cho QuickTime, công cụ này sẽ đưa ra một yêu cầu khác. Vì Safari giữ thông tin phiên nên nó sẽ vượt qua xác thực, nhưng QuickTime thì không.

Bạn có thể thấy điều này nếu bạn xem nhật ký truy cập máy chủ của mình ... trước tiên là yêu cầu từ Safari, sau đó là yêu cầu từ QuickTime. Các trình duyệt khác chỉ thực hiện một yêu cầu duy nhất từ ​​chính trình duyệt.

Nếu đây là vấn đề của bạn, bạn có thể phải làm lại quyền truy cập video để sử dụng mã thông báo tạm thời hoặc quyền truy cập trong thời gian giới hạn so với yêu cầu ban đầu. Tôi sẽ cập nhật câu trả lời này nếu tôi tìm thấy một giải pháp trực tiếp hơn.


12

Đối với các tìm kiếm trong tương lai, tôi có một tệp mp4 mà tôi đã giảm tỷ lệ với Handbrake bằng cách sử dụng handbrake-gtktừ apt-get, ví dụ sudo apt-get install handbrake-gtk. Trong Ubuntu 14.04, handbrakekho lưu trữ không bao gồm hỗ trợ cho MP4 ngay lập tức. Tôi đã để nguyên cài đặt mặc định, loại bỏ đoạn âm thanh và nó tạo tệp * .M4V. Đối với những người thắc mắc, chúng là cùng một vùng chứa nhưng M4V chủ yếu được sử dụng trên iOS để mở trong iTunes.

Điều này hoạt động trong tất cả các trình duyệt ngoại trừ Safari:

<video preload="yes" autoplay loop width="100%" height="auto" poster="http://cdn.foo.com/bar.png">
            <source src="//cdn.foo.com/bar-video.m4v" type="video/mp4">
            <source src="//cdn.foo.com/bar-video.webm" type="video/webm">
</video>

Tôi đã thay đổi kiểu kịch câm giữa video/mp4video/m4vkhông có hiệu ứng. Tôi cũng đã thử nghiệm thêm controlthuộc tính và một lần nữa, không có hiệu lực.

Điều này hoạt động trong tất cả các trình duyệt được thử nghiệm bao gồm Safari 7 trên Mavericks và Safari 8 trên Yosemite. Tôi chỉ cần đổi tên cùng một tệp m4v (tệp thực tế, không chỉ HTML) thành mp4 và tải lại lên CDN của chúng tôi:

<video preload="yes" autoplay loop width="100%" height="auto" poster="http://cdn.foo.com/bar.png">
            <source src="//cdn.foo.com/bar-video.mp4" type="video/mp4">
            <source src="//cdn.foo.com/bar-video.webm" type="video/webm">
</video>

Safari Tôi nghĩ hoàn toàn mong đợi một MP4 thực sự được đặt tên. Không có sự kết hợp nào khác giữa tệp và kiểu kịch câm phù hợp với tôi. Tôi nghĩ rằng các trình duyệt khác chọn tệp WEBM trước, đặc biệt là Chrome, mặc dù tôi khá chắc chắn rằng danh sách nguồn nên chọn nguồn đầu tiên được hỗ trợ về mặt kỹ thuật.

Tuy nhiên, điều này đã không khắc phục được sự cố video trong các thiết bị iOS (iPad 3 "iPad mới" và iPhone 6 đã được thử nghiệm).


8

Chỉ cần thêm một mutedthuộc tính và mọi thứ sẽ hoạt động tốt.

Nguồn của câu trả lời này là ở đây: https://webkit.org/blog/6784/new-video-policies-for-ios/

Theo mặc định, WebKit sẽ có các chính sách sau:

<video autoplay> các phần tử bây giờ sẽ tôn trọng thuộc tính tự động phát, đối với các phần tử đáp ứng các điều kiện sau:

  • <video> các phần tử sẽ được phép tự động phát mà không cần cử chỉ của người dùng nếu phương tiện nguồn của chúng không chứa bản âm thanh.
  • <video muted> các phần tử cũng sẽ được phép tự động phát mà không cần cử chỉ của người dùng.
  • Nếu một <video>phần tử đạt được bản nhạc hoặc bị tắt tiếng mà không có cử chỉ của người dùng, thì quá trình phát lại sẽ tạm dừng.
  • <video autoplay> các phần tử sẽ chỉ bắt đầu phát khi hiển thị trên màn hình, chẳng hạn như khi chúng được cuộn vào chế độ xem, hiển thị thông qua CSS và được chèn vào DOM.
  • <video autoplay> các phần tử sẽ tạm dừng nếu chúng trở nên không hiển thị, chẳng hạn như bằng cách cuộn ra khỏi chế độ xem.

<video> các phần tử bây giờ sẽ tôn trọng phương thức play (), cho các phần tử đáp ứng các điều kiện sau:

  • <video> các phần tử sẽ được phép phát () mà không cần cử chỉ của người dùng nếu phương tiện nguồn của họ không chứa bản âm thanh hoặc nếu thuộc tính tắt tiếng của chúng được đặt thành true.
  • Nếu một <video>phần tử đạt được bản nhạc hoặc bị tắt tiếng mà không có cử chỉ của người dùng, thì quá trình phát lại sẽ tạm dừng.
  • <video> các phần tử sẽ được phép phát () khi không hiển thị trên màn hình hoặc khi ra khỏi chế độ xem.
  • video.play () sẽ trả về một Lời hứa, sẽ bị từ chối nếu bất kỳ điều kiện nào trong số này không được đáp ứng.

Trên iPhone, <video playsinline>các phần tử giờ đây sẽ được phép phát nội tuyến và sẽ không tự động chuyển sang chế độ toàn màn hình khi bắt đầu phát lại. <video>các phần tử không có thuộc tính playinline sẽ tiếp tục yêu cầu chế độ toàn màn hình để phát lại trên iPhone. Khi thoát toàn màn hình bằng cử chỉ chụm, <video>các phần tử không có nội tuyến sẽ tiếp tục phát nội tuyến.


4

Tôi nhận thấy rằng mặc dù Safari không hỗ trợ HTML5 Video, nhưng Quicktime Player phải được cài đặt để tính năng này hoạt động. Trên trang web mà tôi đã xây dựng sử dụng HTML5 Video, người dùng được cảnh báo khi sử dụng Safari, cho họ biết họ phải cài đặt Quicktime, nếu không họ sẽ chỉ có thể xem bản ghi video. Hi vọng điêu nay co ich.


Câu trả lời này không còn cập nhật nữa.
Jor

4

Tôi đã gặp các vấn đề kỳ lạ với chứng chỉ SSL 'phát triển' không đáng tin cậy trong đó Safari di động sẽ khá vui vẻ phân phát trang của bạn nhưng từ chối phân phát video tới chứng chỉ SSL 'giả mạo' ngay cả khi bạn đã chấp nhận chứng chỉ.

Để kiểm tra, bạn có thể triển khai video ở nơi khác - hoặc chuyển sang http (cho toàn bộ trang) và video sẽ phát.



3

Kể từ iOS 6.1, không còn có thể tự động phát video trên iPad. Theo tài liệu của Apple, tính năng Tự động phát không hoạt động trên Safari trong tất cả các thiết bị iOS bao gồm cả iPad:

"Apple đã đưa ra quyết định vô hiệu hóa tính năng tự động phát video trên thiết bị iOS, thông qua cả triển khai tập lệnh và thuộc tính.

Trong Safari, trên iOS (đối với tất cả các thiết bị, bao gồm cả iPad), nơi người dùng có thể sử dụng mạng di động và bị tính phí cho mỗi đơn vị dữ liệu, tính năng tải trước và tự động phát bị tắt. Không có dữ liệu nào được tải cho đến khi người dùng bắt đầu nó. "

Bạn có thể đọc thêm về nó trong tài liệu Apple này


1
Điều này không cố gắng trả lời câu hỏi theo bất kỳ cách nào và có thể hữu ích như một nhận xét. Câu hỏi là về video hoàn toàn không phát và không liên quan gì đến tính năng tự động phát.
zzzzBov

3

Đối với .mp4, điều này hoạt động (safari di động và máy tính để bàn):

<video height="250" width="250" controls>
    <source src="video.mp4" type="video/mp4" />
    Your browser does not support the video tag.
</video>

Điều controls=”true”được đề cập trong một bài đăng ở trên không liên quan đến tôi vì Apple nói rằng chỉ cần sử dụng các điều khiển của riêng nó.

Tham khảo: “Để sử dụng âm thanh hoặc video HTML5, hãy bắt đầu bằng cách tạo một hoặc phần tử, chỉ định URL nguồn cho phương tiện và bao gồm thuộc tính điều khiển. <video src="http://example.com/path/mymovie.mp4" controls></video>

Nguồn: https://developer.apple.com/library/content/documentation/AudioVideo/Conceptual/Using_HTML5_Audio_Video/Introduction/Introduction.html

Trong giao dịch của tôi (một suy đoán nhỏ) : Tôi nhận thấy rằng việc tải video lên từ iPhone sẽ gửi video tới máy chủ dưới dạng .quicktime. Trớ trêu thay, đây là sự cố khi cố gắng phát lại video từ máy chủ trên safari. (điện thoại di động và máy tính để bàn).

Vì vậy, nếu (giống như tôi) bạn đang gặp sự cố .quicktime (hoặc bất kỳ thứ gì khác ngoài .mp4) trong safari , đây là một công việc được cung cấp bởi apple. Lưu ý, tôi vẫn chưa tự mình kiểm tra nó và tôi không hài lòng lắm với nó, chỉ cần cung cấp thêm thông tin.

Tham khảo: “Quay lại trình cắm QuickTime Có một cách đơn giản để quay lại trình cắm QuickTime hoạt động cho gần như tất cả các trình duyệt — tải xuống tệp JavaScript dựng sẵn do Apple cung cấp, ac_quicktime.js, từ HTML Video Ví dụ và đưa nó vào trang web của bạn bằng cách chèn dòng mã sau vào phần đầu HTML của bạn: <script src="ac_quicktime.js" type="text/javascript"></script>

Nguồn: https://developer.apple.com/library/content/documentation/AudioVideo/Conceptual/Using_HTML5_Audio_Video/AudioandVideoTagBasics/AudioandVideoTagBasics.html#//apple_ref/doc/uid/TP40009523-CH2-SW6

Cập nhật: Để đổi tên .quicktime thành .movtrước khi tải lên máy chủ (trong loại tệp base64 "data: video / mov;"), hãy bỏ qua ac_quicktime.js. . . sau đó sẽ hoạt động trong thẻ video html; Hackerdy ​​Hack.


2

Bằng cách sử dụng mã này, video sẽ phát trên tất cả các trình duyệt trong safari cũng như trên các thiết bị iOS ... Hãy sử dụng nó mọi người (Tôi đã sử dụng cái này và hoạt động tốt)

`

<video autoplay loop muted playsinline poster="video_thumbnail/thumbanil.jpg" src="video/video.mp4">
    	<source src="video/video.mp4" type="video/mp4"></source>
		<source src="video/video.webm" type="video/webm"></source>
		<source src="video/video.mov" type="video/mov"></source>
</video>

`


Đây là điều duy nhất phù hợp với tôi khi cố gắng tạo video nền để lặp lại, tự động phát và không có điều khiển. Cảm ơn Arvinda!
Stuart Pinfold

2

Tôi đã gặp sự cố tương tự trong đó video bên trong <video>thẻ chỉ phát trên Chrome và Firefox chứ không phát trên Safari. Đây là những gì tôi đã làm để sửa nó ...

Một thủ thuật kỳ lạ mà tôi tìm thấy là có hai tham chiếu khác nhau đến video của bạn, một trong <video>thẻ cho Chrome và Firefox và một trong một <img>thẻ cho Safari. Thực tế thú vị là video thực sự phát trong một <img>thẻ trên Safari. Sau đó, hãy viết một script đơn giản để ẩn cái này hay cái kia khi một trình duyệt nhất định đang được sử dụng. Ví dụ:

<video id="video-tag" autoplay muted loop playsinline> 
    <source src="video.mp4" type="video/mp4" />  
</video>
<img id="img-tag" src="video.mp4">

<script type="text/javascript">
    function BrowserDetection() {

    //Check if browser is Safari, if it is, hide the <video> tag, otherwise hide the <img> tag
    if (navigator.userAgent.search("Safari") >= 0 && navigator.userAgent.search("Chrome") < 0) {
        document.getElementById('video-tag').style.display= "none";
    } else {
        document.getElementById('img-tag').style.display= "none";
    }               

    //And run the script. Note that the script tag needs to be run after HTML so where you place it is important. 
    BrowserDetection();
</script>

Điều này cũng giúp giải quyết vấn đề khung / viền đen mỏng trên một số video trên một số trình duyệt nhất định mà chúng được hiển thị không chính xác.


1

Tôi đã gặp sự cố này trong đó tính năng phát lại .mp4 trong Safari không hoạt động, nhưng trong các trình duyệt khác thì ổn. Lỗi mà tôi gặp trong bảng điều khiển là: lỗi media src không được hỗ trợ. Trong trường hợp của tôi, điều này hóa ra là vấn đề kiểu MIME, nhưng không phải vì nó không được khai báo là kiểu MIME trong IIS, mà là nó đã được khai báo hai lần (một lần trong IIS và cả trong tệp web.config). Tôi đã phát hiện ra điều này bằng cách cố gắng tải xuống tệp .mp4 cục bộ trên máy chủ. Tôi đã xóa tệp cấu hình khỏi vị trí của nội dung tôi đang cố phát và nó đã khắc phục được sự cố. Tôi có thể vừa xóa loại MIME khỏi tệp web.config, nhưng trong trường hợp này, tệp web.config không cần thiết.


1

Đối với IOS, vui lòng chỉ sử dụng tệp nguồn mp4. Tôi đã quan sát thấy một vấn đề trong trình duyệt safari mới nhất mà trình duyệt safari không thể phát hiện tệp nguồn một cách chính xác và do đó, tính năng tự động phát video không hoạt động.

Hãy kiểm tra ví dụ dưới đây -

     <video autoplay loop muted playsinline poster="video_thumbnail/thumbanil.jpg" src="video/video.mp4">
        <source src="video/video.mp4" type="video/mp4"></source>
        <source src="video/video.webm" type="video/webm"></source>
     </video>

Vì tôi đã sử dụng mp4, webm trong các tệp nguồn. Safari deosnt hỗ trợ webm nhưng vẫn ở phiên bản safari mới nhất, nó sẽ chọn webm và nó không tự động phát video.

Vì vậy, để làm việc tự động phát trên trình duyệt được hỗ trợ, tôi khuyên bạn nên kiểm tra trình duyệt trước tiên và dựa vào đó bạn nên tạo html của mình.

Vì vậy, đối với safari, hãy sử dụng html bên dưới.

     <video autoplay loop muted playsinline poster="video_thumbnail/thumbanil.jpg" src="video/video.mp4">
        <source src="video/video.mp4" type="video/mp4"></source>
     </video>

Đối với ngoài safari,

     <video autoplay loop muted playsinline poster="video_thumbnail/thumbanil.jpg" src="video/video.mp4">
        <source src="video/video.webm" type="video/webm"></source>
        <source src="video/video.mp4" type="video/mp4"></source>
     </video>

1

Tôi gặp vấn đề tương tự - hãy đảm bảo url cho nội dung video đến từ miền an toàn. Môi trường dành cho nhà phát triển của chúng tôi là http trong khi quá trình sản xuất được bảo mật. Do video được tham chiếu qua đường dẫn tương đối nên nó không hoạt động khi phát triển. Có vẻ là một vấn đề mà apple yêu cầu video phải được bảo mật ...


1

đang hoạt động nhưng MacOs gần đây có chính sách tự động phát cho người dùng: https://webkit.org/blog/7734/auto-play-policy-changes-for-macos/ , tôi đã giải quyết vấn đề tương tự bằng cách sử dụng nút để bật âm thanh:

ejm:

<video autoplay loop muted id="myVideo">
  <source src="amazon.mp4" type="video/mp4">
  Sorry, your browser doesn't support embedded videos...
</video>

<button class="pausee" onclick="disableMute()" type="button">Enable sound</button>

<script>
var vid = document.getElementById("myVideo");
function disableMute() { 
  vid.muted = false;
}
</script>


0

Tôi đã phải đối mặt với cùng một vấn đề. Vì kích thước khung hình video của tôi quá lớn. tức là, apple hỗ trợ video H.264 Baseline Profile Level 3.0, lên đến 640 x 480 ở tốc độ 30 khung hình / giây. Lưu ý rằng khung B không được hỗ trợ trong cấu hình Đường cơ sở. kiểm tra cái này để biết thêm thông tin


0

Điều giúp ích trong trường hợp của tôi là bỏ bản âm thanh. Trước đây nó im lặng, nhưng nó phải biến mất hoàn toàn.

Trên ubuntu:

ffmpeg -i input.mp4 -vcodec copy -an output.mp4

Và safari / máy tính để bàn bắt đầu phát video


0

Đối với trường hợp sử dụng của tôi, có hai điều :

  1. Tôi đã không sử dụng chính sách của thuộc tính / webkit mới playsinline ;
  2. My video / mime-type hoặc whathathell không được mã hóa đúng cách, vì vậy tôi đã sử dụng trang web này để chuyển nó sang tất cả các định dạng tôi cần: https://pt.converterpoint.com/

o /


0

Tôi gặp chính xác vấn đề tương tự, thẻ video HTML của tôi phát tốt trên Chrome & Mozilla, trên Safari - các điều khiển xuất hiện nhưng video bị trống. Tôi đã cố gắng chơi với tất cả các thuộc tính trên, xóa / thêm tắt tiếng, PlayInline, v.v. và không có gì hoạt động. Sự cố cũng xảy ra với các máy chủ như được mô tả ở đây. Tôi đã có cái này - KHÔNG LÀM VIỆC:

<video 
  muted
  playsInline
  controls
  style={{ width: `100%` }}>
  <source src={MfMfVideo} type="video/mp4" />
  <source src={MfMfVideoWebM} type="video/webm" />
</video>

và tôi vừa chuyển video của mình ra thư viện bên ngoài và hiện tại tôi đã ổn trên Safari, nó hoạt động tốt:

<video 
  muted
  playsInline
  controls 
  style={{ width: `100%` }}>
  <source src={"https://blabla.com/video/dixneuf-video_r8xuvc.mp4"} type="video/mp4" />
  <source src={"https://blabla.com/videodixneuf-video_gyquuu.webm"} type="video/webm" />
  Sorry, your browser doesn't support embedded videos.
</video>

0

Không có gì hiệu quả với tôi ngoại trừ việc nén video xuống dưới 30mb. Đó là thủ thuật nhưng với độ nén rất tệ.


0

Nếu ai đó gặp sự cố tương tự, tôi đã giải quyết bằng cách bật hỗ trợ Byte-Range trên máy chủ của mình. Có vẻ như Safari yêu cầu các yêu cầu phạm vi Byte. Trong trường hợp của tôi, tôi sử dụng NGINX và tôi phải thêm proxy_force_ranges on;vào tệp cấu hình của mình. Cảm ơn câu trả lời này !

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.