Mamy dostawcę, który daje nam pliki m3u8 dla strumieni HLS (pierwotnie przeznaczone do użytku w aplikacji na iOS).HLS (http streaming na żywo) na Androida 3.0 i szukając
Android 3.0+ obsługuje transmisję na żywo http (http://developer.android.com/guide/appendix/media-formats.html) - i faktycznie możemy odtwarzać te pliki m3u8 przy użyciu standardowego VideoView na Androida 3.0+ .
EDYCJA: Android traktuje to jako "wideo w czasie rzeczywistym" i wyłącza możliwość wyszukiwania lub obliczania czasu trwania filmu. (Gdzie iOS pozwala szukać w strumieniu bez problemów)
Czy istnieje sposób zmuszenia Androida 3.0+ do szukania w tych plikach?
Oto aktywność próbki dla innych, aby przetestować z:
import android.app.Activity;
import android.os.Bundle;
import android.widget.MediaController;
import android.widget.VideoView;
public class SandboxActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
VideoView vw = (VideoView) findViewById(R.id.videoView);
vw.setVideoPath("http://devimages.apple.com/iphone/samples/bipbop/gear4/prog_index.m3u8");
vw.setMediaController(new MediaController(this));
vw.requestFocus();
vw.start();
}
}
i układ próbkowania:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:gravity="center" android:id="@+id/root">
<VideoView
android:id="@+id/videoView"
android:layout_width="wrap_content"
android:layout_height="match_parent" />
</RelativeLayout>
To jest za pomocą łącza próbka HLS firmy Apple.
Czy znalazłeś rozwiązanie tego problemu na końcu? –
Chcę zaimplementować wyszukiwanie również w transmisji na żywo w HLS. Znalazłeś jakieś rozwiązanie? –