alibaba / alibaba/CicadaPlayer
Reduce Latency in RTMP streamings
- Dominant language
- C++
- Stars
- 771
- Forks
- 209
- PR merge metrics
- No merged PRs in 30d
Description
**Describe the bug**
I'm working on a low-latency streaming service.
Comparing an RTMP streaming with Cicada (iOS) versus FFPlay, the Cicada stream is always ~1 second behind FFPlay.
For FFPlay I use `-fflags nobuffer`, is there a way to pass a similar flag to Cicada or to the ffmpeg service inside it?
Could there be any other reason or configuration option why Cicada is behind FFPlay?
**To Reproduce**
Steps to reproduce the behavior:
1. Open an RTMP streaming with Cicada
2. Open the same streaming with FFPlay and `-fflags nobuffer`
3. See there is a diference and Cicada has more latency.
**Expected behavior**
Both streams should have similar latency
**Smartphone (please complete the following information):**
- Device: iPhone 12 Pro
- OS: 14.5
- Version [e.g. 22]
Contributor guide
Research direction
Start by reproducing the latency difference on an iPhone 12 Pro running iOS 14.5, comparing Cicada with FFPlay using `-fflags nobuffer`. Inspect the player and FFmpeg configuration paths involved in RTMP playback; done means identifying the cause and providing a configuration or behavior that brings Cicada latency close to FFPlay.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp, ios
- Domain
- audio-video-rtc
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100