1.30.0
Major Fixes and Changes
Improvements on genvid-azure-image create-images command
The command now deletes intermediate resources of type image and blob. Also a new argument named –keep-intermediate-resources was added to keep the intermediate resources for debugging purpose.
The command can now work with source and destination storage containers that have a private access level. This will work as long as the Azure CLI is logged in with a subscription that has access to the private container. The command will try to get an access key internally using the Azure CLI before accessing the blob container and use it if it worked.
Cluster settings
New Framerate Value in Cluster Settings
We added a framerate value to the cluster settings output section. It lets you define the framerate of the video stream sent to the streaming provider independently from the input framerate.
Documentation being updated for improved flow.
In preparation for some major changes coming to the SDK documentation, we’ve reduced the number of main sections and moved some content around. The updates in 1.30.0 reorganize the existing documentation into sections that better represent what they cover. In particular:
Information on updating installed samples is now in both the Samples and Release & Upgrade Notes sections.
The Introduction now includes information on the architecture of the Genvid SDK and how it works. (Formerly in Quick Tour, which we removed.)
Information about the various tools included in the Genvid SDK is now in the new “Genvid Tools Integrations” section. (Formerly found in both the Samples and Reference section.)
Minor Changes and Other Fixes
[documentation] Added information to the YouTube section about privacy options, latency options, and data cache relationship.
[documentation] Removed known issue for Firefox being out of sync with standalone player.
[documentation] Fixed an issue where the type of the genvid.compose-gameframes.framesize metric was incorrect.
[documentation] Added missing entries for genvid.gvencode-compose framereceivedfps and framesentfps were missing.
[documentation] Updated copyright information.
[documentation] Corrected links to the Python official documentation that didn’t point to Python 3.8.
[documentation] Updated doc folder hierarchy in preparation for major refactoring.
[sdk] Added information in
GenvidSDKCSharp.cs
aboutStatusFailed()
responses.[sdk] Fixed an issue where several frames are sent at the same time.
[sdk] Updated LICENSE in the installer to revised version 07/30/2021.
[sdk] Fixed a crash when the parameter key of
Genvid_GetParameterPointer
is null.[unity-plugin] Replaced NewtonSoft.JSON dependencies with JsonUtility usage.
[toolbox] Added new
PackageArchiver
class ingenvid.toolbox
with an interface that is easier to use.[toolbox] Deprecated DockerPackage in favor of DockerTool.update_image. See the Upgrade Notes for more information.
[toolbox] Deprecated PackageFactory in favor of PackageArchiver. See the Upgrade Notes for more information.
[toolbox] Fixed the checksum of the nats-windows archive. It’s no longer affected by the time of the download–only by the content of the archives.
[toolbox] Improved the
genvid-sdk package
command to always use a checksum based on the archive file’s name and content.[toolbox] Deprecated the
SDK.update_archive
command in favor of the PackageArchiver.[toolbox] Added support for environment variables VAULT_TOKEN_FILE and VAULT_KEYS_FILE by toolbox CLIs.
[toolbox] Added new method
load_config_folder
that replicatesSDK.load_config
without modifying the Consul configuration.[toolbox] Improved reusability of
load_nomad_template_job
by moving it down toProjectTool
.[toolbox] Improved
RuntimeTool
andSDK
classes by derivating them fromProjectTool
instead ofConsulTemplateTool
.[toolbox] Fixed an issue where the toolbox would not use the GENVID_DEFAULT_IP environment variable to set CONSUL_HTTP_ADDR for the services. This caused
bastion-api
to crash if CONSUL_HTTP_ADDR was not explicitly set along with GENVID_DEFAULT_IP.[toolbox]
ProjectTool.LOGS
is deprecated. See the Upgrade Notes for more information.[toolbox] Fixed the
genvid-bastion log
command that was returning an error for local services.[toolbox] Added support for all registered logs in
genvid-bastion log
command.[toolbox] Added ability to list all logs in
genvid-sdk log
andgenvid-bastion log
.[toolbox] Deprecated
BastionTool.SETUP_LOGS
because it’s no longer used.[toolbox] Fixed an issue where the
chardet
module dependency was missing.[toolbox] Fixed an issue where the
genvid-sdk
commands also need to access Consul whenGENVID_BASTION_URL
is set.[toolbox] Fixed the base URL for the Swagger UI when the swagger is used behind an SSL proxy.
[installer] Fixed the default installation folder and registry to match the actual product name. The installation folder is now called
Genvid Technologies\\Genvid SDK X.Y.Z.W
and the registry key is underSOFTWARE\\Genvid Technologies\\Genvid SDK X.Y.Z.W
.[composed] Fixed an issue where the program composition will not be remembered after restarting composeD.
[composed] Added a number of discarded RTMSP messages to logs and metrics when the stream bus is full and messages are discarded.
[composed] Added the ability to clear data frame and delayed A/V frame caches within Composed when its connection with GVEncode is no longer active.
[gvencode] Fixed an issue where audio can desynchronize when the composition is on and the game is restarted.
[gvencode] Fixed an issue where an ended source does not correctly destroy the decoder.
[gvencode] Fixed an issue where audio packets in the Sink filter would accumulate over a long streaming session.
[gvencode] Fixed an issue where duplicated video frames were not correctly reported in logs.
[gvencode] Fixed an audio/video desync that occurred when video frame compensations happen.
[gvencode] Fixed a resource leak when video compensation happens.
[samples] Improved local SSL management by using the SSL certificates generated from the toolbox.
[studio] Removed transitions from scenes. They are now global and applied to the next scene being cut.
[studio] Added automatic reconnection of monitor to the stream when gvencode is down.
[ingest] Fixed an issue where the Ingest job would be restarted when the composeD job is restarted.
[remotegui] Fixed an issue where RemoteGUI was not showing the duplicated frames.
[loadtester] Corrected documentation where
loadtest
was used as a prefix instead ofloadtester
.[metrics] Corrected missing text in some metrics tags stating that the value diaplayed is the stream type.
[genvid-ami] Updated game machines to use Python 3.8.6 and PIP 21.1.
[aws] Added the
modify-permissions
anddescribe-permissions
commands togenvid-ami
. See the Managing the AMI section for more information.[aws] Added the ability to set the AMI owner(s) on both the game and server AMI for all our sample clusters. See our documentation and the Upgrade Notes for more information.
[nats] Upgraded nats-server on Windows and Linux from 2.0.4 to 2.2.6.
[tick] Upgraded the apps used with the Tick Sample to their latest versions. The Chronograf dashboards were updated accordingly.
[cluster-api] Fixed an issue where when logs for a service were not available–we were returning a 500 status code instead of a 404 not found.
[gvencode, ingest] Fixed an issue where consecutive start/stop of OBS with a different video mode results in displaying a black frame.
[sdk, composed, gvencode] Improved Genvid clock accuracy by using a monotonic clock.
[web sample] Improved design by only displaying overlay if the video player is ready.
[web sample] Improved visibility of the output framerate option by adding it in the web sample.