Difference between revisions of "External Encoders"

From Soulcams Wiki
Jump to navigation Jump to search
(How to set the correct keyframe interval to load your stream faster)
(How to set the correct keyframe interval to load your stream faster)
 
(3 intermediate revisions by one other user not shown)
Line 63: Line 63:
  
 
Note: while using OBS, your camera stream will not be visible in the main window of SoulCast Streaming app as you are using an external encoder in this case. However you can click on 'Looking Glass' to see if everything is fine with your camera stream.
 
Note: while using OBS, your camera stream will not be visible in the main window of SoulCast Streaming app as you are using an external encoder in this case. However you can click on 'Looking Glass' to see if everything is fine with your camera stream.
 +
  
 
===How to set the correct keyframe interval to load your stream faster===
 
===How to set the correct keyframe interval to load your stream faster===
 
 
A keyframe interval, also called an i-frame interval, is an encoding setting that determines how often the whole picture is transmitted. If it is not set properly, your stream might start to load slow, causing frustration for the viewers.
 
A keyframe interval, also called an i-frame interval, is an encoding setting that determines how often the whole picture is transmitted. If it is not set properly, your stream might start to load slow, causing frustration for the viewers.
  
Please '''set the keyframe interval to 30''' so that your stream could start fast and fast right now.
 
  
* In the '''newer''' versions of OBS'''Settings / Output / Streaming / Custom Encloder Settings''' and write there the following: '''keyint=30'''.  Once done, hit  'Apply' and 'Save'.  Click to see a sample image:  https://wiki.soulcams.com/images/d/d5/Keyframeinterval_obs.png
+
Please make sure to '''always use the latest version''' of OBS. '''Set the keyframe interval''' to the following so that your stream could load fast:
* In the '''older''' versions of OBS: '''Settings / Output / Streaming / Encoder settings / keyframe interval''' and enter there '''1'''.  Once done, hit  'Apply' and 'Save'.   Click to see a sample image: https://wiki.soulcams.com/images/a/a5/Keyframe_interval_obs_old_version.png
+
* '''Settings / Output / Streaming / Advanced / keyframe interval''' and enter there ''''2''''.  Once done, hit  'Apply' and 'Save'.

Latest revision as of 11:44, 11 October 2024

What is an external encoder?

External encoders, such as OBS, allow you to push a higher quality stream to SoulCams by giving your more control over the encoding settings for your broadcast. High definition streams up to 4k are supported through external encoding. We then transcode the stream into multiple quality levels to allow viewers on any connection to enjoy your stream. Encoding is the process of converting the data from your camera into a stream that can be sent over the Internet and then decoded in your viewer’s browser. There are multiple software or hardware encoders available and can be used to broadcast on SoulCams if capable of RTMP output. Open Broadcaster Software (OBS) is an open source tool which is free to download and use on Windows, Mac, and Linux.

OBS

How to set up OBS on SoulCams

Open Broadcasting Software (OBS) is an open source streaming software which provides broadcasters control to configure stream settings and customizable plugins so they can enhance viewer experience.

Please see the step by step guide below on how to stream with OBS on SoulCams or watch our illustration video on Youtube:

Click here for a video demonstration on how to set up OBS on SoulCams

1. Download OBS Studio

Download OBS Studio from this link: https://obsproject.com/

2. Set Up Authorized SoulCams Stream Key

3. Configure OBS Settings

Stream Settings

In OBS Studio click on 'Settings' button (bottom-right corner of the software) and select 'Stream'

  • Stream type: choose Custom Streaming Server
  • Server: paste the URL here you got in the SoulCast model app window
  • Stream key: paste the key here you got in the SoulCast model app window

Output Settings

Click on 'Output' settings and leave everything as it is, except the following:

  • Video Bitrate: 1500

Note: for a resolution of 1280 x 720 you will need at least 1500 but you may enter higher. If you don't have enough bandwidth, try lower amounts. NOTE: Try not go below 1000, it will result in choppy, bad quality video.

Video Settings

  • Base (Canvas) Resolution: 1280x720
  • Output (Scaled) Resolution: 1280x720
  • Common FPS values: 30

Once you are done, hit 'Apply' and 'Ok'

Selecting your camera

At the bottom-left corner of OSB software look for the box 'Sources'. Click on the '+' sign and select 'Video Capture Device'. 'Leave the 'Create new' selected, give a desired name to the preset or leave it 'Video Capture Device' by default and hit 'OK'.

Properties for 'Video Capture Device':

Leave all the settings as they are, except the followings:

    • Device: select your webcam brand here
    • Resolution/FPS type: Custom
    • Resolution: 1280x720
    • FPS: Match Output FPS

When you are ready to broadcast live, click “Start Streaming” in OBS. At the end of your broadcast, make sure to click on “Stop Streaming” in OBS.

Note: while using OBS, your camera stream will not be visible in the main window of SoulCast Streaming app as you are using an external encoder in this case. However you can click on 'Looking Glass' to see if everything is fine with your camera stream.


How to set the correct keyframe interval to load your stream faster

A keyframe interval, also called an i-frame interval, is an encoding setting that determines how often the whole picture is transmitted. If it is not set properly, your stream might start to load slow, causing frustration for the viewers.


Please make sure to always use the latest version of OBS. Set the keyframe interval to the following so that your stream could load fast:

  • Settings / Output / Streaming / Advanced / keyframe interval and enter there '2'. Once done, hit 'Apply' and 'Save'.