Skip to content

fixing common and rtsp errors#2125

Open
pedroSG94 wants to merge 10 commits into
masterfrom
feature/fixing-errors
Open

fixing common and rtsp errors#2125
pedroSG94 wants to merge 10 commits into
masterfrom
feature/fixing-errors

Conversation

@pedroSG94

@pedroSG94 pedroSG94 commented Jul 2, 2026

Copy link
Copy Markdown
Owner

Feature/fixing errors

General

  • Fix readUntil entering an infinite busy-loop when the stream reaches EOF (throw instead)
  • Fix partial reads on readUInt16/24/32 (read the full value instead of a single read)
  • Fix isKeyframe comparing flags with == instead of a bitmask
  • Fix getStartCodeSize IndexOutOfBounds on buffers shorter than 4 bytes
  • Fix setDelay crash with values under 5ms (queue capacity)
  • Fix BaseSender resizeCache guard and getCacheSize
  • Fix BitBuffer readUVLC and bit-remaining off-by-one
  • Fix UrlParser to support passwords containing ':'
  • Fix sockets: isConnected after close, recreate ktor selector on reconnect, UDP receive buffer size
  • Fix FpsUtils range comparison
  • Fix audio PTS frozen in TimestampMode.BUFFER (misplaced cast)
  • Fix BaseDecoder busy-wait while paused
  • Fix AudioDecoder muted buffer size, output size and PCMUtil stereo conversion
  • Fix MicrophoneManager races and shared buffer
  • Fix BaseEncoder start order and processInput offset
  • Fix Camera2ApiManager getSupportedFps formula
  • Fix G711 decode output size
  • Fix TextStreamObject crash with empty text
  • Add PitchShiftEffect audio filter
  • Fix ViewSurfaceFilterRender always crashing (VirtualDisplay 0x0 / shadowed fields)
  • Fix AndroidViewFilterRender CPU spin and silent thread death
  • Fix CropFilterRender divide by zero when cropping a full axis
  • Fix EGL lifecycle on stop (OpenGlView / GlStreamInterface)
  • Fix GlUtil createTextures offset and disableResources bound
  • Fix Sprite/AndroidViewSprite center translation with non-uniform scale
  • Fix SpriteGestureController mutating the internal scale point
  • Fix CameraRender placeholder leak and TextureLoader recycling the user bitmap
  • Fix GifStreamObject guards for empty/invalid frames
  • Fix Media3 audio/video sources not surviving stop/start
  • Fix keyframe detection in record controllers

RTMP

  • Fix AAC/Opus FLV dropping the first audio frame (send config and the frame)
  • Fix AmfString equals/hashCode to avoid duplicated AMF keys
  • Fix VideoSpecificConfigAV1 sRGB condition and chroma_sample_position
  • Disable AMF3 instead of crashing
  • Fix first PONG rtt (set pingTs before the initial ping)
  • Fix RtmpHeader TYPE_1/TYPE_2 timestamp delta
  • Fix AuthUtil description value parsing

RTSP

  • Fix loadServerPorts to use the expected track instead of guessing from the response
  • Fix NTP timestamp to be unique per session
  • Consume the response body when Content-Length is present

SRT

  • Fix PCR/PTS overflow after ~4 days of device uptime (reorder arithmetic)
  • Fix packetHandlingQueue growing without bound when ACKs stop (TLPKTDROP by latency)
  • Fix audio-only AAC never emitting PCR
  • Fix Nak.getNakRanges crash on a truncated/malformed NAK
  • Fix ControlPacket control type to 15 bits
  • Fix AdaptationField size order and adaptation extension write
  • Fix Ack.readBody to support light/small ACKs
  • Fix Handshake.readAddress to produce a valid IP
  • Fix initial PSI order to [PAT, PMT, SDT]
  • Move latency to CommandsManager as the single source
  • Fix streamid carrying the query

UDP

  • Fix UdpClient leaving isStreaming true when the port is missing
  • Fix initial PSI order to [PAT, PMT, SDT]

WHIP

  • Fix NTP timestamp to be unique per session

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant