101 lines
3.2 KiB
Python
101 lines
3.2 KiB
Python
|
|
#
|
||
|
|
# Import UniTAP module.
|
||
|
|
#
|
||
|
|
import time
|
||
|
|
import UniTAP
|
||
|
|
|
||
|
|
#
|
||
|
|
# To initialize UniTAP library wrapper user should create UniTAP.TsiLib() object.
|
||
|
|
#
|
||
|
|
lUniTAP = UniTAP.TsiLib()
|
||
|
|
|
||
|
|
#
|
||
|
|
# For opening device, please, put serial number of the device as 8 symbol str or put index of device.
|
||
|
|
#
|
||
|
|
# dev = lUniTAP.open("NNNNNNNN")
|
||
|
|
dev = lUniTAP.open(0)
|
||
|
|
|
||
|
|
# After opening device as in UCD Console device role should be selected.
|
||
|
|
|
||
|
|
role = dev.select_role(UniTAP.dev.UCD400.DPSourceDPSink)
|
||
|
|
# role = dev.select_role(UniTAP.dev.UCD500.DPSourceDPSink)
|
||
|
|
|
||
|
|
# Print HDCP 1.4 and 2.3 statuses
|
||
|
|
# print(role.dptx.hdcp.status.get(UniTAP.HdcpStatus.Status1x))
|
||
|
|
print(role.dptx.hdcp.status.get(UniTAP.HdcpStatus.StatusTx2x))
|
||
|
|
# print(role.dprx.hdcp.status.get(UniTAP.HdcpStatus.Status1x))
|
||
|
|
print(role.dprx.hdcp.status.get(UniTAP.HdcpStatus.StatusRx2x))
|
||
|
|
|
||
|
|
# Set config HDCP 1.4 TX
|
||
|
|
# config = UniTAP.HdcpTxConfig.Config1x()
|
||
|
|
# config.encryption = True
|
||
|
|
# config.authenticate = True
|
||
|
|
# config.keys = UniTAP.HdcpSource1XKeys.Production
|
||
|
|
# role.dptx.hdcp.config.set(config)
|
||
|
|
# time.sleep(2)
|
||
|
|
|
||
|
|
# Set config HDCP 1.4 RX
|
||
|
|
# config = UniTAP.HdcpRxConfig.Config1x()
|
||
|
|
# config.keys = UniTAP.HdcpSink1XKeys.Production
|
||
|
|
# config.capable = True
|
||
|
|
|
||
|
|
# print(role.dptx.hdcp.status.get(UniTAP.HdcpStatus.Status1x))
|
||
|
|
# print(role.dptx.hdcp.status.get(UniTAP.HdcpStatus.StatusTx2x))
|
||
|
|
# print(role.dprx.hdcp.status.get(UniTAP.HdcpStatus.Status1x))
|
||
|
|
# print(role.dprx.hdcp.status.get(UniTAP.HdcpStatus.StatusRx2x))
|
||
|
|
|
||
|
|
# Set config HDCP 2.3
|
||
|
|
config = UniTAP.HdcpTxConfig.Config2x()
|
||
|
|
config.encryption = True
|
||
|
|
config.authenticate = True
|
||
|
|
config.keys = UniTAP.HdcpSource2XKeys.Production
|
||
|
|
config.store_km = True
|
||
|
|
config.content_level = 1
|
||
|
|
role.dptx.hdcp.config.set(config)
|
||
|
|
time.sleep(2)
|
||
|
|
|
||
|
|
# Set config HDCP 2.3 RX
|
||
|
|
config = UniTAP.HdcpRxConfig.Config2x()
|
||
|
|
config.keys = UniTAP.HdcpSink2XKeys.Production
|
||
|
|
config.capable = True
|
||
|
|
|
||
|
|
# print(role.dptx.hdcp.status.get(UniTAP.HdcpStatus.Status1x))
|
||
|
|
print(role.dptx.hdcp.status.get(UniTAP.HdcpStatus.StatusTx2x))
|
||
|
|
# print(role.dprx.hdcp.status.get(UniTAP.HdcpStatus.Status1x))
|
||
|
|
print(role.dprx.hdcp.status.get(UniTAP.HdcpStatus.StatusRx2x))
|
||
|
|
|
||
|
|
# Get config HDCP 1.4
|
||
|
|
# config_14 = role.dptx.hdcp.config.get(UniTAP.HdcpTxConfig.Config1x)
|
||
|
|
|
||
|
|
# Get config HDCP 2.3
|
||
|
|
config_23 = role.dptx.hdcp.config.get(UniTAP.HdcpTxConfig.Config2x)
|
||
|
|
|
||
|
|
|
||
|
|
# For UCD-323 -> UCD-301
|
||
|
|
# role_rx = dev_rx.select_role(UniTAP.dev.UCD301.HDMISink)
|
||
|
|
# role_tx = dev_tx.select_role(UniTAP.dev.UCD323.HDMISource)
|
||
|
|
|
||
|
|
# Print HDCP 1.4 and 2.3 statuses
|
||
|
|
# print(role_rx.hdrx.hdcp.status.get(UniTAP.HdcpStatus.Status1x))
|
||
|
|
# print(role_tx.hdtx.hdcp.status.get(UniTAP.HdcpStatus.Status1x))
|
||
|
|
|
||
|
|
# Set config HDCP 1.4
|
||
|
|
# config = UniTAP.HdcpTxConfig.Config1x()
|
||
|
|
# config.encryption = True
|
||
|
|
# config.authenticate = True
|
||
|
|
# config.keys = UniTAP.HdcpSource1XKeys.Production
|
||
|
|
# role_tx.hdtx.hdcp.config.set(config)
|
||
|
|
# time.sleep(2)
|
||
|
|
|
||
|
|
# print(role_rx.hdrx.hdcp.status.get(UniTAP.HdcpStatus.Status1x))
|
||
|
|
# print(role_tx.hdtx.hdcp.status.get(UniTAP.HdcpStatus.Status1x))
|
||
|
|
|
||
|
|
#
|
||
|
|
# Since the 3.5 version, TsiLib and TSIDevice objects have the option to be closed earlier.
|
||
|
|
# TSIDevice can be closed with the TsiLib method close(). TsiLib can be closed with cleanup().
|
||
|
|
# Clean up will close all opened devices and block ability to open any devices
|
||
|
|
# with same TsiLib object.
|
||
|
|
#
|
||
|
|
lUniTAP.close(dev)
|
||
|
|
|
||
|
|
lUniTAP.cleanup()
|