Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Low latency streaming with ExoPlayer? #623

Closed
Schizo opened this issue Jul 15, 2015 · 10 comments
Closed

Low latency streaming with ExoPlayer? #623

Schizo opened this issue Jul 15, 2015 · 10 comments
Labels

Comments

@Schizo
Copy link

Schizo commented Jul 15, 2015

Sorry for proposing this question here, but i was successfully using ExoPlayer as a main VOD Video-Player and i am really happy about it. Now i was going to use it to play Video-Streams but unfortunately exoplayer supports only DASH, HLS and Smoothstreaming.

But are those formats good for low-latency-streaming? Or how is the standard way of Streaming a "dash" file to a server, to browse it with a mobile phone? What are the minimum available Segment Durations. Can i set it to frames?

Please enlighten me.

@ojw28 ojw28 changed the title Exoplayer only supports adaptive Streaming like DASH/HLS Low latency streaming with ExoPlayer? Jul 15, 2015
@ojw28
Copy link
Contributor

ojw28 commented Jul 15, 2015

ExoPlayer supports a bunch of formats in addition to the ones you mention (MP4, MP3, WebM, Matroska, Mpeg-TS, ADTS-AAC).

For DASH/HLS/SS you probably wouldn't want chunks any shorter than 2 seconds. For low latency streaming you'd probably want something like RTMP, which ExoPlayer doesn't support. The idea of single (or few) frame latency across the internet isn't realistic though, so I'm wondering exactly what you're trying to achieve.

@ojw28 ojw28 added the question label Jul 15, 2015
@Schizo
Copy link
Author

Schizo commented Jul 15, 2015

I don't want to achieve this latency over internet but in a intranet lan network. with RTMP the current latency is about 6 Frames, with UDP about 4 Frames. All in Local Network.

@ojw28
Copy link
Contributor

ojw28 commented Jul 16, 2015

ExoPlayer isn't really geared to this use case (i.e. local playback with very low latency). We don't currently support RTMP/UDP.

@ojw28 ojw28 closed this as completed Jul 16, 2015
@winlinvip
Copy link

Hi, I think the low-latency for ExoPlayer is possible, if streaming server support HTTP-FLV/HTTP-TS to replace RTMP.
@ojw28 Can you re-open this issue, seems the #828 and HTTP-TS is supported by ExoPlayer.

I think the low-latency or realtime player need another important feature, the MaxBufferLength, which limit the max buffer length in seconds, drop packet or change the fps if exceed.

However, I think it's a very awesome feature for ExoPlayer to support realtime, eventhough without the MaxBufferLength.

@winlinvip
Copy link

BTW, I want to introduce more about the HTTP-FLV low latency live streaming for Android.
I have start a Android encoder, which fetch the image from camera and encode by MediaCodec and send to SRS over HTTP POST, that is srs-sea.
I plan to start a player named srs-spa, but I found ExoPlayer and this pull request, thanks very much, I have canceled the srs-spa project and linked to ExoPlayer.

It's very very important feature for low latency live streaming on Android, user can use srs-sea to publish stream to SRS and play with ExoPlayer, the latency is 1s+, it's awesome~

I test the latency, use srs-sea to publish to srs over HTTP-FLV, srs will remux the HTTP-FLV to RTMP then to HTTP-TS, finally use exoplayer to play http-ts from srs, the latency is 1s - 3s:
sea exoplayer

@winlinvip
Copy link

Great ExoPlayer, I love this project, 👍 👍 👍

@erkand-imeri
Copy link

Does ExoPlayer support RTMP links? Is it better than Vitamio to use?

@winlinvip
Copy link

@erkand-imeri Why RTMP? You can use server to remux the RTMP to HTTP-FLV.

BTW: Vitamio is not open-source, right?

@erkand-imeri
Copy link

Aha, great. I think Vitamio is not open-source. It's free to use for non-commercial purposes. @winlinvip: Do you think ExoPlayer is the best Android media library to use for live streaming?

@winlinvip
Copy link

@erkand-imeri I am the author of srs, which can used to remux rtmp to http-flv and/or hls. I think ExoPlayer is the one for android player for live streaming.

@google google locked and limited conversation to collaborators Jun 28, 2017
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

No branches or pull requests

4 participants