更新UCD-API库及文档
This commit is contained in:
@@ -8,7 +8,7 @@ class OPFParametersParser:
|
||||
return parse_link_training(args[3])
|
||||
if opf_id in [2]:
|
||||
return parse_video_mode_2(args[3])
|
||||
if opf_id in [3, 4, 5, 7, 8, 11, 12, 13, 14, 15, 16, 17, 101, 102, 104, 105, 106, 121, 122, 123, 145, 150, 152, 161]:
|
||||
if opf_id in [3, 4, 5, 7, 8, 11, 12, 13, 14, 15, 16, 17, 22, 23, 24, 101, 102, 104, 105, 106, 121, 122, 123, 145, 150, 152, 161]:
|
||||
return parse_message(args[1])
|
||||
if opf_id in [6]:
|
||||
return parse_video_mode_6(args[1], args[3])
|
||||
@@ -26,6 +26,11 @@ class OPFParametersParser:
|
||||
return parse_opf_21(args[3])
|
||||
if opf_id in [103]:
|
||||
return parse_video_mode_103(args[3])
|
||||
if opf_id in [108]:
|
||||
if len(args) > 3:
|
||||
return parse_audio_mode_108(args[3])
|
||||
else:
|
||||
return parse_message(args[1])
|
||||
if opf_id in [120]:
|
||||
return parse_video_mode_120(args[3])
|
||||
if opf_id in [140]:
|
||||
@@ -38,6 +43,10 @@ class OPFParametersParser:
|
||||
return parse_video_mode_143(args[3])
|
||||
if opf_id in [144]:
|
||||
return parse_video_mode_144(args[3])
|
||||
if opf_id in [146]:
|
||||
return parse_video_mode_146(args[3])
|
||||
if opf_id in [147]:
|
||||
return parse_video_mode_147(args[3])
|
||||
if opf_id in [151]:
|
||||
return parse_video_mode_103(args[3])
|
||||
else:
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
import re
|
||||
from typing import List, Optional
|
||||
|
||||
from UniTAP.libs.lib_tsi.tsi_types import TSI_OPF_PARAMETER
|
||||
import UniTAP.libs.lib_tsi.tsi_types as ci
|
||||
|
||||
|
||||
def parse_link_training(parameters_list: List[TSI_OPF_PARAMETER]):
|
||||
def parse_link_training(parameters_list: List[ci.TSI_OPF_PARAMETER]):
|
||||
dp_lanes = 0
|
||||
dp_link_rate = 0
|
||||
encoding = None
|
||||
@@ -29,7 +29,7 @@ def parse_link_training(parameters_list: List[TSI_OPF_PARAMETER]):
|
||||
return int(dp_lanes), float(dp_link_rate), encoding
|
||||
|
||||
|
||||
def parse_video_mode_2(parameters_list: List[TSI_OPF_PARAMETER]):
|
||||
def parse_video_mode_2(parameters_list: List[ci.TSI_OPF_PARAMETER]):
|
||||
res_x = 0
|
||||
res_y = 0
|
||||
res_frate = 0
|
||||
@@ -48,7 +48,7 @@ def parse_video_mode_2(parameters_list: List[TSI_OPF_PARAMETER]):
|
||||
return int(res_x), int(res_y), int(float(res_frate) * 1000), int(res_bpc), tim_std, tim_rb
|
||||
|
||||
|
||||
def parse_video_mode_6(pattern_request: str, parameters_list: List[TSI_OPF_PARAMETER]):
|
||||
def parse_video_mode_6(pattern_request: str, parameters_list: List[ci.TSI_OPF_PARAMETER]):
|
||||
res_x = 0
|
||||
res_y = 0
|
||||
res_frate = 0
|
||||
@@ -79,7 +79,7 @@ def parse_video_mode_6(pattern_request: str, parameters_list: List[TSI_OPF_PARAM
|
||||
res_bpc), timing_standard, col_format, col_range, col_yc, pattern_name
|
||||
|
||||
|
||||
def parse_video_mode_9(parameters_list: List[TSI_OPF_PARAMETER], pattern_request: Optional[str] = None):
|
||||
def parse_video_mode_9(parameters_list: List[ci.TSI_OPF_PARAMETER], pattern_request: Optional[str] = None):
|
||||
res_x = 0
|
||||
res_y = 0
|
||||
res_frate = 0
|
||||
@@ -101,7 +101,7 @@ def parse_video_mode_9(parameters_list: List[TSI_OPF_PARAMETER], pattern_request
|
||||
return int(res_x), int(res_y), int(float(res_frate) * 1000), int(res_bpc), tim_std, pattern_name
|
||||
|
||||
|
||||
def parse_opf_10(parameters_list: List[TSI_OPF_PARAMETER]):
|
||||
def parse_opf_10(parameters_list: List[ci.TSI_OPF_PARAMETER]):
|
||||
res_x, res_y, res_frate, res_bpc, timing_standard = [0] * 5
|
||||
|
||||
audio_pattern = ''
|
||||
@@ -136,7 +136,7 @@ def parse_message(message: str):
|
||||
return [str(message)]
|
||||
|
||||
|
||||
def parse_video_mode_19(parameters_list: List[TSI_OPF_PARAMETER]):
|
||||
def parse_video_mode_19(parameters_list: List[ci.TSI_OPF_PARAMETER]):
|
||||
use_3tap = False
|
||||
for param in parameters_list:
|
||||
if param.name == 'Conversion type filter':
|
||||
@@ -144,7 +144,7 @@ def parse_video_mode_19(parameters_list: List[TSI_OPF_PARAMETER]):
|
||||
return [use_3tap]
|
||||
|
||||
|
||||
def parse_video_mode_18(parameters_list: List[TSI_OPF_PARAMETER]):
|
||||
def parse_video_mode_18(parameters_list: List[ci.TSI_OPF_PARAMETER]):
|
||||
res_x = 0
|
||||
res_y = 0
|
||||
res_frate = 0
|
||||
@@ -166,7 +166,7 @@ def parse_video_mode_18(parameters_list: List[TSI_OPF_PARAMETER]):
|
||||
return int(res_x), int(res_y), int(float(res_frate) * 1000), int(res_bpc), col_format, col_range, col_yc, tim_std
|
||||
|
||||
|
||||
def parse_video_mode_20(parameters_list: List[TSI_OPF_PARAMETER], pattern_request: Optional[str] = None):
|
||||
def parse_video_mode_20(parameters_list: List[ci.TSI_OPF_PARAMETER], pattern_request: Optional[str] = None):
|
||||
pattern_name = None
|
||||
res_x = 0
|
||||
res_y = 0
|
||||
@@ -186,10 +186,10 @@ def parse_video_mode_20(parameters_list: List[TSI_OPF_PARAMETER], pattern_reques
|
||||
enable_dsc = False
|
||||
|
||||
for param in parameters_list:
|
||||
if param.name == 'Video Mode':
|
||||
line = param.description.split("Hz")
|
||||
res_x, res_y, res_frate = re.findall(r'\d+', line[0])
|
||||
tim_std = re.findall(r'VIC \d+|DMT \w+|UFG \d+|CVT RB\d+|CVT|OVT', line[1])
|
||||
if param.name == 'Video Mode' and param.description != "Disable Video":
|
||||
line = param.description.split("Hz")
|
||||
res_x, res_y, res_frate = re.findall(r'\d+', line[0])
|
||||
tim_std = re.findall(r'VIC \d+|DMT \w+|UFG \d+|CVT RB\d+|CVT|OVT', line[1])
|
||||
elif param.name == 'Color Format':
|
||||
color_format_str = param.description
|
||||
result = re.findall(r'RGB|YCbCr 4:2:2|YCbCr 4:4:4|YCbCr 4:2:0|Simple 4:2:2|ITU-601|ITU-709|\d+|VESA|CTA',
|
||||
@@ -203,7 +203,7 @@ def parse_video_mode_20(parameters_list: List[TSI_OPF_PARAMETER], pattern_reques
|
||||
pattern_name, enable_dsc
|
||||
|
||||
|
||||
def parse_opf_21(parameters_list: List[TSI_OPF_PARAMETER]):
|
||||
def parse_opf_21(parameters_list: List[ci.TSI_OPF_PARAMETER]):
|
||||
audio_pattern = ''
|
||||
ch_count = 0
|
||||
sample_freq = 0
|
||||
@@ -230,7 +230,7 @@ def parse_opf_21(parameters_list: List[TSI_OPF_PARAMETER]):
|
||||
ch_info if len(ch_info) > 0 else None)
|
||||
|
||||
|
||||
def parse_video_mode_103(parameters_list: List[TSI_OPF_PARAMETER]):
|
||||
def parse_video_mode_103(parameters_list: List[ci.TSI_OPF_PARAMETER]):
|
||||
width = 0
|
||||
height = 0
|
||||
res_frate = 60000
|
||||
@@ -268,7 +268,26 @@ def parse_video_mode_103(parameters_list: List[TSI_OPF_PARAMETER]):
|
||||
int(h_slice_number), int(buffer_bit_depth), int(v_slice_number), int(dsc_v_major), int(dsc_v_minor)
|
||||
|
||||
|
||||
def parse_video_mode_120(parameters_list: List[TSI_OPF_PARAMETER]):
|
||||
def parse_audio_mode_108(parameters_list: List[ci.TSI_OPF_PARAMETER]):
|
||||
audio_pattern = ''
|
||||
ch_count = 0
|
||||
sample_rate = 0
|
||||
sample_size = 0
|
||||
|
||||
for ind, param in enumerate(parameters_list):
|
||||
if param.name == 'Audio test pattern':
|
||||
audio_pattern = param.description
|
||||
elif param.name == 'Sample rate':
|
||||
sample_rate, = re.findall(r'\d+', param.description)
|
||||
elif param.name == 'Sample size':
|
||||
sample_size, = re.findall(r'\d+', param.description)
|
||||
elif param.name == 'Channels count':
|
||||
ch_count, = re.findall(r'\d+', param.description)
|
||||
|
||||
return audio_pattern, int(sample_rate), int(sample_size), int(ch_count)
|
||||
|
||||
|
||||
def parse_video_mode_120(parameters_list: List[ci.TSI_OPF_PARAMETER]):
|
||||
res_x = 0
|
||||
res_y = 0
|
||||
res_frate = 0
|
||||
@@ -282,7 +301,7 @@ def parse_video_mode_120(parameters_list: List[TSI_OPF_PARAMETER]):
|
||||
return int(res_x), int(res_y), int(float(res_frate) * 1000), int(res_bpc), color_format
|
||||
|
||||
|
||||
def parse_video_mode_140(parameters_list: List[TSI_OPF_PARAMETER]):
|
||||
def parse_video_mode_140(parameters_list: List[ci.TSI_OPF_PARAMETER]):
|
||||
res_x = 0
|
||||
res_y = 0
|
||||
res_frate = 0
|
||||
@@ -300,7 +319,7 @@ def parse_video_mode_140(parameters_list: List[TSI_OPF_PARAMETER]):
|
||||
return int(res_x), int(res_y), int(float(res_frate) * 1000), tim_std, tim_std_num
|
||||
|
||||
|
||||
def parse_video_mode_141(parameters_list: List[TSI_OPF_PARAMETER]):
|
||||
def parse_video_mode_141(parameters_list: List[ci.TSI_OPF_PARAMETER]):
|
||||
audio_format = ''
|
||||
channels = 0
|
||||
size = 0
|
||||
@@ -313,7 +332,7 @@ def parse_video_mode_141(parameters_list: List[TSI_OPF_PARAMETER]):
|
||||
return audio_format, int(channels), int(size), int(float(rate) * 1000)
|
||||
|
||||
|
||||
def parse_video_mode_143(parameters_list: List[TSI_OPF_PARAMETER]):
|
||||
def parse_video_mode_143(parameters_list: List[ci.TSI_OPF_PARAMETER]):
|
||||
res_frate = 0
|
||||
|
||||
for param in parameters_list:
|
||||
@@ -323,5 +342,23 @@ def parse_video_mode_143(parameters_list: List[TSI_OPF_PARAMETER]):
|
||||
return [int(float(res_frate))]
|
||||
|
||||
|
||||
def parse_video_mode_144(parameters_list: List[TSI_OPF_PARAMETER]):
|
||||
def parse_video_mode_144(parameters_list: List[ci.TSI_OPF_PARAMETER]):
|
||||
return [parameters_list[0].description]
|
||||
|
||||
def parse_video_mode_146(parameters_list: List[ci.TSI_OPF_PARAMETER]):
|
||||
res_x = 0
|
||||
res_y = 0
|
||||
rate = 0
|
||||
for param in parameters_list:
|
||||
if param.name == "Resolution":
|
||||
res_x, res_y = re.findall(r'\d+', param.description)
|
||||
if param.name == 'Refresh rate':
|
||||
rate = re.findall(r'\d+', param.description)[0]
|
||||
return int(res_x), int(res_y), int(float(rate) * 1000)
|
||||
|
||||
def parse_video_mode_147(parameters_list: List[ci.TSI_OPF_PARAMETER]):
|
||||
refresh_rate = 0
|
||||
for param in parameters_list:
|
||||
if param.name == 'Refresh rate':
|
||||
refresh_rate = re.findall(r'\d+', param.description)[0]
|
||||
return int(refresh_rate)
|
||||
Reference in New Issue
Block a user