vMix Forums
»
General
»
vMix Call
»
Video Call via Phone VIDEO QUALITY
Rank: Advanced Member
Groups: Registered
Joined: 12/16/2019(UTC) Posts: 84 Thanks: 1 times Was thanked: 2 time(s) in 2 post(s)
|
I was really impressed with vMix Video Call when I tried it for the first time. It is a simple solution and it opened many possibilities in live production. BUT...video quality coming from different devices vary significantly. For example:
vMix to vMix = Very Good Desktop/laptop with good web camera = Good Phone = From Bad to Acceptable
And here we have the problem. Best option will be to use phones to get guests to vMix but video quality doesn't match professional-semiprofessional criteria. What can we do? I find that using different phone models gives different results. Phone must have a good camera and light but also it must use hardware encoding to produce HD (1280x720) video stream via WebRTC protocol.
Here iphone is better solution, but not everyone have iphone. Which android phones can do hardware encoding-acceleration? How to know? Then there is different codecs used: VP8, H264, VP9, how to take control over encoder settings of the phone?
Many questions comes to mind but lets start with these.
|
|
|
|
Rank: Advanced Member
Groups: Registered
Joined: 7/1/2015(UTC) Posts: 1,151 Location: Houston TX Thanks: 319 times Was thanked: 263 time(s) in 233 post(s)
|
Originally Posted by: lestra Here iphone is better solution, but not everyone have iphone. Which android phones can do hardware encoding-acceleration? How to know? Then there is different codecs used: VP8, H264, VP9, how to take control over encoder settings of the phone?
You have no control over this. You cannot have control over this. vMix Call leverages WebRTC. In WebRTC, much of how things work are predetermined. You want more control, don't use phones as cameras. Use REAL cameras. Use SRT. Or use an RTMP camera application and accept the associated latency. You know the old rule; time/convenience, money, quality. You only get to have two of the three.
|
|
|
|
Rank: Advanced Member
Groups: Registered
Joined: 12/16/2019(UTC) Posts: 84 Thanks: 1 times Was thanked: 2 time(s) in 2 post(s)
|
Now this become more interesting. I take really old phone, Samsung Galaxy 5, installed Wowza Gocoder app on it, and made new test aplication on Wowza Streaming Engine. In Wowza Gocoder app on the phone I used this settings:
Resolution: 1920x1080 Frame Rate: 30fps Bitrate: 5000kbps
Then I started RTMP streaming from phone to Wowza server. For watching stream I used VLC player on my desktop PC. Video was nice and smooth. Wow! But latency was about 30-40sec.
I don't understand why webRTC have such limitations? It is better for latency but video quality is so bad.
|
|
|
|
Rank: Advanced Member
Groups: Registered
Joined: 3/17/2017(UTC) Posts: 428 Location: Luzern - Schweiz Thanks: 65 times Was thanked: 56 time(s) in 50 post(s)
|
|
|
|
|
Rank: Advanced Member
Groups: Registered
Joined: 8/2/2013(UTC) Posts: 1,073 Location: Fairhope, Alabama USA Thanks: 555 times Was thanked: 200 time(s) in 166 post(s)
|
Also remember that Google Chrome dynamically adjusts the video resolution depending on the available bandwidth, so a "good" phone may perform poorly when it cannot get a good signal.
- Tom
|
|
|
|
Rank: Advanced Member
Groups: Registered
Joined: 7/1/2015(UTC) Posts: 1,151 Location: Houston TX Thanks: 319 times Was thanked: 263 time(s) in 233 post(s)
|
Originally Posted by: lestra Now this become more interesting. I take really old phone, Samsung Galaxy 5, installed Wowza Gocoder app on it, and made new test aplication on Wowza Streaming Engine. In Wowza Gocoder app on the phone I used this settings:
Resolution: 1920x1080 Frame Rate: 30fps Bitrate: 5000kbps
Then I started RTMP streaming from phone to Wowza server. For watching stream I used VLC player on my desktop PC. Video was nice and smooth. Wow! But latency was about 30-40sec.
I don't understand why webRTC have such limitations? It is better for latency but video quality is so bad. I expect that you're using H264. Android phones have hardware acceleration for H264. WebRTC uses VP8/9. You've just discovered that WebRTC stands for "web real-time communications." It was designed for real-time bi-directional communications, which requires low latency. It prioritizes real-time over quality. It also operates in a browser, which is inherently less efficient than a native application. Any form of LONG-GOP compression is inherently more efficient (better quality) but also higher latency.
|
|
|
|
Rank: Advanced Member
Groups: Registered
Joined: 12/16/2019(UTC) Posts: 84 Thanks: 1 times Was thanked: 2 time(s) in 2 post(s)
|
Originally Posted by: sinc747 Also remember that Google Chrome dynamically adjusts the video resolution depending on the available bandwidth, so a "good" phone may perform poorly when it cannot get a good signal.
- Tom I can see what you are talking about in the video call statistics. Resolution and bitrate vary all the time. But it is strange because signal is good and is the same phone/connection used in RTMP example without any glitch. Why? How to get constant 1280x720px resolution and max available bitrate? And also constant framerate? Thanks everybody for answers, appreciated a lot.
|
|
|
|
Rank: Advanced Member
Groups: Registered
Joined: 7/1/2015(UTC) Posts: 1,151 Location: Houston TX Thanks: 319 times Was thanked: 263 time(s) in 233 post(s)
|
Originally Posted by: lestra How to get constant 1280x720px resolution and max available bitrate? And also constant framerate? Simple. Don't use a mobile phone. vMix Call allows content contribution via a web browser. Nowhere was it promised that you'd achieve optimal results using a mobile phone. For more control over the results, use camera connected to a real computer that has the resources to achieve what you desire. Also, use a reliable network and internet access.
|
|
|
|
Rank: Advanced Member
Groups: Registered
Joined: 4/23/2017(UTC) Posts: 1,231 Location: Germany Thanks: 3 times Was thanked: 168 time(s) in 150 post(s)
|
Try Larix Broadcaster with SRT
URL: SRT://[ip]:[Port]
In vMix add an SRT input as typ listener on the same port used above. Keep in mind that you need to open and forward the port in your router to your vmix machine.
|
|
|
|
Rank: Advanced Member
Groups: Registered
Joined: 4/23/2017(UTC) Posts: 1,231 Location: Germany Thanks: 3 times Was thanked: 168 time(s) in 150 post(s)
|
|
|
|
|
vMix Forums
»
General
»
vMix Call
»
Video Call via Phone VIDEO QUALITY
Forum Jump
You cannot post new topics in this forum.
You cannot reply to topics in this forum.
You cannot delete your posts in this forum.
You cannot edit your posts in this forum.
You cannot create polls in this forum.
You cannot vote in polls in this forum.
Important Information:
The vMix Forums uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close