Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

Weird data in onnewBitrate

Open
#1,990 9 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 2 days

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
15/100
Issue type
Bug
Clarity
Needs clarification
Activity status
Stale
Tech stack
android, kotlin

Research direction

Start from the BitrateAdapter wiring in onNewBitrate and adapter.adaptBitrate, then find where BitrateChecker computes the reported bitrate and whether it reads any throughput or dropped-packet signal. Reproduce by streaming while throttling the network with Network Link Conditioner (1 Mbit/s with 10% loss, then 100% loss) and logging the values passed to onNewBitrate. Done means the reported bitrate drops under these conditions, or the maintainer confirms the expected behaviour.

Written by the indexing model from the issue text.

Description

Hi.

I'm trying to make sure my app is working well in bad network conditions. I'm using a BitrateAdapter connected in onNewBitrate, like the example (calling adapter.adaptBitrate from onNewBitrate).

I'm using an XCode tool from Apple, called Network Link Conditioner, where I can simulate different types of connections. When switching to a "bad network" profile that limits to 1mbit/s and 10% packetloss, webbrowsing becomes really slow and switching to a "100% loss" profile it stops completely. But in both those situations, onNewBitrate keeps reporting a "good" bitrate and doesn't seem to care that the network is bad.

The backend I'm connecting to does stop receiving packets when the limiting profiles are active, so the limiter is working, it just doesn't seem like BitrateChecker actually detects the lack of throughput. I also get no dropped packets reported from the streamer.

I'm thinking perhaps I'm missing something in the setup, but since onNewBitrate reports the "wrong" values, I don't really know what I could do differently.

Dominant language
Kotlin
Stars
3k
Forks
946
Avg merge
4d 6h
Merged PRs (30d)
9

Getting set up

This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from pedroSG94/RootEncoder

All issues in pedroSG94/RootEncoder

Similar issues

More Kotlin issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.