2012-07-21 8 views
12

To dziwne, niektóre pliki MP4 będą odtwarzane w HTML5, ale inne nie. Oto strona testowa http://psdtucss.com/test/test2.html, otwórz ją w Chrome 19.0.1084.46 m. Pierwszy MP4 gra, ale drugi nie. Jaki jest powód. Kod jest bardzo prosty:Dlaczego niektóre pliki MP4 nie mogą być odtwarzane za pośrednictwem HTML5?

<h3>the first mp4 file can play</h3> 
<p><video width="640" height="264" controls="controls"><source src="1.mp4" type="video/mp4" />Your browser does not support the video tag.</video></p> 
<h3>but the other can't play</h3> 
<p><video width="640" height="264" controls="controls"><source src="2.mp4" type="video/mp4" />Your browser does not support the video tag.</video></p> 

Jak mogę to naprawić?

Próbowałem wideojs, ale niektóre pliki MP4 nie będą odtwarzane. Strona testowa jest tutaj: http://psdtucss.com/test/test.html

Odpowiedz

3

MP4 obsługuje wiele kodeków. Niektórzy gracze nie obsługują wszystkich kodeków (niektóre kody wymagają licencji lub niektóre kodeki zostały wydane po zapisaniu przeglądarki).

+0

czy istnieje sposób na konwersję kodeków? –

+0

Oczywiście, istnieje kilka narzędzi umożliwiających ponowne kodowanie wideo –

15

mp4 to tylko format kontenera . Może zawierać wideo i audio w wielu różnych kodekach . Gracze (także ci w przeglądarce) muszą obsługiwać format kontenera i wszystkie używane kodeki, aby poprawnie odtwarzać wideo.

Korzystanie z VideoJS to zdecydowanie dobry pomysł, obsługuje on wiele obejść specyficznych dla przeglądarki.


Jednak nie rozwiązuje to jednego problemu: Nie ma jednego kodeku wideo obsługiwanego we wszystkich przeglądarkach. (Patrz również Wikipedia: HTML5 video: Browser_support)

Praktycznym rozwiązaniem jest prawdopodobnie zapewniają dwie wersje: h264 w kontenerze mp4 i co zazwyczaj nazywa WebM (VP8 Vorbis wideo i dźwięku w określonym kontenerze Matroska). Z tymi dwoma obejmujesz wszystkie główne przeglądarki.


Do konwersji wideo/przekodowywania dostępne są niektóre narzędzia i usługi. Nie mam pojęcia o twoim systemie operacyjnym lub wymaganiach. Więc tak jak dzikie odgadnięcia:

Coś kiedyś pomóc przyjacielowi publikować kilka filmy na swoim małym blogu jest this shell script using ffmpeg do nawrócenia. Wciąż pozostawia wiele do zrobienia dla poprawy (pod względem jakości wideo, wydajności i kodowania), ale powinno wystarczyć, aby zacząć.

7

Pierwsze wideo wykorzystuje kodowanie h264, które jest obsługiwane przez wszystko oprócz Firefoksa i Opery. Drugie wideo wykorzystuje kodek wideo MPEG-4, który nie jest obsługiwany przez przeglądarki. Jedynymi szeroko obsługiwanymi kodekami wideo są Theora, H.264 i VP8.

MPEG-4 Part 2 kodek wideo różni się od formatu MPEG-4 Part 14 pojemnika

5

Twój 1.mp4 film jest zakodowany z użyciem H.264 ale 2.mp4 wideo nie jest. pobierz MediaInfo, żeby to sprawdzić.

Powiązane problemy