Mixer doesn't show any video

wyvasi

Member
Good day! after I start mixer and add video/audio stream. Only audio is working.
/mixer/startup
Code:
{
  "hasVideo": "true",
  "hasAudio": "true",
  "localStreamName": "joe",
  "uri": "mixer://joe"
}
mixer/add
Code:
{
  "uri": "mixer://joe",
  "remoteStreamName": "video"
}
Can you tell me what I am doing wrong?
I sent the Report with logs.
 
Last edited:

wyvasi

Member
I keep seeing this error in logs when I try to reproduce the issue I am having. Do you have any idea?
Code:
15:46:52,480 WARN            RestClient - API-ASYNC-pool-13-thread-8 POST request resulted in 500 (Internal Server Error)
15:46:52,481 INFO            RestClient - API-ASYNC-pool-13-thread-8 Failed to get error status
org.codehaus.jackson.JsonParseException: Unexpected character ('<' (code 60)): expected a valid value (number, String, array, object, 'true', 'false' or 'null')
 at [Source: java.io.StringReader@683fef2b; line: 1, column: 2]
    at org.codehaus.jackson.JsonParser._constructError(JsonParser.java:1433)
    at org.codehaus.jackson.impl.JsonParserMinimalBase._reportError(JsonParserMinimalBase.java:521)
    at org.codehaus.jackson.impl.JsonParserMinimalBase._reportUnexpectedChar(JsonParserMinimalBase.java:442)
    at org.codehaus.jackson.impl.ReaderBasedParser._handleUnexpectedValue(ReaderBasedParser.java:1198)
    at org.codehaus.jackson.impl.ReaderBasedParser.nextToken(ReaderBasedParser.java:485)
    at org.codehaus.jackson.map.ObjectMapper._initForReading(ObjectMapper.java:2770)
    at org.codehaus.jackson.map.ObjectMapper._readMapAndClose(ObjectMapper.java:2718)
    at org.codehaus.jackson.map.ObjectMapper.readValue(ObjectMapper.java:1863)
    at com.flashphoner.rest.client.ErrorStatus.fromJson(Unknown Source)
    at com.flashphoner.rest.client.RestClient.handleErrorResponse(Unknown Source)
    at com.flashphoner.rest.client.RestClient.postForObject(Unknown Source)
    at com.flashphoner.server.rmi.ManagerApiConnection.processDataObject(Unknown Source)
    at com.flashphoner.server.rmi.ManagerApiConnection.getApiMethodResult(Unknown Source)
    at com.flashphoner.server.rmi.ManagerApiConnection.lambda$notifyApiAsync$1(Unknown Source)
    at java.base/java.util.concurrent.CompletableFuture$AsyncRun.run(CompletableFuture.java:1807)
    at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
    at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
    at java.base/java.lang.Thread.run(Thread.java:835)
 

Max

Administrator
Staff member
In the report provided we can't find a client log for the video stream which you're trying to add to the mixer joe:
1669165892045.png

Please check the video stream metrics: is there any video traffic in the stream?
I keep seeing this error in logs when I try to reproduce the issue I am having. Do you have any idea?
Seems like your backend server returns 500 Internal Server Error on some REST hook sent from WCS. If backend response is not 200 OK, WCS looks for the status and reason fields in the response body. If the response body cannot be parsed (or absent at all), WCS throws such exception and sets the error status and code according to response header (please read details here Sending custom error message to a client):
1669167058897.png

So it is a normal behaviour for WCS (it just reports the error received from backend). But we recommend to check the backend server logs for 500 Internal error possible reasons.
 

wyvasi

Member
I fixed the REST hook issue on /publishStream, but still get black image after trying to inject video stream into the mixer. I checked the video stream is fine ( checked on media devices ), playing from origin and edge. Also after about a ~1 minute the mixer stops.
Code:
Video stats
Codec: H264
Codec Rate: 90000
Packets Lost: 7
Packets Received: 46210
Bytes Received: 51074118
Jitter Buffer Emitted Count: 15804
Fir Count: 0
Pli Count: 25
Nack Count: 3817
Height: 480
Width: 640
Bitrate: 822288
What should I do?
 
Last edited:

Max

Administrator
Staff member
Also after about a ~1 minute the mixer stops
The mixer stops because it cannot start mixing the stream.
Packets Received: 46210
Nack Count: 3817
You have about 8% of packets which are not received properly, this is a channel quality issue. Try to use TCP for publishing, or use lower resolution/bitrate. A browser can play such stream because it uses jitter buffer for playback, but mixer does not.
You can increase mixer input buffer
Code:
mixer_in_buffering_ms=600
but it may give an additional delay.
Also a strict jitter buffer for publishing streams may help
Code:
use_strict_jitter_buffer=true
jitter_buffer_capacity=30
 
Last edited:
Top