Ich bin mir nicht 100%ig sicher, aber ich glaube, dass man die meisten Videos nicht streamen kann, weil das Format die Metadaten des Videos speichert. Deshalb muss You Tube Ihre Videodateien konvertieren, anstatt sie einfach in einem beliebigen Format zu zeigen. Es gibt Protokolle, die diese Metadaten kapseln und es ermöglichen, jedes beliebige Video zu streamen (das ist es, was youtube mobile tut). Sie sollten einen Blick auf RTSP werfen: http://en.wikipedia.org/wiki/Real_Time_Streaming_Protocol
Wenn Sie einen rtsp-Link in einer videoView verwenden, sollte das Video einwandfrei gestreamt werden. Der Punkt ist, dass Ihr Problem mit dem Server und nicht mit dem Client zusammenhängt.
Zu Übungszwecken können Sie einen rtsp-Link von m.youtube.com abrufen und mit setVideoPath an eine videoView übergeben.
Wenn Sie die Server-Implementierung nicht ändern können, dann sind Ihre Lösungen wahrscheinlich die, die ich vermute:
1) Laden Sie das Video herunter und dekodieren Sie es selbst. Dabei müssten Sie alle Metadaten bearbeiten und sicherstellen, dass das Video funktioniert. Theoretisch könnten Sie ffmpeg für Android kompilieren, um Ihnen dabei zu helfen, aber ich konnte es nicht für Android kompilieren, wenn die Netzwerkoption aktiviert ist. Das ist eine Menge Arbeit.
2) Schreiben Sie Ihre eigene Implementierung von RTSP oder einem anderen Streaming-Protokoll. Laden Sie das Video in einem Thread herunter und erstellen Sie einen lokalen Server auf dem Gerät, um die Videodatei an eine videoView-Instanz zu streamen. Ich habe dies tatsächlich in einer App umgesetzt. Android unterstützt nicht das spezifische Protokoll, das die Server des Kunden verwenden, und ich musste es zum Laufen bringen. Dafür habe ich einen ganzen Monat gebraucht. Ich kann keinen Beispielcode posten, weil er dem Kunden gehört, aber ich kann Ihnen weitere Informationen dazu geben, wenn Sie daran interessiert sind.
Wie auch immer, wenn Sie den Server/das Format des Videos nicht ändern können, sollten Sie sich auf eine Menge Arbeit einstellen.