RootEncoder for Android (rtmp-rtsp-stream-client-java) is a stream encoder to push video/audio to media servers using protocols RTMP, RTSP, SRT and UDP with all code written in Java/Kotlin
Refactor StreamBase to use VideoSource and AudioSource allowing use a custom source
Add background color to Text filter by @dunkpi
rename forceAkamaiTs to forceIncrementalTs
fix g711 mime
2.3.3
5 months ago
Fixes/Improvements
Throw RuntimeException if use filter with LightOpenGlView
Support AV1 encoding
Support G711 encoding
Support AV1 in RTSP
Support AV1 in RTMP
Support G711 in RTSP (@f9021003)
Fix AAC RTP large packets
Fix setLimitFPSOnFly (@dunkpi)
Throw exception if use invalid codec for the current protocol
Refactor SurfaceFilterRender
Support rotation to ObjectFilterRenders (Text, Image, Gif and Surface filters)
Refactor H265 RTP packet
2.3.2
6 months ago
Fixes/Improvements
Fix an error in FromFile streaming files without audio
Fix loop mode in FromFile
Fix start stream after finish video in FromFile
Move audio ts before start decode, read buffer
Fix SRT retry
Fix getViewport error with the same resolution and screen size
Ignore FCPublish response in RTMP because it is not supported in some servers
Fix handshake ip address in SRT
Fix mpeg2ts paquetization in SRT to support OvenMediaEngine
Fix AmfLongString size in RTMP
Add getCameraResolutions by cameraId to camera2
Support SRT encrypt with AES_128, AES_192 and AES_256 using passphrase
Refactor StreamClient retry
Sanity check in video/audio buffers to avoid errors in offset/size
Update copyright
Changes
Create common module for common code in all protocols
Replace ConnectionCheckerRtmp, ConnectionCheckerRtsp and ConnectionCheckerSrt to ConnectionChecker class.
Add GenericCamera1, GenericCamera2, GenericDisplay, GenericFromFile, GenericOnlyAudio and GenericStream. This classes support stream using all protocols instead of need use a specific class per protocol (special thanks to @Ernovation for this implementation)
2.3.1
7 months ago
Fix AacMuxer
Fix from file loop mode
Fix send ack in rtmp if needed
Guarantee send onNewBitrate each second
Move multiple methods of rtmp, rtsp and srt to getStreamClient