Upgrade from 1.23.0 to 1.24.0
Changes to the Unity Asset Package
We split the Genvid Unity Asset Package into two different parts. One allows you to integrate the Genvid SDK into your game. The other adds tooling to the Unity Editor interface for interacting with your clusters.
Make sure you completely uninstall the older version of the Genvid asset package before upgrading to 1.24.0.
Changes to the Unity Cube Sample
We moved the
Genvid_SubmitNotification()
family of methods fromGenvidStreams
toGenvidSession
as notifications are not sent on streams.We made the error handling of the
Submit*
methods more consistent and informative.
YouTube Embedded Player and SSL Support
You can now use the YouTube Embedded Player with an SSL protected website. When
doing so, you must use SSL clusters with names that terminate in ways that
indicate they use SSL (such as _alb_ssl
).
When using an SSL module, its leaf endpoint and a web endpoint must be loaded
in the cluster configuration by using the loadEndpoint()
method in
/samples/cube/web/web.py
.
def loadEndpoint(self): leaf_endpoint = self.get_leaf_endpoint() web_endpoint = self.get_web_endpoint() config = { 'version': '1.7.0', 'config': { 'cloud': { 'endpoint': { 'leaf': '', 'web': '' } } } } config['config']['cloud']['endpoint']['leaf'] = leaf_endpoint config['config']['cloud']['endpoint']['web'] = web_endpoint return config
To stream YouTube embedded on a website with SSL, you must load the file
youtube.sample.hcl
located in samples/streaming_services
to the
cluster configuration. This file contains the new configuration that enables
embedding with SSL by setting embed_ssl
to true.
config { embed_ssl { enabled = false } } // end of config
SSL Support on Local Cluster
It is now possible to generate self-signed SSL certificates for your local
cluster when loading the web sample. A new python script
generate_ssl.py
[*] uses HashiCorp Vault to generate the certificates that
the backend of the Web Sample will use.
Note
As of Genvid MILE SDK version 1.29.0, the generate_ssl.py
script is
replaced by the genvid-sdk generate-ssl
command. See the
Toolbox CLI Applications section for more information.
When loading the web sample, use the -s option to trigger the
generate_ssl.py
script.
py web.py load -s
Whether you’re using the standalone mode or a streaming platform, make sure to
set embed_ssl
to true in your hcl file to enable embedding with SSL.
config { embed_ssl { enabled = true } }
Warning
If you need to load multiple hcl configuration files containing the embed_ssl key (such as twitch.sample.hcl or youtube.sample.hcl), make sure to load them after loading the web sample. Otherwise you might overwrite the values associated with the embed_ssl key.
Terraform Modules Changes
We removed the variable
force_az
from all the AWS Terraform modules. We replaced it with the new variableazs
which lets you select specific availability zones.We added the variable
subnet_ids
to AWS Terraform modules, which is an ordered list of AWS subnet IDs. The module will use the list you provide for this variable. If you don’t provide a list, the module uses the first subnet from each availability zone in the variableazs
.The module
azurerm_basic_cluster
now uses Azure Shared Images Versions to speed cluster instantiation.
To make sure that the availability zone is preserved on an existing cluster following the upgrade:
Write down a value of
force_az
,Reimport the module,
Open the Cluster Settings page,
Add the noted value of
force_az
to the azs setting.
genvidClient.IDataFrame.timeCode adjustment
We converted
genvidClient.IDataFrame.timeCode
to milliseconds to match the format of
genvidClient.IDataStreamFrame.timeCode
.
(Version 1.23.0 introduced a mismatch in the formats.)