Skip to content

[Bug]: Streaming handshake fails when pointing to local Restreamer container. #284

@ZacharyPlayss

Description

@ZacharyPlayss

Version

3.1.2

Environment that reproduces the issue

I'm running Restreamer in a docker container.

For the streampack side I use the "camera demo" defaults (with change of the endpoint ofcourse)

RTMP/SRT/... Server

RTMP

Audio configuration

Default demo configuration

Video configuration

Default demo configuration

Is it reproducible in the demos application?

Yes

Reproduction steps

  1. Run the camera stream demo.
  2. Run Restreamer in docker as provided here : Restreamer
  3. Enable RTMP in Restreamer and copy the endpoint into the demo project.
  4. Try to stream.

here is a sample docker compose you can use to recreate the config.

services:
  restreamer:
    image: datarhei/restreamer:latest
    container_name: restreamer
    restart: always
    ports:
      - "8080:8080"
      - "8181:8181"
      - "1935:1935" 
      - "6000:6000/udp"
    environment:
      - RS_TOKEN=mytoken 
      - RS_USERNAME=admin
      - RS_PASSWORD=1234
    volumes:
      - ./config:/core/config
      - ./data:/core/data

visit localhost:8080/ui for on screen config for RTMP streams.

Expected result

Succesfull livestream to restreamer

Actual result

Error pop up containing "Handshake failed: S2 and C1 must have the same random sequence"

Additional context

I'm not to sure wheter this is on the packages end or on Restreamer's end.

Relevant logs output

E  startStream failed
                                                                                                    java.lang.IllegalArgumentException: Handshake failed: S2 and C1 must have the same random sequence
                                                                                                    	at io.github.komedia.komuxer.rtmp.util.Handshake.startClient$rtmp_debug(Handshake.kt:66)
                                                                                                    	at io.github.komedia.komuxer.rtmp.util.Handshake$startClient$1.invokeSuspend(Unknown Source:14)
                                                                                                    	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:34)
                                                                                                    	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:100)
                                                                                                    	at kotlinx.coroutines.internal.LimitedDispatcher$Worker.run(LimitedDispatcher.kt:124)
                                                                                                    	at kotlinx.coroutines.scheduling.TaskImpl.run(Tasks.kt:89)
                                                                                                    	at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:586)
                                                                                                    	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:820)
                                                                                                    	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:717)
                                                                                                    	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:704)
2026-02-12 14:43:23.210  8869-8869  PreviewFragment         io....thibaultbee.streampack.sample  E  Error: Oops, startStream: Handshake failed: S2 and C1 must have the same random sequence

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions