2010-01-22 28 views
8

Próbuję przesyłać strumieniowo wideo (lub używać progresywnego pobierania) do przeglądarki Motorola Droid i nie mam zbyt dużego szczęścia. Z moim iPhonem mogę skierować Safari na numer http://xxx.xxx.xxx/FileName.mp4 (który jest plikiem wideo MPEG-4), a Safari otwiera quicktime i odtwarza wideo. Jednakże, wraz z Droidem, odwiedzam ten sam adres internetowy i mam do czynienia z błędem stwierdzającym "Nie można odtworzyć wideo .... Przepraszamy, ten film wideo nie jest odpowiedni do przesyłania strumieniowego na to urządzenie".Strumieniowe przesyłanie wideo (lub pobieranie progresywne) do Droid Browser

Kiedy przekierowuję przeglądarkę Droida do pliku WMV, w pełni pobierze plik wideo, a następnie odtwarza go w odtwarzaczu wideo Droid, jeśli go kliknę.

Idealnie, chciałbym replikować zachowanie iPhone'a na Droid, gdzie pojawia się odtwarzacz wideo i wideo zaczyna się przed pełnym pobraniem. Format wideo nie jest problemem, ponieważ mogę kodować wideo do niemal każdego standardu. Próbowałem pliku .mp4, ponieważ dokumentacja Droid mówi, że obsługuje wideo MPEG-4, chociaż nie mogę go uruchomić z przeglądarki.

Każdy wgląd byłby bardzo doceniany.

Odpowiedz

0

Nie jestem do końca pewien na ten temat, ale nie sądzę, że to naprawdę możliwe.

Z tego co wiem, "obsługiwane" oznacza tylko, że można go odtworzyć po wyjęciu z pudełka, ale nie ma wtyczek do przeglądarki, więc nie ma z tym nic wspólnego.

Jeśli chcesz sprawdzić, czy system Android może odtworzyć plik, umieść go na karcie SD i odtwórz w Galerii.

0

Odtwarzanie pliku mp4 z przeglądarki jest obsługiwane. Jeśli masz konkretny link, który nie działa, opublikuj link. Warto również zobaczyć, co pokazuje "adb logcat".

1

Należy uruchomić zamiar i ustawić typ na "wideo/*", aby otwierał się bezpośrednio z odtwarzaczem wideo zamiast przeglądarki.

1

Przesyłanie strumieniowe w systemie Android to ból w dupę. Najlepszym rozwiązaniem jest przesyłanie strumieniowe wideo za pomocą protokołu RTSP.

Jeśli Twój Droid jest zaktualizowany do wersji 2.2, możesz także skonfigurować prostą stronę internetową z wbudowanym odtwarzaczem Flash, takim jak jwplayer (nie zapomnij skonfigurować alternatywnej zawartości, gdy odtwarzacz Flash nie jest zainstalowany na urządzeniu, aby użytkownik mógł pobrać od Adobe).

Udało mi się wdrożyć oba rozwiązania. RTSP dla < 2.1 i osadzony Flash player odtwarzający wideo ze strumienia RTMP (można również odtwarzać lokalny plik z serwera)

Należy pamiętać, że w niektórych urządzeniach (Hero) nie można osadzić WebView z odtwarzaczem Flash w aplikacji .

Jeśli szukasz szybkiego rozwiązania, chciałbym spróbować 3gp.

Ponadto, gdy łączność nie jest wystarczająco szybka, aby odtworzyć wideo, otrzymasz ten sam błąd, który wysłałeś (nawet w przypadku prawidłowo zakodowanych filmów).

EDYCJA: Użyłem H.264 na strumieniach RTSP i VP6 na RTMP. VP8 jest obsługiwany tylko przez nowsze urządzenia.

+0

Czy mógłbyś podzielić się tym, jak użyłeś rtmp w Androidzie? mam na myśli korzystanie z jakiej biblioteki? i wszystkich ? –

+0

To było dawno temu, więc może teraz ma lepsze wsparcie.To, co zrobiłem dla RTMP, to mieć bardzo prostą stronę HTML, która zawierała tylko osadzony JWPlayer (było to obejście, ponieważ na wielu urządzeniach strumień RTMP nie byłby odtwarzany po otwarciu jako łącze strumienia wideo, jak po prostu po otwarciu Łącze RTSP z intencją). Po stronie serwera użyliśmy Wowzy do streamowania wideo. Zaleciłbym wykonanie początkowych testów za pomocą prostego kodowanego wideo (może mpeg1 lub 2), więc masz pewność, że działa streaming, ponieważ jest wiele kodeków, które nie są obsługiwane przez wiele urządzeń. – momo

+0

to open source JWPlayer ? Mam na myśli widziałem wiele kodów, które go używają, ale nie jestem naprawdę świadomy co to jest, biblioteka open source lub co? tak, prawda, niektóre kodeki nie są obsługiwane na niektórych urządzeniach :(. N dzięki za odpowiedź –

Powiązane problemy