2015-05-06 21 views
6

Gdzie powinienem umieścić wideo, aby móc kontrolować szybkość odtwarzania od prędkości 25% aż do prędkości 1000% (10x szybciej)?Obsługa wideo i szybkość odtwarzania od 25% do 1000%.

Controlling playback speed jest łatwe z HTML5 <video>. Jednak nie mogę znaleźć hosta wideo obsługującego wymagany zakres prędkości.

opcje mam uznać:

własnym gospodarzem

Jedną z opcji jest gospodarzem wideo na własnych serwerach. Z tego, co przeczytałem, wynika, że ​​wiąże się to z wieloma komplikacjami i preferuje hosting w istniejących usługach (Youtube, Vimeo, Brightcove itp.).

Youtube

Spojrzałem przez YouTube video API, ale ma tylko pewien zakres szybkości odtwarzania, że ​​nie brzmi jak robi się do prędkości 1000%. Chociaż posiadam filmy, więc może mam kontrolę nad dostępnym odtwarzaniem, gdy je ładuję?

Vimeo

nie kontroluje szybkość odtwarzania.

Brightcove

API ma function do ustawiania szybkości odtwarzania. Ale wymaga również zapłacenia ...

+0

Czy możesz wyjaśnić powikłania samo-hostingu, które znalazłeś? – Knifa

+0

Wydaje się być problemem z prędkością pobierania. Nagranie z mojego telefonu to około 2 MB na sekundę. Tak więc 10-krotne odtwarzanie wymagałoby prędkości pobierania 20 MB, aby nadążyć. Niższa jakość i kodowanie obniżą wymaganą prędkość, ale nadal potrzebujesz dość połączenia. –

Odpowiedz

2

Być może będziesz w stanie skorzystać z MediaElement.js szczególnie z tym przykładem here. Możliwe, że YouTube po prostu nie będzie obsługiwał treści wystarczająco szybko, by uruchomić z szybkością 1000%.

Jeśli tak jest, to myślę, że najłatwiej jest toczyć własne rozwiązanie z elementem <video>, korzystając z dowolnej usługi CDN do obsługi treści. Ograniczeniem jest to, że jesteś ograniczony przez obsługę przeglądarki, chociaż prawie wszystkie nowoczesne przeglądarki będą obsługiwały znacznik <video>.

+0

MediaElement może mimo wszystko obsługiwać prędkość odtwarzania w HTML5, więc nic nie zyskujesz. – Josiah

1

Wygląda na to, że nie jest to możliwe, chyba że użyjesz elementu HTML <video> w niestandardowej implementacji. Nawet interfejs YouTube API:

Mimo że odtwarzacz AS3 obsługuje sterowanie szybkością odtwarzania, zmienne prędkości są obecnie obsługiwane tylko w odtwarzaczu HTML5.

Obecnie (maj 2015), najlepiej jest stworzyć własne rozwiązanie, ponieważ youtube wydaje się używać lampy błyskowej nawet w niektórych przeglądarkach obsługujących HTML5 video, jak mój Opera 29 (choć jeśli mogę zmienić user-agent do chrome, obsługuje odtwarzacz html5 ...). Większość przeglądarek obsługuje format mp4 i można kodować wideo z różnymi prędkościami odtwarzania jako rezerwowe, jeśli element <video> nie jest obsługiwany. W tym momencie <video> support is approaching 95% in the US, więc wycofanie może nie być konieczne w zależności od odbiorców.

Inną zaletą korzystania z własnego rozwiązania jest to, że youtube wydaje się obsługiwać odtwarzanie do 2x prędkości (200%).

Największy problem z hostingiem własnego wideo, który nie został rozwiązany przez element <video>, o ile widziałem, to obciążenie serwera. Używanie CDN prawdopodobnie rozwiązałoby ten problem. Należy pamiętać, że mój laptop nie może odtwarzać płynnego wideo HD (no, jakość DVD, nie mam zbyt wielu filmów do przetestowania) obsługiwanego z mojego komputera na ponad 2 x, więc jeśli nie używasz bardzo małych filmów możesz znaleźć 10 razy niepraktyczne.

ma dobry przegląd konfiguracji elementu <video>.

0

Możesz hostować pliki multimedialne na AWS S3 (na samym AWS lub kompatybilnych usługach, takich jak Dreamhost). S3 rozwiązuje niektóre problemy związane z FTP z samodzielnym hostowaniem plików multimedialnych, takich jak przesyłanie dużych plików, wersjonowanie itp., I może to stanowić rozsądny kompromis, gdy konieczne jest pełne sterowanie odtwarzaczem multimedialnym.

Jeśli powyższe rozwiązanie nie jest możliwe, wówczas można:

  • transkodować góry mediów w kilku najbardziej odpowiednich prędkościach. Zmiana szybkości odtwarzania oznacza przejście na inny film.

  • Umożliwia pobranie plików lub odpowiednich porcji, aby użytkownik mógł użyć lokalnego odtwarzacza (np. VLC), aby "odtwarzać" multimedia.

0

Można to zrobić przy pomocy Vimeo, wersji Pro. Przechodzę do hostowanego wideo, pliku wideo i dostępu do plików wideo. Istnieją linki do plików wideo, które mogą być używane jako źródło wideo HTML5.

<video id="video" src="http://player.vimeo.com/external/1278xxx.hd.mp4?s=xxx&profile_id=119"> 

Po że to przy użyciu jQuery aby uzyskać uchwyt na wideo

var video = $("video")[0]; 

i zmiana szybkości odtwarzania jest

video.playbackRate = 0.25; 

może działać w niektórych kwestiach związanych z bezpieczeństwem, jak każdy z linkiem może teraz pobierz plik prawym przyciskiem myszy i Zapisz jako.

+0

@jocshea - większość usług strumieniowania obsługuje 0.25x - 4x. Potrzebuję czegoś, co wykracza poza 4x. Czy Vimeo to robi? –

Powiązane problemy