diff options
| author | Zhineng Li <[email protected]> | 2026-02-13 10:54:11 +0800 |
|---|---|---|
| committer | Zhineng Li <[email protected]> | 2026-02-13 10:54:11 +0800 |
| commit | 7347bac4ab7e136157fc94777e6cf87ef9e08599 (patch) | |
| tree | 0dec367dac6e152161a6f7cc0dba6ebbef1f34a2 /data/en_us/ice | |
| download | acs-metadata-full-7347bac4ab7e136157fc94777e6cf87ef9e08599.tar.gz acs-metadata-full-7347bac4ab7e136157fc94777e6cf87ef9e08599.zip | |
first commitHEADv1.0.0+20260212main
Diffstat (limited to 'data/en_us/ice')
| -rw-r--r-- | data/en_us/ice/2020-11-09/api-docs.php | 76258 |
1 files changed, 76258 insertions, 0 deletions
diff --git a/data/en_us/ice/2020-11-09/api-docs.php b/data/en_us/ice/2020-11-09/api-docs.php new file mode 100644 index 0000000..93d89fc --- /dev/null +++ b/data/en_us/ice/2020-11-09/api-docs.php @@ -0,0 +1,76258 @@ +<?php return [ + 'version' => '1.0', + 'info' => [ + 'style' => 'RPC', + 'product' => 'ICE', + 'version' => '2020-11-09', + ], + 'directories' => [ + [ + 'id' => 170098, + 'title' => 'Media asset upload', + 'type' => 'directory', + 'children' => [ + 'CreateUploadMedia', + 'CreateUploadStream', + 'RefreshUploadMedia', + 'RegisterMediaStream', + 'GetUrlUploadInfos', + 'UploadMediaByURL', + 'UploadStreamByURL', + ], + ], + [ + 'id' => 170106, + 'title' => 'Media asset management', + 'type' => 'directory', + 'children' => [ + [ + 'id' => 186460, + 'title' => 'Media asset search', + 'type' => 'directory', + 'children' => [ + [ + 'id' => 277535, + 'title' => 'Stream media asset', + 'type' => 'directory', + 'children' => [ + 'CloseStreamToSearchLib', + 'GetStreamTagList', + 'CreateStreamToSearchLib', + 'AddStreamTagToSearchLib', + ], + ], + [ + 'id' => 186506, + 'title' => 'Search library', + 'type' => 'directory', + 'children' => [ + 'CreateSearchLib', + 'QuerySearchLib', + 'ListSearchLib', + 'AlterSearchLib', + 'DropSearchLib', + ], + ], + [ + 'id' => 186510, + 'title' => 'Search index', + 'type' => 'directory', + 'children' => [ + 'CreateSearchIndex', + 'AlterSearchIndex', + 'QuerySearchIndex', + 'DropSearchIndex', + ], + ], + [ + 'id' => 205155, + 'title' => 'Search index tasks', + 'type' => 'directory', + 'children' => [ + 'QueryMediaIndexJob', + 'SearchIndexJobRerun', + ], + ], + [ + 'id' => 205156, + 'title' => 'Media asset operation', + 'type' => 'directory', + 'children' => [ + 'InsertMediaToSearchLib', + 'UpdateMediaToSearchLib', + 'DeleteMediaFromSearchLib', + ], + ], + [ + 'id' => 205157, + 'title' => 'Search', + 'type' => 'directory', + 'children' => [ + [ + 'id' => 205158, + 'title' => 'Basic search', + 'type' => 'directory', + 'children' => [ + 'SearchMedia', + 'GetVideoList', + ], + ], + [ + 'id' => 205159, + 'title' => 'Face search', + 'type' => 'directory', + 'children' => [ + 'SearchMediaByFace', + 'SearchMediaClipByFace', + ], + ], + [ + 'id' => 205160, + 'title' => 'Label search', + 'type' => 'directory', + 'children' => [ + 'SearchMediaByAILabel', + ], + ], + [ + 'id' => 205161, + 'title' => 'LLM search', + 'type' => 'directory', + 'children' => [ + 'SearchMediaByMultimodal', + 'SearchMediaByHybrid', + ], + ], + ], + ], + ], + ], + [ + 'id' => 137519, + 'title' => 'Media library', + 'type' => 'directory', + 'children' => [ + 'RegisterMediaInfo', + 'GetMediaInfo', + 'UpdateMediaInfo', + 'DeleteMediaInfos', + 'BatchGetMediaInfos', + 'ListMediaBasicInfos', + 'ListPublicMediaBasicInfos', + 'ListAllPublicMediaTags', + 'SubmitMediaAiAnalysisJob', + ], + ], + [ + 'id' => 170110, + 'title' => 'Classification', + 'type' => 'directory', + 'children' => [ + 'AddCategory', + 'GetCategories', + 'UpdateCategory', + 'DeleteCategory', + ], + ], + [ + 'id' => 179222, + 'title' => 'Tag management', + 'type' => 'directory', + 'children' => [ + 'AddMediaMarks', + 'GetMediaMarks', + 'UpdateMediaMarks', + 'DeleteMediaMarks', + 'ListMediaMarks', + ], + ], + [ + 'id' => 357427, + 'title' => null, + 'type' => 'directory', + 'children' => [ + 'CreateIpcOrder', + 'GetIpcDeviceInfo', + 'QueryIpcQuota', + ], + ], + 'GetPlayInfo', + 'DeletePlayInfo', + ], + ], + [ + 'id' => 174129, + 'title' => 'Media review', + 'type' => 'directory', + 'children' => [ + 'CreateAudit', + 'SubmitMediaCensorJob', + 'QueryMediaCensorJobDetail', + 'QueryMediaCensorJobList', + ], + ], + [ + 'id' => 170115, + 'title' => 'Configuration management', + 'type' => 'directory', + 'children' => [ + [ + 'id' => 170116, + 'title' => 'Templates', + 'type' => 'directory', + 'children' => [ + 'CreateCustomTemplate', + 'GetSystemTemplate', + 'GetCustomTemplate', + 'SetDefaultCustomTemplate', + 'UpdateCustomTemplate', + 'DeleteCustomTemplate', + 'ListSystemTemplates', + 'ListCustomTemplates', + ], + ], + [ + 'id' => 170125, + 'title' => 'Pipelines', + 'type' => 'directory', + 'children' => [ + 'CreatePipeline', + 'GetPipeline', + 'UpdatePipeline', + 'DeletePipeline', + 'ListPipelines', + ], + ], + ], + ], + [ + 'id' => 170131, + 'title' => 'Media processing', + 'type' => 'directory', + 'children' => [ + [ + 'id' => 170132, + 'title' => 'Transcoding', + 'type' => 'directory', + 'children' => [ + 'SubmitTranscodeJob', + 'GetTranscodeJob', + 'ListTranscodeJobs', + 'SubmitPackageJob', + 'GetPackageJob', + 'ListPackageJobs', + 'GenerateKMSDataKey', + 'DecryptKMSDataKey', + ], + ], + [ + 'id' => 170136, + 'title' => 'Snapshot', + 'type' => 'directory', + 'children' => [ + 'SubmitSnapshotJob', + 'SubmitDynamicImageJob', + 'GetSnapshotUrls', + 'GetSnapshotJob', + 'GetDynamicImageJob', + 'ListSnapshotJobs', + 'ListDynamicImageJobs', + ], + ], + [ + 'id' => 170144, + 'title' => 'Media information', + 'type' => 'directory', + 'children' => [ + 'SubmitSyncMediaInfoJob', + 'SubmitMediaInfoJob', + 'GetMediaInfoJob', + 'ListMediaInfoJobs', + ], + ], + ], + ], + [ + 'id' => 171061, + 'title' => 'Real-time processing', + 'type' => 'directory', + 'children' => [ + [ + 'id' => 171331, + 'title' => 'Real-time media transcoding', + 'type' => 'directory', + 'children' => [ + 'CreateLiveTranscodeTemplate', + 'GetLiveTranscodeTemplate', + 'UpdateLiveTranscodeTemplate', + 'DeleteLiveTranscodeTemplate', + 'ListLiveTranscodeTemplates', + 'SubmitLiveTranscodeJob', + 'SendLiveTranscodeJobCommand', + 'GetLiveTranscodeJob', + 'UpdateLiveTranscodeJob', + 'DeleteLiveTranscodeJob', + 'ListLiveTranscodeJobs', + ], + ], + [ + 'id' => 171062, + 'title' => 'Real-time media recording', + 'type' => 'directory', + 'children' => [ + 'CreateLiveRecordTemplate', + 'GetLiveRecordTemplate', + 'UpdateLiveRecordTemplate', + 'DeleteLiveRecordTemplate', + 'ListLiveRecordTemplates', + 'SubmitLiveRecordJob', + 'GetLiveRecordJob', + 'DeleteLiveRecordFiles', + 'ListLiveRecordJobs', + 'ListLiveRecordFiles', + ], + ], + [ + 'id' => 171234, + 'title' => 'Real-time media screenshots', + 'type' => 'directory', + 'children' => [ + 'CreateLiveSnapshotTemplate', + 'GetLiveSnapshotTemplate', + 'UpdateLiveSnapshotTemplate', + 'DeleteLiveSnapshotTemplate', + 'ListLiveSnapshotTemplates', + 'SubmitLiveSnapshotJob', + 'SendLiveSnapshotJobCommand', + 'GetLiveSnapshotJob', + 'DeleteLiveSnapshotFiles', + 'ListLiveSnapshotJobs', + 'ListLiveSnapshotFiles', + ], + ], + ], + ], + [ + 'id' => 170149, + 'title' => 'Video production', + 'type' => 'directory', + 'children' => [ + [ + 'id' => 137503, + 'title' => 'Project management', + 'type' => 'directory', + 'children' => [ + 'CreateEditingProject', + 'GetEditingProject', + 'UpdateEditingProject', + 'DeleteEditingProjects', + 'ListEditingProjects', + 'AddEditingProjectMaterials', + 'GetEditingProjectMaterials', + 'DeleteEditingProjectMaterials', + 'GetLiveEditingIndexFile', + 'SubmitProjectExportJob', + 'GetProjectExportJob', + ], + ], + [ + 'id' => 137513, + 'title' => 'Video generation and editing', + 'type' => 'directory', + 'children' => [ + 'SubmitMediaProducingJob', + 'GetMediaProducingJob', + 'SubmitLiveEditingJob', + 'GetLiveEditingJob', + 'SubmitBatchMediaProducingJob', + 'GetBatchMediaProducingJob', + 'SubmitSportsHighlightsJob', + 'SubmitScreenMediaHighlightsJob', + 'ListMediaProducingJobs', + 'ListBatchMediaProducingJobs', + ], + ], + [ + 'id' => 137528, + 'title' => 'Templates', + 'type' => 'directory', + 'children' => [ + 'AddTemplate', + 'GetTemplate', + 'UpdateTemplate', + 'DeleteTemplate', + 'ListTemplates', + 'GetTemplateMaterials', + 'GetTemplateParams', + ], + ], + [ + 'id' => 137534, + 'title' => 'Smart tasks', + 'type' => 'directory', + 'children' => [ + [ + 'id' => 208842, + 'title' => 'Hotwords', + 'type' => 'directory', + 'children' => [ + 'DeleteHotwordLibrary', + 'GetHotwordLibrary', + 'ListHotwordLibraries', + 'UpdateHotwordLibrary', + 'CreateHotwordLibrary', + ], + ], + [ + 'id' => 185311, + 'title' => 'Avatar training', + 'type' => 'directory', + 'children' => [ + 'CreateAvatarTrainingJob', + 'UpdateAvatarTrainingJob', + 'SubmitAvatarTrainingJob', + 'GetAvatarTrainingJob', + 'DeleteAvatarTrainingJob', + 'ListAvatarTrainingJobs', + 'GetAvatar', + 'ListAvatars', + ], + ], + [ + 'id' => 183347, + 'title' => 'Voice clone', + 'type' => 'directory', + 'children' => [ + 'CreateCustomizedVoiceJob', + 'GetDemonstrationForCustomizedVoiceJob', + 'DetectAudioForCustomizedVoiceJob', + 'SubmitCustomizedVoiceJob', + 'SubmitStandardCustomizedVoiceJob', + 'GetCustomizedVoiceJob', + 'DeleteCustomizedVoiceJob', + 'ListCustomizedVoiceJobs', + 'GetCustomizedVoice', + 'UpdateCustomizedVoice', + 'ListCustomizedVoices', + ], + ], + 'SubmitASRJob', + 'SubmitAvatarVideoJob', + 'SubmitAudioProduceJob', + 'SubmitTextGenerateJob', + 'SubmitVideoTranslationJob', + 'SubmitHighlightExtractionJob', + 'SubmitSegmentationJob', + 'GetSmartHandleJob', + 'DeleteSmartJob', + 'ListSmartJobs', + 'ListSmartSysAvatarModels', + 'ListSmartVoiceGroups', + ], + ], + ], + ], + [ + 'id' => 194835, + 'title' => 'Real-time conversational AI', + 'type' => 'directory', + 'children' => [ + [ + 'id' => 196322, + 'title' => 'Agent management', + 'type' => 'directory', + 'children' => [ + 'StartAIAgentInstance', + 'StopAIAgentInstance', + 'UpdateAIAgentInstance', + 'DescribeAIAgentInstance', + 'ListAIAgentInstance', + 'SendAIAgentSpeech', + 'TakeoverAIAgentCall', + 'SendAIAgentDataChannelMessage', + 'SendAIAgentText', + ], + ], + [ + 'id' => 196323, + 'title' => 'AICallKit integration', + 'type' => 'directory', + 'children' => [ + 'GenerateMessageChatToken', + 'GenerateAIAgentCall', + 'ListAIAgentDialogues', + 'DeleteAIAgentDialogue', + 'SendMessageChatText', + ], + ], + [ + 'id' => 208799, + 'title' => 'Carrier line ', + 'type' => 'directory', + 'children' => [ + 'StartAIAgentOutboundCall', + 'ListAIAgentPhoneNumber', + 'ForwardAIAgentCall', + ], + ], + [ + 'id' => 246577, + 'title' => 'Voiceprints ', + 'type' => 'directory', + 'children' => [ + 'SetAIAgentVoiceprint', + 'ClearAIAgentVoiceprint', + 'ListAIAgentVoiceprints', + ], + ], + [ + 'id' => 208802, + 'title' => 'Offline task', + 'type' => 'directory', + 'children' => [ + 'SubmitAIAgentVideoAuditTask', + ], + ], + [ + 'id' => 322101, + 'title' => 'RTOS License', + 'type' => 'directory', + 'children' => [ + 'GetAiRtcLicenseInfoList', + 'GetAiRtcAuthCodeList', + 'ActiveAiRtcLicense', + ], + ], + ], + ], + [ + 'id' => 170150, + 'title' => 'Media AI', + 'type' => 'directory', + 'children' => [ + [ + 'id' => 178764, + 'title' => 'Smart tagging', + 'type' => 'directory', + 'children' => [ + [ + 'id' => 208941, + 'title' => 'Smart tagging task', + 'type' => 'directory', + 'children' => [ + 'SubmitVideoCognitionJob', + 'QueryVideoCognitionJob', + 'QuerySmarttagJob', + 'SubmitSmarttagJob', + ], + ], + [ + 'id' => 208942, + 'title' => 'Recognition entity', + 'type' => 'directory', + 'children' => [ + 'CreateRecognitionEntity', + 'CreateRecognitionLib', + 'CreateRecognitionSample', + 'ListRecognitionSamples', + 'DeleteRecognitionSample', + 'ListRecognitionEntities', + 'ListRecognitionLibs', + 'DeleteRecognitionLib', + 'DeleteRecognitionEntity', + ], + ], + ], + ], + [ + 'id' => 178765, + 'title' => 'Intelligent production', + 'type' => 'directory', + 'children' => [ + 'SubmitIProductionJob', + 'QueryIProductionJob', + ], + ], + [ + 'id' => 178766, + 'title' => 'Media fingerprinting', + 'type' => 'directory', + 'children' => [ + 'CreateDNADB', + 'DeleteDNADB', + 'ListDNADB', + 'SubmitDNAJob', + 'CancelDNAJob', + 'DeleteDNAFiles', + 'ListDNAFiles', + 'QueryDNAJobList', + ], + ], + [ + 'id' => 199811, + 'title' => 'Digital watermarking ', + 'type' => 'directory', + 'children' => [ + 'SubmitCopyrightJob', + 'QueryCopyrightJobList', + 'SubmitCopyrightExtractJob', + 'QueryCopyrightExtractJob', + 'SubmitTraceAbJob', + 'QueryTraceAbJobList', + 'SubmitTraceM3u8Job', + 'QueryTraceM3u8JobList', + 'SubmitTraceExtractJob', + 'QueryTraceExtractJob', + ], + ], + ], + ], + [ + 'id' => 170153, + 'title' => 'Statistics', + 'type' => 'directory', + 'children' => [ + 'DescribeMeterImsMediaConvertUHDUsage', + 'DescribeMeterImsMediaConvertUsage', + 'DescribeMeterImsEditUsage', + 'DescribeMeterImsSummary', + 'DescribeMeterImsMpsAiUsage', + ], + ], + [ + 'id' => 137547, + 'title' => 'Global configuration', + 'type' => 'directory', + 'children' => [ + 'SetEventCallback', + 'GetEventCallback', + ], + ], + [ + 'id' => 178743, + 'title' => 'Workflow', + 'type' => 'directory', + 'children' => [ + 'StartWorkflow', + 'GetWorkflowTask', + 'ListWorkflowTasks', + 'StartAIWorkflow', + 'StopAIWorkflowTask', + 'GetAIWorkflowTask', + ], + ], + [ + 'id' => 201826, + 'title' => 'MediaService', + 'type' => 'directory', + 'children' => [ + [ + 'id' => 203088, + 'title' => 'MediaLive', + 'type' => 'directory', + 'children' => [ + 'CreateMediaLiveInputSecurityGroup', + 'UpdateMediaLiveInputSecurityGroup', + 'GetMediaLiveInputSecurityGroup', + 'ListMediaLiveInputSecurityGroups', + 'DeleteMediaLiveInputSecurityGroup', + 'CreateMediaLiveInput', + 'UpdateMediaLiveInput', + 'GetMediaLiveInput', + 'ListMediaLiveInputs', + 'DeleteMediaLiveInput', + 'CreateMediaLiveChannel', + 'UpdateMediaLiveChannel', + 'GetMediaLiveChannel', + 'ListMediaLiveChannels', + 'DeleteMediaLiveChannel', + 'StartMediaLiveChannel', + 'StopMediaLiveChannel', + ], + ], + [ + 'id' => 202565, + 'title' => 'MediaConvert', + 'type' => 'directory', + 'children' => [ + 'SubmitMediaConvertJob', + 'GetMediaConvertJob', + 'ListMediaConvertJobs', + ], + ], + [ + 'id' => 201965, + 'title' => 'MediaConnect', + 'type' => 'directory', + 'children' => [ + 'GetMediaConnectAvailableRegion', + 'ForbidMediaConnectFlowOutput', + 'ResumeMediaConnectFlowOutput', + 'GetMediaConnectFlowAllOutputName', + 'CloseMediaConnectFlowFailover', + 'OpenMediaConnectFlowFailover', + 'UpdateMediaConnectFlowOutput', + 'GetMediaConnectFlowOutput', + 'DeleteMediaConnectFlowOutput', + 'AddMediaConnectFlowOutput', + 'DeleteMediaConnectFlowInput', + 'UpdateMediaConnectFlowInput', + 'GetMediaConnectFlowInput', + 'AddMediaConnectFlowInput', + 'DeleteMediaConnectFlow', + 'UpdateMediaConnectFlowStatus', + 'GetMediaConnectFlow', + 'CreateMediaConnectFlow', + ], + ], + [ + 'id' => 201860, + 'title' => 'MediaWeaver', + 'type' => 'directory', + 'children' => [ + 'AddAdInsertion', + 'UpdateAdInsertion', + 'GetAdInsertion', + 'ListAdInsertions', + 'DeleteAdInsertion', + 'GetSourceLocation', + 'UpdateSourceLocation', + 'DeleteSourceLocation', + 'ListSourceLocations', + 'CreateSourceLocation', + 'UpdateProgram', + 'GetProgram', + 'DeleteChannel', + 'UpdateSource', + 'StartChannel', + 'DeleteProgram', + 'DeleteSource', + 'StopChannel', + 'ListChannels', + 'ListPrograms', + 'GetSource', + 'CreateChannel', + 'ListSchedules', + 'ListSources', + 'ListAlerts', + 'GetChannel', + 'CreateProgram', + 'ListChannelAlerts', + 'CreateSource', + 'UpdateChannel', + ], + ], + [ + 'id' => 201734, + 'title' => 'MediaPackage', + 'type' => 'directory', + 'children' => [ + [ + 'id' => 201892, + 'title' => 'VodPackage', + 'type' => 'directory', + 'children' => [ + 'CreateVodPackagingGroup', + 'GetVodPackagingGroup', + 'ListVodPackagingGroups', + 'DeleteVodPackagingGroup', + 'CreateVodPackagingConfiguration', + 'GetVodPackagingConfiguration', + 'ListVodPackagingConfigurations', + 'DeleteVodPackagingConfiguration', + 'CreateVodPackagingAsset', + 'BatchCreateVodPackagingAsset', + 'GetVodPackagingAsset', + 'ListVodPackagingAssets', + 'DeleteVodPackagingAsset', + ], + ], + [ + 'id' => 201735, + 'title' => 'LivePackage', + 'type' => 'directory', + 'children' => [ + 'CreateLivePackageChannelGroup', + 'UpdateLivePackageChannelGroup', + 'GetLivePackageChannelGroup', + 'ListLivePackageChannelGroups', + 'DeleteLivePackageChannelGroup', + 'CreateLivePackageChannel', + 'UpdateLivePackageChannel', + 'UpdateLivePackageChannelCredentials', + 'GetLivePackageChannel', + 'ListLivePackageChannels', + 'DeleteLivePackageChannel', + 'CreateLivePackageOriginEndpoint', + 'UpdateLivePackageOriginEndpoint', + 'GetLivePackageOriginEndpoint', + 'ListLivePackageOriginEndpoints', + 'DeleteLivePackageOriginEndpoint', + ], + ], + ], + ], + ], + ], + [ + 'id' => 187656, + 'title' => 'Other', + 'type' => 'directory', + 'children' => [ + [ + 'id' => 193096, + 'title' => 'Full Set Configuration-deprecated', + 'type' => 'directory', + 'children' => [ + 'SetContentAnalyzeConfig', + 'GetContentAnalyzeConfig', + 'SetDefaultStorageLocation', + 'GetDefaultStorageLocation', + ], + ], + 'DescribePlayList', + [ + 'id' => 137497, + 'title' => 'Material Center', + 'type' => 'directory', + 'children' => [ + 'AddFavoritePublicMedia', + 'CancelFavoritePublicMedia', + 'GetPublicMediaInfo', + 'SearchPublicMediaInfo', + ], + ], + 'GetStorageList', + 'SearchEditingProject', + 'SubmitDynamicChartJob', + 'StopRtcRobotInstance', + 'StartRtcRobotInstance', + 'UpdateRtcRobotInstance', + 'DescribeRtcRobotInstance', + 'SetNotifyConfig', + 'DescribeNotifyConfig', + 'CancelIProductionJob', + 'SubmitSceneMediaSelectionJob', + 'SubmitSceneBatchEditingJob', + 'SubmitSceneTimelineOrganizationJob', + ], + ], + ], + 'components' => [ + 'schemas' => [ + 'AIAgentConfig' => [ + 'description' => 'The template configuration of the AI agent.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'AppId' => [ + 'description' => '', + 'visibility' => 'Private', + 'type' => 'string', + 'example' => '*******aaab****', + 'backendName' => 'appId', + ], + 'Greeting' => [ + 'description' => 'The welcome message that the agent says upon joining. Changes take effect in the next session. Default value: None.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '', + 'backendName' => 'greeting', + ], + 'WakeUpQuery' => [ + 'description' => 'A command given to the agent before the call starts. The agent will respond to this query immediately after the call begins.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '', + 'backendName' => 'wakeUpQuery', + ], + 'MaxIdleTime' => [ + 'description' => 'The maximum time the agent will wait for interaction before it hangs up. Unit: seconds. Default value: 600.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '600', + 'backendName' => 'maxIdleTime', + ], + 'UserOnlineTimeout' => [ + 'description' => 'The timeout period for the agent to close the task if no user joins the channel. Unit: seconds. Default value: 60.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '60', + 'backendName' => 'userOnlineTimeout', + ], + 'UserOfflineTimeout' => [ + 'description' => 'The timeout period for the agent to close the task after the user has left the channel. Unit: seconds. Default value: 5.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '5', + 'backendName' => 'userOfflineTimeout', + ], + 'EnablePushToTalk' => [ + 'description' => 'Specifies whether to enable the push-to-talk mode. Default value: false.'."\n", + 'visibility' => 'Public', + 'type' => 'boolean', + 'example' => 'false', + 'backendName' => 'enablePushToTalk', + ], + 'GracefulShutdown' => [ + 'description' => 'Specifies whether to enable graceful shutdown. Default value: false.'."\n" + ."\n" + .'If enabled, when the agent is stopped, it will finish its current sentence before disconnecting (up to 10 seconds).'."\n", + 'visibility' => 'Public', + 'type' => 'boolean', + 'example' => 'false'."\n", + 'backendName' => 'gracefulShutdown', + ], + 'Volume' => [ + 'description' => 'The agent\'s speaking volume.'."\n" + ."\n" + .'* If this parameter is not specified, the adaptive volume mode is used by default.'."\n" + .'* To specify this parameter, enter a value between 0 and 400. Output volume = Workflow output volume × Volume/100. Example:'."\n" + ."\n" + .'1. If Volume is set to 0, the output is muted.'."\n" + .'2. If Volume is set to 100, the output volume is the original volume.'."\n" + .'3. If Volume is set to 200, the output volume is 2 times the original volume.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '100', + 'backendName' => 'volume', + ], + 'WorkflowOverrideParams' => [ + 'description' => 'The parameters to override the workflow configuration. Default value: None.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '{}', + 'backendName' => 'workflowOverrideParams', + ], + 'AvatarUrl' => [ + 'description' => 'The URL for the agent\'s profile image in audio-only calls. Default value: None.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'http://example.com/a.jpg'."\n", + 'backendName' => 'avatarUrl', + ], + 'AvatarUrlType' => [ + 'description' => 'The type of the avatar URL. Default value: None.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'USER', + 'backendName' => 'avatarUrlType', + ], + 'EnableIntelligentSegment' => [ + 'description' => 'If enabled, the system intelligently merges short, interim segments into a single sentence. Default value: true.'."\n", + 'visibility' => 'Public', + 'type' => 'boolean', + 'example' => 'true', + 'backendName' => 'enableIntelligentSegment', + ], + 'AsrConfig' => [ + 'description' => 'The configuration for Automatic Speech Recognition (ASR).'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'AsrMaxSilence' => [ + 'description' => 'The silence threshold for sentence segmentation. A pause longer than this value is considered a sentence break. Unit: milliseconds. Default value: 400. Valid values: 200 to 1200.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '400', + 'backendName' => 'asrMaxSilence', + ], + 'AsrLanguageId' => [ + 'description' => 'The language ID for ASR. Valid values:'."\n" + ."\n" + .'* zh_mandarin: Chinese'."\n" + .'* en: English'."\n" + .'* zh_en: Chinese and English'."\n" + .'* es: Spanish'."\n" + .'* jp: Japanese'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'zh_mandarin', + 'backendName' => 'asrLanguageId', + ], + 'CustomParams' => [ + 'description' => 'Passthrough parameters for ASR.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'mode=fast&sample=16000&format=wav', + 'backendName' => 'customParams', + ], + 'VadDuration' => [ + 'description' => 'The minimum duration for voice activity detection, in milliseconds. This parameter controls the sensitivity of interruptions, preventing the agent from cutting off user speech too early during short pauses. 0: Disables this feature. Valid values: 200 to 2000. Recommended: 200 to 500 ms, which typically corresponds to the length of 1 to 4 words. By default, this parameter is left empty, which indicates the feature is disabled.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '300', + 'backendName' => 'vadDuration', + ], + 'AsrHotWords' => [ + 'description' => 'Hotwords for ASR to improve recognition accuracy. Maximum of 128 hotwords.'."\n", + 'visibility' => 'Public', + 'type' => 'array', + 'items' => [ + 'description' => 'The hotword. Length: 1 to 10 characters.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '', + 'extendType' => 'true', + ], + 'backendName' => 'asrHotWords', + ], + 'VadLevel' => [ + 'description' => 'The voice activity detection (VAD) threshold for interruption. A higher value makes it harder to trigger interruptions. Valid values: 0 to 10. Default value: 1. The value of 0 specifies to disable the VAD feature.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + 'backendName' => 'vadLevel', + ], + ], + 'backendName' => 'asrConfig', + ], + 'TtsConfig' => [ + 'description' => 'The configuration for Text-to-Speech (TTS).'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'PronunciationRules' => [ + 'description' => 'The pronunciation rules, executed in order. Maximum of 20 rules.'."\n", + 'visibility' => 'Public', + 'type' => 'array', + 'items' => [ + 'description' => 'The pronunciation rule.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The type of rule. Valid value:'."\n" + ."\n" + .'* replacement: replaces every occurrence of Word value with Pronunciation value.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'replacement', + 'backendName' => 'type', + ], + 'Word' => [ + 'description' => 'The word to be replaced. The value supports up to 10 Chinese characters. Other characters, including spaces, are not supported.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '', + 'backendName' => 'word', + ], + 'Pronunciation' => [ + 'description' => 'The target pronunciation. The value supports up to 10 Chinese characters. Other characters, including spaces, are not supported.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '', + 'backendName' => 'pronunciation', + ], + ], + 'extendType' => 'true', + ], + 'backendName' => 'pronunciationRules', + ], + 'VoiceIdList' => [ + 'description' => 'Available voices.'."\n", + 'visibility' => 'Public', + 'type' => 'array', + 'items' => [ + 'description' => 'The voice.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'zhixiaoxia', + 'extendType' => 'true', + ], + 'backendName' => 'voiceIdList', + ], + 'VoiceId' => [ + 'description' => 'The voice ID. Changes take effect on the next sentence. If not set, the system uses the default voice ID specified in the agent template. This parameter takes effect only for the preset TTS model. Max length: 64 characters. Refer to [Intelligent voice samples](~~449563~~) for options.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'longcheng_v2'."\n" + ."\n", + 'backendName' => 'voiceId', + ], + 'Emotion' => [ + 'description' => 'Applies only to MiniMax models. Seven types of emotions are supported:'."\n" + ."\n" + .'* happy'."\n" + .'* sad'."\n" + .'* angry'."\n" + .'* fearful'."\n" + .'* disgusted'."\n" + .'* surprised'."\n" + .'* calm'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'happy', + 'backendName' => 'emotion', + ], + 'ModelId' => [ + 'description' => 'Applies only to MiniMax models. Valid values: speech-01-turbo and speech-02-turbo'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'speech-01-turbo', + 'backendName' => 'modelId', + ], + 'LanguageId' => [ + 'description' => 'Applies only to MiniMax models. By default, this parameter is left empty. This enhances speech recognition accuracy for specific languages and dialects. If the language type is unknown, set it to auto to have the model automatically detect it. Valid values:'."\n" + ."\n" + .'**Supported languages**'."\n" + ."\n" + .'* Chinese'."\n" + .'* Chinese,Yue'."\n" + .'* English'."\n" + .'* Arabic'."\n" + .'* Russian'."\n" + .'* Spanish'."\n" + .'* French'."\n" + .'* Portuguese'."\n" + .'* German'."\n" + .'* Turkish'."\n" + .'* Dutch'."\n" + .'* Ukrainian'."\n" + .'* Vietnamese'."\n" + .'* Indonesian'."\n" + .'* Japanese'."\n" + .'* Italian'."\n" + .'* Korean'."\n" + .'* Thai'."\n" + .'* Polish'."\n" + .'* Romanian'."\n" + .'* Greek'."\n" + .'* Czech'."\n" + .'* Finnish'."\n" + .'* Hindi'."\n" + .'* auto'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'Chinese', + 'backendName' => 'languageId', + ], + 'SpeechRate' => [ + 'description' => 'Supports all platforms. For CosyVoice, the default value is 1.0. Valid values: 0.5 to 2.0. For MiniMax, the default value is 1.0. Valid values: 0.5 to 2.0.'."\n", + 'visibility' => 'Public', + 'type' => 'number', + 'format' => 'double', + 'example' => '1.0', + 'backendName' => 'speechRate', + ], + ], + 'backendName' => 'ttsConfig', + ], + 'LlmConfig' => [ + 'description' => 'The configuration for the large language model (LLM).'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'FunctionMap' => [ + 'description' => 'Maps agent capabilities to LLM functions. Only supports function calling with custom LLMs that adhere to the OpenAI protocol.'."\n", + 'visibility' => 'Public', + 'type' => 'array', + 'items' => [ + 'description' => 'A single mapping rule.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'Function' => [ + 'description' => 'The name of the built-in agent capability. Only hangup is supported.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'hangup', + 'backendName' => 'function', + ], + 'MatchFunction' => [ + 'description' => 'The corresponding user-defined function name in your LLM. When the LLM calls this function, it will trigger the mapped agent capability.[](~~2839094~~)'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'hangup', + 'backendName' => 'matchFunction', + ], + ], + 'extendType' => 'true', + ], + 'backendName' => 'functionMap', + ], + 'LlmHistoryLimit' => [ + 'description' => 'The maximum number of conversational turns to retain in the history. Default value: 10.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + 'backendName' => 'llmHistoryLimit', + ], + 'LlmCompleteReply' => [ + 'description' => 'If true, the service sends the complete result from the LLM to the client in a single response after the generation process is finished.'."\n", + 'visibility' => 'Public', + 'type' => 'boolean', + 'example' => 'true', + 'backendName' => 'llmCompleteReply', + ], + 'LlmHistory' => [ + 'description' => 'The LLM/MLLM conversation history context.'."\n", + 'visibility' => 'Public', + 'type' => 'array', + 'items' => [ + 'description' => 'A single session.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'Role' => [ + 'description' => 'The role of the participant in the conversation. Valid values:'."\n" + ."\n" + .'* user'."\n" + .'* assistant'."\n" + .'* system'."\n" + .'* function'."\n" + .'* plugin'."\n" + .'* tool'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'user', + 'backendName' => 'role', + ], + 'Content' => [ + 'description' => 'The actual text content of the message for that role.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '', + 'backendName' => 'content', + ], + ], + 'extendType' => 'true', + ], + 'backendName' => 'llmHistory', + ], + 'LlmSystemPrompt' => [ + 'description' => 'The system prompt for the LLM.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '', + 'backendName' => 'llmSystemPrompt', + ], + 'OpenAIExtraQuery' => [ + 'description' => 'Additional query parameters to be sent to the OpenAI-protocol LLM, formatted as a URL query string (key=value pairs separated by &). All values must be strings.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'api-version=2024-02-01&api-key=sk-xxx', + 'backendName' => 'openAIExtraQuery', + ], + 'OutputMaxDelay' => [ + 'description' => 'The maximum time (in milliseconds) to buffer text before it is forcibly sent to the client. Valid values: \\[1000,10000]. A value of 0 or an empty string (default) disables this limit.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '2000', + 'backendName' => 'outputMaxDelay', + ], + 'BailianAppParams' => [ + 'description' => 'Alibaba Cloud Model Studio Application Center parameters in a JSON format. Reference: [Model Studio Application Center Parameter](~~2858132~~)'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '', + 'backendName' => 'bailianAppParams', + ], + 'OutputMinLength' => [ + 'description' => 'The minimum number of characters that must be buffered before a text chunk is sent. Valid values: \\[0, 100]. A value of 0 or an empty string (default) disables this limit.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '5', + 'backendName' => 'outputMinLength', + ], + ], + 'backendName' => 'llmConfig', + ], + 'AvatarConfig' => [ + 'description' => 'The avatar configuration. Only effective if the workflow includes an avatar node.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'AvatarId' => [ + 'description' => 'The model ID of the avatar.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '5257', + 'backendName' => 'avatarId', + ], + ], + 'backendName' => 'avatarConfig', + ], + 'InterruptConfig' => [ + 'description' => 'The configuration for the speech interruption strategy.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'InterruptWords' => [ + 'description' => 'Words or phrases that will trigger an interruption.'."\n", + 'visibility' => 'Public', + 'type' => 'array', + 'items' => [ + 'description' => 'A word or phrase that will trigger an interruption.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '', + 'extendType' => 'true', + ], + 'backendName' => 'interruptWords', + ], + 'EnableVoiceInterrupt' => [ + 'description' => 'Specifies whether to allow the user to interrupt the agent by speaking. Default value: true.'."\n", + 'visibility' => 'Public', + 'type' => 'boolean', + 'example' => 'true', + 'backendName' => 'enableVoiceInterrupt', + ], + ], + 'backendName' => 'interruptConfig', + ], + 'VoiceprintConfig' => [ + 'description' => 'The configuration for voiceprint recognition.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'VoiceprintId' => [ + 'description' => 'The unique ID of the voiceprint. Default value: None.[](~~2964738~~)'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'zhixiaoxia', + 'backendName' => 'voiceprintId', + ], + 'UseVoiceprint' => [ + 'description' => 'Specifies whether to enable voiceprint recognition. Default value: false. You must specify a valid voiceprint ID when you enable voiceprint recognition.'."\n", + 'visibility' => 'Public', + 'type' => 'boolean', + 'example' => 'false', + 'backendName' => 'useVoiceprint', + ], + ], + 'backendName' => 'voiceprintConfig', + ], + 'TurnDetectionConfig' => [ + 'description' => 'The configuration for detecting the end of a user\'s conversational turn.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'SemanticWaitDuration' => [ + 'description' => 'Specifies how long to wait after a user stops speaking for the agent to decide if the turn is over. Unit: milliseconds. Default value: -1.'."\n" + ."\n" + .'* \\-1: AI decides an appropriate wait time automatically.'."\n" + .'* 0 to 10000: A custom wait time. Recommended: 0 to 1500 ms.'."\n" + ."\n" + .'> In Normal mode, this field is ignored.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '-1', + 'backendName' => 'semanticWaitDuration', + ], + 'TurnEndWords' => [ + 'description' => 'Keywords that signify the end of the user\'s turn.'."\n", + 'visibility' => 'Public', + 'type' => 'array', + 'items' => [ + 'description' => 'A keyword that signifies the end of the user\'s turn.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '', + 'extendType' => 'true', + ], + 'backendName' => 'turnEndWords', + ], + 'Mode' => [ + 'description' => 'The mode of turn detection.'."\n" + ."\n" + .'* Normal: uses simple pause detection.'."\n" + .'* Semantic: uses AI to analyze context.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'Semantic', + 'backendName' => 'mode', + ], + ], + 'backendName' => 'turnDetectionConfig', + ], + 'ExperimentalConfig' => [ + 'description' => 'The parameters for experimental features. Contact support for details.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '""', + 'backendName' => 'experimentalConfig', + ], + 'VcrConfig' => [ + 'description' => 'Configuration for video content recognition. When enabled, the system sends callbacks to the client with details about content identified.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'PeopleCount' => [ + 'description' => 'Configuration for the people counting feature.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'Enabled' => [ + 'description' => 'Enables or disables the feature. Default value: false.'."\n", + 'visibility' => 'Public', + 'type' => 'boolean', + 'example' => 'false', + 'backendName' => 'enabled', + ], + ], + 'backendName' => 'peopleCount', + ], + 'StillFrameMotion' => [ + 'description' => 'Configuration for detecting still frames.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'Enabled' => [ + 'description' => 'Enables or disables still frame detection. Default value: false.'."\n", + 'visibility' => 'Public', + 'type' => 'boolean', + 'example' => 'false', + 'backendName' => 'enabled', + ], + 'CallbackDelay' => [ + 'description' => 'The delay in milliseconds before a still frame detection event is triggered. The callback is sent only after the video has been static for this duration. If not set, the value from the console configuration is used. Valid values: \\[200,5000].'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '3000', + 'backendName' => 'callbackDelay', + ], + ], + 'backendName' => 'stillFrameMotion', + ], + 'Equipment' => [ + 'description' => 'Configuration for device identification.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'Enabled' => [ + 'description' => 'Enables or disables device identification. Default value: false.'."\n", + 'visibility' => 'Public', + 'type' => 'boolean', + 'example' => 'false', + 'backendName' => 'enabled', + ], + ], + 'backendName' => 'equipment', + ], + 'HeadMotion' => [ + 'description' => 'Configuration for head motion detection.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'Enabled' => [ + 'description' => 'Enables or disables head motion detection. Default value: false.'."\n", + 'visibility' => 'Public', + 'type' => 'boolean', + 'example' => 'false', + 'backendName' => 'enabled', + ], + ], + 'backendName' => 'headMotion', + ], + 'LookAway' => [ + 'description' => 'Configuration for detecting if the user is looking away from the screen.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'Enabled' => [ + 'description' => 'Enables or disables this feature. Default value: false.'."\n", + 'visibility' => 'Public', + 'type' => 'boolean', + 'example' => 'true', + 'backendName' => 'enabled', + ], + ], + 'backendName' => 'lookAway', + ], + 'InvalidFrameMotion' => [ + 'description' => 'Configuration for detecting invalid frames.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'Enabled' => [ + 'description' => 'Enables or disables invalid frame detection.'."\n", + 'visibility' => 'Public', + 'type' => 'boolean', + 'example' => 'false', + 'backendName' => 'enabled', + ], + 'CallbackDelay' => [ + 'description' => 'The delay in milliseconds before an invalid frame detection event is triggered. The callback is sent only after the frame has been considered invalid for this duration. If not set, the value from the console configuration is used. Valid values: \\[200, 5000].'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '3000', + 'backendName' => 'callbackDelay', + ], + ], + 'backendName' => 'invalidFrameMotion', + ], + ], + 'backendName' => 'vcrConfig', + ], + 'OutboundCallConfig' => [ + 'visibility' => 'Private', + 'type' => 'object', + 'properties' => [ + 'SipDomain' => [ + 'visibility' => 'Public', + 'type' => 'string', + 'backendName' => 'sipDomain', + ], + 'Type' => [ + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'backendName' => 'type', + ], + ], + 'backendName' => 'outboundCallConfig', + ], + 'InboundCallConfig' => [ + 'visibility' => 'Private', + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'backendName' => 'type', + ], + 'AuthUrl' => [ + 'visibility' => 'Public', + 'type' => 'string', + 'backendName' => 'authUrl', + ], + 'AuthToken' => [ + 'visibility' => 'Public', + 'type' => 'string', + 'backendName' => 'authToken', + ], + ], + 'backendName' => 'inboundCallConfig', + ], + 'AmbientSoundConfig' => [ + 'description' => 'Configuration for the ambient sound played during the call.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'ResourceId' => [ + 'description' => 'The ID of the ambient sound. This ID can be obtained from the advanced settings section of the agent configuration in the console.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'f67901c595834************', + 'backendName' => 'resourceId', + ], + 'Volume' => [ + 'description' => 'The volume of the ambient sound. Valid values: \\[0, 100]. A value of 0 disables the ambient sound.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '50', + 'backendName' => 'volume', + ], + ], + 'backendName' => 'ambientSoundConfig', + ], + ], + ], + 'AIAgentOutboundCallConfig' => [ + 'description' => 'The template configuration of the AI agent.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'Greeting' => [ + 'description' => 'The welcome message that the agent says upon joining. Changes take effect in the next session. Default value: None.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '', + 'backendName' => 'greeting', + ], + 'EnableIntelligentSegment' => [ + 'description' => 'If enabled, the system intelligently merges short, interim segments into a single sentence. Default value: true.'."\n", + 'visibility' => 'Public', + 'type' => 'boolean', + 'example' => 'true', + 'backendName' => 'enableIntelligentSegment', + ], + 'AsrConfig' => [ + 'description' => 'The configuration for Automatic Speech Recognition (ASR).'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'AsrMaxSilence' => [ + 'description' => 'The silence threshold for sentence segmentation. A pause longer than this value is considered a sentence break. Unit: milliseconds. Default value: 400. Valid values: 200 to 1200.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '400', + 'backendName' => 'asrMaxSilence', + ], + 'AsrLanguageId' => [ + 'description' => 'The language ID for ASR. Valid values:'."\n" + ."\n" + .'* zh_mandarin: Chinese'."\n" + .'* en: English'."\n" + .'* zh_en: Chinese and English'."\n" + .'* es: Spanish'."\n" + .'* jp: Japanese'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'zh_mandarin', + 'backendName' => 'asrLanguageId', + ], + 'CustomParams' => [ + 'description' => 'Passthrough parameters for ASR.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'mode=fast&sample=16000&format=wav'."\n", + 'backendName' => 'customParams', + ], + 'VadDuration' => [ + 'description' => 'The minimum duration for voice activity detection, in milliseconds. This parameter controls the sensitivity of interruptions, preventing the agent from cutting off user speech too early during short pauses. 0: Disables this feature. Valid values: 200 to 2000. Recommended: 200 to 500 ms, which typically corresponds to the length of 1 to 4 words. By default, this parameter is left empty, which indicates the feature is disabled.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '300', + 'backendName' => 'vadDuration', + ], + 'AsrHotWords' => [ + 'description' => 'Hotwords for ASR to improve recognition accuracy. Maximum of 128 hotwords.'."\n", + 'visibility' => 'Public', + 'type' => 'array', + 'items' => [ + 'description' => 'The hotword. Length: 1 to 10 characters.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '', + 'extendType' => 'true', + ], + 'backendName' => 'asrHotWords', + ], + 'VadLevel' => [ + 'description' => 'The VAD threshold for interruption. A higher value makes it harder to trigger interruptions. Valid values: 0 to 10. Default value: 1. The value of 0 specifies to disable the VAD feature.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + 'backendName' => 'vadLevel', + ], + ], + 'backendName' => 'asrConfig', + ], + 'LlmConfig' => [ + 'description' => 'The configuration for the large language model (LLM).'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'FunctionMap' => [ + 'description' => 'Maps agent capabilities to LLM functions. Only supports function calling with custom LLMs that adhere to the OpenAI protocol.'."\n", + 'visibility' => 'Public', + 'type' => 'array', + 'items' => [ + 'description' => 'A single mapping rule.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'Function' => [ + 'description' => 'The name of the built-in agent capability. Only hangup is supported.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'hangup', + 'backendName' => 'function', + ], + 'MatchFunction' => [ + 'description' => 'The corresponding user-defined function name in your LLM. When the LLM calls this function, it will trigger the mapped agent capability.[](~~2839094~~)'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'hangup', + 'backendName' => 'matchFunction', + ], + ], + 'extendType' => 'true', + ], + 'backendName' => 'functionMap', + ], + 'LlmHistoryLimit' => [ + 'description' => 'The maximum number of conversational turns to retain in the history. Default value: 10.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + 'backendName' => 'llmHistoryLimit', + ], + 'LlmCompleteReply' => [ + 'description' => 'If true, the service sends the complete result from the LLM to the client in a single response after the generation process is finished.'."\n", + 'visibility' => 'Public', + 'type' => 'boolean', + 'example' => 'true', + 'backendName' => 'llmCompleteReply', + ], + 'LlmHistory' => [ + 'description' => 'The LLM/MLLM conversation history context.'."\n", + 'visibility' => 'Public', + 'type' => 'array', + 'items' => [ + 'description' => 'A single session.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'Role' => [ + 'description' => 'The role of the participant in the conversation. Valid values:'."\n" + ."\n" + .'* user'."\n" + .'* assistant'."\n" + .'* system'."\n" + .'* function'."\n" + .'* plugin'."\n" + .'* tool'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'user', + 'backendName' => 'role', + ], + 'Content' => [ + 'description' => 'The actual text content of the message for that role.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '', + 'backendName' => 'content', + ], + ], + 'extendType' => 'true', + ], + 'backendName' => 'llmHistory', + ], + 'LlmSystemPrompt' => [ + 'description' => 'The system prompt for the LLM.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '', + 'backendName' => 'llmSystemPrompt', + ], + 'OpenAIExtraQuery' => [ + 'description' => 'Additional query parameters to be sent to the OpenAI-protocol LLM, formatted as a URL query string (key=value pairs separated by &). All values must be strings.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'api-version=2024-02-01&api-key=sk-xxx', + 'backendName' => 'openAIExtraQuery', + ], + 'OutputMaxDelay' => [ + 'description' => 'The maximum time (in milliseconds) to buffer text before it is forcibly sent to the client. Valid values: \\[1000,10000]. A value of 0 or an empty string (default) disables this limit.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '2000', + 'backendName' => 'outputMaxDelay', + ], + 'BailianAppParams' => [ + 'description' => 'Alibaba Cloud Model Studio Application Center parameters. Reference: [Model Studio Application Center Parameter](~~2858132~~)'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '', + 'backendName' => 'bailianAppParams', + ], + 'OutputMinLength' => [ + 'description' => 'The minimum number of characters that must be buffered before a text chunk is sent. Valid values: \\[0, 100]. A value of 0 or an empty string (default) disables this limit.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '5', + 'backendName' => 'outputMinLength', + ], + ], + 'backendName' => 'llmConfig', + ], + 'TtsConfig' => [ + 'description' => 'The configuration for Text-to-Speech (TTS).'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'PronunciationRules' => [ + 'description' => 'The pronunciation rules, executed in order. Maximum of 20 rules.'."\n", + 'visibility' => 'Public', + 'type' => 'array', + 'items' => [ + 'description' => 'The pronunciation rule.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The type of rule. Valid value:'."\n" + ."\n" + .'* replacement: replaces every occurrence of Word value with Pronunciation value.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'replacement'."\n", + 'backendName' => 'type', + ], + 'Word' => [ + 'description' => 'The word to be replaced. The value supports up to 10 Chinese characters. Other characters, including spaces, are not supported.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '', + 'backendName' => 'word', + ], + 'Pronunciation' => [ + 'description' => 'The target pronunciation. The value supports up to 10 Chinese characters. Other characters, including spaces, are not supported.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '', + 'backendName' => 'pronunciation', + ], + ], + 'extendType' => 'true', + ], + 'backendName' => 'pronunciationRules', + ], + 'VoiceIdList' => [ + 'description' => 'Available voices.'."\n", + 'visibility' => 'Public', + 'type' => 'array', + 'items' => [ + 'description' => 'The voice.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'zhixiaoxia', + 'extendType' => 'true', + ], + 'backendName' => 'voiceIdList', + ], + 'VoiceId' => [ + 'description' => 'The voice ID. Changes take effect on the next sentence. If not set, the system uses the default voice ID specified in the agent template. This parameter takes effect only for the preset TTS model. Max length: 64 characters. Refer to [Intelligent voice samples](~~449563~~) for options.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'longcheng_v2', + 'backendName' => 'voiceId', + ], + 'Emotion' => [ + 'description' => 'Applies only to MiniMax models. Seven types of emotions are supported:'."\n" + ."\n" + .'* happy'."\n" + .'* sad'."\n" + .'* angry'."\n" + .'* fearful'."\n" + .'* disgusted'."\n" + .'* surprised'."\n" + .'* calm'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'happy', + 'backendName' => 'emotion', + ], + 'ModelId' => [ + 'description' => 'Applies only to MiniMax models. Valid values: speech-01-turbo and speech-02-turbo.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'speech-01-turbo', + 'backendName' => 'modelId', + ], + 'LanguageId' => [ + 'description' => 'Applies only to MiniMax models. By default, this parameter is left empty. This enhances speech recognition accuracy for specific languages and dialects. If the language type is unknown, set it to auto to have the model automatically detect it. Valid values:'."\n" + ."\n" + .'**Supported languages**'."\n" + ."\n" + .'* Chinese'."\n" + .'* Chinese,Yue'."\n" + .'* English'."\n" + .'* Arabic'."\n" + .'* Russian'."\n" + .'* Spanish'."\n" + .'* French'."\n" + .'* Portuguese'."\n" + .'* German'."\n" + .'* Turkish'."\n" + .'* Dutch'."\n" + .'* Ukrainian'."\n" + .'* Vietnamese'."\n" + .'* Indonesian'."\n" + .'* Japanese'."\n" + .'* Italian'."\n" + .'* Korean'."\n" + .'* Thai'."\n" + .'* Polish'."\n" + .'* Romanian'."\n" + .'* Greek'."\n" + .'* Czech'."\n" + .'* Finnish'."\n" + .'* Hindi'."\n" + .'* auto'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'Chinese', + 'backendName' => 'languageId', + ], + 'SpeechRate' => [ + 'description' => 'Supports all models. For CosyVoice, the default value is 1.0. Valid values: 0.5 to 2.0. For MiniMax, the default value is 1.0. Valid values: 0.5 to 2.0.'."\n", + 'visibility' => 'Public', + 'type' => 'number', + 'format' => 'double', + 'example' => '1.0', + 'backendName' => 'speechRate', + ], + ], + 'backendName' => 'ttsConfig', + ], + 'InterruptConfig' => [ + 'description' => 'The configuration for the speech interruption strategy.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'InterruptWords' => [ + 'description' => 'Words or phrases that will trigger an interruption.'."\n", + 'visibility' => 'Public', + 'type' => 'array', + 'items' => [ + 'description' => 'A word or phrase that will trigger an interruption.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '', + 'extendType' => 'true', + ], + 'backendName' => 'interruptWords', + ], + 'EnableVoiceInterrupt' => [ + 'description' => 'Specifies whether to allow the user to interrupt the agent by speaking. Default value: true.'."\n", + 'visibility' => 'Public', + 'type' => 'boolean', + 'example' => 'true', + 'backendName' => 'enableVoiceInterrupt', + ], + ], + 'backendName' => 'interruptConfig', + ], + 'TurnDetectionConfig' => [ + 'description' => 'The configuration for detecting the end of a user\'s conversational turn.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'SemanticWaitDuration' => [ + 'description' => 'Specifies how long to wait after a user stops speaking for the agent to decide if the turn is over. Unit: milliseconds. Default value: -1.'."\n" + ."\n" + .'* \\-1: AI decides an appropriate wait time automatically.'."\n" + .'* 0 to 10000: A custom wait time. Recommended: 0 to 1500 ms.'."\n" + ."\n" + .'Note: In Normal mode, this field is ignored.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '-1', + 'backendName' => 'semanticWaitDuration', + ], + 'TurnEndWords' => [ + 'description' => 'Keywords that signify the end of the user\'s turn.'."\n", + 'visibility' => 'Public', + 'type' => 'array', + 'items' => [ + 'description' => 'A keyword that signifies the end of the user\'s turn.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '', + 'extendType' => 'true', + ], + 'backendName' => 'turnEndWords', + ], + 'Mode' => [ + 'description' => 'The mode of turn detection.'."\n" + ."\n" + .'* Normal: uses simple pause detection.'."\n" + .'* Semantic: uses AI to analyze context.'."\n" + ."\n" + .'Default value: Normal.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'Semantic', + 'backendName' => 'mode', + ], + ], + 'backendName' => 'turnDetectionConfig', + ], + 'GreetingDelay' => [ + 'description' => 'The delay before playing the welcome message. Unit: milliseconds. Valid values: 0 to 5000. Default value: 0.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + 'backendName' => 'greetingDelay', + ], + 'AmbientSoundConfig' => [ + 'description' => 'Configuration for the ambient sound played during the call.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'ResourceId' => [ + 'description' => 'The ID of the ambient sound. This ID can be obtained from the advanced settings section of the agent configuration in the console.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'f67901c595834************'."\n", + 'backendName' => 'resourceId', + ], + 'Volume' => [ + 'description' => 'The volume of the ambient sound. Valid values: \\[0, 100]. A value of 0 disables the ambient sound.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '50'."\n", + 'backendName' => 'volume', + ], + ], + 'backendName' => 'ambientSoundConfig', + ], + ], + ], + 'AIAgentRuntimeConfig' => [ + 'title' => 'A short description of struct', + 'description' => 'The runtime configuration of the AI agent.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'VoiceChat' => [ + 'title' => '', + 'description' => 'The runtime parameters of the voice call.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'AuthToken' => [ + 'title' => '', + 'description' => 'Required. The authentication token for the agent to join the channel. This must be generated using your AppKey.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'eyJhcHBpZCI6ICIxMjM0MTIzNxxxxx', + 'backendName' => 'authToken', + ], + 'AgentUserId' => [ + 'title' => '', + 'description' => 'Required. The name of the agent in the ARTC channel.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '877ae632caae49b1afc81c2e8194ffb4', + 'backendName' => 'agentUserId', + ], + 'ChannelId' => [ + 'title' => '', + 'description' => 'Required. The ID of the ARTC channel.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '70f22d5784194938a7e387052f2b3208', + 'backendName' => 'channelId', + ], + ], + 'deprecated' => true, + 'backendName' => 'voiceChat', + ], + 'AuthToken' => [ + 'description' => 'The authentication token for the agent to join the channel. This must be generated using your AppKey.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'eyJhcHBpZCI6ICIxMjM0MTIzNxxxxx', + 'backendName' => 'authToken', + ], + 'AgentUserId' => [ + 'description' => 'The name of the agent in the ARTC channel.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '877ae632caae49b1afc81c2e8194ffb4', + 'backendName' => 'agentUserId', + ], + 'VisionChat' => [ + 'description' => 'The runtime parameters of the vision call.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'AuthToken' => [ + 'description' => 'Required. The authentication token for the agent to join the channel. This must be generated using your AppKey.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'eyJhcHBpZCI6ICIxMjM0MTIzNxxxxx', + 'backendName' => 'authToken', + ], + 'AgentUserId' => [ + 'description' => 'Required. The name of the agent in the ARTC channel.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '877ae632caae49b1afc81c2e8194ffb4', + 'backendName' => 'agentUserId', + ], + 'ChannelId' => [ + 'description' => 'Required. The ID of the ARTC channel.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '70f22d5784194938a7e387052f2b3208', + 'backendName' => 'channelId', + ], + ], + 'deprecated' => true, + 'backendName' => 'visionChat', + ], + 'ChannelId' => [ + 'description' => 'The ID of the ARTC channel.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '70f22d5784194938a7e387052f2b3208'."\n", + 'backendName' => 'channelId', + ], + 'AvatarChat3D' => [ + 'title' => '', + 'description' => 'The runtime parameters of the avatar call.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'AuthToken' => [ + 'title' => '', + 'description' => 'Required. The authentication token for the agent to join the channel. This must be generated using your AppKey.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'eyJhcHBpZCI6ICIxMjM0MTIzNxxxxx', + 'backendName' => 'authToken', + ], + 'AgentUserId' => [ + 'title' => '', + 'description' => 'Required. The name of the agent in the ARTC channel.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '877ae632caae49b1afc81c2e8194ffb4', + 'backendName' => 'agentUserId', + ], + 'ChannelId' => [ + 'title' => '', + 'description' => 'Required. The ID of the ARTC channel.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '70f22d5784194938a7e387052f2b3208', + 'backendName' => 'channelId', + ], + ], + 'deprecated' => true, + 'backendName' => 'avatarChat3D', + ], + ], + ], + 'AIAgentTemplateConfig' => [ + 'title' => 'A short description of struct', + 'description' => 'The template parameters of the intelligent agent.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'VoiceChat' => [ + 'title' => '', + 'description' => 'The voice call parameters.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'Greeting' => [ + 'title' => '', + 'description' => 'The greetings spoken by the intelligent agent when it joins the meeting. If you do not specify this parameter, the system uses the default greetings specified in the template of the intelligent agent. The value can be up to 128 characters in length.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '', + 'backendName' => 'greeting', + ], + 'LlmHistory' => [ + 'description' => '', + 'visibility' => 'Public', + 'type' => 'array', + 'items' => [ + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'Role' => [ + 'description' => '', + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'user', + 'backendName' => 'role', + ], + 'Content' => [ + 'description' => '', + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '', + 'backendName' => 'content', + ], + ], + 'extendType' => 'true', + ], + 'backendName' => 'llmHistory', + ], + 'UserOnlineTimeout' => [ + 'description' => 'The timeout period before the user joins the meeting. Unit: seconds. Default value: 60.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '60', + 'backendName' => 'userOnlineTimeout', + ], + 'UserOfflineTimeout' => [ + 'description' => 'The timeout period after the user leaves the meeting. Unit: seconds. Default value: 5.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '5', + 'backendName' => 'userOfflineTimeout', + ], + 'WorkflowOverrideParams' => [ + 'description' => '', + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '{}', + 'backendName' => 'workflowOverrideParams', + ], + 'EnableIntelligentSegment' => [ + 'description' => '', + 'visibility' => 'Private', + 'type' => 'boolean', + 'example' => 'true', + 'backendName' => 'enableIntelligentSegment', + ], + 'AvatarUrlType' => [ + 'description' => '', + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'USER', + 'backendName' => 'avatarUrlType', + ], + 'BailianAppParams' => [ + 'description' => 'The parameters of the application center of Alibaba Cloud Model Studio. For more information about the parameter format, see [Parameters of the application center of Alibaba Cloud Model Studio](~~2858132~~).'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '{}', + 'backendName' => 'bailianAppParams', + ], + 'LlmHistoryLimit' => [ + 'description' => '', + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + 'backendName' => 'llmHistoryLimit', + ], + 'AsrMaxSilence' => [ + 'description' => 'The threshold used to determine the end of a sentence. If the duration of silence exceeds this threshold, the system determines that a sentence ends. Unit: milliseconds. Default value: 400. Valid values: 200 to 1200.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '400', + 'backendName' => 'asrMaxSilence', + ], + 'AvatarUrl' => [ + 'description' => '', + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'http://example.com/a.jpg', + 'backendName' => 'avatarUrl', + ], + 'WakeUpQuery' => [ + 'description' => '', + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '', + 'backendName' => 'wakeUpQuery', + ], + 'AppId' => [ + 'title' => '', + 'description' => '', + 'visibility' => 'Private', + 'type' => 'string', + 'backendName' => 'appId', + ], + 'Volume' => [ + 'title' => '', + 'description' => 'The speech volume of the intelligent agent.'."\n" + ."\n" + .'* If this parameter is not specified, the adaptive volume mode recommended by Alibaba Cloud is used by default.'."\n" + .'* To specify this parameter, enter a value between 0 and 400. The output volume is calculated by using the following formula: Output volume = Voice output volume specified in the workflow × Volume/100. Example:'."\n" + ."\n" + .'1. If Volume is set to 0, the output volume is 0.'."\n" + .'2. If Volume is set to 100, the output volume is the voice output volume specified in the workflow.'."\n" + .'3. If Volume is set to 200, the output volume is twice the voice output volume specified in the workflow.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '100', + 'backendName' => 'volume', + ], + 'EnableVoiceInterrupt' => [ + 'title' => '', + 'description' => 'Specifies whether the intelligent agent can be interrupted by voice. Default value: true.'."\n", + 'visibility' => 'Public', + 'type' => 'boolean', + 'example' => 'true', + 'backendName' => 'enableVoiceInterrupt', + ], + 'VoiceprintId' => [ + 'description' => 'The unique ID of the voiceprint. This parameter is empty by default.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'uniqueId', + 'backendName' => 'voiceprintId', + ], + 'VoiceId' => [ + 'title' => '', + 'description' => 'The voice ID of the intelligent agent. The modification takes effect in the next sentence. If you do not specify this parameter, the system uses the default voice ID specified in the template of the intelligent agent. This parameter takes effect only for the preset TTS model. The ID can be up to 64 characters in length. For more information about the available voices, visit [https://help.aliyun.com/zh/ims/developer-reference/smart-voice-effect-example](url).'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'zhixiaoxia', + 'backendName' => 'voiceId', + ], + 'UseVoiceprint' => [ + 'description' => 'Specifies whether to enable voiceprint recognition. Default value: false.'."\n", + 'visibility' => 'Public', + 'type' => 'boolean', + 'example' => 'false', + 'backendName' => 'useVoiceprint', + ], + 'MaxIdleTime' => [ + 'description' => '', + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '600', + 'backendName' => 'maxIdleTime', + ], + 'GracefulShutdown' => [ + 'title' => '', + 'description' => 'Specifies whether the intelligent agent supports graceful shutdown. Default value: false.'."\n" + ."\n" + .'* Graceful shutdown: When the intelligent agent is stopped, it completes its current sentence before stopping. However, the intelligent agent can speak for 10 seconds at most.'."\n", + 'visibility' => 'Public', + 'type' => 'boolean', + 'example' => 'true', + 'backendName' => 'gracefulShutdown', + ], + 'EnablePushToTalk' => [ + 'description' => 'Specifies whether to enable the intercom mode. Default value: false.'."\n", + 'visibility' => 'Public', + 'type' => 'boolean', + 'example' => 'false', + 'backendName' => 'enablePushToTalk', + ], + ], + 'backendName' => 'voiceChat', + ], + 'MessageChat' => [ + 'title' => '', + 'description' => '', + 'visibility' => 'Private', + 'type' => 'object', + 'properties' => [ + 'AppId' => [ + 'title' => '', + 'description' => '', + 'visibility' => 'Public', + 'type' => 'string', + 'backendName' => 'appId', + ], + ], + 'backendName' => 'messageChat', + ], + 'VisionChat' => [ + 'description' => 'The parameters of the visual intelligent agent.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'Greeting' => [ + 'description' => 'The greetings spoken by the intelligent agent when it joins the meeting. If you do not specify this parameter, the system uses the default greetings specified in the template of the intelligent agent. The value can be up to 128 characters in length.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'Good morning, my friend!'."\n", + 'backendName' => 'greeting', + ], + 'LlmHistory' => [ + 'description' => '', + 'visibility' => 'Public', + 'type' => 'array', + 'items' => [ + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'Role' => [ + 'description' => '', + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'user', + 'backendName' => 'role', + ], + 'Content' => [ + 'description' => '', + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '', + 'backendName' => 'content', + ], + ], + 'extendType' => 'true', + ], + 'backendName' => 'llmHistory', + ], + 'UserOnlineTimeout' => [ + 'description' => 'The timeout period before the user joins the meeting. Unit: seconds. Default value: 60.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '60', + 'backendName' => 'userOnlineTimeout', + ], + 'UserOfflineTimeout' => [ + 'description' => 'The timeout period after the user leaves the meeting. Unit: seconds. Default value: 5.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '5', + 'backendName' => 'userOfflineTimeout', + ], + 'WorkflowOverrideParams' => [ + 'description' => '', + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '{}', + 'backendName' => 'workflowOverrideParams', + ], + 'EnableIntelligentSegment' => [ + 'description' => 'Specifies whether to enable intelligent sentence segmentation. This feature intelligently combines the segments of a speech into a single sentence if brief pauses occur when users are speaking. Default value: true.'."\n", + 'visibility' => 'Public', + 'type' => 'boolean', + 'example' => 'true', + 'backendName' => 'enableIntelligentSegment', + ], + 'BailianAppParams' => [ + 'description' => 'The parameters of the application center of Alibaba Cloud Model Studio. For more information about the parameter format, see [Parameters of the application center of Alibaba Cloud Model Studio](~~2858132~~).'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '{}', + 'backendName' => 'bailianAppParams', + ], + 'LlmHistoryLimit' => [ + 'description' => '', + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + 'backendName' => 'llmHistoryLimit', + ], + 'AsrMaxSilence' => [ + 'description' => 'The threshold used to determine the end of a sentence. If the duration of silence exceeds this threshold, the system determines that a sentence ends. Unit: milliseconds. Default value: 400. Valid values: 200 to 1200.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '400', + 'backendName' => 'asrMaxSilence', + ], + 'WakeUpQuery' => [ + 'description' => '', + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '', + 'backendName' => 'wakeUpQuery', + ], + 'AppId' => [ + 'description' => '', + 'visibility' => 'Private', + 'type' => 'string', + 'backendName' => 'appId', + ], + 'Volume' => [ + 'description' => 'The speech volume of the intelligent agent.'."\n" + ."\n" + .'If this parameter is not specified, the adaptive volume mode recommended by Alibaba Cloud is used by default.'."\n" + ."\n" + .'To specify this parameter, enter a value between 0 and 400. The output volume is calculated by using the following formula: Output volume = Voice output volume specified in the workflow × Volume/100. Example:'."\n" + ."\n" + .'If Volume is set to 0, the output volume is 0.'."\n" + ."\n" + .'If Volume is set to 100, the output volume is the voice output volume specified in the workflow.'."\n" + ."\n" + .'If Volume is set to 200, the output volume is twice the voice output volume specified in the workflow.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '100', + 'backendName' => 'volume', + ], + 'EnableVoiceInterrupt' => [ + 'description' => 'Specifies whether the intelligent agent can be interrupted by voice. Default value: true.'."\n", + 'visibility' => 'Public', + 'type' => 'boolean', + 'example' => 'true', + 'backendName' => 'enableVoiceInterrupt', + ], + 'VoiceprintId' => [ + 'description' => 'The unique ID of the voiceprint. This parameter is empty by default.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'uniqueId', + 'backendName' => 'voiceprintId', + ], + 'VoiceId' => [ + 'description' => 'The voice ID of the intelligent agent. The modification takes effect in the next sentence. If you do not specify this parameter, the system uses the default voice ID specified in the template of the intelligent agent. This parameter takes effect only for the preset TTS model. The ID can be up to 64 characters in length. For more information about the available voices, visit [https://help.aliyun.com/zh/ims/developer-reference/smart-voice-effect-example](url).'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'zhixiaoxia', + 'backendName' => 'voiceId', + ], + 'UseVoiceprint' => [ + 'description' => 'Specifies whether to enable voiceprint recognition. Default value: false.'."\n", + 'visibility' => 'Public', + 'type' => 'boolean', + 'example' => 'false', + 'backendName' => 'useVoiceprint', + ], + 'MaxIdleTime' => [ + 'description' => '', + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '600', + 'backendName' => 'maxIdleTime', + ], + 'GracefulShutdown' => [ + 'description' => 'Specifies whether the intelligent agent supports graceful shutdown. Default value: false.'."\n" + ."\n" + .'Graceful shutdown: When the intelligent agent is stopped, it completes its current sentence before stopping. However, the intelligent agent can speak for 10 seconds at most.'."\n", + 'visibility' => 'Public', + 'type' => 'boolean', + 'example' => 'false', + 'backendName' => 'gracefulShutdown', + ], + 'EnablePushToTalk' => [ + 'description' => 'Specifies whether to enable the intercom mode. Default value: false.'."\n", + 'visibility' => 'Public', + 'type' => 'boolean', + 'example' => 'false', + 'backendName' => 'enablePushToTalk', + ], + ], + 'backendName' => 'visionChat', + ], + 'AvatarChat3D' => [ + 'title' => '', + 'description' => 'The parameters of the 3D avatar.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'Greeting' => [ + 'title' => '', + 'description' => 'The greetings spoken by the intelligent agent when it joins the meeting. If you do not specify this parameter, the system uses the default greetings specified in the template of the intelligent agent. The greetings can be up to 128 characters in length.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '', + 'backendName' => 'greeting', + ], + 'LlmHistory' => [ + 'description' => '', + 'visibility' => 'Public', + 'type' => 'array', + 'items' => [ + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'Role' => [ + 'description' => '', + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'user', + 'backendName' => 'role', + ], + 'Content' => [ + 'description' => '', + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '', + 'backendName' => 'content', + ], + ], + 'extendType' => 'true', + ], + 'backendName' => 'llmHistory', + ], + 'UserOnlineTimeout' => [ + 'description' => 'The timeout period before the user joins the meeting. Unit: seconds. Default value: 60.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '60', + 'backendName' => 'userOnlineTimeout', + ], + 'UserOfflineTimeout' => [ + 'description' => 'The timeout period after the user leaves the meeting. Unit: seconds. Default value: 5.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '5', + 'backendName' => 'userOfflineTimeout', + ], + 'WorkflowOverrideParams' => [ + 'description' => '', + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '{}', + 'backendName' => 'workflowOverrideParams', + ], + 'EnableIntelligentSegment' => [ + 'description' => '', + 'visibility' => 'Private', + 'type' => 'boolean', + 'example' => 'true', + 'backendName' => 'enableIntelligentSegment', + ], + 'BailianAppParams' => [ + 'description' => 'The parameters of the application center of Alibaba Cloud Model Studio. For more information about the parameter format, see [Parameters of the application center of Alibaba Cloud Model Studio](~~2858132~~).'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '{}', + 'backendName' => 'bailianAppParams', + ], + 'LlmHistoryLimit' => [ + 'description' => '', + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + 'backendName' => 'llmHistoryLimit', + ], + 'AsrMaxSilence' => [ + 'description' => 'The threshold used to determine the end of a sentence. If the duration of silence exceeds this threshold, the system determines that a sentence ends. Unit: milliseconds. Default value: 400. Valid values: 200 to 1200.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '400', + 'backendName' => 'asrMaxSilence', + ], + 'WakeUpQuery' => [ + 'description' => '', + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '', + 'backendName' => 'wakeUpQuery', + ], + 'AppId' => [ + 'title' => '', + 'description' => '', + 'visibility' => 'Private', + 'type' => 'string', + 'backendName' => 'appId', + ], + 'Volume' => [ + 'title' => '', + 'description' => 'The speech volume of the intelligent agent.'."\n" + ."\n" + .'* If this parameter is not specified, the adaptive volume mode recommended by Alibaba Cloud is used by default.'."\n" + .'* To specify this parameter, enter a value between 0 and 400. The output volume is calculated by using the following formula: Output volume = Voice output volume specified in the workflow × Volume/100. Example:'."\n" + ."\n" + .'1. If Volume is set to 0, the output volume is 0.'."\n" + .'2. If Volume is set to 100, the output volume is the voice output volume specified in the workflow.'."\n" + .'3. If Volume is set to 200, the output volume is twice the voice output volume specified in the workflow.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '100', + 'backendName' => 'volume', + ], + 'AvatarId' => [ + 'title' => '', + 'description' => 'The ID of the avatar.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '1231', + 'backendName' => 'avatarId', + ], + 'EnableVoiceInterrupt' => [ + 'title' => '', + 'description' => 'Specifies whether the intelligent agent can be interrupted by voice. Default value: true.'."\n", + 'visibility' => 'Public', + 'type' => 'boolean', + 'example' => 'true', + 'backendName' => 'enableVoiceInterrupt', + ], + 'VoiceprintId' => [ + 'description' => 'The unique ID of the voiceprint. This parameter is empty by default.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'uniqueId', + 'backendName' => 'voiceprintId', + ], + 'VoiceId' => [ + 'title' => '', + 'description' => 'The voice ID of the intelligent agent. The modification takes effect in the next sentence. If you do not specify this parameter, the system uses the default voice ID specified in the template of the intelligent agent. This parameter takes effect only for the preset TTS model. The ID can be up to 64 characters in length. For more information about the available voices, visit [https://help.aliyun.com/zh/ims/developer-reference/smart-voice-effect-example](url).'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'zhixiaoxia', + 'backendName' => 'voiceId', + ], + 'UseVoiceprint' => [ + 'description' => 'Specifies whether to enable voiceprint recognition. Default value: false.'."\n", + 'visibility' => 'Public', + 'type' => 'boolean', + 'example' => 'false', + 'backendName' => 'useVoiceprint', + ], + 'MaxIdleTime' => [ + 'description' => '', + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '600', + 'backendName' => 'maxIdleTime', + ], + 'GracefulShutdown' => [ + 'title' => '', + 'description' => 'Specifies whether the intelligent agent supports graceful shutdown. Default value: false.'."\n" + ."\n" + .'* Graceful shutdown: When the intelligent agent is stopped, it completes its current sentence before stopping. However, the intelligent agent can speak for 10 seconds at most.'."\n", + 'visibility' => 'Public', + 'type' => 'boolean', + 'example' => 'true', + 'backendName' => 'gracefulShutdown', + ], + 'EnablePushToTalk' => [ + 'description' => 'Specifies whether to enable the intercom mode. Default value: false.'."\n", + 'visibility' => 'Public', + 'type' => 'boolean', + 'example' => 'false', + 'backendName' => 'enablePushToTalk', + ], + ], + 'backendName' => 'avatarChat3D', + ], + ], + ], + 'AiRtcAuthCodeDTO' => [ + 'title' => 'A short description of struct', + 'description' => '', + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'Status' => [ + 'title' => '', + 'description' => '', + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + 'backendName' => 'status', + ], + 'Type' => [ + 'title' => '', + 'description' => '', + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + 'backendName' => 'type', + ], + 'AuthCode' => [ + 'title' => '', + 'description' => '', + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'iU1IeJech7***', + 'backendName' => 'authCode', + ], + 'ActivatedTime' => [ + 'title' => '', + 'description' => '', + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '2024-01-01 06:57:43', + 'backendName' => 'activatedTime', + ], + 'DeviceId' => [ + 'title' => '', + 'description' => '', + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'device-***', + 'backendName' => 'deviceId', + ], + 'CreationTime' => [ + 'title' => '', + 'description' => '', + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '2023-12-23T13:33:49Z', + 'backendName' => 'creationTime', + ], + 'License' => [ + 'title' => 'license', + 'description' => 'license。', + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'a659a06659a***', + 'backendName' => 'license', + ], + 'ModificationTime' => [ + 'title' => '', + 'description' => '', + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '2023-12-23T13:33:49Z', + 'backendName' => 'modificationTime', + ], + 'LicenseItemId' => [ + 'title' => '', + 'description' => '', + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '11096067***', + 'backendName' => 'licenseItemId', + ], + ], + ], + 'AiRtcLicenseInfoDTO' => [ + 'title' => 'A short description of struct', + 'description' => 'The license batch information.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'CreationTime' => [ + 'title' => '', + 'description' => 'The creation time.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '2020-12-23T13:33:49Z', + 'backendName' => 'creationTime', + ], + 'ModificationTime' => [ + 'title' => '', + 'description' => 'The update time.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '2020-12-23T13:33:49Z', + 'backendName' => 'modificationTime', + ], + 'Type' => [ + 'title' => '', + 'description' => 'The license type. Valid values:'."\n" + ."\n" + .'* 1: Audio call'."\n" + .'* 2: Vision call'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + 'backendName' => 'type', + ], + 'LicenseItemId' => [ + 'title' => '', + 'description' => 'The ID of the batch.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '17712***', + 'backendName' => 'licenseItemId', + ], + 'Status' => [ + 'title' => '', + 'description' => 'The status of the batch. Valid values:'."\n" + ."\n" + .'* 1: Active'."\n" + .'* 2\\. Expired'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + 'backendName' => 'status', + ], + 'ValidDays' => [ + 'title' => '', + 'description' => 'The validity period of the licenses in this batch, in days.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '365', + 'backendName' => 'validDays', + ], + 'ExpiredOn' => [ + 'title' => '', + 'description' => 'The expiration time.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '2021-12-23T13:33:49Z', + 'backendName' => 'expiredOn', + ], + 'BeginOn' => [ + 'title' => '', + 'description' => 'The time when the batch became active.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '2020-12-23T13:33:49Z', + 'backendName' => 'beginOn', + ], + 'LicenseCount' => [ + 'title' => '', + 'description' => 'The total number of licenses contained within this batch.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10000', + 'backendName' => 'licenseCount', + ], + 'AvailableCapacity' => [ + 'title' => '', + 'description' => 'The remaining usage capacity of the batch.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10000000', + 'backendName' => 'availableCapacity', + ], + 'InstanceId' => [ + 'title' => '', + 'description' => 'The ID of the instance.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'ice_CoverAILicense_public_cn***', + 'backendName' => 'instanceId', + ], + 'ContractNo' => [ + 'title' => '', + 'description' => 'The contract number.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '258396267390***', + 'backendName' => 'contractNo', + ], + ], + ], + 'Channel' => [ + 'description' => 'The MediaWeaver channel.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'FillerSourceName' => [ + 'description' => 'The source name of the filler slate.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'MySource', + 'backendName' => 'fillerSourceName', + ], + 'FillerSourceLocationName' => [ + 'description' => 'The source location of the filler slate.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'MySourceLocation', + 'backendName' => 'fillerSourcelocationName', + ], + 'GmtCreate' => [ + 'description' => 'The creation time.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '2024-01-15T03:44:16Z', + 'backendName' => 'gmtCreateUTC', + ], + 'ChannelName' => [ + 'description' => 'The name of the channel.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'MyChannel', + 'backendName' => 'channelName', + ], + 'ChannelTier' => [ + 'description' => 'The tier of the channel.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'basic', + 'backendName' => 'channelTierString', + ], + 'AccessToken' => [ + 'description' => 'The token for accessing the channel.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'xxxxx', + 'backendName' => 'accessToken', + 'sensitive' => true, + ], + 'State' => [ + 'description' => 'The state of the channel.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + 'backendName' => 'state', + ], + 'GmtModified' => [ + 'description' => 'The modification time.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '2024-09-01T10:09Z', + 'backendName' => 'gmtModifiedUTC', + ], + 'Arn' => [ + 'description' => 'The ARN of the channel.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'acs:ims:mediaweaver:<regionId>:<userId>:channel/myChannel', + 'backendName' => 'arn', + ], + 'PlaybackMode' => [ + 'description' => 'The playback mode.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'loop', + 'backendName' => 'playbackModeString', + ], + 'OutPutConfigList' => [ + 'description' => 'The output configurations.'."\n", + 'visibility' => 'Public', + 'type' => 'array', + 'items' => [ + 'description' => 'The output configuration.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'ManifestName' => [ + 'description' => 'The manifest name.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'index1', + 'backendName' => 'manifestName', + ], + 'ChannelName' => [ + 'description' => 'The name of the channel.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'MyChannel', + 'backendName' => 'channelName', + ], + 'Format' => [ + 'description' => 'The format.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'hls', + 'backendName' => 'formatString', + ], + 'PlaybackUrl' => [ + 'description' => 'The playback URL.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'https://xxxxx.com/xxx.m3u8', + 'backendName' => 'playbackUrl', + ], + 'ManifestSettings' => [ + 'description' => 'The manifest settings.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '{"WindowDuration": 60,"AdMarkType":"Daterange"}', + 'backendName' => 'manifestSettings', + ], + 'SourceGroupName' => [ + 'description' => 'The name of the source group.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'group1', + 'backendName' => 'sourcegroupName', + ], + ], + 'extendType' => 'true', + ], + 'backendName' => 'outputDTOS', + ], + 'AccessPolicy' => [ + 'description' => 'Specifies whether to enable access control.'."\n", + 'visibility' => 'Public', + 'type' => 'boolean', + 'example' => 'true', + 'backendName' => 'accessPolicy', + ], + ], + ], + 'ChannelAssemblyChannel' => [ + 'description' => 'The MediaWeaver channel.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'FillerSourceName' => [ + 'description' => 'The source name of the filler slate.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'MySource', + 'backendName' => 'fillerSourceName', + ], + 'FillerSourceLocationName' => [ + 'description' => 'The source location of the filler slate.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'MySourceLocation', + 'backendName' => 'fillerSourcelocationName', + ], + 'GmtCreate' => [ + 'description' => 'The time when the channel was created.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '2024-01-15T03:44:16Z'."\n", + 'backendName' => 'gmtCreateUTC', + ], + 'ChannelName' => [ + 'description' => 'The name of the channel.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'MyChannel', + 'backendName' => 'channelName', + ], + 'ChannelTier' => [ + 'description' => 'The tier of the channel. Valid values: basic and standard.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'basic', + 'backendName' => 'channelTierString', + ], + 'AccessToken' => [ + 'description' => 'The token for accessing the channel.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'xxxxx', + 'backendName' => 'accessToken', + 'sensitive' => true, + ], + 'State' => [ + 'description' => 'The channel status. A value of 0 specifies stopped. A value of 1 specifies running.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + 'backendName' => 'state', + ], + 'GmtModified' => [ + 'description' => 'The time when the channel was last modified.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '2024-09-01T10:09Z'."\n", + 'backendName' => 'gmtModifiedUTC', + ], + 'Arn' => [ + 'description' => 'The ARN of the channel.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'acs:ims:mediaweaver:<regionId>:<userId>:channel/myChannel'."\n", + 'backendName' => 'arn', + ], + 'PlaybackMode' => [ + 'description' => 'The playback mode. Valid values: loop and linear.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'loop', + 'backendName' => 'playbackModeString', + ], + 'OutPutConfigList' => [ + 'description' => 'The channel output configurations.'."\n", + 'visibility' => 'Public', + 'type' => 'array', + 'items' => [ + 'description' => 'The output.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'ManifestName' => [ + 'description' => 'The name of the manifest file.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'index1', + 'backendName' => 'manifestName', + ], + 'ChannelName' => [ + 'description' => 'The name of the channel.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'MyChannel', + 'backendName' => 'channelName', + ], + 'Format' => [ + 'description' => 'The streaming protocol. Only HTTP Live Streaming (HLS) is supported.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'hls', + 'backendName' => 'formatString', + ], + 'PlaybackUrl' => [ + 'description' => 'The playback URL.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'https://xxxxx.com/xxx.m3u8'."\n", + 'backendName' => 'playbackUrl', + ], + 'ManifestSettings' => [ + 'description' => 'The manifest settings.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '{"WindowDuration": 60,"AdMarkType":"Daterange"}'."\n", + 'backendName' => 'manifestSettings', + ], + 'SourceGroupName' => [ + 'description' => 'The name of the source group.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'group1', + 'backendName' => 'sourcegroupName', + ], + ], + 'extendType' => 'true', + ], + 'backendName' => 'outputDTOS', + ], + 'AccessPolicy' => [ + 'description' => 'Specifies whether to enable access control.'."\n", + 'visibility' => 'Public', + 'type' => 'boolean', + 'example' => 'true', + 'backendName' => 'accessPolicy', + ], + ], + ], + 'ChannelAssemblyProgram' => [ + 'description' => 'The information about the program.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'GmtCreate' => [ + 'description' => 'The time when the program was created.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '2024-04-02T00:58:19Z'."\n", + 'backendName' => 'gmtCreateUTC', + ], + 'ChannelName' => [ + 'description' => 'The name of the channel.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'MyChannel', + 'backendName' => 'channelName', + ], + 'SourceLocationName' => [ + 'description' => 'The name of the source location.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'MySourceLocation', + 'backendName' => 'sourceLocationName', + ], + 'AdBreaks' => [ + 'description' => 'The ad breaks.'."\n", + 'visibility' => 'Public', + 'type' => 'array', + 'items' => [ + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'TimeSignalSettings' => [ + 'description' => 'The TimeSignal configurations.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '{"segmentationEventID":0,"segmentationUPIDType":14,"segmentationUPID":"upid","segmentationTypeID":48,"segmentNumber":0,"segmentsExpected":0,"subSegmentNumber":1,"subSegmentsExpected":0}'."\n", + 'backendName' => 'timeSignalConfig', + ], + 'OffsetMillis' => [ + 'description' => 'The position to insert the ad marker, as an offset relative to the beginning of the program. Unit: milliseconds.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1000', + 'backendName' => 'offsetMillis', + ], + 'ChannelName' => [ + 'description' => 'The name of the channel.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'MyChannel', + 'backendName' => 'channelName', + ], + 'SourceLocationName' => [ + 'description' => 'The name of the source location.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'MySourceLocation', + 'backendName' => 'sourceLocationName', + ], + 'SpliceInsertSettings' => [ + 'description' => 'The SpliceInsert configurations.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '{"AvailNumber":0,"AvailExpected":0,"SpliceEventID":1,"UniqueProgramID":0}'."\n", + 'backendName' => 'spliceInsertConfig', + ], + 'SourceName' => [ + 'description' => 'The name of the source.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'MyAdSource', + 'backendName' => 'sourceName', + ], + 'ProgramName' => [ + 'description' => 'The name of the program.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'program_name'."\n", + 'backendName' => 'programName', + ], + 'MessageType' => [ + 'description' => 'The SCTE-35 message type.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'SPLICE_INSERT', + 'backendName' => 'messageTypeString', + ], + ], + 'extendType' => 'true', + 'description' => '', + ], + 'backendName' => 'adBreakDTOs', + ], + 'SourceType' => [ + 'description' => 'The source type. Valid values: vodSource and liveSource.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'vodSource', + 'backendName' => 'sourceTypeString', + ], + 'Transition' => [ + 'description' => 'The program transition method.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '{"Type": "RELATIVE", "RelativePosition": "AFTER_PROGRAM", "RelativeProgram": "program2"}'."\n", + 'backendName' => 'transition', + ], + 'GmtModified' => [ + 'description' => 'The time when the program was last modified.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '2024-04-02T00:58:19Z'."\n", + 'backendName' => 'gmtModifiedUTC', + ], + 'SourceName' => [ + 'description' => 'The name of the source.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'MySource', + 'backendName' => 'sourceName', + ], + 'ClipRange' => [ + 'description' => 'Extracts a clip from the source.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '{StartOffsetMillis: 213123, EndOffsetMillis: 213134}'."\n", + 'backendName' => 'clipRange', + ], + 'Arn' => [ + 'description' => 'The ARN of the program.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'acs:ims:mediaweaver:<regionId>:<userId>:program/myChannel/MyProgram'."\n", + 'backendName' => 'arn', + ], + 'ProgramName' => [ + 'description' => 'The name of the program.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'program1', + 'backendName' => 'programName', + ], + ], + ], + 'ChannelAssemblyScheduleData' => [ + 'description' => 'The program schedule information.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'EntryType' => [ + 'description' => 'The entry type.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'program', + 'backendName' => 'entryType', + ], + 'SourceLocationName' => [ + 'description' => 'The name of the source location.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'MySourceLocation'."\n", + 'backendName' => 'sourceLocationName', + ], + 'AdBreaks' => [ + 'description' => 'The information about ad breaks.'."\n", + 'visibility' => 'Public', + 'type' => 'array', + 'items' => [ + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'OffsetMillis' => [ + 'description' => 'The position to insert the ad marker, as an offset relative to the beginning of the program. Unit: milliseconds.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '100000', + 'backendName' => 'offsetMillis', + ], + 'TimeSignalSettings' => [ + 'description' => 'The TimeSignal configurations.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '{"segmentationEventID":0,"segmentationUPIDType":14,"segmentationUPID":"upid","segmentationTypeID":48,"segmentNumber":0,"segmentsExpected":0,"subSegmentNumber":1,"subSegmentsExpected":0}'."\n", + 'backendName' => 'timeSignalSettings', + ], + 'SourceLocationName' => [ + 'description' => 'The name of the source location.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'MySourceLocation', + 'backendName' => 'sourceLocationName', + ], + 'SpliceInsertSettings' => [ + 'description' => 'The SpliceInsert configurations.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '{"AvailNumber":0,"AvailExpected":0,"SpliceEventID":1,"UniqueProgramID":0}'."\n", + 'backendName' => 'spliceInsertSettings', + ], + 'SourceName' => [ + 'description' => 'The name of the source.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'MySource', + 'backendName' => 'sourceName', + ], + 'MessageType' => [ + 'description' => 'The SCTE-35 message type.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'SPLICE_INSERT', + 'backendName' => 'messageType', + ], + ], + 'extendType' => 'true', + 'description' => '', + ], + 'backendName' => 'adBreaks', + ], + 'SourceType' => [ + 'description' => 'The source type. Valid values: vodSource and liveSource.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'vodSource', + 'backendName' => 'sourceType', + ], + 'SourceName' => [ + 'description' => 'The name of the source.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'MySource', + 'backendName' => 'sourceName', + ], + 'ApproximateDurationSeconds' => [ + 'description' => 'The scheduled playback duration.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '100000', + 'backendName' => 'approximateDurationSeconds', + ], + 'ApproximateStartTime' => [ + 'description' => 'The scheduled start time.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '1989128002313', + 'backendName' => 'approximateStartTimeUTC', + ], + 'ProgramName' => [ + 'description' => 'The name of the program.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'program1', + 'backendName' => 'programName', + ], + ], + ], + 'ChannelAssemblySource' => [ + 'description' => 'The source information.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'GmtCreate' => [ + 'description' => 'The time when the source was created.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '2022-10-20T07:15:51Z', + 'backendName' => 'gmtCreateUTC', + ], + 'SourceLocationName' => [ + 'description' => 'The name of the source location.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'MySourceLocation'."\n", + 'backendName' => 'sourceLocationName', + ], + 'State' => [ + 'description' => 'The status of the source. 0: normal. 1: deleted.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + 'backendName' => 'state', + ], + 'SourceType' => [ + 'description' => 'The source type. Valid values: vodSource and liveSource.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'vodSource', + 'backendName' => 'sourceTypeString', + ], + 'GmtModified' => [ + 'description' => 'The time when the source was last modified.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '2024-11-07T10:12:01Z'."\n", + 'backendName' => 'gmtModifiedUTC', + ], + 'SourceName' => [ + 'description' => 'The name of the source.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'MyVodSource'."\n", + 'backendName' => 'sourceName', + ], + 'HttpPackageConfigurations' => [ + 'description' => 'The source configuration.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '[{'."\n" + .' "sourceGroupName": "mySourceGroup-1",'."\n" + .' "relativePath": "group1/hls.m3u8",'."\n" + .' "packageType": "hls"'."\n" + .'}]', + 'backendName' => 'httpPackageConfigurations', + ], + 'Arn' => [ + 'description' => 'The ARN of the source.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'acs:ims:mediaweaver:<regionId>:<userId>:vodSource/mySourceLocation/mySource'."\n", + 'backendName' => 'arn', + ], + ], + ], + 'ChannelAssemblySourceLocation' => [ + 'description' => 'The source location information.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'GmtCreate' => [ + 'description' => 'The time when the source location was created.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '2024-03-29T02:03:17Z', + 'backendName' => 'gmtCreateUTC', + ], + 'SourceLocationName' => [ + 'description' => 'The name of the source location.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'MySourceLocation'."\n", + 'backendName' => 'sourceLocationName', + ], + 'State' => [ + 'description' => 'The status of the source location. 0: normal. 1: deleted.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + 'backendName' => 'state', + ], + 'GmtModified' => [ + 'description' => 'The time when the source location was last modified.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '2024-03-29T02:03:17Z'."\n", + 'backendName' => 'gmtModifiedUTC', + ], + 'SegmentDeliveryConfigurations' => [ + 'description' => 'The segment delivery server configurations.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'http://segmentdelivery.com'."\n", + 'backendName' => 'segmentDeliveryUrl', + ], + 'BaseUrl' => [ + 'description' => 'The base URL of the source location.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'http://xxxx.com'."\n", + 'backendName' => 'baseUrl', + ], + 'Arn' => [ + 'description' => 'The ARN of the source location.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'acs:ims:mediaweaver:<regionId>:<UserId>:sourcelocation/MySourceLocation'."\n", + 'backendName' => 'arn', + ], + ], + ], + 'Hotword' => [ + 'description' => 'The hotword information.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'TranspositionResultList' => [ + 'description' => '* Predefined translation results for the hotword.'."\n" + .'* This field is only used in translation-related scenarios.'."\n", + 'visibility' => 'Public', + 'type' => 'array', + 'items' => [ + 'description' => 'Predefined translation for the hotword.'."\n", + 'visibility' => 'Public', + 'extendType' => 'true', + '$ref' => '#/components/schemas/TranspositionResult', + ], + 'backendName' => 'transpositionResultList', + ], + 'Language' => [ + 'title' => '', + 'description' => 'The language of the hotword text. Valid values:'."\n" + ."\n" + .'* For structured media analysis and ASR: zh: Chinese en: English'."\n" + .'* For video translation: Supports 53 languages.'."\n" + .'*'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'en', + 'backendName' => 'language', + ], + 'Text' => [ + 'title' => '', + 'description' => 'The text of the hotword.'."\n" + ."\n" + .'* For structured media analysis and ASR:'."\n" + .'* * Chinese: Up to 15 characters.'."\n" + .'* * English: Up to 10 words, separated by spaces.'."\n" + .'* * Mixed: Each letter is counted as one character (following the Chinese limit).'."\n" + .'* For video translation: Up to 100 characters.'."\n" + .'*'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'hello', + 'backendName' => 'text', + ], + 'Weight' => [ + 'description' => 'The weight of the hotword.'."\n" + ."\n" + .'1. Valid values: \\[-6,5].'."\n" + .'2. A positive value increases the likelihood of the word being recognized, while a negative value decreases the likelihood.'."\n" + .'3. A value of -6 specifies that recognition of this word should be minimized.'."\n" + .'4. Recommended value: 2.'."\n" + .'5. If the desired effect is not achieved, you can increase the weight. However, excessively high weights may negatively impact the recognition accuracy of other words.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '2', + 'backendName' => 'weight', + ], + ], + ], + 'LiveManifestConfig' => [ + 'description' => 'Configuration for a live stream manifest.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'SegmentCount' => [ + 'description' => 'The number of segments to include in the playlist. Applies to HLS and HLS-CMAF protocols. If not set, the channel\'s default configuration is used. Valid values: 2 to 100.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '3', + 'backendName' => 'segmentCount', + ], + 'AdMarkers' => [ + 'description' => 'The type of ad markers to include in the manifest.'."\n" + ."\n" + .'* NONE: Removes all ad markers.'."\n" + .'* DATE_RANGE: Inserts EXT-X-DATERANGE tags (HLS spec). Valid for HLS/HLS-CMAF endpoints.'."\n" + .'* XML: Inserts XML-based ad markers (DASH spec). Valid for DASH endpoints.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'enumValueTitles' => [ + 'XML' => 'XML', + 'NONE' => 'NONE', + 'DATE_RANGE' => 'DATE_RANGE', + ], + 'example' => 'NONE', + 'backendName' => 'adMarkers', + ], + 'MinVideoBitrate' => [ + 'description' => 'The minimum bitrate threshold (in bits per second) that video tracks must be at or above to be available for playback from this endpoint. It must be a positive integer. If not set, no minimum bitrate is enforced.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1000000', + 'backendName' => 'minVideoBitrate', + ], + 'MinBufferTime' => [ + 'description' => 'The minimum buffer time, in seconds. Valid values: 1 to 30. Default value: the duration of two segments. Applies only to DASH endpoints.'."\n" + ."\n" + .'Note: Setting this value too low may cause playback to stutter. We recommend a value no less than two segment durations.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '8', + 'backendName' => 'minBufferTime', + ], + 'PresentationDelay' => [ + 'description' => 'The suggested presentation delay, in seconds. Valid values: 1 to 60. Default value: the duration of three segments.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '12', + 'backendName' => 'presentationDelay', + ], + 'StreamOrder' => [ + 'description' => 'The order of streams in the master playlist. Valid values:'."\n" + ."\n" + .'* ORIGINAL: Preserves the original order of the input streams.'."\n" + .'* VIDEO_BITRATE_ASCENDING: sorts the streams in ascending order of bitrates, from lowest to highest.'."\n" + .'* VIDEO_BITRATE_DESCENDING: sorts the streams in descending order of bitrates, from highest to lowest.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'enumValueTitles' => [ + 'VIDEO_BITRATE_ASCENDING' => 'VIDEO_BITRATE_ASCENDING', + 'VIDEO_BITRATE_DESCENDING' => 'VIDEO_BITRATE_DESCENDING', + 'ORIGINAL' => 'ORIGINAL', + ], + 'example' => 'ORIGINAL', + 'backendName' => 'streamOrder', + ], + 'MaxVideoBitrate' => [ + 'description' => 'The maximum bitrate threshold (in bits per second) that video tracks must be at or below to be available for playback from this endpoint. It must be a positive integer. If not set, no maximum bitrate is enforced.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '8000000', + 'backendName' => 'maxVideoBitrate', + ], + 'DateTimeInterval' => [ + 'description' => 'The interval, in seconds, at which to insert the EXT-X-PROGRAM-DATE-TIME tag into the playlist. By default, no tags are inserted. Valid values: 1 to 3600. Applies only to HLS and HLS-CMAF endpoints.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '5', + 'backendName' => 'dateTimeInterval', + ], + 'SegmentTemplateFormat' => [ + 'description' => 'The format of the segment template. Only NUMBER_TIMELINE is supported (default). Applies only to DASH endpoints.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'enumValueTitles' => [ + 'NUMBER_TIMELINE' => 'NUMBER_TIMELINE', + ], + 'example' => 'NUMBER_TIMELINE', + 'backendName' => 'segmentTemplateFormat', + ], + 'MinUpdatePeriod' => [ + 'description' => 'The minimum update period for the manifest, in seconds. Valid values: 1 to 3600. Default value: the duration of two segments. Applies only to DASH endpoints.'."\n" + ."\n" + .'Note: For smooth playback, set this value to be less than MinBufferTime.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '8', + 'backendName' => 'minUpdatePeriod', + ], + 'ManifestDuration' => [ + 'description' => 'The duration of the startover window, in seconds. It defines the maximum time a viewer can seek backward in the live stream. Valid values: 1 to 3600. Default value: 60. Applies only to DASH endpoints.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '60', + 'backendName' => 'manifestDuration', + ], + ], + ], + 'LivePackagingConfig' => [ + 'description' => 'Live packaging configuration.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'LiveManifestConfigs' => [ + 'description' => 'Live stream manifest configuration. Only one configuration is supported.'."\n", + 'visibility' => 'Public', + 'type' => 'array', + 'items' => [ + 'description' => 'Live stream manifest configuration.'."\n", + 'visibility' => 'Public', + 'extendType' => 'true', + '$ref' => '#/components/schemas/LiveManifestConfig', + ], + 'backendName' => 'liveManifestConfigs', + ], + 'UseAudioRenditionGroups' => [ + 'title' => '', + 'description' => 'Specifies whether to create separate audio rendition groups for TS segments.'."\n", + 'visibility' => 'Public', + 'type' => 'boolean', + 'example' => 'true', + 'backendName' => 'useAudioRenditionGroups', + ], + 'DrmConfig' => [ + 'title' => '', + 'description' => 'Configuration for the DRM provider. To disable DRM, leave all fields in this object empty.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'SystemIds' => [ + 'title' => '', + 'description' => 'The ID of the DRM system. The supported systems depend on the protocol.'."\n" + ."\n" + .'* DASH: Supports Google Widevine and Microsoft PlayReady.'."\n" + .'* HLS: DRM is not supported.'."\n" + .'* HLS-CMAF: Supports Apple FairPlay, Google Widevine, and Microsoft PlayReady.'."\n" + ."\n" + .'The corresponding System IDs are:'."\n" + ."\n" + .'* Apple FairPlay: 94ce86fb-07ff-4f43-adb8-93d2fa968ca2'."\n" + .'* Google Widevine: edef8ba9-79d6-4ace-a3c8-27dcd51d21ed'."\n" + .'* Microsoft PlayReady: 9a04f079-9840-4286-ab92-e65be0885f95'."\n", + 'visibility' => 'Public', + 'type' => 'array', + 'items' => [ + 'description' => 'The ID of the DRM system.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '9a04f079-9840-4286-ab92-e65be0885f95', + 'extendType' => 'true', + ], + 'backendName' => 'systemIds', + ], + 'RotatePeriod' => [ + 'title' => '', + 'description' => 'The key rotation interval for DRM, in seconds. The default value of 0 disables key rotation.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + 'backendName' => 'rotatePeriod', + ], + 'ContentId' => [ + 'description' => 'The content ID in the DRM system. The maximum length is 256 characters. Letters, digits, underscores (\\_), and hyphens (-) are supported. You must ensure this ID is unique to prevent playback failures.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'live-axb1-9dd2fa123', + 'backendName' => 'contentId', + ], + 'EncryptionMethod' => [ + 'title' => '', + 'description' => 'The encryption method. Valid value:'."\n" + ."\n" + .'* SAMPLE_AES'."\n" + ."\n" + .'If not specified, encryption is disabled.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'SAMPLE_AES', + 'backendName' => 'encryptionMethod', + ], + 'IV' => [ + 'title' => '', + 'description' => 'A 128-bit, 16-byte hex value represented by a 32-character string that is used with the key for encrypting data blocks. If you leave this parameter empty, MediaPackage creates a constant initialization vector (IV). If it is specified, the value is passed to the DRM service.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '00000000000000000000000000000000', + 'backendName' => 'iv', + ], + 'Url' => [ + 'title' => '', + 'description' => 'The URL of the DRM key provider.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'https://exampledrm.com/path?arg1=xxx', + 'backendName' => 'url', + ], + ], + 'backendName' => 'drmConfig', + ], + 'SegmentDuration' => [ + 'title' => '', + 'description' => 'The duration of each output segment, in seconds. If not set, this defaults to the channel\'s configured segment duration. The final segment duration is a multiple of the source segment duration that is closest to and not less than this value. Valid values: 1 to 30.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '6', + 'backendName' => 'segmentDuration', + ], + ], + ], + 'MediaConvertAudio' => [ + 'description' => 'Parameters for audio transcoding.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'Codec' => [ + 'title' => '', + 'description' => 'The audio codec.'."\n" + ."\n" + .'* Valid values: AAC, AC3, EAC3, MP2, MP3, FLAC, OPUS, VORBIS, WMA-V1, WMA-V2, and pcm_s16le.'."\n" + .'* Default value: AAC.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'AAC', + 'backendName' => 'codec', + ], + 'Remove' => [ + 'title' => '', + 'description' => 'Specifies whether to remove the audio stream from the output.'."\n" + ."\n" + .'* true: deletes the audio stream. All other parameters in the Audio object are ignored.'."\n" + .'* false: retains the audio stream.'."\n" + .'* Default value: false.'."\n", + 'visibility' => 'Public', + 'type' => 'boolean', + 'backendName' => 'remove', + ], + 'Bitrate' => [ + 'title' => '', + 'description' => 'The audio bitrate of the output file.'."\n" + ."\n" + .'* Unit: Kbps.'."\n" + .'* Valid values: \\[8,1000].'."\n" + .'* Default value: 128.'."\n" + .'* Common values: 64, 128, and 256.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '128', + 'backendName' => 'bitrate', + ], + 'Samplerate' => [ + 'title' => '', + 'description' => 'The sample rate.'."\n" + ."\n" + .'* Unit: Hz'."\n" + .'* Valid values: 22050, 32000, 44100, 48000, and 96000.'."\n" + .'* Default value: 44100.'."\n" + ."\n" + .'The supported sample rates vary depending on the container and codec format. For example, when the audio codec is MP3, a sample rate of 96000 is not supported. If the container format is FLV, only sample rates of 22050 and 44100 are supported.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '44100', + 'backendName' => 'samplerate', + ], + 'Profile' => [ + 'title' => '', + 'description' => 'The audio codec profile.'."\n" + ."\n" + .'* This parameter takes effect only if the Codec parameter is set to AAC.'."\n" + .'* Valid values: aac_low, aac_he, aac_he_v2, aac_ld, and aac_eld.'."\n" + .'* Default value: aac_low.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'aac_low', + 'backendName' => 'profile', + ], + 'Channels' => [ + 'title' => '', + 'description' => 'The number of audio channels.'."\n" + ."\n" + .'* Valid values: 0, 1, 2, 4, 5, 6, and 8.'."\n" + ."\n" + .' * If the Codec parameter is set to MP3 or OPUS, you can set this parameter to 0, 1, or 2.'."\n" + .' * If the Codec parameter is set to AAC or FLAC, you can set this parameter to 0, 1, 2, 4, 5, 6, or 8.'."\n" + .' * If the Codec parameter is set to VORBIS, you can set this parameter to 2.'."\n" + .' * If the Format parameter is set to MPD, you cannot set this parameter to 8.'."\n" + ."\n" + .'* Default value: 2.'."\n" + ."\n" + .'* Set the value to 0 to preserve the original number of channels from the source file.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2', + 'backendName' => 'channels', + ], + ], + ], + 'MediaConvertInput' => [ + 'title' => '', + 'description' => 'The input file for transcoding.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'Name' => [ + 'description' => 'The name of the input file. If Output contains InputRef, use this name to reference the input file.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'InputVideo', + 'backendName' => 'name', + ], + 'InputFile' => [ + 'title' => '', + 'description' => 'The input file.'."\n", + 'visibility' => 'Public', + 'backendName' => 'inputFile', + '$ref' => '#/components/schemas/MediaObject', + ], + ], + ], + 'MediaConvertJob' => [ + 'description' => 'A MediaConvert task.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'OutputDetails' => [ + 'title' => '', + 'description' => 'An array containing the results for each output.'."\n", + 'visibility' => 'Public', + 'type' => 'array', + 'items' => [ + 'title' => '', + 'description' => 'Output details.'."\n", + 'visibility' => 'Public', + 'extendType' => 'true', + '$ref' => '#/components/schemas/MediaConvertOutputDetail', + ], + 'backendName' => 'outputDetails', + 'itemName' => 'outputDetail', + ], + 'RequestId' => [ + 'title' => '', + 'description' => 'The ID of the API request that created this task.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '7B117AF5-2A1******', + 'backendName' => 'requestId', + ], + 'Message' => [ + 'title' => '', + 'description' => 'The reason for a failed task.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'The resource operated InputFile is bad'."\n", + 'backendName' => 'message', + ], + 'UserData' => [ + 'title' => '', + 'description' => 'The user-defined data.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '{}', + 'backendName' => 'userData', + ], + 'Percent' => [ + 'description' => 'The completion percentage of the task.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + 'backendName' => 'percent', + ], + 'Config' => [ + 'title' => '', + 'description' => 'The task configuration.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'JobName' => [ + 'description' => 'The task name.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'Name', + 'backendName' => 'jobName', + ], + 'Outputs' => [ + 'title' => '', + 'description' => 'The output configurations.'."\n", + 'visibility' => 'Public', + 'type' => 'array', + 'items' => [ + 'title' => '', + 'description' => 'The output configuration.'."\n", + 'visibility' => 'Public', + 'extendType' => 'true', + '$ref' => '#/components/schemas/MediaConvertOutput', + ], + 'backendName' => 'outputs', + 'itemName' => 'output', + ], + 'OutputGroups' => [ + 'title' => '', + 'description' => 'Output groups.'."\n", + 'visibility' => 'Public', + 'type' => 'array', + 'items' => [ + 'title' => '', + 'description' => 'Output group configurations.'."\n", + 'visibility' => 'Public', + 'extendType' => 'true', + '$ref' => '#/components/schemas/MediaConvertOutputGroup', + ], + 'backendName' => 'outputGroups', + 'itemName' => 'group', + ], + 'Inputs' => [ + 'title' => '', + 'description' => 'Inputs.'."\n", + 'visibility' => 'Public', + 'type' => 'array', + 'items' => [ + 'title' => '', + 'description' => 'Input file configurations.'."\n", + 'visibility' => 'Public', + 'extendType' => 'true', + '$ref' => '#/components/schemas/MediaConvertInput', + ], + 'backendName' => 'inputs', + 'itemName' => 'input', + ], + ], + 'backendName' => 'config', + ], + 'CreateTime' => [ + 'description' => 'The time the task was created. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '2022-07-07T07:16:11Z', + 'backendName' => 'createTime', + ], + 'Code' => [ + 'title' => '', + 'description' => 'An error code returned if the task failed.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'InvalidParameter.ResourceContentBad'."\n", + 'backendName' => 'code', + ], + 'OutputGroupDetails' => [ + 'title' => '', + 'description' => 'The details of the output groups.'."\n", + 'visibility' => 'Public', + 'type' => 'array', + 'items' => [ + 'title' => '', + 'description' => 'The results for each output group.'."\n", + 'visibility' => 'Public', + 'extendType' => 'true', + '$ref' => '#/components/schemas/MediaConvertOutputGroupDetail', + ], + 'backendName' => 'outputGroupDetails', + 'itemName' => 'outputGroupDetail', + ], + 'FinishTime' => [ + 'description' => 'The time the task was completed. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '2022-07-07T07:16:11Z'."\n", + 'backendName' => 'finishTime', + ], + 'State' => [ + 'title' => '', + 'description' => 'The task status.'."\n" + ."\n" + .'* Inited: Initialized'."\n" + .'* Running'."\n" + .'* Complete'."\n" + .'* Error'."\n" + .'* Cancelled'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'Finished', + 'backendName' => 'state', + ], + 'PipelineId' => [ + 'title' => '', + 'description' => 'The ID of the queue that processed the task.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '****d80e4e4044975745c14b****', + 'backendName' => 'pipelineId', + ], + 'ClientToken' => [ + 'title' => '', + 'description' => 'The idempotency key of the request for creating the task.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '****12e8864746a0a398****', + 'backendName' => 'clientToken', + ], + 'TriggerSource' => [ + 'title' => '', + 'description' => '', + 'visibility' => 'Private', + 'type' => 'string', + 'example' => 'Console', + 'backendName' => 'triggerSource', + ], + 'JobId' => [ + 'title' => '', + 'description' => 'The ID of the task.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '****d80e4e4044975745c14b****', + 'backendName' => 'jobId', + ], + ], + ], + 'MediaConvertJobConfig' => [ + 'description' => 'The configurations of the transcoding task.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'JobName' => [ + 'description' => 'The task name.'."\n" + ."\n" + .'* Maximum length: 64 bytes.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'Name', + 'backendName' => 'jobName', + ], + 'Inputs' => [ + 'description' => 'Inputs.'."\n", + 'visibility' => 'Public', + 'type' => 'array', + 'items' => [ + 'description' => 'Input file configurations.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'Name' => [ + 'description' => 'The name of the input file. InputRef can reference it in the output configuration.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'InputVideo'."\n", + 'backendName' => 'name', + ], + 'InputFile' => [ + 'description' => 'The input file.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The type of the media file. Valid values:'."\n" + ."\n" + .'* OSS: an OSS object.'."\n" + .'* Media: a media asset.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'OSS', + 'backendName' => 'type', + ], + 'Media' => [ + 'description' => 'The URL or ID of the media file.'."\n" + ."\n" + .'* If Type is OSS, this is the file URL (OSS or HTTP). Do not use a signed URL, as it may cause authentication failure.'."\n" + .'* If Type is Media, this is the media asset ID. The source stream is used by default.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'http://bucket.loction.aliyuncs.com/path/to/video.mp4', + 'backendName' => 'media', + ], + 'Url' => [ + 'description' => '', + 'visibility' => 'Private', + 'type' => 'string', + 'example' => 'http://bucket.loction.aliyuncs.com/path/to/video.mp4'."\n", + 'backendName' => 'url', + ], + ], + 'backendName' => 'inputFile', + ], + ], + 'extendType' => 'true', + ], + 'backendName' => 'inputs', + ], + 'Outputs' => [ + 'description' => '', + 'visibility' => 'Private', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'Name' => [ + 'description' => '', + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'output-video'."\n", + 'backendName' => 'name', + ], + 'TemplateId' => [ + 'description' => '', + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '****96e8864746a0b6f3****'."\n", + 'backendName' => 'templateId', + ], + 'OutputFile' => [ + 'description' => '', + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => '', + 'visibility' => 'Public', + 'type' => 'string', + 'enumValueTitles' => [ + 'Media' => 'Media', + 'OSS' => 'OSS', + ], + 'example' => 'OSS', + 'backendName' => 'type', + ], + 'Media' => [ + 'description' => '', + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'oss://bucket/path/to/video.mp4', + 'backendName' => 'media', + ], + 'Url' => [ + 'description' => '', + 'visibility' => 'Private', + 'type' => 'string', + 'example' => 'oss://bucket/path/to/{MediaId}/{JobId}.mp4'."\n", + 'backendName' => 'url', + ], + ], + 'backendName' => 'outputFile ', + ], + 'Priority' => [ + 'description' => '', + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '6', + 'backendName' => 'priority ', + ], + 'Features' => [ + 'description' => '', + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '{}', + 'backendName' => 'features', + ], + 'OverrideParams' => [ + 'description' => '', + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '{}', + 'backendName' => 'overrideParams', + ], + ], + 'extendType' => 'true', + ], + 'backendName' => 'outputs', + ], + 'OutputGroups' => [ + 'description' => 'An array of output group configurations.'."\n", + 'visibility' => 'Public', + 'type' => 'array', + 'items' => [ + 'description' => 'Output group configurations.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'Name' => [ + 'description' => 'The name of the output group.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'hls-group'."\n", + 'backendName' => 'name', + ], + 'GroupConfig' => [ + 'description' => 'The configuration for this output group.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The type of the output group. Valid values:'."\n" + ."\n" + .'* File: An individual file.'."\n" + .'* Hls: HLS files for adaptive bitrate streaming.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'enumValueTitles' => [ + 'File' => 'File', + 'Hls' => 'Hls', + ], + 'example' => 'Hls', + 'backendName' => 'type', + ], + 'OutputFileBase' => [ + 'description' => 'The base output directory. All files generated by this OutputGroup are placed in this directory.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The type of the output file. Valid values:'."\n" + ."\n" + .'* OSS: an OSS object.'."\n" + .'* Media: a media asset.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'OSS', + 'backendName' => 'type', + ], + 'Media' => [ + 'description' => 'The media asset location.'."\n" + ."\n" + .'* If Type is OSS, this is the destination URL (OSS or HTTP).'."\n" + .'* If Type is Media, this is the destination media asset ID.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'oss://bucket/path/to/dir', + 'backendName' => 'media', + ], + 'Url' => [ + 'description' => '', + 'visibility' => 'Private', + 'type' => 'string', + 'example' => 'oss://bucket/path/to/{MediaId}', + 'backendName' => 'url', + ], + ], + 'backendName' => 'outputFileBase', + ], + 'ManifestName' => [ + 'description' => 'The name of the manifest file. This parameter is only applicable when Type is set to Hls or Dash.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'manifest', + 'backendName' => 'manifestName', + ], + 'ManifestExtend' => [ + 'description' => 'Configures an extension to an existing manifest file. This allows you to reference an existing manifest and combine it with the results of the current output group to generate a new manifest.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'InputRef' => [ + 'description' => 'References the Name of an input that contains the manifest to be extended.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'Input-Manifest', + 'backendName' => 'inputRef', + ], + 'Excludes' => [ + 'description' => 'Specifies streams to exclude from the referenced manifest. Multiple conditions within a single exclusion object are combined using AND logic. Multiple exclusion objects in the array are combined using OR logic.'."\n", + 'visibility' => 'Public', + 'type' => 'array', + 'items' => [ + 'description' => 'Stream exclusion condition.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'Language' => [ + 'description' => 'Excludes streams based on their Language field. It must conform to RFC 5646.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'en', + 'backendName' => 'language', + ], + 'Name' => [ + 'description' => 'Excludes streams based on their Name field.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'audio-1', + 'backendName' => 'name', + ], + 'Type' => [ + 'description' => 'Excludes streams based on their Type field.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* Audio'."\n" + .'* Subtitle'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'Audio', + 'backendName' => 'type', + ], + ], + 'extendType' => 'true', + ], + 'backendName' => 'excludes', + ], + ], + 'backendName' => 'manifestExtend', + ], + ], + 'backendName' => 'groupConfig', + ], + 'Outputs' => [ + 'description' => 'A list of individual output stream configurations. Each object in this array defines a specific rendition.'."\n", + 'visibility' => 'Public', + 'type' => 'array', + 'items' => [ + 'description' => 'Individual output stream configuration.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'Name' => [ + 'description' => 'A name to label this output. This is for identification purposes only and does not affect the filename.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'group-output'."\n", + 'backendName' => 'name', + ], + 'TemplateId' => [ + 'description' => 'The ID of the transcoding template.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '****96e8864746a0b6f3****'."\n", + 'backendName' => 'templateId', + ], + 'OutputFileName' => [ + 'description' => 'The filename for this output. It is used in conjunction with OutputFileBase from the GroupConfig.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '720p.mp4'."\n", + 'backendName' => 'outputFileName', + ], + 'Priority' => [ + 'description' => 'The priority of the task, from 1 to 10. A higher value indicates a higher priority. Default: 6.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '6', + 'backendName' => 'priority', + ], + 'Features' => [ + 'description' => 'Additional feature parameters. See [MediaConvertJobFeature](~~2979993~~) for details.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '{}', + 'backendName' => 'features', + ], + 'OverrideParams' => [ + 'description' => 'A JSON string of parameters to override the settings in the specified template.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '{}', + 'backendName' => 'overrideParams', + ], + 'HlsGroupConfig' => [ + 'description' => 'HLS-specific settings for this stream\'s behavior in the manifest. Effective only when the group Type is Hls.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'Specifies the stream type.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* video: Video stream.'."\n" + .'* audio: Audio stream.'."\n" + .'* subtitle: Subtitle stream.'."\n" + .'* hybrid: A stream containing both audio and video.'."\n" + ."\n" + .'Default value: hybrid.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'hybrid', + 'backendName' => 'type', + ], + 'Bandwidth' => [ + 'description' => '', + 'visibility' => 'Private', + 'type' => 'string', + 'example' => '10000000', + 'backendName' => 'bandwidth', + ], + 'AudioGroup' => [ + 'description' => 'The audio group this video stream references. Effective when Type is video.'."\n" + ."\n" + .'Default value: audio.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'audio', + 'backendName' => 'audioGroup', + ], + 'SubtitleGroup' => [ + 'description' => 'The subtitle group this video or hybrid stream references. Effective when Type is video or hybrid.'."\n" + ."\n" + .'Default value: subtitle.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'subtitle', + 'backendName' => 'subtitleGroup', + ], + 'Name' => [ + 'description' => 'The NAME attribute for this stream in the HLS manifest. **Required** when Type is audio or subtitle.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'audio', + 'backendName' => 'name', + ], + 'Group' => [ + 'description' => 'The GROUP-ID attribute for this stream in the HLS manifest. Effective when Type is audio or subtitle.'."\n" + ."\n" + .'Default value: Same as the Type value.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'audio', + 'backendName' => 'group', + ], + 'Language' => [ + 'description' => 'The LANGUAGE attribute for this stream in the HLS manifest (must conform to RFC 5646). Effective when Type is audio or subtitle.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'zh', + 'backendName' => 'language', + ], + 'IsDefault' => [ + 'description' => 'Whether this is the default stream within its group. Effective when Type is audio or subtitle. Only one stream per group can be the default.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'false', + 'backendName' => 'isDefault', + ], + 'Forced' => [ + 'description' => 'Whether this stream must be played. Effective when Type is audio or subtitle.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'true', + 'backendName' => 'forced', + ], + 'AutoSelect' => [ + 'description' => 'Whether this stream should be automatically selected by the player. Effective when Type is audio or subtitle.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'true', + 'backendName' => 'autoSelect', + ], + ], + 'backendName' => 'hlsGroupConfig', + ], + ], + 'extendType' => 'true', + ], + 'backendName' => 'outputs', + ], + ], + 'extendType' => 'true', + ], + 'backendName' => 'outputGroups', + ], + ], + ], + 'MediaConvertJobFeature' => [ + 'description' => 'Parameters for transcoding features.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'Clip' => [ + 'description' => 'Configuration for clipping from the source video.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'TimeSpan' => [ + 'description' => 'The time range for the clip.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'Duration' => [ + 'description' => 'The duration of the clip, starting from the Seek time. The default duration is from the Seek time to the end of the video. Duration and End are mutually exclusive. If End is set, Duration is ignored.'."\n" + ."\n" + .'* Format: hh:mm:ss\\[.SSS] or sssss\\[.SSS].'."\n" + .'* Valid values: \\[00:00:00.000,23:59:59.999] or \\[0.000,86399.999].'."\n" + .'* Example: 00:01:59.99 or 180.30.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '60.0', + 'backendName' => 'duration', + ], + 'End' => [ + 'description' => 'Specifies a duration to trim from the end of the video. Duration and End are mutually exclusive. If End is set, Duration is ignored.'."\n" + ."\n" + .'* Format: hh:mm:ss\\[.SSS] or sssss\\[.SSS].'."\n" + .'* Valid values: \\[00:00:00.000,23:59:59.999] or \\[0.000,86399.999].'."\n" + .'* Example: 00:01:59.99 or 180.30.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '50', + 'backendName' => 'end', + ], + 'Seek' => [ + 'description' => 'The start time of the clip. It defaults to the beginning of the video.'."\n" + ."\n" + .'* Format: hh:mm:ss\\[.SSS] or sssss\\[.SSS].'."\n" + .'* Valid values: \\[00:00:00.000,23:59:59.999] or \\[0.000,86399.999].'."\n" + .'* Example: 00:01:59.99 or 180.30.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '180.30', + 'backendName' => 'seek', + ], + ], + 'backendName' => 'timeSpan', + ], + 'ConfigToClipFirstPart' => [ + 'description' => 'Specifies the order of operations when concatenating multiple files and clipping.'."\n" + ."\n" + .'* true: Clips the first input file before it is concatenated.'."\n" + .'* false: Concatenates all input files first, then applies clipping.'."\n" + .'* Default value: false.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'false', + 'backendName' => 'configToClipFirstPart', + ], + ], + 'backendName' => 'clip', + ], + 'Watermarks' => [ + 'description' => 'Image or text watermarks to add to the video. These parameters override the corresponding settings from a specified watermark template.'."\n" + ."\n" + .'* You can add up to four watermarks to a transcoding task.'."\n", + 'visibility' => 'Public', + 'type' => 'array', + 'items' => [ + 'description' => 'Configuration for a single watermark.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'FontColor' => [ + 'description' => 'The font color of the text watermark.'."\n" + ."\n" + .'* Default value: black.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'black', + 'backendName' => 'fontColor', + ], + 'BorderColor' => [ + 'description' => 'The color of the font border.'."\n" + ."\n" + .'* Default value: Black.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'Black', + 'backendName' => 'borderColor', + ], + 'BorderWidth' => [ + 'description' => 'The width of the font border.'."\n" + ."\n" + .'* Unit: pixels.'."\n" + .'* Valid values: \\[0,4096].'."\n" + .'* Default value: 0.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '0', + 'backendName' => 'borderWidth', + ], + 'FontAlpha' => [ + 'description' => 'The font opacity.'."\n" + ."\n" + .'* Valid values: (0,1].'."\n" + .'* Default value: 1.0.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '1.0', + 'backendName' => 'fontAlpha', + ], + 'Type' => [ + 'description' => 'The watermark type.'."\n" + ."\n" + .'* Text: a text watermark. In this case, you must specify the parameters related to the text watermark.'."\n" + .'* Image: an image watermark. In this case, you must specify the parameters related to the image watermark.'."\n" + ."\n" + .'If not specified, the type is inferred from the TemplateId.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'Image', + 'backendName' => 'type', + ], + 'Adaptive' => [ + 'description' => 'Specifies if the font size adapts to the output resolution. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n" + .'* Default value: false.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'true', + 'backendName' => 'adaptive', + ], + 'FontSize' => [ + 'description' => 'The font size of the text watermark.'."\n" + ."\n" + .'* Valid values: (4,120).'."\n" + .'* Default value: 16.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'backendName' => 'fontSize', + ], + 'Content' => [ + 'description' => 'The text to be displayed as the watermark.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'TextWatarmark', + 'backendName' => 'content', + ], + 'X' => [ + 'description' => 'The horizontal offset of the image watermark relative to the output video. This parameter overrides the corresponding setting from a specified watermark template. The following value types are supported:'."\n" + ."\n" + .'* Integer: the pixel value of the horizontal offset.'."\n" + ."\n" + .' * Unit: pixels.'."\n" + .' * Valid values: \\[8,4096].'."\n" + ."\n" + .'* Decimal: the ratio of the horizontal offset to the width of the output video.'."\n" + ."\n" + .' * Valid values: (0,1).'."\n" + .' * The decimal number can be accurate to four decimal places, such as 0.9999. Excessive digits are automatically discarded.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '0.08', + 'backendName' => 'x', + ], + 'FontName' => [ + 'description' => 'The font of the text watermark.'."\n" + ."\n" + .'* Default value: SimSum.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'SimSum', + 'backendName' => 'fontName', + ], + 'Y' => [ + 'description' => 'The vertical offset of the image watermark relative to the output video. This parameter overrides the corresponding setting from a specified watermark template. The following value types are supported:'."\n" + ."\n" + .'* Integer: the pixel value of the vertical offset.'."\n" + ."\n" + .' * Unit: pixels.'."\n" + .' * Valid values: \\[8,4096].'."\n" + ."\n" + .'* Decimal: the ratio of the vertical offset to the height of the output video.'."\n" + ."\n" + .' * Valid values: (0,1).'."\n" + .' * The decimal number can be accurate to four decimal places, such as 0.9999. Excessive digits are automatically discarded.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '0.08', + 'backendName' => 'y', + ], + 'Height' => [ + 'description' => 'The height of the image watermark. This parameter overrides the corresponding setting from a specified watermark template. The following value types are supported:'."\n" + ."\n" + .'* Integer: the pixel value of the watermark height.'."\n" + ."\n" + .' *'."\n" + .' * Valid values: \\[8,4096].'."\n" + ."\n" + .'* Decimal: A decimal of the output video\'s height.'."\n" + ."\n" + .' * Valid values: (0,1).'."\n" + .' * The decimal number can be accurate to four decimal places, such as 0.9999. Excessive digits are automatically discarded.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '0.1', + 'backendName' => 'height', + ], + 'Invisible' => [ + 'visibility' => 'Public', + 'type' => 'string', + 'backendName' => 'invisible', + ], + 'Width' => [ + 'description' => 'The width of the image watermark. This parameter overrides the corresponding setting from a specified watermark template. The following value types are supported:'."\n" + ."\n" + .'* Integer: the pixel value of the watermark width.'."\n" + ."\n" + .' *'."\n" + .' * Valid values: \\[8,4096].'."\n" + ."\n" + .'* Decimal: A decimal of the output video\'s width.'."\n" + ."\n" + .' * Valid values: (0,1).'."\n" + .' * The decimal number can be accurate to four decimal places, such as 0.9999. Excessive digits are automatically discarded.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '0.1', + 'backendName' => 'width', + ], + 'TemplateId' => [ + 'description' => 'The ID of the watermark template.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '962e1332fa2d4e12bdfb76dd1402fcfa', + 'backendName' => 'templateId', + ], + ], + 'extendType' => 'true', + ], + 'backendName' => 'watermarks', + ], + 'Metadata' => [ + 'description' => 'A map of key-value pairs to be embedded as container-level metadata in the output file. Provided as a JSON string. Example: {"key1":"value1","key2":"value2"}.'."\n" + ."\n" + .'* Max key length: 64 characters.'."\n" + .'* Max value length: 512 characters.'."\n" + ."\n" + .'Max 4 key-value pairs.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'additionalProperties' => [ + 'description' => 'The metadata of the vector data, which is a JSON string in the MAP format. The key specifies the field name, and the value specifies the data type.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '{"AIGC": "xxx"}', + ], + 'backendName' => 'metadata', + ], + ], + ], + 'MediaConvertJobOverwiteParams' => [ + 'description' => 'Overwrite parameters for the MediaConvert task.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'Subtitles' => [ + 'description' => 'Subtitle stream configurations.'."\n", + 'visibility' => 'Public', + 'type' => 'array', + 'items' => [ + 'description' => 'Configuration for a single subtitle stream.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'Codec' => [ + 'description' => 'The encoding format for the subtitle stream.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'VTT', + 'backendName' => 'codec', + ], + ], + 'extendType' => 'true', + ], + 'backendName' => 'subtitles', + ], + ], + ], + 'MediaConvertJobWithoutDetail' => [ + 'description' => 'A summary of a MediaConvert task without detailed information.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '', + 'description' => 'The ID of the API request that created this task.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + 'backendName' => 'requestId', + ], + 'Message' => [ + 'title' => '', + 'description' => 'The reason for a task failure.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'The resource operated "%s" cannot be found', + 'backendName' => 'message', + ], + 'FinishTime' => [ + 'description' => 'The time the task finished processing, in UTC format (*yyyy-MM-dd*T*HH:mm:ss*Z).'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '2024-12-07T13:01:07Z', + 'backendName' => 'finishTime', + ], + 'UserData' => [ + 'title' => '', + 'description' => 'The user-defined data.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '{"info": "xxx"}', + 'backendName' => 'userData', + ], + 'Config' => [ + 'title' => '', + 'description' => 'The task configuration.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'Outputs' => [ + 'title' => '', + 'description' => 'The output configurations.'."\n", + 'visibility' => 'Public', + 'type' => 'array', + 'items' => [ + 'title' => '', + 'description' => 'The output configuration.'."\n", + 'visibility' => 'Public', + 'extendType' => 'true', + '$ref' => '#/components/schemas/MediaConvertOutput', + ], + 'backendName' => 'outputs', + 'itemName' => 'output', + ], + 'JobName' => [ + 'description' => 'The task name.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'Name', + 'backendName' => 'jobName', + ], + 'OutputGroups' => [ + 'title' => '', + 'description' => 'The output groups.'."\n", + 'visibility' => 'Public', + 'type' => 'array', + 'items' => [ + 'title' => '', + 'description' => 'The output group configuration.'."\n", + 'visibility' => 'Public', + 'extendType' => 'true', + '$ref' => '#/components/schemas/MediaConvertOutputGroup', + ], + 'backendName' => 'outputGroups', + 'itemName' => 'group', + ], + 'Inputs' => [ + 'title' => '', + 'description' => 'The input files for the task.'."\n", + 'visibility' => 'Public', + 'type' => 'array', + 'items' => [ + 'title' => '', + 'description' => 'The input file for the task.'."\n", + 'visibility' => 'Public', + 'extendType' => 'true', + '$ref' => '#/components/schemas/MediaConvertInput', + ], + 'backendName' => 'inputs', + 'itemName' => 'input', + ], + ], + 'backendName' => 'config', + ], + 'State' => [ + 'title' => '', + 'description' => 'The status of the task.'."\n" + ."\n" + .'* Inited: The task is initialized.'."\n" + .'* Running'."\n" + .'* Complete'."\n" + .'* Error'."\n" + .'* Cancelled'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'Inited', + 'backendName' => 'state', + ], + 'CreateTime' => [ + 'description' => 'The time the task was created, in UTC format (*yyyy-MM-dd*T*HH:mm:ss*Z).'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '2024-12-07T13:01:07Z'."\n", + 'backendName' => 'createTime', + ], + 'PipelineId' => [ + 'title' => '', + 'description' => 'The ID of the queue on which this task was processed.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '688c2a8bfa4e44ddbba0c8730db91b0c', + 'backendName' => 'pipelineId', + ], + 'ClientToken' => [ + 'title' => '', + 'description' => 'The idempotency token provided during the task creation request.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '****12e8864746a0a398****', + 'backendName' => 'clientToken', + ], + 'TriggerSource' => [ + 'title' => '', + 'description' => '', + 'visibility' => 'Private', + 'type' => 'string', + 'example' => 'Console', + 'backendName' => 'triggerSource', + ], + 'Code' => [ + 'title' => '', + 'description' => 'The error code for a failed task.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'InvalidParameter.ResourceNotFound', + 'backendName' => 'code', + ], + 'JobId' => [ + 'title' => '', + 'description' => 'The ID of the task.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '****d80e4e4044975745c14b****', + 'backendName' => 'jobId', + ], + ], + ], + 'MediaConvertMuxConfig' => [ + 'description' => '', + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'Segment' => [ + 'description' => '', + 'visibility' => 'Public', + 'backendName' => 'segment', + '$ref' => '#/components/schemas/MediaConvertSegment', + ], + ], + ], + 'MediaConvertOutput' => [ + 'title' => '', + 'description' => 'The output configuration.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'OutputFile' => [ + 'title' => '', + 'description' => 'The output file.'."\n", + 'visibility' => 'Public', + 'backendName' => 'outputFile', + '$ref' => '#/components/schemas/MediaObject', + ], + 'Priority' => [ + 'title' => '', + 'description' => 'The priority. Valid values: 1 to 10. A larger value indicates a higher priority. Default value: 6.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'maximum' => '10', + 'minimum' => '1', + 'example' => '6', + 'backendName' => 'priority', + ], + 'OverrideParams' => [ + 'description' => 'A JSON string containing parameters to overwrite the corresponding settings of the template.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '{}', + 'backendName' => 'overrideParams', + ], + 'Features' => [ + 'description' => 'The feature parameters.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '{}', + 'backendName' => 'features', + ], + 'TemplateId' => [ + 'title' => '', + 'description' => 'The ID of the transcoding template.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '****96e8864746a0b6f3****', + 'backendName' => 'templateId', + ], + 'Name' => [ + 'title' => '', + 'description' => 'The name of the output.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'output-video', + 'backendName' => 'name', + ], + ], + ], + 'MediaConvertOutputDetail' => [ + 'description' => 'The details for the output of a MediaConvert task.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'Status' => [ + 'title' => '', + 'description' => 'The task status. Valid values:'."\n" + ."\n" + .'* Init: Initializing the task.'."\n" + .'* Scheduled: The task is scheduled for processing.'."\n" + .'* Success: The task is completed.'."\n" + .'* Failed: The task failed.'."\n" + .'* Skipped: The task was skipped.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'Success', + 'backendName' => 'status', + ], + 'TaskId' => [ + 'title' => '', + 'description' => 'The task ID.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '******4215e042b3966ca5441e******', + 'backendName' => 'taskId', + ], + 'Message' => [ + 'title' => '', + 'description' => 'The reason for a task failure.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'The resource operated InputFile is bad'."\n", + 'backendName' => 'message', + ], + 'FinishTime' => [ + 'description' => 'The time the output task finished, in UTC format (*yyyy-MM-dd*T*HH:mm:ss*Z)'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '2024-12-07T13:01:07Z', + 'backendName' => 'finishTime', + ], + 'CreateTime' => [ + 'description' => 'The time the output task was created, in UTC format (*yyyy-MM-dd*T*HH:mm:ss*Z)'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '2024-12-07T06:06:58Z', + 'backendName' => 'createTime', + ], + 'Code' => [ + 'title' => '', + 'description' => 'The error code for a failed task.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'InvalidParameter.ResourceContentBad'."\n", + 'backendName' => 'code', + ], + 'Name' => [ + 'title' => '', + 'description' => 'The name of the output.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '720P-mp4', + 'backendName' => 'name', + ], + 'Result' => [ + 'description' => 'The detailed output results.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'OutputFile' => [ + 'description' => 'Details about the generated output file.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The type of the output file. Valid values:'."\n" + ."\n" + .'* OSS: an Object Storage Service (OSS) object.'."\n" + .'* Media: a media asset.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'OSS', + 'backendName' => 'type', + ], + 'Media' => [ + 'description' => 'The value depends on the Type field:'."\n" + ."\n" + .'* If Type is set to OSS, the value is the URL of the output file. The following formats are supported: oss://... and https://...'."\n" + .'* If Type is set to Media, the value is the ID of the media asset.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'oss://bucket/path/to/video.mp4'."\n", + 'backendName' => 'media', + ], + 'Url' => [ + 'description' => 'If Type is set to Media, this field provides the actual storage URL of the media asset.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'oss://bucket/path/to/video.mp4', + 'backendName' => 'url', + ], + ], + 'backendName' => 'outputFile', + ], + 'OutFileMeta' => [ + 'description' => 'The metadata of the audio and video streams.'."\n", + 'visibility' => 'Public', + 'backendName' => 'outFileMeta', + '$ref' => '#/components/schemas/MediaConvertOutputDetailFileMeta', + ], + ], + 'backendName' => 'result', + ], + ], + ], + 'MediaConvertOutputDetailFileMeta' => [ + 'description' => 'The metadata of a media file.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'VideoStreamInfoList' => [ + 'title' => '', + 'description' => 'The video stream information.'."\n", + 'visibility' => 'Public', + 'type' => 'array', + 'items' => [ + 'description' => 'The video stream metadata.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'Rotate' => [ + 'title' => '', + 'description' => 'The rotation angle applied to the video. Valid values: 0, 90, 180, and 270. Default value: 0.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '0', + 'backendName' => 'rotate', + ], + 'Codec_tag' => [ + 'title' => '', + 'description' => 'The tag of the codec.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '0x001b', + 'backendName' => 'codec_tag', + ], + 'Sar' => [ + 'title' => '', + 'description' => 'The sample aspect ratio.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '478:477', + 'backendName' => 'sar', + ], + 'Start_time' => [ + 'title' => '', + 'description' => 'The start time of the stream.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '1.473556', + 'backendName' => 'start_time', + ], + 'Fps' => [ + 'title' => '', + 'description' => 'The frame rate.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '25.0', + 'backendName' => 'fps', + ], + 'Index' => [ + 'title' => '', + 'description' => 'The index of this stream within the file.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '0', + 'backendName' => 'index', + ], + 'Duration' => [ + 'title' => '', + 'description' => 'The duration of the stream. Unit: seconds.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '403.039989', + 'backendName' => 'duration', + ], + 'Lang' => [ + 'title' => '', + 'description' => 'The language code for the stream.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'cn', + 'backendName' => 'lang', + ], + 'Codec_long_name' => [ + 'title' => '', + 'description' => 'The full name of the codec.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10', + 'backendName' => 'codec_long_name', + ], + 'PixFmt' => [ + 'title' => '', + 'description' => 'The pixel format.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'yuv420p', + 'backendName' => 'pixFmt', + ], + 'Bit_rate' => [ + 'title' => '', + 'description' => 'The bitrate.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '888.563', + 'backendName' => 'bit_rate', + ], + 'Profile' => [ + 'title' => '', + 'description' => 'The codec profile.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'High', + 'backendName' => 'profile', + ], + 'Has_b_frames' => [ + 'title' => '', + 'description' => 'Indicates whether the video stream contains B-frames. Valid value:'."\n" + ."\n" + .'* 0: None.'."\n" + .'* 1: One B-frame.'."\n" + .'* 2: Multiple consecutive B-frames.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '2', + 'backendName' => 'has_b_frames', + ], + 'Codec_time_base' => [ + 'description' => 'The time base used by the codec.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '1/50', + 'backendName' => 'codec_time_base', + ], + 'Dar' => [ + 'title' => '', + 'description' => 'The display aspect ratio.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '16:9', + 'backendName' => 'dar', + ], + 'Avg_fps' => [ + 'title' => '', + 'description' => 'The average frame rate.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '25.0', + 'backendName' => 'avg_fps', + ], + 'Codec_tag_string' => [ + 'title' => '', + 'description' => 'The tag of the codec.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '[27][0][0][0]', + 'backendName' => 'codec_tag_string', + ], + 'Codec_name' => [ + 'title' => '', + 'description' => 'The short name of the codec.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'h264', + 'backendName' => 'codec_name', + ], + 'Height' => [ + 'title' => '', + 'description' => 'The height of the video stream, in pixels.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '478', + 'backendName' => 'height', + ], + 'Level' => [ + 'title' => '', + 'description' => 'The codec level.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '31', + 'backendName' => 'level', + ], + 'Time_base' => [ + 'title' => '', + 'description' => 'The time base of the stream\'s presentation timestamps.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '1/90000', + 'backendName' => 'time_base', + ], + 'Width' => [ + 'title' => '', + 'description' => 'The width of the video stream, in pixels.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '848', + 'backendName' => 'width', + ], + 'NumFrames' => [ + 'title' => '', + 'description' => 'The total number of frames.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '10040', + 'backendName' => 'numFrames', + ], + ], + 'extendType' => 'true', + ], + 'backendName' => 'videoStreamInfoList', + 'itemName' => 'VideoStreamInfoList', + ], + 'AudioStreamInfoList' => [ + 'title' => '', + 'description' => 'The audio stream information.'."\n", + 'visibility' => 'Public', + 'type' => 'array', + 'items' => [ + 'description' => 'The audio stream metadata.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'CodecTag' => [ + 'title' => '', + 'description' => 'The tag of the codec.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '0x000f', + 'backendName' => 'codecTag', + ], + 'CodecTimeBase' => [ + 'title' => '', + 'description' => 'The time base used by the codec.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '1/44100', + 'backendName' => 'codecTimeBase', + ], + 'ChannelLayout' => [ + 'title' => '', + 'description' => 'The layout of the audio channels.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'stereo', + 'backendName' => 'channelLayout', + ], + 'StartTime' => [ + 'title' => '', + 'description' => 'The start time of the stream. Unit: seconds.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '1.473556', + 'backendName' => 'startTime', + ], + 'Index' => [ + 'title' => '', + 'description' => 'The index of this stream within the file.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '1', + 'backendName' => 'index', + ], + 'Duration' => [ + 'title' => '', + 'description' => 'The duration of the stream. Unit: seconds.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '403.039989', + 'backendName' => 'duration', + ], + 'Lang' => [ + 'title' => '', + 'description' => 'The language code for the stream.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'cn', + 'backendName' => 'lang', + ], + 'SampleFmt' => [ + 'title' => '', + 'description' => 'The audio sample format.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'fltp', + 'backendName' => 'sampleFmt', + ], + 'CodecName' => [ + 'title' => '', + 'description' => 'The short name of the codec.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'aac', + 'backendName' => 'codecName', + ], + 'Bitrate' => [ + 'title' => '', + 'description' => 'The bitrate.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '0.f', + 'backendName' => 'bitrate', + ], + 'Channels' => [ + 'title' => '', + 'description' => 'The number of audio channels.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '2', + 'backendName' => 'channels', + ], + 'Timebase' => [ + 'title' => '', + 'description' => 'The time base of the stream\'s presentation timestamps.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '1/90000', + 'backendName' => 'timebase', + ], + 'CodecTagString' => [ + 'title' => '', + 'description' => 'The tag of the codec.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '[15][0][0][0]', + 'backendName' => 'codecTagString', + ], + 'SampleRate' => [ + 'title' => '', + 'description' => 'The sample rate. Unit: Hz.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '44100', + 'backendName' => 'sampleRate', + ], + 'CodecLongName' => [ + 'title' => '', + 'description' => 'The full name of the codec.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'AAC (Advanced Audio Coding)', + 'backendName' => 'codecLongName', + ], + ], + 'extendType' => 'true', + ], + 'backendName' => 'audioStreamInfoList', + 'itemName' => 'AudioStreamInfoList', + ], + 'FileBasicInfo' => [ + 'title' => '', + 'description' => 'The basic information of the media file.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'FileUrl' => [ + 'title' => '', + 'description' => 'The URL of the file.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'http://bucket.oss-cn-shanghai.aliyuncs.com/path/to/file.m3u8', + 'backendName' => 'fileUrl', + ], + 'FileStatus' => [ + 'title' => '', + 'description' => 'The status of the file.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'Normal', + 'backendName' => 'fileStatus', + ], + 'MediaId' => [ + 'title' => '', + 'description' => 'The ID of the media asset.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '9066406c306771f0bfa35107e0c90102', + 'backendName' => 'mediaId', + ], + 'FileType' => [ + 'title' => '', + 'description' => 'Indicates if this is the source or a transcoded output. Valid values: source_file and transcode_file.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'source_file', + 'backendName' => 'fileType', + ], + 'FileName' => [ + 'title' => '', + 'description' => 'The name of the file.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'file.m3u8', + 'backendName' => 'fileName', + ], + 'Region' => [ + 'title' => '', + 'description' => 'The storage region of the file.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'cn-shanghai', + 'backendName' => 'region', + ], + 'FormatName' => [ + 'title' => '', + 'description' => 'The container format name.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'hls,applehttp', + 'backendName' => 'formatName', + ], + 'Duration' => [ + 'title' => '', + 'description' => 'The total duration of the media file. Unit: seconds.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '403.039999', + 'backendName' => 'duration', + ], + 'Height' => [ + 'title' => '', + 'description' => 'The height of the video, in pixels.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '478', + 'backendName' => 'height', + ], + 'Bitrate' => [ + 'title' => '', + 'description' => 'The video bitrate.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '888.563', + 'backendName' => 'bitrate', + ], + 'Width' => [ + 'title' => '', + 'description' => 'The width of the video, in pixels.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '848', + 'backendName' => 'width', + ], + 'FileSize' => [ + 'title' => '', + 'description' => 'The file size. Unit: bytes.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '31737', + 'backendName' => 'fileSize', + ], + ], + 'backendName' => 'fileBasicInfo', + ], + ], + ], + 'MediaConvertOutputGroup' => [ + 'description' => 'The output group configuration.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'GroupConfig' => [ + 'title' => '', + 'description' => 'The output group configuration.'."\n", + 'visibility' => 'Public', + 'backendName' => 'groupConfig', + '$ref' => '#/components/schemas/MediaConvertOutputGroupConfig', + ], + 'Outputs' => [ + 'title' => '', + 'description' => 'A list of individual output stream configurations. Each object in this array defines a specific rendition.'."\n", + 'visibility' => 'Public', + 'type' => 'array', + 'items' => [ + 'description' => 'The configuration for a single output stream.'."\n", + 'visibility' => 'Public', + 'extendType' => 'true', + '$ref' => '#/components/schemas/MediaConvertOutputGroupOutput', + ], + 'backendName' => 'outputs', + ], + 'Name' => [ + 'title' => '', + 'description' => 'The name of the output group.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'hls-group', + 'backendName' => 'name', + ], + ], + ], + 'MediaConvertOutputGroupConfig' => [ + 'title' => '', + 'description' => 'A MediaConvert output group configuration.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'OutputFileBase' => [ + 'description' => 'The directory where all files for this output group are stored.'."\n", + 'visibility' => 'Public', + 'backendName' => 'outputFileBase', + '$ref' => '#/components/schemas/MediaObject', + ], + 'ManifestName' => [ + 'title' => '', + 'description' => 'The filename for the manifest. This parameter is only applicable when Type is set to Hls or Dash.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'manifest', + 'backendName' => 'manifestName', + ], + 'Type' => [ + 'title' => '', + 'description' => 'The type of the output group. Valid values:'."\n" + ."\n" + .'* File: Generates one or more standalone files.'."\n" + .'* Hls: Generates HLS manifests.'."\n" + .'* Dash: Generates DASH manifests.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'Hls', + 'backendName' => 'type', + ], + ], + ], + 'MediaConvertOutputGroupDetail' => [ + 'title' => '', + 'description' => 'The result of a MediaConvert output group.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'Status' => [ + 'title' => '', + 'description' => 'The status of the output group task.'."\n" + ."\n" + .'* Init: The task is submitted.'."\n" + .'* Running'."\n" + .'* Success'."\n" + .'* Failed'."\n" + .'* Skipped'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'Success', + 'backendName' => 'status', + ], + 'TaskId' => [ + 'title' => '', + 'description' => 'The ID of the output group task.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '******22dad741d086a50325f9******', + 'backendName' => 'taskId', + ], + 'Message' => [ + 'title' => '', + 'description' => 'The reason for a task failure.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'The resource operated "InputFile" is bad', + 'backendName' => 'message', + ], + 'FinishTime' => [ + 'description' => 'The end time of the task.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '2025-03-21T01:48:41Z'."\n", + 'backendName' => 'finishTime', + ], + 'CreateTime' => [ + 'description' => 'The time the task was created.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '2025-03-21T01:48:41Z', + 'backendName' => 'createTime', + ], + 'Outputs' => [ + 'description' => 'The output details.'."\n", + 'visibility' => 'Public', + 'type' => 'array', + 'items' => [ + 'description' => 'The output details.'."\n", + 'visibility' => 'Public', + 'extendType' => 'true', + '$ref' => '#/components/schemas/MediaConvertOutputDetail', + ], + 'backendName' => 'outputs', + ], + 'Code' => [ + 'title' => '', + 'description' => 'The error code for the failed output group task.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'InvalidParameter.ResourceContentBad', + 'backendName' => 'code', + ], + 'Name' => [ + 'title' => '', + 'description' => 'The name of the output group.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'hls-group', + 'backendName' => 'name', + ], + ], + ], + 'MediaConvertOutputGroupOutput' => [ + 'description' => 'The configuration for a single output stream within an output group.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'Priority' => [ + 'description' => 'The processing priority for this output. Valid values: 1 to 10. A higher value indicates higher priority. Default value: 6.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '6', + 'backendName' => 'priority', + ], + 'OverrideParams' => [ + 'description' => 'A JSON string containing parameters to override the settings from the associated transcoding template.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '{}', + 'backendName' => 'overrideParams', + ], + 'Features' => [ + 'description' => 'The feature parameters.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '{}', + 'backendName' => 'features', + ], + 'OutputFileName' => [ + 'description' => 'The filename for this output. This path is relative to OutputFileBase defined in MediaConvertOutputGroupConfig. The final output path is {OutputFileBase}/{OutputFileName}.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '720p.mp4', + 'backendName' => 'outputFileName', + ], + 'TemplateId' => [ + 'description' => 'The ID of the transcoding template.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '****96e8864746a0b6f3****'."\n", + 'backendName' => 'templateId', + ], + 'Name' => [ + 'description' => 'A name to label this output. This is for identification purposes only and does not affect the filename.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'group-output', + 'backendName' => 'name', + ], + ], + ], + 'MediaConvertSegment' => [ + 'title' => '', + 'description' => 'Segment configuration during transcoding.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'ForceSegTime' => [ + 'title' => '', + 'description' => 'The points in time at which the video is forcibly segmented. Separate multiple points with commas (,). You can specify up to 10 points.'."\n" + ."\n" + .'* Format: {Point in time},{Point in time},{Point in time}.'."\n" + .'* Type: decimal. This parameter supports up to three decimal places.'."\n" + .'* Unit: seconds.'."\n" + .'* Example: 1,2,4,6,10,14,18, which specifies that the video is forcibly segmented at the 1st, 2nd, 4th, 6th, 10th, 14th, and 18th seconds.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '1,2', + 'backendName' => 'forceSegTime', + ], + 'Duration' => [ + 'title' => '', + 'description' => 'The length of the segment.'."\n" + ."\n" + .'* Unit: seconds.'."\n" + .'* Valid values: \\[1,60].'."\n" + .'* Default value: 10. A value of 10 will create segments at the 10s, 20s, 30s, and 40s marks of the video.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + 'backendName' => 'duration', + ], + ], + ], + 'MediaConvertTransConfig' => [ + 'title' => '', + 'description' => 'Transcoding configuration.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'IsCheckAudioBitrate' => [ + 'title' => '', + 'description' => 'Specifies whether to check the audio bitrate. Mutually exclusive with IsCheckVideoBitrateFail. IsCheckVideoBitrateFail has a higher priority.'."\n" + ."\n" + .'* true: checks the audio bitrate. If the source bitrate is lower than the target, the task will transcode using the source bitrate.'."\n" + ."\n" + .'* false: does not check the audio bitrate.'."\n" + ."\n" + .'* Default value:'."\n" + ."\n" + .' * If this parameter is not specified and the codec of the output audio is different from that of the input audio, the default value is false.'."\n" + .' * If this parameter is not specified and the codec of the output audio is the same as that of the input audio, the default value is true.'."\n", + 'visibility' => 'Public', + 'type' => 'boolean', + 'backendName' => 'isCheckAudioBitrate', + ], + 'AdjDarMethod' => [ + 'title' => '', + 'description' => 'The method for adjusting the resolution. This parameter takes effect only if both the Width and Height parameters are specified. You can use this parameter together with the LongShortMode parameter.'."\n" + ."\n" + .'* Valid values: rescale, crop, pad, and none.'."\n" + .'* Default value: none.'."\n" + .'*'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'rescale', + 'backendName' => 'adjDarMethod', + ], + 'IsCheckAudioBitrateFail' => [ + 'title' => '', + 'description' => 'Specifies whether to check the audio bitrate. Mutually exclusive with IsCheckAudioBitrate. This parameter has a higher priority.'."\n" + ."\n" + .'* true: checks the audio bitrate. If the source bitrate is lower than the target, the task will fail.'."\n" + .'* false: does not check the audio bitrate.'."\n" + .'* Default value: false.'."\n", + 'visibility' => 'Public', + 'type' => 'boolean', + 'backendName' => 'isCheckAudioBitrateFail', + ], + 'IsCheckVideoBitrateFail' => [ + 'title' => '', + 'description' => 'Specifies whether to check the video bitrate. Mutually exclusive with IsCheckVideoBitrate. This parameter has a higher priority.'."\n" + ."\n" + .'* true: checks the video bitrate. If the source bitrate is lower than the target, the task will fail.'."\n" + .'* false: does not check the video bitrate.'."\n" + .'* Default value: false.'."\n", + 'visibility' => 'Public', + 'type' => 'boolean', + 'backendName' => 'isCheckVideoBitrateFail', + ], + 'IsCheckReso' => [ + 'title' => '', + 'description' => 'Specifies whether to check the video resolution. Mutually exclusive with IsCheckResoFail. IsCheckResoFail has a higher priority.'."\n" + ."\n" + .'* true: checks the video resolution. If the source resolution (width or height) is smaller than the target, the task will transcode using the source resolution.'."\n" + .'* false: does not check the video resolution.'."\n" + .'* Default value: false.'."\n", + 'visibility' => 'Public', + 'type' => 'boolean', + 'backendName' => 'isCheckReso', + ], + 'IsCheckVideoBitrate' => [ + 'title' => '', + 'description' => 'Specifies whether to check the video bitrate. Mutually exclusive with IsCheckVideoBitrateFail. IsCheckVideoBitrateFail has a higher priority.'."\n" + ."\n" + .'* true: checks the video bitrate. If the source bitrate is lower than the target, the task will transcode using the source bitrate.'."\n" + .'* false: does not check the video bitrate.'."\n" + .'* Default value: false.'."\n", + 'visibility' => 'Public', + 'type' => 'boolean', + 'backendName' => 'isCheckVideoBitrate', + ], + 'TransMode' => [ + 'title' => '', + 'description' => 'The video bitrate control mode. This is only valid for H.264, H.265, and AV1 codecs and must be used with the correct Bitrate or Crf settings. Valid values:'."\n" + ."\n" + .'* CBR: Constant bitrate mode.'."\n" + .'* onepass: Typically used for Average bitrate mode (ABR). Faster than twopass.'."\n" + .'* twopass: Typically used for variable bitrate mode (VBR). Slower than onepass.'."\n" + .'* fixCRF: Constant Rate Factor (quality-based) mode.'."\n" + .'* If you specify the Bitrate parameter, the default value of this parameter is onepass. If you do not specify the Bitrate parameter, the default value of this parameter is fixCRF, and the default value of the Crf parameter is used.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'onepass', + 'backendName' => 'transMode', + ], + 'IsCheckResoFail' => [ + 'title' => '', + 'description' => 'Specifies whether to check the video resolution. Mutually exclusive with IsCheckReso. This parameter has a higher priority.'."\n" + ."\n" + .'* true: checks the video resolution. If the source resolution (width or height) is smaller than the target, the task will fail.'."\n" + .'* false: does not check the video resolution.'."\n" + .'* Default value: false.'."\n", + 'visibility' => 'Public', + 'type' => 'boolean', + 'backendName' => 'isCheckResoFail', + ], + ], + ], + 'MediaConvertVideo' => [ + 'title' => '', + 'description' => 'The configuration of a transcoded output.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'Bufsize' => [ + 'title' => '', + 'description' => 'The buffer size. It controls bitrate fluctuations. A larger value allows for more bitrate variation and potentially higher video quality.'."\n" + ."\n" + .'* Unit: Kbps.'."\n" + .'* Valid values: \\[1000,128000].'."\n" + .'* Default value: 6000.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '20000', + 'backendName' => 'bufsize', + ], + 'Qscale' => [ + 'title' => '', + 'description' => 'The video quality scale. This parameter applies to VBR mode. A higher value means lower video quality and a higher compression ratio.'."\n" + ."\n" + .'* This parameter takes effect only if Codec is set to H.264.'."\n" + .'* Valid values: \\[0,51].'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '13', + 'backendName' => 'qscale', + ], + 'ScanMode' => [ + 'title' => '', + 'description' => 'The scan mode. Valid values:'."\n" + ."\n" + .'* If you leave this parameter empty, the output follows the source\'s original scan mode.'."\n" + .'* auto: automatic deinterlacing'."\n" + .'* progressive'."\n" + .'* interlaced'."\n" + .'* By default, this parameter is left empty.'."\n" + ."\n" + .'Best practice: The interlaced scan mode saves data traffic than the progressive scan mode but provides poor image quality. Therefore, the latter is commonly used in mainstream video production.'."\n" + ."\n" + .'* If you set ScanMode to progressive or interlaced, but this scan mode does not match that of the input, the video fails to be transcoded.'."\n" + .'* To improve compatibility, leave this parameter empty or set it to auto.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'auto', + 'backendName' => 'scanMode', + ], + 'LongShortMode' => [ + 'title' => '', + 'description' => 'Specifies whether to enable orientation-adaptive scaling. This parameter takes effect if at least one of the Width and Height parameters is specified. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n" + .'* Default value: false.'."\n" + ."\n" + .'Best practice: Enable this feature when your inputs include both horizontal and vertical videos. This prevents videos from stretching.'."\n", + 'visibility' => 'Public', + 'type' => 'boolean', + 'enumValueTitles' => [ + 'true' => 'true', + 'false' => 'false', + ], + 'example' => 'true', + 'backendName' => 'longShortMode', + ], + 'Fps' => [ + 'title' => '', + 'description' => 'The frame rate of the video stream.'."\n" + ."\n" + .'* Unit: frames per second (FPS).'."\n" + .'* Valid values: (0,60].'."\n" + .'* Default value: the frame rate of the input file. If the original frame rate exceeds 60 FPS, 60 is used.'."\n" + .'* Recommended values: 24, 25, and 30.'."\n", + 'visibility' => 'Public', + 'type' => 'any', + 'example' => '25', + 'backendName' => 'fps', + ], + 'Gop' => [ + 'title' => '', + 'description' => 'The keyframe interval.'."\n" + ."\n" + .'* Set by time: The time interval, in seconds. Valid values: \\[1,100000].'."\n" + .'* Set by frame count: The number of frames. Valid values: \\[1,100000].'."\n" + .'* Default value: 10s.'."\n" + ."\n" + .'Best practice: Set this parameter to 2-7s to improve the Time-to-First-Frame and seeking performance.'."\n", + 'visibility' => 'Public', + 'type' => 'any', + 'example' => '10s', + 'backendName' => 'gop', + ], + 'Remove' => [ + 'title' => '', + 'description' => 'Specifies whether to delete the video stream. Valid values:'."\n" + ."\n" + .'* true: deletes the video stream. All video-related parameters are invalid.'."\n" + .'* false: retains the video stream.'."\n" + .'* Default value: false.'."\n", + 'visibility' => 'Public', + 'type' => 'boolean', + 'example' => 'false', + 'backendName' => 'remove', + ], + 'Bitrate' => [ + 'title' => '', + 'description' => 'The average bitrate of the output. If you use the CRB, ABR, or VBR bitrate control mode, you must specify Bitrate, and you must set TransMode to a valid value.'."\n" + ."\n" + .'* Unit: Kbps.'."\n" + .'* Valid values: -1 and \\[10,50000]. A value of -1 indicates that the original bitrate of the input is used.'."\n" + ."\n" + .'Best practices:'."\n" + ."\n" + .'* CBR: Set TransMode to CBR and Bitrate, Maxrate, and Bufsize to the same value.'."\n" + .'* ABR: Set TransMode to onepass and specify Bitrate. You can also specify Maxrate and Bufsize to control the bitrate range.'."\n" + .'* VBR: Set TransMode to twopass and specify Maxrate/BitrateBnd and Bufsize.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '6000', + 'backendName' => 'bitrate', + ], + 'Profile' => [ + 'title' => '', + 'description' => 'The codec profile.'."\n" + ."\n" + .'* This parameter takes effect only if Codec is set to H.264.'."\n" + .'* Valid values: baseline, main, and high.'."\n" + .'* Default value: high.'."\n" + ."\n" + .'Best practice: For multi-bitrate streaming, use baseline for the lowest quality rendition to ensure maximum compatibility with older devices. Use main or high for other renditions.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'high', + 'backendName' => 'profile', + ], + 'Crop' => [ + 'title' => '', + 'description' => 'Crops the video frame. You can set automatic black border removal or custom cropping.'."\n" + ."\n" + .'* Specify this parameter if the input resolution is greater than the output resolution. Do not specify AdjDarMethod if this parameter is specified.'."\n" + ."\n" + .'* To automatically remove black borders, set this parameter to border.'."\n" + ."\n" + .'* To use custom cropping, set the parameter in the format of {width}:{height}:{left}:{top}.'."\n" + ."\n" + .' * width: the width of the output video.'."\n" + .' * height: the height of the output video.'."\n" + .' * left: the distance between the left border of the output and that of the original frame.'."\n" + .' * top: the distance between the top border of the output and that of the original frame.'."\n" + ."\n" + .'Example: 1920:800:0:140.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '1920:800:0:140', + 'backendName' => 'crop', + ], + 'Codec' => [ + 'title' => '', + 'description' => 'The video codec.'."\n" + ."\n" + .'* Valid values: H.264, H.265, AV1, GIF, and WEBP.'."\n" + .'* Default value: H.264.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'H.264', + 'backendName' => 'codec', + ], + 'Maxrate' => [ + 'title' => '', + 'description' => 'The maximum bitrate of the output.'."\n" + ."\n" + .'* Unit: Kbps.'."\n" + .'* Valid values: \\[10,50000].'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10000', + 'backendName' => 'maxrate', + ], + 'Pad' => [ + 'title' => '', + 'description' => 'The black borders added to the video.'."\n" + ."\n" + .'* Specify this parameter if the input resolution is smaller than the output resolution. If you specify this parameter, do not specify IsCheckReso, IsCheckResoFail, or AdjDarMethod.'."\n" + ."\n" + .'* Format: {width}:{height}:{left}:{top}.'."\n" + ."\n" + .' * width: the width of the output video.'."\n" + .' * height: the height of the output video.'."\n" + .' * left: the distance between the left border of the output and that of the original frame.'."\n" + .' * top: the distance between the top border of the output and that of the original frame.'."\n" + ."\n" + .'Example: 1920:1080:0:140.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '1920:1080:0:140', + 'backendName' => 'pad', + ], + 'MaxFps' => [ + 'title' => '', + 'description' => 'The maximum frame rate.'."\n", + 'visibility' => 'Public', + 'type' => 'any', + 'example' => '25', + 'backendName' => 'maxFps', + ], + 'Crf' => [ + 'title' => '', + 'description' => 'The quality control factor. To use the CRF mode, you must specify Crf and set TransMode to fixCRF. A larger value means lower quality and a higher compression ratio.'."\n" + ."\n" + .'* Valid values: \\[20,51].'."\n" + .'* If Codec is set to H.264, the default value is 23. If Codec is set to H.265, the default value is 26. If Codec is set to AV1, the default value is 32.'."\n" + ."\n" + .'Best Practice:'."\n" + ."\n" + .'* A value of 0 specifies lossless quality. A value of 51 specifies the worst quality. A recommended range is \\[23, 29]. You can adjust the value based on the complexity of the image. If you increase the value by six, the bitrate is reduced by half. Under the same definition, you can set the value for an animated cartoon higher than that for a shot video.'."\n" + .'* CRF targets perceptual quality, not a fixed bitrate. Use it with Maxrate and Bufsize to control bitrate fluctuations.'."\n", + 'visibility' => 'Public', + 'type' => 'any', + 'example' => '23', + 'backendName' => 'crf', + ], + 'Height' => [ + 'title' => '', + 'description' => 'The height or short edge of the output. If LongShortMode is set to false or left empty, this parameter specifies the height of the output. If LongShortMode is set to true, this parameter specifies the short edge of the output.'."\n" + ."\n" + .'* Unit: pixel.'."\n" + ."\n" + .'* Valid values: \\[128,4096]. The value must be an even number.'."\n" + ."\n" + .'* Default value:'."\n" + ."\n" + .' * If neither Width nor Height is specified, the dimension of the input is used.'."\n" + .' * If only Width is specified, Height is auto-scaled.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1080', + 'backendName' => 'height', + ], + 'Width' => [ + 'title' => '', + 'description' => 'The width or long edge of the output. If LongShortMode is set to false or left empty, this parameter specifies the width of the output. If LongShortMode is set to true, this parameter specifies the long edge of the output.'."\n" + ."\n" + .'* Unit: pixel.'."\n" + ."\n" + .'* Valid values: \\[128,4096]. The value must be an even number.'."\n" + ."\n" + .'* Default value:'."\n" + ."\n" + .' * If neither Width nor Height is specified, the dimension of the input is used.'."\n" + .' * If only Height is specified, Width is auto-scaled.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1920', + 'backendName' => 'width', + ], + ], + ], + 'MediaConvertVolume' => [ + 'description' => 'The parameters for adjusting the audio volume.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'LoudnessRangeTarget' => [ + 'title' => '', + 'description' => 'The target loudness range.'."\n" + ."\n" + .'* This parameter takes effect only if Method is set to dynamic.'."\n" + .'* Unit: dB.'."\n" + .'* Valid values: \\[1,20].'."\n" + .'* Default value: 8.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '8', + 'backendName' => 'loudnessRangeTarget', + ], + 'TruePeak' => [ + 'title' => '', + 'description' => 'The maximum volume.'."\n" + ."\n" + .'* This parameter takes effect only if Method is set to dynamic.'."\n" + .'* Unit: dB.'."\n" + .'* Valid values: \\[-9,0].'."\n" + .'* Default value: -1.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '-1', + 'backendName' => 'truePeak', + ], + 'IntegratedLoudnessTarget' => [ + 'title' => '', + 'description' => 'The output volume.'."\n" + ."\n" + .'* This parameter takes effect only if Method is set to dynamic.'."\n" + .'* Unit: dB.'."\n" + .'* Valid values: \\[-70,-5].'."\n" + .'* Default value: -6.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '-6', + 'backendName' => 'integratedLoudnessTarget', + ], + 'Level' => [ + 'title' => '', + 'description' => 'The amount of gain to apply, relative to the input audio.'."\n" + ."\n" + .'* This parameter takes effect only if Method is set to linear.'."\n" + .'* Unit: dB.'."\n" + .'* Valid values: less than or equal to 20.'."\n" + .'* Default value: -20.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '-20', + 'backendName' => 'level', + ], + 'Method' => [ + 'title' => '', + 'description' => 'The volume adjustment method. Valid values:'."\n" + ."\n" + .'* auto'."\n" + .'* dynamic'."\n" + .'* linear'."\n" + .'* Default value: dynamic.'."\n" + ."\n" + .'<!---->'."\n" + ."\n" + .'*'."\n" + .'*'."\n" + .'*'."\n" + .'*'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'enumValueTitles' => [ + 'adaptive' => 'adaptive', + 'auto' => 'auto', + 'linear' => 'linear', + 'dynamic' => 'dynamic', + ], + 'example' => 'linear', + 'backendName' => 'method', + ], + ], + ], + 'MediaObject' => [ + 'title' => '', + 'description' => 'The media file.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'title' => '', + 'description' => 'The type of media source. Valid values:'."\n" + ."\n" + .'* OSS: an OSS object.'."\n" + .'* Media: a media asset.'."\n" + .'* ExternalURL: a publicly accessible external URL. This is not available for public use.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'OSS', + 'backendName' => 'type', + ], + 'Media' => [ + 'title' => '', + 'description' => 'The identifier for the media file.'."\n" + ."\n" + .'* If Type is set to OSS, the value is the URL of the media file. The following formats are supported: oss://... and https://...'."\n" + .'* If Type is set to Media, the value is the ID of the media asset.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'http://bucket.loction.aliyuncs.com/path/to/video.mp4', + 'backendName' => 'media', + ], + 'Url' => [ + 'visibility' => 'Public', + 'type' => 'string', + 'backendName' => 'url', + ], + ], + ], + 'Program' => [ + 'description' => 'The information about the program.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'GmtCreate' => [ + 'description' => 'The creation time.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '2024-04-02T00:58:19Z', + 'backendName' => 'gmtCreateUTC', + ], + 'ChannelName' => [ + 'description' => 'The name of the channel.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'MyChannel', + 'backendName' => 'channelName', + ], + 'SourceLocationName' => [ + 'description' => 'The name of the source location.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'MySourceLocation', + 'backendName' => 'sourceLocationName', + ], + 'AdBreaks' => [ + 'description' => 'The ad breaks.'."\n", + 'visibility' => 'Public', + 'type' => 'array', + 'items' => [ + 'description' => 'The ad break.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'TimeSignalSettings' => [ + 'description' => 'The TimeSignal configurations.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '{"segmentationEventID":0,"segmentationUPIDType":14,"segmentationUPID":"upid","segmentationTypeID":48,"segmentNumber":0,"segmentsExpected":0,"subSegmentNumber":1,"subSegmentsExpected":0}', + 'backendName' => 'timeSignalConfig', + ], + 'OffsetMillis' => [ + 'description' => 'The offset.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1000', + 'backendName' => 'offsetMillis', + ], + 'ChannelName' => [ + 'description' => 'The name of the channel.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'MyChannel', + 'backendName' => 'channelName', + ], + 'SourceLocationName' => [ + 'description' => 'The name of the source location.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'MySourceLocation', + 'backendName' => 'sourceLocationName', + ], + 'SpliceInsertSettings' => [ + 'description' => 'The SpliceInsert configurations.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '{"AvailNumber":0,"AvailExpected":0,"SpliceEventID":1,"UniqueProgramID":0}', + 'backendName' => 'spliceInsertConfig', + ], + 'SourceName' => [ + 'description' => 'The name of the source.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'MyAdSource', + 'backendName' => 'sourceName', + ], + 'ProgramName' => [ + 'description' => 'The name of the program.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'program_name', + 'backendName' => 'programName', + ], + 'MessageType' => [ + 'description' => 'MessageType'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'SPLICE_INSERT', + 'backendName' => 'messageTypeString', + ], + ], + 'extendType' => 'true', + ], + 'backendName' => 'adBreakDTOs', + ], + 'SourceType' => [ + 'description' => 'The source type.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'vodSource', + 'backendName' => 'sourceTypeString', + ], + 'Transition' => [ + 'description' => 'The program transition method.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '{"Type": "RELATIVE", "RelativePosition": "AFTER_PROGRAM", "RelativeProgram": "program2"}', + 'backendName' => 'transition', + ], + 'GmtModified' => [ + 'description' => 'The modification time.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '2024-04-02T00:58:19Z'."\n", + 'backendName' => 'gmtModifiedUTC', + ], + 'SourceName' => [ + 'description' => 'The name of the source.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'MySource', + 'backendName' => 'sourceName', + ], + 'ClipRange' => [ + 'description' => 'The information about the clip.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '{StartOffsetMillis: 213123, EndOffsetMillis: 213134}'."\n", + 'backendName' => 'clipRange', + ], + 'Arn' => [ + 'description' => 'The ARN of the program.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'acs:ims:mediaweaver:<regionId>:<userId>:program/myChannel/MyProgram', + 'backendName' => 'arn', + ], + 'ProgramName' => [ + 'description' => 'The name of the program.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'program1', + 'backendName' => 'programName', + ], + ], + ], + 'ScheduleData' => [ + 'description' => 'The program schedule information.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'EntryType' => [ + 'description' => 'The entry type.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* FillerSlate'."\n" + .'* program'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'enumValueTitles' => [ + 'FillerSlate' => 'FillerSlate', + 'program' => 'program', + ], + 'example' => 'program', + 'backendName' => 'entryType', + ], + 'SourceLocationName' => [ + 'description' => 'The name of the source location.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'MySourceLocation', + 'backendName' => 'sourceLocationName', + ], + 'AdBreaks' => [ + 'description' => 'The information about ad breaks.'."\n", + 'visibility' => 'Public', + 'type' => 'array', + 'items' => [ + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'OffsetMillis' => [ + 'description' => 'The time offset.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '100000', + 'backendName' => 'offsetMillis', + ], + 'TimeSignalSettings' => [ + 'description' => 'The TimeSignal configurations.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '{"segmentationEventID":0,"segmentationUPIDType":14,"segmentationUPID":"upid","segmentationTypeID":48,"segmentNumber":0,"segmentsExpected":0,"subSegmentNumber":1,"subSegmentsExpected":0}', + 'backendName' => 'timeSignalSettings', + ], + 'SourceLocationName' => [ + 'description' => 'The name of the source location.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'MySourceLocation', + 'backendName' => 'sourceLocationName', + ], + 'SpliceInsertSettings' => [ + 'description' => 'The SpliceInsert configurations.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '{"AvailNumber":0,"AvailExpected":0,"SpliceEventID":1,"UniqueProgramID":0}'."\n", + 'backendName' => 'spliceInsertSettings', + ], + 'SourceName' => [ + 'description' => 'The name of the source.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'MySource', + 'backendName' => 'sourceName', + ], + 'MessageType' => [ + 'description' => 'MessageType'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'SPLICE_INSERT', + 'backendName' => 'messageType', + ], + ], + 'extendType' => 'true', + 'description' => '', + ], + 'backendName' => 'adBreaks', + ], + 'SourceType' => [ + 'description' => 'The source type.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'vodSource', + 'backendName' => 'sourceType', + ], + 'SourceName' => [ + 'description' => 'The name of the source.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'MySource', + 'backendName' => 'sourceName', + ], + 'ApproximateDurationSeconds' => [ + 'description' => 'The scheduled playback duration.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '100000', + 'backendName' => 'approximateDurationSeconds', + ], + 'ApproximateStartTime' => [ + 'description' => 'The scheduled start time.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '1989128002313', + 'backendName' => 'approximateStartTimeUTC', + ], + 'ProgramName' => [ + 'description' => 'The name of the program.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'program1', + 'backendName' => 'programName', + ], + ], + ], + 'Source' => [ + 'description' => 'The source information.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'GmtCreate' => [ + 'description' => 'The creation time.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '2024-11-07T10:12:01Z', + 'backendName' => 'gmtCreateUTC', + ], + 'SourceLocationName' => [ + 'description' => 'The name of the source location.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'MySourceLocation', + 'backendName' => 'sourceLocationName', + ], + 'State' => [ + 'description' => 'The status of the source. 0: normal. 1: deleted.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + 'backendName' => 'state', + ], + 'SourceType' => [ + 'description' => 'The source type. Valid values: vodSource and liveSource.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'vodSource', + 'backendName' => 'sourceTypeString', + ], + 'GmtModified' => [ + 'description' => 'The modification time.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '2024-11-07T10:12:01Z', + 'backendName' => 'gmtModifiedUTC', + ], + 'SourceName' => [ + 'description' => 'The name of the source.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'MyVodSource', + 'backendName' => 'sourceName', + ], + 'HttpPackageConfigurations' => [ + 'description' => 'The source configuration.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '[{'."\n" + .' "sourceGroupName": "mySourceGroup-1",'."\n" + .' "relativePath": "group1/hls.m3u8",'."\n" + .' "packageType": "hls"'."\n" + .'}]', + 'backendName' => 'httpPackageConfigurations', + ], + 'Arn' => [ + 'description' => 'The ARN of the source.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'acs:ims:mediaweaver:<regionId>:<userId>:vodSource/mySourceLocation/mySource', + 'backendName' => 'arn', + ], + ], + ], + 'SourceLocation' => [ + 'description' => 'The source location information.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'GmtCreate' => [ + 'description' => 'The creation time.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '2023-09-12T07:15:52Z', + 'backendName' => 'gmtCreateUTC', + ], + 'SourceLocationName' => [ + 'description' => 'The name of the source location.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'MySourceLocation', + 'backendName' => 'sourceLocationName', + ], + 'State' => [ + 'description' => 'The status of the source location. 0: normal. 1: deleted.'."\n", + 'visibility' => 'Public', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + 'backendName' => 'state', + ], + 'GmtModified' => [ + 'description' => 'The modification time.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '2023-10-22T10:49:14Z', + 'backendName' => 'gmtModifiedUTC', + ], + 'SegmentDeliveryConfigurations' => [ + 'description' => 'The segment delivery server configurations.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'http://segmentdelivery.com', + 'backendName' => 'segmentDeliveryUrl', + ], + 'BaseUrl' => [ + 'description' => 'The base URL of the source location.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'http://xxxx.com', + 'backendName' => 'baseUrl', + ], + 'Arn' => [ + 'description' => 'The ARN of the source location.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'acs:ims:mediaweaver:<regionId>:<UserId>:sourcelocation/MySourceLocation', + 'backendName' => 'arn', + ], + ], + ], + 'TranspositionResult' => [ + 'description' => 'The translation result where hotwords are replaced with predefined translations.'."\n", + 'visibility' => 'Public', + 'type' => 'object', + 'properties' => [ + 'TranslatedText' => [ + 'title' => '', + 'description' => '* The translated text corresponding to the matched hotwords. Maximum length: 100 characters.'."\n" + .'* This field is only used in translation-related scenarios.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => '', + 'backendName' => 'translatedText', + ], + 'TargetLanguage' => [ + 'title' => '', + 'description' => '* The target language of the translation.'."\n" + .'* This field is only used in translation-related scenarios.'."\n", + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'zh', + 'backendName' => 'targetLanguage', + ], + ], + ], + ], + ], + 'apis' => [ + 'CreateUploadMedia' => [ + 'summary' => 'Obtains the upload URL and credential of a media asset and creates information about the media asset.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + ], + 'parameters' => [ + [ + 'name' => 'AppId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The application ID. Default value: app-1000000.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'app-1000000', + ], + ], + [ + 'name' => 'EntityId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The entity ID. You can call the CreateEntity operation to create an entity and specify a dynamic metadata structure.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '9e177cac2fb44f8b8c67b199fcc7bffd', + ], + ], + [ + 'name' => 'FileInfo', + 'in' => 'query', + 'schema' => [ + 'description' => 'The file information, which is in the JSON format and contains the following fields:'."\n" + ."\n" + .'* Type: required. The file type. Valid values: video, image, audio, text, and other.'."\n" + .'* Name: required. The file name without the extension.'."\n" + .'* Size: optional. The file size.'."\n" + .'* Ext: required. The file name extension.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{\\"Type\\":\\"video\\",\\"Name\\":\\"test.mp4\\",\\"Size\\":108078336,\\"Ext\\":\\"mp4\\"}', + ], + ], + [ + 'name' => 'UserData', + 'in' => 'query', + 'schema' => [ + 'description' => 'The user data. The value must be a JSON string. You can configure settings such as message callbacks.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{"MessageCallback":{"CallbackURL":"http://example.aliyundoc.com"},"Extend":{"localId":"*****","test":"www"}}', + ], + ], + [ + 'name' => 'UploadTargetConfig', + 'in' => 'query', + 'schema' => [ + 'description' => 'The destination storage address.'."\n" + ."\n" + .'Set StorageType to oss.'."\n" + ."\n" + .'Set StorageLocation to an address in ApsaraVideo VOD. You cannot set this field to an OSS URL.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{\\"StorageType\\":\\"oss\\",\\"StorageLocation\\":\\"outin-***.oss-cn-shanghai.aliyuncs.com\\"}', + ], + ], + [ + 'name' => 'MediaMetaData', + 'in' => 'query', + 'schema' => [ + 'description' => 'The metadata of the media asset, which is a JSON string that contains the following fields:'."\n" + ."\n" + .'Title: required.'."\n" + ."\n" + .'* The value can be up to 128 characters in length.'."\n" + .'* The value must be encoded in UTF-8.'."\n" + ."\n" + .'Description: optional.'."\n" + ."\n" + .'* The value can be up to 1,024 characters in length.'."\n" + .'* The value must be encoded in UTF-8.'."\n" + ."\n" + .'CateId: optional.'."\n" + ."\n" + .'Tags: optional.'."\n" + ."\n" + .'BusinessType: required. Valid values:'."\n" + ."\n" + .'* opening or ending if Type is set to video'."\n" + .'* default or cover if Type is set to image'."\n" + .'* subtitles or font if Type is set to text'."\n" + .'* watermark if Type is set to material'."\n" + .'* general CoverURL: optional.'."\n" + ."\n" + .'DynamicMetaData: The value is a string.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{\\"Title\\": \\"UploadTest\\", \\"Description\\": \\"UploadImageTest\\", \\"Tags\\": \\"tag1,tag2\\",\\"BusinessType\\":\\"cover\\"}', + ], + ], + [ + 'name' => 'PostProcessConfig', + 'in' => 'query', + 'schema' => [ + 'description' => 'The postprocessing configurations. You can specify this parameter if Type is set to video or audio.'."\n" + ."\n" + .'Set ProcessType to Workflow.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{\\"ProcessType\\":\\"Workflow\\",\\"ProcessID\\":\\"74ba870f1a4873a3ba238e0bf6fa9***\\"}', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'RequestId', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '4E84BE44-58A7-****-****-FBEBEA16EF94', + ], + 'MediaId' => [ + 'description' => 'The ID of the media asset.'."\n", + 'type' => 'string', + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + 'MediaURL' => [ + 'description' => 'The URL of the media asset.'."\n" + ."\n" + .'> If a domain name for Alibaba Cloud CDN (CDN) is specified, a CDN URL is returned. Otherwise, an OSS URL is returned. If the HTTP status code 403 is returned when you access the URL from your browser, the URL authentication feature of ApsaraVideo VOD is enabled. To resolve this issue, disable URL authentication or generate an authentication signature.'."\n", + 'type' => 'string', + 'example' => 'https://xxq-live-playback.oss-cn-shanghai.aliyuncs.com/capture/5d96d2b4-111b-4e5d-a0e5-20f44405bb55.mp4', + ], + 'FileURL' => [ + 'description' => 'The OSS URL of the file. The URL does not contain the information used for authentication.'."\n", + 'type' => 'string', + 'example' => 'http://outin-***.oss-cn-north-2-gov-1.aliyuncs.com/sv/40360f05-181f63c3110-0004-cd8e-27f-de3c9.mp4', + ], + 'UploadAddress' => [ + 'description' => 'The upload URL.'."\n" + ."\n" + .'> The returned upload URL is a Base64-encoded URL. You must decode the Base64-encoded upload URL before you use an SDK or call an API operation to upload media files. You need to parse UploadAddress only if you use OSS SDK or call an OSS API operation to upload media files.'."\n", + 'type' => 'string', + 'example' => 'eyJFbmRwb2ludCI6Imh0dHBzOi8vb3NzLWNuLXNoYW5naGFpLmFsaXl1bmNzLmNvbSIsIkJ1Y2tldCI6InN6aGQtdmlkZW8iLCJGaWxlTmFtZSI6InZvZC0yOTYzMWEvc3YvNTBmYTJlODQtMTgxMjdhZGRiMTcvNTBmYTJlODQtMTgxMjdhZGRiM***', + ], + 'UploadAuth' => [ + 'description' => 'The upload credential.'."\n" + ."\n" + .'> The returned upload credential is a Base64-encoded value. You must decode the Base64-encoded upload URL before you use an SDK or call an API operation to upload media files. You need to parse UploadAuth only if you use OSS SDK or call an OSS API operation to upload media files.'."\n", + 'type' => 'string', + 'example' => 'eyJBY2Nlc3NLZXlJZCI6IkxUQUk0Rm53bTk1dHdxQjMxR3IzSE5hRCIsIkFjY2Vzc0tleVNlY3JldCI6Ik9lWllKR0dTMTlkNkZaM1E3UVpJQmdmSVdnM3BPaiIsIkV4cGlyYXRpb24iOiI***', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"4E84BE44-58A7-****-****-FBEBEA16EF94\\",\\n \\"MediaId\\": \\"****20b48fb04483915d4f2cd8ac****\\",\\n \\"MediaURL\\": \\"https://xxq-live-playback.oss-cn-shanghai.aliyuncs.com/capture/5d96d2b4-111b-4e5d-a0e5-20f44405bb55.mp4\\",\\n \\"FileURL\\": \\"http://outin-***.oss-cn-north-2-gov-1.aliyuncs.com/sv/40360f05-181f63c3110-0004-cd8e-27f-de3c9.mp4\\",\\n \\"UploadAddress\\": \\"eyJTZWN1cml0a2VuIjoiQ0FJU3p3TjF****\\",\\n \\"UploadAuth\\": \\"eyJFbmRwb2ludCI6Imm****\\"\\n}","type":"json"}]', + 'title' => 'CreateUploadMedia', + 'description' => '* You can call this operation to obtain the upload URLs and credentials of audio and video files. You can also call this operation to obtain the upload URLs and credentials of images and auxiliary media assets.'."\n" + .'* Obtaining an upload URL and credential is essential for Intelligent Media Services (IMS) and is required in each upload operation.'."\n" + .'* If the video upload credential expires, you can call the RefreshUploadMedia operation to obtain a new upload credential. The default validity period of a video upload credential is 3,000 seconds.'."\n" + .'* After you upload a media asset, you can configure a callback to receive upload event notifications or call the GetMediaInfo operation to determine whether the media asset is uploaded based on the returned status.'."\n" + .'* The MediaId parameter returned by this operation can be used for media asset lifecycle management or media processing.'."\n" + .'* You can call this operation to upload media assets only to ApsaraVideo VOD, but not to your own Object Storage Service (OSS) buckets. To upload a media asset to your own OSS bucket, you can upload the file to your OSS bucket by using [OSS SDK](~~32006~~), and then call the [RegisterMediaInfo](~~441152~~) operation to register the file in the OSS bucket with the media asset library.'."\n" + .'* This operation is available only in the China (Shanghai), China (Beijing), and China (Shenzhen) regions.', + ], + 'CreateUploadStream' => [ + 'summary' => 'Obtains the upload URL and credential of a media stream.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + ], + 'parameters' => [ + [ + 'name' => 'MediaId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the media asset.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + ], + [ + 'name' => 'Definition', + 'in' => 'query', + 'schema' => [ + 'description' => 'The quality of the media stream. Valid values:'."\n" + ."\n" + .'* FD: low definition.'."\n" + .'* LD: standard definition.'."\n" + .'* SD: high definition.'."\n" + .'* HD: ultra-high definition.'."\n" + .'* OD: original quality.'."\n" + .'* 2K: 2K resolution.'."\n" + .'* 4K: 4K resolution.'."\n" + .'* SQ: standard sound quality.'."\n" + .'* HQ: high sound quality.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'HD', + ], + ], + [ + 'name' => 'FileExtension', + 'in' => 'query', + 'schema' => [ + 'description' => 'The file name extension of the media stream.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'MP4', + ], + ], + [ + 'name' => 'HDRType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The high dynamic range (HDR) format of the transcoded stream. Valid values:'."\n" + ."\n" + .'* HDR'."\n" + .'* HDR10'."\n" + .'* HLG'."\n" + .'* DolbyVision'."\n" + .'* HDRVivid'."\n" + .'* SDR+'."\n" + ."\n" + .'> '."\n" + ."\n" + .'* The value is not case-sensitive,'."\n" + ."\n" + .'* You can leave this parameter empty for non-HDR streams.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'HDR10', + ], + ], + [ + 'name' => 'UserData', + 'in' => 'query', + 'schema' => [ + 'description' => 'The user data.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{"MessageCallback":{"CallbackURL":"http://aliyundoc.com"}, "Extend":{"localId":"xxx","test":"www"}}', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'MediaId' => [ + 'description' => 'The ID of the media asset.'."\n", + 'type' => 'string', + 'example' => '****c469e944b5a856828dc2****', + ], + 'FileURL' => [ + 'description' => 'The Object Storage Service (OSS) URL of the file. The URL does not contain the information used for authentication.'."\n", + 'type' => 'string', + 'example' => 'http://outin-***.oss-cn-shanghai.aliyuncs.com/stream/48555e8b-181dd5a8c07/48555e8b-181dd5a8c07.mp4', + ], + 'UploadAddress' => [ + 'description' => 'The upload URL.'."\n" + ."\n" + .'> The returned upload URL is a Base64-encoded URL. You must decode the Base64-encoded upload URL before you use an SDK or call an API operation to upload media files. You need to parse UploadAddress only if you use OSS SDK or call an OSS API operation to upload media files.'."\n", + 'type' => 'string', + 'example' => 'eyJFbmRwb2ludCI6Imh0dHBzOi8vb3NzLWNuLXNoYW5naGFpLmFsaXl1bmNzLmNvbSIsIkJ1Y2tldCI6InN6aGQtdmlkZW8iLCJGaWxlTmFtZSI6InZvZC0yOTYzMWEvc3YvNTBmYTJlODQtMTgxMjdhZGRiMTcvNTBmYTJlODQtMTgxMjdhZGRiM***', + ], + 'UploadAuth' => [ + 'description' => 'The upload credential.'."\n" + ."\n" + .'> The returned upload credential is a Base64-encoded value. You must decode the Base64-encoded upload URL before you use an SDK or call an API operation to upload media files. You need to parse UploadAuth only if you use OSS SDK or call an OSS API operation to upload media files.'."\n", + 'type' => 'string', + 'example' => 'eyJBY2Nlc3NLZXlJZCI6IkxUQUk0Rm53bTk1dHdxQjMxR3IzSE5hRCIsIkFjY2Vzc0tleVNlY3JldCI6Ik9lWllKR0dTMTlkNkZaM1E3UVpJQmdmSVdnM3BPaiIsIkV4cGlyYXRpb24iOiI***', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"MediaId\\": \\"****c469e944b5a856828dc2****\\",\\n \\"FileURL\\": \\"http://outin-***.oss-cn-shanghai.aliyuncs.com/stream/48555e8b-181dd5a8c07/48555e8b-181dd5a8c07.mp4\\",\\n \\"UploadAddress\\": \\"eyJTZWN1cml0a2VuIjoiQ0FJU3p3TjF****\\",\\n \\"UploadAuth\\": \\"eyJFbmRwb2ludCI6Imm****\\"\\n}","type":"json"}]', + 'title' => 'CreateUploadStream', + 'description' => '* You can call this operation to upload only a local media stream. After the media stream is uploaded, it is associated with the specified media asset ID.'."\n" + .'* You can call this operation to upload media streams only to ApsaraVideo VOD, but not to your own Object Storage Service (OSS) buckets. To upload a media stream to your own OSS bucket, you can upload the file to your OSS bucket by using [OSS SDK](~~32006~~), and then call the [RegisterMediaStream](~~440765~~) operation to associate the media stream with the specified media asset ID.'."\n" + .'* This operation is available only in the China (Shanghai), China (Beijing), and China (Shenzhen) regions.', + ], + 'RefreshUploadMedia' => [ + 'summary' => 'Obtain a new upload credential for a media asset after its upload credential expires.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + ], + 'parameters' => [ + [ + 'name' => 'MediaId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the media asset.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '411bed50018971edb60b0764a0ec6***', + ], + ], + ], + 'responses' => [ + 200 => [ + 'headers' => [], + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'RequestId', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'MediaId' => [ + 'description' => 'The ID of the media asset.'."\n", + 'type' => 'string', + 'example' => 'c2e77390f75271ec802f0674a2ce6***', + ], + 'UploadAddress' => [ + 'description' => 'The upload URL.'."\n" + ."\n" + .'> The returned upload URL is a Base64-encoded URL. You must decode the Base64-encoded upload URL before you use an SDK or call an API operation to upload media files. You need to parse UploadAddress only if you use Object Storage Service (OSS) SDK or call an OSS API operation to upload media files.'."\n", + 'type' => 'string', + 'example' => 'eyJFbmRwb2ludCI6Imh0dHBzOi8vb3NzLWNuLXNoYW5naGFpLmFsaXl1bmNzLmNvbSIsIkJ1Y2tldCI6InN6aGQtdmlkZW8iLCJGaWxlTmFtZSI6InZvZC0yOTYzMWEvc3YvNTBmYTJlODQtMTgxMjdhZGRiMTcvNTBmYTJlODQtMTgxMjdhZGRiM***', + ], + 'UploadAuth' => [ + 'description' => 'The upload credential.'."\n" + ."\n" + .'> The returned upload credential is a Base64-encoded value. You must decode the Base64-encoded upload credential before you use an SDK or call an API operation to upload media files. You need to parse UploadAuth only if you use OSS SDK or call an OSS API operation to upload media files.'."\n", + 'type' => 'string', + 'example' => 'eyJBY2Nlc3NLZXlJZCI6IkxUQUk0Rm53bTk1dHdxQjMxR3IzSE5hRCIsIkFjY2Vzc0tleVNlY3JldCI6Ik9lWllKR0dTMTlkNkZaM1E3UVpJQmdmSVdnM3BPaiIsIkV4cGlyYXRpb24iOiI***', + ], + ], + 'description' => '', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"MediaId\\": \\"c2e77390f75271ec802f0674a2ce6***\\",\\n \\"UploadAddress\\": \\"eyJTZWN1cml0a2VuIjoiQ0FJU3p3TjF****\\",\\n \\"UploadAuth\\": \\"eyJFbmRwb2ludCI6Imm****\\"\\n}","type":"json"}]', + 'title' => 'RefreshUploadMedia', + 'description' => 'You can also call this operation to overwrite media files. After you obtain the upload URL of a media file, you can upload the media file again without changing the audio or video ID.'."\n", + ], + 'RegisterMediaStream' => [ + 'summary' => 'Registers a media stream.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceFEJXOS', + ], + ], + 'parameters' => [ + [ + 'name' => 'InputURL', + 'in' => 'query', + 'schema' => [ + 'description' => 'The URL of the media asset in another service. The URL is associated with the ID of the media asset in IMS. The URL cannot be modified once registered.'."\n" + ."\n" + .'Set this parameter to the OSS URL of the media asset. The following formats are supported:'."\n" + ."\n" + .'http(s)://example-bucket.oss-cn-shanghai.aliyuncs.com/example.mp4'."\n" + ."\n" + .'oss://example-bucket/example.mp4: In this format, it is considered by default that the region of the OSS bucket in which the media asset resides is the same as the region in which IMS is activated.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '', + ], + ], + [ + 'name' => 'MediaId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the media asset.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '5e778ec0027b71ed80a8909598506***', + ], + ], + [ + 'name' => 'UserData', + 'in' => 'query', + 'schema' => [ + 'description' => 'The user data.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{"MessageCallback":{"CallbackURL":"http://test.test.com"}, "Extend":{"localId":"xxx","test":"www"}}', + ], + ], + [ + 'name' => 'StreamTags', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'MediaId' => [ + 'description' => 'The ID of the media asset.'."\n", + 'type' => 'string', + 'example' => '5e778ec0027b71ed80a8909598506302', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"MediaId\\": \\"5e778ec0027b71ed80a8909598506302\\"\\n}","type":"json"}]', + 'title' => 'RegisterMediaStream', + 'description' => 'You can call this operation to register a media stream file in an Object Storage Service (OSS) bucket with Intelligent Media Services (IMS) and associate the media stream with the specified media asset ID.'."\n", + ], + 'GetUrlUploadInfos' => [ + 'summary' => 'Queries the information about URL-based upload jobs.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'JobIds', + 'in' => 'query', + 'schema' => [ + 'description' => 'The IDs of the upload jobs. You can specify one or more job IDs. You can obtain the job IDs from the response parameter JobId of the [UploadMediaByURL](~~86311~~) operation.'."\n" + ."\n" + .'* You can specify a maximum of 10 job IDs.'."\n" + .'* Separate the job IDs with commas (,).'."\n" + ."\n" + .'> You must specify either JobIds or UploadURLs. If you specify both parameters, only the value of JobIds takes effect.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'df2ac80b481346daa1db6a7c40edc7f8', + ], + ], + [ + 'name' => 'UploadURLs', + 'in' => 'query', + 'schema' => [ + 'description' => 'The upload URLs of the source files. You can specify a maximum of 10 URLs. Separate the URLs with commas (,).'."\n" + ."\n" + .'> '."\n" + ."\n" + .'* The URLs must be encoded.'."\n" + ."\n" + .'* If a media file is uploaded multiple times, we recommend that you specify the URL of the media file only once in this parameter.'."\n" + ."\n" + .'* You must specify either JobIds or UploadURLs. If you specify both parameters, only the value of JobIds takes effect.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'https://media.w3.org/2010/05/sintel/trailer.mp4', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'NonExists' => [ + 'description' => 'The job IDs or upload URLs that do not exist.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The job ID or upload URL that does not exist.'."\n" + ."\n" + .'Job IDs are returned for this parameter if you have specified JobIds in the request, and upload URLs are returned if you have specified UploadURLs in the request.'."\n", + 'type' => 'string', + 'example' => '[\'e3e71ae8e4a46e4893d8cadce50c3bd0\']', + ], + ], + 'URLUploadInfoList' => [ + 'description' => 'The details about URL-based upload jobs.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The information about the URL-based upload job. For more information, see the "URLUploadInfo: the information about a URL-based upload job" section of the "Basic data types" topic.'."\n", + 'type' => 'object', + 'properties' => [ + 'CreationTime' => [ + 'description' => 'The time when the upload job was created. The time follows the ISO 8601 standard in the *yyyy-MM-dd*T*HH:mm:ss*Z format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2021-11-07T10:03:37Z', + ], + 'Status' => [ + 'description' => 'The status of the upload job. For more information about the valid values of the parameter, see the "Status: the status of a URL-based upload job" section of the [Basic data types](~~52839~~) topic.'."\n", + 'type' => 'string', + 'example' => 'Normal', + ], + 'ErrorMessage' => [ + 'description' => 'The error message returned if the upload job failed.'."\n", + 'type' => 'string', + 'example' => 'Success', + ], + 'ErrorCode' => [ + 'description' => 'The error code returned if the upload job failed.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'CompleteTime' => [ + 'description' => 'The time when the upload job was complete. The time follows the ISO 8601 standard in the *yyyy-MM-dd*T*HH:mm:ss*Z format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2021-11-26 21:47:37', + ], + 'JobId' => [ + 'description' => 'The ID of the upload job.'."\n", + 'type' => 'string', + 'example' => '3829500c0fef429fa4ec1680b122d***', + ], + 'UserData' => [ + 'description' => 'The user data. The value is a JSON string.'."\n", + 'type' => 'string', + 'example' => '{"MessageCallback":"{"CallbackURL":"http://example.aliyundoc.com"}", "Extend":"{"localId":"***", "test":"www"}"}', + ], + 'UploadURL' => [ + 'description' => 'The upload URL of the source file.'."\n" + ."\n" + .'> A maximum of 100 URLs can be returned.'."\n", + 'type' => 'string', + 'example' => 'http://****.mp4', + ], + 'MediaId' => [ + 'description' => 'The ID of the uploaded media file.'."\n", + 'type' => 'string', + 'example' => '5014ca70f08171ecbf940764a0fd6***', + ], + 'FileSize' => [ + 'description' => 'The file size. Unit: bytes.'."\n", + 'type' => 'string', + 'example' => '64610', + ], + ], + ], + ], + ], + 'description' => '', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"NonExists\\": [\\n \\"[\'e3e71ae8e4a46e4893d8cadce50c3bd0\']\\"\\n ],\\n \\"URLUploadInfoList\\": [\\n {\\n \\"CreationTime\\": \\"2021-11-07T10:03:37Z\\",\\n \\"Status\\": \\"Normal\\",\\n \\"ErrorMessage\\": \\"Success\\",\\n \\"ErrorCode\\": \\"200\\",\\n \\"CompleteTime\\": \\"2021-11-26 21:47:37\\",\\n \\"JobId\\": \\"3829500c0fef429fa4ec1680b122d***\\",\\n \\"UserData\\": \\"{\\\\\\"MessageCallback\\\\\\":\\\\\\"{\\\\\\"CallbackURL\\\\\\":\\\\\\"http://example.aliyundoc.com\\\\\\"}\\\\\\", \\\\\\"Extend\\\\\\":\\\\\\"{\\\\\\"localId\\\\\\":\\\\\\"***\\\\\\", \\\\\\"test\\\\\\":\\\\\\"www\\\\\\"}\\\\\\"}\\",\\n \\"UploadURL\\": \\"http://****.mp4\\",\\n \\"MediaId\\": \\"5014ca70f08171ecbf940764a0fd6***\\",\\n \\"FileSize\\": \\"64610\\"\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'GetUrlUploadInfos', + 'description' => 'You can call this operation to query the information, including the upload status, user data, creation time, and completion time, about URL-based upload jobs based on the returned job IDs or the URLs used during the upload.'."\n" + ."\n" + .'If an upload job fails, you can view the error code and error message. If an upload job is successful, you can obtain the video ID.'."\n", + ], + 'UploadMediaByURL' => [ + 'summary' => 'Uploads an audio or video file based on the URL of the source file. You can upload multiple media files at a time.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + ], + 'parameters' => [ + [ + 'name' => 'UploadURLs', + 'in' => 'query', + 'schema' => [ + 'description' => 'The URL of the source file.'."\n" + ."\n" + .'* The URL must contain a file name extension, such as mp4 in `https://****.mp4`.'."\n" + ."\n" + .' * If the URL does not contain a file name extension, you can specify one by setting `FileExtension` in `UploadMetadata`.'."\n" + .' * If the URL contains a file name extension and `FileExtension` is also specified, the value of `FileExtension` prevails.'."\n" + ."\n" + .'* URL encoding is required. Separate multiple URLs with commas (,). You can specify a maximum of 20 URLs.'."\n" + ."\n" + .'* Special characters may cause upload failures. Therefore, you must encode URLs before you separate them with commas (,).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'https://diffurl.mp4', + ], + ], + [ + 'name' => 'AppId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The application ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'app-1000000', + ], + ], + [ + 'name' => 'UserData', + 'in' => 'query', + 'schema' => [ + 'description' => 'The user data. The value must be a JSON string. You can configure settings such as message callbacks.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{"MessageCallback":{"CallbackURL":"http://example.aliyundoc.com"},"Extend":{"localId":"xxx","test":"www"}}', + ], + ], + [ + 'name' => 'UploadTargetConfig', + 'in' => 'query', + 'schema' => [ + 'description' => 'The destination storage address.'."\n" + ."\n" + .'Set StorageType to oss.'."\n" + ."\n" + .'Set StorageLocation to an address in ApsaraVideo VOD. You cannot set this field to an OSS URL.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{"StorageType":"oss","StorageLocation":"outin-***.oss-cn-shanghai.aliyuncs.com"}', + ], + ], + [ + 'name' => 'MediaMetaData', + 'in' => 'query', + 'schema' => [ + 'description' => 'The metadata of the media file that you want to upload. The value must be a JSON string.'."\n" + ."\n" + .'* This parameter takes effect only if its value matches a URL that is specified in UploadURLs.'."\n" + .'* You must convert the JSON-formatted data, such as \\[UploadMetadata, UploadMetadata,…], into a JSON string.'."\n" + .'* For more information, see the "UploadMetadata" section of this topic.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '[{"SourceURL":"https://example.aliyundoc.com/video01.mp4","Title":"urlUploadTest"}]', + ], + ], + [ + 'name' => 'PostProcessConfig', + 'in' => 'query', + 'schema' => [ + 'description' => 'The postprocessing configurations. You can specify this parameter if Type is set to video or audio.'."\n" + ."\n" + .'Set ProcessType to Workflow.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{"ProcessType": "Workflow","ProcessID":"b72a06c6beeb4dcdb898feef067b1***"}', + ], + ], + [ + 'name' => 'EntityId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The entity ID. You can call the CreateEntity operation to create an entity and specify a dynamic metadata structure.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'd67281da3c8743b8823ad12976187***', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'RequestId', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '****83B7-7F87-4792-BFE9-63CD2137****', + ], + 'UploadJobs' => [ + 'description' => 'The information about upload jobs.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The details of the upload job.'."\n", + 'type' => 'object', + 'properties' => [ + 'JobId' => [ + 'description' => 'The ID of the upload job.'."\n", + 'type' => 'string', + 'example' => '20ce1e05dba64576b96e9683879f0***', + ], + 'SourceURL' => [ + 'description' => 'The URL of the source file that is uploaded in the upload job.'."\n", + 'type' => 'string', + 'example' => 'http://example****.mp4'."\n", + ], + 'MediaId' => [ + 'description' => 'The ID of the media asset.'."\n", + 'type' => 'string', + 'example' => 'f476988629f54a7b8a4ba90d1a6c7***', + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"****83B7-7F87-4792-BFE9-63CD2137****\\",\\n \\"UploadJobs\\": [\\n {\\n \\"JobId\\": \\"20ce1e05dba64576b96e9683879f0***\\",\\n \\"SourceURL\\": \\"http://example****.mp4\\\\n\\",\\n \\"MediaId\\": \\"f476988629f54a7b8a4ba90d1a6c7***\\"\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'UploadMediaByURL', + 'description' => '* If a callback is configured, you will receive an UploadByURLComplete event notification after the file is uploaded. You can query the upload status by calling the GetURLUploadInfos operation.'."\n" + .'* After a request is submitted, the upload job is queued as an asynchronous job in the cloud. You can query the status of the upload job based on information such as the URL and media asset ID that are returned in the event notification.'."\n" + .'* You can call this operation to upload media files that are not stored on a local server or device and must be uploaded by using URLs that are accessible over the Internet.'."\n" + .'* You can call this operation to upload media files only to ApsaraVideo VOD, but not to your own Object Storage Service (OSS) buckets. To upload a media file to an OSS bucket, pull the file to a local directory, use [OSS SDK](~~32006~~) to upload the file to an OSS bucket, and then call the [RegisterMediaInfo](~~441152~~) operation to register the file in the OSS bucket with the media asset library.'."\n" + .'* This operation is available only in the China (Shanghai), China (Beijing), and China (Shenzhen) regions.'."\n" + .'* You can call this operation to upload only audio and video files.', + 'requestParamsDescription' => '## UploadMetadata'."\n" + ."\n" + .'|Field|Type|Required|Description|'."\n" + .'|---|---|---|---|'."\n" + .'|SourceURL|String|Yes|The URL of the source file that you want to upload.|'."\n" + .'|Title|String|Yes|The title of the media asset. The value can be up to 128 bytes in length. The value must be encoded in UTF-8.|'."\n" + .'|FileSize|String|No|The file size.|'."\n" + .'|Description|String|No|The description of the media asset. The value can be up to 1024 bytes in length. The value must be encoded in UTF-8.|'."\n" + .'|CoverURL|String|No|The URL of the custom video thumbnail.|'."\n" + .'|CateId|String|No|The category ID.|'."\n" + .'|Tags|String|No|The tags that you want to add to the media asset. Each tag can be up to 32 bytes in length. You can set a maximum of 16 tags. Separate multiple tags with commas (,). The value is encoded in UTF-8.|'."\n" + .'|WorkflowId|String|No|The workflow ID.|'."\n" + .'|FileExtension|String|No|The file name extension.|'."\n" + .'|DynamicMetaData|String|No|The dynamic metadata. Example: "{"Uploader": "xxx"}".|'."\n" + .'|EntityId|String|No|The entity ID.|'."\n" + ."\n" + .'**Note*** The values of fields, such as Title, Description, and Tags, in UploadMetadata cannot contain emojis.'."\n" + ."\n" + .'* If a callback is configured, you can receive an UploadByURLComplete event notification when the media file is uploaded. You can also receive the FileUploadComplete and StreamTranscodeComplete event notifications.'."\n" + ."\n" + .'* If you upload multiple media files at a time, an event notification is sent for each media file when the media file is uploaded.', + ], + 'UploadStreamByURL' => [ + 'summary' => 'Uploads a media stream file based on the URL of the source file.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + ], + 'parameters' => [ + [ + 'name' => 'StreamURL', + 'in' => 'query', + 'schema' => [ + 'description' => 'The URL of the transcoded stream file.'."\n" + ."\n" + .'If the URL of the transcoded stream requires authentication, you must specify the authentication parameters in the stream URL and make sure that the URL can be accessed over the Internet.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'https://example.com/sample-stream.mp4', + ], + ], + [ + 'name' => 'MediaId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the media asset.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '411bed50018971edb60b0764a0ec6***', + ], + ], + [ + 'name' => 'Definition', + 'in' => 'query', + 'schema' => [ + 'description' => 'The quality of the media stream. Valid values:'."\n" + ."\n" + .'* FD: low definition.'."\n" + .'* LD: standard definition.'."\n" + .'* SD: high definition.'."\n" + .'* HD: ultra-high definition.'."\n" + .'* OD: original quality.'."\n" + .'* 2K: 2K resolution.'."\n" + .'* 4K: 4K resolution.'."\n" + .'* SQ: standard sound quality.'."\n" + .'* HQ: high sound quality.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'HD', + ], + ], + [ + 'name' => 'FileExtension', + 'in' => 'query', + 'schema' => [ + 'description' => 'The file name extension of the media stream.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'mp4', + ], + ], + [ + 'name' => 'HDRType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The high dynamic range (HDR) format of the transcoded stream. Valid values:'."\n" + ."\n" + .'* HDR'."\n" + .'* HDR10'."\n" + .'* HLG'."\n" + .'* DolbyVision'."\n" + .'* HDRVivid'."\n" + .'* SDR+'."\n" + ."\n" + .'> '."\n" + ."\n" + .'* The value is not case-sensitive,'."\n" + ."\n" + .'* You can leave this parameter empty for non-HDR streams.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'HDR10', + ], + ], + [ + 'name' => 'UserData', + 'in' => 'query', + 'schema' => [ + 'description' => 'The user data.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{"MessageCallback":{"CallbackURL":"http://test.test.com"}, "Extend":{"localId":"xxx","test":"www"}}', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******89-C21D-4B78-AE24-3788B8******', + ], + 'JobId' => [ + 'description' => 'The ID of the upload job.'."\n", + 'type' => 'string', + 'example' => '****cdb3e74639973036bc84****', + ], + 'MediaId' => [ + 'description' => 'The ID of the media asset.'."\n", + 'type' => 'string', + 'example' => '411bed50018971edb60b0764a0ec6***', + ], + 'FileURL' => [ + 'description' => 'The OSS URL of the file.'."\n", + 'type' => 'string', + 'example' => 'http://outin-***.oss-cn-shanghai.aliyuncs.com/stream/48555e8b-181dd5a8c07/48555e8b-181dd5a8c07.mp4', + ], + 'SourceURL' => [ + 'description' => 'The URL of the source file that is uploaded in the upload job.'."\n", + 'type' => 'string', + 'example' => 'https://example.com/sample-stream.mp4', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******89-C21D-4B78-AE24-3788B8******\\",\\n \\"JobId\\": \\"****cdb3e74639973036bc84****\\",\\n \\"MediaId\\": \\"411bed50018971edb60b0764a0ec6***\\",\\n \\"FileURL\\": \\"http://outin-***.oss-cn-shanghai.aliyuncs.com/stream/48555e8b-181dd5a8c07/48555e8b-181dd5a8c07.mp4\\",\\n \\"SourceURL\\": \\"https://example.com/sample-stream.mp4\\"\\n}","type":"json"}]', + 'title' => 'UploadStreamByURL', + 'description' => '* You can call this operation to pull a media stream file based on a URL and upload the file. After the media stream file is uploaded, the media stream is associated with the specified media asset ID.'."\n" + .'* You can call this operation to upload media stream files only to ApsaraVideo VOD, but not to your own Object Storage Service (OSS) buckets. To upload a media stream file to an OSS bucket, pull the file to a local directory, use [OSS SDK](~~32006~~) to upload the file to an OSS bucket, and then call the [RegisterMediaStream](~~440765~~) operation to associate the media stream with the specified media asset ID.'."\n" + .'* This operation is available only in the China (Shanghai), China (Beijing), and China (Shenzhen) regions.', + ], + 'CloseStreamToSearchLib' => [ + 'summary' => 'Stops the tagging and analysis process for a live stream media asset.', + 'path' => '', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceJQ6U8A', + ], + ], + 'parameters' => [ + [ + 'name' => 'SearchLibName', + 'in' => 'query', + 'schema' => [ + 'title' => '搜索库', + 'description' => 'The search library.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'Stream_xxx', + ], + ], + [ + 'name' => 'Namespace', + 'in' => 'query', + 'schema' => [ + 'description' => 'The namespace.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'name-1', + ], + ], + [ + 'name' => 'MediaId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the media asset.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'Success' => [ + 'description' => 'Indicates whether the request is successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'Code' => [ + 'description' => 'The return code.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'MediaId' => [ + 'description' => 'The ID of the media asset.'."\n", + 'type' => 'string', + 'example' => '****c469e944b5a856828dc2****'."\n", + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"Success\\": \\"true\\",\\n \\"Code\\": \\"200\\",\\n \\"MediaId\\": \\"****c469e944b5a856828dc2****\\\\n\\"\\n}","type":"json"}]', + 'title' => 'CloseStreamToSearchLib', + ], + 'GetStreamTagList' => [ + 'summary' => 'Retrieves tags of a live stream media asset.', + 'path' => '', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceJQ6U8A', + ], + ], + 'parameters' => [ + [ + 'name' => 'SearchLibName', + 'in' => 'query', + 'schema' => [ + 'title' => '搜索库', + 'description' => 'The name of the search library.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'Stream_xxx', + ], + ], + [ + 'name' => 'Namespace', + 'in' => 'query', + 'schema' => [ + 'description' => 'The namespace.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'name-1', + ], + ], + [ + 'name' => 'MediaId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the media asset.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '******b48fb04483915d4f2cd8******', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The start of the query time range, based on the tagging timestamp. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2025-04-23T02:26:00Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end of the query time range, based on the tagging timestamp. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2017-12-22T08:00:00Z', + ], + ], + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page. Valid values: 1 to 100. Default value: 10.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '10', + ], + ], + [ + 'name' => 'SortBy', + 'in' => 'query', + 'schema' => [ + 'description' => 'The sorting order for the results. Valid values:'."\n" + ."\n" + .'* StartTime:Desc (default): Sort by creation time in descending order.'."\n" + .'* StartTime:Asc: Sort by creation time in ascending order.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'StartTime:Asc', + ], + ], + [ + 'name' => 'NextToken', + 'in' => 'query', + 'schema' => [ + 'description' => 'The pagination token that is used in the next request to retrieve a new page of results.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '****73f33c91-d59383e8280b****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'Success' => [ + 'description' => 'Indicates whether the request is successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'Code' => [ + 'description' => 'The return code.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'NextToken' => [ + 'description' => 'The pagination token that is used in the next request to retrieve a new page of results.'."\n", + 'type' => 'string', + 'example' => '****73f33c91-d59383e8280b****', + ], + 'Total' => [ + 'description' => 'The total number of entries that are returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '163', + ], + 'StreamTagList' => [ + 'description' => 'The tag information.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'StartTime' => [ + 'description' => 'The start time. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2025-04-26T16:00:00Z', + ], + 'EndTime' => [ + 'description' => 'The end time. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2025-02-25T02:24:00Z', + ], + 'UserData' => [ + 'description' => 'The user-defined data.'."\n", + 'type' => 'string', + 'example' => '{"result":"xxx"}', + ], + ], + 'description' => '', + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"Success\\": \\"true\\",\\n \\"Code\\": \\"200\\",\\n \\"NextToken\\": \\"****73f33c91-d59383e8280b****\\",\\n \\"Total\\": 163,\\n \\"StreamTagList\\": [\\n {\\n \\"StartTime\\": \\"2025-04-26T16:00:00Z\\",\\n \\"EndTime\\": \\"2025-02-25T02:24:00Z\\",\\n \\"UserData\\": \\"{\\\\\\"result\\\\\\":\\\\\\"xxx\\\\\\"}\\"\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'GetStreamTagList', + ], + 'CreateStreamToSearchLib' => [ + 'summary' => 'Registers a live stream as a media asset.', + 'path' => '', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceJQ6U8A', + ], + ], + 'parameters' => [ + [ + 'name' => 'SearchLibName', + 'in' => 'query', + 'schema' => [ + 'title' => '搜索库', + 'description' => 'The search library.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'Stream_xxx', + ], + ], + [ + 'name' => 'Namespace', + 'in' => 'query', + 'schema' => [ + 'description' => 'The namespace.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'name-1', + ], + ], + [ + 'name' => 'Input', + 'in' => 'query', + 'schema' => [ + 'description' => 'The URL of the live stream to be ingested and analyzed.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'rtmp://xxx', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '******3B-0E1A-586A-AC29-742247******', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true: succeeded.'."\n" + .'* false: failed.'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'Code' => [ + 'description' => 'The status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'MediaId' => [ + 'description' => 'The ID of the media asset.'."\n", + 'type' => 'string', + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******3B-0E1A-586A-AC29-742247******\\",\\n \\"Success\\": \\"true\\",\\n \\"Code\\": \\"200\\",\\n \\"MediaId\\": \\"****20b48fb04483915d4f2cd8ac****\\"\\n}","type":"json"}]', + 'title' => 'CreateStreamToSearchLib', + ], + 'AddStreamTagToSearchLib' => [ + 'summary' => 'Adds tags for a specific live stream media asset.', + 'path' => '', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceJQ6U8A', + ], + ], + 'parameters' => [ + [ + 'name' => 'SearchLibName', + 'in' => 'query', + 'schema' => [ + 'title' => '搜索库', + 'description' => 'The search library.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'Stream_xxx', + ], + ], + [ + 'name' => 'Namespace', + 'in' => 'query', + 'schema' => [ + 'description' => 'The namespace.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'name-1', + ], + ], + [ + 'name' => 'MediaId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the media asset.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '******b48fb04483915d4f2cd8******', + ], + ], + [ + 'name' => 'MsgBody', + 'in' => 'query', + 'schema' => [ + 'description' => 'The message body.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{"startTime":1657684600793,"endTime":1657684600793,"userData":"{}"}', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'Id of the request'."\n", + 'type' => 'string', + 'example' => '*****ACB-44F2-5F2D-88D7-1283E70*****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request is successful. Default value: true. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'Code' => [ + 'description' => 'The return code.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'MediaId' => [ + 'description' => 'The ID of the media asset.'."\n", + 'type' => 'string', + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"*****ACB-44F2-5F2D-88D7-1283E70*****\\",\\n \\"Success\\": \\"true\\",\\n \\"Code\\": \\"200\\",\\n \\"MediaId\\": \\"****20b48fb04483915d4f2cd8ac****\\"\\n}","type":"json"}]', + 'title' => 'AddStreamTagToSearchLib', + ], + 'CreateSearchLib' => [ + 'summary' => 'Creates a search library to store media assets.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceJQ6U8A', + ], + ], + 'parameters' => [ + [ + 'name' => 'SearchLibName', + 'in' => 'query', + 'schema' => [ + 'title' => '搜索库', + 'description' => 'The name of the search library. The name can contain letters and digits and must start with a letter.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'test1', + ], + ], + [ + 'name' => 'SearchLibConfig', + 'in' => 'query', + 'schema' => [ + 'title' => '搜索库配置', + 'type' => 'string', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '******3B-0E1A-586A-AC29-742247******', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'Code' => [ + 'description' => 'The status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'SearchLibName' => [ + 'description' => 'The name of the search library.'."\n", + 'type' => 'string', + 'example' => 'test1', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******3B-0E1A-586A-AC29-742247******\\",\\n \\"Success\\": \\"true\\",\\n \\"Code\\": \\"200\\",\\n \\"SearchLibName\\": \\"test1\\"\\n}","type":"json"}]', + 'title' => 'CreateSearchLib', + ], + 'QuerySearchLib' => [ + 'summary' => 'Queries the information about a search library.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceJQ6U8A', + ], + ], + 'parameters' => [ + [ + 'name' => 'SearchLibName', + 'in' => 'query', + 'schema' => [ + 'title' => '搜索库', + 'description' => 'The name of the search library.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'test1', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'Success' => [ + 'description' => 'Indicates whether the call was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'Code' => [ + 'description' => 'The status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'SearchLibName' => [ + 'description' => 'The name of the search library.'."\n", + 'type' => 'string', + 'example' => 'test1', + ], + 'Status' => [ + 'description' => 'The status of the search library.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* normal'."\n" + .'* deleting'."\n" + .'* deleteFail', + 'type' => 'string', + 'enumValueTitles' => [ + 'normal' => 'normal', + 'deleting' => 'deleting', + 'deleteFail' => 'deleteFail', + ], + 'example' => 'normal', + ], + 'IndexInfo' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'IndexType' => [ + 'type' => 'string', + ], + 'IndexStatus' => [ + 'type' => 'string', + ], + 'IndexReadiness' => [ + 'type' => 'string', + ], + ], + ], + ], + 'SearchLibConfig' => [ + 'title' => '搜索库配置', + 'type' => 'string', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"Success\\": \\"true\\",\\n \\"Code\\": \\"200\\",\\n \\"SearchLibName\\": \\"test1\\",\\n \\"Status\\": \\"normal\\",\\n \\"IndexInfo\\": [\\n {\\n \\"IndexType\\": \\"face\\",\\n \\"IndexStatus\\": \\"Active\\",\\n \\"IndexReadiness\\": \\"Normal\\"\\n }\\n ],\\n \\"SearchLibConfig\\": \\"{\\\\\\"faceGroupIds\\\\\\":\\\\\\"xxx1,xxx2,xx3\\\\\\"}\\"\\n}","type":"json"}]', + 'title' => 'QuerySearchLib', + ], + 'ListSearchLib' => [ + 'summary' => 'Queries the information about search libraries.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '237778', + 'abilityTreeNodes' => [ + 'FEATUREiceJQ6U8A', + ], + ], + 'parameters' => [ + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page. Default value: 10. Maximum value: 50.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '10', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******3B-0E1A-586A-AC29-742247******', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful.'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'Code' => [ + 'description' => 'The status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'SearchLibInfoList' => [ + 'description' => 'Information about search libraries.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'Information about search libraries.'."\n", + 'type' => 'object', + 'properties' => [ + 'SearchLibName' => [ + 'description' => 'The search library.'."\n", + 'type' => 'string', + 'example' => 'faceSearchLib', + ], + 'Status' => [ + 'description' => 'The status of the search library.'."\n" + ."\n" + .'* normal'."\n" + .'* deleting'."\n" + .'* deleteFail'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'normal' => 'normal', + 'deleting' => 'deleting', + 'deleteFail' => 'deleteFail', + ], + 'example' => 'normal', + ], + 'IndexInfo' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'IndexType' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'face', + ], + 'IndexStatus' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'Active', + ], + 'IndexReadiness' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'Normal', + ], + ], + ], + ], + 'SearchLibConfig' => [ + 'title' => '搜索库配置', + 'type' => 'string', + ], + ], + ], + ], + 'Total' => [ + 'description' => 'The total number of entries returned.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '8', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******3B-0E1A-586A-AC29-742247******\\",\\n \\"Success\\": \\"true\\",\\n \\"Code\\": \\"200\\",\\n \\"SearchLibInfoList\\": [\\n {\\n \\"SearchLibName\\": \\"faceSearchLib\\",\\n \\"Status\\": \\"normal\\",\\n \\"IndexInfo\\": [\\n {\\n \\"IndexType\\": \\"face\\",\\n \\"IndexStatus\\": \\"Active\\",\\n \\"IndexReadiness\\": \\"Normal\\"\\n }\\n ],\\n \\"SearchLibConfig\\": \\"{\\\\\\"faceGroupIds\\\\\\":\\\\\\"xxx1,xxx2,xx3\\\\\\"}\\"\\n }\\n ],\\n \\"Total\\": 8\\n}","type":"json"}]', + 'title' => 'ListSearchLib', + ], + 'AlterSearchLib' => [ + 'summary' => 'Modifies a search library.', + 'path' => '', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceJQ6U8A', + ], + ], + 'parameters' => [ + [ + 'name' => 'SearchLibName', + 'in' => 'query', + 'schema' => [ + 'title' => '搜索库', + 'description' => '', + 'type' => 'string', + 'required' => true, + 'example' => 'test1', + ], + ], + [ + 'name' => 'SearchLibConfig', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => '{"faceGroupIds":"xxx1,xxx2,xx3"}', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => '', + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'Success' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'true', + ], + 'Code' => [ + 'description' => '', + 'type' => 'string', + 'example' => '200', + ], + 'SearchLibName' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'test1', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"Success\\": \\"true\\",\\n \\"Code\\": \\"200\\",\\n \\"SearchLibName\\": \\"test1\\"\\n}","type":"json"}]', + 'title' => 'AlterSearchLib', + ], + 'DropSearchLib' => [ + 'summary' => 'Deletes a search library and all media assets in the library.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'SearchLibName', + 'in' => 'query', + 'schema' => [ + 'title' => '搜索库', + 'description' => 'The name of the search library.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'test1', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '****63E8B7C7-4812-46AD-0FA56029AC86****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'Code' => [ + 'description' => 'The status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"****63E8B7C7-4812-46AD-0FA56029AC86****\\",\\n \\"Success\\": \\"true\\",\\n \\"Code\\": \\"200\\"\\n}","type":"json"}]', + 'title' => 'DropSearchLib', + ], + 'CreateSearchIndex' => [ + 'summary' => 'Creates a search index in a search library. Each search library can contain multiple indexes.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceJQ6U8A', + ], + ], + 'parameters' => [ + [ + 'name' => 'SearchLibName', + 'in' => 'query', + 'schema' => [ + 'title' => '搜索库', + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => 'test1', + ], + ], + [ + 'name' => 'IndexType', + 'in' => 'query', + 'schema' => [ + 'title' => '索引类别', + 'description' => 'The category of the index. Valid values:'."\n" + ."\n" + .'* mm: large visual model. You can use this model to describe complex visual features and identify and search for specific actions, movements, and events in videos, such as when athletes score a goal or get injured.'."\n" + ."\n" + .'> This feature is in the public preview phase. You can use this feature for free for 1,000 hours of videos.'."\n" + ."\n" + .'* face: face recognition. You can use the face recognition technology to describe face characteristics and automatically mark or search for faces in videos.'."\n" + .'* aiLabel: smart tagging. The smart tagging category is used to describe content such as subtitles and audio in videos. You can use the speech recognition technology to automatically extract, mark, and search for subtitles and dialog content from videos. This helps you quickly locate the video content that is related to specific topics or keywords.'."\n", + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'mm' => 'mm', + 'face' => 'face', + 'aiLabel' => 'aiLabel', + ], + 'example' => 'mm', + ], + ], + [ + 'name' => 'IndexStatus', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'Active' => 'Active', + 'Deactive' => 'Deactive', + ], + 'example' => 'Active', + ], + ], + [ + 'name' => 'IndexConfig', + 'in' => 'query', + 'schema' => [ + 'title' => '索引配置', + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => '{}', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => '', + 'type' => 'string', + 'example' => '*****ACB-44F2-5F2D-88D7-1283E70*****', + ], + 'Success' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'true', + ], + 'Code' => [ + 'description' => '', + 'type' => 'string', + 'example' => '200', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"*****ACB-44F2-5F2D-88D7-1283E70*****\\",\\n \\"Success\\": \\"true\\",\\n \\"Code\\": \\"200\\"\\n}","type":"json"}]', + 'title' => 'CreateSearchIndex', + 'description' => 'The large visual model feature is still in the public preview phase. You can use this feature for free for 1,000 hours of videos.'."\n", + ], + 'AlterSearchIndex' => [ + 'summary' => 'Modifies search index information including index status and configurations.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'SearchLibName', + 'in' => 'query', + 'schema' => [ + 'title' => '搜索库', + 'description' => 'The name of the search library.'."\n" + ."\n" + .'* If you leave this parameter empty, the search index is created in the default search library of Intelligent Media Service (IMS). Default value: ims-default-search-lib.'."\n" + .'* To query information about an existing search library, call the [QuerySearchLib](~~2584455~~) API operation.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => false, + 'example' => 'test1', + ], + ], + [ + 'name' => 'IndexType', + 'in' => 'query', + 'schema' => [ + 'title' => '索引类别', + 'description' => 'The category of the index. Valid values:'."\n" + ."\n" + .'* mm: large visual model.'."\n" + .'* face: face recognition.'."\n" + .'* aiLabel: smart tagging.'."\n", + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'mm' => 'mm', + 'face' => 'face', + 'aiLabel' => 'aiLabel', + ], + 'example' => 'mm', + ], + ], + [ + 'name' => 'IndexStatus', + 'in' => 'query', + 'schema' => [ + 'description' => 'The state of the index. Valid values:'."\n" + ."\n" + .'* active (default): the index is enabled.'."\n" + .'* Deactive: the index is not enabled.'."\n" + ."\n" + .'> You must specify either IndexStatus or IndexConfig.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'Active' => 'Active', + 'Deactive' => 'Deactive', + ], + 'example' => 'Active', + ], + ], + [ + 'name' => 'IndexConfig', + 'in' => 'query', + 'schema' => [ + 'title' => '索引配置', + 'description' => 'The configurations of the index.'."\n" + ."\n" + .'> You must specify either IndexStatus or IndexConfig.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{}', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '******3B-0E1A-586A-AC29-742247******', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'Code' => [ + 'description' => 'The status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******3B-0E1A-586A-AC29-742247******\\",\\n \\"Success\\": \\"true\\",\\n \\"Code\\": \\"200\\"\\n}","type":"json"}]', + 'title' => 'AlterSearchIndex', + ], + 'QuerySearchIndex' => [ + 'summary' => 'Queries the details of a search index.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'SearchLibName', + 'in' => 'query', + 'schema' => [ + 'title' => '搜索库', + 'description' => 'The name of the search library.'."\n" + ."\n" + .'* If you leave this parameter empty, the search index is created in the default search library of Intelligent Media Service (IMS). Default value: ims-default-search-lib.'."\n" + .'* To query information about an existing search library, call the [QuerySearchLib](~~2584455~~) API operation.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'test1', + ], + ], + [ + 'name' => 'IndexType', + 'in' => 'query', + 'schema' => [ + 'title' => '索引类别', + 'description' => 'The category of the index. Valid values:'."\n" + ."\n" + .'* mm: large visual model.'."\n" + .'* face: face recognition.'."\n" + .'* aiLabel: smart tagging.'."\n", + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'mm' => 'mm', + ], + 'example' => 'mm', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '4E84BE44-58A7-****-****-FBEBEA16EF94', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'Code' => [ + 'description' => 'The status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'SearchLibName' => [ + 'title' => '搜索库', + 'description' => 'The name of the search library.'."\n", + 'type' => 'string', + 'example' => 'test1', + ], + 'IndexType' => [ + 'title' => '索引类别', + 'description' => 'The category of the index. Valid values:'."\n" + ."\n" + .'* mm: large visual model.'."\n" + .'* face: face recognition.'."\n" + .'* aiLabel: smart tagging.'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'mm' => 'mm', + 'face' => 'face', + 'aiLabel' => 'aiLabel', + ], + 'example' => 'mm', + ], + 'IndexStatus' => [ + 'description' => 'The state of the index. Valid values:'."\n" + ."\n" + .'* active: the index is enabled.'."\n" + .'* Deactive: the index is not enabled.'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'Active' => 'Active', + 'Deactive' => 'Deactive', + ], + 'example' => 'Active', + ], + 'MediaTotal' => [ + 'description' => 'The total number of media assets.'."\n", + 'type' => 'string', + 'example' => '12', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"4E84BE44-58A7-****-****-FBEBEA16EF94\\",\\n \\"Success\\": \\"true\\",\\n \\"Code\\": \\"200\\",\\n \\"SearchLibName\\": \\"test1\\",\\n \\"IndexType\\": \\"mm\\",\\n \\"IndexStatus\\": \\"Active\\",\\n \\"MediaTotal\\": \\"12\\"\\n}","type":"json"}]', + 'title' => 'QuerySearchIndex', + ], + 'DropSearchIndex' => [ + 'summary' => 'Deletes a search index. After you delete a search index, the existing index data is cleared and index-based analysis, storage, and query are not supported for subsequent media assets.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'SearchLibName', + 'in' => 'query', + 'schema' => [ + 'title' => '搜索库', + 'description' => 'The name of the search library.'."\n" + ."\n" + .'* If you leave this parameter empty, the search index is created in the default search library of Intelligent Media Service (IMS). Default value: ims-default-search-lib.'."\n" + .'* To query information about an existing search library, call the [QuerySearchLib](~~2584455~~) API operation.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'test1', + ], + ], + [ + 'name' => 'IndexType', + 'in' => 'query', + 'schema' => [ + 'title' => '索引类别', + 'description' => 'The category of the index. Valid values:'."\n" + ."\n" + .'* mm: large visual model.'."\n" + .'* face: face recognition.'."\n" + .'* aiLabel: smart tagging.'."\n", + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'mm' => 'mm', + ], + 'example' => 'mm', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'Code' => [ + 'description' => 'The status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"Success\\": \\"true\\",\\n \\"Code\\": \\"200\\"\\n}","type":"json"}]', + 'title' => 'DropSearchIndex', + ], + 'QueryMediaIndexJob' => [ + 'summary' => 'Queries the indexing jobs enabled for a media asset.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'SearchLibName', + 'in' => 'query', + 'schema' => [ + 'title' => '搜索库', + 'description' => 'The name of the search library. Default value: ims-default-search-lib.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'test1', + ], + ], + [ + 'name' => 'MediaId', + 'in' => 'query', + 'schema' => [ + 'title' => '媒资ID', + 'description' => 'The ID of the media asset.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'c2e77390f75271ec802f0674a2ce6***', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '4E84BE44-58A7-****-****-FBEBEA16EF94', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'Code' => [ + 'description' => 'The response code.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'IndexJobInfoList' => [ + 'description' => 'The indexing jobs enabled for the media asset.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The indexing job enabled for the media asset.'."\n", + 'type' => 'object', + 'properties' => [ + 'GmtSubmit' => [ + 'description' => 'The time when the index job was submitted.'."\n", + 'type' => 'string', + 'example' => '2023-11-21 11:33:50', + ], + 'GmtFinish' => [ + 'description' => 'The end time of the indexing job.'."\n", + 'type' => 'string', + 'example' => '2023-11-21 11:33:51', + ], + 'IndexType' => [ + 'description' => 'The index type. Valid values:'."\n" + ."\n" + .'* mm: large visual model.'."\n" + .'* face: face recognition.'."\n" + .'* aiLabel: smart tagging.'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'mm' => 'mm', + 'face' => 'face', + 'aiLabel' => 'aiLabel', + ], + 'example' => 'mm', + ], + 'Status' => [ + 'description' => 'The job status. Valid values:'."\n" + ."\n" + .'* Running'."\n" + .'* Success'."\n" + .'* Fail'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'Running' => 'Running', + 'Success' => 'Success', + 'Fail' => 'Fail', + ], + 'example' => 'Success', + ], + ], + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"4E84BE44-58A7-****-****-FBEBEA16EF94\\",\\n \\"Success\\": \\"true\\",\\n \\"Code\\": \\"200\\",\\n \\"IndexJobInfoList\\": [\\n {\\n \\"GmtSubmit\\": \\"2023-11-21 11:33:50\\",\\n \\"GmtFinish\\": \\"2023-11-21 11:33:51\\",\\n \\"IndexType\\": \\"mm\\",\\n \\"Status\\": \\"Success\\"\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'QueryMediaIndexJob', + ], + 'SearchIndexJobRerun' => [ + 'summary' => 'Re-analyzes the search index jobs of media assets. You can re-run the search index jobs of up to 20 media assets in each request.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '236859', + 'abilityTreeNodes' => [ + 'FEATUREiceJQ6U8A', + ], + ], + 'parameters' => [ + [ + 'name' => 'SearchLibName', + 'in' => 'query', + 'schema' => [ + 'title' => '搜索库', + 'description' => 'The search library.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'test-1', + ], + ], + [ + 'name' => 'MediaIds', + 'in' => 'query', + 'schema' => [ + 'title' => '索引类别', + 'description' => 'The ID of the media asset. Separate multiple IDs with commas (,).'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '******b48fb04483915d4f2cd8******,******c48fb37407365d4f2cd8******', + ], + ], + [ + 'name' => 'Task', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of the job. Separate multiple types with commas (,).'."\n" + ."\n" + .'* aiLabel: smart tagging.'."\n" + .'* face: face recognition.'."\n" + .'* mm: large visual model.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'AiLabel,Face,Mm', + ], + ], + [ + 'name' => 'Namespace', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'Success' => [ + 'description' => 'Indicates whether the request is successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'Code' => [ + 'description' => 'The status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Data' => [ + 'description' => 'The response data.'."\n", + 'type' => 'object', + 'properties' => [ + 'MediaIdsNoExist' => [ + 'description' => 'The media asset IDs that do not exist.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The ID of the media asset.'."\n", + 'type' => 'string', + 'example' => '1c6ce34007d571ed94667630a6bc****', + ], + ], + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"Success\\": \\"true\\",\\n \\"Code\\": \\"200\\",\\n \\"Data\\": {\\n \\"MediaIdsNoExist\\": [\\n \\"1c6ce34007d571ed94667630a6bc****\\"\\n ]\\n }\\n}","type":"json"}]', + 'title' => 'SearchIndexJobRerun', + ], + 'InsertMediaToSearchLib' => [ + 'summary' => 'Adds a media asset in a search library. Before you call this operation, you must create a search library.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceJQ6U8A', + ], + ], + 'parameters' => [ + [ + 'name' => 'SearchLibName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the search library. Default value: ims-default-search-lib.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'test1', + ], + ], + [ + 'name' => 'MediaId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the media asset. Each media ID is unique. If you leave this parameter empty, a media ID is automatically generated for this parameter.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '411bed50018971edb60b0764a0ec6***', + ], + ], + [ + 'name' => 'MediaType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of the media asset. Valid values:'."\n" + ."\n" + .'* video (default)'."\n" + .'* image'."\n" + .'* audio'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'image' => 'image', + 'video' => 'video', + 'audio' => 'audio', + ], + 'example' => 'video', + ], + ], + [ + 'name' => 'Input', + 'in' => 'query', + 'schema' => [ + 'description' => 'The URL of the video, audio, or image file that you want to import to the search library.'."\n" + ."\n" + .'Note: Make sure that you specify a correct file name and the bucket in which the file resides is in the same region where this operation is called. Otherwise, the file cannot be found or the operation may fail.'."\n" + ."\n" + .'Specify an Object Storage Service (OSS) URL in the following format: oss://\\[Bucket name]/\\[File path]. For example, you can specify oss://\\[example-bucket-****]/\\[object_path-****].'."\n" + ."\n" + .'Specify an HTTP URL in the following format: public endpoint. For example, you can specify http://example-test-\\*\\*\\*\\*.mp4.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'http://example-test-****.mp4', + ], + ], + [ + 'name' => 'MsgBody', + 'in' => 'query', + 'schema' => [ + 'description' => 'The message body.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{}', + ], + ], + [ + 'name' => 'ImagesInput', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + ], + ], + [ + 'name' => 'Namespace', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '*****ACB-44F2-5F2D-88D7-1283E70*****', + ], + 'MediaId' => [ + 'description' => 'The ID of the media asset.'."\n", + 'type' => 'string', + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'Code' => [ + 'description' => 'The status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"*****ACB-44F2-5F2D-88D7-1283E70*****\\",\\n \\"MediaId\\": \\"****20b48fb04483915d4f2cd8ac****\\",\\n \\"Success\\": \\"true\\",\\n \\"Code\\": \\"200\\"\\n}","type":"json"}]', + 'title' => 'InsertMediaToSearchLib', + ], + 'UpdateMediaToSearchLib' => [ + 'summary' => 'Updates the media asset information in a search library.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceJQ6U8A', + ], + ], + 'parameters' => [ + [ + 'name' => 'SearchLibName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the search library. Default value: ims-default-search-lib.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'test1', + ], + ], + [ + 'name' => 'MediaId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the media asset.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '****019b82e24b37a1c2958dec38****', + ], + ], + [ + 'name' => 'MsgBody', + 'in' => 'query', + 'schema' => [ + 'description' => 'The message body.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '{}', + ], + ], + [ + 'name' => 'Namespace', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '4E84BE44-58A7-****-****-FBEBEA16EF94', + ], + 'MediaId' => [ + 'description' => 'The ID of the media asset.'."\n", + 'type' => 'string', + 'example' => '******b48fb04483915d4f2cd8******', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'Code' => [ + 'description' => 'The status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"4E84BE44-58A7-****-****-FBEBEA16EF94\\",\\n \\"MediaId\\": \\"******b48fb04483915d4f2cd8******\\",\\n \\"Success\\": \\"true\\",\\n \\"Code\\": \\"200\\"\\n}","type":"json"}]', + 'title' => 'UpdateMediaToSearchLib', + ], + 'DeleteMediaFromSearchLib' => [ + 'summary' => 'Deletes a specific media asset from a search library.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceJQ6U8A', + ], + ], + 'parameters' => [ + [ + 'name' => 'SearchLibName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the search library. Default value: ims-default-search-lib.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'test1', + ], + ], + [ + 'name' => 'MediaId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the media asset.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + ], + [ + 'name' => 'MsgBody', + 'in' => 'query', + 'schema' => [ + 'description' => 'The message body.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{}', + ], + ], + [ + 'name' => 'Namespace', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'MediaId' => [ + 'description' => 'The ID of the media asset.'."\n", + 'type' => 'string', + 'example' => '******b48fb04483915d4f2cd8******', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'Code' => [ + 'description' => 'The status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"MediaId\\": \\"******b48fb04483915d4f2cd8******\\",\\n \\"Success\\": \\"true\\",\\n \\"Code\\": \\"200\\"\\n}","type":"json"}]', + 'title' => 'DeleteMediaFromSearchLib', + ], + 'SearchMedia' => [ + 'summary' => 'Queries information about media assets based on the request parameters.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '140243', + 'abilityTreeNodes' => [ + 'FEATUREiceJQ6U8A', + ], + ], + 'parameters' => [ + [ + 'name' => 'Match', + 'in' => 'query', + 'schema' => [ + 'title' => '过滤条件', + 'description' => 'The filter conditions. For more information about the parameter syntax'."\n" + .'<props="china">, see [Media asset search protocols](~~2584256~~)</props>.', + 'type' => 'string', + 'required' => false, + 'example' => '', + ], + ], + [ + 'name' => 'SortBy', + 'in' => 'query', + 'schema' => [ + 'title' => '排序字段和排序顺序。多个使用英文逗号(,)分隔', + 'description' => 'The sort field and order. Separate multiple parameters with commas (,).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'utcCreate:Desc, utcModified:Desc', + ], + ], + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'title' => '当前页码。默认值为1', + 'description' => 'The page number. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'title' => '每页返回的数据条数。默认值为10,最大值为50', + 'description' => 'The number of entries per page. Default value: 10. Maximum value: 50.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '20', + ], + ], + [ + 'name' => 'EntityId', + 'in' => 'query', + 'schema' => [ + 'title' => '实体Id', + 'description' => 'The ID of the entity.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2d3bf1e35a1e42b5ab338d701efa7603', + ], + ], + [ + 'name' => 'ScrollToken', + 'in' => 'query', + 'schema' => [ + 'description' => 'The pagination identifier. The value can be up to 32 characters in length. The first time you call this operation for each new search, you do not need to specify this parameter. The value of this parameter is returned each time data records that meet the specified filter condition are found. The value is used to record the current position of queried data. Record the returned parameter value and set this parameter according to the following requirements during the next search: If you need to traverse all data that meets the filter criteria, you must set the ScrollToken parameter. If the value of the PageNo parameter exceeds 200, we recommend that you set this parameter to optimize search performance. You can only page backward. You can page a maximum of 1,000 entries in an operation.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'F8C4F642184DBDA5D93907A70AAE****', + ], + ], + [ + 'name' => 'SearchLibName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The search library.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'test-1', + ], + ], + [ + 'name' => 'CustomFilters', + 'in' => 'query', + 'schema' => [ + 'title' => '自定义过滤', + 'type' => 'string', + 'example' => '{}', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response schema.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '6F61C357-ACC0-57FB-876E-D58795335E59', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful.'."\n", + 'type' => 'string', + 'example' => 'True', + ], + 'Code' => [ + 'description' => 'The status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'MediaInfoList' => [ + 'title' => '符合要求的媒资集合', + 'description' => 'The media assets that meet the requirements.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The information about the media assets.'."\n", + 'type' => 'object', + 'properties' => [ + 'MediaId' => [ + 'title' => '媒资ID', + 'description' => 'The ID of the media asset.'."\n", + 'type' => 'string', + 'example' => '3b187b3620c8490886cfc2a9578c3ce6', + ], + 'MediaBasicInfo' => [ + 'title' => 'BasicInfo', + 'description' => 'The basic information about the media asset.'."\n", + 'type' => 'object', + 'properties' => [ + 'MediaId' => [ + 'title' => 'MediaId', + 'description' => 'The ID of the media asset.'."\n", + 'type' => 'string', + 'example' => '132bd600fc3c71ec99476732a78f6402', + ], + 'InputURL' => [ + 'title' => '待注册的媒资在相应系统中的地址', + 'description' => 'The address of the media asset that is waiting to be registered.'."\n", + 'type' => 'string', + 'example' => 'oss://clipres/longvideo/material/voice/prod/20220418/07d7c799f6054dc3bbef250854cf84981650248140427', + ], + 'MediaType' => [ + 'title' => '媒资媒体类型', + 'description' => 'The type of the media asset.'."\n", + 'type' => 'string', + 'example' => 'video', + ], + 'BusinessType' => [ + 'title' => '媒资业务类型', + 'description' => 'The business type of the media asset.'."\n", + 'type' => 'string', + 'example' => 'opening', + ], + 'Source' => [ + 'title' => '来源', + 'description' => 'The source of the media asset.'."\n", + 'type' => 'string', + 'example' => 'oss', + ], + 'Title' => [ + 'title' => '标题', + 'description' => 'The title of the media asset.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'Description' => [ + 'title' => '内容描述', + 'description' => 'The description of the media asset.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'Category' => [ + 'title' => '分类', + 'description' => 'The category of the media asset.'."\n", + 'type' => 'string', + 'example' => 'image', + ], + 'MediaTags' => [ + 'title' => '标签', + 'description' => 'The tags of the media asset.'."\n", + 'type' => 'string', + 'example' => 'tags,tags2'."\n", + ], + 'CoverURL' => [ + 'title' => '封面地址', + 'description' => 'The thumbnail URL of the media asset.'."\n", + 'type' => 'string', + 'example' => 'https://dtlive-bj.oss-cn-beijing.aliyuncs.com/cover/e694372e-4f5b-4821-ae09-efd064f27b63_large_cover_url.jpg', + ], + 'UserData' => [ + 'title' => '用户数据', + 'description' => 'The user data.'."\n", + 'type' => 'string', + 'example' => 'userData', + ], + 'Snapshots' => [ + 'title' => '截图', + 'description' => 'The snapshots of the media asset.'."\n", + 'type' => 'string', + 'example' => '[{"bucket":"example-bucket","count":"3","iceJobId":"******f48f0e4154976b2b8c45******","location":"oss-cn-beijing","snapshotRegular":"example.jpg","templateId":"******e6a6440b29eb60bd7c******"}]', + ], + 'Status' => [ + 'title' => '资源状态', + 'description' => 'The state of the media asset.'."\n", + 'type' => 'string', + 'example' => 'Normal', + ], + 'TranscodeStatus' => [ + 'title' => '转码状态', + 'description' => 'The transcoding status of the media asset.'."\n", + 'type' => 'string', + 'example' => 'Init', + ], + 'CreateTime' => [ + 'title' => '媒资创建时间', + 'description' => 'The time when the media asset was created.'."\n", + 'type' => 'string', + 'example' => '2020-12-01T19:48Z', + ], + 'ModifiedTime' => [ + 'title' => '媒资修改时间', + 'description' => 'The time when the media asset was modified.'."\n", + 'type' => 'string', + 'example' => '2020-12-01T19:48Z'."\n", + ], + 'DeletedTime' => [ + 'title' => '媒资删除时间', + 'description' => 'The time when the media asset was deleted.'."\n", + 'type' => 'string', + 'example' => '2020-12-01T19:48Z'."\n", + ], + 'SpriteImages' => [ + 'title' => '雪碧图', + 'description' => 'The image sprite of the media asset'."\n", + 'type' => 'string', + 'example' => '[{"bucket":"example-bucket","count":"32","iceJobId":"******83ec44d58b2069def2e******","location":"oss-cn-shanghai","snapshotRegular":"example/example-{Count}.jpg","spriteRegular":"example/example-{TileCount}.jpg","templateId":"******e438b14ff39293eaec25******","tileCount":"1"}]', + ], + 'CateId' => [ + 'description' => 'The ID of the category.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '44', + ], + 'Biz' => [ + 'description' => 'The business to which the media asset belongs.'."\n", + 'type' => 'string', + 'example' => 'IMS', + ], + 'UploadSource' => [ + 'description' => 'The upload source of the media asset.'."\n", + 'type' => 'string', + 'example' => 'general', + ], + 'CateName' => [ + 'description' => 'The name of the category.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'ReferenceId' => [ + 'description' => 'The custom ID of the media asset. The ID is a string that contains 6 to 64 characters. Only letters, digits, hyphens (-), and underscores (\\_) are supported. Each custom ID is unique.'."\n", + 'type' => 'string', + 'example' => '123-123', + ], + 'Namespace' => [ + 'type' => 'string', + ], + 'VisionDescription' => [ + 'type' => 'string', + ], + 'StreamStatus' => [ + 'title' => '流状态', + 'type' => 'string', + 'example' => 'Active', + ], + ], + ], + 'FileInfoList' => [ + 'title' => 'FileInfos', + 'description' => 'The information about the files.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The information about the file.'."\n", + 'type' => 'object', + 'properties' => [ + 'FileBasicInfo' => [ + 'title' => '文件基础信息,包含时长,大小等', + 'description' => 'The basic information about the file, such as the duration and size.'."\n", + 'type' => 'object', + 'properties' => [ + 'FileName' => [ + 'title' => '文件名', + 'description' => 'The name of the file.'."\n", + 'type' => 'string', + 'example' => '164265080291300080527050.wav', + ], + 'FileStatus' => [ + 'title' => '文件状态', + 'description' => 'The status of the file.'."\n", + 'type' => 'string', + 'example' => 'Normal', + ], + 'FileType' => [ + 'description' => 'The type of the file.'."\n", + 'type' => 'string', + 'example' => 'source_file', + ], + 'FileSize' => [ + 'title' => '文件大小(字节)', + 'description' => 'The size of the file in bytes.'."\n", + 'type' => 'string', + 'example' => '324784', + ], + 'FileUrl' => [ + 'title' => '文件oss地址', + 'description' => 'The Object Storage Service (OSS) URL of the file.'."\n", + 'type' => 'string', + 'example' => 'https://outin-d3f4681ddfd911ec99a600163e1403e7.oss-cn-shanghai.aliyuncs.com/sv/23d5cdd1-18180984899/23d5cdd1-18180984899.mp4', + ], + 'Region' => [ + 'title' => '文件存储区域', + 'description' => 'The region in which the file is stored.'."\n", + 'type' => 'string', + 'example' => 'cn-beijing', + ], + 'FormatName' => [ + 'title' => '封装格式', + 'description' => 'The encapsulation format of the file.'."\n", + 'type' => 'string', + 'example' => 'mov,mp4,m4a,3gp,3g2,mj2', + ], + 'Duration' => [ + 'title' => '时长', + 'description' => 'The duration of the file.'."\n", + 'type' => 'string', + 'example' => '60.00000'."\n", + ], + 'Bitrate' => [ + 'title' => '码率', + 'description' => 'The bitrate of the file.'."\n", + 'type' => 'string', + 'example' => '1912.13'."\n", + ], + 'Width' => [ + 'title' => '宽', + 'description' => 'The width of the file.'."\n", + 'type' => 'string', + 'example' => '1920', + ], + 'Height' => [ + 'title' => '高', + 'description' => 'The height of the file.'."\n", + 'type' => 'string', + 'example' => '480', + ], + 'CreateTime' => [ + 'description' => 'The time when the file was created.'."\n", + 'type' => 'string', + 'example' => '2022-05-30T02:02:17Z', + ], + 'ModifiedTime' => [ + 'description' => 'The time when the file was last modified.'."\n", + 'type' => 'string', + 'example' => '2021-12-10T12:19Z', + ], + 'ImagesInput' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + ], + 'AiData' => [ + 'description' => 'The details of the intelligent AI job.'."\n", + 'type' => 'object', + 'properties' => [ + 'AiLabelInfo' => [ + 'description' => 'The tags of the intelligent AI job.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The tag of the intelligent AI job.'."\n", + 'type' => 'object', + 'properties' => [ + 'FaceId' => [ + 'description' => 'The face ID.'."\n", + 'type' => 'string', + 'example' => '5FE19530C7A422197535FE74F5DB2B9F', + ], + 'LabelType' => [ + 'description' => 'The type of the tag.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'Source' => [ + 'description' => 'The source.'."\n", + 'type' => 'string', + 'example' => 'vision', + ], + 'Category' => [ + 'description' => 'The category.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'LabelName' => [ + 'description' => 'The name of the entity.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'LabelId' => [ + 'description' => 'The ID of the entity.'."\n", + 'type' => 'string', + 'example' => '10310250338', + ], + 'Occurrences' => [ + 'description' => 'The clips.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The clip.'."\n", + 'type' => 'object', + 'properties' => [ + 'Score' => [ + 'description' => 'The score.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => '0.75287705', + ], + 'Image' => [ + 'description' => 'The optimal face image encoded in Base64.'."\n", + 'type' => 'string', + 'example' => '99C64F6287', + ], + 'TableBatchSeqId' => [ + 'description' => 'The sequence ID of the vector table.'."\n", + 'type' => 'string', + 'example' => '85010D1', + ], + 'clipId' => [ + 'description' => 'The ID of the clip.'."\n", + 'type' => 'string', + 'example' => '5FE19530C7A422197535FE74F5DB2B9F', + ], + 'From' => [ + 'description' => 'The start time of the clip.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => '1.4', + ], + 'To' => [ + 'description' => 'The end time of the clip.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => '2.5', + ], + 'FinegrainName' => [ + 'description' => 'The fine-grained name of the entity.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'FinegrainId' => [ + 'description' => 'The fine-grained ID of the entity.'."\n", + 'type' => 'string', + 'example' => '10310250338', + ], + 'Content' => [ + 'description' => 'The text content.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'Tracks' => [ + 'description' => 'The track sequence.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The track.'."\n", + 'type' => 'object', + 'properties' => [ + 'Size' => [ + 'description' => 'The size of the bounding box.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => '50.2', + ], + 'Position' => [ + 'description' => 'The coordinates of the bounding box.'."\n", + 'type' => 'string', + 'example' => '468.0;67.0;615.0;267.0', + ], + 'Timestamp' => [ + 'description' => 'The timestamp of the track.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => '1.4', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'AsrInfo' => [ + 'description' => 'The information about audio files.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The audio information.'."\n", + 'type' => 'object', + 'properties' => [ + 'From' => [ + 'description' => 'The start time of the clip.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => '1.4', + ], + 'To' => [ + 'description' => 'The end time of the clip.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => '2.5', + ], + 'ClipId' => [ + 'description' => 'The ID of the clip.'."\n", + 'type' => 'string', + 'example' => '5FE19530C7A422197535FE74F5DB2B9F', + ], + 'Content' => [ + 'description' => 'The text content.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'Timestamp' => [ + 'description' => 'The timestamp of the clip.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => '1.4', + ], + ], + ], + ], + 'OcrInfo' => [ + 'description' => 'The subtitles.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The information about the subtitle.'."\n", + 'type' => 'object', + 'properties' => [ + 'From' => [ + 'description' => 'The start time of the clip.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => '1.4', + ], + 'To' => [ + 'description' => 'The end time of the clip.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => '2.5', + ], + 'ClipId' => [ + 'description' => 'The ID of the clip.'."\n", + 'type' => 'string', + 'example' => '5FE19530C7A422197535FE74F5DB2B9F', + ], + 'Content' => [ + 'description' => 'The text content.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'Timestamp' => [ + 'description' => 'The timestamp of the clip.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => '1.4', + ], + ], + ], + ], + ], + ], + 'AiRoughData' => [ + 'description' => 'The description of the AI job.'."\n", + 'type' => 'object', + 'properties' => [ + 'SaveType' => [ + 'description' => 'The save type.'."\n", + 'type' => 'string', + 'example' => 'TEXT', + ], + 'Status' => [ + 'description' => 'The data status.'."\n", + 'type' => 'string', + 'example' => 'SaveSuccess', + ], + 'AiJobId' => [ + 'description' => 'The ID of the AI job.'."\n", + 'type' => 'string', + 'example' => 'cd35b0b0025f71edbfcb472190a9xxxx', + ], + 'Result' => [ + 'description' => 'The results of the AI job.'."\n", + 'type' => 'string', + 'example' => 'http://xxxx.json', + ], + 'AiCategory' => [ + 'description' => 'TV Series'."\n", + 'type' => 'string', + 'example' => 'TV series'."\n", + ], + ], + ], + 'IndexStatusList' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'IndexType' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'mm', + ], + 'IndexStatus' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'Success', + ], + ], + ], + ], + 'CustomFields' => [ + 'title' => '自定义过滤参数', + 'type' => 'string', + 'example' => '{}', + ], + ], + ], + ], + 'ScrollToken' => [ + 'description' => 'The pagination identifier.'."\n", + 'type' => 'string', + 'example' => 'F8C4F642184DBDA5D93907A70AAE****', + ], + 'Total' => [ + 'description' => 'The total number of media assets that meet the conditions.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '163', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6F61C357-ACC0-57FB-876E-D5879533****\\",\\n \\"Success\\": \\"True\\",\\n \\"Code\\": \\"200\\",\\n \\"MediaInfoList\\": [\\n {\\n \\"MediaId\\": \\"3b187b3620c8490886cfc2a9578c****\\",\\n \\"MediaBasicInfo\\": {\\n \\"MediaId\\": \\"132bd600fc3c71ec99476732a78f****\\",\\n \\"InputURL\\": \\"oss://clipres/longvideo/material/voice/prod/20220418/07d7c799f6054dc3bbef250854cf8498165024814****\\",\\n \\"MediaType\\": \\"video\\",\\n \\"BusinessType\\": \\"opening\\",\\n \\"Source\\": \\"oss\\",\\n \\"Title\\": \\"智能横屏转竖屏\\",\\n \\"Description\\": \\"对这个视频进行转码处理了\\",\\n \\"Category\\": \\"image\\",\\n \\"MediaTags\\": \\"tags,tags2\\\\n\\",\\n \\"CoverURL\\": \\"https://dtlive-bj.oss-cn-beijing.aliyuncs.com/cover/e694372e-4f5b-4821-ae09-efd064f2****_large_cover_url.jpg\\",\\n \\"UserData\\": \\"userData\\",\\n \\"Snapshots\\": \\"[{\\\\\\"bucket\\\\\\":\\\\\\"example-bucket\\\\\\",\\\\\\"count\\\\\\":\\\\\\"3\\\\\\",\\\\\\"iceJobId\\\\\\":\\\\\\"******f48f0e4154976b2b8c45******\\\\\\",\\\\\\"location\\\\\\":\\\\\\"oss-cn-beijing\\\\\\",\\\\\\"snapshotRegular\\\\\\":\\\\\\"example.jpg\\\\\\",\\\\\\"templateId\\\\\\":\\\\\\"******e6a6440b29eb60bd7c******\\\\\\"}]\\",\\n \\"Status\\": \\"Normal\\",\\n \\"TranscodeStatus\\": \\"Init\\",\\n \\"CreateTime\\": \\"2020-12-01T19:48Z\\",\\n \\"ModifiedTime\\": \\"2020-12-01T19:48Z\\\\n\\",\\n \\"DeletedTime\\": \\"2020-12-01T19:48Z\\\\n\\",\\n \\"SpriteImages\\": \\"[{\\\\\\"bucket\\\\\\":\\\\\\"example-bucket\\\\\\",\\\\\\"count\\\\\\":\\\\\\"32\\\\\\",\\\\\\"iceJobId\\\\\\":\\\\\\"******83ec44d58b2069def2e******\\\\\\",\\\\\\"location\\\\\\":\\\\\\"oss-cn-shanghai\\\\\\",\\\\\\"snapshotRegular\\\\\\":\\\\\\"example/example-{Count}.jpg\\\\\\",\\\\\\"spriteRegular\\\\\\":\\\\\\"example/example-{TileCount}.jpg\\\\\\",\\\\\\"templateId\\\\\\":\\\\\\"******e438b14ff39293eaec25******\\\\\\",\\\\\\"tileCount\\\\\\":\\\\\\"1\\\\\\"}]\\",\\n \\"CateId\\": 44,\\n \\"Biz\\": \\"IMS\\",\\n \\"UploadSource\\": \\"general\\",\\n \\"CateName\\": \\"子分类1\\",\\n \\"ReferenceId\\": \\"123-123\\",\\n \\"Namespace\\": \\"name-1\\",\\n \\"VisionDescription\\": \\"足球进球\\",\\n \\"StreamStatus\\": \\"Active\\"\\n },\\n \\"FileInfoList\\": [\\n {\\n \\"FileBasicInfo\\": {\\n \\"FileName\\": \\"164265080291300080527050.wav\\",\\n \\"FileStatus\\": \\"Normal\\",\\n \\"FileType\\": \\"source_file\\",\\n \\"FileSize\\": \\"324784\\",\\n \\"FileUrl\\": \\"https://outin-d3f4681ddfd911ec99a600163e1403e7.oss-cn-shanghai.aliyuncs.com/sv/23d5cdd1-18180984899/23d5cdd1-1818098****.mp4\\",\\n \\"Region\\": \\"cn-beijing\\",\\n \\"FormatName\\": \\"mov,mp4,m4a,3gp,3g2,mj2\\",\\n \\"Duration\\": \\"60.00000\\\\n\\",\\n \\"Bitrate\\": \\"1912.13\\\\n\\",\\n \\"Width\\": \\"1920\\",\\n \\"Height\\": \\"480\\",\\n \\"CreateTime\\": \\"2022-05-30T02:02:17Z\\",\\n \\"ModifiedTime\\": \\"2021-12-10T12:19Z\\",\\n \\"ImagesInput\\": \\"{}\\"\\n }\\n }\\n ],\\n \\"AiData\\": {\\n \\"AiLabelInfo\\": [\\n {\\n \\"FaceId\\": \\"5FE19530C7A422197535FE74F5DB****\\",\\n \\"LabelType\\": \\"物体\\",\\n \\"Source\\": \\"vision\\",\\n \\"Category\\": \\"交通工具\\",\\n \\"LabelName\\": \\"车\\",\\n \\"LabelId\\": \\"10310250338\\",\\n \\"Occurrences\\": [\\n {\\n \\"Score\\": 0.75287705,\\n \\"Image\\": \\"99C64F6287\\",\\n \\"TableBatchSeqId\\": \\"85010D1\\",\\n \\"clipId\\": \\"5FE19530C7A422197535FE74F5DB****\\",\\n \\"From\\": 1.4,\\n \\"To\\": 2.5,\\n \\"FinegrainName\\": \\"车\\",\\n \\"FinegrainId\\": \\"10310250338\\",\\n \\"Content\\": \\"皮皮\\",\\n \\"Tracks\\": [\\n {\\n \\"Size\\": 50.2,\\n \\"Position\\": \\"468.0;67.0;615.0;267.0\\",\\n \\"Timestamp\\": 1.4\\n }\\n ]\\n }\\n ]\\n }\\n ],\\n \\"AsrInfo\\": [\\n {\\n \\"From\\": 1.4,\\n \\"To\\": 2.5,\\n \\"ClipId\\": \\"5FE19530C7A422197535FE74F5DB****\\",\\n \\"Content\\": \\"我是皮皮\\",\\n \\"Timestamp\\": 1.4\\n }\\n ],\\n \\"OcrInfo\\": [\\n {\\n \\"From\\": 1.4,\\n \\"To\\": 2.5,\\n \\"ClipId\\": \\"5FE19530C7A422197535FE74F5DB****\\",\\n \\"Content\\": \\"我是皮皮\\",\\n \\"Timestamp\\": 1.4\\n }\\n ]\\n },\\n \\"AiRoughData\\": {\\n \\"SaveType\\": \\"TEXT\\",\\n \\"Status\\": \\"SaveSuccess\\",\\n \\"AiJobId\\": \\"cd35b0b0025f71edbfcb472190a9****\\",\\n \\"Result\\": \\"http://xxxx.json\\",\\n \\"AiCategory\\": \\"视频AI分类\\"\\n },\\n \\"IndexStatusList\\": [\\n {\\n \\"IndexType\\": \\"mm\\",\\n \\"IndexStatus\\": \\"Success\\"\\n }\\n ],\\n \\"CustomFields\\": \\"{\\\\\\\\\\\\\\"intField1\\\\\\\\\\\\\\":12,\\\\\\\\\\\\\\"strField1\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"abc\\\\\\\\\\\\\\"}\\"\\n }\\n ],\\n \\"ScrollToken\\": \\"F8C4F642184DBDA5D93907A70AAE****\\",\\n \\"Total\\": 163\\n}","type":"json"}]', + 'title' => 'SearchMedia', + 'description' => 'If you have questions about how to use the media asset search feature in Intelligent Media Services (IMS), contact technical support in the DingTalk group (ID 30415005038).'."\n", + ], + 'GetVideoList' => [ + 'summary' => 'Queries information about video and audio files.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'CateId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the category.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '781111', + ], + ], + [ + 'name' => 'Status', + 'in' => 'query', + 'schema' => [ + 'title' => '搜索结果中返回的媒资字段。 默认只返回基本媒资字段,可指定返回更多媒资字段', + 'description' => 'The status of the video. You can specify multiple video statuses and separate them with commas (,).'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* PrepareFail: The file is abnormal.'."\n" + .'* UploadFail: The video failed to be uploaded.'."\n" + .'* UploadSucc: The video is uploaded.'."\n" + .'* Transcoding: The video is being transcoded.'."\n" + .'* TranscodeFail: The video failed to be transcoded.'."\n" + .'* ProduceFail: The video failed to be produced.'."\n" + .'* Normal: The video is normal.'."\n" + .'* Uploading: The video is being uploaded.'."\n" + .'* Preparing: The file is being generated.'."\n" + .'* Blocked: The video is blocked.'."\n" + .'* checking: The video is being reviewed.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'PrepareFail' => '', + 'UploadFail' => '', + 'UploadSucc' => '', + 'Transcoding' => '', + 'TranscodeFail' => '', + 'ProduceFail' => '', + 'Normal' => '', + 'Uploading' => '', + 'Preparing' => '', + 'Blocked' => '', + 'Checking' => '', + ], + 'example' => 'Uploading,Normal', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'title' => '过滤条件', + 'description' => 'The beginning of the time range to query. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2017-01-11T12:00:00Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'title' => '实体Id', + 'description' => 'The end of the time range to query. The end time must be later than the start time. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2017-01-11T12:59:00Z', + ], + ], + [ + 'name' => 'SortBy', + 'in' => 'query', + 'schema' => [ + 'title' => '排序字段和排序顺序。多个使用英文逗号(,)分隔', + 'description' => 'The sorting method of the results. Valid values:'."\n" + ."\n" + .'* CreationTime:Desc (default): sorts results in reverse chronological order.'."\n" + .'* CreationTime:Asc: sorts results in chronological order.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'CreationTime:Asc', + ], + ], + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'title' => '当前页码。默认值为1', + 'description' => 'The page number. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'title' => '每页返回的数据条数。默认值为10,最大值为50', + 'description' => 'The number of entries per page. Default value: 10. Maximum value: 50.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '20', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The schema of the response.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'Success' => [ + 'description' => 'Indicates whether the request is successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'Code' => [ + 'description' => 'The status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Total' => [ + 'description' => 'The total number of audio and video files that meet the conditions.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '163', + ], + 'MediaList' => [ + 'description' => 'The information about the audio and video files.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The information about the audio or video file.'."\n", + 'type' => 'object', + 'properties' => [ + 'StorageLocation' => [ + 'description' => 'The storage address.'."\n", + 'type' => 'string', + 'example' => 'out-****.oss-cn-shanghai.aliyuncs.com', + ], + 'Status' => [ + 'description' => 'The status of the video.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* PrepareFail: The file is abnormal.'."\n" + .'* UploadFail: The video failed to be uploaded.'."\n" + .'* UploadSucc: The video is uploaded.'."\n" + .'* Transcoding: The video is being transcoded.'."\n" + .'* TranscodeFail: The video failed to be transcoded.'."\n" + .'* ProduceFail: The video failed to be produced.'."\n" + .'* Normal: The video is normal.'."\n" + .'* Uploading: The video is being uploaded.'."\n" + .'* Preparing: The file is being generated.'."\n" + .'* Blocked: The video is blocked.'."\n" + .'* checking: The video is being reviewed.'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'PrepareFail' => '', + 'UploadFail' => '', + 'UploadSucc' => '', + 'Transcoding' => '', + 'TranscodeFail' => '', + 'ProduceFail' => '', + 'Normal' => '', + 'Uploading' => '', + 'Preparing' => '', + 'Blocked' => '', + 'Checking' => '', + ], + 'example' => 'Normal', + ], + 'CreationTime' => [ + 'description' => 'The time when the audio or video file was created. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2017-11-14T09:15:50Z', + ], + 'CateId' => [ + 'description' => 'The ID of the category.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '3679', + ], + 'MediaId' => [ + 'description' => 'The ID of the audio or video file.'."\n", + 'type' => 'string', + 'example' => '1c6ce34007d571ed94667630a6bc****', + ], + 'Tags' => [ + 'description' => 'The tags of the audio or video file.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'ModificationTime' => [ + 'description' => 'The time when the audio or video file was updated. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2017-11-14T09:16:50Z', + ], + 'CateName' => [ + 'description' => 'The name of the category.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'Description' => [ + 'description' => 'The description of the audio or video file.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'AppId' => [ + 'description' => 'The ID of the application. Default value: app-1000000.'."\n", + 'type' => 'string', + 'example' => 'app-1000000', + ], + 'Size' => [ + 'description' => 'The size of the source file. Unit: bytes.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10897890', + ], + 'CoverUrl' => [ + 'description' => 'The URL of the thumbnail.'."\n", + 'type' => 'string', + 'example' => 'http://example.aliyundoc.com/snapshot/****.jpg?auth_key=1498476426-0-0-f00b9455c49a423ce69cf4e27333****', + ], + 'Duration' => [ + 'description' => 'The duration. Unit: seconds.'."\n", + 'type' => 'number', + 'format' => 'float', + 'example' => '135.6', + ], + 'Title' => [ + 'description' => 'The title of the audio or video file.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'Snapshots' => [ + 'description' => 'The array of video snapshot URLs.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The URL of the video snapshot.'."\n", + 'type' => 'string', + 'example' => 'http://example.aliyundoc.com/snapshot/****.jpg?auth_key=1498476426-0-0-f00b9455c49a423ce69cf4e27333****', + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"Success\\": \\"true\\",\\n \\"Code\\": \\"200\\",\\n \\"Total\\": 163,\\n \\"MediaList\\": [\\n {\\n \\"StorageLocation\\": \\"out-****.oss-cn-shanghai.aliyuncs.com\\",\\n \\"Status\\": \\"Normal\\",\\n \\"CreationTime\\": \\"2017-11-14T09:15:50Z\\",\\n \\"CateId\\": 3679,\\n \\"MediaId\\": \\"1c6ce34007d571ed94667630a6bc****\\",\\n \\"Tags\\": \\"标签1, 标签2\\",\\n \\"ModificationTime\\": \\"2017-11-14T09:16:50Z\\",\\n \\"CateName\\": \\"分类1\\",\\n \\"Description\\": \\"阿里云VOD视频描述\\",\\n \\"AppId\\": \\"app-1000000\\",\\n \\"Size\\": 10897890,\\n \\"CoverUrl\\": \\"http://example.aliyundoc.com/snapshot/****.jpg?auth_key=1498476426-0-0-f00b9455c49a423ce69cf4e27333****\\",\\n \\"Duration\\": 135.6,\\n \\"Title\\": \\"史上最牛音乐播放器\\",\\n \\"Snapshots\\": [\\n \\"http://example.aliyundoc.com/snapshot/****.jpg?auth_key=1498476426-0-0-f00b9455c49a423ce69cf4e27333****\\"\\n ]\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'GetVideoList', + 'description' => 'You can call this operation to query information about up to the first 5,000 audio and video files based on the filter condition, such as the status or category ID of the file. We recommend that you set the StartTime and EndTime parameters to narrow down the time range and perform multiple queries to obtain data.'."\n", + ], + 'SearchMediaByFace' => [ + 'summary' => 'Queries the information about media assets that are related to a specific face.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceJQ6U8A', + ], + ], + 'parameters' => [ + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'title' => '当前页码。默认值为1', + 'description' => 'The page number. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'title' => '每页返回的数据条数。默认值为10,最大值为50', + 'description' => 'The number of entries per page. Default value: 10. Maximum value: 50.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '10', + ], + ], + [ + 'name' => 'EntityId', + 'in' => 'query', + 'schema' => [ + 'title' => '实体Id', + 'description' => 'The ID of the entity.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2d3bf1e35a1e42b5ab338d701efa****', + ], + ], + [ + 'name' => 'PersonImageUrl', + 'in' => 'query', + 'schema' => [ + 'description' => 'The URL of the face image.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'https://****.oss-cn-shanghai.aliyuncs.com/input/huangxuan****.jpg', + ], + ], + [ + 'name' => 'FaceSearchToken', + 'in' => 'query', + 'schema' => [ + 'description' => 'The token that is used to identify the query. You can use this parameter in the SearchMediaClipByFace operation to specify the same query conditions.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'zxtest-huangxuan-2023-3-7-V1', + ], + ], + [ + 'name' => 'SearchLibName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the search library.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'test1', + ], + ], + [ + 'name' => 'MediaType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of the media asset. Valid values:'."\n" + ."\n" + .'* image'."\n" + .'* video'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'video', + ], + ], + [ + 'name' => 'Namespace', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + ], + ], + [ + 'name' => 'CustomFilters', + 'in' => 'query', + 'schema' => [ + 'title' => '自定义过滤', + 'type' => 'string', + 'example' => '{}', + ], + ], + [ + 'name' => 'UtcCreate', + 'in' => 'query', + 'schema' => [ + 'title' => '时间', + 'type' => 'string', + 'example' => '{}', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '7CA7D615-CFB1-5437-9A12-2D185C3EE6CB', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values: true false'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'Code' => [ + 'description' => 'The status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'MediaInfoList' => [ + 'title' => '符合要求的媒资集合', + 'description' => 'The media assets that meet the conditions.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The information about the media assets.'."\n", + 'type' => 'object', + 'properties' => [ + 'MediaId' => [ + 'title' => '媒资ID', + 'description' => 'The ID of the media asset.'."\n", + 'type' => 'string', + 'example' => '3b187b3620c8490886cfc2a9578c****', + ], + ], + ], + ], + 'Total' => [ + 'description' => 'The total number of data records that meet the specified filter condition.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '163', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"7CA7D615-CFB1-5437-9A12-2D185C3EE6CB\\",\\n \\"Success\\": \\"true\\",\\n \\"Code\\": \\"200\\",\\n \\"MediaInfoList\\": [\\n {\\n \\"MediaId\\": \\"3b187b3620c8490886cfc2a9578c****\\"\\n }\\n ],\\n \\"Total\\": 163\\n}","type":"json"}]', + 'title' => 'SearchMediaByFace', + 'description' => 'If you have questions about how to use the media asset search feature in Intelligent Media Services (IMS), contact technical support in the DingTalk group (ID 30415005038).'."\n", + ], + 'SearchMediaClipByFace' => [ + 'summary' => 'Queries the information about media asset clips that are related to a specific face based on the response to the SearchMediaByFace operation.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'paid', + 'abilityTreeNodes' => [ + 'FEATUREiceJQ6U8A', + ], + ], + 'parameters' => [ + [ + 'name' => 'SearchLibName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the search library.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'test1', + ], + ], + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'title' => '当前页码。默认值为1', + 'description' => 'The page number. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'title' => '每页返回的数据条数。默认值为10,最大值为50', + 'description' => 'The number of entries per page. Default value: 10. Maximum value: 50.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '10', + ], + ], + [ + 'name' => 'EntityId', + 'in' => 'query', + 'schema' => [ + 'title' => '实体Id', + 'description' => 'The ID of the entity.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2d3bf1e35a1e42b5ab338d701efa****', + ], + ], + [ + 'name' => 'FaceSearchToken', + 'in' => 'query', + 'schema' => [ + 'description' => 'The value of this parameter is the same as that of the FaceSearchToken parameter in the SearchMediaByFace request. This specifies to return media asset clips that meet the same query conditions.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'zxtest-huangxuan-2023-3-7-V1', + ], + ], + [ + 'name' => 'MediaId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the media asset.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '3b187b3620c8490886cfc2a9578c****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => 'E44FFACD-9E90-555A-A09A-6FD3B7335E39', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values: true and false.'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'Code' => [ + 'description' => 'The status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'MediaClipList' => [ + 'title' => '符合要求的媒资集合', + 'description' => 'The media asset clips that meet the requirements.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Score' => [ + 'description' => 'The score of the clip. The value is of the Float type. The value is in the range of \\[0,1].'."\n", + 'type' => 'number', + 'format' => 'float', + 'example' => '0.99041677', + ], + 'EntityId' => [ + 'description' => 'The ID of the entity, which is the same as the entity ID returned in tag analysis.'."\n", + 'type' => 'string', + 'example' => '1031025****', + ], + 'LabelName' => [ + 'description' => 'The name of the entity.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'OccurrencesInfos' => [ + 'title' => 'FileInfos', + 'description' => 'The information about clips related to the face.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'StartTime' => [ + 'description' => 'The start time of the clip. Unit: seconds. The value is of the Float type.'."\n", + 'type' => 'number', + 'format' => 'float', + 'example' => '61.066353', + ], + 'EndTime' => [ + 'description' => 'The end time of the clip. Unit: seconds. The value is of the Float type.'."\n", + 'type' => 'number', + 'format' => 'float', + 'example' => '69.06635', + ], + 'TrackData' => [ + 'description' => 'The information about the face in the clip.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Timestamp' => [ + 'description' => 'The timestamp when the face appears in the clip. Unit: seconds. The value is of the Float type.'."\n", + 'type' => 'number', + 'format' => 'float', + 'example' => '62.03302', + ], + 'BoxPosition' => [ + 'description' => 'The coordinates of the face.'."\n", + 'type' => 'object', + 'properties' => [ + 'X' => [ + 'description' => 'The x-axis coordinate of the upper-left corner. Unit: pixels.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '517', + ], + 'Y' => [ + 'description' => 'The y-axis coordinate of the upper-left corner. Unit: pixels.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '409', + ], + 'W' => [ + 'description' => 'The width of the rectangle frame. Unit: pixels.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '128', + ], + 'H' => [ + 'description' => 'The height of the rectangle frame. Unit: pixels.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '168', + ], + ], + ], + ], + 'description' => '', + ], + ], + 'Expression' => [ + 'type' => 'string', + ], + ], + 'description' => '', + ], + ], + 'Category' => [ + 'description' => 'The type of the character. Valid values: celebrity sensitive politician custom unknown'."\n", + 'type' => 'string', + 'enumValueTitles' => [], + 'example' => 'celebrity', + ], + ], + 'description' => '', + ], + ], + 'Total' => [ + 'description' => 'The total number of media asset clips that meet the conditions.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '5', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"E44FFACD-9E90-555A-A09A-6FD3B7335E39\\",\\n \\"Success\\": \\"true\\",\\n \\"Code\\": \\"200\\",\\n \\"MediaClipList\\": [\\n {\\n \\"Score\\": 0.99041677,\\n \\"EntityId\\": \\"1031025****\\",\\n \\"LabelName\\": \\"张三\\",\\n \\"OccurrencesInfos\\": [\\n {\\n \\"StartTime\\": 61.066353,\\n \\"EndTime\\": 69.06635,\\n \\"TrackData\\": [\\n {\\n \\"Timestamp\\": 62.03302,\\n \\"BoxPosition\\": {\\n \\"X\\": 517,\\n \\"Y\\": 409,\\n \\"W\\": 128,\\n \\"H\\": 168\\n }\\n }\\n ],\\n \\"Expression\\": \\"平静\\"\\n }\\n ],\\n \\"Category\\": \\"celebrity\\"\\n }\\n ],\\n \\"Total\\": 5\\n}","type":"json"}]', + 'title' => 'SearchMediaClipByFace', + 'description' => 'If you have questions about how to use the media asset search feature in Intelligent Media Services (IMS), contact technical support in the DingTalk group (ID 30415005038).'."\n", + ], + 'SearchMediaByAILabel' => [ + 'summary' => 'Queries media assets based on character names, subtitles, or AI categories.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '195892', + 'abilityTreeNodes' => [ + 'FEATUREiceJQ6U8A', + ], + ], + 'parameters' => [ + [ + 'name' => 'SearchLibName', + 'in' => 'query', + 'schema' => [ + 'title' => '搜索库名称', + 'description' => 'The name of the search library.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'test-1', + ], + ], + [ + 'name' => 'MediaType', + 'in' => 'query', + 'schema' => [ + 'title' => '搜索结果中返回的媒资字段。 默认只返回基本媒资字段,可指定返回更多媒资字段', + 'description' => 'The type of the media assets. Valid values:'."\n" + ."\n" + .'* image'."\n" + .'* video'."\n" + .'* audio'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'image' => 'image', + 'video' => 'video', + 'audio' => 'audio', + ], + 'example' => 'video', + ], + ], + [ + 'name' => 'SortBy', + 'in' => 'query', + 'schema' => [ + 'title' => '排序字段和排序顺序。多个使用英文逗号(,)分隔', + 'description' => 'The sorting method of the results. Valid values:'."\n" + ."\n" + .'* CreationTime:Desc (default): sorts results in reverse chronological order.'."\n" + .'* CreationTime:Asc: sorts results in chronological order.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'CreationTime:Desc'."\n", + ], + ], + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'title' => '当前页码。默认值为1', + 'description' => 'The page number. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'title' => '每页返回的数据条数。默认值为10,最大值为50', + 'description' => 'The number of entries per page. Default value: 10. Maximum value: 50.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '20', + ], + ], + [ + 'name' => 'Text', + 'in' => 'query', + 'schema' => [ + 'title' => '过滤条件', + 'description' => 'The content that you want to query.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '', + ], + ], + [ + 'name' => 'MultimodalSearchType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of query. Valid values:'."\n" + ."\n" + .'* PersonName: queries media assets based on character names.'."\n" + .'* Ocr: queries media assets based on subtitles.'."\n" + .'* AiCategory: queries media assets based on AI categories.'."\n" + .'* FullSearch (default): queries all media assets.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'PersonName' => 'PersonName', + 'AiCategory' => 'AiCategory', + 'FullSearch' => 'FullSearch', + 'Ocr' => 'Ocr', + ], + 'example' => 'Ocr', + ], + ], + [ + 'name' => 'SpecificSearch', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to query media asset clips. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + [ + 'name' => 'MediaId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the media asset. This parameter is required if you want to query media asset clips.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '****c469e944b5a856828dc2****'."\n", + ], + ], + [ + 'name' => 'MatchingMode', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + ], + ], + [ + 'name' => 'Namespace', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + ], + ], + [ + 'name' => 'CustomFilters', + 'in' => 'query', + 'schema' => [ + 'title' => '自定义过滤', + 'type' => 'string', + 'example' => '{}', + ], + ], + [ + 'name' => 'UtcCreate', + 'in' => 'query', + 'schema' => [ + 'title' => '时间', + 'type' => 'string', + 'example' => '{}', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful.'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'Code' => [ + 'description' => 'The status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'MediaList' => [ + 'title' => '符合要求的媒资集合', + 'description' => 'The media assets that contain the specified content.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The information about the media asset.'."\n", + 'type' => 'object', + 'properties' => [ + 'AiData' => [ + 'description' => 'The details of the AI job.'."\n", + 'type' => 'object', + 'properties' => [ + 'AiLabelInfo' => [ + 'description' => 'The tags of the AI job.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The information about the AI tag.'."\n", + 'type' => 'object', + 'properties' => [ + 'FaceId' => [ + 'description' => 'The ID of the face.'."\n", + 'type' => 'string', + 'example' => '5FE19530C7A422197535FE74F5DB****'."\n", + ], + 'LabelType' => [ + 'description' => 'The type of the tag.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'Source' => [ + 'description' => 'The source.'."\n", + 'type' => 'string', + 'example' => 'vision', + ], + 'Category' => [ + 'description' => 'The category.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'LabelName' => [ + 'description' => 'The name of the entity.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'LabelId' => [ + 'description' => 'The ID of the entity.'."\n", + 'type' => 'string', + 'example' => '103102503**', + ], + 'Occurrences' => [ + 'description' => 'The information about the clips.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The information about the clip.'."\n", + 'type' => 'object', + 'properties' => [ + 'Score' => [ + 'description' => 'The score.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => '0.75287705'."\n", + ], + 'Image' => [ + 'description' => 'The image that contains the most face information.'."\n", + 'type' => 'string', + 'example' => 'https://service-****-public.oss-cn-hangzhou.aliyuncs.com/1563457****438522/service-image/f788974f-9595-43b2-a478-7c7a1afb****.jpg', + ], + 'TableBatchSeqId' => [ + 'description' => 'The sequence ID of the vector table.'."\n", + 'type' => 'string', + 'example' => '85010D1**', + ], + 'ClipId' => [ + 'description' => 'The ID of the clip.'."\n", + 'type' => 'string', + 'example' => '158730355E4B82257D8AA1583A58****', + ], + 'From' => [ + 'description' => 'The start time of the clip.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => '1.4', + ], + 'To' => [ + 'description' => 'The end time of the clip.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => '2.5', + ], + 'FinegrainName' => [ + 'description' => 'The fine-grained name of the entity.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'FinegrainId' => [ + 'description' => 'The fine-grained ID of the entity.'."\n", + 'type' => 'string', + 'example' => '103102503**', + ], + 'Content' => [ + 'description' => 'The content of the text.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'Tracks' => [ + 'description' => 'The tracks.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The track.'."\n", + 'type' => 'object', + 'properties' => [ + 'Size' => [ + 'description' => 'The size of the bounding box.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => '50', + ], + 'Position' => [ + 'description' => 'The coordinates of the bounding box.'."\n", + 'type' => 'string', + 'example' => '468.0;67.0;615.0;267.0', + ], + 'Timestamp' => [ + 'description' => 'The timestamp of the track.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => '1.4', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'AsrInfo' => [ + 'description' => 'The information about audio files.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The information about the audio file.'."\n", + 'type' => 'object', + 'properties' => [ + 'From' => [ + 'description' => 'The start time of the clip.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => '1.4', + ], + 'To' => [ + 'description' => 'The end time of the clip.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => '2.5', + ], + 'ClipId' => [ + 'description' => 'The ID of the clip.'."\n", + 'type' => 'string', + 'example' => '5FE19530C7A422197535FE74F5DB****', + ], + 'Content' => [ + 'description' => 'The content of the audio.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'Timestamp' => [ + 'description' => 'The timestamp of the clip.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => '1.4', + ], + ], + ], + ], + 'OcrInfo' => [ + 'description' => 'The information about subtitle files.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The information about the subtitle file.'."\n", + 'type' => 'object', + 'properties' => [ + 'From' => [ + 'description' => 'The start time of the clip.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => '1.4', + ], + 'To' => [ + 'description' => 'The end time of the clip.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => '2.5', + ], + 'ClipId' => [ + 'description' => 'The ID of the clip.'."\n", + 'type' => 'string', + 'example' => '5FE19530C7A422197535FE74F5DB****'."\n", + ], + 'Content' => [ + 'description' => 'The content of the text.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'Timestamp' => [ + 'description' => 'The timestamp of the clip.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => '1.4', + ], + ], + ], + ], + ], + ], + 'StorageLocation' => [ + 'description' => 'The storage address.'."\n", + 'type' => 'string', + 'example' => 'out-****.oss-cn-shanghai.aliyuncs.com'."\n", + ], + 'Status' => [ + 'description' => 'The status of the video.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* PrepareFail'."\n" + .'* UploadFail'."\n" + .'* Init'."\n" + .'* UploadSucc'."\n" + .'* Transcoding'."\n" + .'* TranscodeFail'."\n" + .'* Deleted'."\n" + .'* Normal'."\n" + .'* Uploading'."\n" + .'* Preparing'."\n" + .'* Blocked'."\n" + .'* Checking'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'PrepareFail' => 'PrepareFail', + 'UploadFail' => 'UploadFail', + 'Init' => 'Init', + 'UploadSucc' => 'UploadSucc', + 'Transcoding' => 'Transcoding', + 'TranscodeFail' => 'TranscodeFail', + 'Deleted' => 'Deleted', + 'Normal' => 'Normal', + 'Uploading' => 'Uploading', + 'Preparing' => 'Preparing', + 'Blocked' => 'Blocked', + 'Checking' => 'Checking', + ], + 'example' => 'Normal', + ], + 'CreationTime' => [ + 'description' => 'The time when the media asset was created. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2017-11-14T09:15:50Z'."\n", + ], + 'ModificationTime' => [ + 'description' => 'The time when the media asset was updated. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2017-11-14T09:15:50Z'."\n", + ], + 'MediaId' => [ + 'description' => 'The ID of the media asset.'."\n", + 'type' => 'string', + 'example' => '1c6ce34007d571ed94667630a6bc****'."\n", + ], + 'Tags' => [ + 'description' => 'The tags of the media asset.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'Description' => [ + 'description' => 'The description of the media asset.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'AppId' => [ + 'description' => 'The ID of the application. Default value: app-1000000.'."\n", + 'type' => 'string', + 'example' => 'app-1000000', + ], + 'Size' => [ + 'description' => 'The size of the source file. Unit: bytes.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10897890', + ], + 'CoverUrl' => [ + 'description' => 'The URL of the thumbnail.'."\n", + 'type' => 'string', + 'example' => 'http://example.aliyundoc.com/snapshot/****.jpg?auth_key=1498476426-0-0-f00b9455c49a423ce69cf4e27333****', + ], + 'Duration' => [ + 'description' => 'The duration. Unit: seconds.'."\n", + 'type' => 'number', + 'format' => 'float', + 'example' => '12.2', + ], + 'Title' => [ + 'description' => 'The title of the media asset.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'Snapshots' => [ + 'description' => 'The array of video snapshot URLs.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The URL of the video snapshot.'."\n", + 'type' => 'string', + 'example' => 'http://example.aliyundoc.com/snapshot/****.jpg?auth_key=1498476426-0-0-f00b9455c49a423ce69cf4e27333****', + ], + ], + ], + ], + ], + 'Total' => [ + 'description' => 'The total number of audio and video files that meet the conditions.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '30', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"Success\\": \\"true\\",\\n \\"Code\\": \\"200\\",\\n \\"MediaList\\": [\\n {\\n \\"AiData\\": {\\n \\"AiLabelInfo\\": [\\n {\\n \\"FaceId\\": \\"5FE19530C7A422197535FE74F5DB****\\\\n\\",\\n \\"LabelType\\": \\"物体\\",\\n \\"Source\\": \\"vision\\",\\n \\"Category\\": \\"交通工具\\",\\n \\"LabelName\\": \\"车\\",\\n \\"LabelId\\": \\"103102503**\\",\\n \\"Occurrences\\": [\\n {\\n \\"Score\\": 0.75287705,\\n \\"Image\\": \\"https://service-****-public.oss-cn-hangzhou.aliyuncs.com/1563457****438522/service-image/f788974f-9595-43b2-a478-7c7a1afb****.jpg\\",\\n \\"TableBatchSeqId\\": \\"85010D1**\\",\\n \\"ClipId\\": \\"158730355E4B82257D8AA1583A58****\\",\\n \\"From\\": 1.4,\\n \\"To\\": 2.5,\\n \\"FinegrainName\\": \\"车\\",\\n \\"FinegrainId\\": \\"103102503**\\",\\n \\"Content\\": \\"智能标签测试\\\\n\\",\\n \\"Tracks\\": [\\n {\\n \\"Size\\": 50,\\n \\"Position\\": \\"468.0;67.0;615.0;267.0\\",\\n \\"Timestamp\\": 1.4\\n }\\n ]\\n }\\n ]\\n }\\n ],\\n \\"AsrInfo\\": [\\n {\\n \\"From\\": 1.4,\\n \\"To\\": 2.5,\\n \\"ClipId\\": \\"5FE19530C7A422197535FE74F5DB****\\",\\n \\"Content\\": \\"智能标签测试\\",\\n \\"Timestamp\\": 1.4\\n }\\n ],\\n \\"OcrInfo\\": [\\n {\\n \\"From\\": 1.4,\\n \\"To\\": 2.5,\\n \\"ClipId\\": \\"5FE19530C7A422197535FE74F5DB****\\\\n\\",\\n \\"Content\\": \\"皮皮\\",\\n \\"Timestamp\\": 1.4\\n }\\n ]\\n },\\n \\"StorageLocation\\": \\"out-****.oss-cn-shanghai.aliyuncs.com\\\\n\\",\\n \\"Status\\": \\"Normal\\",\\n \\"CreationTime\\": \\"2017-11-14T09:15:50Z\\\\n\\",\\n \\"ModificationTime\\": \\"2017-11-14T09:15:50Z\\\\n\\",\\n \\"MediaId\\": \\"1c6ce34007d571ed94667630a6bc****\\\\n\\",\\n \\"Tags\\": \\"标签1, 标签2\\\\n\\",\\n \\"Description\\": \\"阿里云VOD视频描述\\\\n\\",\\n \\"AppId\\": \\"app-1000000\\",\\n \\"Size\\": 10897890,\\n \\"CoverUrl\\": \\"http://example.aliyundoc.com/snapshot/****.jpg?auth_key=1498476426-0-0-f00b9455c49a423ce69cf4e27333****\\",\\n \\"Duration\\": 12.2,\\n \\"Title\\": \\"史上最牛音乐播放器\\\\n\\",\\n \\"Snapshots\\": [\\n \\"http://example.aliyundoc.com/snapshot/****.jpg?auth_key=1498476426-0-0-f00b9455c49a423ce69cf4e27333****\\"\\n ]\\n }\\n ],\\n \\"Total\\": 30\\n}","type":"json"}]', + 'title' => 'SearchMediaByAILabel', + 'description' => 'You can call this operation to query media assets or media asset clips based on character names, subtitles, or AI categories.'."\n", + ], + 'SearchMediaByMultimodal' => [ + 'summary' => 'Queries media assets by using the large visual model. You can use natural language for the query.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceJQ6U8A', + ], + ], + 'parameters' => [ + [ + 'name' => 'SearchLibName', + 'in' => 'query', + 'schema' => [ + 'title' => '搜索库', + 'description' => 'The search library.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'test-1', + ], + ], + [ + 'name' => 'MediaType', + 'in' => 'query', + 'schema' => [ + 'title' => '搜索结果中返回的媒资类型。', + 'description' => 'The type of the media assets.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* image'."\n" + .'* video (default)'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'image' => 'image', + 'video' => 'video', + ], + 'example' => 'video', + ], + ], + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'title' => '当前页码。默认值为1', + 'description' => 'The page number. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'title' => '每页返回的数据条数。默认值为10,最大值为50', + 'description' => 'The number of entries per page. Default value: 10. Maximum value: 50.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '10', + ], + ], + [ + 'name' => 'Text', + 'in' => 'query', + 'schema' => [ + 'title' => '搜索内容。', + 'description' => 'The content that you want to query. You can describe the content in natural language.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '', + ], + ], + [ + 'name' => 'Namespace', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + ], + ], + [ + 'name' => 'CustomFilters', + 'in' => 'query', + 'schema' => [ + 'title' => '自定义过滤', + 'type' => 'string', + 'example' => '{}', + ], + ], + [ + 'name' => 'UtcCreate', + 'in' => 'query', + 'schema' => [ + 'title' => '时间', + 'type' => 'string', + 'example' => '{}', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '****63E8B7C7-4812-46AD-0FA56029AC86****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values: true false'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'Code' => [ + 'description' => 'The status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'MediaList' => [ + 'title' => '符合要求的媒资集合', + 'description' => 'The media assets that contain the specified content.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The information about the media asset.'."\n", + 'type' => 'object', + 'properties' => [ + 'MediaId' => [ + 'description' => 'The ID of the media asset.'."\n", + 'type' => 'string', + 'example' => 'a18936e0e28771edb59ae6f6f47a****', + ], + 'ClipInfo' => [ + 'description' => 'The information about the clip.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'From' => [ + 'description' => 'The start time of the clip.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => '2', + ], + 'To' => [ + 'description' => 'The end time of the clip.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => '4', + ], + 'Score' => [ + 'description' => 'The score.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => '1.2', + ], + ], + 'description' => '', + ], + ], + ], + ], + ], + 'Total' => [ + 'description' => 'The total number of data records that meet the specified filter condition.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '20', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"****63E8B7C7-4812-46AD-0FA56029AC86****\\",\\n \\"Success\\": \\"true\\",\\n \\"Code\\": \\"200\\",\\n \\"MediaList\\": [\\n {\\n \\"MediaId\\": \\"a18936e0e28771edb59ae6f6f47a****\\",\\n \\"ClipInfo\\": [\\n {\\n \\"From\\": 2,\\n \\"To\\": 4,\\n \\"Score\\": 0.99\\n }\\n ]\\n }\\n ],\\n \\"Total\\": 20\\n}","type":"json"}]', + 'title' => 'SearchMediaByMultimodal', + 'description' => 'If you have questions about how to use the media asset search feature in Intelligent Media Services (IMS), contact technical support in the DingTalk group (ID 30415005038).'."\n", + ], + 'SearchMediaByHybrid' => [ + 'summary' => 'Performs a hybrid search for media assets. This API combines multiple recall strategies, including tag-based text search and large language model (LLM) search. You can locate media assets using natural language descriptions.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '224461', + 'abilityTreeNodes' => [ + 'FEATUREiceJQ6U8A', + ], + ], + 'parameters' => [ + [ + 'name' => 'SearchLibName', + 'in' => 'query', + 'schema' => [ + 'title' => '搜索库', + 'description' => 'The name of the search library', + 'type' => 'string', + 'required' => false, + 'example' => 'test-1', + ], + ], + [ + 'name' => 'MediaType', + 'in' => 'query', + 'schema' => [ + 'title' => '搜索结果中返回的媒资类型。', + 'description' => 'The type of media assets. Valid values:'."\n" + .'- image'."\n" + .'- video', + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'image' => 'image', + 'video' => 'video', + ], + 'example' => 'video', + ], + ], + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'title' => '当前页码。默认值为1', + 'description' => 'The page number. Default value: 1.', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'title' => '每页返回的数据条数。默认值为10,最大值为50', + 'description' => 'The number of entries per page. Valid values: 1 to 50. Default value: 10.', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '20', + ], + ], + [ + 'name' => 'Text', + 'in' => 'query', + 'schema' => [ + 'title' => '搜索内容。', + 'description' => 'The natural language search query.', + 'type' => 'string', + 'required' => false, + 'example' => 'Two pandas are fighting', + ], + ], + [ + 'name' => 'MediaId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the media asset. If provided, the details of the media asset are returned.', + 'type' => 'string', + 'required' => false, + 'example' => '****c469e944b5a856828dc2****'."\n", + ], + ], + [ + 'name' => 'Namespace', + 'in' => 'query', + 'schema' => [ + 'description' => 'The namespace.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'name-1', + ], + ], + [ + 'name' => 'CustomFilters', + 'in' => 'query', + 'schema' => [ + 'title' => '自定义过滤', + 'type' => 'string', + 'example' => '{}', + ], + ], + [ + 'name' => 'UtcCreate', + 'in' => 'query', + 'schema' => [ + 'title' => '时间', + 'type' => 'string', + 'example' => '{}', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******3B-0E1A-586A-AC29-742247******', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values: true and false.'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'Code' => [ + 'description' => 'The status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'MediaList' => [ + 'title' => '符合要求的媒资集合', + 'description' => 'The media assets that match the search query.', + 'type' => 'array', + 'items' => [ + 'description' => 'The media asset that matches the search query.', + 'type' => 'object', + 'properties' => [ + 'MediaId' => [ + 'description' => 'The ID of the media asset.'."\n", + 'type' => 'string', + 'example' => 'a18936e0e28771edb59ae6f6f47a****', + ], + 'ClipInfo' => [ + 'description' => 'The information about the relevant clips.', + 'type' => 'array', + 'items' => [ + 'description' => 'The information about the clip.'."\n", + 'type' => 'object', + 'properties' => [ + 'From' => [ + 'description' => 'The start time of the relevant clip.', + 'type' => 'number', + 'format' => 'double', + 'example' => '2', + ], + 'To' => [ + 'description' => 'The end time of the relevant clip.', + 'type' => 'number', + 'format' => 'double', + 'example' => '4', + ], + 'Score' => [ + 'description' => 'The relevance score of the clip for the query.', + 'type' => 'number', + 'format' => 'double', + 'example' => '0.99', + ], + ], + ], + ], + ], + ], + ], + 'Total' => [ + 'description' => 'The total number of media assets that match the search criteria.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '30', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******3B-0E1A-586A-AC29-742247******\\",\\n \\"Success\\": \\"true\\",\\n \\"Code\\": \\"200\\",\\n \\"MediaList\\": [\\n {\\n \\"MediaId\\": \\"a18936e0e28771edb59ae6f6f47a****\\",\\n \\"ClipInfo\\": [\\n {\\n \\"From\\": 2,\\n \\"To\\": 4,\\n \\"Score\\": 0.99\\n }\\n ]\\n }\\n ],\\n \\"Total\\": 30\\n}","type":"json"}]', + 'title' => 'SearchMediaByHybrid', + ], + 'RegisterMediaInfo' => [ + 'summary' => 'Registers a media asset with Intelligent Media Services (IMS). IMS assigns an ID to the media asset. This operation asynchronously accesses the media asset service in which the media asset is stored to obtain the file information of the media asset based on the input URL. You can also specify basic information, such as the title, tags, and description, for the media asset. This operation returns the ID of the media asset. You can call the GetMediaInfo operation based on the ID to query the details of the media asset. You can set InputURL only to the URL of an Object Storage Service (OSS) file or an ApsaraVideo VOD media asset.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'abilityTreeCode' => '6889', + 'abilityTreeNodes' => [ + 'FEATUREiceFEJXOS', + ], + ], + 'parameters' => [ + [ + 'name' => 'InputURL', + 'in' => 'query', + 'schema' => [ + 'title' => '媒资媒体url', + 'description' => 'The URL of the media asset in another service. The URL is associated with the ID of the media asset in IMS. The URL cannot be modified once registered. The following types of URLs are supported:'."\n" + ."\n" + .'* OSS URL in one of the following formats:'."\n" + ."\n" + .'http(s)://example-bucket.oss-cn-shanghai.aliyuncs.com/example.mp4'."\n" + ."\n" + .'oss://example-bucket/example.mp4: In this format, it is considered by default that the region of the OSS bucket in which the media asset resides is the same as the region in which IMS is activated.'."\n" + ."\n" + .'* URL of an ApsaraVideo VOD media asset'."\n" + ."\n" + .'vod://\\*\\*\\*20b48fb04483915d4f2cd8ac\\*\\*\\*\\*'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '', + ], + ], + [ + 'name' => 'MediaType', + 'in' => 'query', + 'schema' => [ + 'title' => '媒资媒体类型', + 'description' => 'The type of the media asset. Valid values:'."\n" + ."\n" + .'* image'."\n" + .'* video'."\n" + .'* audio'."\n" + .'* text'."\n" + ."\n" + .'We recommend that you specify this parameter based on your business requirements. If you set InputURL to an OSS URL, the media asset type can be automatically determined based on the file name extension. For more information'."\n" + .'<props="china">, see [File formats](https://help.aliyun.com/document_detail/466207.html)</props>.', + 'type' => 'string', + 'required' => false, + 'example' => 'video', + ], + ], + [ + 'name' => 'BusinessType', + 'in' => 'query', + 'schema' => [ + 'title' => '媒资业务类型', + 'description' => 'The business type of the media asset. Valid values:'."\n" + ."\n" + .'* subtitles'."\n" + .'* watermark'."\n" + .'* opening'."\n" + .'* ending'."\n" + .'* general'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'opening', + ], + ], + [ + 'name' => 'Title', + 'in' => 'query', + 'schema' => [ + 'title' => '标题', + 'description' => 'The title. If you do not specify this parameter, a default title is automatically generated based on the date.'."\n" + ."\n" + .'* The value can be up to 128 bytes in length.'."\n" + .'* The value must be encoded in UTF-8.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'defaultTitle', + ], + ], + [ + 'name' => 'Description', + 'in' => 'query', + 'schema' => [ + 'title' => '描述', + 'description' => 'The description of the media asset.'."\n" + ."\n" + .'* The value can be up to 1,024 bytes in length.'."\n" + .'* The value must be encoded in UTF-8.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'defaultDescription', + ], + ], + [ + 'name' => 'MediaTags', + 'in' => 'query', + 'schema' => [ + 'title' => '标签,如果有多个标签用逗号隔开', + 'description' => 'The tags of the media asset.'."\n" + ."\n" + .'* Up to 16 tags are supported.'."\n" + .'* Separate multiple tags with commas (,).'."\n" + .'* Each tag can be up to 32 bytes in length.'."\n" + .'* The value must be encoded in UTF-8.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'tag1,tag2', + ], + ], + [ + 'name' => 'CoverURL', + 'in' => 'query', + 'schema' => [ + 'title' => '封面图,仅视频媒资有效', + 'description' => 'The thumbnail URL of the media asset.'."\n" + ."\n" + .'* The value can be up to 128 bytes in length.'."\n" + .'* The value must be encoded in UTF-8.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'http://example-bucket.oss-cn-shanghai.aliyuncs.com/example.png', + ], + ], + [ + 'name' => 'UserData', + 'in' => 'query', + 'schema' => [ + 'title' => '用户数据,最大1024字节', + 'description' => 'The user data. You can specify a custom callback URL. For more information<props="china"> ,see [Configure a callback upon editing completion](https://help.aliyun.com/document_detail/451631.html)</props>.'."\n" + ."\n" + .'* The value can be up to 1,024 bytes in length.'."\n" + .'* The value must be encoded in UTF-8.'."\n" + .'* The value must be in the JSON format.', + 'type' => 'string', + 'required' => false, + 'example' => '', + ], + ], + [ + 'name' => 'Overwrite', + 'in' => 'query', + 'schema' => [ + 'title' => '是否覆盖已有媒资', + 'description' => 'Specifies whether to overwrite the media asset that has been registered by using the same URL. Default value: false. Valid values:'."\n" + ."\n" + .'\\- true: If a media asset has been registered by using the same URL, the original media asset is deleted and the new media asset is registered.'."\n" + ."\n" + .'\\- false: If a media asset has been registered by using the same URL, the new media asset is not registered. A URL cannot be used to register multiple media assets.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + [ + 'name' => 'ClientToken', + 'in' => 'query', + 'schema' => [ + 'title' => '客户端token', + 'description' => 'The client token that is used to ensure the idempotence of the request. The value must be a UUID that contains 32 characters.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '****0311a423d11a5f7dee713535****', + ], + ], + [ + 'name' => 'RegisterConfig', + 'in' => 'query', + 'schema' => [ + 'title' => '注册媒资的配置', + 'description' => 'The registration configurations.'."\n" + ."\n" + .'By default, a sprite is generated for the media asset. You can set NeedSprite to false to disable automatic sprite generation.'."\n" + ."\n" + .'By default, a snapshot is generated for the media asset. You can set NeedSnapshot to false to disable automatic snapshot generation.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{'."\n" + .' "NeedSprite": "false"'."\n" + .'}', + ], + ], + [ + 'name' => 'CateId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The category ID.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '3048', + ], + ], + [ + 'name' => 'WorkflowId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The workflow ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '******b4fb044839815d4f2cd8******', + ], + ], + [ + 'name' => 'ReferenceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The custom ID. The ID can be 6 to 64 characters in length and can contain only letters, digits, hyphens (-), and underscores (\\_). Make sure that the ID is unique among users.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '123-123', + ], + ], + [ + 'name' => 'SmartTagTemplateId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the smart tagging template. Valid values:'."\n" + ."\n" + .'* S00000101-300080: the system template that supports natural language processing (NLP) for content recognition.'."\n" + .'* S00000103-000001: the system template that supports NLP for content recognition and all tagging capabilities.'."\n" + .'* S00000103-000002: the system template that supports all tagging capabilities but does not support NLP for content recognition.'."\n" + ."\n" + .'After you configure this parameter, a smart tag analysis task is automatically initiated after the media asset is registered. For more information about the billable items<props="china">, see [Smart tagging](https://help.aliyun.com/zh/ims/media-ai-billing?spm=a2c4g.11186623.0.0.3147392dWwlSjL#p-k38-3rb-dug)</props>.', + 'type' => 'string', + 'required' => false, + 'example' => 'S00000101-300080', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******5A-CAAC-4850-A3AF-B74606******', + ], + 'MediaId' => [ + 'title' => 'ICE媒资ID', + 'description' => 'The ID of the media asset in IMS.'."\n", + 'type' => 'string', + 'example' => '******b48fb04483915d4f2cd8******', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 403 => [ + [ + 'errorCode' => 'Forbidden', + 'errorMessage' => 'User not authorized to operate on the specified resource.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"******5A-CAAC-4850-A3AF-B74606******\\",\\n \\"MediaId\\": \\"******b48fb04483915d4f2cd8******\\"\\n}","errorExample":""},{"type":"xml","example":"<RegisterMediaInfoResponse>\\n <RequestId>******5A-CAAC-4850-A3AF-B74606******</RequestId>\\n <MediaId>******b48fb04483915d4f2cd8******</MediaId>\\n</RegisterMediaInfoResponse>","errorExample":""}]', + 'title' => 'RegisterMediaInfo', + 'description' => 'Registering a media asset is an asynchronous job that takes 2 to 3 seconds. When the operation returns the ID of the media asset, the registration may have not be completed. If you call the GetMediaInfo operation at this time, you may fail to obtain the information about the media asset.'."\n", + ], + 'GetMediaInfo' => [ + 'summary' => 'Queries information about a media asset based on the ID of the media asset in Intelligent Media Services (IMS) or the input URL of the media asset.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '6890', + 'abilityTreeNodes' => [ + 'FEATUREiceFEJXOS', + ], + ], + 'parameters' => [ + [ + 'name' => 'MediaId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the media asset in IMS. If this parameter is left empty, the InputURL parameter must be specified.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + ], + [ + 'name' => 'InputURL', + 'in' => 'query', + 'schema' => [ + 'description' => 'The input URL of the media asset in another service. The URL must be registered in the IMS content library and bound to the ID of the media asset in IMS.'."\n" + ."\n" + .'* For a media asset from Object Storage Service (OSS), the URL may have one of the following formats:'."\n" + ."\n" + .'http(s)://example-bucket.oss-cn-shanghai.aliyuncs.com/example.mp4 or'."\n" + ."\n" + .'oss://example-bucket/example.mp4. The second format indicates that the region in which the OSS bucket of the media asset resides is the same as the region in which OSS is activated.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'http://example-bucket.oss-cn-shanghai.aliyuncs.com/example.mp4', + ], + ], + [ + 'name' => 'OutputType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of the URL of the media asset to return in the response. Valid values:'."\n" + ."\n" + .'* oss (default): an OSS URL.'."\n" + .'* cdn: a CDN URL. A CDN URL is returned only if the media asset is imported from ApsaraVideo VOD and the relevant domain name is an accelerated domain name in ApsaraVideo VOD.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cdn', + ], + ], + [ + 'name' => 'ReturnDetailedInfo', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to return detailed information for specific media asset attributes. Supported attributes: AiRoughData.StandardSmartTagJob, which specifies whether to return detailed tag information if a tagging job has been submitted for the media asset. Valid values for the attribute:'."\n" + ."\n" + .'* false (default): The job result is returned as a URL.'."\n" + .'* true: The job result is returned as text.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{"AiRoughData.StandardSmartTagJob": false} ', + ], + ], + [ + 'name' => 'AuthTimeout', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int64', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'RequestId', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '2FDE2411-DB8D-4A9A-875B-275798F14A5E', + ], + 'MediaInfo' => [ + 'description' => 'The information about the media asset.'."\n", + 'type' => 'object', + 'properties' => [ + 'MediaId' => [ + 'title' => '媒资ID', + 'description' => 'The ID of the media asset.'."\n", + 'type' => 'string', + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + 'MediaBasicInfo' => [ + 'title' => 'BasicInfo', + 'description' => 'The basic information about the media asset.'."\n", + 'type' => 'object', + 'properties' => [ + 'MediaId' => [ + 'title' => 'MediaId', + 'description' => 'The ID of the media asset.'."\n", + 'type' => 'string', + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + 'InputURL' => [ + 'title' => '待注册的媒资在相应系统中的地址', + 'description' => 'The input URL of the media asset in another service.'."\n", + 'type' => 'string', + 'example' => 'https://example-bucket.oss-cn-shanghai.aliyuncs.com/example.mp4', + ], + 'MediaType' => [ + 'title' => '媒资媒体类型', + 'description' => 'The type of the media asset.'."\n", + 'type' => 'string', + 'example' => 'video', + ], + 'BusinessType' => [ + 'title' => '媒资业务类型', + 'description' => 'The business type.'."\n", + 'type' => 'string', + 'example' => 'general', + ], + 'Source' => [ + 'title' => '来源', + 'description' => 'The source.'."\n", + 'type' => 'string', + 'example' => 'oss', + ], + 'Title' => [ + 'title' => '标题', + 'description' => 'The title.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'Description' => [ + 'title' => '内容描述', + 'description' => 'The content description.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'Category' => [ + 'title' => '分类', + 'description' => 'The category.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'MediaTags' => [ + 'title' => '标签', + 'description' => 'The tags.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'CoverURL' => [ + 'title' => '封面地址', + 'description' => 'The URL of the thumbnail.'."\n", + 'type' => 'string', + 'example' => 'http://example-bucket.oss-cn-shanghai.aliyuncs.com/example.png?Expires=<ExpireTime>&OSSAccessKeyId=<OSSAccessKeyId>&Signature=<Signature>&security-token=<SecurityToken>', + ], + 'UserData' => [ + 'title' => '用户数据', + 'description' => 'The user data.'."\n", + 'type' => 'string', + 'example' => 'userDataTest', + ], + 'Snapshots' => [ + 'title' => '截图', + 'description' => 'The snapshots.'."\n", + 'type' => 'string', + 'example' => '['."\n" + .' "http://example-bucket.oss-cn-shanghai.aliyuncs.com/snapshot-00001.png?Expires=<ExpireTime>&OSSAccessKeyId=<OSSAccessKeyId>&Signature=<Signature>&security-token=<SecurityToken>",'."\n" + .' "http://example-bucket.oss-cn-shanghai.aliyuncs.com/snapshot-00002.jpg?Expires=<ExpireTime>&OSSAccessKeyId=<OSSAccessKeyId>&Signature=<Signature>&security-token=<SecurityToken>",'."\n" + .' "http://example-bucket.oss-cn-shanghai.aliyuncs.com/snapshot-00003.jpg?Expires=<ExpireTime>&OSSAccessKeyId=<OSSAccessKeyId>&Signature=<Signature>&security-token=<SecurityToken>"'."\n" + .']', + ], + 'Status' => [ + 'title' => '资源状态', + 'description' => 'The resource status.'."\n", + 'type' => 'string', + 'example' => 'Normal', + ], + 'CreateTime' => [ + 'title' => '媒资创建时间', + 'description' => 'The time when the media asset was created.'."\n", + 'type' => 'string', + 'example' => '2020-12-26T04:11:08Z', + ], + 'ModifiedTime' => [ + 'title' => '媒资修改时间', + 'description' => 'The time when the media asset was last modified.'."\n", + 'type' => 'string', + 'example' => '2020-12-26T04:11:10Z', + ], + 'DeletedTime' => [ + 'title' => '媒资删除时间', + 'description' => 'The time when the media asset was deleted.'."\n", + 'type' => 'string', + 'example' => '2020-12-26T04:11:15Z', + ], + 'SpriteImages' => [ + 'title' => '雪碧图', + 'description' => 'The sprite.'."\n", + 'type' => 'string', + 'example' => '[{"bucket":"example-bucket","count":"32","iceJobId":"******83ec44d58b2069def2e******","location":"oss-cn-shanghai","snapshotRegular":"example/example-{Count}.jpg","spriteRegular":"example/example-{TileCount}.jpg","templateId":"******e438b14ff39293eaec25******","tileCount":"1"}]', + ], + 'CateId' => [ + 'description' => 'The category ID.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '3048', + ], + 'Biz' => [ + 'description' => 'The service to which the media asset belongs.'."\n", + 'type' => 'string', + 'example' => 'ICE', + ], + 'UploadSource' => [ + 'description' => 'The upload source of the media asset.'."\n", + 'type' => 'string', + 'example' => 'general', + ], + 'CateName' => [ + 'description' => 'The category name.'."\n", + 'type' => 'string', + 'example' => 'cateName', + ], + 'ReferenceId' => [ + 'description' => 'The custom ID. The ID can be 6 to 64 characters in length and can contain only letters, digits, hyphens (-), and underscores (\\_). The ID is unique among users.'."\n", + 'type' => 'string', + 'example' => '123-1234', + ], + ], + ], + 'FileInfoList' => [ + 'title' => 'FileInfos', + 'description' => 'The file information.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'FileBasicInfo' => [ + 'title' => '文件基础信息,包含时长,大小等', + 'description' => 'The basic information about the file, including the duration and size.'."\n", + 'type' => 'object', + 'properties' => [ + 'FileName' => [ + 'title' => '文件名', + 'description' => 'The file name.'."\n", + 'type' => 'string', + 'example' => 'example.mp4', + ], + 'FileStatus' => [ + 'title' => '文件状态', + 'description' => 'The file status.'."\n", + 'type' => 'string', + 'example' => 'Normal', + ], + 'FileType' => [ + 'title' => '文件类型', + 'description' => 'The file type.'."\n", + 'type' => 'string', + 'example' => 'source_file', + ], + 'FileSize' => [ + 'title' => '文件大小(字节)', + 'description' => 'The file size. Unit: bytes.'."\n", + 'type' => 'string', + 'example' => '30611502', + ], + 'FileUrl' => [ + 'title' => '文件oss地址', + 'description' => 'The OSS URL of the file.'."\n", + 'type' => 'string', + 'example' => 'http://example-bucket.oss-cn-shanghai.aliyuncs.com/example.mp4?Expires=<ExpireTime>&OSSAccessKeyId=<OSSAccessKeyId>&Signature=<Signature>&security-token=<SecurityToken>', + ], + 'Region' => [ + 'title' => '文件存储区域', + 'description' => 'The region in which the file is stored.'."\n", + 'type' => 'string', + 'example' => 'cn-shanghai', + ], + 'FormatName' => [ + 'title' => '封装格式', + 'description' => 'The container format.'."\n", + 'type' => 'string', + 'example' => 'mov,mp4,m4a,3gp,3g2,mj2', + ], + 'Duration' => [ + 'title' => '时长', + 'description' => 'The duration.'."\n", + 'type' => 'string', + 'example' => '216.206667', + ], + 'Bitrate' => [ + 'title' => '码率', + 'description' => 'The bitrate.'."\n", + 'type' => 'string', + 'example' => '1132.68', + ], + 'Width' => [ + 'title' => '宽', + 'description' => 'The width.'."\n", + 'type' => 'string', + 'example' => '960', + ], + 'Height' => [ + 'title' => '高', + 'description' => 'The height.'."\n", + 'type' => 'string', + 'example' => '540', + ], + 'CreateTime' => [ + 'description' => 'The time when the file was created.'."\n", + 'type' => 'string', + 'example' => '2020-12-26T04:11:08Z', + ], + 'ModifiedTime' => [ + 'description' => 'The time when the file was last modified.'."\n", + 'type' => 'string', + 'example' => '2020-12-26T04:11:10Z', + ], + ], + ], + 'AudioStreamInfoList' => [ + 'title' => '音频流信息,一个媒资可能有多条音频流', + 'description' => 'The information about the audio tracks. A media asset may have multiple audio tracks.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Index' => [ + 'title' => '音频流序号', + 'description' => 'The sequence number of the audio track.'."\n", + 'type' => 'string', + 'example' => '1', + ], + 'CodecName' => [ + 'title' => '编码格式简述名', + 'description' => 'The short name of the codec.'."\n", + 'type' => 'string', + 'example' => 'aac', + ], + 'CodecLongName' => [ + 'title' => '编码格式长述名', + 'description' => 'The full name of the codec.'."\n", + 'type' => 'string', + 'example' => 'AAC (Advanced Audio Coding)', + ], + 'CodecTimeBase' => [ + 'title' => '编码时基', + 'description' => 'The time base of the codec.'."\n", + 'type' => 'string', + 'example' => '1/24000', + ], + 'CodecTagString' => [ + 'title' => '编码格式标记文本', + 'description' => 'The tag string of the codec.'."\n", + 'type' => 'string', + 'example' => 'mp4a', + ], + 'CodecTag' => [ + 'title' => '编码格式标记', + 'description' => 'The tag of the codec.'."\n", + 'type' => 'string', + 'example' => '0x6134706d', + ], + 'Profile' => [ + 'title' => '编码预置', + 'description' => 'The codec profile.'."\n", + 'type' => 'string', + 'example' => 'High', + ], + 'SampleFmt' => [ + 'title' => '采样格式', + 'description' => 'The sampling format.'."\n", + 'type' => 'string', + 'example' => 'fltp', + ], + 'SampleRate' => [ + 'title' => '采样率', + 'description' => 'The sampling rate.'."\n", + 'type' => 'string', + 'example' => '44100', + ], + 'Channels' => [ + 'title' => '声道数', + 'description' => 'The number of sound channels.'."\n", + 'type' => 'string', + 'example' => '2', + ], + 'ChannelLayout' => [ + 'title' => '声道输出样式', + 'description' => 'The output layout of sound channels.'."\n", + 'type' => 'string', + 'example' => 'stereo', + ], + 'Timebase' => [ + 'title' => '时基', + 'description' => 'The time base.'."\n", + 'type' => 'string', + 'example' => '1/44100', + ], + 'StartTime' => [ + 'title' => '起始时间', + 'description' => 'The start time.'."\n", + 'type' => 'string', + 'example' => '0.000000', + ], + 'Duration' => [ + 'title' => '时长', + 'description' => 'The duration.'."\n", + 'type' => 'string', + 'example' => '16.200998', + ], + 'Bitrate' => [ + 'title' => '码率', + 'description' => 'The bitrate.'."\n", + 'type' => 'string', + 'example' => '127.794', + ], + 'Fps' => [ + 'title' => '音频帧率', + 'description' => 'The audio frame rate.'."\n", + 'type' => 'string', + 'example' => '8', + ], + 'NumFrames' => [ + 'title' => '总帧数', + 'description' => 'The number of frames.'."\n", + 'type' => 'string', + 'example' => '10', + ], + 'Lang' => [ + 'title' => '语言', + 'description' => 'The language.'."\n", + 'type' => 'string', + 'example' => 'und', + ], + ], + 'description' => '', + ], + ], + 'VideoStreamInfoList' => [ + 'title' => '视频流信息,一个媒资可能有多条视频流', + 'description' => 'The information about the video tracks. A media asset may have multiple video tracks.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Index' => [ + 'title' => '视频流序号', + 'description' => 'The sequence number of the video track.'."\n", + 'type' => 'string', + 'example' => '0', + ], + 'CodecName' => [ + 'title' => '编码格式简述名', + 'description' => 'The short name of the codec.'."\n", + 'type' => 'string', + 'example' => 'h264', + ], + 'CodecLongName' => [ + 'title' => '编码格式长述名', + 'description' => 'The full name of the codec.'."\n", + 'type' => 'string', + 'example' => 'H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10', + ], + 'Profile' => [ + 'title' => '编码预置', + 'description' => 'The codec profile.'."\n", + 'type' => 'string', + 'example' => 'High', + ], + 'CodecTimeBase' => [ + 'title' => '编码时基', + 'description' => 'The time base of the codec.'."\n", + 'type' => 'string', + 'example' => '1/48', + ], + 'CodecTagString' => [ + 'title' => '编码格式标记文本', + 'description' => 'The tag string of the codec.'."\n", + 'type' => 'string', + 'example' => '[0][0][0][0]', + ], + 'CodecTag' => [ + 'title' => '编码格式标记', + 'description' => 'The tag of the codec.'."\n", + 'type' => 'string', + 'example' => '0x0000', + ], + 'Width' => [ + 'title' => '宽', + 'description' => 'The width.'."\n", + 'type' => 'string', + 'example' => '960', + ], + 'Height' => [ + 'title' => '高', + 'description' => 'The height.'."\n", + 'type' => 'string', + 'example' => '540', + ], + 'HasBFrames' => [ + 'title' => '是否有B帧', + 'description' => 'Indicates whether the video track contains bidirectional frames (B-frames).'."\n", + 'type' => 'string', + 'example' => '2', + ], + 'Sar' => [ + 'title' => '编码信号分辨率比', + 'description' => 'The sample aspect ratio (SAR).'."\n", + 'type' => 'string', + 'example' => '0:1', + ], + 'Dar' => [ + 'title' => '编码显示分辨率比', + 'description' => 'The display aspect ratio (DAR).'."\n", + 'type' => 'string', + 'example' => '0:1', + ], + 'PixFmt' => [ + 'title' => '像素格式', + 'description' => 'The pixel format.'."\n", + 'type' => 'string', + 'example' => 'yuv420p', + ], + 'Level' => [ + 'title' => '编码等级', + 'description' => 'The codec level.'."\n", + 'type' => 'string', + 'example' => '30', + ], + 'Fps' => [ + 'title' => '视频帧率', + 'description' => 'The video frame rate.'."\n", + 'type' => 'string', + 'example' => '24.0', + ], + 'AvgFPS' => [ + 'title' => '平均帧率', + 'description' => 'The average video frame rate.'."\n", + 'type' => 'string', + 'example' => '24.0', + ], + 'Timebase' => [ + 'title' => '时基', + 'description' => 'The time base.'."\n", + 'type' => 'string', + 'example' => '1/12288', + ], + 'StartTime' => [ + 'title' => '起始时间', + 'description' => 'The start time.'."\n", + 'type' => 'string', + 'example' => '0.081706', + ], + 'Duration' => [ + 'title' => '时长', + 'description' => 'The duration.'."\n", + 'type' => 'string', + 'example' => '216.206706', + ], + 'Bitrate' => [ + 'title' => '码率', + 'description' => 'The bitrate.'."\n", + 'type' => 'string', + 'example' => '1001.594', + ], + 'NumFrames' => [ + 'title' => '总帧数', + 'description' => 'The number of frames.'."\n", + 'type' => 'string', + 'example' => '5184', + ], + 'Lang' => [ + 'title' => '语言', + 'description' => 'The language.'."\n", + 'type' => 'string', + 'example' => 'und', + ], + 'Rotate' => [ + 'title' => '旋转', + 'description' => 'The rotation angle.'."\n", + 'type' => 'string', + 'example' => '0', + ], + 'Nb_frames' => [ + 'title' => '总帧数', + 'description' => 'The total number of frames.'."\n", + 'type' => 'string', + 'example' => '5184', + ], + ], + 'description' => '', + ], + ], + 'SubtitleStreamInfoList' => [ + 'title' => '字幕流信息,一个媒资可能有多条字幕流', + 'description' => 'The information about the subtitle tracks. A media asset may have multiple subtitle tracks.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Index' => [ + 'title' => '音频流序号', + 'description' => 'The sequence number of the subtitle track.'."\n", + 'type' => 'string', + 'example' => '1', + ], + 'CodecName' => [ + 'title' => '编码格式简述名', + 'description' => 'The short name of the codec.'."\n", + 'type' => 'string', + 'example' => 'srt', + ], + 'CodecLongName' => [ + 'title' => '编码格式长述名', + 'description' => 'The full name of the codec.'."\n", + 'type' => 'string', + 'example' => 'SubRip Text', + ], + 'CodecTimeBase' => [ + 'title' => '编码时基', + 'description' => 'The time base of the codec.'."\n", + 'type' => 'string', + 'example' => '29.97', + ], + 'CodecTagString' => [ + 'title' => '编码格式标记文本', + 'description' => 'The tag string of the codec.'."\n", + 'type' => 'string', + 'example' => 'unicode', + ], + 'CodecTag' => [ + 'title' => '编码格式标记', + 'description' => 'The tag of the codec.'."\n", + 'type' => 'string', + 'example' => 'unicode', + ], + 'Timebase' => [ + 'title' => '时基', + 'description' => 'The time base.'."\n", + 'type' => 'string', + 'example' => '30', + ], + 'StartTime' => [ + 'title' => '起始时间', + 'description' => 'The start time.'."\n", + 'type' => 'string', + 'example' => '0', + ], + 'Duration' => [ + 'title' => '时长', + 'description' => 'The duration.'."\n", + 'type' => 'string', + 'example' => '1', + ], + 'Lang' => [ + 'title' => '语言', + 'description' => 'The language.'."\n", + 'type' => 'string', + 'example' => 'und', + ], + ], + 'description' => '', + ], + ], + ], + 'description' => '', + ], + ], + 'AiRoughData' => [ + 'description' => 'The original AI analysis data.'."\n", + 'type' => 'object', + 'properties' => [ + 'Result' => [ + 'description' => 'The analysis result.'."\n", + 'type' => 'string', + 'example' => 'https://sample-bucket.cn-shanghai.aliyuncs.com/result.json', + ], + 'Status' => [ + 'description' => 'The analysis status. Valid values:'."\n" + ."\n" + .'* Analyzing'."\n" + .'* AnalyzeSuccess'."\n" + .'* AnalyzeFailed'."\n" + .'* Saving'."\n" + .'* SaveSuccess'."\n" + .'* SaveFailed'."\n" + .'* Deleting'."\n" + .'* DeleteSuccess'."\n" + .'* DeleteFailed'."\n", + 'type' => 'string', + 'example' => 'Analyzing', + ], + 'SaveType' => [ + 'description' => 'The storage type. This parameter indicates the library in which the analysis data is stored. Valid values:'."\n" + ."\n" + .'* TEXT: the text library.'."\n", + 'type' => 'string', + 'example' => 'TEXT', + ], + 'AiCategory' => [ + 'description' => 'The AI category. Valid values:'."\n" + ."\n" + .'* Life'."\n" + .'* Good-looking'."\n" + .'* Cute pets'."\n" + .'* News'."\n" + .'* Ads'."\n" + .'* Environmental resources'."\n" + .'* Automobile'."\n", + 'type' => 'string', + 'example' => '', + ], + 'AiJobId' => [ + 'description' => 'The ID of the AI task.'."\n", + 'type' => 'string', + 'example' => '****483915d4f2cd8ac20b48fb04****', + ], + 'StandardSmartTagJob' => [ + 'description' => 'The information about the tagging job.'."\n", + 'type' => 'object', + 'properties' => [ + 'AiJobId' => [ + 'description' => 'The ID of the AI task.'."\n", + 'type' => 'string', + 'example' => '****483915d4f2cd8ac20b48fb04****', + ], + 'Status' => [ + 'description' => 'The analysis status. Valid values:'."\n" + ."\n" + .'* Analyzing'."\n" + .'* AnalyzeSuccess'."\n" + .'* AnalyzeFailed'."\n", + 'type' => 'string', + 'example' => 'Analyzing', + ], + 'ResultUrl' => [ + 'description' => 'The URL of the tagging result.'."\n", + 'type' => 'string', + 'example' => 'http://xx.oss-cn-shanghai.aliyuncs.com/result2.txt', + ], + 'Results' => [ + 'description' => 'The recognized tags.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The information about the recognized tag.'."\n", + 'type' => 'object', + 'properties' => [ + 'Data' => [ + 'description' => 'The result data. The value is a JSON string. For information about the data structures of different data types<props="china">, see [Description of the Results parameter](https://help.aliyun.com/zh/ims/developer-reference/api-ice-2020-11-09-querysmarttagjob?spm=a2c4g.11186623.0.0.521d48b7KfapOL#api-detail-40)</props>.', + 'type' => 'string', + 'example' => '{"autoChapters": [...]}', + ], + 'Type' => [ + 'description' => 'The tagging type. Valid values:'."\n" + ."\n" + .'* NLP: natural language processing (NLP)-based tagging'."\n", + 'type' => 'string', + 'example' => 'NLP', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"2FDE2411-DB8D-4A9A-875B-275798F14A5E\\",\\n \\"MediaInfo\\": {\\n \\"MediaId\\": \\"****20b48fb04483915d4f2cd8ac****\\",\\n \\"MediaBasicInfo\\": {\\n \\"MediaId\\": \\"****20b48fb04483915d4f2cd8ac****\\",\\n \\"InputURL\\": \\"https://example-bucket.oss-cn-shanghai.aliyuncs.com/example.mp4\\",\\n \\"MediaType\\": \\"video\\",\\n \\"BusinessType\\": \\"general\\",\\n \\"Source\\": \\"oss\\",\\n \\"Title\\": \\"标题\\",\\n \\"Description\\": \\"描述\\",\\n \\"Category\\": \\"分类\\",\\n \\"MediaTags\\": \\"标签,tag1\\",\\n \\"CoverURL\\": \\"http://example-bucket.oss-cn-shanghai.aliyuncs.com/example.png?Expires=<ExpireTime>&OSSAccessKeyId=<OSSAccessKeyId>&Signature=<Signature>&security-token=<SecurityToken>\\",\\n \\"UserData\\": \\"userDataTest\\",\\n \\"Snapshots\\": \\"[\\\\n \\\\\\"http://example-bucket.oss-cn-shanghai.aliyuncs.com/snapshot-00001.png?Expires=<ExpireTime>&OSSAccessKeyId=<OSSAccessKeyId>&Signature=<Signature>&security-token=<SecurityToken>\\\\\\",\\\\n \\\\\\"http://example-bucket.oss-cn-shanghai.aliyuncs.com/snapshot-00002.jpg?Expires=<ExpireTime>&OSSAccessKeyId=<OSSAccessKeyId>&Signature=<Signature>&security-token=<SecurityToken>\\\\\\",\\\\n \\\\\\"http://example-bucket.oss-cn-shanghai.aliyuncs.com/snapshot-00003.jpg?Expires=<ExpireTime>&OSSAccessKeyId=<OSSAccessKeyId>&Signature=<Signature>&security-token=<SecurityToken>\\\\\\"\\\\n]\\",\\n \\"Status\\": \\"Normal\\",\\n \\"CreateTime\\": \\"2020-12-26T04:11:08Z\\",\\n \\"ModifiedTime\\": \\"2020-12-26T04:11:10Z\\",\\n \\"DeletedTime\\": \\"2020-12-26T04:11:15Z\\",\\n \\"SpriteImages\\": \\"[{\\\\\\"bucket\\\\\\":\\\\\\"example-bucket\\\\\\",\\\\\\"count\\\\\\":\\\\\\"32\\\\\\",\\\\\\"iceJobId\\\\\\":\\\\\\"******83ec44d58b2069def2e******\\\\\\",\\\\\\"location\\\\\\":\\\\\\"oss-cn-shanghai\\\\\\",\\\\\\"snapshotRegular\\\\\\":\\\\\\"example/example-{Count}.jpg\\\\\\",\\\\\\"spriteRegular\\\\\\":\\\\\\"example/example-{TileCount}.jpg\\\\\\",\\\\\\"templateId\\\\\\":\\\\\\"******e438b14ff39293eaec25******\\\\\\",\\\\\\"tileCount\\\\\\":\\\\\\"1\\\\\\"}]\\",\\n \\"CateId\\": 3048,\\n \\"Biz\\": \\"ICE\\",\\n \\"UploadSource\\": \\"general\\",\\n \\"CateName\\": \\"cateName\\",\\n \\"ReferenceId\\": \\"123-1234\\"\\n },\\n \\"FileInfoList\\": [\\n {\\n \\"FileBasicInfo\\": {\\n \\"FileName\\": \\"example.mp4\\",\\n \\"FileStatus\\": \\"Normal\\",\\n \\"FileType\\": \\"source_file\\",\\n \\"FileSize\\": \\"30611502\\",\\n \\"FileUrl\\": \\"http://example-bucket.oss-cn-shanghai.aliyuncs.com/example.mp4?Expires=<ExpireTime>&OSSAccessKeyId=<OSSAccessKeyId>&Signature=<Signature>&security-token=<SecurityToken>\\",\\n \\"Region\\": \\"cn-shanghai\\",\\n \\"FormatName\\": \\"mov,mp4,m4a,3gp,3g2,mj2\\",\\n \\"Duration\\": \\"216.206667\\",\\n \\"Bitrate\\": \\"1132.68\\",\\n \\"Width\\": \\"960\\",\\n \\"Height\\": \\"540\\",\\n \\"CreateTime\\": \\"2020-12-26T04:11:08Z\\",\\n \\"ModifiedTime\\": \\"2020-12-26T04:11:10Z\\"\\n },\\n \\"AudioStreamInfoList\\": [\\n {\\n \\"Index\\": \\"1\\",\\n \\"CodecName\\": \\"aac\\",\\n \\"CodecLongName\\": \\"AAC (Advanced Audio Coding)\\",\\n \\"CodecTimeBase\\": \\"1/24000\\",\\n \\"CodecTagString\\": \\"mp4a\\",\\n \\"CodecTag\\": \\"0x6134706d\\",\\n \\"Profile\\": \\"High\\",\\n \\"SampleFmt\\": \\"fltp\\",\\n \\"SampleRate\\": \\"44100\\",\\n \\"Channels\\": \\"2\\",\\n \\"ChannelLayout\\": \\"stereo\\",\\n \\"Timebase\\": \\"1/44100\\",\\n \\"StartTime\\": \\"0.000000\\",\\n \\"Duration\\": \\"16.200998\\",\\n \\"Bitrate\\": \\"127.794\\",\\n \\"Fps\\": \\"8\\",\\n \\"NumFrames\\": \\"10\\",\\n \\"Lang\\": \\"und\\"\\n }\\n ],\\n \\"VideoStreamInfoList\\": [\\n {\\n \\"Index\\": \\"0\\",\\n \\"CodecName\\": \\"h264\\",\\n \\"CodecLongName\\": \\"H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10\\",\\n \\"Profile\\": \\"High\\",\\n \\"CodecTimeBase\\": \\"1/48\\",\\n \\"CodecTagString\\": \\"[0][0][0][0]\\",\\n \\"CodecTag\\": \\"0x0000\\",\\n \\"Width\\": \\"960\\",\\n \\"Height\\": \\"540\\",\\n \\"HasBFrames\\": \\"2\\",\\n \\"Sar\\": \\"0:1\\",\\n \\"Dar\\": \\"0:1\\",\\n \\"PixFmt\\": \\"yuv420p\\",\\n \\"Level\\": \\"30\\",\\n \\"Fps\\": \\"24.0\\",\\n \\"AvgFPS\\": \\"24.0\\",\\n \\"Timebase\\": \\"1/12288\\",\\n \\"StartTime\\": \\"0.081706\\",\\n \\"Duration\\": \\"216.206706\\",\\n \\"Bitrate\\": \\"1001.594\\",\\n \\"NumFrames\\": \\"5184\\",\\n \\"Lang\\": \\"und\\",\\n \\"Rotate\\": \\"0\\",\\n \\"Nb_frames\\": \\"5184\\"\\n }\\n ],\\n \\"SubtitleStreamInfoList\\": [\\n {\\n \\"Index\\": \\"1\\",\\n \\"CodecName\\": \\"srt\\",\\n \\"CodecLongName\\": \\"SubRip Text\\",\\n \\"CodecTimeBase\\": \\"29.97\\",\\n \\"CodecTagString\\": \\"unicode\\",\\n \\"CodecTag\\": \\"unicode\\",\\n \\"Timebase\\": \\"30\\",\\n \\"StartTime\\": \\"0\\",\\n \\"Duration\\": \\"1\\",\\n \\"Lang\\": \\"und\\"\\n }\\n ]\\n }\\n ],\\n \\"AiRoughData\\": {\\n \\"Result\\": \\"https://sample-bucket.cn-shanghai.aliyuncs.com/result.json\\",\\n \\"Status\\": \\"Analyzing\\",\\n \\"SaveType\\": \\"TEXT\\",\\n \\"AiCategory\\": \\"生活\\",\\n \\"AiJobId\\": \\"****483915d4f2cd8ac20b48fb04****\\",\\n \\"StandardSmartTagJob\\": {\\n \\"AiJobId\\": \\"****483915d4f2cd8ac20b48fb04****\\",\\n \\"Status\\": \\"Analyzing\\",\\n \\"ResultUrl\\": \\"http://xx.oss-cn-shanghai.aliyuncs.com/result2.txt\\",\\n \\"Results\\": [\\n {\\n \\"Data\\": \\"{\\\\\\"autoChapters\\\\\\": [...]}\\",\\n \\"Type\\": \\"NLP\\"\\n }\\n ]\\n }\\n }\\n }\\n}","errorExample":""},{"type":"xml","example":"<GetMediaInfoResponse>\\n <RequestId>2FDE2411-DB8D-4A9A-875B-275798F14A5E</RequestId>\\n <MediaInfo>\\n <MediaId>****20b48fb04483915d4f2cd8ac****</MediaId>\\n <MediaBasicInfo>\\n <MediaId>****20b48fb04483915d4f2cd8ac****</MediaId>\\n <InputURL>https://example-bucket.oss-cn-shanghai.aliyuncs.com/example.mp4</InputURL>\\n <MediaType>video</MediaType>\\n <BusinessType>general</BusinessType>\\n <Source>oss</Source>\\n <Title>标题</Title>\\n <Description>描述</Description>\\n <Category>分类</Category>\\n <MediaTags>标签,tag1</MediaTags>\\n <CoverURL>http://example-bucket.oss-cn-shanghai.aliyuncs.com/example.png?Expires=<ExpireTime>&OSSAccessKeyId=<OSSAccessKeyId>&Signature=<Signature>&security-token=<SecurityToken></CoverURL>\\n <UserData>userDataTest</UserData>\\n <Status>Normal</Status>\\n <CreateTime>2020-12-26T04:11:08Z</CreateTime>\\n <ModifiedTime>2020-12-26T04:11:10Z</ModifiedTime>\\n <DeletedTime>2020-12-26T04:11:15Z</DeletedTime>\\n <SpriteImages>[{\\"bucket\\":\\"example-bucket\\",\\"count\\":\\"32\\",\\"iceJobId\\":\\"******83ec44d58b2069def2e******\\",\\"location\\":\\"oss-cn-shanghai\\",\\"snapshotRegular\\":\\"example/example-{Count}.jpg\\",\\"spriteRegular\\":\\"example/example-{TileCount}.jpg\\",\\"templateId\\":\\"******e438b14ff39293eaec25******\\",\\"tileCount\\":\\"1\\"}]</SpriteImages>\\n <CateId>3048</CateId>\\n <Biz>ICE</Biz>\\n <UploadSource>general</UploadSource>\\n <CateName>cateName</CateName>\\n </MediaBasicInfo>\\n <FileInfoList>\\n <FileBasicInfo>\\n <FileName>example.mp4</FileName>\\n <FileStatus>Normal</FileStatus>\\n <FileType>source_file</FileType>\\n <FileSize>30611502</FileSize>\\n <FileUrl>http://example-bucket.oss-cn-shanghai.aliyuncs.com/example.mp4?Expires=<ExpireTime>&OSSAccessKeyId=<OSSAccessKeyId>&Signature=<Signature>&security-token=<SecurityToken></FileUrl>\\n <Region>cn-shanghai</Region>\\n <FormatName>mov,mp4,m4a,3gp,3g2,mj2</FormatName>\\n <Duration>216.206667</Duration>\\n <Bitrate>1132.68</Bitrate>\\n <Width>960</Width>\\n <Height>540</Height>\\n <CreateTime>2020-12-26T04:11:08Z</CreateTime>\\n <ModifiedTime>2020-12-26T04:11:10Z</ModifiedTime>\\n </FileBasicInfo>\\n <AudioStreamInfoList>\\n <Index>1</Index>\\n <CodecName>aac</CodecName>\\n <CodecLongName>AAC (Advanced Audio Coding)</CodecLongName>\\n <CodecTimeBase>1/24000</CodecTimeBase>\\n <CodecTagString>mp4a</CodecTagString>\\n <CodecTag>0x6134706d</CodecTag>\\n <Profile>High</Profile>\\n <SampleFmt>fltp</SampleFmt>\\n <SampleRate>44100</SampleRate>\\n <Channels>2</Channels>\\n <ChannelLayout>stereo</ChannelLayout>\\n <Timebase>1/44100</Timebase>\\n <StartTime>0.000000</StartTime>\\n <Duration>16.200998</Duration>\\n <Bitrate>127.794</Bitrate>\\n <Fps>8</Fps>\\n <NumFrames>10</NumFrames>\\n <Lang>und</Lang>\\n </AudioStreamInfoList>\\n <VideoStreamInfoList>\\n <Index>0</Index>\\n <CodecName>h264</CodecName>\\n <CodecLongName>H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10</CodecLongName>\\n <Profile>High</Profile>\\n <CodecTimeBase>1/48</CodecTimeBase>\\n <CodecTagString>[0][0][0][0]</CodecTagString>\\n <CodecTag>0x0000</CodecTag>\\n <Width>960</Width>\\n <Height>540</Height>\\n <HasBFrames>2</HasBFrames>\\n <Sar>0:1</Sar>\\n <Dar>0:1</Dar>\\n <PixFmt>yuv420p</PixFmt>\\n <Level>30</Level>\\n <Fps>24.0</Fps>\\n <AvgFPS>24.0</AvgFPS>\\n <Timebase>1/12288</Timebase>\\n <StartTime>0.081706</StartTime>\\n <Duration>216.206706</Duration>\\n <Bitrate>1001.594</Bitrate>\\n <NumFrames>5184</NumFrames>\\n <Lang>und</Lang>\\n <Rotate>0</Rotate>\\n <Nb_frames>5184</Nb_frames>\\n </VideoStreamInfoList>\\n <SubtitleStreamInfoList>\\n <Index>1</Index>\\n <CodecName>srt</CodecName>\\n <CodecLongName>SubRip Text</CodecLongName>\\n <CodecTimeBase>29.97</CodecTimeBase>\\n <CodecTagString>unicode</CodecTagString>\\n <CodecTag>unicode</CodecTag>\\n <Timebase>30</Timebase>\\n <StartTime>0</StartTime>\\n <Duration>1</Duration>\\n <Lang>und</Lang>\\n </SubtitleStreamInfoList>\\n </FileInfoList>\\n </MediaInfo>\\n</GetMediaInfoResponse>","errorExample":""}]', + 'title' => 'GetMediaInfo', + 'description' => 'If the MediaId parameter is specified, the MediaId parameter is preferentially used for the query. If the MediaId parameter is left empty, the InputURL parameter must be specified.'."\n", + ], + 'UpdateMediaInfo' => [ + 'summary' => 'Updates information about a media asset based on the ID of the media asset in Intelligent Media Services (IMS) or the input URL of the media asset.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'MediaId', + 'in' => 'query', + 'schema' => [ + 'title' => '媒资Id', + 'description' => 'The ID of the media asset. If this parameter is left empty, you must specify the input URL of the media asset, which has been registered in the IMS content library.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + ], + [ + 'name' => 'InputURL', + 'in' => 'query', + 'schema' => [ + 'title' => '媒资媒体类型', + 'description' => 'The input URL of the media asset in another service. The URL must be bound to the ID of the media asset in IMS. The URL cannot be modified once registered.'."\n" + ."\n" + .'For a media asset from Object Storage Service (OSS), the URL may have one of the following formats:'."\n" + ."\n" + .'1\\. http(s)://example-bucket.oss-cn-shanghai.aliyuncs.com/example.mp4'."\n" + ."\n" + .'2\\. oss://example-bucket/example.mp4. This format indicates that the region in which the OSS bucket of the media asset resides is the same as the region in which OSS is activated.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'http://example-bucket.oss-cn-shanghai.aliyuncs.com/example.mp4', + ], + ], + [ + 'name' => 'BusinessType', + 'in' => 'query', + 'schema' => [ + 'title' => '媒资业务类型', + 'description' => 'The business type. Valid values:'."\n" + ."\n" + .'* subtitles'."\n" + .'* watermark'."\n" + .'* opening'."\n" + .'* ending'."\n" + .'* general'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'video', + ], + ], + [ + 'name' => 'Title', + 'in' => 'query', + 'schema' => [ + 'title' => '标题', + 'description' => 'The title.'."\n" + ."\n" + .'* The value can be up to 128 bytes in length.'."\n" + .'* The value must be encoded in UTF-8.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'defaultTitle', + ], + ], + [ + 'name' => 'Description', + 'in' => 'query', + 'schema' => [ + 'title' => '描述', + 'description' => 'The content description.'."\n" + ."\n" + .'* The value can be up to 1,024 bytes in length.'."\n" + .'* The value must be encoded in UTF-8.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'defaultDescription', + ], + ], + [ + 'name' => 'Category', + 'in' => 'query', + 'schema' => [ + 'title' => '分类', + 'description' => 'The category.'."\n" + ."\n" + .'* The value can be up to 64 bytes in length.'."\n" + .'* The value must be encoded in UTF-8.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'defaultCategory', + ], + ], + [ + 'name' => 'MediaTags', + 'in' => 'query', + 'schema' => [ + 'title' => '标签,如果有多个标签用逗号隔开', + 'description' => 'The tags.'."\n" + ."\n" + .'* Up to 16 tags are supported.'."\n" + .'* Separate multiple tags with commas (,).'."\n" + .'* Each tag can be up to 32 bytes in length.'."\n" + .'* The value must be encoded in UTF-8.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'updateTags1,updateTags2', + ], + ], + [ + 'name' => 'CoverURL', + 'in' => 'query', + 'schema' => [ + 'title' => '封面图,仅视频媒资有效', + 'description' => 'The URL of the thumbnail.'."\n" + ."\n" + .'* The value can be up to 128 bytes in length.'."\n" + .'* The value must be encoded in UTF-8.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'http://example-bucket.oss-cn-shanghai.aliyuncs.com/example.png', + ], + ], + [ + 'name' => 'UserData', + 'in' => 'query', + 'schema' => [ + 'title' => '用户数据,最大1024字节', + 'description' => 'The user data. It can be up to 1,024 bytes in size.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'userData', + ], + ], + [ + 'name' => 'AppendTags', + 'in' => 'query', + 'schema' => [ + 'title' => '是否以append的形式更新Tags字段', + 'description' => 'Specifies whether to append tags. Default value: false. Valid values:'."\n" + ."\n" + .'* true: updates the MediaTags parameter by appending new tags.'."\n" + .'* false: updates the MediaTags parameter by overwriting existing tags with new tags.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + [ + 'name' => 'CateId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The category ID.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '3048', + ], + ], + [ + 'name' => 'ReferenceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The custom ID. The ID can be 6 to 64 characters in length and can contain only letters, digits, hyphens (-), and underscores (\\_). Make sure that the ID is unique among users.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '123-123', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'MediaId' => [ + 'title' => 'ICE媒资ID', + 'description' => 'The ID of the media asset in IMS.'."\n", + 'type' => 'string', + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"MediaId\\": \\"****20b48fb04483915d4f2cd8ac****\\"\\n}","errorExample":""},{"type":"xml","example":"<UpdateMediaInfoResponse>\\n <RequestId>******11-DB8D-4A9A-875B-275798******</RequestId>\\n <MediaId>****20b48fb04483915d4f2cd8ac****</MediaId>\\n</UpdateMediaInfoResponse>","errorExample":""}]', + 'title' => 'UpdateMediaInfo', + 'description' => 'If the MediaId parameter is specified, the MediaId parameter is preferentially used for the query. If the MediaId parameter is left empty, the InputURL parameter must be specified. The request ID and media asset ID are returned. You cannot modify the input URL of a media asset by specifying the ID of the media asset.'."\n", + ], + 'DeleteMediaInfos' => [ + 'summary' => 'Deletes multiple media assets at a time. You can delete at most 20 media assets at a time. If MediaIds is specified, it is preferentially used. If MediaIds is empty, InputURLs must be specified.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'MediaIds', + 'in' => 'query', + 'schema' => [ + 'title' => 'ICE 媒资ID', + 'description' => 'The ID of the media asset that you want to delete from Intelligent Media Services (IMS).'."\n" + ."\n" + .'* Separate multiple IDs with commas (,).'."\n" + ."\n" + .'If you leave MediaIds empty, you must specify InputURLs.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '****20b48fb04483915d4f2cd8ac****,****15d4a4b0448391508f2cb486****', + ], + ], + [ + 'name' => 'InputURLs', + 'in' => 'query', + 'schema' => [ + 'title' => '待注册的媒资在相应系统中的地址', + 'description' => 'The URL of the media asset that you want to delete. The file corresponding to the URL must be registered with IMS. Separate multiple URLs with commas (,). The following two formats are supported:'."\n" + ."\n" + .'1. http(s)://example-bucket.oss-cn-shanghai.aliyuncs.com/example.mp4?'."\n" + .'2. OSS://example-bucket/example.mp4?\\'."\n" + .' In this format, it is considered by default that the region of the OSS bucket in which the media asset resides is the same as the region in which IMS is activated.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '', + ], + ], + [ + 'name' => 'DeletePhysicalFiles', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to delete the physical file of the media asset.'."\n" + ."\n" + .'If the media asset is stored in your own OSS bucket, you must authorize the service role AliyunICEDefaultRole in advance. For more information<props="china">, see [Authorize IMS to delete recording files in OSS](https://help.aliyun.com/zh/ims/user-guide/record?spm=a2c4g.11186623.0.i8#0737d9c437bmn)</props>.', + 'type' => 'boolean', + 'required' => false, + 'example' => 'false', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '0622C702-41BE-467E-AF2E-883D4517962E', + ], + 'IgnoredList' => [ + 'title' => '出现获取错误的ID或inputUr', + 'description' => 'The IDs or URLs of ignored media assets. An error occurred while obtaining such media assets.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The ID or URL of the ignored media asset. An error occurred while obtaining the media asset.'."\n", + 'type' => 'string', + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + ], + 'ForbiddenList' => [ + 'description' => 'The IDs or URLs of media assets that cannot be deleted. Generally, media assets cannot be deleted if you do not have the required permissions.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The ID or URL of the media asset that cannot be deleted.'."\n", + 'type' => 'string', + 'example' => '****15d4a4b0448391508f2cb486****'."\n", + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"0622C702-41BE-467E-AF2E-883D4517962E\\",\\n \\"IgnoredList\\": [\\n \\"****20b48fb04483915d4f2cd8ac****\\"\\n ],\\n \\"ForbiddenList\\": [\\n \\"****15d4a4b0448391508f2cb486****\\\\n\\"\\n ]\\n}","errorExample":""},{"type":"xml","example":"<DeleteMediaInfosResponse>\\n <RequestId>0622C702-41BE-467E-AF2E-883D4517962E</RequestId>\\n <IgnoredList>****20b48fb04483915d4f2cd8ac****</IgnoredList>\\n</DeleteMediaInfosResponse>","errorExample":""}]', + 'title' => 'DeleteMediaInfos', + ], + 'BatchGetMediaInfos' => [ + 'summary' => 'Queries the information about multiple media assets at a time based on media asset IDs.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceJQ6U8A', + ], + ], + 'parameters' => [ + [ + 'name' => 'MediaIds', + 'in' => 'query', + 'schema' => [ + 'description' => 'The IDs of the media assets that you want to query. Separate the IDs with commas (,).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '******b48fb04483915d4f2cd8******,******c48fb37407365d4f2cd8******', + ], + ], + [ + 'name' => 'AdditionType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The additional information that you want to query about the media assets. By default, only BasicInfo is returned. The following additional information can be queried:'."\n" + ."\n" + .'\\- FileInfo'."\n" + ."\n" + .'\\- DynamicMetaData'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'FileInfo,DynamicMetaData', + ], + ], + [ + 'name' => 'AuthTimeout', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int64', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'MediaInfos' => [ + 'title' => '符合要求的媒资集合', + 'description' => 'The queried media assets.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'MediaId' => [ + 'title' => '媒资ID', + 'description' => 'The ID of the media asset.'."\n", + 'type' => 'string', + 'example' => '******c48fb37407365d4f2cd8******', + ], + 'MediaBasicInfo' => [ + 'title' => 'BasicInfo', + 'description' => 'The basic information of the media asset.'."\n", + 'type' => 'object', + 'properties' => [ + 'MediaId' => [ + 'title' => 'MediaId', + 'description' => 'MediaId'."\n", + 'type' => 'string', + 'example' => '******c48fb37407365d4f2cd8******', + ], + 'InputURL' => [ + 'title' => '待注册的媒资在相应系统中的地址', + 'description' => 'The URL of the media asset in another service.'."\n", + 'type' => 'string', + 'example' => 'https://example-bucket.oss-cn-shanghai.aliyuncs.com/example.mp4', + ], + 'MediaType' => [ + 'title' => '媒资媒体类型', + 'description' => 'The type of the media asset. Valid values:'."\n" + ."\n" + .'\\- image'."\n" + ."\n" + .'\\- video'."\n" + ."\n" + .'\\- audio'."\n" + ."\n" + .'\\- text'."\n", + 'type' => 'string', + 'example' => 'video', + ], + 'BusinessType' => [ + 'title' => '媒资业务类型', + 'description' => 'The business type of the media asset.'."\n", + 'type' => 'string', + 'example' => 'general', + ], + 'Source' => [ + 'title' => '来源', + 'description' => 'The source of the media asset. Valid values:'."\n" + ."\n" + .'\\- oss'."\n" + ."\n" + .'\\- vod'."\n", + 'type' => 'string', + 'example' => 'oss', + ], + 'Title' => [ + 'title' => '标题', + 'description' => 'The title of the media asset.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'Description' => [ + 'title' => '内容描述', + 'description' => 'The description of the media asset.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'Category' => [ + 'title' => '分类', + 'description' => 'The category of the media asset.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'MediaTags' => [ + 'title' => '标签', + 'description' => 'The tags of the media asset.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'CoverURL' => [ + 'title' => '封面地址', + 'description' => 'The thumbnail URL of the media asset.'."\n", + 'type' => 'string', + 'example' => 'http://example-bucket.oss-cn-shanghai.aliyuncs.com/example.png?Expires=<ExpireTime>&OSSAccessKeyId=<OSSAccessKeyId>&Signature=<Signature>&security-token=<SecurityToken>', + ], + 'UserData' => [ + 'title' => '用户数据', + 'description' => 'The user data.'."\n", + 'type' => 'string', + 'example' => 'userDataTest', + ], + 'Snapshots' => [ + 'title' => '截图', + 'description' => 'The snapshots of the media asset.'."\n", + 'type' => 'string', + 'example' => '[{"bucket":"example-bucket","count":"3","iceJobId":"******f48f0e4154976b2b8c45******","location":"oss-cn-beijing","snapshotRegular":"example.jpg","templateId":"******e6a6440b29eb60bd7c******"}]', + ], + 'Status' => [ + 'title' => '资源状态', + 'description' => 'The status of the media asset.'."\n", + 'type' => 'string', + 'example' => 'Normal', + ], + 'TranscodeStatus' => [ + 'title' => '转码状态', + 'description' => 'The transcoding status of the media asset.'."\n", + 'type' => 'string', + 'example' => 'Init', + ], + 'CreateTime' => [ + 'title' => '媒资创建时间', + 'description' => 'The time when the media asset was created.'."\n", + 'type' => 'string', + 'example' => '2020-12-26T04:11:10Z', + ], + 'ModifiedTime' => [ + 'title' => '媒资修改时间', + 'description' => 'The time when the media asset was last modified.'."\n", + 'type' => 'string', + 'example' => '2020-12-26T04:11:12Z', + ], + 'DeletedTime' => [ + 'title' => '媒资删除时间', + 'description' => 'The time when the media asset was deleted.'."\n", + 'type' => 'string', + 'example' => '2020-12-26T04:11:10Z', + ], + 'SpriteImages' => [ + 'title' => '雪碧图', + 'description' => 'The sprite.'."\n", + 'type' => 'string', + 'example' => '[{"bucket":"example-bucket","count":"32","iceJobId":"******83ec44d58b2069def2e******","location":"oss-cn-shanghai","snapshotRegular":"example/example-{Count}.jpg","spriteRegular":"example/example-{TileCount}.jpg","templateId":"******e438b14ff39293eaec25******","tileCount":"1"}]', + ], + 'Biz' => [ + 'type' => 'string', + ], + ], + ], + 'FileInfoList' => [ + 'title' => 'FileInfos', + 'description' => 'FileInfos'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'FileBasicInfo' => [ + 'title' => '文件基础信息,包含时长,大小等', + 'description' => 'The basic information of the file, including the duration and size.'."\n", + 'type' => 'object', + 'properties' => [ + 'FileName' => [ + 'title' => '文件名', + 'description' => 'The file name.'."\n", + 'type' => 'string', + 'example' => 'example', + ], + 'FileStatus' => [ + 'title' => '文件状态', + 'description' => 'The file status.'."\n", + 'type' => 'string', + 'example' => 'Normal', + ], + 'FileType' => [ + 'title' => '文件类型', + 'description' => 'The file type.'."\n", + 'type' => 'string', + 'example' => 'source_file', + ], + 'FileSize' => [ + 'title' => '文件大小(字节)', + 'description' => 'The file size. Unit: bytes.'."\n", + 'type' => 'string', + 'example' => '30611502', + ], + 'FileUrl' => [ + 'title' => '文件oss地址', + 'description' => 'The Object Storage Service (OSS) URL of the file.'."\n", + 'type' => 'string', + 'example' => 'http://example-bucket.oss-cn-shanghai.aliyuncs.com/example.mp4?Expires=<ExpireTime>&OSSAccessKeyId=<OSSAccessKeyId>&Signature=<Signature>&security-token=<SecurityToken>', + ], + 'Region' => [ + 'title' => '文件存储区域', + 'description' => 'The region in which the file resides.'."\n", + 'type' => 'string', + 'example' => 'cn-shanghai', + ], + 'FormatName' => [ + 'title' => '封装格式', + 'description' => 'The container format.'."\n", + 'type' => 'string', + 'example' => 'mov,mp4,m4a,3gp,3g2,mj2', + ], + 'Duration' => [ + 'title' => '时长', + 'description' => 'The duration.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Bitrate' => [ + 'title' => '码率', + 'description' => 'The bitrate.'."\n", + 'type' => 'string', + 'example' => '1132.68', + ], + 'Width' => [ + 'title' => '宽', + 'description' => 'The width.'."\n", + 'type' => 'string', + 'example' => '1920', + ], + 'Height' => [ + 'title' => '高', + 'description' => 'The height.'."\n", + 'type' => 'string', + 'example' => '1080', + ], + ], + ], + ], + 'description' => '', + ], + ], + 'MediaDynamicInfo' => [ + 'type' => 'object', + 'properties' => [ + 'DynamicMetaData' => [ + 'type' => 'object', + 'properties' => [ + 'Data' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + ], + 'description' => '', + ], + ], + 'IgnoredList' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + ], + 'staticInfo' => [], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"MediaInfos\\": [\\n {\\n \\"MediaId\\": \\"******c48fb37407365d4f2cd8******\\",\\n \\"MediaBasicInfo\\": {\\n \\"MediaId\\": \\"******c48fb37407365d4f2cd8******\\",\\n \\"InputURL\\": \\"https://example-bucket.oss-cn-shanghai.aliyuncs.com/example.mp4\\",\\n \\"MediaType\\": \\"video\\",\\n \\"BusinessType\\": \\"general\\",\\n \\"Source\\": \\"oss\\",\\n \\"Title\\": \\"标题\\",\\n \\"Description\\": \\"描述\\",\\n \\"Category\\": \\"分类\\",\\n \\"MediaTags\\": \\"标签,tag1\\",\\n \\"CoverURL\\": \\"http://example-bucket.oss-cn-shanghai.aliyuncs.com/example.png?Expires=<ExpireTime>&OSSAccessKeyId=<OSSAccessKeyId>&Signature=<Signature>&security-token=<SecurityToken>\\",\\n \\"UserData\\": \\"userDataTest\\",\\n \\"Snapshots\\": \\"[{\\\\\\"bucket\\\\\\":\\\\\\"example-bucket\\\\\\",\\\\\\"count\\\\\\":\\\\\\"3\\\\\\",\\\\\\"iceJobId\\\\\\":\\\\\\"******f48f0e4154976b2b8c45******\\\\\\",\\\\\\"location\\\\\\":\\\\\\"oss-cn-beijing\\\\\\",\\\\\\"snapshotRegular\\\\\\":\\\\\\"example.jpg\\\\\\",\\\\\\"templateId\\\\\\":\\\\\\"******e6a6440b29eb60bd7c******\\\\\\"}]\\",\\n \\"Status\\": \\"Normal\\",\\n \\"TranscodeStatus\\": \\"Init\\",\\n \\"CreateTime\\": \\"2020-12-26T04:11:10Z\\",\\n \\"ModifiedTime\\": \\"2020-12-26T04:11:12Z\\",\\n \\"DeletedTime\\": \\"2020-12-26T04:11:10Z\\",\\n \\"SpriteImages\\": \\"[{\\\\\\"bucket\\\\\\":\\\\\\"example-bucket\\\\\\",\\\\\\"count\\\\\\":\\\\\\"32\\\\\\",\\\\\\"iceJobId\\\\\\":\\\\\\"******83ec44d58b2069def2e******\\\\\\",\\\\\\"location\\\\\\":\\\\\\"oss-cn-shanghai\\\\\\",\\\\\\"snapshotRegular\\\\\\":\\\\\\"example/example-{Count}.jpg\\\\\\",\\\\\\"spriteRegular\\\\\\":\\\\\\"example/example-{TileCount}.jpg\\\\\\",\\\\\\"templateId\\\\\\":\\\\\\"******e438b14ff39293eaec25******\\\\\\",\\\\\\"tileCount\\\\\\":\\\\\\"1\\\\\\"}]\\",\\n \\"Biz\\": \\"\\"\\n },\\n \\"FileInfoList\\": [\\n {\\n \\"FileBasicInfo\\": {\\n \\"FileName\\": \\"example\\",\\n \\"FileStatus\\": \\"Normal\\",\\n \\"FileType\\": \\"source_file\\",\\n \\"FileSize\\": \\"30611502\\",\\n \\"FileUrl\\": \\"http://example-bucket.oss-cn-shanghai.aliyuncs.com/example.mp4?Expires=<ExpireTime>&OSSAccessKeyId=<OSSAccessKeyId>&Signature=<Signature>&security-token=<SecurityToken>\\",\\n \\"Region\\": \\"cn-shanghai\\",\\n \\"FormatName\\": \\"mov,mp4,m4a,3gp,3g2,mj2\\",\\n \\"Duration\\": \\"200\\",\\n \\"Bitrate\\": \\"1132.68\\",\\n \\"Width\\": \\"1920\\",\\n \\"Height\\": \\"1080\\"\\n }\\n }\\n ],\\n \\"MediaDynamicInfo\\": {\\n \\"DynamicMetaData\\": {\\n \\"Data\\": \\"\\"\\n }\\n }\\n }\\n ],\\n \\"IgnoredList\\": [\\n \\"\\"\\n ]\\n}","errorExample":""},{"type":"xml","example":"<BatchGetMediaInfosResponse>\\n <RequestId>******11-DB8D-4A9A-875B-275798******</RequestId>\\n <MediaInfos>\\n <MediaId>******c48fb37407365d4f2cd8******</MediaId>\\n <MediaBasicInfo>\\n <MediaId>******c48fb37407365d4f2cd8******</MediaId>\\n <InputURL>https://example-bucket.oss-cn-shanghai.aliyuncs.com/example.mp4</InputURL>\\n <MediaType>video</MediaType>\\n <BusinessType>general</BusinessType>\\n <Source>oss</Source>\\n <Title>标题</Title>\\n <Description>描述</Description>\\n <Category>分类</Category>\\n <MediaTags>标签,tag1</MediaTags>\\n <CoverURL>http://example-bucket.oss-cn-shanghai.aliyuncs.com/example.png?Expires=<ExpireTime>&OSSAccessKeyId=<OSSAccessKeyId>&Signature=<Signature>&security-token=<SecurityToken></CoverURL>\\n <UserData>userDataTest</UserData>\\n <Snapshots>[{\\"bucket\\":\\"example-bucket\\",\\"count\\":\\"3\\",\\"iceJobId\\":\\"******f48f0e4154976b2b8c45******\\",\\"location\\":\\"oss-cn-beijing\\",\\"snapshotRegular\\":\\"example.jpg\\",\\"templateId\\":\\"******e6a6440b29eb60bd7c******\\"}]</Snapshots>\\n <Status>Normal</Status>\\n <TranscodeStatus>Init</TranscodeStatus>\\n <CreateTime>2020-12-26T04:11:10Z</CreateTime>\\n <ModifiedTime>2020-12-26T04:11:12Z</ModifiedTime>\\n <DeletedTime>2020-12-26T04:11:10Z</DeletedTime>\\n <SpriteImages>[{\\"bucket\\":\\"example-bucket\\",\\"count\\":\\"32\\",\\"iceJobId\\":\\"******83ec44d58b2069def2e******\\",\\"location\\":\\"oss-cn-shanghai\\",\\"snapshotRegular\\":\\"example/example-{Count}.jpg\\",\\"spriteRegular\\":\\"example/example-{TileCount}.jpg\\",\\"templateId\\":\\"******e438b14ff39293eaec25******\\",\\"tileCount\\":\\"1\\"}]</SpriteImages>\\n </MediaBasicInfo>\\n <FileInfoList>\\n <FileBasicInfo>\\n <FileName>example</FileName>\\n <FileStatus>Normal</FileStatus>\\n <FileType>source_file</FileType>\\n <FileSize>30611502</FileSize>\\n <FileUrl>http://example-bucket.oss-cn-shanghai.aliyuncs.com/example.mp4?Expires=<ExpireTime>&OSSAccessKeyId=<OSSAccessKeyId>&Signature=<Signature>&security-token=<SecurityToken></FileUrl>\\n <Region>cn-shanghai</Region>\\n <FormatName>mov,mp4,m4a,3gp,3g2,mj2</FormatName>\\n <Duration>200</Duration>\\n <Bitrate>1132.68</Bitrate>\\n <Width>1920</Width>\\n <Height>1080</Height>\\n </FileBasicInfo>\\n </FileInfoList>\\n </MediaInfos>\\n</BatchGetMediaInfosResponse>","errorExample":""}]', + 'title' => 'BatchGetMediaInfos', + ], + 'ListMediaBasicInfos' => [ + 'summary' => 'Queries the basic information of all media assets that meet the specified conditions.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceJQ6U8A', + ], + ], + 'parameters' => [ + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'title' => '创建时间', + 'description' => 'The start time of utcCreated.'."\n" + ."\n" + .'\\- The value is the beginning of a left-open right-closed interval.'."\n" + ."\n" + .'\\- Specify the time in the ISO 8601 standard in the YYYY-MM-DDThh:mm:ssZ format. For example, 2017-01-11T12:00:00Z indicates 20:00:00 on January 11, 2017 (UTC +8).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2020-12-20T12:00:00Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'title' => '结束时间', + 'description' => 'The end time of utcCreated.'."\n" + ."\n" + .'\\- The value is the end of the left-open right-closed interval.'."\n" + ."\n" + .'\\- Specify the time in the ISO 8601 standard in the YYYY-MM-DDThh:mm:ssZ format. For example, 2017-01-11T12:00:00Z indicates 20:00:00 on January 11, 2017 (UTC +8).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2020-12-20T13:00:00Z', + ], + ], + [ + 'name' => 'MediaType', + 'in' => 'query', + 'schema' => [ + 'title' => '媒资媒体类型', + 'description' => 'The type of the media asset. Valid values:'."\n" + ."\n" + .'\\- image'."\n" + ."\n" + .'\\- video'."\n" + ."\n" + .'\\- audio'."\n" + ."\n" + .'\\- text'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'video', + ], + ], + [ + 'name' => 'BusinessType', + 'in' => 'query', + 'schema' => [ + 'title' => '媒资业务类型', + 'description' => 'The business type of the media asset. Valid values:'."\n" + ."\n" + .'\\- subtitles'."\n" + ."\n" + .'\\- watermark'."\n" + ."\n" + .'\\- opening'."\n" + ."\n" + .'\\- ending'."\n" + ."\n" + .'\\- general'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'opening', + ], + ], + [ + 'name' => 'Source', + 'in' => 'query', + 'schema' => [ + 'title' => '来源', + 'description' => 'The source of the media asset. Valid values:'."\n" + ."\n" + .'\\- oss: Object Storage Service (OSS).'."\n" + ."\n" + .'\\- vod: ApsaraVideo VOD.'."\n" + ."\n" + .'\\- live: ApsaraVideo Live.'."\n" + ."\n" + .'\\- general: other sources. This is the default value.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'oss', + ], + ], + [ + 'name' => 'Status', + 'in' => 'query', + 'schema' => [ + 'title' => '资源状态', + 'description' => 'The status of the media asset. Valid values:'."\n" + ."\n" + .'\\- Init: the initial state, which indicates that the source file is not ready.'."\n" + ."\n" + .'\\- Preparing: The source file is being prepared. For example, the file is being uploaded or edited.'."\n" + ."\n" + .'\\- PrepareFail: The source file failed to be prepared. For example, the information of the source file failed to be obtained.'."\n" + ."\n" + .'\\- Normal: The source file is ready.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'Normal', + ], + ], + [ + 'name' => 'NextToken', + 'in' => 'query', + 'schema' => [ + 'title' => '页号', + 'description' => 'The pagination token that is used in the next request to retrieve a new page of results. You do not need to specify this parameter for the first request. You must specify the token that is obtained from the previous query as the value of NextToken.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'pSa1SQ0wCe5pzVrQ6mWZEw==', + ], + ], + [ + 'name' => 'MaxResults', + 'in' => 'query', + 'schema' => [ + 'title' => '分页大小', + 'description' => 'The maximum number of entries to return.'."\n" + ."\n" + .'Maximum value: 100. Default value: 10.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '100', + 'minimum' => '1', + 'example' => '5', + 'default' => '10', + ], + ], + [ + 'name' => 'SortBy', + 'in' => 'query', + 'schema' => [ + 'title' => '排序', + 'description' => 'The order of sorting by utcCreated. Default value: desc. Valid values:'."\n" + ."\n" + .'\\- desc'."\n" + ."\n" + .'\\- asc'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'desc', + ], + ], + [ + 'name' => 'IncludeFileBasicInfo', + 'in' => 'query', + 'schema' => [ + 'title' => '返回值中是否包含文件基础信息', + 'description' => 'Specifies whether to return the basic information of the source file.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + [ + 'name' => 'MediaId', + 'in' => 'query', + 'schema' => [ + 'title' => '媒资ID,单个媒资ID支持前缀匹配', + 'description' => 'The ID of the media asset.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '****019b82e24b37a1c2958dec38****', + ], + ], + [ + 'name' => 'AuthTimeout', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int64', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******B7-7F87-4792-BFE9-63CD21******', + ], + 'TotalCount' => [ + 'title' => '符合要求的媒资总数', + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '4', + ], + 'MediaInfos' => [ + 'title' => '符合要求的媒资集合', + 'description' => 'The media assets that meet the specified conditions.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'MediaId' => [ + 'title' => '媒资ID', + 'description' => 'The ID of the media asset.'."\n", + 'type' => 'string', + 'example' => '****019b82e24b37a1c2958dec38****', + ], + 'MediaBasicInfo' => [ + 'title' => 'BasicInfo', + 'description' => 'BasicInfo'."\n", + 'type' => 'object', + 'properties' => [ + 'MediaId' => [ + 'title' => 'MediaId', + 'description' => 'The ID of the media asset.'."\n", + 'type' => 'string', + 'example' => '****019b82e24b37a1c2958dec38****', + ], + 'InputURL' => [ + 'title' => '待注册的媒资在相应系统中的地址', + 'description' => 'The URL of the media asset in another service.'."\n", + 'type' => 'string', + 'example' => 'https://example-bucket.oss-cn-shanghai.aliyuncs.com/example.mp4', + ], + 'MediaType' => [ + 'title' => '媒资媒体类型', + 'description' => 'The type of the media asset.'."\n", + 'type' => 'string', + 'example' => 'video', + ], + 'BusinessType' => [ + 'title' => '媒资业务类型', + 'description' => 'The business type of the media asset.'."\n", + 'type' => 'string', + 'example' => 'opening', + ], + 'Source' => [ + 'title' => '来源', + 'description' => 'The source of the media asset.'."\n", + 'type' => 'string', + 'example' => 'oss', + ], + 'Title' => [ + 'title' => '标题', + 'description' => 'The title of the media asset.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'Description' => [ + 'title' => '内容描述', + 'description' => 'The description of the media asset.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'Category' => [ + 'title' => '分类', + 'description' => 'The category of the media asset.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'MediaTags' => [ + 'title' => '标签', + 'description' => 'The tags of the media asset.'."\n", + 'type' => 'string', + 'example' => 'tags,tags2', + ], + 'CoverURL' => [ + 'title' => '封面地址', + 'description' => 'The thumbnail URL of the media asset.'."\n", + 'type' => 'string', + 'example' => 'http://example-bucket.oss-cn-shanghai.aliyuncs.com/example.png?Expires=<ExpireTime>&OSSAccessKeyId=<OSSAccessKeyId>&Signature=<Signature>&security-token=<SecurityToken>', + ], + 'UserData' => [ + 'title' => '用户数据', + 'description' => 'The user data.'."\n", + 'type' => 'string', + 'example' => 'userData', + ], + 'Snapshots' => [ + 'title' => '截图', + 'description' => 'The snapshots of the media asset.'."\n", + 'type' => 'string', + 'example' => '[{"bucket":"example-bucket","count":"3","iceJobId":"******f48f0e4154976b2b8c45******","location":"oss-cn-beijing","snapshotRegular":"example.jpg","templateId":"******e6a6440b29eb60bd7c******"}]', + ], + 'Status' => [ + 'title' => '资源状态', + 'description' => 'The status of the media asset.'."\n", + 'type' => 'string', + 'example' => 'Normal', + ], + 'TranscodeStatus' => [ + 'title' => '转码状态', + 'description' => 'The transcoding status of the media asset.'."\n", + 'type' => 'string', + 'example' => 'Init', + ], + 'CreateTime' => [ + 'title' => '媒资创建时间', + 'description' => 'The time when the media asset was created.'."\n", + 'type' => 'string', + 'example' => '2021-01-08T16:52:04Z', + ], + 'ModifiedTime' => [ + 'title' => '媒资修改时间', + 'description' => 'The time when the media asset was last modified.'."\n", + 'type' => 'string', + 'example' => '2021-01-08T16:52:07Z', + ], + 'DeletedTime' => [ + 'title' => '媒资删除时间', + 'description' => 'The time when the media asset was deleted.'."\n", + 'type' => 'string', + 'example' => '2021-01-08T16:52:07Z', + ], + 'SpriteImages' => [ + 'title' => '雪碧图', + 'description' => 'The sprite.'."\n", + 'type' => 'string', + 'example' => '[{"bucket":"example-bucket","count":"32","iceJobId":"******83ec44d58b2069def2e******","location":"oss-cn-shanghai","snapshotRegular":"example/example-{Count}.jpg","spriteRegular":"example/example-{TileCount}.jpg","templateId":"******e438b14ff39293eaec25******","tileCount":"1"}]', + ], + 'CateId' => [ + 'description' => 'The category ID.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '3049', + ], + 'Biz' => [ + 'description' => 'The service to which the media asset belongs.'."\n", + 'type' => 'string', + 'example' => 'ICE', + ], + 'UploadSource' => [ + 'description' => 'The upload source of the media asset.'."\n", + 'type' => 'string', + 'example' => 'general', + ], + 'ReferenceId' => [ + 'description' => 'The custom ID of the media asset. The ID is a string that contains 6 to 64 characters. Only letters, digits, hyphens (-), and underscores (\\_) are supported. The ID is unique among users.'."\n", + 'type' => 'string', + 'example' => '123-123', + ], + ], + ], + 'FileInfoList' => [ + 'title' => 'FileInfos', + 'description' => 'FileInfos'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'FileBasicInfo' => [ + 'title' => '文件基础信息,包含时长,大小等', + 'description' => 'The basic information of the file, including the duration and size.'."\n", + 'type' => 'object', + 'properties' => [ + 'FileName' => [ + 'title' => '文件名', + 'description' => 'The file name.'."\n", + 'type' => 'string', + 'example' => 'example.mp4', + ], + 'FileStatus' => [ + 'title' => '文件状态', + 'description' => 'The file status.'."\n", + 'type' => 'string', + 'example' => 'Normal', + ], + 'FileType' => [ + 'description' => 'The file type.'."\n", + 'type' => 'string', + 'example' => 'source_file', + ], + 'FileSize' => [ + 'title' => '文件大小(字节)', + 'description' => 'The file size. Unit: bytes.'."\n", + 'type' => 'string', + 'example' => '14340962', + ], + 'FileUrl' => [ + 'title' => '文件oss地址', + 'description' => 'The OSS URL of the file.'."\n", + 'type' => 'string', + 'example' => 'http://example-bucket.oss-cn-shanghai.aliyuncs.com/example2.mp4?Expires=<ExpireTime>&OSSAccessKeyId=<OSSAccessKeyId>&Signature=<Signature>&security-token=<SecurityToken>', + ], + 'Region' => [ + 'title' => '文件存储区域', + 'description' => 'The region in which the file resides.'."\n", + 'type' => 'string', + 'example' => 'cn-shanghai', + ], + 'FormatName' => [ + 'title' => '封装格式', + 'description' => 'The container format.'."\n", + 'type' => 'string', + 'example' => 'mov,mp4,m4a,3gp,3g2,mj2', + ], + 'Duration' => [ + 'title' => '时长', + 'description' => 'The duration.'."\n", + 'type' => 'string', + 'example' => '60.00000', + ], + 'Bitrate' => [ + 'title' => '码率', + 'description' => 'The bitrate.'."\n", + 'type' => 'string', + 'example' => '1912.13', + ], + 'Width' => [ + 'title' => '宽', + 'description' => 'The width.'."\n", + 'type' => 'string', + 'example' => '1280', + ], + 'Height' => [ + 'title' => '高', + 'description' => 'The height.'."\n", + 'type' => 'string', + 'example' => '720', + ], + 'CreateTime' => [ + 'description' => 'The time when the file was created.'."\n", + 'type' => 'string', + 'example' => '2021-01-08T16:52:04Z', + ], + 'ModifiedTime' => [ + 'description' => 'The time when the file was last modified.'."\n", + 'type' => 'string', + 'example' => '2021-01-08T16:52:07Z', + ], + ], + ], + ], + 'description' => '', + ], + ], + ], + 'description' => '', + ], + ], + 'NextToken' => [ + 'description' => 'A pagination token. It can be used in the next request to retrieve a new page of results. If NextToken is empty, no next page exists.'."\n", + 'type' => 'string', + 'example' => '8EqYpQbZ6Eh7+Zz8DxVYoQ==', + ], + 'MaxResults' => [ + 'description' => 'The maximum number of entries returned in the query.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '2', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"******B7-7F87-4792-BFE9-63CD21******\\",\\n \\"TotalCount\\": 4,\\n \\"MediaInfos\\": [\\n {\\n \\"MediaId\\": \\"****019b82e24b37a1c2958dec38****\\",\\n \\"MediaBasicInfo\\": {\\n \\"MediaId\\": \\"****019b82e24b37a1c2958dec38****\\",\\n \\"InputURL\\": \\"https://example-bucket.oss-cn-shanghai.aliyuncs.com/example.mp4\\",\\n \\"MediaType\\": \\"video\\",\\n \\"BusinessType\\": \\"opening\\",\\n \\"Source\\": \\"oss\\",\\n \\"Title\\": \\"title标题\\",\\n \\"Description\\": \\"desc 描述\\",\\n \\"Category\\": \\"分类 category\\",\\n \\"MediaTags\\": \\"tags,tags2\\",\\n \\"CoverURL\\": \\"http://example-bucket.oss-cn-shanghai.aliyuncs.com/example.png?Expires=<ExpireTime>&OSSAccessKeyId=<OSSAccessKeyId>&Signature=<Signature>&security-token=<SecurityToken>\\",\\n \\"UserData\\": \\"userData\\",\\n \\"Snapshots\\": \\"[{\\\\\\"bucket\\\\\\":\\\\\\"example-bucket\\\\\\",\\\\\\"count\\\\\\":\\\\\\"3\\\\\\",\\\\\\"iceJobId\\\\\\":\\\\\\"******f48f0e4154976b2b8c45******\\\\\\",\\\\\\"location\\\\\\":\\\\\\"oss-cn-beijing\\\\\\",\\\\\\"snapshotRegular\\\\\\":\\\\\\"example.jpg\\\\\\",\\\\\\"templateId\\\\\\":\\\\\\"******e6a6440b29eb60bd7c******\\\\\\"}]\\",\\n \\"Status\\": \\"Normal\\",\\n \\"TranscodeStatus\\": \\"Init\\",\\n \\"CreateTime\\": \\"2021-01-08T16:52:04Z\\",\\n \\"ModifiedTime\\": \\"2021-01-08T16:52:07Z\\",\\n \\"DeletedTime\\": \\"2021-01-08T16:52:07Z\\",\\n \\"SpriteImages\\": \\"[{\\\\\\"bucket\\\\\\":\\\\\\"example-bucket\\\\\\",\\\\\\"count\\\\\\":\\\\\\"32\\\\\\",\\\\\\"iceJobId\\\\\\":\\\\\\"******83ec44d58b2069def2e******\\\\\\",\\\\\\"location\\\\\\":\\\\\\"oss-cn-shanghai\\\\\\",\\\\\\"snapshotRegular\\\\\\":\\\\\\"example/example-{Count}.jpg\\\\\\",\\\\\\"spriteRegular\\\\\\":\\\\\\"example/example-{TileCount}.jpg\\\\\\",\\\\\\"templateId\\\\\\":\\\\\\"******e438b14ff39293eaec25******\\\\\\",\\\\\\"tileCount\\\\\\":\\\\\\"1\\\\\\"}]\\",\\n \\"CateId\\": 3049,\\n \\"Biz\\": \\"ICE\\",\\n \\"UploadSource\\": \\"general\\",\\n \\"ReferenceId\\": \\"123-123\\"\\n },\\n \\"FileInfoList\\": [\\n {\\n \\"FileBasicInfo\\": {\\n \\"FileName\\": \\"example.mp4\\",\\n \\"FileStatus\\": \\"Normal\\",\\n \\"FileType\\": \\"source_file\\",\\n \\"FileSize\\": \\"14340962\\",\\n \\"FileUrl\\": \\"http://example-bucket.oss-cn-shanghai.aliyuncs.com/example2.mp4?Expires=<ExpireTime>&OSSAccessKeyId=<OSSAccessKeyId>&Signature=<Signature>&security-token=<SecurityToken>\\",\\n \\"Region\\": \\"cn-shanghai\\",\\n \\"FormatName\\": \\"mov,mp4,m4a,3gp,3g2,mj2\\",\\n \\"Duration\\": \\"60.00000\\",\\n \\"Bitrate\\": \\"1912.13\\",\\n \\"Width\\": \\"1280\\",\\n \\"Height\\": \\"720\\",\\n \\"CreateTime\\": \\"2021-01-08T16:52:04Z\\",\\n \\"ModifiedTime\\": \\"2021-01-08T16:52:07Z\\"\\n }\\n }\\n ]\\n }\\n ],\\n \\"NextToken\\": \\"8EqYpQbZ6Eh7+Zz8DxVYoQ==\\",\\n \\"MaxResults\\": 2\\n}","errorExample":""},{"type":"xml","example":"<ListMediaBasicInfosResponse>\\n <RequestId>******B7-7F87-4792-BFE9-63CD21******</RequestId>\\n <TotalCount>4</TotalCount>\\n <MediaInfos>\\n <MediaId>****019b82e24b37a1c2958dec38****</MediaId>\\n <MediaBasicInfo>\\n <MediaId>****019b82e24b37a1c2958dec38****</MediaId>\\n <InputURL>https://example-bucket.oss-cn-shanghai.aliyuncs.com/example.mp4</InputURL>\\n <MediaType>video</MediaType>\\n <BusinessType>opening</BusinessType>\\n <Source>oss</Source>\\n <Title>title标题</Title>\\n <Description>desc 描述</Description>\\n <Category>分类 category</Category>\\n <MediaTags>tags,tags2</MediaTags>\\n <CoverURL>http://example-bucket.oss-cn-shanghai.aliyuncs.com/example.png?Expires=<ExpireTime>&OSSAccessKeyId=<OSSAccessKeyId>&Signature=<Signature>&security-token=<SecurityToken></CoverURL>\\n <UserData>userData</UserData>\\n <Snapshots>[{\\"bucket\\":\\"example-bucket\\",\\"count\\":\\"3\\",\\"iceJobId\\":\\"******f48f0e4154976b2b8c45******\\",\\"location\\":\\"oss-cn-beijing\\",\\"snapshotRegular\\":\\"example.jpg\\",\\"templateId\\":\\"******e6a6440b29eb60bd7c******\\"}]</Snapshots>\\n <Status>Normal</Status>\\n <TranscodeStatus>Init</TranscodeStatus>\\n <CreateTime>2021-01-08T16:52:04Z</CreateTime>\\n <ModifiedTime>2021-01-08T16:52:07Z</ModifiedTime>\\n <DeletedTime>2021-01-08T16:52:07Z</DeletedTime>\\n <SpriteImages>[{\\"bucket\\":\\"example-bucket\\",\\"count\\":\\"32\\",\\"iceJobId\\":\\"******83ec44d58b2069def2e******\\",\\"location\\":\\"oss-cn-shanghai\\",\\"snapshotRegular\\":\\"example/example-{Count}.jpg\\",\\"spriteRegular\\":\\"example/example-{TileCount}.jpg\\",\\"templateId\\":\\"******e438b14ff39293eaec25******\\",\\"tileCount\\":\\"1\\"}]</SpriteImages>\\n <CateId>3049</CateId>\\n <Biz>ICE</Biz>\\n <UploadSource>general</UploadSource>\\n </MediaBasicInfo>\\n <FileInfoList>\\n <FileBasicInfo>\\n <FileName>example.mp4</FileName>\\n <FileStatus>Normal</FileStatus>\\n <FileType>source_file</FileType>\\n <FileSize>14340962</FileSize>\\n <FileUrl>http://example-bucket.oss-cn-shanghai.aliyuncs.com/example2.mp4?Expires=<ExpireTime>&OSSAccessKeyId=<OSSAccessKeyId>&Signature=<Signature>&security-token=<SecurityToken></FileUrl>\\n <Region>cn-shanghai</Region>\\n <FormatName>mov,mp4,m4a,3gp,3g2,mj2</FormatName>\\n <Duration>60.00000</Duration>\\n <Bitrate>1912.13</Bitrate>\\n <Width>1280</Width>\\n <Height>720</Height>\\n <CreateTime>2021-01-08T16:52:04Z</CreateTime>\\n <ModifiedTime>2021-01-08T16:52:07Z</ModifiedTime>\\n </FileBasicInfo>\\n </FileInfoList>\\n </MediaInfos>\\n <NextToken>8EqYpQbZ6Eh7+Zz8DxVYoQ==</NextToken>\\n <MaxResults>2</MaxResults>\\n</ListMediaBasicInfosResponse>","errorExample":""}]', + 'title' => 'ListMediaBasicInfos', + 'description' => 'If includeFileBasicInfo is set to true, the basic information, such as the duration and file size, of the source file is also returned. At most the first 100 entries that meet the specified conditions are returned. All media assets must exactly match all non-empty fields. The fields that support exact match include MediaType, Source, BusinessType, Category, and Status. If all information cannot be returned at a time, you can use NextToken to initiate a request to retrieve a new page of results.'."\n", + ], + 'ListPublicMediaBasicInfos' => [ + 'summary' => 'Queries a list of media assets in the public media library that meet the specified conditions. A maximum of 100 media assets can be returned.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'Anonymous' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'MediaTagId', + 'in' => 'query', + 'schema' => [ + 'title' => '标签', + 'description' => 'The media tag. All media assets that contain the specified media tag are returned. Valid values:'."\n" + ."\n" + .'* Sticker tags:'."\n" + ."\n" + .' * sticker-atmosphere'."\n" + .' * sticker-bubble'."\n" + .' * sticker-cute'."\n" + .' * sticker-daily'."\n" + .' * sticker-expression'."\n" + .' * sticker-gif'."\n" + ."\n" + .'* Background music (BGM) tags:'."\n" + ."\n" + .' * bgm-romantic'."\n" + .' * bgm-cuisine'."\n" + .' * bgm-chinese-style'."\n" + .' * bgm-upbeat'."\n" + .' * bgm-dynamic'."\n" + .' * bgm-relaxing'."\n" + .' * bgm-quirky'."\n" + .' * bgm-beauty'."\n" + ."\n" + .'* Background image (BGI) tags:'."\n" + ."\n" + .' * bgi-grad'."\n" + .' * bgi-solid'."\n" + .' * bgi-pic'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'ticker-atmosphere', + ], + ], + [ + 'name' => 'NextToken', + 'in' => 'query', + 'schema' => [ + 'title' => '下一次读取的位置', + 'description' => 'The pagination token that is used in the next request to retrieve a new page of results. You do not need to specify this parameter for the first request. You must specify the token that is obtained from the previous query as the value of NextToken.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'pSa1SQ0wCe5pzVrQ6mWZEw==', + ], + ], + [ + 'name' => 'MaxResults', + 'in' => 'query', + 'schema' => [ + 'title' => '分页大小', + 'description' => 'The maximum number of entries to return.'."\n" + ."\n" + .'Maximum value: 100. Default value: 10.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '100', + 'minimum' => '1', + 'example' => '5', + 'default' => '10', + ], + ], + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'title' => '页数', + 'description' => 'The page number. Default value: 1'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '2147483647', + 'minimum' => '1', + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'title' => '分页大小', + 'description' => 'The number of entries per page. Default value: 10. Maximum value: 100.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '100', + 'minimum' => '1', + 'example' => '10', + ], + ], + [ + 'name' => 'IncludeFileBasicInfo', + 'in' => 'query', + 'schema' => [ + 'title' => '返回值中是否包含文件基础信息', + 'description' => 'Specifies whether to return the basic information of the media asset.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + [ + 'name' => 'BusinessType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The business type of the media asset. Valid values:'."\n" + ."\n" + .'* sticker'."\n" + .'* bgm'."\n" + .'* bgi'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'sticker', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******B7-7F87-4792-BFE9-63CD21******', + ], + 'TotalCount' => [ + 'title' => '符合要求的媒资总数', + 'description' => 'The total number of media assets that meet the specified conditions.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2', + ], + 'MediaInfos' => [ + 'title' => '符合要求的媒资集合', + 'description' => 'The media assets that meet the specified conditions.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'MediaId' => [ + 'title' => '媒资ID', + 'description' => 'The ID of the media asset.'."\n", + 'type' => 'string', + 'example' => '****019b82e24b37a1c2958dec38****', + ], + 'MediaBasicInfo' => [ + 'title' => 'BasicInfo', + 'description' => 'The basic information of the media asset.'."\n", + 'type' => 'object', + 'properties' => [ + 'MediaId' => [ + 'title' => 'MediaId', + 'description' => 'The ID of the media asset.'."\n", + 'type' => 'string', + 'example' => '****019b82e24b37a1c2958dec38****', + ], + 'InputURL' => [ + 'title' => '待注册的媒资在相应系统中的地址', + 'description' => 'The URL of the media asset in another service.'."\n", + 'type' => 'string', + 'example' => 'https://example-bucket.oss-cn-shanghai.aliyuncs.com/example.mp4', + ], + 'MediaType' => [ + 'title' => '媒资媒体类型', + 'description' => 'The type of the media asset.'."\n", + 'type' => 'string', + 'example' => 'video', + ], + 'BusinessType' => [ + 'title' => '媒资业务类型', + 'description' => 'The business type of the media asset.'."\n", + 'type' => 'string', + 'example' => 'general', + ], + 'Source' => [ + 'title' => '来源', + 'description' => 'The source of the media asset.'."\n", + 'type' => 'string', + 'example' => 'oss', + ], + 'Title' => [ + 'title' => '标题', + 'description' => 'The title of the media asset.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'Description' => [ + 'title' => '内容描述', + 'description' => 'The description of the media asset.'."\n", + 'type' => 'string', + 'example' => 'description', + ], + 'Category' => [ + 'title' => '分类', + 'description' => 'The category of the media asset.'."\n", + 'type' => 'string', + 'example' => 'video', + ], + 'MediaTags' => [ + 'title' => '标签', + 'description' => 'The tags of the media asset.'."\n", + 'type' => 'string', + 'example' => 'sticker-daily', + ], + 'CoverURL' => [ + 'title' => '封面地址', + 'description' => 'The thumbnail URL of the media asset.'."\n", + 'type' => 'string', + 'example' => 'http://example-bucket.oss-cn-shanghai.aliyuncs.com/example.png?Expires=<ExpireTime>&OSSAccessKeyId=<OSSAccessKeyId>&Signature=<Signature>&security-token=<SecurityToken>', + ], + 'UserData' => [ + 'title' => '用户数据', + 'description' => 'The user data.'."\n", + 'type' => 'string', + 'example' => 'userData', + ], + 'Snapshots' => [ + 'title' => '截图', + 'description' => 'The snapshots of the media asset.'."\n", + 'type' => 'string', + 'example' => 'null', + ], + 'Status' => [ + 'title' => '资源状态', + 'description' => 'The status of the media asset.'."\n", + 'type' => 'string', + 'example' => 'Normal', + ], + 'TranscodeStatus' => [ + 'title' => '转码状态', + 'description' => 'The transcoding status of the media asset.'."\n", + 'type' => 'string', + 'example' => 'Init', + ], + 'CreateTime' => [ + 'title' => '媒资创建时间', + 'description' => 'The time when the media asset was created.'."\n", + 'type' => 'string', + 'example' => '2021-01-08T16:52:04Z', + ], + 'ModifiedTime' => [ + 'title' => '媒资修改时间', + 'description' => 'The time when the media asset was last modified.'."\n", + 'type' => 'string', + 'example' => '2021-01-08T16:52:04Z', + ], + 'DeletedTime' => [ + 'title' => '媒资删除时间', + 'description' => 'The time when the media asset was deleted.'."\n", + 'type' => 'string', + 'example' => '2021-01-08T16:52:04Z', + ], + ], + ], + 'FileInfoList' => [ + 'title' => 'FileInfos', + 'description' => 'The file information of the media asset.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'FileBasicInfo' => [ + 'title' => '文件基础信息,包含时长,大小等', + 'description' => 'The basic information of the file, such as the duration and size.'."\n", + 'type' => 'object', + 'properties' => [ + 'FileName' => [ + 'title' => '文件名', + 'description' => 'The file name.'."\n", + 'type' => 'string', + 'example' => 'example.mp4', + ], + 'FileStatus' => [ + 'title' => '文件状态', + 'description' => 'The file status.'."\n", + 'type' => 'string', + 'example' => 'Normal', + ], + 'FileType' => [ + 'title' => '文件类型', + 'description' => 'The file type.'."\n", + 'type' => 'string', + 'example' => 'source_file', + ], + 'FileSize' => [ + 'title' => '文件大小(字节)', + 'description' => 'The file size. Unit: bytes.'."\n", + 'type' => 'string', + 'example' => '338990717', + ], + 'FileUrl' => [ + 'title' => '文件oss地址', + 'description' => 'The Object Storage Service (OSS) URL of the file.'."\n", + 'type' => 'string', + 'example' => 'http://example-bucket.oss-cn-shanghai.aliyuncs.com/example.mp4?Expires=<ExpireTime>&OSSAccessKeyId=<OSSAccessKeyId>&Signature=<Signature>&security-token=<SecurityToken>', + ], + 'Region' => [ + 'title' => '文件存储区域', + 'description' => 'The region in which the file resides.'."\n", + 'type' => 'string', + 'example' => 'cn-shanghai', + ], + 'FormatName' => [ + 'title' => '封装格式', + 'description' => 'The container format.'."\n", + 'type' => 'string', + 'example' => 'mov,mp4,m4a,3gp,3g2,mj2', + ], + 'Duration' => [ + 'title' => '时长', + 'description' => 'The duration.'."\n", + 'type' => 'string', + 'example' => '10.040000', + ], + 'Bitrate' => [ + 'title' => '码率', + 'description' => 'The bitrate.'."\n", + 'type' => 'string', + 'example' => '270112.12', + ], + 'Width' => [ + 'title' => '宽', + 'description' => 'The width.'."\n", + 'type' => 'string', + 'example' => '1920', + ], + 'Height' => [ + 'title' => '高', + 'description' => 'The height.'."\n", + 'type' => 'string', + 'example' => '1080', + ], + ], + ], + ], + 'description' => '', + ], + ], + ], + 'description' => '', + ], + ], + 'NextToken' => [ + 'description' => 'A pagination token. It can be used in the next request to retrieve a new page of results. If NextToken is empty, no next page exists.'."\n", + 'type' => 'string', + 'example' => '8EqYpQbZ6Eh7+Zz8DxVYoQ==', + ], + 'MaxResults' => [ + 'description' => 'The maximum number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '2', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"******B7-7F87-4792-BFE9-63CD21******\\",\\n \\"TotalCount\\": 2,\\n \\"MediaInfos\\": [\\n {\\n \\"MediaId\\": \\"****019b82e24b37a1c2958dec38****\\",\\n \\"MediaBasicInfo\\": {\\n \\"MediaId\\": \\"****019b82e24b37a1c2958dec38****\\",\\n \\"InputURL\\": \\"https://example-bucket.oss-cn-shanghai.aliyuncs.com/example.mp4\\",\\n \\"MediaType\\": \\"video\\",\\n \\"BusinessType\\": \\"general\\",\\n \\"Source\\": \\"oss\\",\\n \\"Title\\": \\"title标题\\",\\n \\"Description\\": \\"description\\",\\n \\"Category\\": \\"video\\",\\n \\"MediaTags\\": \\"sticker-daily\\",\\n \\"CoverURL\\": \\"http://example-bucket.oss-cn-shanghai.aliyuncs.com/example.png?Expires=<ExpireTime>&OSSAccessKeyId=<OSSAccessKeyId>&Signature=<Signature>&security-token=<SecurityToken>\\",\\n \\"UserData\\": \\"userData\\",\\n \\"Snapshots\\": \\"null\\",\\n \\"Status\\": \\"Normal\\",\\n \\"TranscodeStatus\\": \\"Init\\",\\n \\"CreateTime\\": \\"2021-01-08T16:52:04Z\\",\\n \\"ModifiedTime\\": \\"2021-01-08T16:52:04Z\\",\\n \\"DeletedTime\\": \\"2021-01-08T16:52:04Z\\"\\n },\\n \\"FileInfoList\\": [\\n {\\n \\"FileBasicInfo\\": {\\n \\"FileName\\": \\"example.mp4\\",\\n \\"FileStatus\\": \\"Normal\\",\\n \\"FileType\\": \\"source_file\\",\\n \\"FileSize\\": \\"338990717\\",\\n \\"FileUrl\\": \\"http://example-bucket.oss-cn-shanghai.aliyuncs.com/example.mp4?Expires=<ExpireTime>&OSSAccessKeyId=<OSSAccessKeyId>&Signature=<Signature>&security-token=<SecurityToken>\\",\\n \\"Region\\": \\"cn-shanghai\\",\\n \\"FormatName\\": \\"mov,mp4,m4a,3gp,3g2,mj2\\",\\n \\"Duration\\": \\"10.040000\\",\\n \\"Bitrate\\": \\"270112.12\\",\\n \\"Width\\": \\"1920\\",\\n \\"Height\\": \\"1080\\"\\n }\\n }\\n ]\\n }\\n ],\\n \\"NextToken\\": \\"8EqYpQbZ6Eh7+Zz8DxVYoQ==\\",\\n \\"MaxResults\\": 2\\n}","errorExample":""},{"type":"xml","example":"<ListPublicMediaBasicInfosResponse>\\n <RequestId>B45F83B7-7F87-4792-BFE9-63CD2137CAF0</RequestId>\\n <TotalCount>2</TotalCount>\\n <MediaInfos>\\n <MediaId>****019b82e24b37a1c2958dec38****</MediaId>\\n <MediaBasicInfo>\\n <MediaId>****019b82e24b37a1c2958dec38****</MediaId>\\n <InputURL>https://example-bucket.oss-cn-shanghai.aliyuncs.com/example.mp4</InputURL>\\n <MediaType>video</MediaType>\\n <BusinessType>general</BusinessType>\\n <Source>oss</Source>\\n <Title>title标题</Title>\\n <Description>description</Description>\\n <Category>video</Category>\\n <MediaTags>sticker-daily</MediaTags>\\n <CoverURL>http://example-bucket.oss-cn-shanghai.aliyuncs.com/example.png?Expires=<ExpireTime>&OSSAccessKeyId=<OSSAccessKeyId>&Signature=<Signature>&security-token=<SecurityToken></CoverURL>\\n <UserData>userData</UserData>\\n <Snapshots>null</Snapshots>\\n <Status>Normal</Status>\\n <TranscodeStatus>Init</TranscodeStatus>\\n <CreateTime>2021-01-08T16:52:04Z</CreateTime>\\n <ModifiedTime>2021-01-08T16:52:04Z</ModifiedTime>\\n <DeletedTime>2021-01-08T16:52:04Z</DeletedTime>\\n </MediaBasicInfo>\\n <FileInfoList>\\n <FileBasicInfo>\\n <FileName>example.mp4</FileName>\\n <FileStatus>Normal</FileStatus>\\n <FileType>source_file</FileType>\\n <FileSize>338990717</FileSize>\\n <FileUrl>http://example-bucket.oss-cn-shanghai.aliyuncs.com/example.mp4?Expires=<ExpireTime>&OSSAccessKeyId=<OSSAccessKeyId>&Signature=<Signature>&security-token=<SecurityToken></FileUrl>\\n <Region>cn-shanghai</Region>\\n <FormatName>mov,mp4,m4a,3gp,3g2,mj2</FormatName>\\n <Duration>10.040000</Duration>\\n <Bitrate>270112.12</Bitrate>\\n <Width>1920</Width>\\n <Height>1080</Height>\\n </FileBasicInfo>\\n </FileInfoList>\\n </MediaInfos>\\n <NextToken>8EqYpQbZ6Eh7+Zz8DxVYoQ==</NextToken>\\n <MaxResults>2</MaxResults>\\n</ListPublicMediaBasicInfosResponse>","errorExample":""}]', + 'title' => 'ListPublicMediaBasicInfos', + ], + 'ListAllPublicMediaTags' => [ + 'summary' => 'Queries a list of tags of media assets in the public media library.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'Anonymous' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'BusinessType', + 'in' => 'query', + 'schema' => [ + 'title' => '媒资业务类型', + 'description' => 'The business type of the media asset.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '"sticker"', + ], + ], + [ + 'name' => 'EntityId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The entity ID, which is used to distinguish between media assets of different types in the public domain.'."\n" + ."\n" + .'Set this parameter to Copyright_Music, which indicates music in the public domain.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'Copyright_Music', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'B45F83B7-7F87-4792-BFE9-63CD2137CAF0', + ], + 'MediaTagList' => [ + 'title' => '公共素材库标签列表', + 'description' => 'The tags of media assets in the public media library.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'MediaTagId' => [ + 'title' => '素材标签id', + 'description' => 'The ID of the media tag.'."\n", + 'type' => 'string', + 'example' => 'sticker-gif', + ], + 'MediaTagNameChinese' => [ + 'title' => '素材标签中文名', + 'description' => 'The name of the media tag in Chinese.'."\n", + 'type' => 'string', + 'example' => 'Gif', + ], + 'MediaTagNameEnglish' => [ + 'title' => '素材标签英文名', + 'description' => 'The name of the material tag in English.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'Options' => [ + 'description' => 'The options.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'OptionId' => [ + 'description' => 'The option ID.'."\n", + 'type' => 'string', + 'example' => 'Angry', + ], + 'OptionEnglishName' => [ + 'description' => 'The option name in English.'."\n", + 'type' => 'string', + 'example' => 'Angry', + ], + 'OptionChineseName' => [ + 'description' => 'The option name in Chinese.'."\n", + 'type' => 'string', + 'example' => '', + ], + ], + 'description' => '', + ], + ], + ], + 'description' => '', + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"B45F83B7-7F87-4792-BFE9-63CD2137CAF0\\",\\n \\"MediaTagList\\": [\\n {\\n \\"MediaTagId\\": \\"sticker-gif\\",\\n \\"MediaTagNameChinese\\": \\"Gif\\",\\n \\"MediaTagNameEnglish\\": \\"动图\\",\\n \\"Options\\": [\\n {\\n \\"OptionId\\": \\"Angry\\",\\n \\"OptionEnglishName\\": \\"Angry\\",\\n \\"OptionChineseName\\": \\"愤怒\\"\\n }\\n ]\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<ListAllPublicMediaTagsResponse>\\n <RequestId>B45F83B7-7F87-4792-BFE9-63CD2137CAF0</RequestId>\\n <MediaTagList>\\n <MediaTagId>sticker-gif</MediaTagId>\\n <MediaTagNameChinese>Gif</MediaTagNameChinese>\\n <MediaTagNameEnglish>动图</MediaTagNameEnglish>\\n </MediaTagList>\\n</ListAllPublicMediaTagsResponse>","errorExample":""}]', + 'title' => 'ListAllPublicMediaTags', + ], + 'SubmitMediaAiAnalysisJob' => [ + 'summary' => 'Submits a structural analysis job for a media asset. For example, you can submit a job to analyze the speaker, translate the video, and obtain the paragraph summary.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'paid', + 'abilityTreeCode' => '231064', + 'abilityTreeNodes' => [ + 'FEATUREiceFEJXOS', + ], + ], + 'parameters' => [ + [ + 'name' => 'Input', + 'in' => 'query', + 'schema' => [ + 'description' => 'The media asset that you want to analyze. You can specify an Object Storage Service (OSS) URL, a media asset ID, or an external URL.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{"MediaType":"video","Media":"https://xxx.com/your_movie.mp4"}', + ], + ], + [ + 'name' => 'AnalysisParams', + 'in' => 'query', + 'schema' => [ + 'description' => 'The analysis parameters.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{"nlpParams":{"sourceLanguage":"cn","diarizationEnabled":true,"speakerCount":0,"summarizationEnabled":false,"translationEnabled":false}}', + ], + ], + [ + 'name' => 'UserData', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '****63E8B7C7-4812-46AD-0FA56029AC86****', + ], + 'MediaId' => [ + 'description' => 'The ID of the media asset.'."\n", + 'type' => 'string', + 'example' => '******b48fb04483915d4f2cd8******', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"****63E8B7C7-4812-46AD-0FA56029AC86****\\",\\n \\"MediaId\\": \\"******b48fb04483915d4f2cd8******\\"\\n}","type":"json"}]', + 'title' => 'SubmitMediaAiAnalysisJob', + ], + 'AddCategory' => [ + 'summary' => 'Creates a category.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'CateName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The category name.'."\n" + ."\n" + .'* The value can be up to 64 bytes in length.'."\n" + .'* The value must be encoded in UTF-8.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => '', + ], + ], + [ + 'name' => 'ParentId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the parent category.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '5', + ], + ], + [ + 'name' => 'Type', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of the category. Valid values:'."\n" + ."\n" + .'* default: audio, video, and image files. This is the default value.'."\n" + .'* material: short video materials.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'default', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '****63E8B7C7-4812-46AD-0FA56029AC86****', + ], + 'Category' => [ + 'description' => 'The information about the category.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The type of the category. Valid values:'."\n" + ."\n" + .'* **default**: audio, video, and image files. This is the default value.'."\n" + .'* **material**: short video materials.'."\n", + 'type' => 'string', + 'example' => 'default', + ], + 'ParentId' => [ + 'description' => 'The ID of the parent category. By default, if ParentId is left empty or less than 1, -1 is returned, which indicates that the created category is the root directory.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '-1', + ], + 'CateName' => [ + 'description' => 'The category name.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'CateId' => [ + 'description' => 'The ID of the created category.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '45', + ], + 'Level' => [ + 'description' => 'The level of the category. A value of **0** indicates a level-1 category, a value of **1** indicates a level-2 category, and a value of **2** indicates a level-3 category.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + ], + ], + ], + 'description' => '', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"****63E8B7C7-4812-46AD-0FA56029AC86****\\",\\n \\"Category\\": {\\n \\"Type\\": \\"default\\",\\n \\"ParentId\\": -1,\\n \\"CateName\\": \\"分类1\\",\\n \\"CateId\\": 45,\\n \\"Level\\": 0\\n }\\n}","type":"json"}]', + 'title' => 'AddCategory', + 'description' => 'You can create at most three levels of categories. Each category level can contain a maximum of 100 subcategories.'."\n", + ], + 'GetCategories' => [ + 'summary' => 'Queries the information about a category and its subcategories.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'CateId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The category ID. You can use one of the following methods to obtain the ID:'."\n" + ."\n" + .'* Log on to the [Intelligent Media Services (IMS) console](https://ims.console.aliyun.com) and choose **Media Asset Management** > **Category Management** to view the category ID.'."\n" + .'* View the value of CateId returned by the AddCategory operation that you called to create a category.'."\n" + .'* View the value of CateId returned by the GetCategories operation that you called to query a category.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '33', + ], + ], + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number. Default value: 1'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page. Valid values: 10 to 100.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '10', + ], + ], + [ + 'name' => 'SortBy', + 'in' => 'query', + 'schema' => [ + 'description' => 'The sorting rule of results. Valid values:'."\n" + ."\n" + .'\\- CreationTime:Desc (default): The results are sorted in reverse chronological order based on the creation time.'."\n" + ."\n" + .'\\- CreationTime:Asc: The results are sorted in chronological order based on the creation time.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'CreationTime:Desc', + ], + ], + [ + 'name' => 'Type', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of the category. Valid values: default and material. A value of default indicates audio, video, and image files. This is the default value. A value of material indicates short video materials.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'default', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'SubTotal' => [ + 'description' => 'The total number of subcategories.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '100', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******3B-0E1A-586A-AC29-742247******', + ], + 'Category' => [ + 'description' => 'The information about the category.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The type of the category. Valid values:'."\n" + ."\n" + .'* **default**: audio, video, and image files. This is the default value.'."\n" + .'* **material**: short video materials.'."\n", + 'type' => 'string', + 'example' => 'default', + ], + 'CateName' => [ + 'description' => 'The category name.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'ParentId' => [ + 'description' => 'The ID of the parent category.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '-1', + ], + 'CateId' => [ + 'description' => 'The category ID.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '46', + ], + 'Level' => [ + 'description' => 'The level of the category. A value of **0** indicates a level-1 category, a value of **1** indicates a level-2 category, and a value of **2** indicates a level-3 category.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + ], + ], + 'SubCategories' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'Category' => [ + 'description' => 'The subcategories in the category.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The subcategory in the category.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The type of the category. Valid values:'."\n" + ."\n" + .'* **default**: audio, video, and image files. This is the default value.'."\n" + .'* **material**: short video materials.'."\n", + 'type' => 'string', + 'example' => 'default', + ], + 'CateName' => [ + 'description' => 'The category name.'."\n" + ."\n" + .'* The value can be up to 64 bytes in length.'."\n" + .'* The value is encoded in UTF-8.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'ParentId' => [ + 'description' => 'The ID of the parent category.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '46', + ], + 'CateId' => [ + 'description' => 'The category ID.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '129', + ], + 'SubTotal' => [ + 'description' => 'The total number of subcategories.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '100', + ], + 'Level' => [ + 'description' => 'The level of the category. A value of **0** indicates a level-1 category, a value of **1** indicates a level-2 category, and a value of **2** indicates a level-3 category.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + ], + ], + ], + ], + ], + ], + 'description' => '', + ], + ], + ], + 'staticInfo' => [], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"SubTotal\\": 100,\\n \\"RequestId\\": \\"******3B-0E1A-586A-AC29-742247******\\",\\n \\"Category\\": {\\n \\"Type\\": \\"default\\",\\n \\"CateName\\": \\"一级分类\\",\\n \\"ParentId\\": -1,\\n \\"CateId\\": 46,\\n \\"Level\\": 0\\n },\\n \\"SubCategories\\": {\\n \\"Category\\": [\\n {\\n \\"Type\\": \\"default\\",\\n \\"CateName\\": \\"二级子分类\\",\\n \\"ParentId\\": 46,\\n \\"CateId\\": 129,\\n \\"SubTotal\\": 100,\\n \\"Level\\": 1\\n }\\n ]\\n }\\n}","type":"json"}]', + 'title' => 'GetCategories', + 'description' => 'You can call this operation to query the information about a category and its subcategories based on the category ID and category type.'."\n", + ], + 'UpdateCategory' => [ + 'summary' => 'Updates a category.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'CateName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The category name.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '', + ], + ], + [ + 'name' => 'CateId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The category ID. You can use one of the following methods to obtain the ID:'."\n" + ."\n" + .'* Log on to the [Intelligent Media Services (IMS) console](https://ims.console.aliyun.com) and choose **Media Asset Management** > **Category Management** to view the category ID.'."\n" + .'* View the value of CateId returned by the AddCategory operation that you called to create a category.'."\n" + .'* View the value of CateId returned by the GetCategories operation that you called to query a category.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '43', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '4E84BE44-58A7-****-****-FBEBEA16EF94', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"4E84BE44-58A7-****-****-FBEBEA16EF94\\"\\n}","type":"json"}]', + 'title' => 'UpdateCategory', + 'description' => 'After you create a media asset category, you can call this operation to find the category based on the category ID and change the name of the category.'."\n", + ], + 'DeleteCategory' => [ + 'summary' => 'Deletes a media asset category.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'CateId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The category ID. You can use one of the following methods to obtain the ID:'."\n" + ."\n" + .'* Log on to the [Intelligent Media Services (IMS) console](https://ims.console.aliyun.com) and choose **Media Asset Management** > **Category Management** to view the category ID.'."\n" + .'* View the value of CateId returned by the AddCategory operation that you called to create a category.'."\n" + .'* View the value of CateId returned by the GetCategories operation that you called to query a category.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '46', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '****63E8B7C7-4812-46AD-0FA56029AC86****', + ], + ], + 'description' => '', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"****63E8B7C7-4812-46AD-0FA56029AC86****\\"\\n}","type":"json"}]', + 'title' => 'DeleteCategory', + 'description' => 'This operation also deletes the subcategories, including the level-2 and level-3 categories, of the category.'."\n", + ], + 'AddMediaMarks' => [ + 'summary' => 'Adds marks for a media asset.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'MediaId', + 'in' => 'query', + 'schema' => [ + 'title' => '媒资ID', + 'description' => 'The ID of the media asset.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '53afdf003a2171ed9c6a16b5feac6402', + ], + ], + [ + 'name' => 'MediaMarks', + 'in' => 'query', + 'schema' => [ + 'title' => '打标信息', + 'description' => 'The mark information. The value must be a JSONArray.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '771A1414-27BF-53E6-AB73-EFCB*****ACF', + ], + 'MediaId' => [ + 'title' => '媒资ID', + 'description' => 'The ID of the media asset.'."\n", + 'type' => 'string', + 'example' => '53afdf003a******6a16b5feac6402', + ], + 'MediaMarkIds' => [ + 'title' => '添加的标记Id', + 'description' => 'The IDs of the marks that are added.'."\n", + 'type' => 'string', + 'example' => 'mark-f82d*****4994b0915948ef7e16,mark-3d56d*****4c8fa9ae2a1f9e5d2d60', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 403 => [ + [ + 'errorCode' => 'Forbidden', + 'errorMessage' => 'User not authorized to operate on the specified resource.', + ], + ], + 500 => [ + [ + 'errorCode' => 'AddMediaMarksFailed', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"771A1414-27BF-53E6-AB73-EFCB*****ACF\\",\\n \\"MediaId\\": \\"53afdf003a******6a16b5feac6402\\",\\n \\"MediaMarkIds\\": \\"mark-f82d*****4994b0915948ef7e16,mark-3d56d*****4c8fa9ae2a1f9e5d2d60\\"\\n}","type":"json"}]', + 'title' => 'AddMediaMarks', + 'requestParamsDescription' => '## MediaMark'."\n" + ."\n" + .'|Field|Type|Required|Description|'."\n" + .'|---|---|---|---|'."\n" + .'|MarkId|String|No|The mark ID.|'."\n" + .'|MarkStartTime|Float|No|The start time of the mark.|'."\n" + .'|MarkEndTime|Float|No|The end time of the mark.|'."\n" + .'|MarkTag|String|No|The custom tag for easy classification.|'."\n" + .'|MarkContent|String|No|The mark content.|'."\n" + .'|MarkStatus|String|No|The mark status.|', + ], + 'GetMediaMarks' => [ + 'summary' => 'Queries the information about marks based on mark IDs.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'MediaId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the media asset.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + ], + [ + 'name' => 'MediaMarkIds', + 'in' => 'query', + 'schema' => [ + 'description' => 'The mark ID. You can specify multiple mark IDs separated with commas (,).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'mark-f82d*****4994b0915948ef7e16,mark-3d56d*****4c8fa9ae2a1f9e5d2d60', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'RequestId', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'MediaId' => [ + 'title' => 'MediaId', + 'description' => 'The ID of the media asset.'."\n", + 'type' => 'string', + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + 'MediaMarks' => [ + 'title' => 'MediaMarks', + 'description' => 'The queried marks.'."\n" + ."\n" + .'* The value is in the JSONArray format.'."\n", + 'type' => 'string', + 'example' => '', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"MediaId\\": \\"****20b48fb04483915d4f2cd8ac****\\",\\n \\"MediaMarks\\": \\"[\\\\n {\\\\n \\\\\\"MarkStartTime\\\\\\": \\\\\\"12.1\\\\\\",\\\\n \\\\\\"MarkEndTime\\\\\\": \\\\\\"12.2\\\\\\",\\\\n \\\\\\"MarkTag\\\\\\": \\\\\\"tag-1\\\\\\",\\\\n \\\\\\"MarkContent\\\\\\": \\\\\\"content-1\\\\\\",\\\\n \\\\\\"MarkStatus\\\\\\": \\\\\\"a\\\\\\"\\\\n },\\\\n {\\\\n \\\\\\"MarkStartTime\\\\\\": \\\\\\"12.3\\\\\\",\\\\n \\\\\\"MarkEndTime\\\\\\": \\\\\\"12.4\\\\\\",\\\\n \\\\\\"MarkTag\\\\\\": \\\\\\"tag-2\\\\\\",\\\\n \\\\\\"MarkContent\\\\\\": \\\\\\"content-2\\\\\\",\\\\n \\\\\\"MarkStatus\\\\\\": \\\\\\"上线\\\\\\"\\\\n }\\\\n]\\"\\n}","type":"json"}]', + 'title' => 'GetMediaMarks', + 'responseParamsDescription' => '## MediaMark'."\n" + ."\n" + .'|Field|Type|Required|Description|'."\n" + .'|---|---|---|---|'."\n" + .'|MarkId|String|No|The mark ID.|'."\n" + .'|MarkStartTime|Float|No|The start time of the mark.|'."\n" + .'|MarkEndTime|Float|No|The end time of the mark.|'."\n" + .'|MarkTag|String|No|The custom tag for easy classification.|'."\n" + .'|MarkContent|String|No|The mark content.|'."\n" + .'|MarkStatus|String|No|The mark status.|', + ], + 'UpdateMediaMarks' => [ + 'summary' => 'Modifies the marks of a media asset.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'MediaId', + 'in' => 'query', + 'schema' => [ + 'title' => '媒资ID', + 'description' => 'The ID of the media asset.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '53afdf003a******6a16b5feac6402', + ], + ], + [ + 'name' => 'MediaMarks', + 'in' => 'query', + 'schema' => [ + 'title' => '打标信息', + 'description' => 'The marks of the media asset.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'MediaId' => [ + 'title' => '媒资ID', + 'description' => 'The ID of the media asset.'."\n", + 'type' => 'string', + 'example' => '53afdf003a******6a16b5feac6402', + ], + 'MediaMarkIds' => [ + 'title' => '添加的标记Id', + 'description' => 'The IDs of the successfully modified marks.'."\n", + 'type' => 'string', + 'example' => 'mark-f82d*****4994b0915948ef7e16,mark-3d56d*****4c8fa9ae2a1f9e5d2d60', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 403 => [ + [ + 'errorCode' => 'Forbidden', + 'errorMessage' => 'User not authorized to operate on the specified resource.', + ], + ], + 500 => [ + [ + 'errorCode' => 'UpdateMediaMarksFailed', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"MediaId\\": \\"53afdf003a******6a16b5feac6402\\",\\n \\"MediaMarkIds\\": \\"mark-f82d*****4994b0915948ef7e16,mark-3d56d*****4c8fa9ae2a1f9e5d2d60\\"\\n}","type":"json"}]', + 'title' => 'UpdateMediaMarks', + 'requestParamsDescription' => '## MediaMark'."\n" + ."\n" + .'|Field|Type|Required|Description|'."\n" + .'|---|---|---|---|'."\n" + .'|MarkId|String|No|The mark ID.|'."\n" + .'|MarkStartTime|Float|No|The start time of the mark.|'."\n" + .'|MarkEndTime|Float|No|The end time of the mark.|'."\n" + .'|MarkTag|String|No|The custom tag for easy classification.|'."\n" + .'|MarkContent|String|No|The mark content.|'."\n" + .'|MarkStatus|String|No|The mark status.|', + ], + 'DeleteMediaMarks' => [ + 'summary' => 'Deletes the marks of a media asset.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'MediaId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the media asset.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '****c469e944b5a856828dc2****', + ], + ], + [ + 'name' => 'MediaMarkIds', + 'in' => 'query', + 'schema' => [ + 'description' => 'The mark ID. You can specify multiple mark IDs separated with commas (,).'."\n" + ."\n" + .'If you do not specify MediaMarkIds, all the marks of the media asset are deleted.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'mark-f82d*****4994b0915948ef7e16,mark-3d56d*****4c8fa9ae2a1f9e5d2d60', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'RequestId', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'MediaId' => [ + 'title' => 'MediaId', + 'description' => 'The ID of the media asset.'."\n", + 'type' => 'string', + 'example' => '****019b82e24b37a1c2958dec38****', + ], + 'MediaMarkIds' => [ + 'title' => 'MediaMarkIds', + 'description' => 'The IDs of the deleted marks separated with commas (,).'."\n", + 'type' => 'string', + 'example' => 'mark-f82d*****4994b0915948ef7e16,mark-3d56d*****4c8fa9ae2a1f9e5d2d60', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"MediaId\\": \\"****019b82e24b37a1c2958dec38****\\",\\n \\"MediaMarkIds\\": \\"mark-f82d*****4994b0915948ef7e16,mark-3d56d*****4c8fa9ae2a1f9e5d2d60\\"\\n}","type":"json"}]', + 'title' => 'DeleteMediaMarks', + ], + 'ListMediaMarks' => [ + 'summary' => 'Queries a list of marks of a media asset.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'MediaId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the media asset.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '411bed50018971edb60b0764a0ec6***', + ], + ], + [ + 'name' => 'MediaMarkIds', + 'in' => 'query', + 'schema' => [ + 'description' => 'The mark ID. You can specify multiple IDs separated with commas (,). This parameter is discontinued.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'mark-f82d*****4994b0915948ef7e16,mark-3d56d*****4c8fa9ae2a1f9e5d2d60', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'RequestId', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'MediaId' => [ + 'title' => 'MediaId', + 'description' => 'The ID of the media asset.'."\n", + 'type' => 'string', + 'example' => '******b48fb04483915d4f2cd8******', + ], + 'MediaMarks' => [ + 'title' => 'MediaMarks', + 'description' => 'The marks of the media asset, in the JSONArray format.'."\n", + 'type' => 'string', + 'example' => '', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"MediaId\\": \\"******b48fb04483915d4f2cd8******\\",\\n \\"MediaMarks\\": \\"[\\\\n {\\\\n \\\\\\"MarkStartTime\\\\\\": \\\\\\"12.1\\\\\\",\\\\n \\\\\\"MarkEndTime\\\\\\": \\\\\\"12.2\\\\\\",\\\\n \\\\\\"MarkTag\\\\\\": \\\\\\"tag-1\\\\\\",\\\\n \\\\\\"MarkContent\\\\\\": \\\\\\"content-1\\\\\\",\\\\n \\\\\\"MarkStatus\\\\\\": \\\\\\"a\\\\\\"\\\\n },\\\\n {\\\\n \\\\\\"MarkStartTime\\\\\\": \\\\\\"12.3\\\\\\",\\\\n \\\\\\"MarkEndTime\\\\\\": \\\\\\"12.4\\\\\\",\\\\n \\\\\\"MarkTag\\\\\\": \\\\\\"tag-2\\\\\\",\\\\n \\\\\\"MarkContent\\\\\\": \\\\\\"content-2\\\\\\",\\\\n \\\\\\"MarkStatus\\\\\\": \\\\\\"上线\\\\\\"\\\\n }\\\\n]\\"\\n}","type":"json"}]', + 'title' => 'ListMediaMarks', + 'responseParamsDescription' => '## MediaMark'."\n" + ."\n" + .'|Field|Type|Required|Description|'."\n" + .'|---|---|---|---|'."\n" + .'|MarkId|String|No|The mark ID.|'."\n" + .'|MarkStartTime|Float|No|The start time of the mark.|'."\n" + .'|MarkEndTime|Float|No|The end time of the mark.|'."\n" + .'|MarkTag|String|No|The custom tag for easy classification.|'."\n" + .'|MarkContent|String|No|The mark content.|'."\n" + .'|MarkStatus|String|No|The mark status.|', + ], + 'CreateIpcOrder' => [ + 'summary' => 'Creates an IPC order. The purchased capacity is shared at the account level.', + 'path' => '', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceJQ6U8A', + ], + ], + 'parameters' => [ + [ + 'name' => 'DeviceId', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => 'd123', + ], + ], + [ + 'name' => 'Capability', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'understand-reid-search' => 'understand-reid-search', + 'search' => 'search', + 'understand-search' => 'understand-search', + 'understand' => 'understand', + 'understand-reid' => 'understand-reid', + ], + 'example' => 'understand', + ], + ], + [ + 'name' => 'Period', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'month' => 'month', + 'year' => 'year', + 'quarter' => 'quarter', + ], + 'example' => 'month', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => '', + 'type' => 'string', + 'example' => '****36-3C1E-4417-BDB2-1E034F****', + ], + 'PurchaseStatus' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'Success', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"****36-3C1E-4417-BDB2-1E034F****\\",\\n \\"PurchaseStatus\\": \\"Success\\"\\n}","type":"json"}]', + 'title' => 'CreateIpcOrder', + ], + 'GetIpcDeviceInfo' => [ + 'summary' => 'Retrieves information about IPC devices.', + 'path' => '', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceJQ6U8A', + ], + ], + 'parameters' => [ + [ + 'name' => 'DeviceId', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => 'd123', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => '2017-01-11T12:00:00Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => '2017-02-11T12:00:00Z', + ], + ], + [ + 'name' => 'Capability', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => 'understand', + ], + ], + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '10', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => '', + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'DeviceInfos' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'DeviceId' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'd123', + ], + 'Capability' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'understand', + ], + 'ExpireTime' => [ + 'description' => '', + 'type' => 'string', + 'example' => '2017-02-11T12:00:00Z', + ], + ], + ], + ], + 'Total' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '78', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"DeviceInfos\\": [\\n {\\n \\"DeviceId\\": \\"d123\\",\\n \\"Capability\\": \\"understand\\",\\n \\"ExpireTime\\": \\"2017-02-11T12:00:00Z\\"\\n }\\n ],\\n \\"Total\\": 78\\n}","type":"json"}]', + 'title' => 'GetIpcDeviceInfo', + ], + 'QueryIpcQuota' => [ + 'summary' => 'Queries the usage for the IPC service.', + 'path' => '', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceJQ6U8A', + ], + ], + 'parameters' => [ + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => '2025-05-08T08:52:00Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => '2025-05-09T08:52:00Z', + ], + ], + [ + 'name' => 'Capability', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => 'understand', + ], + ], + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '10', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => '', + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'IpcQuotaInfos' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'Capability' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'understand', + ], + 'DateTime' => [ + 'description' => '', + 'type' => 'string', + 'example' => '2025-12-21T16:00:00Z', + ], + 'MaxQuota' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10000', + ], + 'ConsumedQuota' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '32', + ], + ], + ], + ], + 'Total' => [ + 'description' => '', + 'type' => 'string', + 'example' => '39', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"IpcQuotaInfos\\": [\\n {\\n \\"Capability\\": \\"understand\\",\\n \\"DateTime\\": \\"2025-12-21T16:00:00Z\\",\\n \\"MaxQuota\\": 10000,\\n \\"ConsumedQuota\\": 32\\n }\\n ],\\n \\"Total\\": \\"39\\"\\n}","type":"json"}]', + 'title' => 'QueryIpcQuota', + ], + 'GetPlayInfo' => [ + 'summary' => 'Queries the playback URL of a video or audio file by its ID. You can use the playback URL to play the audio or video in ApsaraVideo Player SDK (for URL-based playback) or a third-party player.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceFUMQ35', + ], + ], + 'parameters' => [ + [ + 'name' => 'MediaId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the media asset.'."\n" + ."\n" + .'> You must specify at least one of the MediaId and InputURL parameters.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '86434e152b7d4f20be480574439fe***', + ], + ], + [ + 'name' => 'InputURL', + 'in' => 'query', + 'schema' => [ + 'description' => 'The input URL that you specified for the media asset when you registered the media asset. For more information, see [RegisterMediaInfo](~~441152~~).'."\n" + ."\n" + .'> You must specify at least one of the MediaId and InputURL parameters.', + 'type' => 'string', + 'required' => false, + 'example' => '', + ], + ], + [ + 'name' => 'AuthTimeout', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int64', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'RequestId', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'MediaBase' => [ + 'description' => 'The information about the media asset.'."\n", + 'type' => 'object', + 'properties' => [ + 'CreationTime' => [ + 'description' => 'The time when the media asset was created.'."\n", + 'type' => 'string', + 'example' => '2021-09-22T10:07:31+08:00', + ], + 'Status' => [ + 'description' => 'The resource status. Valid values:'."\n" + ."\n" + .'Init: the initial state, which indicates that the source file is not ready.'."\n" + ."\n" + .'Preparing: The source file is being prepared. For example, the file is being uploaded or edited.'."\n" + ."\n" + .'PrepareFail: The source file failed to be prepared. For example, the information of the source file failed to be obtained.'."\n" + ."\n" + .'Normal: The source file is ready.'."\n", + 'type' => 'string', + 'example' => 'Normal', + ], + 'MediaId' => [ + 'description' => 'The ID of the media asset.'."\n", + 'type' => 'string', + 'example' => '2eea77a61c7b4ddd95bec34a6f65b***', + ], + 'CoverURL' => [ + 'description' => 'The URL of the thumbnail.'."\n", + 'type' => 'string', + 'example' => 'https://***.oss-cn-shanghai.aliyuncs.com/cover/281c64d6-b5fb-4c57-97cd-84da56a8b151_large_cover_url.jpg', + ], + 'Title' => [ + 'description' => 'The title.'."\n", + 'type' => 'string', + 'example' => 'testTitle', + ], + 'MediaType' => [ + 'description' => 'The type of the media asset. Valid values:'."\n" + ."\n" + .'video audio'."\n", + 'type' => 'string', + 'example' => 'video', + ], + 'MediaTags' => [ + 'description' => 'The tags.'."\n" + ."\n" + .'* Up to 16 tags are supported.'."\n" + .'* Multiple tags are separated by commas (,).'."\n" + .'* Each tag can be up to 32 bytes in length.'."\n" + .'* The value is encoded in UTF-8.'."\n", + 'type' => 'string', + 'example' => 'test,ccc', + ], + 'CateId' => [ + 'description' => 'The category ID. You can use one of the following methods to obtain the ID:'."\n" + ."\n" + .'* Log on to the [Intelligent Media Services (IMS) console](https://ims.console.aliyun.com) and choose **Media Asset Management** > **Category Management** to view the category ID.'."\n" + .'* View the value of the CateId parameter returned by the AddCategory operation that you called to create a category.'."\n" + .'* View the value of the CateId parameter returned by the GetCategories operation that you called to query a category.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '4220', + ], + 'Description' => [ + 'description' => 'The content description.'."\n", + 'type' => 'string', + 'example' => 'desc', + ], + ], + ], + 'PlayInfoList' => [ + 'description' => 'The information about the audio or video stream.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The audio or video details.'."\n", + 'type' => 'object', + 'properties' => [ + 'CreationTime' => [ + 'description' => 'The time when the media stream was created. The time follows the ISO 8601 standard in the *yyyy-MM-dd*T*HH:mm:ss*Z format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2022-05-10T02:28:49Z', + ], + 'Status' => [ + 'description' => 'The status of the media stream. Valid values:'."\n" + ."\n" + .'* **Normal**'."\n" + .'* **Invisible**'."\n", + 'type' => 'string', + 'example' => 'Normal', + ], + 'NarrowBandType' => [ + 'description' => 'The type of Narrowband HD™ transcoding. Valid values:'."\n" + ."\n" + .'* **0**: standard transcoding'."\n" + .'* **1.0**: Narrowband HD™ 1.0 transcoding'."\n" + .'* **2.0**: Narrowband HD™ 2.0 transcoding'."\n" + ."\n" + .'This parameter is returned only when a definition that is available in the built-in Narrowband HD™ 1.0 transcoding template is specified. For more information, see the [Definition parameter in TranscodeTemplate](~~52839~~) table.'."\n", + 'type' => 'string', + 'example' => '0', + ], + 'Height' => [ + 'description' => 'The height of the media stream. Unit: pixels.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1080', + ], + 'Bitrate' => [ + 'description' => 'The bitrate of the media stream. Unit: Kbit/s.'."\n", + 'type' => 'string', + 'example' => '20', + ], + 'ModificationTime' => [ + 'description' => 'The time when the media stream was updated. The time follows the ISO 8601 standard in the *yyyy-MM-dd*T*HH:mm:ss*Z format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2022-05-13T11:39:41.714+08:00', + ], + 'WatermarkId' => [ + 'description' => 'The ID of the watermark that is associated with the media stream.'."\n", + 'type' => 'string', + 'example' => '5bed88672b1e2520ead228935ed51***', + ], + 'Encrypt' => [ + 'description' => 'Indicates whether the media stream is encrypted. Valid values:'."\n" + ."\n" + .'* **0**: The media stream is not encrypted.'."\n" + .'* **1**: The media stream is encrypted.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'Definition' => [ + 'description' => 'The quality of the media stream. Valid values:'."\n" + ."\n" + .'* **FD**: low definition'."\n" + .'* **LD**: standard definition'."\n" + .'* **SD**: high definition'."\n" + .'* **HD**: ultra-high definition'."\n" + .'* **OD**: original definition'."\n" + .'* **2K**'."\n" + .'* **4K**'."\n" + .'* **SQ**: standard sound quality'."\n" + .'* **HQ**: high sound quality'."\n" + .'* **AUTO**: adaptive bitrate'."\n", + 'type' => 'string', + 'example' => 'HD', + ], + 'EncryptType' => [ + 'description' => 'The encryption type of the media stream. Valid values:'."\n" + ."\n" + .'* **AliyunVoDEncryption**: Alibaba Cloud proprietary cryptography'."\n" + .'* **HLSEncryption**: HTTP Live Streaming (HLS) encryption'."\n" + ."\n" + .'> If the encryption type is AliyunVoDEncryption, only ApsaraVideo Player SDK can be used to play videos.'."\n", + 'type' => 'string', + 'example' => 'AliyunVoDEncryption', + ], + 'StreamType' => [ + 'description' => 'The type of the media stream. If the media stream is a video stream, the value is **video**. If the media stream is an audio-only stream, the value is **audio**.'."\n", + 'type' => 'string', + 'example' => 'video', + ], + 'Size' => [ + 'description' => 'The size of the media stream. Unit: bytes.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '418112', + ], + 'Width' => [ + 'description' => 'The width of the media stream. Unit: pixels.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1024', + ], + 'Fps' => [ + 'description' => 'The frame rate of the media stream. Unit: frames per second (FPS).'."\n", + 'type' => 'string', + 'example' => '25', + ], + 'Duration' => [ + 'description' => 'The duration of the media stream. Unit: seconds.'."\n", + 'type' => 'string', + 'example' => '9.0464', + ], + 'PlayURL' => [ + 'description' => 'The playback URL of the media stream.'."\n", + 'type' => 'string', + 'example' => 'https://***.aliyuncdn.com/sv/756bee1-17f980f0945/756bee1-17f980f0945.mp4', + ], + 'Format' => [ + 'description' => 'The format of the media stream.'."\n" + ."\n" + .'* If the media asset is a video file, the valid values are **mp4** and **m3u8**.'."\n" + .'* If the media asset is an audio-only file, the value is **mp3**.'."\n", + 'type' => 'string', + 'example' => 'mp4', + ], + 'HDRType' => [ + 'title' => '视频流HDR类型', + 'description' => 'The high dynamic range (HDR) type of the media stream. Valid values:'."\n" + ."\n" + .'* HDR'."\n" + .'* HDR10'."\n" + .'* HLG'."\n" + .'* DolbyVision'."\n" + .'* HDRVivid'."\n" + .'* SDR+'."\n", + 'type' => 'string', + 'example' => 'HDR', + ], + 'BitDepth' => [ + 'title' => '颜色位深', + 'description' => 'The color depth.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '8', + ], + 'FileURL' => [ + 'description' => 'The OSS URL of the file.'."\n", + 'type' => 'string', + 'example' => 'http://outin-***.oss-cn-shanghai.aliyuncs.com/sv/43a68ee9-181809b6aba/43a68ee9-181809b6aba.mpeg', + ], + 'TransTemplateType' => [ + 'description' => 'The type of the transcoding template. Valid values:'."\n" + ."\n" + .'* Normal: standard transcoding'."\n" + .'* AudioTranscode: audio transcoding'."\n" + .'* Remux: container format conversion'."\n" + .'* NarrowBandV1: Narrowband HD™ 1.0'."\n" + .'* NarrowBandV2: Narrowband HD™ 2.0'."\n" + .'* UHD: audio and video enhancement (ultra-high definition)'."\n", + 'type' => 'string', + 'example' => 'Normal', + ], + 'StreamTags' => [ + 'description' => 'The tags of the media stream, which are used to identify the transcoding type.'."\n", + 'type' => 'string', + 'example' => '"{\\"ims.audioServiceType\\": \\"AudioEnhancement\\"}"', + ], + 'JobId' => [ + 'description' => 'The task ID.'."\n", + 'type' => 'string', + 'example' => '36c9d38e70bf43ed9f7f8f48d6356***', + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"MediaBase\\": {\\n \\"CreationTime\\": \\"2021-09-22T10:07:31+08:00\\",\\n \\"Status\\": \\"Normal\\",\\n \\"MediaId\\": \\"2eea77a61c7b4ddd95bec34a6f65b***\\",\\n \\"CoverURL\\": \\"https://***.oss-cn-shanghai.aliyuncs.com/cover/281c64d6-b5fb-4c57-97cd-84da56a8b151_large_cover_url.jpg\\",\\n \\"Title\\": \\"testTitle\\",\\n \\"MediaType\\": \\"video\\",\\n \\"MediaTags\\": \\"test,ccc\\",\\n \\"CateId\\": 4220,\\n \\"Description\\": \\"desc\\"\\n },\\n \\"PlayInfoList\\": [\\n {\\n \\"CreationTime\\": \\"2022-05-10T02:28:49Z\\",\\n \\"Status\\": \\"Normal\\",\\n \\"NarrowBandType\\": \\"0\\",\\n \\"Height\\": 1080,\\n \\"Bitrate\\": \\"20\\",\\n \\"ModificationTime\\": \\"2022-05-13T11:39:41.714+08:00\\",\\n \\"WatermarkId\\": \\"5bed88672b1e2520ead228935ed51***\\",\\n \\"Encrypt\\": 0,\\n \\"Definition\\": \\"HD\\",\\n \\"EncryptType\\": \\"AliyunVoDEncryption\\",\\n \\"StreamType\\": \\"video\\",\\n \\"Size\\": 418112,\\n \\"Width\\": 1024,\\n \\"Fps\\": \\"25\\",\\n \\"Duration\\": \\"9.0464\\",\\n \\"PlayURL\\": \\"https://***.aliyuncdn.com/sv/756bee1-17f980f0945/756bee1-17f980f0945.mp4\\",\\n \\"Format\\": \\"mp4\\",\\n \\"HDRType\\": \\"HDR\\",\\n \\"BitDepth\\": 8,\\n \\"FileURL\\": \\"http://outin-***.oss-cn-shanghai.aliyuncs.com/sv/43a68ee9-181809b6aba/43a68ee9-181809b6aba.mpeg\\",\\n \\"TransTemplateType\\": \\"Normal\\",\\n \\"StreamTags\\": \\"\\\\\\"{\\\\\\\\\\\\\\"ims.audioServiceType\\\\\\\\\\\\\\": \\\\\\\\\\\\\\"AudioEnhancement\\\\\\\\\\\\\\"}\\\\\\"\\",\\n \\"JobId\\": \\"36c9d38e70bf43ed9f7f8f48d6356***\\"\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'GetPlayInfo', + 'description' => 'You use the ID of a video or audio file to query the playback URL of the file. Then, you can use the playback URL to play the audio or video in ApsaraVideo Player SDK (for URL-based playback) or a third-party player.'."\n", + ], + 'DeletePlayInfo' => [ + 'summary' => 'Deletes media streams such as video streams and audio streams.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + ], + 'parameters' => [ + [ + 'name' => 'MediaId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the media asset.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '1d3518e0027d71ed80cd909598416303', + ], + ], + [ + 'name' => 'FileURLs', + 'in' => 'query', + 'schema' => [ + 'description' => 'The URL of the media stream file that you want to delete. Separate multiple URLs with commas (,).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'https://ice-test001.oss-cn-shanghai.aliyuncs.com/%E6%8E%A5%E5%8F%A3%E6%B5%8B%E8%AF%95/%E5%B0%8F%E7%8C%AA%E4%BD%A9%E5%A5%87640*360.mp4', + ], + ], + [ + 'name' => 'DeletePhysicalFiles', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to delete the physical file of the media stream.'."\n" + ."\n" + .'If the media asset is stored in your own Object Storage Service (OSS) bucket, you must authorize the service role AliyunICEDefaultRole in advance. <props="china">For more information, see [Authorize IMS to delete recording files in OSS](https://help.aliyun.com/document_detail/449331.html#p-ko2-wc7-iad).</props>'."\n" + ."\n" + .'You can delete only the physical files of transcoded streams, but not the physical files of source files.', + 'type' => 'boolean', + 'required' => false, + 'example' => 'false', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'RequestId', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'IgnoredList' => [ + 'description' => 'The URLs of ignored media streams. An error occurred while obtaining such media assets because the IDs or URLs of the media assets do not exist.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The URL of the ignored media stream. An error occurred while obtaining the media stream.'."\n", + 'type' => 'string', + 'example' => 'https://ice-test001.oss-cn-shanghai.aliyuncs.com/%E6%8E%A5%E5%8F%A3%E6%B5%8B%E8%AF%95/%E5%B0%8F%E7%8C%AA%E4%BD%A9%E5%A5%87640*360.mp4'."\n", + ], + ], + 'ForbiddenList' => [ + 'description' => 'The URLs of the media streams that cannot be deleted. Generally, media streams cannot be deleted if you do not have the required permissions.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The URL of the media stream that cannot be deleted.'."\n", + 'type' => 'string', + 'example' => 'https://ice-test001.oss-cn-shanghai.aliyuncs.com/%E6%8E%A5%E5%8F%A3%E6%B5%8B%E8%AF%95/%E5%B0%8F%E7%8C%AA%E4%BD%A9%E5%A5%87640*360.mp4'."\n", + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"IgnoredList\\": [\\n \\"https://ice-test001.oss-cn-shanghai.aliyuncs.com/%E6%8E%A5%E5%8F%A3%E6%B5%8B%E8%AF%95/%E5%B0%8F%E7%8C%AA%E4%BD%A9%E5%A5%87640*360.mp4\\\\n\\"\\n ],\\n \\"ForbiddenList\\": [\\n \\"https://ice-test001.oss-cn-shanghai.aliyuncs.com/%E6%8E%A5%E5%8F%A3%E6%B5%8B%E8%AF%95/%E5%B0%8F%E7%8C%AA%E4%BD%A9%E5%A5%87640*360.mp4\\\\n\\"\\n ]\\n}","type":"json"}]', + 'title' => 'DeletePlayInfo', + 'description' => 'You can call this operation to delete multiple media streams at a time.'."\n", + ], + 'CreateAudit' => [ + 'summary' => 'Submits manual review results for media assets.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + ], + 'parameters' => [ + [ + 'name' => 'AuditContent', + 'in' => 'query', + 'schema' => [ + 'description' => 'The review results. You can specify the results for a maximum of 20 videos at a time. The value must be converted to a string. For more information about the parameters in AuditContent, see the "AuditContent" section of this topic.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => '['."\n" + .' {'."\n" + .' "MediaId": "93ab850b4f*****b54b6e91d24d81d4",'."\n" + .' "Status": "Normal"'."\n" + .' },'."\n" + .' {'."\n" + .' "MediaId": "f867fbfb58*****8bbab65c4480ae1d",'."\n" + .' "Status": "Blocked",'."\n" + .' "Reason": "xxxx",'."\n" + .' "Comment": "xxxx"'."\n" + .' }'."\n" + .']', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'RequestId', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\"\\n}","type":"json"}]', + 'title' => 'CreateAudit', + 'requestParamsDescription' => '## AuditContent'."\n" + ."\n" + .'|Parameter|Type|Required|Description|'."\n" + .'|---|---|---|---|'."\n" + .'|MediaId|String|Yes|The ID of the audio or video file.|'."\n" + .'|Status|String|Yes|The review result of the audio or video file. Value values: **Blocked** and **Normal**.|'."\n" + .'|Reason|String|No|The reason for blocking the audio or video file if you set Status to Blocked. The reason can be up to 128 bytes in length.|'."\n" + .'|Comment|String|No|The review comment. The review comment can be up to 512 bytes in length.|', + ], + 'SubmitMediaCensorJob' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + ], + 'parameters' => [ + [ + 'name' => 'TemplateId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The template ID. If this parameter is not specified, the default template is used for moderation.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'S00000001-100060', + ], + ], + [ + 'name' => 'CoverImages', + 'in' => 'query', + 'schema' => [ + 'description' => 'The Object Storage Service (OSS) objects that are used as the thumbnails. Specify the thumbnails in a JSON array. A maximum of five thumbnails are supported.'."\n" + ."\n" + .'> If this parameter is specified, the system checks the thumbnails specified by this parameter instead of the thumbnails of the input file specified by **Media**.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '[{"Bucket":"example-bucket-****","Location":"oss-cn-shanghai","Object":"example-****.jpeg","RoleArn":"acs:ram::1997018457688683:role/AliyunICEDefaultRole"}]', + ], + ], + [ + 'name' => 'Title', + 'in' => 'query', + 'schema' => [ + 'description' => 'The video title, which can be up to 64 bytes in length.'."\n" + ."\n" + .'> If this parameter is specified, the system checks the title specified by this parameter instead of the title of the input file specified by Media.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'Hello World', + ], + ], + [ + 'name' => 'Description', + 'in' => 'query', + 'schema' => [ + 'description' => 'The video description, which can be up to 128 bytes in length.'."\n" + ."\n" + .'> If this parameter is specified, the system checks the description specified by this parameter instead of the description of the input file specified by Media.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'example description', + ], + ], + [ + 'name' => 'Barrages', + 'in' => 'query', + 'schema' => [ + 'description' => 'The live comments of the video.'."\n" + ."\n" + .'> If this parameter is specified, the system checks the live comments specified by this parameter instead of the live comments of the input file specified by Media.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'hello world', + ], + ], + [ + 'name' => 'Output', + 'in' => 'query', + 'schema' => [ + 'description' => 'The output snapshots. The moderation job generates output snapshots and the result JSON file in the path corresponding to the input file.'."\n" + ."\n" + .'* File name format of output snapshots: oss://bucket/snapshot-{Count}.jpg. In the path, bucket indicates an OSS bucket that resides in the same region as the current project, and {Count} is the sequence number of the snapshot.'."\n" + .'* The detailed moderation results are stored in the {jobId}.output file in the same OSS folder as the output snapshots. For more information about the parameters in the output file, see [Output parameters of media moderation jobs](~~609211~~).'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => true, + 'example' => 'oss://sashimi-cn-shanghai/censor/snapshot-{Count}.jpg', + ], + ], + [ + 'name' => 'UserData', + 'in' => 'query', + 'schema' => [ + 'description' => 'The user-defined data, which can be up to 128 bytes in length.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'UserDatatestid-001-****', + ], + ], + [ + 'name' => 'NotifyUrl', + 'in' => 'query', + 'allowEmptyValue' => false, + 'schema' => [ + 'description' => 'The callback URL. Simple Message Queue (SMQ, formerly MNS) and HTTP callbacks are supported.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'mns://125340688170****.oss-cn-shanghai.aliyuncs.com/queues/example-pipeline', + ], + ], + [ + 'name' => 'Input', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The information about the file to be moderated.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The type of the input file. Valid values:'."\n" + ."\n" + .'OSS: OSS object.'."\n" + ."\n" + .'Media: media asset.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'Media', + ], + 'Media' => [ + 'description' => 'The input file. The file can be an OSS object or a media asset. You can specify the path of an OSS object in one of the following formats:'."\n" + ."\n" + .'1\\. oss://bucket/object'."\n" + ."\n" + .'2\\. http(s)://bucket.oss-\\[regionId].aliyuncs.com/object'."\n" + ."\n" + .'In the preceding paths, bucket indicates an OSS bucket that resides in the same region as the current project, and object indicates the path of the object in the bucket.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '1b1b9cd148034739af413150fded****', + ], + ], + 'required' => false, + ], + ], + [ + 'name' => 'ScheduleConfig', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The scheduling configurations.'."\n", + 'type' => 'object', + 'properties' => [ + 'PipelineId' => [ + 'description' => 'The ID of the ApsaraVideo Media Processing (MPS) queue to which the job is submitted.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '5246b8d12a62433ab77845074039****', + ], + 'Priority' => [ + 'description' => 'The job priority. A larger value indicates a higher priority. Valid values: 1 to 10.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '6', + ], + ], + 'required' => false, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '25818875-5F78-4A13-BEF6-D7393642CA58', + ], + 'JobId' => [ + 'description' => 'The ID of the content moderation job. We recommend that you save this ID for subsequent calls of other operations.'."\n", + 'type' => 'string', + 'example' => '88c6ca184c0e47098a5b665e2****', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"25818875-5F78-4A13-BEF6-D7393642CA58\\",\\n \\"JobId\\": \\"88c6ca184c0e47098a5b665e2****\\"\\n}","type":"json"}]', + 'title' => 'SubmitMediaCensorJob', + 'summary' => 'Submits a content moderation job.', + 'description' => 'The job that you submit by calling this operation is run in asynchronous mode. The job is added to an ApsaraVideo Media Processing (MPS) queue to be scheduled and run. You can call the [QueryMediaCensorJobDetail](~~444847~~) operation or configure an asynchronous notification to obtain the job results.'."\n", + ], + 'QueryMediaCensorJobDetail' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'JobId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the content moderation job. You can obtain the job ID from the response parameters of the [SubmitMediaCensorJob](~~444848~~) operation.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '2288c6ca184c0e47098a5b665e2a12****', + ], + ], + [ + 'name' => 'NextPageToken', + 'in' => 'query', + 'schema' => [ + 'description' => 'The pagination token that is used in the next request to retrieve a new page of results. You do not need to specify this parameter for the first request. You must specify the token that is obtained from the previous query as the value of NextToken.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'ae0fd49c0840e14daf0d66a75b83****', + ], + ], + [ + 'name' => 'MaximumPageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page.'."\n" + ."\n" + .'* Default value: **30**.'."\n" + .'* Valid values: **1 to 300**.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '30', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'B42299E6-F71F-465F-8FE9-4FC2E3D3C2CA', + ], + 'MediaCensorJobDetail' => [ + 'description' => 'The results of the content moderation job.'."\n", + 'type' => 'object', + 'properties' => [ + 'CreationTime' => [ + 'description' => 'The time when the content moderation job was created.'."\n", + 'type' => 'string', + 'example' => '2018-09-13T16:32:24Z', + ], + 'FinishTime' => [ + 'description' => 'The time when the content moderation job was complete.'."\n", + 'type' => 'string', + 'example' => '2018-09-13T16:38:24Z', + ], + 'Suggestion' => [ + 'description' => 'The overall result of the content moderation job. Valid values:'."\n" + ."\n" + .'* **pass**: The content passes the moderation.'."\n" + .'* **review**: The content needs to be manually reviewed.'."\n" + .'* **block**: The content needs to be blocked.'."\n" + ."\n" + .'> If the moderation result of any type of content is review, the overall result is review. If the moderation result of any type of content is block, the overall result is block.'."\n", + 'type' => 'string', + 'example' => 'block', + ], + 'CoverImageCensorResults' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'CoverImageCensorResult' => [ + 'description' => 'The moderation results of thumbnails.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The detailed results.'."\n", + 'type' => 'object', + 'properties' => [ + 'Object' => [ + 'description' => 'The Object Storage Service (OSS) object that is used as the thumbnail.'."\n", + 'type' => 'string', + 'example' => 'test/ai/censor/v2/vme-****.jpg', + ], + 'Location' => [ + 'description' => 'The OSS region in which the thumbnail resides.'."\n", + 'type' => 'string', + 'example' => 'oss-cn-shanghai', + ], + 'Bucket' => [ + 'description' => 'The OSS bucket in which the thumbnail is stored.'."\n", + 'type' => 'string', + 'example' => 'bucket-out-test-****', + ], + 'Results' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'Result' => [ + 'description' => 'The moderation results.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The detailed moderation results.'."\n", + 'type' => 'object', + 'properties' => [ + 'Suggestion' => [ + 'description' => 'The recommended subsequent operation. Valid values:'."\n" + ."\n" + .'* **pass**: The content passes the moderation.'."\n" + .'* **review**: The content needs to be manually reviewed.'."\n" + .'* **block**: The content needs to be blocked.'."\n", + 'type' => 'string', + 'example' => 'pass', + ], + 'Label' => [ + 'description' => 'The label of the moderation result.'."\n" + ."\n" + .'* Valid values in the pornographic content moderation scenario:'."\n" + ."\n" + .' * **normal**: normal content.'."\n" + .' * **sexy**: sexy content.'."\n" + .' * **porn**: pornographic content.'."\n" + ."\n" + .'* Valid values in the terrorist content moderation scenario:'."\n" + ."\n" + .' * **normal**: normal content.'."\n" + .' * **bloody**: bloody content.'."\n" + .' * **explosion**: explosion and smoke.'."\n" + .' * **outfit**: special costume.'."\n" + .' * **logo**: special logo.'."\n" + .' * **weapon**: weapon.'."\n" + .' * **politics**: political content.'."\n" + .' * **violence**: violence.'."\n" + .' * **crowd**: crowd.'."\n" + .' * **parade**: parade.'."\n" + .' * **carcrash**: car accident.'."\n" + .' * **flag**: flag.'."\n" + .' * **location**: landmark.'."\n" + .' * **others**: other content.'."\n" + ."\n" + .'* Valid values in the ad moderation scenario:'."\n" + ."\n" + .' * **normal**: normal content.'."\n" + .' * **ad**: other ads.'."\n" + .' * **politics**: political content in text.'."\n" + .' * **porn**: pornographic content in text.'."\n" + .' * **abuse**: abuse in text.'."\n" + .' * **terrorism**: terrorist content in text.'."\n" + .' * **contraband**: prohibited content in text.'."\n" + .' * **spam**: spam in text.'."\n" + .' * **npx**: illegal ad.'."\n" + .' * **qrcode**: QR code.'."\n" + .' * **programCode**: mini program code.'."\n" + ."\n" + .'* Valid values in the undesirable scene moderation scenario:'."\n" + ."\n" + .' * **normal**: normal content.'."\n" + .' * **meaningless**: meaningless content, such as a black or white screen.'."\n" + .' * **PIP**: picture-in-picture.'."\n" + .' * **smoking**: smoking.'."\n" + .' * **drivelive**: live broadcasting in a running vehicle.'."\n" + ."\n" + .'* Valid values in the logo moderation scenario:'."\n" + ."\n" + .' * **normal**: normal content.'."\n" + .' * **TV**: controlled logo.'."\n" + .' * **trademark**: trademark.'."\n", + 'type' => 'string', + 'example' => 'Normal', + ], + 'Scene' => [ + 'description' => 'The moderation scenario. Valid values:'."\n" + ."\n" + .'* **porn**: pornographic content moderation.'."\n" + .'* **terrorism**: terrorist content moderation.'."\n" + .'* **ad**: ad moderation.'."\n" + .'* **live**: undesirable scene moderation.'."\n" + .'* **logo**: logo moderation.'."\n", + 'type' => 'string', + 'example' => 'Antispam', + ], + 'Rate' => [ + 'description' => 'The score. Valid values: 0 to 100.'."\n", + 'type' => 'string', + 'example' => '100', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'State' => [ + 'description' => 'The job state.'."\n", + 'type' => 'string', + 'example' => 'Success', + ], + 'TitleCensorResult' => [ + 'description' => 'The moderation results of titles.'."\n", + 'type' => 'object', + 'properties' => [ + 'Suggestion' => [ + 'description' => 'The recommended subsequent operation. Valid values:'."\n" + ."\n" + .'* **pass**: The content passes the moderation.'."\n" + .'* **review**: The content needs to be manually reviewed.'."\n" + .'* **block**: The content needs to be blocked.'."\n", + 'type' => 'string', + 'example' => 'block', + ], + 'Label' => [ + 'description' => 'The label of the moderation result. Valid values:'."\n" + ."\n" + .'* **normal**: normal content.'."\n" + .'* **spam**: spam.'."\n" + .'* **ad**: ads.'."\n" + .'* **abuse**: abuse content.'."\n" + .'* **flood**: excessive junk content.'."\n" + .'* **contraband**: prohibited content.'."\n" + .'* **meaningless**: meaningless content.'."\n", + 'type' => 'string', + 'example' => 'meaningless', + ], + 'Scene' => [ + 'description' => 'The moderation scenario. The value is **antispam**.'."\n", + 'type' => 'string', + 'example' => 'antispam', + ], + 'Rate' => [ + 'description' => 'The score.'."\n", + 'type' => 'string', + 'example' => '99.91', + ], + ], + ], + 'Message' => [ + 'description' => 'The error message returned if the job failed. This parameter is not returned if the job is successful.'."\n", + 'type' => 'string', + 'example' => 'The resource operated cannot be found', + ], + 'Input' => [ + 'description' => 'The information about the job input.'."\n", + 'type' => 'object', + 'properties' => [ + 'Object' => [ + 'description' => 'The name of the OSS object that is used as the input file.'."\n", + 'type' => 'string', + 'example' => 'test/ai/censor/test-****.mp4', + ], + 'Location' => [ + 'description' => 'The OSS region in which the input file resides.'."\n", + 'type' => 'string', + 'example' => 'oss-cn-shanghai', + ], + 'Bucket' => [ + 'description' => 'The name of the OSS bucket in which the input file is stored.'."\n", + 'type' => 'string', + 'example' => 'bucket-test-in-****', + ], + ], + ], + 'BarrageCensorResult' => [ + 'description' => 'The moderation results of live comments.'."\n", + 'type' => 'object', + 'properties' => [ + 'Suggestion' => [ + 'description' => 'The recommended subsequent operation. Valid values:'."\n" + ."\n" + .'* **pass**: The content passes the moderation.'."\n" + .'* **review**: The content needs to be manually reviewed.'."\n" + .'* **block**: The content needs to be blocked.'."\n", + 'type' => 'string', + 'example' => 'pass', + ], + 'Label' => [ + 'description' => 'The label of the moderation result. Valid values:'."\n" + ."\n" + .'* **normal**: normal content.'."\n" + .'* **spam**: spam.'."\n" + .'* **ad**: ads.'."\n" + .'* **abuse**: abuse content.'."\n" + .'* **flood**: excessive junk content.'."\n" + .'* **contraband**: prohibited content.'."\n" + .'* **meaningless**: meaningless content.'."\n", + 'type' => 'string', + 'example' => 'normal', + ], + 'Scene' => [ + 'description' => 'The moderation scenario. The value is **antispam**.'."\n", + 'type' => 'string', + 'example' => 'antispam', + ], + 'Rate' => [ + 'description' => 'The score.'."\n", + 'type' => 'string', + 'example' => '99.91', + ], + ], + ], + 'DescCensorResult' => [ + 'description' => 'The moderation results of descriptions.'."\n", + 'type' => 'object', + 'properties' => [ + 'Suggestion' => [ + 'description' => 'The recommended subsequent operation. Valid values:'."\n" + ."\n" + .'* **pass**: The content passes the moderation.'."\n" + .'* **review**: The content needs to be manually reviewed.'."\n" + .'* **block**: The content needs to be blocked.'."\n", + 'type' => 'string', + 'example' => 'review', + ], + 'Label' => [ + 'description' => 'The label of the moderation result. Valid values:'."\n" + ."\n" + .'* **normal**: normal content.'."\n" + .'* **spam**: spam.'."\n" + .'* **ad**: ads.'."\n" + .'* **abuse**: abuse content.'."\n" + .'* **flood**: excessive junk content.'."\n" + .'* **contraband**: prohibited content.'."\n" + .'* **meaningless**: meaningless content.'."\n", + 'type' => 'string', + 'example' => 'terrorism', + ], + 'Scene' => [ + 'description' => 'The moderation scenario. The value is **antispam**.'."\n", + 'type' => 'string', + 'example' => 'antispam', + ], + 'Rate' => [ + 'description' => 'The score.'."\n", + 'type' => 'string', + 'example' => '100', + ], + ], + ], + 'VideoCensorConfig' => [ + 'description' => 'The video moderation configurations.'."\n", + 'type' => 'object', + 'properties' => [ + 'OutputFile' => [ + 'description' => 'The information about output snapshots.'."\n", + 'type' => 'object', + 'properties' => [ + 'Object' => [ + 'description' => 'The OSS object that is generated as the output snapshot.'."\n" + ."\n" + .'> In the example, {Count} is a placeholder. The OSS objects that are generated as output snapshots are named `output00001-****.jpg`, `output00002-****.jpg`, and so on.'."\n", + 'type' => 'string', + 'example' => 'output{Count}.jpg', + ], + 'Location' => [ + 'description' => 'The OSS region in which the output snapshot resides.'."\n", + 'type' => 'string', + 'example' => 'oss-cn-shanghai', + ], + 'Bucket' => [ + 'description' => 'The OSS bucket in which the output snapshot is stored.'."\n", + 'type' => 'string', + 'example' => 'test-bucket-****', + ], + ], + ], + 'VideoCensor' => [ + 'description' => 'Indicates whether the video content needs to be moderated. Default value: **true**. Valid values:'."\n" + ."\n" + .'* **true**: The video content needs to be moderated.'."\n" + .'* **false**: The video content does not need to be moderated.'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'BizType' => [ + 'description' => 'The custom business type. Default value: common.'."\n", + 'type' => 'string', + 'example' => 'common', + ], + ], + ], + 'JobId' => [ + 'description' => 'The ID of the content moderation job.'."\n", + 'type' => 'string', + 'example' => 'f8f166eea7a44e9bb0a4aecf9543****', + ], + 'UserData' => [ + 'description' => 'The user-defined data.'."\n", + 'type' => 'string', + 'example' => 'example userdata ****', + ], + 'Code' => [ + 'description' => 'The error code returned if the job failed. This parameter is not returned if the job is successful.'."\n", + 'type' => 'string', + 'example' => 'InvalidParameter.ResourceNotFound', + ], + 'VensorCensorResult' => [ + 'description' => 'The moderation results of videos.'."\n", + 'type' => 'object', + 'properties' => [ + 'VideoTimelines' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'VideoTimeline' => [ + 'description' => 'The moderation results that are sorted in ascending order by time.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'Timestamp' => [ + 'description' => 'The position in the video. Format: `hh:mm:ss[.SSS]`.'."\n", + 'type' => 'string', + 'example' => '00:02:59.999', + ], + 'Object' => [ + 'description' => 'The OSS object that is generated as the output snapshot.'."\n" + ."\n" + .'> In the example, {Count} is a placeholder. The OSS objects that are generated as output snapshots are named `output00001-****.jpg`, `output00002-****.jpg`, and so on.'."\n", + 'type' => 'string', + 'example' => 'output{Count}.jpg', + ], + 'CensorResults' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'CensorResult' => [ + 'description' => 'The moderation results that include information such as labels and scores.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'Suggestion' => [ + 'description' => 'The recommended subsequent operation. Valid values:'."\n" + ."\n" + .'* **pass**: The content passes the moderation.'."\n" + .'* **review**: The content needs to be manually reviewed.'."\n" + .'* **block**: The content needs to be blocked.'."\n", + 'type' => 'string', + 'example' => 'block', + ], + 'Label' => [ + 'description' => 'The label of the moderation result.'."\n" + ."\n" + .'* Valid values in the pornographic content moderation scenario:'."\n" + ."\n" + .' * **normal**: normal content.'."\n" + .' * **sexy**: sexy content.'."\n" + .' * **porn**: pornographic content.'."\n" + ."\n" + .'* Valid values in the terrorist content moderation scenario:'."\n" + ."\n" + .' * **normal**: normal content.'."\n" + .' * **bloody**: bloody content.'."\n" + .' * **explosion**: explosion and smoke.'."\n" + .' * **outfit**: special costume.'."\n" + .' * **logo**: special logo.'."\n" + .' * **weapon**: weapon.'."\n" + .' * **politics**: political content.'."\n" + .' * **violence**: violence.'."\n" + .' * **crowd**: crowd.'."\n" + .' * **parade**: parade.'."\n" + .' * **carcrash**: car accident.'."\n" + .' * **flag**: flag.'."\n" + .' * **location**: landmark.'."\n" + .' * **others**: other content.'."\n" + ."\n" + .'* Valid values in the ad moderation scenario:'."\n" + ."\n" + .' * **normal**: normal content.'."\n" + .' * **ad**: other ads.'."\n" + .' * **politics**: political content in text.'."\n" + .' * **porn**: pornographic content in text.'."\n" + .' * **abuse**: abuse in text.'."\n" + .' * **terrorism**: terrorist content in text.'."\n" + .' * **contraband**: prohibited content in text.'."\n" + .' * **spam**: spam in text.'."\n" + .' * **npx**: illegal ad.'."\n" + .' * **qrcode**: QR code.'."\n" + .' * **programCode**: mini program code.'."\n" + ."\n" + .'* Valid values in the undesirable scene moderation scenario:'."\n" + ."\n" + .' * **normal**: normal content.'."\n" + .' * **meaningless**: meaningless content, such as a black or white screen.'."\n" + .' * **PIP**: picture-in-picture.'."\n" + .' * **smoking**: smoking.'."\n" + .' * **drivelive**: live broadcasting in a running vehicle.'."\n" + ."\n" + .'* Valid values in the logo moderation scenario:'."\n" + ."\n" + .' * **normal**: normal content.'."\n" + .' * **TV**: controlled logo.'."\n" + .' * **trademark**: trademark.'."\n", + 'type' => 'string', + 'example' => 'flood', + ], + 'Scene' => [ + 'description' => 'The moderation scenario. Valid values:'."\n" + ."\n" + .'* **porn**: pornographic content moderation.'."\n" + .'* **terrorism**: terrorist content moderation.'."\n" + .'* **ad**: ad moderation.'."\n" + .'* **live**: undesirable scene moderation.'."\n" + .'* **logo**: logo moderation.'."\n", + 'type' => 'string', + 'example' => 'porn', + ], + 'Rate' => [ + 'description' => 'The score.'."\n", + 'type' => 'string', + 'example' => '99.99', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'NextPageToken' => [ + 'description' => 'A pagination token. It can be used in the next request to retrieve a new page of results.'."\n", + 'type' => 'string', + 'example' => 'ea04afcca7cd4e80b9ece8fbb251****', + ], + 'CensorResults' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'CensorResult' => [ + 'description' => 'A collection of moderation results. The information includes the summary about various scenarios such as pornographic content moderation and terrorist content moderation.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The detailed moderation results.'."\n", + 'type' => 'object', + 'properties' => [ + 'Suggestion' => [ + 'description' => 'The recommended subsequent operation. Valid values:'."\n" + ."\n" + .'* **pass**: The content passes the moderation.'."\n" + .'* **review**: The content needs to be manually reviewed.'."\n" + .'* **block**: The content needs to be blocked.'."\n", + 'type' => 'string', + 'example' => 'review', + ], + 'Label' => [ + 'description' => 'The label of the moderation result.'."\n" + ."\n" + .'* Valid values in the pornographic content moderation scenario:'."\n" + ."\n" + .' * **normal**: normal content.'."\n" + .' * **sexy**: sexy content.'."\n" + .' * **porn**: pornographic content.'."\n" + ."\n" + .'* Valid values in the terrorist content moderation scenario:'."\n" + ."\n" + .' * **normal**: normal content.'."\n" + .' * **bloody**: bloody content.'."\n" + .' * **explosion**: explosion and smoke.'."\n" + .' * **outfit**: special costume.'."\n" + .' * **logo**: special logo.'."\n" + .' * **weapon**: weapon.'."\n" + .' * **politics**: political content.'."\n" + .' * **violence**: violence.'."\n" + .' * **crowd**: crowd.'."\n" + .' * **parade**: parade.'."\n" + .' * **carcrash**: car accident.'."\n" + .' * **flag**: flag.'."\n" + .' * **location**: landmark.'."\n" + .' * **others**: other content.'."\n" + ."\n" + .'* Valid values in the ad moderation scenario:'."\n" + ."\n" + .' * **normal**: normal content.'."\n" + .' * **ad**: other ads.'."\n" + .' * **politics**: political content in text.'."\n" + .' * **porn**: pornographic content in text.'."\n" + .' * **abuse**: abuse in text.'."\n" + .' * **terrorism**: terrorist content in text.'."\n" + .' * **contraband**: prohibited content in text.'."\n" + .' * **spam**: spam in text.'."\n" + .' * **npx**: illegal ad.'."\n" + .' * **qrcode**: QR code.'."\n" + .' * **programCode**: mini program code.'."\n" + ."\n" + .'* Valid values in the undesirable scene moderation scenario:'."\n" + ."\n" + .' * **normal**: normal content.'."\n" + .' * **meaningless**: meaningless content, such as a black or white screen.'."\n" + .' * **PIP**: picture-in-picture.'."\n" + .' * **smoking**: smoking.'."\n" + .' * **drivelive**: live broadcasting in a running vehicle.'."\n" + ."\n" + .'* Valid values in the logo moderation scenario:'."\n" + ."\n" + .' * **normal**: normal content.'."\n" + .' * **TV**: controlled logo.'."\n" + .' * **trademark**: trademark.'."\n", + 'type' => 'string', + 'example' => 'meaningless', + ], + 'Scene' => [ + 'description' => 'The moderation scenario. Valid values:'."\n" + ."\n" + .'* **porn**: pornographic content moderation.'."\n" + .'* **terrorism**: terrorist content moderation.'."\n" + .'* **ad**: ad moderation.'."\n" + .'* **live**: undesirable scene moderation.'."\n" + .'* **logo**: logo moderation.'."\n", + 'type' => 'string', + 'example' => 'terrorism', + ], + 'Rate' => [ + 'description' => 'The score.'."\n", + 'type' => 'string', + 'example' => '100', + ], + ], + ], + ], + ], + ], + ], + ], + 'PipelineId' => [ + 'description' => 'The ID of the ApsaraVideo Media Processing (MPS) queue to which the job was submitted.'."\n", + 'type' => 'string', + 'example' => 'c5b30b7c0d0e4a0abde1d5f9e751****', + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"B42299E6-F71F-465F-8FE9-4FC2E3D3C2CA\\",\\n \\"MediaCensorJobDetail\\": {\\n \\"CreationTime\\": \\"2018-09-13T16:32:24Z\\",\\n \\"FinishTime\\": \\"2018-09-13T16:38:24Z\\",\\n \\"Suggestion\\": \\"block\\",\\n \\"CoverImageCensorResults\\": {\\n \\"CoverImageCensorResult\\": [\\n {\\n \\"Object\\": \\"test/ai/censor/v2/vme-****.jpg\\",\\n \\"Location\\": \\"oss-cn-shanghai\\",\\n \\"Bucket\\": \\"bucket-out-test-****\\",\\n \\"Results\\": {\\n \\"Result\\": [\\n {\\n \\"Suggestion\\": \\"pass\\",\\n \\"Label\\": \\"Normal\\",\\n \\"Scene\\": \\"Antispam\\",\\n \\"Rate\\": \\"100\\"\\n }\\n ]\\n }\\n }\\n ]\\n },\\n \\"State\\": \\"Success\\",\\n \\"TitleCensorResult\\": {\\n \\"Suggestion\\": \\"block\\",\\n \\"Label\\": \\"meaningless\\",\\n \\"Scene\\": \\"antispam\\",\\n \\"Rate\\": \\"99.91\\"\\n },\\n \\"Message\\": \\"The resource operated cannot be found\\",\\n \\"Input\\": {\\n \\"Object\\": \\"test/ai/censor/test-****.mp4\\",\\n \\"Location\\": \\"oss-cn-shanghai\\",\\n \\"Bucket\\": \\"bucket-test-in-****\\"\\n },\\n \\"BarrageCensorResult\\": {\\n \\"Suggestion\\": \\"pass\\",\\n \\"Label\\": \\"normal\\",\\n \\"Scene\\": \\"antispam\\",\\n \\"Rate\\": \\"99.91\\"\\n },\\n \\"DescCensorResult\\": {\\n \\"Suggestion\\": \\"review\\",\\n \\"Label\\": \\"terrorism\\",\\n \\"Scene\\": \\"antispam\\",\\n \\"Rate\\": \\"100\\"\\n },\\n \\"VideoCensorConfig\\": {\\n \\"OutputFile\\": {\\n \\"Object\\": \\"output{Count}.jpg\\",\\n \\"Location\\": \\"oss-cn-shanghai\\",\\n \\"Bucket\\": \\"test-bucket-****\\"\\n },\\n \\"VideoCensor\\": \\"true\\",\\n \\"BizType\\": \\"common\\"\\n },\\n \\"JobId\\": \\"f8f166eea7a44e9bb0a4aecf9543****\\",\\n \\"UserData\\": \\"example userdata ****\\",\\n \\"Code\\": \\"InvalidParameter.ResourceNotFound\\",\\n \\"VensorCensorResult\\": {\\n \\"VideoTimelines\\": {\\n \\"VideoTimeline\\": [\\n {\\n \\"Timestamp\\": \\"00:02:59.999\\",\\n \\"Object\\": \\"output{Count}.jpg\\",\\n \\"CensorResults\\": {\\n \\"CensorResult\\": [\\n {\\n \\"Suggestion\\": \\"block\\",\\n \\"Label\\": \\"flood\\",\\n \\"Scene\\": \\"porn\\",\\n \\"Rate\\": \\"99.99\\"\\n }\\n ]\\n }\\n }\\n ]\\n },\\n \\"NextPageToken\\": \\"ea04afcca7cd4e80b9ece8fbb251****\\",\\n \\"CensorResults\\": {\\n \\"CensorResult\\": [\\n {\\n \\"Suggestion\\": \\"review\\",\\n \\"Label\\": \\"meaningless\\",\\n \\"Scene\\": \\"terrorism\\",\\n \\"Rate\\": \\"100\\"\\n }\\n ]\\n }\\n },\\n \\"PipelineId\\": \\"c5b30b7c0d0e4a0abde1d5f9e751****\\"\\n }\\n}","type":"json"}]', + 'title' => 'QueryMediaCensorJobDetail', + 'summary' => 'Queries the information about a content moderation job.', + 'description' => 'In the content moderation results, the moderation results of the video are sorted in ascending order by time into a timeline. If the video is long, the content moderation results are paginated, and the first page is returned. You can call this operation again to query the remaining moderation results of the video.'."\n", + ], + 'QueryMediaCensorJobList' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'JobIds', + 'in' => 'query', + 'schema' => [ + 'description' => 'The IDs of the content moderation jobs. You can obtain the ID of a content moderation job from the response parameters of the SubmitMediaCensorJob operation. Separate multiple IDs with commas (,).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'fa9c34be3bcf42919ac4d1775239****,78dc866518b843259669df58ed30****', + ], + ], + [ + 'name' => 'NextPageToken', + 'in' => 'query', + 'schema' => [ + 'description' => 'The pagination token that is used in the next request to retrieve a new page of results. You do not need to specify this parameter for the first request. You must specify the token that is obtained from the previous query as the value of NextToken.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '79aff3eee82242e092899db5f669', + ], + ], + [ + 'name' => 'MaximumPageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page.'."\n" + ."\n" + .'* Default value: **30**.'."\n" + .'* Valid values: **1 to 300**.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'maximum' => '100', + 'minimum' => '1', + 'example' => '20', + 'default' => '10', + ], + ], + [ + 'name' => 'State', + 'in' => 'query', + 'schema' => [ + 'description' => 'The state of the jobs that you want to query. Valid values:'."\n" + ."\n" + .'* **All**: all jobs.'."\n" + .'* **Queuing**: the jobs that are waiting in the queue.'."\n" + .'* **Analysing**: the jobs that are in progress.'."\n" + .'* **Fail**: failed jobs.'."\n" + .'* **Success**: successful jobs.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'All', + 'default' => 'All', + ], + ], + [ + 'name' => 'StartOfJobCreatedTimeRange', + 'in' => 'query', + 'schema' => [ + 'description' => 'The beginning of the time range to query.'."\n" + ."\n" + .'* Specify the time in the ISO 8601 standard. The time must be in UTC.'."\n" + .'* Format: yyyy-MM-ddTHH:mm:ssZ.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2021-12-22T03:48:05Z'."\n", + ], + ], + [ + 'name' => 'EndOfJobCreatedTimeRange', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end of the time range to query.'."\n" + ."\n" + .'* Specify the time in the ISO 8601 standard. The time must be in UTC.'."\n" + .'* Format: yyyy-MM-ddTHH:mm:ssZ.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2022-02-14T02:16:07Z'."\n", + ], + ], + [ + 'name' => 'PipelineId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the ApsaraVideo Media Processing (MPS) queue to which the jobs were submitted.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'c5b30b7c0d0e4a0abde1d5f9e751****'."\n", + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'MediaCensorJobList' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'MediaCensorJob' => [ + 'description' => 'The queried content moderation jobs.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The details of the content moderation job.'."\n", + 'type' => 'object', + 'properties' => [ + 'CreationTime' => [ + 'description' => 'The time when the content moderation job was created.'."\n", + 'type' => 'string', + 'example' => '2021-11-04T07:25:48Z'."\n", + ], + 'FinishTime' => [ + 'description' => 'The time when the content moderation job was complete.'."\n", + 'type' => 'string', + 'example' => '2021-11-04T07:25:50Z'."\n", + ], + 'Suggestion' => [ + 'description' => 'The recommended subsequent operation. Valid values:'."\n" + ."\n" + .'* **pass**: The content passes the moderation.'."\n" + .'* **review**: The content needs to be manually reviewed.'."\n" + .'* **block**: The content needs to be blocked.'."\n", + 'type' => 'string', + 'example' => 'pass', + ], + 'CoverImageCensorResults' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'CoverImageCensorResult' => [ + 'description' => 'The moderation results of thumbnails.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The detailed moderation result of the thumbnail.'."\n", + 'type' => 'object', + 'properties' => [ + 'Object' => [ + 'description' => 'The Object Storage Service (OSS) object that is used as the thumbnail.'."\n", + 'type' => 'string', + 'example' => 'test/ai/censor/v2/vme-****.jpg'."\n", + ], + 'Location' => [ + 'description' => 'The OSS region in which the thumbnail resides.'."\n", + 'type' => 'string', + 'example' => 'oss-cn-shanghai', + ], + 'Bucket' => [ + 'description' => 'The OSS bucket in which the thumbnail is stored.'."\n", + 'type' => 'string', + 'example' => 'example-Bucket-****'."\n", + ], + 'Results' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'Result' => [ + 'description' => 'The moderation results.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The detailed moderation results.'."\n", + 'type' => 'object', + 'properties' => [ + 'Suggestion' => [ + 'description' => 'The overall result of the moderation job. Valid values:'."\n" + ."\n" + .'* **pass**: The content passes the moderation.'."\n" + .'* **review**: The content needs to be manually reviewed.'."\n" + .'* **block**: The content needs to be blocked.'."\n" + ."\n" + .'> If the moderation result of any type of content is review, the overall result is review. If the moderation result of any type of content is block, the overall result is block.'."\n", + 'type' => 'string', + 'example' => 'pass', + ], + 'Label' => [ + 'description' => 'The label of the moderation result. Separate multiple labels with commas (,).'."\n" + ."\n" + .'* Valid values in the pornographic content moderation scenario:'."\n" + ."\n" + .' * **normal**: normal content.'."\n" + .' * **sexy**: sexy content.'."\n" + .' * **porn**: pornographic content.'."\n" + ."\n" + .'* Valid values in the terrorist content moderation scenario:'."\n" + ."\n" + .' * **normal**: normal content.'."\n" + .' * **bloody**: bloody content.'."\n" + .' * **explosion**: explosion and smoke.'."\n" + .' * **outfit**: special costume.'."\n" + .' * **logo**: special logo.'."\n" + .' * **weapon**: weapon.'."\n" + .' * **politics**: political content.'."\n" + .' * **violence**: violence.'."\n" + .' * **crowd**: crowd.'."\n" + .' * **parade**: parade.'."\n" + .' * **carcrash**: car accident.'."\n" + .' * **flag**: flag.'."\n" + .' * **location**: landmark.'."\n" + .' * **others**: other content.'."\n" + ."\n" + .'* Valid values in the ad moderation scenario:'."\n" + ."\n" + .' * **normal**: normal content.'."\n" + .' * **ad**: other ads.'."\n" + .' * **politics**: political content in text.'."\n" + .' * **porn**: pornographic content in text.'."\n" + .' * **abuse**: abuse in text.'."\n" + .' * **terrorism**: terrorist content in text.'."\n" + .' * **contraband**: prohibited content in text.'."\n" + .' * **spam**: spam in text.'."\n" + .' * **npx**: illegal ad.'."\n" + .' * **qrcode**: QR code.'."\n" + .' * **programCode**: mini program code.'."\n" + ."\n" + .'* Valid values in the undesirable scene moderation scenario:'."\n" + ."\n" + .' * **normal**: normal content.'."\n" + .' * **meaningless**: meaningless content, such as a black or white screen.'."\n" + .' * **PIP**: picture-in-picture.'."\n" + .' * **smoking**: smoking.'."\n" + .' * **drivelive**: live streaming in a running vehicle.'."\n" + ."\n" + .'* Valid values in the logo moderation scenario:'."\n" + ."\n" + .' * **normal**: normal content.'."\n" + .' * **TV**: controlled logo.'."\n" + .' * **trademark**: trademark.'."\n", + 'type' => 'string', + 'example' => 'normal', + ], + 'Scene' => [ + 'description' => 'The moderation scenario. Valid values:'."\n" + ."\n" + .'* **porn**: pornographic content moderation.'."\n" + .'* **terrorism**: terrorist content moderation.'."\n" + .'* **ad**: ad moderation.'."\n" + .'* **live**: undesirable scene moderation.'."\n" + .'* **logo**: logo moderation.'."\n", + 'type' => 'string', + 'example' => 'live', + ], + 'Rate' => [ + 'description' => 'The score. Valid values: 0 to 100.'."\n", + 'type' => 'string', + 'example' => '100', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'State' => [ + 'description' => 'The job state.'."\n", + 'type' => 'string', + 'example' => 'Success', + ], + 'TitleCensorResult' => [ + 'description' => 'The moderation results of titles.'."\n", + 'type' => 'object', + 'properties' => [ + 'Suggestion' => [ + 'description' => 'The recommended subsequent operation. Valid values:'."\n" + ."\n" + .'* **pass**: The content passes the moderation.'."\n" + .'* **review**: The content needs to be manually reviewed.'."\n" + .'* **block**: The content needs to be blocked.'."\n", + 'type' => 'string', + 'example' => 'block', + ], + 'Label' => [ + 'description' => 'The label of the moderation result. Separate multiple labels with commas (,). Valid values:'."\n" + ."\n" + .'* **normal**: normal content.'."\n" + .'* **spam**: spam.'."\n" + .'* **ad**: ads.'."\n" + .'* **abuse**: abuse content.'."\n" + .'* **flood**: excessive junk content.'."\n" + .'* **contraband**: prohibited content.'."\n" + .'* **meaningless**: meaningless content.'."\n", + 'type' => 'string', + 'example' => 'meaningless', + ], + 'Scene' => [ + 'description' => 'The moderation scenario. The value is **antispam**.'."\n", + 'type' => 'string', + 'example' => 'antispam', + ], + 'Rate' => [ + 'description' => 'The score. Valid values: 0 to 100.'."\n", + 'type' => 'string', + 'example' => '100', + ], + ], + ], + 'Message' => [ + 'description' => 'The error message returned if the job failed. This parameter is not returned if the job is successful.'."\n", + 'type' => 'string', + 'example' => 'The resource operated cannot be found', + ], + 'Input' => [ + 'description' => 'The information about the job input.'."\n", + 'type' => 'object', + 'properties' => [ + 'Object' => [ + 'description' => 'The name of the OSS object that is used as the input file.'."\n", + 'type' => 'string', + 'example' => 'test/ai/censor/test-****.mp4', + ], + 'Location' => [ + 'description' => 'The OSS region in which the input file resides.'."\n", + 'type' => 'string', + 'example' => 'oss-cn-shanghai'."\n", + ], + 'Bucket' => [ + 'description' => 'The name of the OSS bucket in which the input file is stored.'."\n", + 'type' => 'string', + 'example' => 'bucket-test-in-****', + ], + ], + ], + 'BarrageCensorResult' => [ + 'description' => 'The moderation results of live comments.'."\n", + 'type' => 'object', + 'properties' => [ + 'Suggestion' => [ + 'description' => 'The recommended subsequent operation. Valid values:'."\n" + ."\n" + .'* **pass**: The content passes the moderation.'."\n" + .'* **review**: The content needs to be manually reviewed.'."\n" + .'* **block**: The content needs to be blocked.'."\n", + 'type' => 'string', + 'example' => 'pass', + ], + 'Label' => [ + 'description' => 'The label of the moderation result. Separate multiple labels with commas (,). Valid values:'."\n" + ."\n" + .'* **normal**: normal content.'."\n" + .'* **spam**: spam.'."\n" + .'* **ad**: ads.'."\n" + .'* **abuse**: abuse content.'."\n" + .'* **flood**: excessive junk content.'."\n" + .'* **contraband**: prohibited content.'."\n" + .'* **meaningless**: meaningless content.'."\n", + 'type' => 'string', + 'example' => 'normal', + ], + 'Scene' => [ + 'description' => 'The moderation scenario. The value is **antispam**.'."\n", + 'type' => 'string', + 'example' => 'antispam', + ], + 'Rate' => [ + 'description' => 'The score. Valid values: 0 to 100.'."\n", + 'type' => 'string', + 'example' => '99.91', + ], + ], + ], + 'DescCensorResult' => [ + 'description' => 'The moderation results of descriptions.'."\n", + 'type' => 'object', + 'properties' => [ + 'Suggestion' => [ + 'description' => 'The recommended subsequent operation. Valid values:'."\n" + ."\n" + .'* **pass**: The content passes the moderation.'."\n" + .'* **review**: The content needs to be manually reviewed.'."\n" + .'* **block**: The content needs to be blocked.'."\n", + 'type' => 'string', + 'example' => 'pass', + ], + 'Label' => [ + 'description' => 'The label of the moderation result. Separate multiple labels with commas (,). Valid values:'."\n" + ."\n" + .'* **normal**: normal content.'."\n" + .'* **spam**: spam.'."\n" + .'* **ad**: ads.'."\n" + .'* **abuse**: abuse content.'."\n" + .'* **flood**: excessive junk content.'."\n" + .'* **contraband**: prohibited content.'."\n" + .'* **meaningless**: meaningless content.'."\n", + 'type' => 'string', + 'example' => 'normal', + ], + 'Scene' => [ + 'description' => 'The moderation scenario. The value is **antispam**.'."\n", + 'type' => 'string', + 'example' => 'antispam', + ], + 'Rate' => [ + 'description' => 'The score. Valid values: 0 to 100.'."\n", + 'type' => 'string', + 'example' => '100', + ], + ], + ], + 'VideoCensorConfig' => [ + 'description' => 'The video moderation configurations.'."\n", + 'type' => 'object', + 'properties' => [ + 'OutputFile' => [ + 'description' => 'The information about output snapshots.'."\n", + 'type' => 'object', + 'properties' => [ + 'Object' => [ + 'description' => 'The OSS object that is generated as the output snapshot.'."\n" + ."\n" + .'> In the example, {Count} is a placeholder. The OSS objects that are generated as output snapshots are named `output00001-****.jpg, output00002-****.jpg`, and so on.'."\n", + 'type' => 'string', + 'example' => 'output{Count}.jpg', + ], + 'Location' => [ + 'description' => 'The ID of the region in which the output snapshot resides.'."\n", + 'type' => 'string', + 'example' => 'oss-cn-shanghai'."\n", + ], + 'Bucket' => [ + 'description' => 'The OSS bucket in which the output snapshot is stored.'."\n", + 'type' => 'string', + 'example' => 'test-bucket-****'."\n", + ], + ], + ], + 'VideoCensor' => [ + 'description' => 'Indicates whether the video content needs to be moderated. Default value: **true**. Valid values:'."\n" + ."\n" + .'* **true**: The video content needs to be moderated.'."\n" + .'* **false**: The video content does not need to be moderated.'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'BizType' => [ + 'description' => 'The moderation template. Default value: common. The default value indicates that the default template is used.'."\n" + ."\n" + .'> If the moderation template is not specified, the default value common is returned. If a custom moderation template that is created by submitting a ticket is specified, the UID of the template is returned.'."\n", + 'type' => 'string', + 'example' => 'common', + ], + ], + ], + 'JobId' => [ + 'description' => 'The ID of the content moderation job.'."\n", + 'type' => 'string', + 'example' => 'f8f166eea7a44e9bb0a4aecf9543', + ], + 'UserData' => [ + 'description' => 'The user-defined data.'."\n", + 'type' => 'string', + 'example' => 'example userdata ****'."\n", + ], + 'Code' => [ + 'description' => 'The error code returned if the job failed. This parameter is not returned if the job is successful.'."\n", + 'type' => 'string', + 'example' => 'InvalidParameter.ResourceNotFound', + ], + 'VensorCensorResult' => [ + 'description' => 'The moderation results of videos.'."\n", + 'type' => 'object', + 'properties' => [ + 'VideoTimelines' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'VideoTimeline' => [ + 'description' => 'The moderation results that are sorted in ascending order by time.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The detailed moderation results.'."\n", + 'type' => 'object', + 'properties' => [ + 'Timestamp' => [ + 'description' => 'The position in the video. Format: `hh:mm:ss[.SSS]`.'."\n", + 'type' => 'string', + 'example' => '00:02:59.999', + ], + 'Object' => [ + 'description' => 'The OSS object that is generated as the output snapshot.'."\n" + ."\n" + .'> In the example, {Count} is a placeholder. The OSS objects that are generated as output snapshots are named `output00001-****.jpg`, `output00002-****.jpg`, and so on.'."\n", + 'type' => 'string', + 'example' => 'output{Count}.jpg', + ], + 'CensorResults' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'CensorResult' => [ + 'description' => 'The moderation results that include information such as labels and scores.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The detailed moderation results.'."\n", + 'type' => 'object', + 'properties' => [ + 'Suggestion' => [ + 'description' => 'The recommended subsequent operation. Valid values:'."\n" + ."\n" + .'* **pass**: The content passes the moderation.'."\n" + .'* **review**: The content needs to be manually reviewed.'."\n" + .'* **block**: The content needs to be blocked.'."\n", + 'type' => 'string', + 'example' => 'block', + ], + 'Label' => [ + 'description' => 'The label of the moderation result. Separate multiple labels with commas (,).'."\n" + ."\n" + .'* Valid values in the pornographic content moderation scenario:'."\n" + ."\n" + .' * **normal**: normal content.'."\n" + .' * **sexy**: sexy content.'."\n" + .' * **porn**: pornographic content.'."\n" + ."\n" + .'* Valid values in the terrorist content moderation scenario:'."\n" + ."\n" + .' * **normal**: normal content.'."\n" + .' * **bloody**: bloody content.'."\n" + .' * **explosion**: explosion and smoke.'."\n" + .' * **outfit**: special costume.'."\n" + .' * **logo**: special logo.'."\n" + .' * **weapon**: weapon.'."\n" + .' * **politics**: political content.'."\n" + .' * **violence**: violence.'."\n" + .' * **crowd**: crowd.'."\n" + .' * **parade**: parade.'."\n" + .' * **carcrash**: car accident.'."\n" + .' * **flag**: flag.'."\n" + .' * **location**: landmark.'."\n" + .' * **others**: other content.'."\n" + ."\n" + .'* Valid values in the ad moderation scenario:'."\n" + ."\n" + .' * **normal**: normal content.'."\n" + .' * **ad**: other ads.'."\n" + .' * **politics**: political content in text.'."\n" + .' * **porn**: pornographic content in text.'."\n" + .' * **abuse**: abuse in text.'."\n" + .' * **terrorism**: terrorist content in text.'."\n" + .' * **contraband**: prohibited content in text.'."\n" + .' * **spam**: spam in text.'."\n" + .' * **npx**: illegal ad.'."\n" + .' * **qrcode**: QR code.'."\n" + .' * **programCode**: mini program code.'."\n" + ."\n" + .'* Valid values in the undesirable scene moderation scenario:'."\n" + ."\n" + .' * **normal**: normal content.'."\n" + .' * **meaningless**: meaningless content, such as a black or white screen.'."\n" + .' * **PIP**: picture-in-picture.'."\n" + .' * **smoking**: smoking.'."\n" + .' * **drivelive**: live streaming in a running vehicle.'."\n" + ."\n" + .'* Valid values in the logo moderation scenario:'."\n" + ."\n" + .' * **normal**: normal content.'."\n" + .' * **TV**: controlled logo.'."\n" + .' * **trademark**: trademark.'."\n", + 'type' => 'string', + 'example' => 'normal', + ], + 'Scene' => [ + 'description' => 'The moderation scenario. Valid values:'."\n" + ."\n" + .'* **porn**: pornographic content moderation.'."\n" + .'* **terrorism**: terrorist content moderation.'."\n" + .'* **ad**: ad moderation.'."\n" + .'* **live**: undesirable scene moderation.'."\n" + .'* **logo**: logo moderation.'."\n", + 'type' => 'string', + 'example' => 'porn', + ], + 'Rate' => [ + 'description' => 'The score. Valid values: 0 to 100.'."\n", + 'type' => 'string', + 'example' => '100', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'NextPageToken' => [ + 'description' => 'A pagination token. It can be used in the next request to retrieve a new page of results.'."\n", + 'type' => 'string', + 'example' => 'ea04afcca7cd4e80b9ece8fbb251', + ], + 'CensorResults' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'CensorResult' => [ + 'description' => 'A collection of moderation results. The information includes the summary about various scenarios such as pornographic content moderation and terrorist content moderation.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The detailed moderation results.'."\n", + 'type' => 'object', + 'properties' => [ + 'Suggestion' => [ + 'description' => 'The recommended subsequent operation. Valid values:'."\n" + ."\n" + .'* **pass**: The content passes the moderation.'."\n" + .'* **review**: The content needs to be manually reviewed.'."\n" + .'* **block**: The content needs to be blocked.'."\n", + 'type' => 'string', + 'example' => 'pass', + ], + 'Label' => [ + 'description' => 'The label of the moderation result. Separate multiple labels with commas (,).'."\n" + ."\n" + .'* Valid values in the pornographic content moderation scenario:'."\n" + ."\n" + .' * **normal**: normal content.'."\n" + .' * **sexy**: sexy content.'."\n" + .' * **porn**: pornographic content.'."\n" + ."\n" + .'* Valid values in the terrorist content moderation scenario:'."\n" + ."\n" + .' * **normal**: normal content.'."\n" + .' * **bloody**: bloody content.'."\n" + .' * **explosion**: explosion and smoke.'."\n" + .' * **outfit**: special costume.'."\n" + .' * **logo**: special logo.'."\n" + .' * **weapon**: weapon.'."\n" + .' * **politics**: political content.'."\n" + .' * **violence**: violence.'."\n" + .' * **crowd**: crowd.'."\n" + .' * **parade**: parade.'."\n" + .' * **carcrash**: car accident.'."\n" + .' * **flag**: flag.'."\n" + .' * **location**: landmark.'."\n" + .' * **others**: other content.'."\n" + ."\n" + .'* Valid values in the ad moderation scenario:'."\n" + ."\n" + .' * **normal**: normal content.'."\n" + .' * **ad**: other ads.'."\n" + .' * **politics**: political content in text.'."\n" + .' * **porn**: pornographic content in text.'."\n" + .' * **abuse**: abuse in text.'."\n" + .' * **terrorism**: terrorist content in text.'."\n" + .' * **contraband**: prohibited content in text.'."\n" + .' * **spam**: spam in text.'."\n" + .' * **npx**: illegal ad.'."\n" + .' * **qrcode**: QR code.'."\n" + .' * **programCode**: mini program code.'."\n" + ."\n" + .'* Valid values in the undesirable scene moderation scenario:'."\n" + ."\n" + .' * **normal**: normal content.'."\n" + .' * **meaningless**: meaningless content, such as a black or white screen.'."\n" + .' * **PIP**: picture-in-picture.'."\n" + .' * **smoking**: smoking.'."\n" + .' * **drivelive**: live streaming in a running vehicle.'."\n" + ."\n" + .'* Valid values in the logo moderation scenario:'."\n" + ."\n" + .' * **normal**: normal content.'."\n" + .' * **TV**: controlled logo.'."\n" + .' * **trademark**: trademark.'."\n", + 'type' => 'string', + 'example' => 'meaningless', + ], + 'Scene' => [ + 'description' => 'The moderation scenario. Valid values:'."\n" + ."\n" + .'* **porn**: pornographic content moderation.'."\n" + .'* **terrorism**: terrorist content moderation.'."\n" + .'* **ad**: ad moderation.'."\n" + .'* **live**: undesirable scene moderation.'."\n" + .'* **logo**: logo moderation.'."\n", + 'type' => 'string', + 'example' => 'ad', + ], + 'Rate' => [ + 'description' => 'The score. Valid values: 0 to 100.'."\n", + 'type' => 'string', + 'example' => '100', + ], + ], + ], + ], + ], + ], + ], + ], + 'PipelineId' => [ + 'description' => 'The ID of the MPS queue to which the job was submitted.'."\n", + 'type' => 'string', + 'example' => 'c5b30b7c0d0e4a0abde1d5f9e751****'."\n", + ], + ], + ], + ], + ], + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'D1D5C080-8E2F-5030-8AB4-13092F17631B'."\n", + ], + 'NextPageToken' => [ + 'description' => 'A pagination token. It can be used in the next request to retrieve a new page of results. The value is 32-character UUID. If the returned query results cannot be displayed within one page, this parameter is returned. The value of this parameter is updated for each query.'."\n", + 'type' => 'string', + 'example' => '9b1a42bc6e8d46e6a1383b7e7f01****'."\n", + ], + 'NonExistIds' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'String' => [ + 'description' => 'The IDs of the jobs that do not exist. This parameter is not returned if all the specified jobs are found.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The job ID.'."\n", + 'type' => 'string', + 'example' => '78dc866518b843259669df58ed30****'."\n", + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"MediaCensorJobList\\": {\\n \\"MediaCensorJob\\": [\\n {\\n \\"CreationTime\\": \\"2021-11-04T07:25:48Z\\\\n\\",\\n \\"FinishTime\\": \\"2021-11-04T07:25:50Z\\\\n\\",\\n \\"Suggestion\\": \\"pass\\",\\n \\"CoverImageCensorResults\\": {\\n \\"CoverImageCensorResult\\": [\\n {\\n \\"Object\\": \\"test/ai/censor/v2/vme-****.jpg\\\\n\\",\\n \\"Location\\": \\"oss-cn-shanghai\\",\\n \\"Bucket\\": \\"example-Bucket-****\\\\n\\",\\n \\"Results\\": {\\n \\"Result\\": [\\n {\\n \\"Suggestion\\": \\"pass\\",\\n \\"Label\\": \\"normal\\",\\n \\"Scene\\": \\"live\\",\\n \\"Rate\\": \\"100\\"\\n }\\n ]\\n }\\n }\\n ]\\n },\\n \\"State\\": \\"Success\\",\\n \\"TitleCensorResult\\": {\\n \\"Suggestion\\": \\"block\\",\\n \\"Label\\": \\"meaningless\\",\\n \\"Scene\\": \\"antispam\\",\\n \\"Rate\\": \\"100\\"\\n },\\n \\"Message\\": \\"The resource operated cannot be found\\",\\n \\"Input\\": {\\n \\"Object\\": \\"test/ai/censor/test-****.mp4\\",\\n \\"Location\\": \\"oss-cn-shanghai\\\\n\\",\\n \\"Bucket\\": \\"bucket-test-in-****\\"\\n },\\n \\"BarrageCensorResult\\": {\\n \\"Suggestion\\": \\"pass\\",\\n \\"Label\\": \\"normal\\",\\n \\"Scene\\": \\"antispam\\",\\n \\"Rate\\": \\"99.91\\"\\n },\\n \\"DescCensorResult\\": {\\n \\"Suggestion\\": \\"pass\\",\\n \\"Label\\": \\"normal\\",\\n \\"Scene\\": \\"antispam\\",\\n \\"Rate\\": \\"100\\"\\n },\\n \\"VideoCensorConfig\\": {\\n \\"OutputFile\\": {\\n \\"Object\\": \\"output{Count}.jpg\\",\\n \\"Location\\": \\"oss-cn-shanghai\\\\n\\",\\n \\"Bucket\\": \\"test-bucket-****\\\\n\\"\\n },\\n \\"VideoCensor\\": \\"true\\",\\n \\"BizType\\": \\"common\\"\\n },\\n \\"JobId\\": \\"f8f166eea7a44e9bb0a4aecf9543\\",\\n \\"UserData\\": \\"example userdata ****\\\\n\\",\\n \\"Code\\": \\"InvalidParameter.ResourceNotFound\\",\\n \\"VensorCensorResult\\": {\\n \\"VideoTimelines\\": {\\n \\"VideoTimeline\\": [\\n {\\n \\"Timestamp\\": \\"00:02:59.999\\",\\n \\"Object\\": \\"output{Count}.jpg\\",\\n \\"CensorResults\\": {\\n \\"CensorResult\\": [\\n {\\n \\"Suggestion\\": \\"block\\",\\n \\"Label\\": \\"normal\\",\\n \\"Scene\\": \\"porn\\",\\n \\"Rate\\": \\"100\\"\\n }\\n ]\\n }\\n }\\n ]\\n },\\n \\"NextPageToken\\": \\"ea04afcca7cd4e80b9ece8fbb251\\",\\n \\"CensorResults\\": {\\n \\"CensorResult\\": [\\n {\\n \\"Suggestion\\": \\"pass\\",\\n \\"Label\\": \\"meaningless\\",\\n \\"Scene\\": \\"ad\\",\\n \\"Rate\\": \\"100\\"\\n }\\n ]\\n }\\n },\\n \\"PipelineId\\": \\"c5b30b7c0d0e4a0abde1d5f9e751****\\\\n\\"\\n }\\n ]\\n },\\n \\"RequestId\\": \\"D1D5C080-8E2F-5030-8AB4-13092F17631B\\\\n\\",\\n \\"NextPageToken\\": \\"9b1a42bc6e8d46e6a1383b7e7f01****\\\\n\\",\\n \\"NonExistIds\\": {\\n \\"String\\": [\\n \\"78dc866518b843259669df58ed30****\\\\n\\"\\n ]\\n }\\n}","type":"json"}]', + 'title' => 'QueryMediaCensorJobList', + 'summary' => 'Queries a list of content moderation jobs.', + 'description' => 'You can call this operation to query only the content moderation jobs within the most recent three months.'."\n", + ], + 'CreateCustomTemplate' => [ + 'summary' => 'Creates a custom media processing template.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'Name', + 'in' => 'query', + 'schema' => [ + 'title' => '模板名称', + 'description' => 'The template name.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'test-template', + ], + ], + [ + 'name' => 'Type', + 'in' => 'query', + 'schema' => [ + 'title' => '模板类型。', + 'description' => 'The template type. Valid values:'."\n" + ."\n" + .'* 1: transcoding template.'."\n" + .'* 2: snapshot template.'."\n" + .'* 3: animated image template.'."\n" + .'* 4\\. image watermark template.'."\n" + .'* 5: text watermark template.'."\n" + .'* 6: subtitle template.'."\n" + .'* 7: AI-assisted content moderation template.'."\n" + .'* 8: AI-assisted intelligent thumbnail template.'."\n" + .'* 9: AI-assisted intelligent erasure template.'."\n" + .'* 10: AI-assisted media fingerprint analysis template.'."\n" + .'* 11: AI-assisted smart tagging template.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'example' => '1', + ], + ], + [ + 'name' => 'Subtype', + 'in' => 'query', + 'schema' => [ + 'title' => '模板子类型。', + 'description' => 'The template subtype.'."\n" + ."\n" + .'Valid values for transcoding templates:'."\n" + ."\n" + .'* 1 (Normal): regular template.'."\n" + .'* 2 (AudioTranscode): audio transcoding template.'."\n" + .'* 3 (Remux): container format conversion template.'."\n" + .'* 4 (NarrowBandV1): Narrowband HD 1.0 template.'."\n" + .'* 5 (NarrowBandV2): Narrowband HD 2.0 template.'."\n" + ."\n" + .'Valid values for snapshot templates:'."\n" + ."\n" + .'* 1 (Normal): regular template.'."\n" + .'* 2 (Sprite): sprite template.'."\n" + .'* 3 (WebVtt): WebVTT template.'."\n" + ."\n" + .'Valid values for AI-assisted content moderation templates:'."\n" + ."\n" + .'* 1 (Video): video moderation template.'."\n" + .'* 2 (Audio): audio moderation template.'."\n" + .'* 3 (Image): image moderation template.'."\n" + ."\n" + .'Valid values for AI-assisted intelligent erasure templates.'."\n" + ."\n" + .'* 1 (VideoDelogo): logo erasure template.'."\n" + .'* 2 (VideoDetext): subtitle erasure template.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'TemplateConfig', + 'in' => 'query', + 'schema' => [ + 'title' => '模板参数', + 'description' => 'The template configurations. For more information, see [Template parameters](~~448291~~).'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '{"Container":{"Format":"flv"},"Video":{},"Audio":{}}', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'CustomTemplate' => [ + 'title' => '模板信息', + 'description' => 'The template information.'."\n", + 'type' => 'object', + 'properties' => [ + 'TemplateId' => [ + 'title' => '模板Id', + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + 'TemplateName' => [ + 'title' => '模板名称', + 'description' => 'The template name.'."\n", + 'type' => 'string', + 'example' => 'test-template', + ], + 'Type' => [ + 'title' => '模板类型ID', + 'description' => 'The type ID of the template.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'TypeName' => [ + 'title' => '模板类型名称', + 'description' => 'The type name of the template.'."\n", + 'type' => 'string', + 'example' => 'TranscodeTemplate', + ], + 'Subtype' => [ + 'title' => '模板子类型名称', + 'description' => 'The subtype name of the template.'."\n", + 'type' => 'string', + 'example' => 'Remux', + ], + 'Status' => [ + 'title' => '模板状态', + 'description' => 'The template state.'."\n", + 'type' => 'string', + 'example' => 'Normal', + ], + 'IsDefault' => [ + 'title' => '是否默认模板', + 'description' => 'Indicates whether the template is the default template.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'TemplateConfig' => [ + 'title' => '模板参数', + 'description' => 'The template configurations.'."\n", + 'type' => 'string', + 'example' => '{"Container":{"Format":"flv"},"Video":{},"Audio":{}}', + ], + 'CreateTime' => [ + 'title' => '模板创建时间', + 'description' => 'The time when the template was created.'."\n", + 'type' => 'string', + 'example' => '2022-04-19T02:04:31Z', + ], + 'ModifiedTime' => [ + 'title' => '模板修改时间', + 'description' => 'The time when the template was last modified.'."\n", + 'type' => 'string', + 'example' => '2022-04-19T02:04:31Z', + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"CustomTemplate\\": {\\n \\"TemplateId\\": \\"****20b48fb04483915d4f2cd8ac****\\",\\n \\"TemplateName\\": \\"test-template\\",\\n \\"Type\\": 1,\\n \\"TypeName\\": \\"TranscodeTemplate\\",\\n \\"Subtype\\": \\"Remux\\",\\n \\"Status\\": \\"Normal\\",\\n \\"IsDefault\\": true,\\n \\"TemplateConfig\\": \\"{\\\\\\"Container\\\\\\":{\\\\\\"Format\\\\\\":\\\\\\"flv\\\\\\"},\\\\\\"Video\\\\\\":{},\\\\\\"Audio\\\\\\":{}}\\",\\n \\"CreateTime\\": \\"2022-04-19T02:04:31Z\\",\\n \\"ModifiedTime\\": \\"2022-04-19T02:04:31Z\\"\\n }\\n}","type":"json"}]', + 'title' => 'CreateCustomTemplate', + ], + 'GetSystemTemplate' => [ + 'summary' => 'Queries the information about a system template.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'TemplateId', + 'in' => 'query', + 'schema' => [ + 'title' => '模板ID', + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'S00000001-100060', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'SystemTemplate' => [ + 'title' => '模板信息', + 'description' => 'The template information.'."\n", + 'type' => 'object', + 'properties' => [ + 'TemplateId' => [ + 'title' => '模板Id', + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'example' => 'S00000001-100060', + ], + 'TemplateName' => [ + 'title' => '模板名称', + 'description' => 'The template name.'."\n", + 'type' => 'string', + 'example' => 'M3U8-2K', + ], + 'Type' => [ + 'title' => '模板类型ID', + 'description' => 'The type ID of the template.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'TypeName' => [ + 'title' => '模板类型名称', + 'description' => 'The type name of the template.'."\n", + 'type' => 'string', + 'example' => 'TranscodeTemplate', + ], + 'Subtype' => [ + 'title' => '模板子类型ID', + 'description' => 'The subtype ID of the template.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'SubtypeName' => [ + 'title' => '模板子类型名称', + 'description' => 'The subtype name of the template.'."\n", + 'type' => 'string', + 'example' => 'Normal', + ], + 'Status' => [ + 'title' => '模板状态', + 'description' => 'The template state.'."\n", + 'type' => 'string', + 'example' => 'Normal', + ], + 'TemplateConfig' => [ + 'title' => '模板参数', + 'description' => 'The template parameters.'."\n", + 'type' => 'string', + 'example' => '{"Container":{"Format":"m3u8"},"TransConfig":{"TransMode":"onepass"},"Video":{"Codec":"H.264","Maxrate":8000,"Preset":"medium","PixFmt":"yuv420p","Width":2048,"Bitrate":3500},"Audio":{"Codec":"aac","Bitrate":160,"Samplerate":44100,"Channels":2}}', + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"SystemTemplate\\": {\\n \\"TemplateId\\": \\"S00000001-100060\\",\\n \\"TemplateName\\": \\"M3U8-2K\\",\\n \\"Type\\": 1,\\n \\"TypeName\\": \\"TranscodeTemplate\\",\\n \\"Subtype\\": 1,\\n \\"SubtypeName\\": \\"Normal\\",\\n \\"Status\\": \\"Normal\\",\\n \\"TemplateConfig\\": \\"{\\\\\\"Container\\\\\\":{\\\\\\"Format\\\\\\":\\\\\\"m3u8\\\\\\"},\\\\\\"TransConfig\\\\\\":{\\\\\\"TransMode\\\\\\":\\\\\\"onepass\\\\\\"},\\\\\\"Video\\\\\\":{\\\\\\"Codec\\\\\\":\\\\\\"H.264\\\\\\",\\\\\\"Maxrate\\\\\\":8000,\\\\\\"Preset\\\\\\":\\\\\\"medium\\\\\\",\\\\\\"PixFmt\\\\\\":\\\\\\"yuv420p\\\\\\",\\\\\\"Width\\\\\\":2048,\\\\\\"Bitrate\\\\\\":3500},\\\\\\"Audio\\\\\\":{\\\\\\"Codec\\\\\\":\\\\\\"aac\\\\\\",\\\\\\"Bitrate\\\\\\":160,\\\\\\"Samplerate\\\\\\":44100,\\\\\\"Channels\\\\\\":2}}\\"\\n }\\n}","type":"json"}]', + 'title' => 'GetSystemTemplate', + ], + 'GetCustomTemplate' => [ + 'summary' => 'Queries the information about a custom template.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceEO4QPO', + ], + ], + 'parameters' => [ + [ + 'name' => 'TemplateId', + 'in' => 'query', + 'schema' => [ + 'title' => '模板ID', + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '****96e8864746a0b6f3****', + ], + ], + [ + 'name' => 'Type', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the template type that is used to query the default template. This parameter is required if TemplateId is not specified.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'Subtype', + 'in' => 'query', + 'schema' => [ + 'description' => 'The template subtype.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'CustomTemplate' => [ + 'title' => '模板信息', + 'description' => 'The template information.'."\n", + 'type' => 'object', + 'properties' => [ + 'TemplateId' => [ + 'title' => '模板Id', + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + 'TemplateName' => [ + 'title' => '模板名称', + 'description' => 'The template name.'."\n", + 'type' => 'string', + 'example' => '测试转码模板', + ], + 'Type' => [ + 'title' => '模板类型ID', + 'description' => 'The type ID of the template.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '2', + ], + 'TypeName' => [ + 'title' => '模板类型名称', + 'description' => 'The type name of the template.'."\n", + 'type' => 'string', + 'example' => 'SnapshotTemplate', + ], + 'Subtype' => [ + 'title' => '模板子类型ID', + 'description' => 'The subtype ID of the template.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'SubtypeName' => [ + 'title' => '模板子类型名称', + 'description' => 'The subtype name of the template.'."\n", + 'type' => 'string', + 'example' => 'Normal', + ], + 'Status' => [ + 'title' => '模板状态', + 'description' => 'The template state.'."\n", + 'type' => 'string', + 'example' => 'Normal', + ], + 'IsDefault' => [ + 'title' => '是否默认模板', + 'description' => 'Indicates whether the template is the default template.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'TemplateConfig' => [ + 'title' => '模板参数', + 'description' => 'The template parameters.'."\n", + 'type' => 'string', + 'example' => '{"Type":"Normal","FrameType":"normal","Time":0,"Count":10}', + ], + 'CreateTime' => [ + 'title' => '模板创建时间', + 'description' => 'The time when the template was created.'."\n", + 'type' => 'string', + 'example' => '2022-01-01T10:00:00Z', + ], + 'ModifiedTime' => [ + 'title' => '模板修改时间', + 'description' => 'The time when the template was last modified.'."\n", + 'type' => 'string', + 'example' => '2022-01-01T11:00:00Z'."\n", + ], + 'FrontendHint' => [ + 'type' => 'object', + 'properties' => [ + 'TranscodeTemplateHint' => [ + 'type' => 'object', + 'properties' => [ + 'BitrateControlType' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"CustomTemplate\\": {\\n \\"TemplateId\\": \\"****20b48fb04483915d4f2cd8ac****\\",\\n \\"TemplateName\\": \\"测试截图模板\\",\\n \\"Type\\": 2,\\n \\"TypeName\\": \\"SnapshotTemplate\\",\\n \\"Subtype\\": 1,\\n \\"SubtypeName\\": \\"Normal\\",\\n \\"Status\\": \\"Normal\\",\\n \\"IsDefault\\": true,\\n \\"TemplateConfig\\": \\"{\\\\\\"Type\\\\\\":\\\\\\"Normal\\\\\\",\\\\\\"FrameType\\\\\\":\\\\\\"normal\\\\\\",\\\\\\"Time\\\\\\":0,\\\\\\"Count\\\\\\":10}\\",\\n \\"CreateTime\\": \\"2022-01-01T10:00:00Z\\",\\n \\"ModifiedTime\\": \\"2022-01-01T11:00:00Z\\\\n\\",\\n \\"FrontendHint\\": {\\n \\"TranscodeTemplateHint\\": {\\n \\"BitrateControlType\\": \\"\\"\\n }\\n }\\n }\\n}","type":"json"}]', + 'title' => 'GetCustomTemplate', + 'description' => 'You can call this operation to query the information about a template with the ID specified by the TemplateId parameter. You can also query the information about the default template. If TemplateId is specified, other parameters are ignored and the template whose ID is specified is queried. If TemplateId is not specified, the default template is queried based on other parameters. In this case, Type is required.'."\n" + ."\n" + .'Template types:'."\n" + ."\n" + .'1. 1: transcoding template.'."\n" + .'2. 2: snapshot template.'."\n" + .'3. 3: animated image template.'."\n" + .'4. 4\\. image watermark template.'."\n" + .'5. 5: text watermark template.'."\n" + .'6. 6: subtitle template.'."\n" + .'7. 7: AI-assisted content moderation template.'."\n" + .'8. 8: AI-assisted intelligent thumbnail template.'."\n" + .'9. 9: AI-assisted intelligent erasure template.'."\n" + ."\n" + .'Subtypes of transcoding templates:'."\n" + ."\n" + .'1. 1 (Normal): regular template.'."\n" + .'2. 2 (AudioTranscode): audio transcoding template.'."\n" + .'3. 3 (Remux): container format conversion template.'."\n" + .'4. 4 (NarrowBandV1): Narrowband HD 1.0 template.'."\n" + .'5. 5 (NarrowBandV2): Narrowband HD 2.0 template.'."\n" + ."\n" + .'Subtypes of snapshot templates:'."\n" + ."\n" + .'1. 1 (Normal): regular template.'."\n" + .'2. 2 (Sprite): sprite template.'."\n" + .'3. 3 (WebVtt): WebVTT template.'."\n" + ."\n" + .'Subtypes of AI-assisted content moderation templates:'."\n" + ."\n" + .'1. 1 (Video): video moderation template.'."\n" + .'2. 2 (Audio): audio moderation template.'."\n" + .'3. 3 (Image): image moderation template.'."\n" + ."\n" + .'Subtypes of AI-assisted intelligent erasure templates:'."\n" + ."\n" + .'1. 1 (VideoDelogo): logo erasure template.'."\n" + .'2. 2 (VideoDetext): subtitle erasure template.'."\n", + ], + 'SetDefaultCustomTemplate' => [ + 'summary' => 'Sets a custom template as the default template.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'TemplateId', + 'in' => 'query', + 'schema' => [ + 'title' => '模板ID', + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '****d80e4e4044975745c14b****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'Success' => [ + 'title' => '是否成功', + 'description' => 'Indicates whether the request was successful.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => 'SetDefaultCustomTemplate', + ], + 'UpdateCustomTemplate' => [ + 'summary' => 'Updates a custom template.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'TemplateId', + 'in' => 'query', + 'schema' => [ + 'title' => '模板ID', + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '****96e8864746a0b6f3****', + ], + ], + [ + 'name' => 'Name', + 'in' => 'query', + 'schema' => [ + 'title' => '模板名称', + 'description' => 'The template name.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'test-template', + ], + ], + [ + 'name' => 'TemplateConfig', + 'in' => 'query', + 'schema' => [ + 'title' => '模板参数', + 'description' => 'The [template parameters](~~448291~~).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{"param": "sample"}', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'Success' => [ + 'title' => '是否成功', + 'description' => 'Indicates whether the request was successful.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => 'UpdateCustomTemplate', + ], + 'DeleteCustomTemplate' => [ + 'summary' => 'Deletes a custom template.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'TemplateId', + 'in' => 'query', + 'schema' => [ + 'title' => '模板ID', + 'description' => 'The ID of the custom template.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '****96e8864746a0b6f3****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'Success' => [ + 'title' => '是否成功', + 'description' => 'Indicates whether the request was successful.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => 'DeleteCustomTemplate', + ], + 'ListSystemTemplates' => [ + 'summary' => 'Queries a list of system templates.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceHPAMBQ', + ], + ], + 'parameters' => [ + [ + 'name' => 'Type', + 'in' => 'query', + 'schema' => [ + 'title' => '模板类型。逗号分隔', + 'description' => 'The template type. Separate multiple types with commas (,).'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '1,2', + ], + ], + [ + 'name' => 'Subtype', + 'in' => 'query', + 'schema' => [ + 'title' => '模板子类型ID', + 'description' => 'The subtype ID of the template.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'Name', + 'in' => 'query', + 'schema' => [ + 'title' => '模板名称', + 'description' => 'The template name.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'SampleTemplate', + ], + ], + [ + 'name' => 'TemplateId', + 'in' => 'query', + 'schema' => [ + 'title' => '模板ID', + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '****96e8864746a0b6f3****', + ], + ], + [ + 'name' => 'Status', + 'in' => 'query', + 'schema' => [ + 'title' => '模板状态:Normal正常,Invisible不可见,ALL全部', + 'description' => 'The template state. Valid values: Normal, Invisible, and All.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'Normal', + ], + ], + [ + 'name' => 'PageNumber', + 'in' => 'query', + 'schema' => [ + 'title' => '分页数目', + 'description' => 'The page number.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'title' => '分页大小', + 'description' => 'The number of entries per page. Default value: 20 Valid values: 1 to 100.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '20', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'Total' => [ + 'title' => '模板总数', + 'description' => 'The total number of templates.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '20', + ], + 'SystemTemplateList' => [ + 'title' => '模板信息列表', + 'description' => 'The queried templates.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The information about the system template.'."\n", + 'type' => 'object', + 'properties' => [ + 'TemplateId' => [ + 'title' => '模板Id', + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'example' => 'S00000001-000000', + ], + 'TemplateName' => [ + 'title' => '模板名称', + 'description' => 'The template name.'."\n", + 'type' => 'string', + 'example' => 'FLV-COPY', + ], + 'Type' => [ + 'title' => '模板类型ID', + 'description' => 'The type ID of the template.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'TypeName' => [ + 'title' => '模板类型名称', + 'description' => 'The type name of the template.'."\n", + 'type' => 'string', + 'example' => 'TranscodeTemplate', + ], + 'Subtype' => [ + 'title' => '模板子类型ID', + 'description' => 'The subtype ID of the template.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'SubtypeName' => [ + 'title' => '模板子类型名称', + 'description' => 'The subtype name of the template.'."\n", + 'type' => 'string', + 'example' => 'Remux', + ], + 'Status' => [ + 'title' => '模板状态', + 'description' => 'The template state.'."\n", + 'type' => 'string', + 'example' => 'Normal', + ], + 'TemplateConfig' => [ + 'title' => '模板参数', + 'description' => 'The template parameters.'."\n", + 'type' => 'string', + 'example' => '{"Container":{"Format":"flv"},"Video":{},"Audio":{}}', + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"Total\\": 20,\\n \\"SystemTemplateList\\": [\\n {\\n \\"TemplateId\\": \\"S00000001-000000\\",\\n \\"TemplateName\\": \\"FLV-COPY\\",\\n \\"Type\\": 1,\\n \\"TypeName\\": \\"TranscodeTemplate\\",\\n \\"Subtype\\": 1,\\n \\"SubtypeName\\": \\"Remux\\",\\n \\"Status\\": \\"Normal\\",\\n \\"TemplateConfig\\": \\"{\\\\\\"Container\\\\\\":{\\\\\\"Format\\\\\\":\\\\\\"flv\\\\\\"},\\\\\\"Video\\\\\\":{},\\\\\\"Audio\\\\\\":{}}\\"\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'ListSystemTemplates', + 'description' => 'Template types:'."\n" + ."\n" + .'1. 1: transcoding template.'."\n" + .'2. 2: snapshot template.'."\n" + .'3. 3: animated image template.'."\n" + .'4. 4\\. image watermark template.'."\n" + .'5. 5: text watermark template.'."\n" + .'6. 6: subtitle template.'."\n" + .'7. 7: AI-assisted content moderation template.'."\n" + .'8. 8: AI-assisted intelligent thumbnail template.'."\n" + .'9. 9: AI-assisted intelligent erasure template.'."\n" + ."\n" + .'Subtypes of transcoding templates:'."\n" + ."\n" + .'1. 1 (Normal): regular template.'."\n" + .'2. 2 (AudioTranscode): audio transcoding template.'."\n" + .'3. 3 (Remux): container format conversion template.'."\n" + .'4. 4 (NarrowBandV1): Narrowband HD 1.0 template.'."\n" + .'5. 5 (NarrowBandV2): Narrowband HD 2.0 template.'."\n" + ."\n" + .'Subtypes of snapshot templates:'."\n" + ."\n" + .'1. 1 (Normal): regular template.'."\n" + .'2. 2 (Sprite): sprite template.'."\n" + .'3. 3 (WebVtt): WebVTT template.'."\n" + ."\n" + .'Subtypes of AI-assisted content moderation templates:'."\n" + ."\n" + .'1. 1 (Video): video moderation template.'."\n" + .'2. 2 (Audio): audio moderation template.'."\n" + .'3. 3 (Image): image moderation template.'."\n" + ."\n" + .'Subtypes of AI-assisted intelligent erasure templates:'."\n" + ."\n" + .'1. 1 (VideoDelogo): logo erasure template.'."\n" + .'2. 2 (VideoDetext): subtitle erasure template.'."\n", + ], + 'ListCustomTemplates' => [ + 'summary' => 'Queries a list of custom templates.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceEO4QPO', + ], + ], + 'parameters' => [ + [ + 'name' => 'Type', + 'in' => 'query', + 'schema' => [ + 'title' => '模板类型。逗号分隔', + 'description' => 'The template type. Valid values:'."\n" + ."\n" + .'* 1: transcoding template.'."\n" + .'* 2: snapshot template.'."\n" + .'* 3: animated image template.'."\n" + .'* 4\\. image watermark template.'."\n" + .'* 5: text watermark template.'."\n" + .'* 6: subtitle template.'."\n" + .'* 7: AI-assisted content moderation template.'."\n" + .'* 8: AI-assisted intelligent thumbnail template.'."\n" + .'* 9: AI-assisted intelligent erasure template.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '1', + ], + ], + [ + 'name' => 'Subtype', + 'in' => 'query', + 'schema' => [ + 'title' => '模板子类型ID', + 'description' => 'The subtype ID of the template.'."\n" + ."\n" + .'* Valid values for transcoding templates:'."\n" + ."\n" + .' * 1 (Normal): regular template.'."\n" + .' * 2 (AudioTranscode): audio transcoding template.'."\n" + .' * 3 (Remux): container format conversion template.'."\n" + .' * 4 (NarrowBandV1): Narrowband HD 1.0 template.'."\n" + .' * 5 (NarrowBandV2): Narrowband HD 2.0 template.'."\n" + ."\n" + .'* Valid values for snapshot templates:'."\n" + ."\n" + .' * 1 (Normal): regular template.'."\n" + .' * 2 (Sprite): sprite template.'."\n" + .' * 3 (WebVtt): WebVTT template.'."\n" + ."\n" + .'* Valid values for AI-assisted content moderation templates:'."\n" + ."\n" + .' * 1 (Video): video moderation template.'."\n" + .' * 2 (Audio): audio moderation template.'."\n" + .' * 3 (Image): image moderation template.'."\n" + ."\n" + .'* Valid values for AI-assisted intelligent erasure templates:'."\n" + ."\n" + .' * 1 (VideoDelogo): logo erasure template.'."\n" + .' * 2 (VideoDetext): subtitle erasure template.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2', + ], + ], + [ + 'name' => 'Name', + 'in' => 'query', + 'schema' => [ + 'title' => '模板名称', + 'description' => 'The template name.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'test-template', + ], + ], + [ + 'name' => 'TemplateId', + 'in' => 'query', + 'schema' => [ + 'title' => '模板ID', + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '****96e8864746a0b6f3****', + ], + ], + [ + 'name' => 'PageNumber', + 'in' => 'query', + 'schema' => [ + 'title' => '分页数目', + 'description' => 'The page number.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'title' => '分页大小', + 'description' => 'The number of entries per page.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '20', + ], + ], + [ + 'name' => 'OrderBy', + 'in' => 'query', + 'schema' => [ + 'title' => '排序顺序:CreateTimeDesc 和 CreateTimeAsc', + 'description' => 'The order in which the entries are sorted. Valid values:'."\n" + ."\n" + .'* CreateTimeDesc: sorted by creation time in descending order.'."\n" + .'* CreateTimeAsc: sorted by creation time in ascending order.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [], + 'example' => 'CreateTimeDesc', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'Total' => [ + 'title' => '模板总数', + 'description' => 'The total number of templates.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '20', + ], + 'CustomTemplateList' => [ + 'title' => '模板信息列表', + 'description' => 'The queried templates.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The information about the custom template.'."\n", + 'type' => 'object', + 'properties' => [ + 'TemplateId' => [ + 'title' => '模板Id', + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + 'TemplateName' => [ + 'title' => '模板名称', + 'description' => 'The template name.'."\n", + 'type' => 'string', + 'example' => 'test-template', + ], + 'Type' => [ + 'title' => '模板类型ID', + 'description' => 'The type ID of the template.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'TypeName' => [ + 'title' => '模板类型名称', + 'description' => 'The type name of the template.'."\n", + 'type' => 'string', + 'example' => 'TranscodeTemplate', + ], + 'Subtype' => [ + 'title' => '模板子类型ID', + 'description' => 'The subtype ID of the template.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '2', + ], + 'SubtypeName' => [ + 'title' => '模板子类型名称', + 'description' => 'The subtype name of the template.'."\n", + 'type' => 'string', + 'example' => 'AudioTranscode', + ], + 'Status' => [ + 'title' => '模板状态', + 'description' => 'The template state.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* Normal'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'Normal' => 'Normal', + ], + 'example' => 'Normal', + ], + 'IsDefault' => [ + 'title' => '是否默认模板', + 'description' => 'Indicates whether the template is the default template.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'boolean', + 'enumValueTitles' => [ + 'true' => 'true', + 'false' => 'false', + ], + 'example' => 'true', + ], + 'TemplateConfig' => [ + 'title' => '模板参数', + 'description' => 'The template parameters.'."\n", + 'type' => 'string', + 'example' => '{"Container":{"Format":"mp3"},"Audio":{"Codec":"mp3","Bitrate":"64","Samplerate":"22050","Channels":"2"}}', + ], + 'CreateTime' => [ + 'title' => '模板创建时间', + 'description' => 'The time when the template was created.'."\n", + 'type' => 'string', + 'example' => '2022-07-12T16:17:54Z', + ], + 'ModifiedTime' => [ + 'title' => '模板修改时间', + 'description' => 'The time when the template was last modified.'."\n", + 'type' => 'string', + 'example' => '2022-07-12T16:17:54Z', + ], + 'FrontendHint' => [ + 'type' => 'object', + 'properties' => [ + 'TranscodeTemplateHint' => [ + 'type' => 'object', + 'properties' => [ + 'BitrateControlType' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"Total\\": 20,\\n \\"CustomTemplateList\\": [\\n {\\n \\"TemplateId\\": \\"****20b48fb04483915d4f2cd8ac****\\",\\n \\"TemplateName\\": \\"test-template\\",\\n \\"Type\\": 1,\\n \\"TypeName\\": \\"TranscodeTemplate\\",\\n \\"Subtype\\": 2,\\n \\"SubtypeName\\": \\"AudioTranscode\\",\\n \\"Status\\": \\"Normal\\",\\n \\"IsDefault\\": true,\\n \\"TemplateConfig\\": \\"{\\\\\\"Container\\\\\\":{\\\\\\"Format\\\\\\":\\\\\\"mp3\\\\\\"},\\\\\\"Audio\\\\\\":{\\\\\\"Codec\\\\\\":\\\\\\"mp3\\\\\\",\\\\\\"Bitrate\\\\\\":\\\\\\"64\\\\\\",\\\\\\"Samplerate\\\\\\":\\\\\\"22050\\\\\\",\\\\\\"Channels\\\\\\":\\\\\\"2\\\\\\"}}\\",\\n \\"CreateTime\\": \\"2022-07-12T16:17:54Z\\",\\n \\"ModifiedTime\\": \\"2022-07-12T16:17:54Z\\",\\n \\"FrontendHint\\": {\\n \\"TranscodeTemplateHint\\": {\\n \\"BitrateControlType\\": \\"\\"\\n }\\n }\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'ListCustomTemplates', + ], + 'CreatePipeline' => [ + 'summary' => 'Creates an ApsaraVideo Media Processing (MPS) queue.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'Name', + 'in' => 'query', + 'schema' => [ + 'title' => '管道名称', + 'description' => 'The name of the MPS queue.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'test-pipeline', + ], + ], + [ + 'name' => 'Speed', + 'in' => 'query', + 'schema' => [ + 'title' => '管道类型。', + 'description' => 'The type of the MPS queue. Valid values:'."\n" + ."\n" + .'1. Standard: standard MPS queue.'."\n" + .'2. Boost: MPS queue with transcoding speed boosted.'."\n" + .'3. NarrowBandHDV2: MPS queue that supports Narrowband HD 2.0.'."\n", + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'Boost' => '', + 'Standard' => '', + 'NarrowBandHDV2' => '', + ], + 'example' => 'Standard', + ], + ], + [ + 'name' => 'Priority', + 'in' => 'query', + 'schema' => [ + 'title' => '优先级,1-10,默认6。数值越大,优先级越高', + 'description' => 'The priority. Default value: 6. Valid values: 1 to 10. A greater value specifies a higher priority.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '6', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'Pipeline' => [ + 'title' => '管道信息', + 'description' => 'The information about the MPS queue.'."\n", + 'type' => 'object', + 'properties' => [ + 'PipelineId' => [ + 'title' => '管道Id', + 'description' => 'The ID of the MPS queue.'."\n", + 'type' => 'string', + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + 'Name' => [ + 'title' => '管道名称', + 'description' => 'The name of the MPS queue.'."\n", + 'type' => 'string', + 'example' => 'test-pipeline', + ], + 'Speed' => [ + 'title' => '管道类型', + 'description' => 'The type of the MPS queue.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* Boost: MPS queue with transcoding speed boosted.'."\n" + .'* Standard: standard MPS queue.'."\n" + .'* NarrowBandHDV2: MPS queue that supports Narrowband HD 2.0.'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'Boost' => '', + 'Standard' => '', + 'NarrowBandHDV2' => '', + ], + 'example' => 'Standard', + ], + 'Priority' => [ + 'title' => '管道优先级', + 'description' => 'The priority of the MPS queue.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '6', + ], + 'Status' => [ + 'title' => '管道状态', + 'description' => 'The state of the MPS queue.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* Active'."\n" + .'* Paused'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'Active' => '', + 'Paused' => '', + ], + 'example' => 'Active', + ], + 'CreateTime' => [ + 'title' => '模板创建时间', + 'description' => 'The time when the template was created.'."\n", + 'type' => 'string', + 'example' => '2022-07-12T16:17:54Z', + ], + 'ModifiedTime' => [ + 'title' => '模板修改时间', + 'description' => 'The time when the template was last modified.'."\n", + 'type' => 'string', + 'example' => '2022-07-12T16:17:54Z', + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"Pipeline\\": {\\n \\"PipelineId\\": \\"****20b48fb04483915d4f2cd8ac****\\",\\n \\"Name\\": \\"test-pipeline\\",\\n \\"Speed\\": \\"Standard\\",\\n \\"Priority\\": 6,\\n \\"Status\\": \\"Active\\",\\n \\"CreateTime\\": \\"2022-07-12T16:17:54Z\\",\\n \\"ModifiedTime\\": \\"2022-07-12T16:17:54Z\\"\\n }\\n}","type":"json"}]', + 'title' => 'CreatePipeline', + ], + 'GetPipeline' => [ + 'summary' => 'Queries the information about an ApsaraVideo Media Processing (MPS) queue.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'PipelineId', + 'in' => 'query', + 'schema' => [ + 'title' => '管道ID', + 'description' => 'The ID of the MPS queue.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '****96e8864746a0b6f3****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'Pipeline' => [ + 'title' => '管道信息', + 'description' => 'The information about the MPS queue.'."\n", + 'type' => 'object', + 'properties' => [ + 'PipelineId' => [ + 'title' => '管道Id', + 'description' => 'The ID of the MPS queue.'."\n", + 'type' => 'string', + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + 'Name' => [ + 'title' => '管道名称', + 'description' => 'The name of the MPS queue.'."\n", + 'type' => 'string', + 'example' => 'test-pipeline', + ], + 'Speed' => [ + 'title' => '管道类型', + 'description' => 'The type of the MPS queue.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* Standard: standard MPS queue.'."\n" + .'* Boost: MPS queue with transcoding speed boosted.'."\n" + .'* NarrowBandHDV2: MPS queue that supports Narrowband HD 2.0.'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'Speed' => '', + 'Boost' => '', + 'NarrowBandHDV2' => '', + ], + 'example' => 'Standard', + ], + 'Priority' => [ + 'title' => '管道优先级', + 'description' => 'The priority of the MPS queue. Valid values: 1 to 10.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '6', + ], + 'Status' => [ + 'title' => '管道状态', + 'description' => 'The state of the MPS queue.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* Active'."\n" + .'* Paused'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'Active' => '', + 'Paused' => '', + ], + 'example' => 'Active', + ], + 'CreateTime' => [ + 'title' => '模板创建时间', + 'description' => 'The time when the template was created.'."\n", + 'type' => 'string', + 'example' => '2022-07-12T16:17:54Z', + ], + 'ModifiedTime' => [ + 'title' => '模板修改时间', + 'description' => 'The time when the template was last modified.'."\n", + 'type' => 'string', + 'example' => '2022-07-12T16:17:54Z', + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"Pipeline\\": {\\n \\"PipelineId\\": \\"****20b48fb04483915d4f2cd8ac****\\",\\n \\"Name\\": \\"test-pipeline\\",\\n \\"Speed\\": \\"Standard\\",\\n \\"Priority\\": 6,\\n \\"Status\\": \\"Active\\",\\n \\"CreateTime\\": \\"2022-07-12T16:17:54Z\\",\\n \\"ModifiedTime\\": \\"2022-07-12T16:17:54Z\\"\\n }\\n}","type":"json"}]', + 'title' => 'GetPipeline', + ], + 'UpdatePipeline' => [ + 'summary' => 'Updates the information about an ApsaraVideo Media Processing (MPS) queue.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'PipelineId', + 'in' => 'query', + 'schema' => [ + 'title' => '管道ID', + 'description' => 'The ID of the MPS queue.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '****d80e4e4044975745c14b****', + ], + ], + [ + 'name' => 'Name', + 'in' => 'query', + 'schema' => [ + 'title' => '管道名称', + 'description' => 'The name of the MPS queue.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'test-pipeline', + ], + ], + [ + 'name' => 'Status', + 'in' => 'query', + 'schema' => [ + 'title' => '管道状态。', + 'description' => 'The state of the MPS queue.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* Active'."\n" + .'* Paused'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'Active' => '', + 'Paused' => '', + ], + 'example' => 'Paused', + ], + ], + [ + 'name' => 'Priority', + 'in' => 'query', + 'schema' => [ + 'title' => '优先级', + 'description' => 'The priority of the MPS queue. Valid values: 1 to 10.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '6', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'Success' => [ + 'title' => '是否成功', + 'description' => 'Indicates whether the request was successful.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => 'UpdatePipeline', + ], + 'DeletePipeline' => [ + 'summary' => 'Deletes an ApsaraVideo Media Processing (MPS) queue.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'PipelineId', + 'in' => 'query', + 'schema' => [ + 'title' => '管道ID', + 'description' => 'The ID of the MPS queue.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '****96e8864746a0b6f3****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'Success' => [ + 'title' => '是否成功', + 'description' => 'Indicates whether the request was successful.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => 'DeletePipeline', + ], + 'ListPipelines' => [ + 'summary' => 'Queries a list of ApsaraVideo Media Processing (MPS) queues.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'Speed', + 'in' => 'query', + 'schema' => [ + 'title' => '管道类型。', + 'description' => 'The type of the MPS queue.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* Boost: MPS queue with transcoding speed boosted.'."\n" + .'* Standard: standard MPS queue.'."\n" + .'* NarrowBandHDV2: MPS queue that supports Narrowband HD 2.0.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'Boost' => '', + 'Standard' => '', + 'NarrowBandHDV2' => '', + ], + 'example' => 'Standard', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'PipelineList' => [ + 'description' => 'The queried MPS queues.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The information about the MPS queue.'."\n", + 'type' => 'object', + 'properties' => [ + 'PipelineId' => [ + 'title' => '管道Id', + 'description' => 'The ID of the MPS queue.'."\n", + 'type' => 'string', + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + 'Name' => [ + 'title' => '管道名称', + 'description' => 'The name of the MPS queue.'."\n", + 'type' => 'string', + 'example' => 'test-pipeline', + ], + 'Speed' => [ + 'title' => '管道类型', + 'description' => 'The type of the MPS queue.'."\n", + 'type' => 'string', + 'example' => 'Standard', + ], + 'Priority' => [ + 'title' => '管道优先级', + 'description' => 'The priority of the MPS queue.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '6', + ], + 'Status' => [ + 'title' => '管道状态', + 'description' => 'The state of the MPS queue.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* Active'."\n" + .'* Paused'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'Active' => '', + 'Paused' => '', + ], + 'example' => 'Active', + ], + 'CreateTime' => [ + 'title' => '模板创建时间', + 'description' => 'The time when the template was created.'."\n", + 'type' => 'string', + 'example' => '2022-07-12T16:17:54Z', + ], + 'ModifiedTime' => [ + 'title' => '模板修改时间', + 'description' => 'The time when the template was last modified.'."\n", + 'type' => 'string', + 'example' => '2022-07-12T16:17:54Z', + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"PipelineList\\": [\\n {\\n \\"PipelineId\\": \\"****20b48fb04483915d4f2cd8ac****\\",\\n \\"Name\\": \\"test-pipeline\\",\\n \\"Speed\\": \\"Standard\\",\\n \\"Priority\\": 6,\\n \\"Status\\": \\"Active\\",\\n \\"CreateTime\\": \\"2022-07-12T16:17:54Z\\",\\n \\"ModifiedTime\\": \\"2022-07-12T16:17:54Z\\"\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'ListPipelines', + ], + 'SubmitTranscodeJob' => [ + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'Name', + 'in' => 'query', + 'schema' => [ + 'title' => '任务名字。', + 'description' => 'The job name.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'job-name', + ], + ], + [ + 'name' => 'InputGroup', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'title' => '任务输入组 (目前只支持一个)。', + 'description' => 'The input group of the job. An input of a single file indicates a transcoding job. An input of multiple files indicates an audio and video stream merge job.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The input of the job.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'title' => '媒体对象类型。'."\n" + .'取值: '."\n" + .'- OSS: OSS文件。'."\n" + .'- Media: 媒资 ID。'."\n", + 'description' => 'The type of the media object. Valid values:'."\n" + ."\n" + .'* OSS: an Object Storage Service (OSS) object.'."\n" + .'* Media: a media asset.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'OSS', + ], + 'Media' => [ + 'title' => '媒体值:'."\n" + .' type 为 OSS 时,为 URL, 支持 OSS 协议和 HTTP 协议;'."\n" + .' type 为 Media 时,为媒资 ID。', + 'description' => 'The media object.'."\n" + ."\n" + .'* If Type is set to OSS, set this parameter to the URL of an OSS object. Both the OSS and HTTP protocols are supported.'."\n" + ."\n" + .'> Before you use the OSS bucket in the URL, you must add the bucket on the [Storage Management](~~609918~~) page of the Intelligent Media Services (IMS) console.'."\n" + ."\n" + .'* If Type is set to Media, set this parameter to the ID of a media asset.', + 'type' => 'string', + 'required' => true, + 'example' => 'oss://bucket/path/to/video.mp4', + ], + 'InputUrl' => [ + 'title' => '输入流路径: 仅当 type 为 Media 是才生效,让用户可以选择该媒资下的特定文件作为输入。 - 系统会检查该媒资下是否存在这个 inputUrl。', + 'description' => 'The URL of the input stream.'."\n" + ."\n" + .'* This parameter takes effect only when Type is set to Media. You can select a specific file within the media asset as an input.'."\n" + .'* The system checks whether the input URL exists within the media asset.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'oss://bucket/path/to/video.mp4', + ], + ], + 'required' => true, + ], + 'required' => true, + 'example' => 'job-name', + ], + ], + [ + 'name' => 'OutputGroup', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'title' => '任务输出组。', + 'description' => 'The output group of the job.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The output of the job.'."\n", + 'type' => 'object', + 'properties' => [ + 'Output' => [ + 'title' => '输出媒体配置', + 'description' => 'The output file configuration.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'title' => '媒体对象类型。'."\n" + .'取值: '."\n" + .'- OSS: OSS文件。'."\n" + .'- Media: 媒资 ID。'."\n", + 'description' => 'The type of the media object. Valid values:'."\n" + ."\n" + .'* OSS: an OSS object.'."\n" + .'* Media: a media asset.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'OSS', + ], + 'Media' => [ + 'title' => '媒体值:'."\n" + .' type 为 OSS 时,为 URL, 支持 OSS 协议和 HTTP 协议;'."\n" + .' type 为 Media 时,为媒资 ID。', + 'description' => 'The media object.'."\n" + ."\n" + .'* If Type is set to OSS, set this parameter to the URL of an OSS object. Both the OSS and HTTP protocols are supported.'."\n" + ."\n" + .'> Before you use the OSS bucket in the URL, you must add the bucket on the [Storage Management](~~609918~~) page of the IMS console.'."\n" + ."\n" + .'* If Type is set to Media, set this parameter to the ID of a media asset.', + 'type' => 'string', + 'required' => true, + 'example' => 'oss://bucket/path/to/video.mp4', + ], + 'OutputUrl' => [ + 'title' => '输入流路径: 仅当 Type 为 Media时才生效,让用户可以选择该媒资下特定文件作为输出。 支持的占位符: - {MediaId}:媒资ID。 - {JobId}:转码子任务ID。 - {ExtName}:文件后缀,取转码模板的输出格式。 - {DestMd5}:转码输出文件的MD5值。 说明: 1、该参数必须包含{MediaId} 和 {JobId} 两个占位符。 2、输出的Bucket与MediaId所在Bucket相同。', + 'description' => 'The URL of the output stream.\\'."\n" + .'This parameter takes effect only when Type is set to Media. You can select a specific file within the media asset as an output.\\'."\n" + .'Supported placeholders:'."\n" + ."\n" + .'* {MediaId}: the ID of the media asset.'."\n" + .'* {JobId}: the ID of the transcoding subjob.'."\n" + .'* {MediaBucket}: the bucket to which the media asset belongs.'."\n" + .'* {ExtName}: the file suffix, which uses the output format of the transcoding template.'."\n" + .'* {DestMd5}: the MD5 value of the transcoded output file.\\'."\n" + .' Notes:'."\n" + ."\n" + .'1. This parameter must contain the {MediaId} and {JobId} placeholders.'."\n" + .'2. The output bucket is the same as the bucket to which the media asset belongs.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'oss://bucket/path/to/{MediaId}/{JobId}.mp4', + ], + ], + 'required' => true, + ], + 'ProcessConfig' => [ + 'title' => '任务处理配置', + 'description' => 'The job processing configuration.'."\n", + 'type' => 'object', + 'properties' => [ + 'Transcode' => [ + 'title' => '转码配置', + 'description' => 'The transcoding configuration.'."\n", + 'type' => 'object', + 'properties' => [ + 'TemplateId' => [ + 'title' => '模板 ID。', + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '9547c6ad97cb4f2aaa29683ebd18d410', + ], + 'OverwriteParams' => [ + 'title' => '覆盖参数, 若填写会覆盖模板对应参数', + 'description' => 'The parameters that are used to overwrite the corresponding parameters of the template.'."\n", + 'type' => 'object', + 'properties' => [ + 'Video' => [ + 'title' => 'video 设置', + 'description' => 'The video settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'Codec' => [ + 'title' => '编码格式', + 'description' => 'The encoding format.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'H.264', + ], + 'Profile' => [ + 'title' => '编码级别。'."\n" + .' 支持baseline、main、high。'."\n" + .' baseline:针对移动设备。'."\n" + .' main:针对标准分辨率设备。'."\n" + .' high:针对高分辨率设备。'."\n" + .' 默认值:high。', + 'description' => 'The encoding profile. Valid values: baseline, main, and high.'."\n" + ."\n" + .'* baseline: applicable to mobile devices.'."\n" + .'* main: applicable to standard-definition devices.'."\n" + .'* high: applicable to high-definition devices.'."\n" + ."\n" + .'Default value: high.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'Main', + ], + 'Bitrate' => [ + 'title' => '视频平均码率。'."\n" + .' 取值范围:[10,50000]。'."\n" + .' 单位:Kbps。', + 'description' => 'The average video bitrate. Valid values: \\[10,50000]. Unit: Kbit/s.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '3000', + ], + 'Crf' => [ + 'title' => '码率-质量控制因子。'."\n" + .' 取值范围:[0,51]。'."\n" + .' 默认值:编码格式为H264,默认值为23。编码格式为H265,默认值为26。'."\n" + .' 如果设置了Crf,则Bitrate的设置失效。', + 'description' => 'The constant rate factor (CRF). Valid values: \\[0,51]. Default value: 23 if the encoding format is H.264, or 26 if the encoding format is H.265.'."\n" + ."\n" + .'> If this parameter is specified, the setting of the bitrate becomes invalid.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '23', + ], + 'Width' => [ + 'title' => '宽。'."\n" + .' 取值范围:[128,4096]。'."\n" + .' 单位:px。'."\n" + .' 默认值:视频原始宽度。', + 'description' => 'The width of the video. Valid values: \\[128,4096]. Unit: pixels. Default value: the original width of the video.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '1920', + ], + 'Height' => [ + 'title' => '高。'."\n" + .' 取值范围:[128,4096]。'."\n" + .' 单位:px。'."\n" + .' 默认值:视频原始高度。', + 'description' => 'The height of the video. Valid values: \\[128,4096]. Unit: pixels. Default value: the original height of the video.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '1080', + ], + 'Fps' => [ + 'title' => '帧率。'."\n" + .' 取值范围:(0,60]。'."\n" + .' 当输入文件帧率超过60时取60。'."\n" + .' 默认值:取输入文件帧率', + 'description' => 'The frame rate. Valid values:(0,60]. Default value: the frame rate of the input file.'."\n" + ."\n" + .'> The value is 60 if the frame rate of the input file exceeds 60.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '25', + ], + 'Gop' => [ + 'title' => '关键帧间最大帧数。'."\n" + .' 取值范围:[1,1080000]。'."\n" + .' 默认值:250。', + 'description' => 'The maximum number of frames between keyframes. Valid values: \\[1,1080000]. Default value: 250.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '250', + ], + 'Preset' => [ + 'title' => '视频算法器预置。只有H264支持该参数。'."\n" + .'支持veryfast、fast、medium、slow、slower。'."\n" + .'默认值:medium。', + 'description' => 'The preset video algorithm. This parameter takes effect only if the encoding format is H.264. Valid values: veryfast, fast, medium, slow, and slower. Default value: medium.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'medium', + ], + 'ScanMode' => [ + 'title' => '扫描模式。'."\n" + .'支持interlaced、progressive。', + 'description' => 'The scan mode. Valid values: interlaced and progressive.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'progressive', + ], + 'PixFmt' => [ + 'title' => '视频颜色格式。'."\n" + .' 范围:yuv420p,yuvj420p等标准颜色格式。', + 'description' => 'The pixel format of the video. Valid values: standard pixel formats such as yuv420p and yuvj420p.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'yuv420p', + ], + 'Remove' => [ + 'title' => '是否去掉视频', + 'description' => 'Specifies whether to remove the video.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'false', + ], + 'Crop' => [ + 'title' => '视频画面裁切'."\n" + .' 支持2种方式。'."\n" + .' 自动检测黑边并裁切,设置为“border”'."\n" + .' 自定义裁切,参数格式:width:height:left:top。'."\n" + .' 示例:1280:800:0:140', + 'description' => 'The method of video cropping. Valid values:'."\n" + ."\n" + .'* border: automatically detects and removes black bars.'."\n" + .'* A value in the width:height:left:top format: crops the videos based on the custom settings. Example: 1280:800:0:140.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '1280:800:0:140', + ], + 'Pad' => [ + 'title' => '视频贴黑边'."\n" + .' 参数格式:width:height:left:top。'."\n" + .' 示例:1280:800:0:140', + 'description' => 'The black bars added to the video. Format: width:height:left:top. Example: 1280:800:0:140.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '1280:800:0:140', + ], + 'LongShortMode' => [ + 'title' => '是否开启横竖屏自适应(即:长短边模式)', + 'description' => 'Specifies whether to enable the auto-rotate screen feature.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'false', + ], + 'Bufsize' => [ + 'title' => '缓冲区大小'."\n" + .' 值范围:[1000,128000]'."\n" + .' 默认值:6000'."\n" + .' 单位:Kb', + 'description' => 'The buffer size. Valid values: \\[1000,128000]. Default value: 6000. Unit: KB.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '6000', + ], + 'Maxrate' => [ + 'title' => '视频码率峰值'."\n" + .' 值范围[10,50000],单位Kbps。', + 'description' => 'The maximum bitrate of the video. Valid values: \\[10,50000]. Unit: Kbit/s.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '9000', + ], + 'AbrMax' => [ + 'title' => 'abr 最大码率(只有窄高1有效)'."\n" + .'值范围[10,50000],单位Kbps。', + 'description' => 'The maximum adaptive bitrate (ABR). This parameter takes effect only for Narrowband HD 1.0. Valid values: \\[10,50000]. Unit: Kbit/s.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '6000', + ], + ], + 'required' => false, + ], + 'Audio' => [ + 'title' => 'audio 设置', + 'description' => 'The audio settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'Codec' => [ + 'title' => '音频编解码格式,AAC、MP3、VORBIS、FLAC。'."\n" + .' 默认值:AAC', + 'description' => 'The audio codec. Valid values: AAC, MP3, VORBIS, and FLAC. Default value: AAC.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'AAC', + ], + 'Profile' => [ + 'title' => '音频编码预置。'."\n" + .' 当Codec为 AAC时,范围aac_low、aac_he、aac_he_v2、aac_ld、aac_eld。', + 'description' => 'The audio codec profile. If the Codec parameter is set to AAC, the valid values are aac_low, aac_he, aac_he_v2, aac_ld, and aac_eld.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'aac_low', + ], + 'Samplerate' => [ + 'title' => '采样率。'."\n" + .' 默认值:44100'."\n" + .' 支持22050、32000、44100、48000、96000,'."\n" + .' 单位:Hz', + 'description' => 'The sampling rate. Valid values: 22050, 32000, 44100, 48000, and 96000. Default value: 44100. Unit: Hz.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '44100', + ], + 'Bitrate' => [ + 'title' => '输出文件的音频码率。'."\n" + .' 值范围:[8,1000]'."\n" + .' 单位:Kbps'."\n" + .' 默认值:128', + 'description' => 'The audio bitrate of the output file. Valid values: \\[8,1000]. Unit: Kbit/s. Default value: 128.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '128', + ], + 'Channels' => [ + 'title' => '声道数。'."\n" + .' 默认值:2', + 'description' => 'The number of sound channels. Default value: 2.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2', + ], + 'Remove' => [ + 'title' => '是否删除音频流。', + 'description' => 'Specifies whether to delete the audio stream.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'false', + ], + 'Volume' => [ + 'title' => '音量控制', + 'description' => 'The volume configurations.'."\n", + 'type' => 'object', + 'properties' => [ + 'Method' => [ + 'title' => '音量调整方式', + 'description' => 'The volume adjustment method. Valid values:'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'auto', + ], + 'IntegratedLoudnessTarget' => [ + 'title' => '目标音量', + 'description' => 'The output volume.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '-6', + ], + 'TruePeak' => [ + 'title' => '最大峰值', + 'description' => 'The peak volume.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '-1', + ], + 'LoudnessRangeTarget' => [ + 'title' => '音量范围', + 'description' => 'The volume range.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '8', + ], + ], + 'required' => false, + ], + ], + 'required' => false, + ], + 'Container' => [ + 'title' => '封装格式设置', + 'description' => 'The encapsulation format settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'Format' => [ + 'title' => '容器格式', + 'description' => 'The container format.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'mp4', + ], + ], + 'required' => false, + ], + 'MuxConfig' => [ + 'title' => '封装设置', + 'description' => 'The encapsulation settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'Segment' => [ + 'title' => '切片设置', + 'description' => 'The segment settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'Duration' => [ + 'title' => '切片时长', + 'description' => 'The segment length.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '10', + ], + 'ForceSegTime' => [ + 'title' => '强制切片时间点', + 'description' => 'The forced segmentation point in time.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2,3', + ], + ], + 'required' => false, + ], + ], + 'required' => false, + ], + 'TransConfig' => [ + 'description' => 'The conditional transcoding configurations.'."\n", + 'type' => 'object', + 'properties' => [ + 'TransMode' => [ + 'description' => 'The video transcoding mode. Valid values:'."\n" + ."\n" + .'* onepass: You can set this parameter to onepass if the Bitrate parameter is set to ABR. The encoding speed of this mode is faster than that of the twopass mode.'."\n" + .'* twopass: You can set this parameter to twopass if the Bitrate parameter is set to VBR. The encoding speed of this mode is slower than that of the onepass mode.'."\n" + .'* CBR: the constant bitrate mode.'."\n" + ."\n" + .'Default value: onepass.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'onepass', + ], + 'IsCheckReso' => [ + 'description' => 'Specifies whether to check the video resolution. You can specify only one of the IsCheckReso and IsCheckResoFail parameters. The priority of the IsCheckResoFail parameter is higher. Valid values:'."\n" + ."\n" + .'* true: checks the video resolution. If the width or height of the input video is less than that of the output video, the resolution of the input video is used for transcoding.'."\n" + .'* false: does not check the video resolution.'."\n" + ."\n" + .'Default value: false.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'true', + ], + 'IsCheckResoFail' => [ + 'description' => 'Specifies whether to check the video resolution. You can specify only one of the IsCheckReso and IsCheckResoFail parameters. The priority of the IsCheckResoFail parameter is higher. Valid values:'."\n" + ."\n" + .'* true: checks the video resolution. If the width or height of the input video is less than that of the output video, the transcoding job fails.'."\n" + .'* false: does not check the video resolution.'."\n" + ."\n" + .'Default value: false.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'true', + ], + 'IsCheckVideoBitrate' => [ + 'description' => 'Specifies whether to check the video bitrate. You can specify only one of the IsCheckVideoBitrate and IsCheckVideoBitrateFail parameters. The priority of the IsCheckVideoBitrateFail parameter is higher. Valid values:'."\n" + ."\n" + .'* true: checks the video resolution. If the bitrate of the input video is less than that of the output video, the bitrate of the input video is used for transcoding.'."\n" + .'* false: does not check the video resolution.'."\n" + ."\n" + .'Default value: false.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'true', + ], + 'IsCheckVideoBitrateFail' => [ + 'description' => 'Specifies whether to check the video bitrate. You can specify only one of the IsCheckVideoBitrate and IsCheckVideoBitrateFail parameters. The priority of the IsCheckVideoBitrateFail parameter is higher. Valid values:'."\n" + ."\n" + .'* true: checks the video resolution. If the bitrate of the input video is less than that of the output video, the transcoding job fails.'."\n" + .'* false: does not check the video resolution.'."\n" + ."\n" + .'Default value: false.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'true', + ], + 'IsCheckAudioBitrate' => [ + 'description' => 'Specifies whether to check the audio bitrate. You can specify only one of the IsCheckAudioBitrate and IsCheckAudioBitrateFail parameters. The priority of the IsCheckAudioBitrateFail parameter is higher. Valid values:'."\n" + ."\n" + .'* true: checks the video resolution. If the bitrate of the input audio is less than that of the output audio, the bitrate of the input audio is used for transcoding.'."\n" + .'* false: does not check the video resolution.'."\n" + ."\n" + .'Default value:'."\n" + ."\n" + .'* If this parameter is not specified and the codec of the output audio is different from that of the input audio, the default value is false.'."\n" + .'* If this parameter is not specified and the codec of the output audio is the same as that of the input audio, the default value is true.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'true', + ], + 'IsCheckAudioBitrateFail' => [ + 'description' => 'Specifies whether to check the audio bitrate. You can specify only one of the IsCheckAudioBitrate and IsCheckAudioBitrateFail parameters. The priority of the IsCheckAudioBitrateFail parameter is higher. Valid values:'."\n" + ."\n" + .'* true: checks the video resolution. If the bitrate of the input audio is less than that of the output audio, the transcoding job fails.'."\n" + .'* false: does not check the video resolution.'."\n" + ."\n" + .'Default value: false.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'true', + ], + 'AdjDarMethod' => [ + 'description' => 'The method that is used to adjust the resolution. This parameter takes effect only if both the Width and Height parameters are specified. You can use this parameter together with the LongShortMode parameter.'."\n" + ."\n" + .'Valid values: rescale, crop, pad, and none.'."\n" + ."\n" + .'Default value: none.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'none', + ], + ], + 'required' => false, + ], + ], + 'required' => false, + ], + ], + 'required' => true, + ], + 'ImageWatermarks' => [ + 'title' => '图片水印配置', + 'description' => 'The watermark configuration of an image.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The watermark configuration of an image.'."\n", + 'type' => 'object', + 'properties' => [ + 'TemplateId' => [ + 'title' => '模板 ID。', + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '9547c6ad97cb4f2aaa29683ebd18d410', + ], + 'OverwriteParams' => [ + 'title' => '覆盖参数, 若填写会覆盖模板对应参数', + 'description' => 'The parameters that are used to overwrite the corresponding parameters of the template.'."\n", + 'type' => 'object', + 'properties' => [ + 'Width' => [ + 'title' => '输出视频上水印图片宽。'."\n" + .'值有两种形式:'."\n" + ."\n" + .'- 整数型代水印图片宽的像素值。'."\n" + .' - 范围:[8,4096]'."\n" + .' - 单位:px'."\n" + .'- 小数型代表相对输出视频分辨率宽的比率。'."\n" + .' - 范围:(0,1)'."\n" + .' - 支持4位小数,如0.9999,超出部分系统自动丢弃。', + 'description' => 'The width of the watermark in the output video. The following value types are supported:'."\n" + ."\n" + .'* Integer: the pixel value of the watermark width.'."\n" + ."\n" + .' * Valid values: \\[8,4096].'."\n" + .' * Unit: pixels.'."\n" + ."\n" + .'* Decimal: the ratio of the watermark width to the width of the output video.'."\n" + ."\n" + .' * Valid values: (0,1).'."\n" + .' * The decimal number can be accurate to four decimal places, such as 0.9999. Excessive digits are automatically discarded.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '32', + ], + 'Height' => [ + 'title' => '输出视频上水印图片高。'."\n" + .'值有两种形式:'."\n" + ."\n" + .'- 整数型代水印图片高的像素值。'."\n" + .' - 范围:[8,4096]'."\n" + .' - 单位:px'."\n" + .'- 小数型代表相对输出视频分辨率高的比率。'."\n" + .' - 范围:(0,1)'."\n" + .' - 支持4位小数,如0.9999,超出部分系统自动丢弃。', + 'description' => 'The height of the watermark image in the output video. The following value types are supported:'."\n" + ."\n" + .'* Integer: the pixel value of the watermark height.'."\n" + ."\n" + .' * Valid values: \\[8,4096].'."\n" + .' * Unit: pixels.'."\n" + ."\n" + .'* Decimal: the ratio of the watermark height to the height of the output video.'."\n" + ."\n" + .' * Valid values: (0,1).'."\n" + .' * The decimal number can be accurate to four decimal places, such as 0.9999. Excessive digits are automatically discarded.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '32', + ], + 'Dx' => [ + 'title' => '水印图片相对输出视频的水平偏移量。'."\n" + .'默认值:0'."\n" + ."\n" + .'值有两种形式:'."\n" + .'- 整数型代表偏移像素。'."\n" + .' - 范围:[8,4096]'."\n" + .' - 单位:px'."\n" + .'- 小数型代表水平偏移量与输出分辨率宽的比率。'."\n" + .' - 范围:(0,1)'."\n" + .' - 支持4位小数,如0.9999,超出部分系统自动丢弃', + 'description' => 'The horizontal offset of the watermark relative to the output video. Default value: 0.'."\n" + ."\n" + .'The following value types are supported:'."\n" + ."\n" + .'* Integer: the pixel value of the horizontal offset.'."\n" + ."\n" + .' * Valid values: \\[8,4096].'."\n" + .' * Unit: pixels.'."\n" + ."\n" + .'* Decimal: the ratio of the horizontal offset to the width of the output video.'."\n" + ."\n" + .' * Valid values: (0,1).'."\n" + .' * The decimal number can be accurate to four decimal places, such as 0.9999. Excessive digits are automatically discarded.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '10', + ], + 'Dy' => [ + 'title' => '水印图片相对输出视频的垂直偏移量。'."\n" + .'默认值:0'."\n" + ."\n" + .'值有两种形式:'."\n" + .'- 整数型代表偏移像素。'."\n" + .' - 范围[8,4096]'."\n" + .' - 单位:px'."\n" + .'- 小数型代表垂直偏移量与输出分辨率高的比率。'."\n" + .' - 范围:(0,1)'."\n" + .' - 支持4位小数,如0.9999,超出部分系统自动丢弃', + 'description' => 'The vertical offset of the watermark relative to the output video. Default value: 0.'."\n" + ."\n" + .'The following value types are supported:'."\n" + ."\n" + .'* Integer: the pixel value of the horizontal offset.'."\n" + ."\n" + .' * Valid values: \\[8,4096].'."\n" + .' * Unit: pixels.'."\n" + ."\n" + .'* Decimal: the ratio of the vertical offset to the height of the output video.'."\n" + ."\n" + .' * Valid values: (0,1).'."\n" + .' * The decimal number can be accurate to four decimal places, such as 0.9999. Excessive digits are automatically discarded.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '10', + ], + 'ReferPos' => [ + 'title' => '水印的位置。'."\n" + .'- 可取值:TopRight(右上)、TopLeft(左上)、BottomRight(右下)、BottomLeft(左下)'."\n" + .'- 默认值:TopRight', + 'description' => 'The position of the watermark.'."\n" + ."\n" + .'* Valid values: TopRight, TopLeft, BottomRight, and BottomLeft.'."\n" + .'* Default value: TopRight.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'TopLeft', + ], + 'Timeline' => [ + 'title' => '动态水印,显示时间设置。', + 'description' => 'The time settings of the dynamic watermark.'."\n", + 'type' => 'object', + 'properties' => [ + 'Start' => [ + 'title' => '水印开始出现时间。'."\n" + .'- 单位:秒'."\n" + .'- 取值范围:数字'."\n" + .'- 默认值:0', + 'description' => 'The beginning of the time range in which the watermark is displayed.'."\n" + ."\n" + .'* Unit: seconds.'."\n" + .'* Value values: integers.'."\n" + .'* Default value: 0.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '00:00:05', + ], + 'Duration' => [ + 'title' => '水印持续时间。'."\n" + .'- 取值范围:[数字,ToEND]'."\n" + .'- 默认值:ToEND', + 'description' => 'The time range in which the watermark is displayed.'."\n" + ."\n" + .'* Valid values: integers and ToEND.'."\n" + .'* Default value: ToEND.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'ToEND', + ], + ], + 'required' => false, + ], + 'File' => [ + 'title' => '水印图片文件。', + 'description' => 'The watermark image file.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'title' => '媒体对象类型。'."\n" + .'取值: '."\n" + .'- OSS: OSS文件。'."\n" + .'- Media: 媒资 ID。'."\n", + 'description' => 'The type of the media object. Valid values:'."\n" + ."\n" + .'* OSS: an OSS object.'."\n" + .'* Media: a media asset.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'OSS', + ], + 'Media' => [ + 'title' => '媒体值:'."\n" + .' type 为 OSS 时,为 URL, 支持 OSS 协议和 HTTP 协议;'."\n" + .' type 为 Media 时,为媒资 ID。', + 'description' => 'The media object.'."\n" + ."\n" + .'* If Type is set to OSS, set this parameter to the URL of an OSS object. Both the OSS and HTTP protocols are supported.'."\n" + .'* If Type is set to Media, set this parameter to the ID of a media asset.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'oss://bucket/path/to/video.mp4', + ], + ], + 'required' => false, + ], + ], + 'required' => false, + ], + ], + 'required' => false, + ], + 'required' => false, + ], + 'TextWatermarks' => [ + 'title' => '文字水印配置', + 'description' => 'The configurations of the text watermark.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The configurations of the text watermark.'."\n", + 'type' => 'object', + 'properties' => [ + 'TemplateId' => [ + 'title' => '模板 ID。', + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '9547c6ad97cb4f2aaa29683ebd18d410', + ], + 'OverwriteParams' => [ + 'title' => '覆盖参数, 若填写会覆盖模板对应参数', + 'description' => 'The parameters that are used to overwrite the corresponding parameters of the template.'."\n", + 'type' => 'object', + 'properties' => [ + 'Content' => [ + 'title' => '水印文本,不需要 base64 encode,字符串需要 utf-8 编码。', + 'description' => 'The watermark text. Base64 encoding is not required. The string must be encoded in UTF-8.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '测试水印', + ], + 'FontName' => [ + 'title' => '字体。默认:SimSun。', + 'description' => 'The font of the text. Default value: SimSun.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'SimSun', + ], + 'FontColor' => [ + 'title' => '颜色。', + 'description' => 'The color of the text.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '#006400', + ], + 'FontAlpha' => [ + 'title' => '字体透明度。'."\n" + .'- 范围:(0, 1]'."\n" + .'- 默认:1.0', + 'description' => 'The transparency of the text.'."\n" + ."\n" + .'* Valid values: (0,1].'."\n" + .'* Default value: 1.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '1.0', + ], + 'Top' => [ + 'title' => '文本上边距。'."\n" + .'- 默认:0'."\n" + .'- 范围:[0,4096]'."\n", + 'description' => 'The top margin of the text.'."\n" + ."\n" + .'* Default value: 0.'."\n" + .'* Valid values: \\[0,4096].'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '10', + ], + 'Left' => [ + 'title' => '文本左边距。'."\n" + .'- 默认:0'."\n" + .'- 范围:[0,4096]', + 'description' => 'The left margin of the text watermark.'."\n" + ."\n" + .'* Default value: 0.'."\n" + .'* Valid values: \\[0,4096].'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '10', + ], + 'FontSize' => [ + 'title' => '字体大小。'."\n" + .'- 默认值:16'."\n" + .'- 范围:(4, 120)', + 'description' => 'The size of the text.'."\n" + ."\n" + .'* Default value: 16.'."\n" + .'* Valid values: (4,120).'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '16', + ], + 'BorderWidth' => [ + 'title' => '描边宽度。'."\n" + .'- 默认:0'."\n" + .'- 范围:(0,4096]', + 'description' => 'The outline width of the text watermark.'."\n" + ."\n" + .'* Default value: 0.'."\n" + .'* Valid values: (0,4096].'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '0', + ], + 'BorderColor' => [ + 'title' => '描边颜色。'."\n" + .'默认:Black'."\n" + .'更多取值请参见BorderColor。', + 'description' => 'The outline color of the text watermark. Default value: black. For more information, see BorderColor.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '#006400', + ], + 'Adaptive' => [ + 'title' => '根据输出视频大小调整字体 size。 true / false, default: false', + 'description' => 'Specifies whether to the font size based on the output video dimensions. true / false, default: false'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'false', + ], + ], + 'required' => false, + ], + ], + 'required' => false, + ], + 'required' => false, + ], + 'Subtitles' => [ + 'title' => '字幕压制配置', + 'description' => 'The subtitle configuration.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The subtitle configuration.'."\n", + 'type' => 'object', + 'properties' => [ + 'TemplateId' => [ + 'title' => '模板 ID。', + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '9547c6ad97cb4f2aaa29683ebd18d410', + ], + 'OverwriteParams' => [ + 'title' => '覆盖参数, 若填写会覆盖模板对应参数', + 'description' => 'The parameters that are used to overwrite the corresponding parameters of the template.'."\n", + 'type' => 'object', + 'properties' => [ + 'Format' => [ + 'title' => '字幕文件格式。', + 'description' => 'The format of the subtitle file.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'vtt', + ], + 'CharEnc' => [ + 'title' => '文件 encoding 格式。', + 'description' => 'The file encoding format.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'UTF-8', + ], + 'File' => [ + 'title' => '字幕文件。', + 'description' => 'The subtitle file.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'title' => '媒体对象类型。'."\n" + .'取值: '."\n" + .'- OSS: OSS文件。'."\n" + .'- Media: 媒资 ID。'."\n", + 'description' => 'The type of the media object. Valid values:'."\n" + ."\n" + .'* OSS: an OSS object.'."\n" + .'* Media: a media asset.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'OSS', + ], + 'Media' => [ + 'title' => '媒体值:'."\n" + .' type 为 OSS 时,为 URL, 支持 OSS 协议和 HTTP 协议;'."\n" + .' type 为 Media 时,为媒资 ID。', + 'description' => 'The media object.'."\n" + ."\n" + .'* If Type is set to OSS, set this parameter to the URL of an OSS object. Both the OSS and HTTP protocols are supported.'."\n" + .'* If Type is set to Media, set this parameter to the ID of a media asset.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'oss://bucket/path/to/video.mp4', + ], + ], + 'required' => false, + ], + ], + 'required' => false, + ], + ], + 'required' => false, + ], + 'required' => false, + ], + 'Encryption' => [ + 'title' => '加密配置。', + 'description' => 'The encryption settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'EncryptType' => [ + 'title' => '加密类型。', + 'description' => 'Specifies the encryption type. Valid values:'."\n" + ."\n" + .'* PrivateEncryption: Alibaba Cloud proprietary cryptography'."\n" + .'* HLSEncryption: HTTP Live Streaming (HLS) encryption'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'PrivateEncryption', + ], + 'CipherText' => [ + 'title' => '标准加密的密钥密文。', + 'description' => 'The ciphertext of HTTP Live Streaming (HLS) encryption.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'MTYi00NDU0LTg5O****', + ], + 'DecryptKeyUri' => [ + 'title' => '标准加密的解密服务地址。', + 'description' => 'The address of the decryption service for HLS encryption.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'https://sample.com/path?CipherText=MTYi00NDU0LTg5O****', + ], + 'KeyServiceType' => [ + 'title' => '密钥服务类型。目前仅支持KMS和Base64', + 'description' => 'The key service type for HLS encryption. Valid values:'."\n" + ."\n" + .'* KMS'."\n" + .'* Base64'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'KMS', + ], + ], + 'required' => false, + ], + 'CombineConfigs' => [ + 'title' => '多输入合流配置', + 'description' => 'The multi-input stream merge configuration.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The stream merge configuration.'."\n", + 'type' => 'object', + 'properties' => [ + 'AudioIndex' => [ + 'title' => '音频流Index', + 'description' => 'The audio stream index.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '0 或 exclude', + ], + 'VideoIndex' => [ + 'title' => '视频流Index', + 'description' => 'The video stream index.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '0 或 exclude', + ], + 'Start' => [ + 'title' => '输入流的开始时间。 默认为0', + 'description' => 'The start time of the input stream. Default value: 0.'."\n", + 'type' => 'number', + 'format' => 'double', + 'required' => false, + 'example' => '0.0', + ], + 'Duration' => [ + 'title' => '输入流的持续时间。 默认为视频时长。', + 'description' => 'The duration of the input stream. The default value is the duration of the video.'."\n", + 'type' => 'number', + 'format' => 'double', + 'required' => false, + 'example' => '20.0', + ], + ], + 'required' => false, + ], + 'required' => false, + ], + ], + 'required' => true, + ], + ], + 'required' => true, + ], + 'required' => true, + 'example' => 'user-data', + ], + ], + [ + 'name' => 'UserData', + 'in' => 'query', + 'schema' => [ + 'title' => '用户数据。', + 'description' => 'The custom settings. The value must be in the JSON format and can be up to 512 bytes in length. You can specify a [custom callback URL](~~451631~~).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'user-data', + ], + ], + [ + 'name' => 'ScheduleConfig', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'title' => '任务调度信息。', + 'description' => 'The scheduling information about the job.'."\n", + 'type' => 'object', + 'properties' => [ + 'PipelineId' => [ + 'title' => '管道 ID。', + 'description' => 'The ID of the MPS queue to which the job was submitted.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'e37ebee5d98b4781897f6086e89f9c56', + ], + 'Priority' => [ + 'title' => '任务优先级。数字越大优先级越高,取值范围:1~10', + 'description' => 'The priority of the job. Valid values: 1 to 10. The greater the value, the higher the priority.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '5', + ], + ], + 'required' => false, + 'example' => 'job-name', + ], + ], + [ + 'name' => 'ClientToken', + 'in' => 'query', + 'schema' => [ + 'title' => '幂等性校验Key。', + 'description' => 'The client token that is used to ensure the idempotence of the request.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '****12e8864746a0a398****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求 id', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '31E30781-9495-5E2D-A84D-759B0A01E262', + ], + 'TranscodeParentJob' => [ + 'title' => 'TranscodeParentJobWithSubJobDTO', + 'description' => 'TranscodeParentJobWithSubJobDTO'."\n", + 'type' => 'object', + 'properties' => [ + 'TranscodeJobList' => [ + 'title' => '子任务列表', + 'description' => 'The list of subjobs.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The details of the subjobs.'."\n", + 'type' => 'object', + 'properties' => [ + 'CreateTime' => [ + 'title' => '任务创建时间', + 'description' => 'The time when the job was created.'."\n", + 'type' => 'string', + 'example' => '2022-01-12T08:49:41Z', + ], + 'Name' => [ + 'title' => '任务名', + 'description' => 'The job name.'."\n", + 'type' => 'string', + 'example' => 'transcode-job', + ], + 'ParentJobId' => [ + 'title' => '主任务 ID', + 'description' => 'The main job ID.'."\n", + 'type' => 'string', + 'example' => '8b2198504dd340b7b3c9842a74fc9baa', + ], + 'JobId' => [ + 'title' => '子任务 ID', + 'description' => 'The subjob ID.'."\n", + 'type' => 'string', + 'example' => '7d6a7e0d4db2457a8d45ff5d43e1bf0a', + ], + 'JobIndex' => [ + 'title' => '子任务在整个任务中的索引号', + 'description' => 'The index number of the subjob in the entire job.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'InputGroup' => [ + 'title' => '任务输入组 (目前只支持单个输入)', + 'description' => 'The input group of the job. An input of a single file indicates a transcoding job. An input of multiple files indicates an audio and video stream merge job.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The information about the job input.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'title' => '媒体对象类型。'."\n" + .'取值: '."\n" + .'- OSS: OSS文件。'."\n" + .'- Media: 媒资 ID。'."\n", + 'description' => 'The type of the media object. Valid values:'."\n" + ."\n" + .'* OSS: an OSS object.'."\n" + .'* Media: a media asset.'."\n", + 'type' => 'string', + 'example' => 'OSS', + ], + 'Media' => [ + 'title' => '媒体值:'."\n" + .' type 为 OSS 时,为 URL, 支持 OSS 协议和 HTTP 协议;'."\n" + .' type 为 Media 时,为媒资 ID。', + 'description' => 'The media object.'."\n" + ."\n" + .'* If Type is set to OSS, set this parameter to the URL of an OSS object. Both the OSS and HTTP protocols are supported.'."\n" + .'* If Type is set to Media, set this parameter to the ID of a media asset.'."\n", + 'type' => 'string', + 'example' => 'oss://bucket/path/to/video.mp4', + ], + 'InputUrl' => [ + 'description' => 'The URL of the input stream:'."\n" + ."\n" + .'* This parameter takes effect only when Type is set to Media. You can select a specific file within the media asset as an input.'."\n" + .'* The system checks whether the input URL exists within the media asset.'."\n", + 'type' => 'string', + 'example' => 'oss://bucket/path/to/video.mp4'."\n", + ], + ], + ], + ], + 'ProcessConfig' => [ + 'title' => '转码处理配置', + 'description' => 'The transcoding configuration.'."\n", + 'type' => 'object', + 'properties' => [ + 'Transcode' => [ + 'title' => '转码配置', + 'description' => 'The transcoding configuration.'."\n", + 'type' => 'object', + 'properties' => [ + 'TemplateId' => [ + 'title' => '模板 ID。', + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'example' => '9547c6ad97cb4f2aaa29683ebd18d410', + ], + 'OverwriteParams' => [ + 'title' => '覆盖参数, 若填写会覆盖模板对应参数', + 'description' => 'The parameters that are used to overwrite the corresponding parameters of the template.'."\n", + 'type' => 'object', + 'properties' => [ + 'Video' => [ + 'title' => 'video 设置', + 'description' => 'The video settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'Codec' => [ + 'title' => '编码格式', + 'description' => 'The encoding format.'."\n", + 'type' => 'string', + 'example' => 'H.264', + ], + 'Profile' => [ + 'title' => '编码级别。'."\n" + .' 支持baseline、main、high。'."\n" + .' baseline:针对移动设备。'."\n" + .' main:针对标准分辨率设备。'."\n" + .' high:针对高分辨率设备。'."\n" + .' 默认值:high。', + 'description' => 'The encoding profile. Valid values: baseline, main, and high.'."\n" + ."\n" + .'* baseline: applicable to mobile devices.'."\n" + .'* main: applicable to standard-definition devices.'."\n" + .'* high: applicable to high-definition devices.'."\n" + ."\n" + .'Default value: high.'."\n", + 'type' => 'string', + 'example' => 'Main', + ], + 'Bitrate' => [ + 'title' => '视频平均码率。'."\n" + .' 取值范围:[10,50000]。'."\n" + .' 单位:Kbps。', + 'description' => 'The average bitrate of the video.'."\n" + ."\n" + .'* Valid values: \\[10,50000].'."\n" + .'* Unit: Kbit/s.'."\n", + 'type' => 'string', + 'example' => '3000', + ], + 'Crf' => [ + 'title' => '码率-质量控制因子。'."\n" + .' 取值范围:[0,51]。'."\n" + .' 默认值:编码格式为H264,默认值为23。编码格式为H265,默认值为26。'."\n" + .' 如果设置了Crf,则Bitrate的设置失效。', + 'description' => 'The constant rate factor.'."\n" + ."\n" + .'* Valid values: \\[0,51].'."\n" + .'* Default value: 23 if the encoding format is H.264, or Default value when the Codec parameter is set to H.265: 26.'."\n" + ."\n" + .'If this parameter is specified, the value of Bitrate becomes invalid.'."\n", + 'type' => 'string', + 'example' => '23', + ], + 'Width' => [ + 'title' => '宽。'."\n" + .' 取值范围:[128,4096]。'."\n" + .' 单位:px。'."\n" + .' 默认值:视频原始宽度。', + 'description' => 'The width of the output video.'."\n" + ."\n" + .'* Valid values: \\[128,4096].'."\n" + .'* Unit: pixels.'."\n" + .'* Default value: the width of the input video.'."\n", + 'type' => 'string', + 'example' => '1920', + ], + 'Height' => [ + 'title' => '高。'."\n" + .' 取值范围:[128,4096]。'."\n" + .' 单位:px。'."\n" + .' 默认值:视频原始高度。', + 'description' => 'The height of the output video.'."\n" + ."\n" + .'* Valid values: \\[128,4096].'."\n" + .'* Unit: pixels.'."\n" + .'* Default value: the height of the input video.'."\n", + 'type' => 'string', + 'example' => '1080', + ], + 'Fps' => [ + 'title' => '帧率。'."\n" + .' 取值范围:(0,60]。'."\n" + .' 当输入文件帧率超过60时取60。'."\n" + .' 默认值:取输入文件帧率', + 'description' => 'The frame rate.'."\n" + ."\n" + .'* Valid values: (0,60].'."\n" + .'* The value is 60 if the frame rate of the input video exceeds 60.'."\n" + .'* Default value: the frame rate of the input video.'."\n", + 'type' => 'string', + 'example' => '25', + ], + 'Gop' => [ + 'title' => '关键帧间最大帧数。'."\n" + .' 取值范围:[1,1080000]。'."\n" + .' 默认值:250。', + 'description' => 'The maximum number of frames between two keyframes.'."\n" + ."\n" + .'* Valid values: \\[1,1080000].'."\n" + .'* Default value: 250.'."\n", + 'type' => 'string', + 'example' => '250', + ], + 'Preset' => [ + 'title' => '视频算法器预置。只有H264支持该参数。'."\n" + .'支持veryfast、fast、medium、slow、slower。'."\n" + .'默认值:medium。', + 'description' => 'The preset video algorithm. This parameter takes effect only if the encoding format is H.264. Valid values: veryfast, fast, medium, slow, and slower. Default value: medium.'."\n", + 'type' => 'string', + 'example' => 'medium', + ], + 'ScanMode' => [ + 'title' => '扫描模式。'."\n" + .'支持interlaced、progressive。', + 'description' => 'The scan mode. Valid values: interlaced and progressive.'."\n", + 'type' => 'string', + 'example' => 'progressive', + ], + 'PixFmt' => [ + 'title' => '视频颜色格式。'."\n" + .' 范围:yuv420p,yuvj420p等标准颜色格式。', + 'description' => 'The pixel format of the video. Valid values: standard pixel formats such as yuv420p and yuvj420p.'."\n", + 'type' => 'string', + 'example' => 'yuv420p', + ], + 'Remove' => [ + 'title' => '是否去掉视频', + 'description' => 'Specifies whether to remove the video.'."\n", + 'type' => 'string', + 'example' => 'false', + ], + 'Crop' => [ + 'title' => '视频画面裁切'."\n" + .' 支持2种方式。'."\n" + .' 自动检测黑边并裁切,设置为“border”'."\n" + .' 自定义裁切,参数格式:width:height:left:top。'."\n" + .' 示例:1280:800:0:140', + 'description' => 'The method of video cropping. Valid values:'."\n" + ."\n" + .'* border: automatically detects and removes black bars.'."\n" + .'* A value in the width:height:left:top format: crops the videos based on the custom settings. Example: 1280:800:0:140.'."\n", + 'type' => 'string', + 'example' => '1280:800:0:140', + ], + 'Pad' => [ + 'title' => '视频贴黑边'."\n" + .' 参数格式:width:height:left:top。'."\n" + .' 示例:1280:800:0:140', + 'description' => 'The black bars added to the video.'."\n" + ."\n" + .'* Format: width:height:left:top.'."\n" + .'* Example: 1280:800:0:140.'."\n", + 'type' => 'string', + 'example' => '1280:800:0:140', + ], + 'LongShortMode' => [ + 'title' => '是否开启横竖屏自适应(即:长短边模式)', + 'description' => 'Specifies whether to enable the auto-rotate screen feature.'."\n", + 'type' => 'string', + 'example' => 'false', + ], + 'Bufsize' => [ + 'title' => '缓冲区大小'."\n" + .' 值范围:[1000,128000]'."\n" + .' 默认值:6000'."\n" + .' 单位:Kb', + 'description' => 'The buffer size.'."\n" + ."\n" + .'* Valid values: \\[1000,128000].'."\n" + .'* Default value: 6000.'."\n" + .'* Unit: KB.'."\n", + 'type' => 'string', + 'example' => '6000', + ], + 'Maxrate' => [ + 'title' => '视频码率峰值'."\n" + .' 值范围[10,50000],单位Kbps。', + 'description' => 'The maximum bitrate of the output video. Valid values: \\[10,50000]. Unit: Kbit/s.'."\n", + 'type' => 'string', + 'example' => '9000', + ], + 'AbrMax' => [ + 'title' => 'abr 最大码率(只有窄高1有效)'."\n" + .'值范围[10,50000],单位Kbps。', + 'description' => 'The maximum ABR. This parameter takes effect only for Narrowband HD 1.0. Valid values: \\[10,50000]. Unit: Kbit/s.'."\n", + 'type' => 'string', + 'example' => '6000', + ], + ], + ], + 'Audio' => [ + 'title' => 'audio 设置', + 'description' => 'The audio settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'Codec' => [ + 'title' => '音频编解码格式,AAC、MP3、VORBIS、FLAC。'."\n" + .' 默认值:AAC', + 'description' => 'The audio codec. Valid values: AAC, MP3, VORBIS, and FLAC. Default value: AAC.'."\n", + 'type' => 'string', + 'example' => 'AAC', + ], + 'Profile' => [ + 'title' => '音频编码预置。'."\n" + .' 当Codec为 AAC时,范围aac_low、aac_he、aac_he_v2、aac_ld、aac_eld。', + 'description' => 'The audio codec profile. If the Codec parameter is set to AAC, the valid values are aac_low, aac_he, aac_he_v2, aac_ld, and aac_eld.'."\n", + 'type' => 'string', + 'example' => 'aac_low', + ], + 'Samplerate' => [ + 'title' => '采样率。'."\n" + .' 默认值:44100'."\n" + .' 支持22050、32000、44100、48000、96000,'."\n" + .' 单位:Hz', + 'description' => 'The sampling rate.'."\n" + ."\n" + .'* Default value: 44100.'."\n" + .'* Valid values: 22050, 32000, 44100, 48000, and 96000.'."\n" + .'* Unit: Hz.'."\n", + 'type' => 'string', + 'example' => '44100', + ], + 'Bitrate' => [ + 'title' => '输出文件的音频码率。'."\n" + .' 值范围:[8,1000]'."\n" + .' 单位:Kbps'."\n" + .' 默认值:128', + 'description' => 'The audio bitrate of the output file.'."\n" + ."\n" + .'* Valid values: \\[8,1000].'."\n" + .'* Unit: Kbit/s.'."\n" + .'* Default value: 128.'."\n", + 'type' => 'string', + 'example' => '128', + ], + 'Channels' => [ + 'title' => '声道数。'."\n" + .' 默认值:2', + 'description' => 'The number of sound channels. Default value: 2.'."\n", + 'type' => 'string', + 'example' => '2', + ], + 'Remove' => [ + 'title' => '是否删除音频流。', + 'description' => 'Specifies whether to delete the audio stream.'."\n", + 'type' => 'string', + 'example' => 'false', + ], + 'Volume' => [ + 'title' => '音量控制', + 'description' => 'The volume configurations.'."\n", + 'type' => 'object', + 'properties' => [ + 'Method' => [ + 'title' => '音量调整方式', + 'description' => 'The volume adjustment method. Valid values:'."\n", + 'type' => 'string', + 'example' => 'auto', + ], + 'IntegratedLoudnessTarget' => [ + 'title' => '目标音量', + 'description' => 'The output volume.'."\n", + 'type' => 'string', + 'example' => '-6', + ], + 'TruePeak' => [ + 'title' => '最大峰值', + 'description' => 'The peak volume.'."\n", + 'type' => 'string', + 'example' => '-1', + ], + 'LoudnessRangeTarget' => [ + 'title' => '音量范围', + 'description' => 'The volume range.'."\n", + 'type' => 'string', + 'example' => '8', + ], + ], + ], + ], + ], + 'Container' => [ + 'title' => '封装格式设置', + 'description' => 'The encapsulation format settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'Format' => [ + 'title' => '容器格式', + 'description' => 'The container format.'."\n", + 'type' => 'string', + 'example' => 'mp4', + ], + ], + ], + 'MuxConfig' => [ + 'title' => '封装设置', + 'description' => 'The encapsulation settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'Segment' => [ + 'title' => '切片设置', + 'description' => 'The segment settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'Duration' => [ + 'title' => '切片时长', + 'description' => 'The segment length.'."\n", + 'type' => 'string', + 'example' => '10', + ], + 'ForceSegTime' => [ + 'title' => '强制切片时间点', + 'description' => 'The forced segmentation point in time.'."\n", + 'type' => 'string', + 'example' => '2,3', + ], + ], + ], + ], + ], + 'TransConfig' => [ + 'description' => 'The conditional transcoding configurations.'."\n", + 'type' => 'object', + 'properties' => [ + 'TransMode' => [ + 'description' => 'The video transcoding mode. Valid values:'."\n" + ."\n" + .'* onepass: You can set this parameter to onepass if the Bitrate parameter is set to ABR. This is the default value. The encoding speed of this mode is faster than that of the twopass mode.'."\n" + .'* twopass: You can set this parameter to twopass if the Bitrate parameter is set to VBR. The encoding speed of this mode is slower than that of the onepass mode.'."\n" + .'* CBR: the constant bitrate mode.'."\n", + 'type' => 'string', + 'example' => 'onepass', + ], + 'IsCheckReso' => [ + 'description' => 'Specifies whether to check the video resolution. You can specify only one of the IsCheckReso and IsCheckResoFail parameters. The priority of the IsCheckResoFail parameter is higher. Valid values:'."\n" + ."\n" + .'* true: checks the video resolution. If the width or height of the input video is less than that of the output video, the resolution of the input video is used for transcoding.'."\n" + .'* false: does not check the video resolution. This is the default value.'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'IsCheckResoFail' => [ + 'description' => 'Specifies whether to check the video resolution. You can specify only one of the IsCheckReso and IsCheckResoFail parameters. The priority of the IsCheckResoFail parameter is higher. Valid values:'."\n" + ."\n" + .'* true: checks the video resolution. If the width or height of the input video is less than that of the output video, the transcoding job fails.'."\n" + .'* false: does not check the video resolution. This is the default value.'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'IsCheckVideoBitrate' => [ + 'description' => 'Specifies whether to check the video bitrate. You can specify only one of the IsCheckVideoBitrate and IsCheckVideoBitrateFail parameters. The priority of the IsCheckVideoBitrateFail parameter is higher. Valid values:'."\n" + ."\n" + .'* true: checks the video resolution. If the bitrate of the input video is less than that of the output video, the bitrate of the input video is used for transcoding.'."\n" + .'* false: does not check the video resolution. This is the default value.'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'IsCheckVideoBitrateFail' => [ + 'description' => 'Specifies whether to check the video bitrate. You can specify only one of the IsCheckVideoBitrate and IsCheckVideoBitrateFail parameters. The priority of the IsCheckVideoBitrateFail parameter is higher. Valid values:'."\n" + ."\n" + .'* true: checks the video resolution. If the bitrate of the input video is less than that of the output video, the transcoding job fails.'."\n" + .'* false: does not check the video resolution. This is the default value.'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'IsCheckAudioBitrate' => [ + 'description' => 'Specifies whether to check the audio bitrate. You can specify only one of the IsCheckAudioBitrate and IsCheckAudioBitrateFail parameters. The priority of the IsCheckAudioBitrateFail parameter is higher. Valid values:'."\n" + ."\n" + .'* true: checks the video resolution. If the bitrate of the input audio is less than that of the output audio, the bitrate of the input audio is used for transcoding.'."\n" + .'* false: does not check the video resolution.'."\n" + ."\n" + .'Default values:'."\n" + ."\n" + .'* If this parameter is not specified and the codec of the output audio is different from that of the input audio, the default value is false.'."\n" + .'* If this parameter is not specified and the codec of the output audio is the same as that of the input audio, the default value is true.'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'IsCheckAudioBitrateFail' => [ + 'description' => 'Specifies whether to check the audio bitrate. You can specify only one of the IsCheckAudioBitrate and IsCheckAudioBitrateFail parameters. The priority of the IsCheckAudioBitrateFail parameter is higher. Valid values:'."\n" + ."\n" + .'* true: checks the video resolution. If the bitrate of the input audio is less than that of the output audio, the transcoding job fails.'."\n" + .'* false: does not check the video resolution. This is the default value.'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'AdjDarMethod' => [ + 'description' => 'The method that is used to adjust the resolution. This parameter takes effect only if both the Width and Height parameters are specified. You can use this parameter together with the LongShortMode parameter.'."\n" + ."\n" + .'Valid values: rescale, crop, pad, and none.'."\n" + ."\n" + .'Default value: none.'."\n", + 'type' => 'string', + 'example' => 'none', + ], + ], + ], + ], + ], + ], + ], + 'ImageWatermarks' => [ + 'title' => '图片水印配置', + 'description' => 'The watermark configuration of an image.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The watermark configuration of an image.'."\n", + 'type' => 'object', + 'properties' => [ + 'TemplateId' => [ + 'title' => '模板 ID。', + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'example' => '9547c6ad97cb4f2aaa29683ebd18d410', + ], + 'OverwriteParams' => [ + 'title' => '覆盖参数, 若填写会覆盖模板对应参数', + 'description' => 'The parameters that are used to overwrite the corresponding parameters of the template.'."\n", + 'type' => 'object', + 'properties' => [ + 'Width' => [ + 'title' => '输出视频上水印图片宽。'."\n" + .'值有两种形式:'."\n" + ."\n" + .'- 整数型代水印图片宽的像素值。'."\n" + .' - 范围:[8,4096]'."\n" + .' - 单位:px'."\n" + .'- 小数型代表相对输出视频分辨率宽的比率。'."\n" + .' - 范围:(0,1)'."\n" + .' - 支持4位小数,如0.9999,超出部分系统自动丢弃。', + 'description' => 'The width of the watermark in the output video. The following value types are supported:'."\n" + ."\n" + .'* Integer: the pixel value of the watermark width.'."\n" + ."\n" + .' * Valid values: \\[8,4096].'."\n" + .' * Unit: pixels.'."\n" + ."\n" + .'* Decimal: the ratio of the watermark width to the width of the output video.'."\n" + ."\n" + .' * Valid values: (0,1).'."\n" + .' * The decimal number can be accurate to four decimal places, such as 0.9999. Excessive digits are automatically discarded.'."\n", + 'type' => 'string', + 'example' => '32', + ], + 'Height' => [ + 'title' => '输出视频上水印图片高。'."\n" + .'值有两种形式:'."\n" + ."\n" + .'- 整数型代水印图片高的像素值。'."\n" + .' - 范围:[8,4096]'."\n" + .' - 单位:px'."\n" + .'- 小数型代表相对输出视频分辨率高的比率。'."\n" + .' - 范围:(0,1)'."\n" + .' - 支持4位小数,如0.9999,超出部分系统自动丢弃。', + 'description' => 'The height of the watermark image in the output video. The following value types are supported:'."\n" + ."\n" + .'* Integer: the pixel value of the watermark height.'."\n" + ."\n" + .' * Valid values: \\[8,4096].'."\n" + .' * Unit: pixels.'."\n" + ."\n" + .'* Decimal: the ratio of the watermark height to the height of the output video.'."\n" + ."\n" + .' * Valid values: (0,1).'."\n" + .' * The decimal number can be accurate to four decimal places, such as 0.9999. Excessive digits are automatically discarded.'."\n", + 'type' => 'string', + 'example' => '32', + ], + 'Dx' => [ + 'title' => '水印图片相对输出视频的水平偏移量。'."\n" + .'默认值:0'."\n" + ."\n" + .'值有两种形式:'."\n" + .'- 整数型代表偏移像素。'."\n" + .' - 范围:[8,4096]'."\n" + .' - 单位:px'."\n" + .'- 小数型代表水平偏移量与输出分辨率宽的比率。'."\n" + .' - 范围:(0,1)'."\n" + .' - 支持4位小数,如0.9999,超出部分系统自动丢弃', + 'description' => 'The horizontal offset of the watermark relative to the output video. Default value: 0.'."\n" + ."\n" + .'The following value types are supported:'."\n" + ."\n" + .'* Integer: the pixel value of the horizontal offset.'."\n" + ."\n" + .' * Valid values: \\[8,4096].'."\n" + .' * Unit: pixels.'."\n" + ."\n" + .'* Decimal: the ratio of the horizontal offset to the width of the output video.'."\n" + ."\n" + .' * Valid values: (0,1).'."\n" + .' * The decimal number can be accurate to four decimal places, such as 0.9999. Excessive digits are automatically discarded.'."\n", + 'type' => 'string', + 'example' => '10', + ], + 'Dy' => [ + 'title' => '水印图片相对输出视频的垂直偏移量。'."\n" + .'默认值:0'."\n" + ."\n" + .'值有两种形式:'."\n" + .'- 整数型代表偏移像素。'."\n" + .' - 范围[8,4096]'."\n" + .' - 单位:px'."\n" + .'- 小数型代表垂直偏移量与输出分辨率高的比率。'."\n" + .' - 范围:(0,1)'."\n" + .' - 支持4位小数,如0.9999,超出部分系统自动丢弃', + 'description' => 'The vertical offset of the watermark relative to the output video. Default value: 0.'."\n" + ."\n" + .'The following value types are supported:'."\n" + ."\n" + .'* Integer: the pixel value of the horizontal offset.'."\n" + ."\n" + .' * Valid values: \\[8,4096].'."\n" + .' * Unit: pixels.'."\n" + ."\n" + .'* Decimal: the ratio of the vertical offset to the height of the output video.'."\n" + ."\n" + .' * Valid values: (0,1).'."\n" + .' * The decimal number can be accurate to four decimal places, such as 0.9999. Excessive digits are automatically discarded.'."\n", + 'type' => 'string', + 'example' => '10', + ], + 'ReferPos' => [ + 'title' => '水印的位置。'."\n" + .'- 可取值:TopRight(右上)、TopLeft(左上)、BottomRight(右下)、BottomLeft(左下)'."\n" + .'- 默认值:TopRight', + 'description' => 'The position of the watermark.'."\n" + ."\n" + .'* Valid values: TopRight, TopLeft, BottomRight, and BottomLeft.'."\n" + .'* Default value: TopRight.'."\n", + 'type' => 'string', + 'example' => 'TopLeft', + ], + 'Timeline' => [ + 'title' => '动态水印,显示时间设置。', + 'description' => 'The time settings of the dynamic watermark.'."\n", + 'type' => 'object', + 'properties' => [ + 'Start' => [ + 'title' => '水印开始出现时间。'."\n" + .'- 单位:秒'."\n" + .'- 取值范围:数字'."\n" + .'- 默认值:0', + 'description' => 'The beginning of the time range in which the watermark is displayed.'."\n" + ."\n" + .'* Unit: seconds.'."\n" + .'* Value values: integers.'."\n" + .'* Default value: 0.'."\n", + 'type' => 'string', + 'example' => '00:00:05', + ], + 'Duration' => [ + 'title' => '水印持续时间。'."\n" + .'- 取值范围:[数字,ToEND]'."\n" + .'- 默认值:ToEND', + 'description' => 'The time range in which the watermark is displayed.'."\n" + ."\n" + .'* Valid values: integers and ToEND.'."\n" + .'* Default value: ToEND.'."\n", + 'type' => 'string', + 'example' => 'ToEND', + ], + ], + ], + 'File' => [ + 'title' => '水印图片文件。', + 'description' => 'The watermark image file.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'title' => '媒体对象类型。'."\n" + .'取值: '."\n" + .'- OSS: OSS文件。'."\n" + .'- Media: 媒资 ID。'."\n", + 'description' => 'The type of the media object. Valid values:'."\n" + ."\n" + .'* OSS: an OSS object.'."\n" + .'* Media: a media asset.'."\n", + 'type' => 'string', + 'example' => 'OSS', + ], + 'Media' => [ + 'title' => '媒体值:'."\n" + .' type 为 OSS 时,为 URL, 支持 OSS 协议和 HTTP 协议;'."\n" + .' type 为 Media 时,为媒资 ID。', + 'description' => 'The media object.'."\n" + ."\n" + .'* If Type is set to OSS, set this parameter to the URL of an OSS object. Both the OSS and HTTP protocols are supported.'."\n" + .'* If Type is set to Media, set this parameter to the ID of a media asset.'."\n", + 'type' => 'string', + 'example' => 'oss://bucket/path/to/video.mp4', + ], + ], + ], + ], + ], + ], + ], + ], + 'TextWatermarks' => [ + 'title' => '文字水印配置', + 'description' => 'The configurations of the text watermark.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The configurations of the text watermark.'."\n", + 'type' => 'object', + 'properties' => [ + 'TemplateId' => [ + 'title' => '模板 ID。', + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'example' => '9547c6ad97cb4f2aaa29683ebd18d410', + ], + 'OverwriteParams' => [ + 'title' => '覆盖参数, 若填写会覆盖模板对应参数', + 'description' => 'The parameters that are used to overwrite the corresponding parameters of the template.'."\n", + 'type' => 'object', + 'properties' => [ + 'Content' => [ + 'title' => '水印文本,不需要 base64 encode,字符串需要 utf-8 编码。', + 'description' => 'The watermark text. Base64 encoding is not required. The string must be encoded in UTF-8.'."\n", + 'type' => 'string', + 'example' => '测试水印', + ], + 'FontName' => [ + 'title' => '字体。默认:SimSun。', + 'description' => 'The font of the text. Default value: SimSun.'."\n", + 'type' => 'string', + 'example' => 'SimSun', + ], + 'FontColor' => [ + 'title' => '颜色。', + 'description' => 'The color of the text.'."\n", + 'type' => 'string', + 'example' => '#006400', + ], + 'FontAlpha' => [ + 'title' => '字体透明度。'."\n" + .'- 范围:(0, 1]'."\n" + .'- 默认:1.0', + 'description' => 'The transparency of the text.'."\n" + ."\n" + .'* Valid values: (0,1].'."\n" + .'* Default value: 1.'."\n", + 'type' => 'string', + 'example' => '1.0', + ], + 'Top' => [ + 'title' => '文本上边距。'."\n" + .'- 默认:0'."\n" + .'- 范围:[0,4096]'."\n", + 'description' => 'The top margin of the text.'."\n" + ."\n" + .'* Default value: 0.'."\n" + .'* Valid values: \\[0,4096].'."\n", + 'type' => 'string', + 'example' => '10', + ], + 'Left' => [ + 'title' => '文本左边距。'."\n" + .'- 默认:0'."\n" + .'- 范围:[0,4096]', + 'description' => 'The left margin of the text watermark.'."\n" + ."\n" + .'* Default value: 0.'."\n" + .'* Valid values: \\[0,4096].'."\n", + 'type' => 'string', + 'example' => '10', + ], + 'FontSize' => [ + 'title' => '字体大小。'."\n" + .'- 默认值:16'."\n" + .'- 范围:(4, 120)', + 'description' => 'The size of the text.'."\n" + ."\n" + .'* Default value: 16.'."\n" + .'* Valid values: (4,120).'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '16', + ], + 'BorderWidth' => [ + 'title' => '描边宽度。'."\n" + .'- 默认:0'."\n" + .'- 范围:(0,4096]', + 'description' => 'The outline width of the text watermark.'."\n" + ."\n" + .'* Default value: 0.'."\n" + .'* Valid values: (0,4096].'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'BorderColor' => [ + 'title' => '描边颜色。'."\n" + .'默认:Black'."\n" + .'更多取值请参见BorderColor。', + 'description' => 'The outline color of the text watermark. Default value: black. For more information, see BorderColor.'."\n", + 'type' => 'string', + 'example' => '#006400', + ], + 'Adaptive' => [ + 'title' => '根据输出视频大小调整字体 size。 true / false, default: false', + 'description' => 'Specifies whether to the font size based on the output video dimensions. true / false, default: false'."\n", + 'type' => 'string', + 'example' => 'false', + ], + ], + ], + ], + ], + ], + 'Subtitles' => [ + 'title' => '字幕压制配置', + 'description' => 'The subtitle configuration.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The subtitle configuration.'."\n", + 'type' => 'object', + 'properties' => [ + 'TemplateId' => [ + 'title' => '模板 ID。', + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'example' => '9547c6ad97cb4f2aaa29683ebd18d410', + ], + 'OverwriteParams' => [ + 'title' => '覆盖参数, 若填写会覆盖模板对应参数', + 'description' => 'The parameters that are used to overwrite the corresponding parameters of the template.'."\n", + 'type' => 'object', + 'properties' => [ + 'Format' => [ + 'title' => '字幕文件格式。', + 'description' => 'The format of the subtitle file.'."\n", + 'type' => 'string', + 'example' => 'vtt', + ], + 'CharEnc' => [ + 'title' => '文件 encoding 格式。', + 'description' => 'The file encoding format.'."\n", + 'type' => 'string', + 'example' => 'UTF-8', + ], + 'File' => [ + 'title' => '字幕文件。', + 'description' => 'The subtitle file.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'title' => '媒体对象类型。'."\n" + .'取值: '."\n" + .'- OSS: OSS文件。'."\n" + .'- Media: 媒资 ID。'."\n", + 'description' => 'The type of the media object. Valid values:'."\n" + ."\n" + .'* OSS: an OSS object.'."\n" + .'* Media: a media asset.'."\n", + 'type' => 'string', + 'example' => 'OSS', + ], + 'Media' => [ + 'title' => '媒体值:'."\n" + .' type 为 OSS 时,为 URL, 支持 OSS 协议和 HTTP 协议;'."\n" + .' type 为 Media 时,为媒资 ID。', + 'description' => 'The media object.'."\n" + ."\n" + .'* If Type is set to OSS, set this parameter to the URL of an OSS object. Both the OSS and HTTP protocols are supported.'."\n" + .'* If Type is set to Media, set this parameter to the ID of a media asset.'."\n", + 'type' => 'string', + 'example' => 'oss://bucket/path/to/video.mp4', + ], + ], + ], + ], + ], + ], + ], + ], + 'Encryption' => [ + 'title' => '加密配置。', + 'description' => 'The encryption settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'EncryptType' => [ + 'title' => '加密类型。', + 'description' => 'Specifies the encryption type.'."\n", + 'type' => 'string', + 'example' => 'PrivateEncryption', + ], + 'CipherText' => [ + 'title' => '标准加密的密钥密文。', + 'description' => 'The ciphertext of HLS encryption.'."\n", + 'type' => 'string', + 'example' => 'MTYi00NDU0LTg5O****', + ], + 'DecryptKeyUri' => [ + 'title' => '标准加密的解密服务地址。', + 'description' => 'The address of the decryption service for HLS encryption.'."\n", + 'type' => 'string', + 'example' => 'https://sample.com/path?CipherText=MTYi00NDU0LTg5O****', + ], + 'KeyServiceType' => [ + 'title' => '密钥服务类型。目前仅支持KMS和Base64', + 'description' => 'The type of the key service. Valid values: KMS and Base64.'."\n", + 'type' => 'string', + 'example' => 'KMS', + ], + ], + ], + 'CombineConfigs' => [ + 'title' => '多输入合流配置', + 'description' => 'The multi-input stream merge configuration.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The stream merge configuration.'."\n", + 'type' => 'object', + 'properties' => [ + 'AudioIndex' => [ + 'title' => '音频流Index', + 'description' => 'The audio stream index.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '0 或 exclude', + ], + 'VideoIndex' => [ + 'title' => '视频流Index', + 'description' => 'The video stream index.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '0 或 exclude', + ], + 'Start' => [ + 'title' => '输入流的开始时间。 默认为0', + 'description' => 'The start time of the input stream. Default value: 0.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => '0.0', + ], + 'Duration' => [ + 'title' => '输入流的持续时间。 默认为视频时长。', + 'description' => 'The duration of the input stream. The default value is the duration of the video.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => '20.0', + ], + ], + ], + ], + ], + ], + 'Output' => [ + 'title' => '输出媒体配置', + 'description' => 'The output file configuration.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'title' => '媒体对象类型。'."\n" + .'取值: '."\n" + .'- OSS: OSS文件。'."\n" + .'- Media: 媒资 ID。'."\n", + 'description' => 'The type of the media object. Valid values:'."\n" + ."\n" + .'* OSS: an OSS object.'."\n" + .'* Media: a media asset.'."\n", + 'type' => 'string', + 'example' => 'OSS', + ], + 'Media' => [ + 'title' => '媒体值:'."\n" + .' type 为 OSS 时,为 URL, 支持 OSS 协议和 HTTP 协议;'."\n" + .' type 为 Media 时,为媒资 ID。', + 'description' => 'The media object.'."\n" + ."\n" + .'* If Type is set to OSS, set this parameter to the URL of an OSS object. Both the OSS and HTTP protocols are supported.'."\n" + .'* If Type is set to Media, set this parameter to the ID of a media asset.'."\n", + 'type' => 'string', + 'example' => 'oss://bucket/path/to/video.mp4', + ], + 'OutputUrl' => [ + 'description' => 'The URL of the output stream.\\'."\n" + .'This parameter takes effect only when Type is set to Media. You can select a specific file within the media asset as an output.\\'."\n" + .'Supported placeholders:'."\n" + ."\n" + .'* {MediaId}: the ID of the media asset.'."\n" + .'* {JobId}: the ID of the transcoding subjob.'."\n" + .'* {MediaBucket}: the bucket to which the media asset belongs.'."\n" + .'* {ExtName}: the file suffix, which uses the output format of the transcoding template.'."\n" + .'* {DestMd5}: the MD5 value of the transcoded output file.\\'."\n" + .' Notes:'."\n" + ."\n" + .'1. This parameter must contain the {MediaId} and {JobId} placeholders.'."\n" + .'2. The output bucket is the same as the bucket to which the media asset belongs.'."\n", + 'type' => 'string', + 'example' => 'oss://bucket/path/to/{MediaId}/{JobId}.mp4'."\n", + ], + ], + ], + 'UserData' => [ + 'title' => '用户数据', + 'description' => 'The user data.'."\n", + 'type' => 'string', + 'example' => 'user-data', + ], + 'ScheduleConfig' => [ + 'title' => '任务调度信息', + 'description' => 'The scheduling information about the job.'."\n", + 'type' => 'object', + 'properties' => [ + 'PipelineId' => [ + 'title' => '管道 ID。', + 'description' => 'The ID of the MPS queue to which the job was submitted.'."\n", + 'type' => 'string', + 'example' => 'e37ebee5d98b4781897f6086e89f9c56', + ], + 'Priority' => [ + 'title' => '任务优先级。数字越大优先级越高,取值范围:1~10', + 'description' => 'The priority of the job. Valid values: 1 to 10. The greater the value, the higher the priority.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '5', + ], + ], + ], + 'Status' => [ + 'title' => '转码任务任务状态 - Init: 已提交, Processing: 转码中, Success: 转码成功, Fail: 转码失败, Deleted: 已删除', + 'description' => 'The state of the transcoding job. Valid values:'."\n" + ."\n" + .'* Init: The job is submitted.'."\n" + .'* Processing: The job is in progress.'."\n" + .'* Success: The job is successful.'."\n" + .'* Fail: The job failed.'."\n" + .'* Deleted: The job is deleted.'."\n", + 'type' => 'string', + 'example' => 'Init', + ], + 'OutFileMeta' => [ + 'title' => '任务生成视频 Media 信息', + 'description' => 'The media information about the video generated by the job.'."\n", + 'type' => 'object', + 'properties' => [ + 'FileBasicInfo' => [ + 'title' => '基础文件信息', + 'description' => 'The basic file information.'."\n", + 'type' => 'object', + 'properties' => [ + 'MediaId' => [ + 'title' => '媒资 ID。', + 'description' => 'The ID of the media asset.'."\n", + 'type' => 'string', + 'example' => '73e07de0f77171eca3fc7035d0b26402', + ], + 'FileName' => [ + 'title' => '文件名。', + 'description' => 'The file name.'."\n", + 'type' => 'string', + 'example' => 'file.m3u8', + ], + 'FileStatus' => [ + 'title' => '文件状态。', + 'description' => 'The state of the file.'."\n", + 'type' => 'string', + 'example' => 'Normal', + ], + 'FileType' => [ + 'title' => '文件类型。取值: source_file, transcode_file', + 'description' => 'The file type. Valid values: source_file and transcode_file.'."\n", + 'type' => 'string', + 'example' => 'source_file', + ], + 'FileSize' => [ + 'title' => '文件大小。单位:Byte。', + 'description' => 'The file size. Unit: bytes.'."\n", + 'type' => 'string', + 'example' => '31737', + ], + 'FileUrl' => [ + 'title' => '文件 URL。', + 'description' => 'The URL of the file.'."\n", + 'type' => 'string', + 'example' => 'http://bucket.oss-cn-shanghai.aliyuncs.com/path/to/file.m3u8', + ], + 'Region' => [ + 'title' => '文件所在区域。', + 'description' => 'The region in which the file resides.'."\n", + 'type' => 'string', + 'example' => 'cn-shanghai', + ], + 'FormatName' => [ + 'title' => '视频格式名称。', + 'description' => 'The name of the video format.'."\n", + 'type' => 'string', + 'example' => 'hls,applehttp', + ], + 'Duration' => [ + 'title' => '视频时长(单位: 秒)。', + 'description' => 'The duration of the video. Unit: seconds.'."\n", + 'type' => 'string', + 'example' => '403.039999', + ], + 'Bitrate' => [ + 'title' => '视频码率。', + 'description' => 'The video bitrate.'."\n", + 'type' => 'string', + 'example' => '888.563', + ], + 'Width' => [ + 'title' => '宽。', + 'description' => 'The width of the output video.'."\n", + 'type' => 'string', + 'example' => '848', + ], + 'Height' => [ + 'title' => '高。', + 'description' => 'The height of the output video.'."\n", + 'type' => 'string', + 'example' => '478', + ], + ], + ], + 'AudioStreamInfoList' => [ + 'title' => '音频流信息', + 'description' => 'The information about the audio stream.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The information about the audio stream.'."\n", + 'type' => 'object', + 'properties' => [ + 'Index' => [ + 'title' => '流序号。', + 'description' => 'The sequence number of the stream.'."\n", + 'type' => 'string', + 'example' => '1', + ], + 'CodecName' => [ + 'title' => '编码格式。', + 'description' => 'The encoding format.'."\n", + 'type' => 'string', + 'example' => 'aac', + ], + 'CodecLongName' => [ + 'title' => '编码格式名。', + 'description' => 'The name of the encoding format.'."\n", + 'type' => 'string', + 'example' => 'AAC (Advanced Audio Coding)', + ], + 'CodecTimeBase' => [ + 'title' => '编码器时间基。', + 'description' => 'The time base of the encoder.'."\n", + 'type' => 'string', + 'example' => '1/44100', + ], + 'CodecTagString' => [ + 'title' => '编码器标签名。', + 'description' => 'The name of the encoder tag.'."\n", + 'type' => 'string', + 'example' => '[15][0][0][0]', + ], + 'CodecTag' => [ + 'title' => '编码器标签。', + 'description' => 'The encoder tag.'."\n", + 'type' => 'string', + 'example' => '0x000f', + ], + 'SampleFmt' => [ + 'title' => '采样格式。', + 'description' => 'The sample format.'."\n", + 'type' => 'string', + 'example' => 'fltp', + ], + 'SampleRate' => [ + 'title' => '采样率(单位: Hz)。', + 'description' => 'The sampling rate. Unit: Hz.'."\n", + 'type' => 'string', + 'example' => '44100', + ], + 'Channels' => [ + 'title' => '声道数。', + 'description' => 'The number of sound channels.'."\n", + 'type' => 'string', + 'example' => '2', + ], + 'ChannelLayout' => [ + 'title' => '声道布局。', + 'description' => 'The sound channel layout.'."\n", + 'type' => 'string', + 'example' => 'stereo', + ], + 'Timebase' => [ + 'title' => '时间基。', + 'description' => 'The time base.'."\n", + 'type' => 'string', + 'example' => '1/90000', + ], + 'StartTime' => [ + 'title' => '开始时间。', + 'description' => 'The start time of the stream.'."\n", + 'type' => 'string', + 'example' => '1.473556', + ], + 'Duration' => [ + 'title' => '时长(单位: 秒)。', + 'description' => 'The duration of the stream. Unit: seconds.'."\n", + 'type' => 'string', + 'example' => '403.039989', + ], + 'Bitrate' => [ + 'title' => '码率。', + 'description' => 'The bitrate.'."\n", + 'type' => 'string', + 'example' => '0.f', + ], + 'Lang' => [ + 'title' => '语言。', + 'description' => 'The language of the stream.'."\n", + 'type' => 'string', + 'example' => 'cn', + ], + ], + ], + ], + 'VideoStreamInfoList' => [ + 'title' => '视频流信息', + 'description' => 'The information about the video stream.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The information about the video stream.'."\n", + 'type' => 'object', + 'properties' => [ + 'Index' => [ + 'title' => '流序号。', + 'description' => 'The sequence number of the stream.'."\n", + 'type' => 'string', + 'example' => '0', + ], + 'Codec_name' => [ + 'title' => '编码格式。', + 'description' => 'The encoding format.'."\n", + 'type' => 'string', + 'example' => 'h264', + ], + 'Codec_long_name' => [ + 'title' => '编码格式名。', + 'description' => 'The name of the encoding format.'."\n", + 'type' => 'string', + 'example' => 'H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10', + ], + 'Profile' => [ + 'title' => '编码器预设。', + 'description' => 'The encoder profile.'."\n", + 'type' => 'string', + 'example' => 'High', + ], + 'Codec_time_base' => [ + 'description' => 'The time base of the encoder.'."\n", + 'type' => 'string', + 'example' => '1/50', + ], + 'Codec_tag_string' => [ + 'title' => '编码格式标记文本。', + 'description' => 'The tag string of the encoding format.'."\n", + 'type' => 'string', + 'example' => '[27][0][0][0]', + ], + 'Codec_tag' => [ + 'title' => '编码格式标记。', + 'description' => 'The tag of the encoding format.'."\n", + 'type' => 'string', + 'example' => '0x001b', + ], + 'Width' => [ + 'title' => '宽。', + 'description' => 'The width of the output video.'."\n", + 'type' => 'string', + 'example' => '848', + ], + 'Height' => [ + 'title' => '高。', + 'description' => 'The height of the output video.'."\n", + 'type' => 'string', + 'example' => '478', + ], + 'Has_b_frames' => [ + 'title' => '是否有B帧。'."\n" + .'取值: '."\n" + .'- 0: 没有 B 帧, '."\n" + .'- 1: 有一个 B 帧, '."\n" + .'- 2: 有多个连续 B 帧。', + 'description' => 'Indicates whether the video stream contains bidirectional frames (B-frames). Valid values:'."\n" + ."\n" + .'* 0: The stream contains no B-frames.'."\n" + .'* 1: The stream contains one B-frame.'."\n" + .'* 2: The stream contains multiple consecutive B-frames.'."\n", + 'type' => 'string', + 'example' => '2', + ], + 'Sar' => [ + 'title' => '采集点数宽高比。', + 'description' => 'The aspect ratio of the area from which the sampling points are collected.'."\n", + 'type' => 'string', + 'example' => '478:477', + ], + 'Dar' => [ + 'title' => '图像显示宽高比。', + 'description' => 'The display aspect ratio.'."\n", + 'type' => 'string', + 'example' => '16:9', + ], + 'PixFmt' => [ + 'title' => '颜色存储格式。', + 'description' => 'The pixel format.'."\n", + 'type' => 'string', + 'example' => 'yuv420p', + ], + 'Level' => [ + 'title' => '编码等级。', + 'description' => 'The codec level.'."\n", + 'type' => 'string', + 'example' => '31', + ], + 'Fps' => [ + 'title' => '帧率。', + 'description' => 'The frame rate.'."\n", + 'type' => 'string', + 'example' => '25.0', + ], + 'Avg_fps' => [ + 'title' => '平均帧率。', + 'description' => 'The average frame rate.'."\n", + 'type' => 'string', + 'example' => '25.0', + ], + 'Time_base' => [ + 'title' => '时基。', + 'description' => 'The time base.'."\n", + 'type' => 'string', + 'example' => '1/90000', + ], + 'Start_time' => [ + 'title' => '起始时间。', + 'description' => 'The start time of the stream.'."\n", + 'type' => 'string', + 'example' => '1.473556', + ], + 'Duration' => [ + 'title' => '时长(单位: 秒)。', + 'description' => 'The duration of the stream. Unit: seconds.'."\n", + 'type' => 'string', + 'example' => '403.039989', + ], + 'Bit_rate' => [ + 'title' => '码率。', + 'description' => 'The bitrate.'."\n", + 'type' => 'string', + 'example' => '888.563', + ], + 'NumFrames' => [ + 'title' => '总帧数。', + 'description' => 'The total number of frames.'."\n", + 'type' => 'string', + 'example' => '10040', + ], + 'Lang' => [ + 'title' => '语言。', + 'description' => 'The language of the stream.'."\n", + 'type' => 'string', + 'example' => 'cn', + ], + 'Rotate' => [ + 'title' => '视频画面旋转角度。'."\n" + .'取值 0, 90, 180, 270。'."\n" + .'默认值 0', + 'description' => 'The rotation angle of the video image. Valid values: 0, 90, 180, and 270. Default value: 0.'."\n", + 'type' => 'string', + 'example' => '0', + ], + ], + ], + ], + ], + ], + 'SubmitResultJson' => [ + 'title' => '任务提交结果', + 'description' => 'The job submission result.'."\n", + 'type' => 'object', + 'example' => '{}', + ], + 'SubmitTime' => [ + 'title' => '任务提交时间', + 'description' => 'The time when the job was submitted.'."\n", + 'type' => 'string', + 'example' => '2022-01-12T08:49:41Z', + ], + 'FinishTime' => [ + 'title' => '任务结束时间', + 'description' => 'The time when the job was complete.'."\n", + 'type' => 'string', + 'example' => '2022-01-12T08:49:41Z', + ], + 'RequestId' => [ + 'title' => '提交任务时请求 ID', + 'description' => 'The ID of the request that submitted the job.'."\n", + 'type' => 'string', + 'example' => '31E30781-9495-5E2D-A84D-759B0A01E262', + ], + ], + ], + ], + 'CreateTime' => [ + 'title' => '任务创建时间。格式为: yyyy-MM-ddTHH:mm:ssZ 。', + 'description' => 'The time when the job was created. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2022-01-12T08:49:41Z', + ], + 'Name' => [ + 'title' => '任务名。', + 'description' => 'The job name.'."\n", + 'type' => 'string', + 'example' => 'transcode-job', + ], + 'RequestId' => [ + 'title' => '提交任务时请求 ID。', + 'description' => 'The ID of the request that submitted the job.'."\n", + 'type' => 'string', + 'example' => '31E30781-9495-5E2D-A84D-759B0A01E262', + ], + 'ParentJobId' => [ + 'title' => '主任务 ID。', + 'description' => 'The main job ID.'."\n", + 'type' => 'string', + 'example' => '8b2198504dd340b7b3c9842a74fc9baa', + ], + 'JobCount' => [ + 'title' => '子任务数量。', + 'description' => 'The number of subjobs.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'Status' => [ + 'title' => '任务状态。 Success: 所有子任务完成后,有一个子任务则为成功, Fail: 所有子任务失败', + 'description' => 'The state of the job. Success: At least one of the subjobs is successful. Fail: All subjobs failed.'."\n", + 'type' => 'string', + 'example' => 'Success', + ], + 'TriggerSource' => [ + 'title' => '任务来源。 API: API, WorkFlow: 工作流, Console: 控制台', + 'description' => 'The source of the job. Valid values: API, WorkFlow, and Console.'."\n", + 'type' => 'string', + 'example' => 'API', + ], + 'Percent' => [ + 'title' => '任务完成百分比。', + 'description' => 'The completion percentage of the job.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'SubmitTime' => [ + 'title' => '任务提交时间。格式为: yyyy-MM-ddTHH:mm:ssZ 。', + 'description' => 'The time when the job was submitted. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2022-01-12T08:49:41Z', + ], + 'FinishTime' => [ + 'title' => '任务结束时间。格式为: yyyy-MM-ddTHH:mm:ssZ 。', + 'description' => 'The time when the job was complete. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2022-01-12T08:49:41Z', + ], + 'InputGroup' => [ + 'title' => '任务输入组 (目前只支持单个输入)。', + 'description' => 'The input group of the job. An input of a single file indicates a transcoding job. An input of multiple files indicates an audio and video stream merge job.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The information about the job input.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'title' => '媒体对象类型。'."\n" + .'取值: '."\n" + .'- OSS: OSS文件。'."\n" + .'- Media: 媒资 ID。'."\n", + 'description' => 'The type of the media object. Valid values:'."\n" + ."\n" + .'* OSS: an OSS object.'."\n" + .'* Media: a media asset.'."\n", + 'type' => 'string', + 'example' => 'OSS', + ], + 'Media' => [ + 'title' => '媒体值:'."\n" + .' type 为 OSS 时,为 URL, 支持 OSS 协议和 HTTP 协议;'."\n" + .' type 为 Media 时,为媒资 ID。', + 'description' => 'The media object.'."\n" + ."\n" + .'* If Type is set to OSS, set this parameter to the URL of an OSS object. Both the OSS and HTTP protocols are supported.'."\n" + .'* If Type is set to Media, set this parameter to the ID of a media asset.'."\n", + 'type' => 'string', + 'example' => 'oss://bucket/path/to/video.mp4', + ], + ], + ], + ], + 'OutputGroup' => [ + 'title' => '任务输出组。', + 'description' => 'The output group of the job.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The output of the job.'."\n", + 'type' => 'object', + 'properties' => [ + 'Output' => [ + 'title' => '输出媒体配置', + 'description' => 'The output file configuration.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'title' => '媒体对象类型。'."\n" + .'取值: '."\n" + .'- OSS: OSS文件。'."\n" + .'- Media: 媒资 ID。'."\n", + 'description' => 'The type of the media object. Valid values:'."\n" + ."\n" + .'* OSS: an OSS object.'."\n" + .'* Media: a media asset.'."\n", + 'type' => 'string', + 'example' => 'OSS', + ], + 'Media' => [ + 'title' => '媒体值:'."\n" + .' type 为 OSS 时,为 URL, 支持 OSS 协议和 HTTP 协议;'."\n" + .' type 为 Media 时,为媒资 ID。', + 'description' => 'The media object.'."\n" + ."\n" + .'* If Type is set to OSS, set this parameter to the URL of an OSS object. Both the OSS and HTTP protocols are supported.'."\n" + .'* If Type is set to Media, set this parameter to the ID of a media asset.'."\n", + 'type' => 'string', + 'example' => 'oss://bucket/path/to/video.mp4', + ], + ], + ], + 'ProcessConfig' => [ + 'title' => '任务处理配置', + 'description' => 'The job processing configuration.'."\n", + 'type' => 'object', + 'properties' => [ + 'Transcode' => [ + 'title' => '转码配置', + 'description' => 'The transcoding configuration.'."\n", + 'type' => 'object', + 'properties' => [ + 'TemplateId' => [ + 'title' => '模板 ID。', + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'example' => '9547c6ad97cb4f2aaa29683ebd18d410', + ], + 'OverwriteParams' => [ + 'title' => '覆盖参数, 若填写会覆盖模板对应参数', + 'description' => 'The parameters that are used to overwrite the corresponding parameters of the template.'."\n", + 'type' => 'object', + 'properties' => [ + 'Video' => [ + 'title' => 'video 设置', + 'description' => 'The video settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'Codec' => [ + 'title' => '编码格式', + 'description' => 'The encoding format.'."\n", + 'type' => 'string', + 'example' => 'H.264', + ], + 'Profile' => [ + 'title' => '编码级别。'."\n" + .' 支持baseline、main、high。'."\n" + .' baseline:针对移动设备。'."\n" + .' main:针对标准分辨率设备。'."\n" + .' high:针对高分辨率设备。'."\n" + .' 默认值:high。', + 'description' => 'The encoding profile. Valid values: baseline, main, and high.'."\n" + ."\n" + .'* baseline: applicable to mobile devices.'."\n" + .'* main: applicable to standard-definition devices.'."\n" + .'* high: applicable to high-definition devices.'."\n" + ."\n" + .'Default value: high.'."\n", + 'type' => 'string', + 'example' => 'Main', + ], + 'Bitrate' => [ + 'title' => '视频平均码率。'."\n" + .' 取值范围:[10,50000]。'."\n" + .' 单位:Kbps。', + 'description' => 'The average bitrate of the video.'."\n" + ."\n" + .'* Valid values: \\[10,50000].'."\n" + .'* Unit: Kbit/s.'."\n", + 'type' => 'string', + 'example' => '3000', + ], + 'Crf' => [ + 'title' => '码率-质量控制因子。'."\n" + .' 取值范围:[0,51]。'."\n" + .' 默认值:编码格式为H264,默认值为23。编码格式为H265,默认值为26。'."\n" + .' 如果设置了Crf,则Bitrate的设置失效。', + 'description' => 'The constant rate factor.'."\n" + ."\n" + .'* Valid values: \\[0,51].'."\n" + .'* Default value: 23 if the encoding format is H.264, or Default value when the Codec parameter is set to H.265: 26.'."\n" + ."\n" + .'If this parameter is specified, the value of Bitrate becomes invalid.'."\n", + 'type' => 'string', + 'example' => '23', + ], + 'Width' => [ + 'title' => '宽。'."\n" + .' 取值范围:[128,4096]。'."\n" + .' 单位:px。'."\n" + .' 默认值:视频原始宽度。', + 'description' => 'The width of the output video.'."\n" + ."\n" + .'* Valid values: \\[128,4096].'."\n" + .'* Unit: pixels.'."\n" + .'* Default value: the width of the input video.'."\n", + 'type' => 'string', + 'example' => '1920', + ], + 'Height' => [ + 'title' => '高。'."\n" + .' 取值范围:[128,4096]。'."\n" + .' 单位:px。'."\n" + .' 默认值:视频原始高度。', + 'description' => 'The height of the output video.'."\n" + ."\n" + .'* Valid values: \\[128,4096].'."\n" + .'* Unit: pixels.'."\n" + .'* Default value: the height of the input video.'."\n", + 'type' => 'string', + 'example' => '1080', + ], + 'Fps' => [ + 'title' => '帧率。'."\n" + .' 取值范围:(0,60]。'."\n" + .' 当输入文件帧率超过60时取60。'."\n" + .' 默认值:取输入文件帧率', + 'description' => 'The frame rate.'."\n" + ."\n" + .'* Valid values: (0,60].'."\n" + .'* The value is 60 if the frame rate of the input video exceeds 60.'."\n" + .'* Default value: the frame rate of the input video.'."\n", + 'type' => 'string', + 'example' => '25', + ], + 'Gop' => [ + 'title' => '关键帧间最大帧数。'."\n" + .' 取值范围:[1,1080000]。'."\n" + .' 默认值:250。', + 'description' => 'The maximum number of frames between two keyframes.'."\n" + ."\n" + .'* Valid values: \\[1,1080000].'."\n" + .'* Default value: 250.'."\n", + 'type' => 'string', + 'example' => '250', + ], + 'Preset' => [ + 'title' => '视频算法器预置。只有H264支持该参数。'."\n" + .'支持veryfast、fast、medium、slow、slower。'."\n" + .'默认值:medium。', + 'description' => 'The preset video algorithm. This parameter takes effect only if the encoding format is H.264. Valid values: veryfast, fast, medium, slow, and slower. Default value: medium.'."\n", + 'type' => 'string', + 'example' => 'medium', + ], + 'ScanMode' => [ + 'title' => '扫描模式。'."\n" + .'支持interlaced、progressive。', + 'description' => 'The scan mode. Valid values: interlaced and progressive.'."\n", + 'type' => 'string', + 'example' => 'progressive', + ], + 'PixFmt' => [ + 'title' => '视频颜色格式。'."\n" + .' 范围:yuv420p,yuvj420p等标准颜色格式。', + 'description' => 'The pixel format of the video. Valid values: standard pixel formats such as yuv420p and yuvj420p.'."\n", + 'type' => 'string', + 'example' => 'yuv420p', + ], + 'Remove' => [ + 'title' => '是否去掉视频', + 'description' => 'Specifies whether to remove the video.'."\n", + 'type' => 'string', + 'example' => 'false', + ], + 'Crop' => [ + 'title' => '视频画面裁切'."\n" + .' 支持2种方式。'."\n" + .' 自动检测黑边并裁切,设置为“border”'."\n" + .' 自定义裁切,参数格式:width:height:left:top。'."\n" + .' 示例:1280:800:0:140', + 'description' => 'The method of video cropping. Valid values:'."\n" + ."\n" + .'* border: automatically detects and removes black bars.'."\n" + .'* A value in the width:height:left:top format: crops the videos based on the custom settings. Example: 1280:800:0:140.'."\n", + 'type' => 'string', + 'example' => '1280:800:0:140', + ], + 'Pad' => [ + 'title' => '视频贴黑边'."\n" + .' 参数格式:width:height:left:top。'."\n" + .' 示例:1280:800:0:140', + 'description' => 'The black bars added to the video.'."\n" + ."\n" + .'* Format: width:height:left:top.'."\n" + .'* Example: 1280:800:0:140.'."\n", + 'type' => 'string', + 'example' => '1280:800:0:140', + ], + 'LongShortMode' => [ + 'title' => '是否开启横竖屏自适应(即:长短边模式)', + 'description' => 'Specifies whether to enable the auto-rotate screen feature.'."\n", + 'type' => 'string', + 'example' => 'false', + ], + 'Bufsize' => [ + 'title' => '缓冲区大小'."\n" + .' 值范围:[1000,128000]'."\n" + .' 默认值:6000'."\n" + .' 单位:Kb', + 'description' => 'The buffer size.'."\n" + ."\n" + .'* Valid values: \\[1000,128000].'."\n" + .'* Default value: 6000.'."\n" + .'* Unit: KB.'."\n", + 'type' => 'string', + 'example' => '6000', + ], + 'Maxrate' => [ + 'title' => '视频码率峰值'."\n" + .' 值范围[10,50000],单位Kbps。', + 'description' => 'The maximum bitrate of the output video.'."\n" + ."\n" + .'* Valid values: \\[10,50000].'."\n" + .'* Unit: Kbit/s.'."\n", + 'type' => 'string', + 'example' => '9000', + ], + 'AbrMax' => [ + 'title' => 'abr 最大码率(只有窄高1有效)'."\n" + .'值范围[10,50000],单位Kbps。', + 'description' => 'The maximum ABR. This parameter takes effect only for Narrowband HD 1.0.'."\n" + ."\n" + .'* Valid values: \\[10,50000].'."\n" + .'* Unit: Kbit/s.'."\n", + 'type' => 'string', + 'example' => '6000', + ], + ], + ], + 'Audio' => [ + 'title' => 'audio 设置', + 'description' => 'The audio settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'Codec' => [ + 'title' => '音频编解码格式,AAC、MP3、VORBIS、FLAC。'."\n" + .' 默认值:AAC', + 'description' => 'The audio codec. Valid values: AAC, MP3, VORBIS, and FLAC. Default value: AAC.'."\n", + 'type' => 'string', + 'example' => 'AAC', + ], + 'Profile' => [ + 'title' => '音频编码预置。'."\n" + .' 当Codec为 AAC时,范围aac_low、aac_he、aac_he_v2、aac_ld、aac_eld。', + 'description' => 'The audio codec profile. If the Codec parameter is set to AAC, the valid values are aac_low, aac_he, aac_he_v2, aac_ld, and aac_eld.'."\n", + 'type' => 'string', + 'example' => 'aac_low', + ], + 'Samplerate' => [ + 'title' => '采样率。'."\n" + .' 默认值:44100'."\n" + .' 支持22050、32000、44100、48000、96000,'."\n" + .' 单位:Hz', + 'description' => 'The sampling rate.'."\n" + ."\n" + .'* Valid values: 22050, 32000, 44100, 48000, and 96000. Default value: 44100.'."\n" + .'* Unit: Hz.'."\n", + 'type' => 'string', + 'example' => '44100', + ], + 'Bitrate' => [ + 'title' => '输出文件的音频码率。'."\n" + .' 值范围:[8,1000]'."\n" + .' 单位:Kbps'."\n" + .' 默认值:128', + 'description' => 'The audio bitrate of the output file.'."\n" + ."\n" + .'* Valid values: \\[8,1000].'."\n" + .'* Unit: Kbit/s.'."\n" + .'* Default value: 128.'."\n", + 'type' => 'string', + 'example' => '128', + ], + 'Channels' => [ + 'title' => '声道数。'."\n" + .' 默认值:2', + 'description' => 'The number of sound channels. Default value: 2.'."\n", + 'type' => 'string', + 'example' => '2', + ], + 'Remove' => [ + 'title' => '是否删除音频流。', + 'description' => 'Specifies whether to delete the audio stream.'."\n", + 'type' => 'string', + 'example' => 'false', + ], + 'Volume' => [ + 'title' => '音量控制', + 'description' => 'The volume configurations.'."\n", + 'type' => 'object', + 'properties' => [ + 'Method' => [ + 'title' => '音量调整方式', + 'description' => 'The volume adjustment method. Valid values:'."\n", + 'type' => 'string', + 'example' => 'auto', + ], + 'IntegratedLoudnessTarget' => [ + 'title' => '目标音量', + 'description' => 'The output volume.'."\n", + 'type' => 'string', + 'example' => '-6', + ], + 'TruePeak' => [ + 'title' => '最大峰值', + 'description' => 'The peak volume.'."\n", + 'type' => 'string', + 'example' => '-1', + ], + 'LoudnessRangeTarget' => [ + 'title' => '音量范围', + 'description' => 'The volume range.'."\n", + 'type' => 'string', + 'example' => '8', + ], + ], + ], + ], + ], + 'Container' => [ + 'title' => '封装格式设置', + 'description' => 'The encapsulation format settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'Format' => [ + 'title' => '容器格式', + 'description' => 'The container format.'."\n", + 'type' => 'string', + 'example' => 'mp4', + ], + ], + ], + 'MuxConfig' => [ + 'title' => '封装设置', + 'description' => 'The encapsulation settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'Segment' => [ + 'title' => '切片设置', + 'description' => 'The segment settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'Duration' => [ + 'title' => '切片时长', + 'description' => 'The segment length.'."\n", + 'type' => 'string', + 'example' => '10', + ], + 'ForceSegTime' => [ + 'title' => '强制切片时间点', + 'description' => 'The forced segmentation point in time.'."\n", + 'type' => 'string', + 'example' => '2,3', + ], + ], + ], + ], + ], + 'TransConfig' => [ + 'description' => 'The conditional transcoding configurations.'."\n", + 'type' => 'object', + 'properties' => [ + 'TransMode' => [ + 'description' => 'The video transcoding mode. Valid values:'."\n" + ."\n" + .'* onepass: You can set this parameter to onepass if the Bitrate parameter is set to ABR. The encoding speed of this mode is faster than that of the twopass mode.'."\n" + .'* twopass: You can set this parameter to twopass if the Bitrate parameter is set to VBR. The encoding speed of this mode is slower than that of the onepass mode.'."\n" + .'* CBR: the constant bitrate mode.'."\n" + ."\n" + .'Default value: onepass.'."\n", + 'type' => 'string', + 'example' => 'onepass', + ], + 'IsCheckReso' => [ + 'description' => 'Specifies whether to check the video resolution. You can specify only one of the IsCheckReso and IsCheckResoFail parameters. The priority of the IsCheckResoFail parameter is higher. Valid values:'."\n" + ."\n" + .'* true: checks the video resolution. If the width or height of the input video is less than that of the output video, the resolution of the input video is used for transcoding.'."\n" + .'* false: does not check the video resolution.'."\n" + ."\n" + .'Default value: false.'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'IsCheckResoFail' => [ + 'description' => 'Specifies whether to check the video resolution. You can specify only one of the IsCheckReso and IsCheckResoFail parameters. The priority of the IsCheckResoFail parameter is higher. Valid values:'."\n" + ."\n" + .'* true: checks the video resolution. If the width or height of the input video is less than that of the output video, the transcoding job fails.'."\n" + .'* false: does not check the video resolution.'."\n" + ."\n" + .'Default value: false.'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'IsCheckVideoBitrate' => [ + 'description' => 'Specifies whether to check the video bitrate. You can specify only one of the IsCheckVideoBitrate and IsCheckVideoBitrateFail parameters. The priority of the IsCheckVideoBitrateFail parameter is higher. Valid values:'."\n" + ."\n" + .'* true: checks the video resolution. If the bitrate of the input video is less than that of the output video, the bitrate of the input video is used for transcoding.'."\n" + .'* false: does not check the video resolution.'."\n" + ."\n" + .'Default value: false.'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'IsCheckVideoBitrateFail' => [ + 'description' => 'Specifies whether to check the video bitrate. You can specify only one of the IsCheckVideoBitrate and IsCheckVideoBitrateFail parameters. The priority of the IsCheckVideoBitrateFail parameter is higher. Valid values:'."\n" + ."\n" + .'* true: checks the video resolution. If the bitrate of the input video is less than that of the output video, the transcoding job fails.'."\n" + .'* false: does not check the video resolution.'."\n" + ."\n" + .'Default value: false.'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'IsCheckAudioBitrate' => [ + 'description' => 'Specifies whether to check the audio bitrate. You can specify only one of the IsCheckAudioBitrate and IsCheckAudioBitrateFail parameters. The priority of the IsCheckAudioBitrateFail parameter is higher. Valid values:'."\n" + ."\n" + .'* true: checks the video resolution. If the bitrate of the input audio is less than that of the output audio, the bitrate of the input audio is used for transcoding.'."\n" + .'* false: does not check the video resolution.'."\n" + ."\n" + .'Default value:'."\n" + ."\n" + .'* If this parameter is not specified and the codec of the output audio is different from that of the input audio, the default value is false.'."\n" + .'* If this parameter is not specified and the codec of the output audio is the same as that of the input audio, the default value is true.'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'IsCheckAudioBitrateFail' => [ + 'description' => 'Specifies whether to check the audio bitrate. You can specify only one of the IsCheckAudioBitrate and IsCheckAudioBitrateFail parameters. The priority of the IsCheckAudioBitrateFail parameter is higher. Valid values:'."\n" + ."\n" + .'* true: checks the video resolution. If the bitrate of the input audio is less than that of the output audio, the transcoding job fails.'."\n" + .'* false: does not check the video resolution.'."\n" + ."\n" + .'Default value: false.'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'AdjDarMethod' => [ + 'description' => 'The method that is used to adjust the resolution. This parameter takes effect only if both the Width and Height parameters are specified. You can use this parameter together with the LongShortMode parameter.'."\n" + ."\n" + .'Valid values: rescale, crop, pad, and none.'."\n" + ."\n" + .'Default value: none.'."\n", + 'type' => 'string', + 'example' => 'none', + ], + ], + ], + ], + ], + ], + ], + 'ImageWatermarks' => [ + 'title' => '图片水印配置', + 'description' => 'The watermark configuration of an image.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The watermark configuration of an image.'."\n", + 'type' => 'object', + 'properties' => [ + 'TemplateId' => [ + 'title' => '模板 ID。', + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'example' => '9547c6ad97cb4f2aaa29683ebd18d410', + ], + 'OverwriteParams' => [ + 'title' => '覆盖参数, 若填写会覆盖模板对应参数', + 'description' => 'The parameters that are used to overwrite the corresponding parameters of the template.'."\n", + 'type' => 'object', + 'properties' => [ + 'Width' => [ + 'title' => '输出视频上水印图片宽。'."\n" + .'值有两种形式:'."\n" + ."\n" + .'- 整数型代水印图片宽的像素值。'."\n" + .' - 范围:[8,4096]'."\n" + .' - 单位:px'."\n" + .'- 小数型代表相对输出视频分辨率宽的比率。'."\n" + .' - 范围:(0,1)'."\n" + .' - 支持4位小数,如0.9999,超出部分系统自动丢弃。', + 'description' => 'The width of the watermark in the output video. The following value types are supported:'."\n" + ."\n" + .'* Integer: the pixel value of the watermark width.'."\n" + ."\n" + .' * Valid values: \\[8,4096].'."\n" + .' * Unit: pixels.'."\n" + ."\n" + .'* Decimal: the ratio of the watermark width to the width of the output video.'."\n" + ."\n" + .' * Valid values: (0,1).'."\n" + .' * The decimal number can be accurate to four decimal places, such as 0.9999. Excessive digits are automatically discarded.'."\n", + 'type' => 'string', + 'example' => '32', + ], + 'Height' => [ + 'title' => '输出视频上水印图片高。'."\n" + .'值有两种形式:'."\n" + ."\n" + .'- 整数型代水印图片高的像素值。'."\n" + .' - 范围:[8,4096]'."\n" + .' - 单位:px'."\n" + .'- 小数型代表相对输出视频分辨率高的比率。'."\n" + .' - 范围:(0,1)'."\n" + .' - 支持4位小数,如0.9999,超出部分系统自动丢弃。', + 'description' => 'The height of the watermark image in the output video. The following value types are supported:'."\n" + ."\n" + .'* Integer: the pixel value of the watermark height.'."\n" + ."\n" + .' * Valid values: \\[8,4096].'."\n" + .' * Unit: pixels.'."\n" + ."\n" + .'* Decimal: the ratio of the watermark height to the height of the output video.'."\n" + ."\n" + .' * Valid values: (0,1).'."\n" + .' * The decimal number can be accurate to four decimal places, such as 0.9999. Excessive digits are automatically discarded.'."\n", + 'type' => 'string', + 'example' => '32', + ], + 'Dx' => [ + 'title' => '水印图片相对输出视频的水平偏移量。'."\n" + .'默认值:0'."\n" + ."\n" + .'值有两种形式:'."\n" + .'- 整数型代表偏移像素。'."\n" + .' - 范围:[8,4096]'."\n" + .' - 单位:px'."\n" + .'- 小数型代表水平偏移量与输出分辨率宽的比率。'."\n" + .' - 范围:(0,1)'."\n" + .' - 支持4位小数,如0.9999,超出部分系统自动丢弃', + 'description' => 'The horizontal offset of the watermark relative to the output video. Default value: 0.'."\n" + ."\n" + .'The following value types are supported:'."\n" + ."\n" + .'* Integer: the pixel value of the horizontal offset.'."\n" + ."\n" + .' * Valid values: \\[8,4096].'."\n" + .' * Unit: pixels.'."\n" + ."\n" + .'* Decimal: the ratio of the horizontal offset to the width of the output video.'."\n" + ."\n" + .' * Valid values: (0,1).'."\n" + .' * The decimal number can be accurate to four decimal places, such as 0.9999. Excessive digits are automatically discarded.'."\n", + 'type' => 'string', + 'example' => '10', + ], + 'Dy' => [ + 'title' => '水印图片相对输出视频的垂直偏移量。'."\n" + .'默认值:0'."\n" + ."\n" + .'值有两种形式:'."\n" + .'- 整数型代表偏移像素。'."\n" + .' - 范围[8,4096]'."\n" + .' - 单位:px'."\n" + .'- 小数型代表垂直偏移量与输出分辨率高的比率。'."\n" + .' - 范围:(0,1)'."\n" + .' - 支持4位小数,如0.9999,超出部分系统自动丢弃', + 'description' => 'The vertical offset of the watermark relative to the output video. Default value: 0.'."\n" + ."\n" + .'The following value types are supported:'."\n" + ."\n" + .'* Integer: the pixel value of the horizontal offset.'."\n" + ."\n" + .' * Valid values: \\[8,4096].'."\n" + .' * Unit: pixels.'."\n" + ."\n" + .'* Decimal: the ratio of the vertical offset to the height of the output video.'."\n" + ."\n" + .' * Valid values: (0,1).'."\n" + .' * The decimal number can be accurate to four decimal places, such as 0.9999. Excessive digits are automatically discarded.'."\n", + 'type' => 'string', + 'example' => '10', + ], + 'ReferPos' => [ + 'title' => '水印的位置。'."\n" + .'- 可取值:TopRight(右上)、TopLeft(左上)、BottomRight(右下)、BottomLeft(左下)'."\n" + .'- 默认值:TopRight', + 'description' => 'The position of the watermark.'."\n" + ."\n" + .'* Valid values: TopRight, TopLeft, BottomRight, and BottomLeft.'."\n" + .'* Default value: TopRight.'."\n", + 'type' => 'string', + 'example' => 'TopLeft', + ], + 'Timeline' => [ + 'title' => '动态水印,显示时间设置。', + 'description' => 'The time settings of the dynamic watermark.'."\n", + 'type' => 'object', + 'properties' => [ + 'Start' => [ + 'title' => '水印开始出现时间。'."\n" + .'- 单位:秒'."\n" + .'- 取值范围:数字'."\n" + .'- 默认值:0', + 'description' => 'The beginning of the time range in which the watermark is displayed.'."\n" + ."\n" + .'* Unit: seconds.'."\n" + .'* Value values: integers.'."\n" + .'* Default value: 0.'."\n", + 'type' => 'string', + 'example' => '00:00:05', + ], + 'Duration' => [ + 'title' => '水印持续时间。'."\n" + .'- 取值范围:[数字,ToEND]'."\n" + .'- 默认值:ToEND', + 'description' => 'The time range in which the watermark is displayed.'."\n" + ."\n" + .'* Valid values: integers and ToEND.'."\n" + .'* Default value: ToEND.'."\n", + 'type' => 'string', + 'example' => 'ToEND', + ], + ], + ], + 'File' => [ + 'title' => '水印图片文件。', + 'description' => 'The watermark image file.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'title' => '媒体对象类型。'."\n" + .'取值: '."\n" + .'- OSS: OSS文件。'."\n" + .'- Media: 媒资 ID。'."\n", + 'description' => 'The type of the media object. Valid values:'."\n" + ."\n" + .'* OSS: an OSS object.'."\n" + .'* Media: a media asset.'."\n", + 'type' => 'string', + 'example' => 'OSS', + ], + 'Media' => [ + 'title' => '媒体值:'."\n" + .' type 为 OSS 时,为 URL, 支持 OSS 协议和 HTTP 协议;'."\n" + .' type 为 Media 时,为媒资 ID。', + 'description' => 'The media object.'."\n" + ."\n" + .'* If Type is set to OSS, set this parameter to the URL of an OSS object. Both the OSS and HTTP protocols are supported.'."\n" + .'* If Type is set to Media, set this parameter to the ID of a media asset.'."\n", + 'type' => 'string', + 'example' => 'oss://bucket/path/to/video.mp4', + ], + ], + ], + ], + ], + ], + ], + ], + 'TextWatermarks' => [ + 'title' => '文字水印配置', + 'description' => 'The configurations of the text watermark.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The configurations of the text watermark.'."\n", + 'type' => 'object', + 'properties' => [ + 'TemplateId' => [ + 'title' => '模板 ID。', + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'example' => '9547c6ad97cb4f2aaa29683ebd18d410', + ], + 'OverwriteParams' => [ + 'title' => '覆盖参数, 若填写会覆盖模板对应参数', + 'description' => 'The parameters that are used to overwrite the corresponding parameters of the template.'."\n", + 'type' => 'object', + 'properties' => [ + 'Content' => [ + 'title' => '水印文本,不需要 base64 encode,字符串需要 utf-8 编码。', + 'description' => 'The watermark text. Base64 encoding is not required. The string must be encoded in UTF-8.'."\n", + 'type' => 'string', + 'example' => '测试水印', + ], + 'FontName' => [ + 'title' => '字体。默认:SimSun。', + 'description' => 'The font of the text. Default value: SimSun.'."\n", + 'type' => 'string', + 'example' => 'SimSun', + ], + 'FontColor' => [ + 'title' => '颜色。', + 'description' => 'The color of the text.'."\n", + 'type' => 'string', + 'example' => '#006400', + ], + 'FontAlpha' => [ + 'title' => '字体透明度。'."\n" + .'- 范围:(0, 1]'."\n" + .'- 默认:1.0', + 'description' => 'The transparency of the text.'."\n" + ."\n" + .'* Valid values: (0,1].'."\n" + .'* Default value: 1.'."\n", + 'type' => 'string', + 'example' => '1.0', + ], + 'Top' => [ + 'title' => '文本上边距。'."\n" + .'- 默认:0'."\n" + .'- 范围:[0,4096]'."\n", + 'description' => 'The top margin of the text.'."\n" + ."\n" + .'* Default value: 0.'."\n" + .'* Valid values: \\[0,4096].'."\n", + 'type' => 'string', + 'example' => '10', + ], + 'Left' => [ + 'title' => '文本左边距。'."\n" + .'- 默认:0'."\n" + .'- 范围:[0,4096]', + 'description' => 'The left margin of the text watermark.'."\n" + ."\n" + .'* Default value: 0.'."\n" + .'* Valid values: \\[0,4096].'."\n", + 'type' => 'string', + 'example' => '10', + ], + 'FontSize' => [ + 'title' => '字体大小。'."\n" + .'- 默认值:16'."\n" + .'- 范围:(4, 120)', + 'description' => 'The size of the text.'."\n" + ."\n" + .'* Default value: 16.'."\n" + .'* Valid values: (4,120).'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '16', + ], + 'BorderWidth' => [ + 'title' => '描边宽度。'."\n" + .'- 默认:0'."\n" + .'- 范围:(0,4096]', + 'description' => 'The outline width of the text watermark.'."\n" + ."\n" + .'* Default value: 0.'."\n" + .'* Valid values: (0,4096].'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'BorderColor' => [ + 'title' => '描边颜色。'."\n" + .'默认:Black'."\n" + .'更多取值请参见BorderColor。', + 'description' => 'The outline color of the text watermark. Default value: black. For more information, see BorderColor.'."\n", + 'type' => 'string', + 'example' => '#006400', + ], + 'Adaptive' => [ + 'title' => '根据输出视频大小调整字体 size。 true / false, default: false', + 'description' => 'Specifies whether to the font size based on the output video dimensions.'."\n" + ."\n" + .'* true: false'."\n" + .'* default: false'."\n", + 'type' => 'string', + 'example' => 'false', + ], + ], + ], + ], + ], + ], + 'Subtitles' => [ + 'title' => '字幕压制配置', + 'description' => 'The subtitle configuration.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The subtitle configuration.'."\n", + 'type' => 'object', + 'properties' => [ + 'TemplateId' => [ + 'title' => '模板 ID。', + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'example' => '9547c6ad97cb4f2aaa29683ebd18d410', + ], + 'OverwriteParams' => [ + 'title' => '覆盖参数, 若填写会覆盖模板对应参数', + 'description' => 'The parameters that are used to overwrite the corresponding parameters of the template.'."\n", + 'type' => 'object', + 'properties' => [ + 'Format' => [ + 'title' => '字幕文件格式。', + 'description' => 'The format of the subtitle file.'."\n", + 'type' => 'string', + 'example' => 'vtt', + ], + 'CharEnc' => [ + 'title' => '文件 encoding 格式。', + 'description' => 'The file encoding format.'."\n", + 'type' => 'string', + 'example' => 'UTF-8', + ], + 'File' => [ + 'title' => '字幕文件。', + 'description' => 'The subtitle file.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'title' => '媒体对象类型。'."\n" + .'取值: '."\n" + .'- OSS: OSS文件。'."\n" + .'- Media: 媒资 ID。'."\n", + 'description' => 'The type of the media object. Valid values:'."\n" + ."\n" + .'* OSS: an OSS object.'."\n" + .'* Media: a media asset.'."\n", + 'type' => 'string', + 'example' => 'OSS', + ], + 'Media' => [ + 'title' => '媒体值:'."\n" + .' type 为 OSS 时,为 URL, 支持 OSS 协议和 HTTP 协议;'."\n" + .' type 为 Media 时,为媒资 ID。', + 'description' => 'The media object. If Type is set to OSS, set this parameter to the URL of an OSS object. Both the OSS and HTTP protocols are supported. If Type is set to Media, set this parameter to the ID of a media asset.'."\n", + 'type' => 'string', + 'example' => 'oss://bucket/path/to/video.mp4', + ], + ], + ], + ], + ], + ], + ], + ], + 'Encryption' => [ + 'title' => '加密配置。', + 'description' => 'The encryption settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'EncryptType' => [ + 'title' => '加密类型。', + 'description' => 'Specifies the encryption type.'."\n", + 'type' => 'string', + 'example' => 'PrivateEncryption', + ], + 'CipherText' => [ + 'title' => '标准加密的密钥密文。', + 'description' => 'The ciphertext of HLS encryption.'."\n", + 'type' => 'string', + 'example' => 'MTYi00NDU0LTg5O****', + ], + 'DecryptKeyUri' => [ + 'title' => '标准加密的解密服务地址。', + 'description' => 'The address of the decryption service for HLS encryption.'."\n", + 'type' => 'string', + 'example' => 'https://sample.com/path?CipherText=MTYi00NDU0LTg5O****', + ], + 'KeyServiceType' => [ + 'title' => '密钥服务类型。目前仅支持KMS和Base64', + 'description' => 'The type of the key service. Valid values: KMS and Base64.'."\n", + 'type' => 'string', + 'example' => 'KMS', + ], + ], + ], + 'CombineConfigs' => [ + 'title' => '多输入合流配置', + 'description' => 'The multi-input stream merge configuration.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The multi-input stream merge configuration.'."\n", + 'type' => 'object', + 'properties' => [ + 'AudioIndex' => [ + 'title' => '音频流Index', + 'description' => 'The audio stream index.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '0 或 exclude', + ], + 'VideoIndex' => [ + 'title' => '视频流Index', + 'description' => 'The video stream index.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '0 或 exclude', + ], + 'Start' => [ + 'title' => '输入流的开始时间。 默认为0', + 'description' => 'The start time of the input stream. Default value: 0.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => '0.0', + ], + 'Duration' => [ + 'title' => '输入流的持续时间。 默认为视频时长。', + 'description' => 'The duration of the input stream. The default value is the duration of the video.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => '20.0', + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'UserData' => [ + 'title' => '用户数据。', + 'description' => 'The user data.'."\n", + 'type' => 'string', + 'example' => 'user-data', + ], + 'ScheduleConfig' => [ + 'title' => '任务调度配置。', + 'description' => 'The scheduling configuration of the job.'."\n", + 'type' => 'object', + 'properties' => [ + 'PipelineId' => [ + 'title' => '管道 ID。', + 'description' => 'The ID of the MPS queue to which the job was submitted.'."\n", + 'type' => 'string', + 'example' => 'e37ebee5d98b4781897f6086e89f9c56', + ], + 'Priority' => [ + 'title' => '任务优先级。数字越大优先级越高,取值范围:1~10', + 'description' => 'The priority of the job. Valid values: 1 to 10. The greater the value, the higher the priority.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '5', + ], + ], + ], + ], + ], + ], + 'description' => '', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"31E30781-9495-5E2D-A84D-759B0A01E262\\",\\n \\"TranscodeParentJob\\": {\\n \\"TranscodeJobList\\": [\\n {\\n \\"CreateTime\\": \\"2022-01-12T08:49:41Z\\",\\n \\"Name\\": \\"transcode-job\\",\\n \\"ParentJobId\\": \\"8b2198504dd340b7b3c9842a74fc9baa\\",\\n \\"JobId\\": \\"7d6a7e0d4db2457a8d45ff5d43e1bf0a\\",\\n \\"JobIndex\\": 0,\\n \\"InputGroup\\": [\\n {\\n \\"Type\\": \\"OSS\\",\\n \\"Media\\": \\"oss://bucket/path/to/video.mp4\\",\\n \\"InputUrl\\": \\"oss://bucket/path/to/video.mp4\\\\n\\"\\n }\\n ],\\n \\"ProcessConfig\\": {\\n \\"Transcode\\": {\\n \\"TemplateId\\": \\"9547c6ad97cb4f2aaa29683ebd18d410\\",\\n \\"OverwriteParams\\": {\\n \\"Video\\": {\\n \\"Codec\\": \\"H.264\\",\\n \\"Profile\\": \\"Main\\",\\n \\"Bitrate\\": \\"3000\\",\\n \\"Crf\\": \\"23\\",\\n \\"Width\\": \\"1920\\",\\n \\"Height\\": \\"1080\\",\\n \\"Fps\\": \\"25\\",\\n \\"Gop\\": \\"250\\",\\n \\"Preset\\": \\"medium\\",\\n \\"ScanMode\\": \\"progressive\\",\\n \\"PixFmt\\": \\"yuv420p\\",\\n \\"Remove\\": \\"false\\",\\n \\"Crop\\": \\"1280:800:0:140\\",\\n \\"Pad\\": \\"1280:800:0:140\\",\\n \\"LongShortMode\\": \\"false\\",\\n \\"Bufsize\\": \\"6000\\",\\n \\"Maxrate\\": \\"9000\\",\\n \\"AbrMax\\": \\"6000\\"\\n },\\n \\"Audio\\": {\\n \\"Codec\\": \\"AAC\\",\\n \\"Profile\\": \\"aac_low\\",\\n \\"Samplerate\\": \\"44100\\",\\n \\"Bitrate\\": \\"128\\",\\n \\"Channels\\": \\"2\\",\\n \\"Remove\\": \\"false\\",\\n \\"Volume\\": {\\n \\"Method\\": \\"auto\\",\\n \\"IntegratedLoudnessTarget\\": \\"-6\\",\\n \\"TruePeak\\": \\"-1\\",\\n \\"LoudnessRangeTarget\\": \\"8\\"\\n }\\n },\\n \\"Container\\": {\\n \\"Format\\": \\"mp4\\"\\n },\\n \\"MuxConfig\\": {\\n \\"Segment\\": {\\n \\"Duration\\": \\"10\\",\\n \\"ForceSegTime\\": \\"2,3\\"\\n }\\n },\\n \\"TransConfig\\": {\\n \\"TransMode\\": \\"onepass\\",\\n \\"IsCheckReso\\": \\"true\\",\\n \\"IsCheckResoFail\\": \\"true\\",\\n \\"IsCheckVideoBitrate\\": \\"true\\",\\n \\"IsCheckVideoBitrateFail\\": \\"true\\",\\n \\"IsCheckAudioBitrate\\": \\"true\\",\\n \\"IsCheckAudioBitrateFail\\": \\"true\\",\\n \\"AdjDarMethod\\": \\"none\\"\\n }\\n }\\n },\\n \\"ImageWatermarks\\": [\\n {\\n \\"TemplateId\\": \\"9547c6ad97cb4f2aaa29683ebd18d410\\",\\n \\"OverwriteParams\\": {\\n \\"Width\\": \\"32\\",\\n \\"Height\\": \\"32\\",\\n \\"Dx\\": \\"10\\",\\n \\"Dy\\": \\"10\\",\\n \\"ReferPos\\": \\"TopLeft\\",\\n \\"Timeline\\": {\\n \\"Start\\": \\"00:00:05\\",\\n \\"Duration\\": \\"ToEND\\"\\n },\\n \\"File\\": {\\n \\"Type\\": \\"OSS\\",\\n \\"Media\\": \\"oss://bucket/path/to/video.mp4\\"\\n }\\n }\\n }\\n ],\\n \\"TextWatermarks\\": [\\n {\\n \\"TemplateId\\": \\"9547c6ad97cb4f2aaa29683ebd18d410\\",\\n \\"OverwriteParams\\": {\\n \\"Content\\": \\"测试水印\\",\\n \\"FontName\\": \\"SimSun\\",\\n \\"FontColor\\": \\"#006400\\",\\n \\"FontAlpha\\": \\"1.0\\",\\n \\"Top\\": \\"10\\",\\n \\"Left\\": \\"10\\",\\n \\"FontSize\\": 16,\\n \\"BorderWidth\\": 0,\\n \\"BorderColor\\": \\"#006400\\",\\n \\"Adaptive\\": \\"false\\"\\n }\\n }\\n ],\\n \\"Subtitles\\": [\\n {\\n \\"TemplateId\\": \\"9547c6ad97cb4f2aaa29683ebd18d410\\",\\n \\"OverwriteParams\\": {\\n \\"Format\\": \\"vtt\\",\\n \\"CharEnc\\": \\"UTF-8\\",\\n \\"File\\": {\\n \\"Type\\": \\"OSS\\",\\n \\"Media\\": \\"oss://bucket/path/to/video.mp4\\"\\n }\\n }\\n }\\n ],\\n \\"Encryption\\": {\\n \\"EncryptType\\": \\"PrivateEncryption\\",\\n \\"CipherText\\": \\"MTYi00NDU0LTg5O****\\",\\n \\"DecryptKeyUri\\": \\"https://sample.com/path?CipherText=MTYi00NDU0LTg5O****\\",\\n \\"KeyServiceType\\": \\"KMS\\"\\n },\\n \\"CombineConfigs\\": [\\n {\\n \\"AudioIndex\\": \\"0 或 exclude\\",\\n \\"VideoIndex\\": \\"0 或 exclude\\",\\n \\"Start\\": 0,\\n \\"Duration\\": 20\\n }\\n ]\\n },\\n \\"Output\\": {\\n \\"Type\\": \\"OSS\\",\\n \\"Media\\": \\"oss://bucket/path/to/video.mp4\\",\\n \\"OutputUrl\\": \\"oss://bucket/path/to/{MediaId}/{JobId}.mp4\\\\n\\"\\n },\\n \\"UserData\\": \\"user-data\\",\\n \\"ScheduleConfig\\": {\\n \\"PipelineId\\": \\"e37ebee5d98b4781897f6086e89f9c56\\",\\n \\"Priority\\": 5\\n },\\n \\"Status\\": \\"Init\\",\\n \\"OutFileMeta\\": {\\n \\"FileBasicInfo\\": {\\n \\"MediaId\\": \\"73e07de0f77171eca3fc7035d0b26402\\",\\n \\"FileName\\": \\"file.m3u8\\",\\n \\"FileStatus\\": \\"Normal\\",\\n \\"FileType\\": \\"source_file\\",\\n \\"FileSize\\": \\"31737\\",\\n \\"FileUrl\\": \\"http://bucket.oss-cn-shanghai.aliyuncs.com/path/to/file.m3u8\\",\\n \\"Region\\": \\"cn-shanghai\\",\\n \\"FormatName\\": \\"hls,applehttp\\",\\n \\"Duration\\": \\"403.039999\\",\\n \\"Bitrate\\": \\"888.563\\",\\n \\"Width\\": \\"848\\",\\n \\"Height\\": \\"478\\"\\n },\\n \\"AudioStreamInfoList\\": [\\n {\\n \\"Index\\": \\"1\\",\\n \\"CodecName\\": \\"aac\\",\\n \\"CodecLongName\\": \\"AAC (Advanced Audio Coding)\\",\\n \\"CodecTimeBase\\": \\"1/44100\\",\\n \\"CodecTagString\\": \\"[15][0][0][0]\\",\\n \\"CodecTag\\": \\"0x000f\\",\\n \\"SampleFmt\\": \\"fltp\\",\\n \\"SampleRate\\": \\"44100\\",\\n \\"Channels\\": \\"2\\",\\n \\"ChannelLayout\\": \\"stereo\\",\\n \\"Timebase\\": \\"1/90000\\",\\n \\"StartTime\\": \\"1.473556\\",\\n \\"Duration\\": \\"403.039989\\",\\n \\"Bitrate\\": \\"0.f\\",\\n \\"Lang\\": \\"cn\\"\\n }\\n ],\\n \\"VideoStreamInfoList\\": [\\n {\\n \\"Index\\": \\"0\\",\\n \\"Codec_name\\": \\"h264\\",\\n \\"Codec_long_name\\": \\"H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10\\",\\n \\"Profile\\": \\"High\\",\\n \\"Codec_time_base\\": \\"1/50\\",\\n \\"Codec_tag_string\\": \\"[27][0][0][0]\\",\\n \\"Codec_tag\\": \\"0x001b\\",\\n \\"Width\\": \\"848\\",\\n \\"Height\\": \\"478\\",\\n \\"Has_b_frames\\": \\"2\\",\\n \\"Sar\\": \\"478:477\\",\\n \\"Dar\\": \\"16:9\\",\\n \\"PixFmt\\": \\"yuv420p\\",\\n \\"Level\\": \\"31\\",\\n \\"Fps\\": \\"25.0\\",\\n \\"Avg_fps\\": \\"25.0\\",\\n \\"Time_base\\": \\"1/90000\\",\\n \\"Start_time\\": \\"1.473556\\",\\n \\"Duration\\": \\"403.039989\\",\\n \\"Bit_rate\\": \\"888.563\\",\\n \\"NumFrames\\": \\"10040\\",\\n \\"Lang\\": \\"cn\\",\\n \\"Rotate\\": \\"0\\"\\n }\\n ]\\n },\\n \\"SubmitResultJson\\": {},\\n \\"SubmitTime\\": \\"2022-01-12T08:49:41Z\\",\\n \\"FinishTime\\": \\"2022-01-12T08:49:41Z\\",\\n \\"RequestId\\": \\"31E30781-9495-5E2D-A84D-759B0A01E262\\"\\n }\\n ],\\n \\"CreateTime\\": \\"2022-01-12T08:49:41Z\\",\\n \\"Name\\": \\"transcode-job\\",\\n \\"RequestId\\": \\"31E30781-9495-5E2D-A84D-759B0A01E262\\",\\n \\"ParentJobId\\": \\"8b2198504dd340b7b3c9842a74fc9baa\\",\\n \\"JobCount\\": 1,\\n \\"Status\\": \\"Success\\",\\n \\"TriggerSource\\": \\"API\\",\\n \\"Percent\\": 0,\\n \\"SubmitTime\\": \\"2022-01-12T08:49:41Z\\",\\n \\"FinishTime\\": \\"2022-01-12T08:49:41Z\\",\\n \\"InputGroup\\": [\\n {\\n \\"Type\\": \\"OSS\\",\\n \\"Media\\": \\"oss://bucket/path/to/video.mp4\\"\\n }\\n ],\\n \\"OutputGroup\\": [\\n {\\n \\"Output\\": {\\n \\"Type\\": \\"OSS\\",\\n \\"Media\\": \\"oss://bucket/path/to/video.mp4\\"\\n },\\n \\"ProcessConfig\\": {\\n \\"Transcode\\": {\\n \\"TemplateId\\": \\"9547c6ad97cb4f2aaa29683ebd18d410\\",\\n \\"OverwriteParams\\": {\\n \\"Video\\": {\\n \\"Codec\\": \\"H.264\\",\\n \\"Profile\\": \\"Main\\",\\n \\"Bitrate\\": \\"3000\\",\\n \\"Crf\\": \\"23\\",\\n \\"Width\\": \\"1920\\",\\n \\"Height\\": \\"1080\\",\\n \\"Fps\\": \\"25\\",\\n \\"Gop\\": \\"250\\",\\n \\"Preset\\": \\"medium\\",\\n \\"ScanMode\\": \\"progressive\\",\\n \\"PixFmt\\": \\"yuv420p\\",\\n \\"Remove\\": \\"false\\",\\n \\"Crop\\": \\"1280:800:0:140\\",\\n \\"Pad\\": \\"1280:800:0:140\\",\\n \\"LongShortMode\\": \\"false\\",\\n \\"Bufsize\\": \\"6000\\",\\n \\"Maxrate\\": \\"9000\\",\\n \\"AbrMax\\": \\"6000\\"\\n },\\n \\"Audio\\": {\\n \\"Codec\\": \\"AAC\\",\\n \\"Profile\\": \\"aac_low\\",\\n \\"Samplerate\\": \\"44100\\",\\n \\"Bitrate\\": \\"128\\",\\n \\"Channels\\": \\"2\\",\\n \\"Remove\\": \\"false\\",\\n \\"Volume\\": {\\n \\"Method\\": \\"auto\\",\\n \\"IntegratedLoudnessTarget\\": \\"-6\\",\\n \\"TruePeak\\": \\"-1\\",\\n \\"LoudnessRangeTarget\\": \\"8\\"\\n }\\n },\\n \\"Container\\": {\\n \\"Format\\": \\"mp4\\"\\n },\\n \\"MuxConfig\\": {\\n \\"Segment\\": {\\n \\"Duration\\": \\"10\\",\\n \\"ForceSegTime\\": \\"2,3\\"\\n }\\n },\\n \\"TransConfig\\": {\\n \\"TransMode\\": \\"onepass\\",\\n \\"IsCheckReso\\": \\"true\\",\\n \\"IsCheckResoFail\\": \\"true\\",\\n \\"IsCheckVideoBitrate\\": \\"true\\",\\n \\"IsCheckVideoBitrateFail\\": \\"true\\",\\n \\"IsCheckAudioBitrate\\": \\"true\\",\\n \\"IsCheckAudioBitrateFail\\": \\"true\\",\\n \\"AdjDarMethod\\": \\"none\\"\\n }\\n }\\n },\\n \\"ImageWatermarks\\": [\\n {\\n \\"TemplateId\\": \\"9547c6ad97cb4f2aaa29683ebd18d410\\",\\n \\"OverwriteParams\\": {\\n \\"Width\\": \\"32\\",\\n \\"Height\\": \\"32\\",\\n \\"Dx\\": \\"10\\",\\n \\"Dy\\": \\"10\\",\\n \\"ReferPos\\": \\"TopLeft\\",\\n \\"Timeline\\": {\\n \\"Start\\": \\"00:00:05\\",\\n \\"Duration\\": \\"ToEND\\"\\n },\\n \\"File\\": {\\n \\"Type\\": \\"OSS\\",\\n \\"Media\\": \\"oss://bucket/path/to/video.mp4\\"\\n }\\n }\\n }\\n ],\\n \\"TextWatermarks\\": [\\n {\\n \\"TemplateId\\": \\"9547c6ad97cb4f2aaa29683ebd18d410\\",\\n \\"OverwriteParams\\": {\\n \\"Content\\": \\"测试水印\\",\\n \\"FontName\\": \\"SimSun\\",\\n \\"FontColor\\": \\"#006400\\",\\n \\"FontAlpha\\": \\"1.0\\",\\n \\"Top\\": \\"10\\",\\n \\"Left\\": \\"10\\",\\n \\"FontSize\\": 16,\\n \\"BorderWidth\\": 0,\\n \\"BorderColor\\": \\"#006400\\",\\n \\"Adaptive\\": \\"false\\"\\n }\\n }\\n ],\\n \\"Subtitles\\": [\\n {\\n \\"TemplateId\\": \\"9547c6ad97cb4f2aaa29683ebd18d410\\",\\n \\"OverwriteParams\\": {\\n \\"Format\\": \\"vtt\\",\\n \\"CharEnc\\": \\"UTF-8\\",\\n \\"File\\": {\\n \\"Type\\": \\"OSS\\",\\n \\"Media\\": \\"oss://bucket/path/to/video.mp4\\"\\n }\\n }\\n }\\n ],\\n \\"Encryption\\": {\\n \\"EncryptType\\": \\"PrivateEncryption\\",\\n \\"CipherText\\": \\"MTYi00NDU0LTg5O****\\",\\n \\"DecryptKeyUri\\": \\"https://sample.com/path?CipherText=MTYi00NDU0LTg5O****\\",\\n \\"KeyServiceType\\": \\"KMS\\"\\n },\\n \\"CombineConfigs\\": [\\n {\\n \\"AudioIndex\\": \\"0 或 exclude\\",\\n \\"VideoIndex\\": \\"0 或 exclude\\",\\n \\"Start\\": 0,\\n \\"Duration\\": 20\\n }\\n ]\\n }\\n }\\n ],\\n \\"UserData\\": \\"user-data\\",\\n \\"ScheduleConfig\\": {\\n \\"PipelineId\\": \\"e37ebee5d98b4781897f6086e89f9c56\\",\\n \\"Priority\\": 5\\n }\\n }\\n}","type":"json"}]', + 'title' => 'SubmitTranscodeJob', + 'summary' => 'Submits a transcoding job.', + ], + 'GetTranscodeJob' => [ + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'ParentJobId', + 'in' => 'query', + 'schema' => [ + 'title' => '任务 ID', + 'description' => 'The job ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'ab4802364a2e49208c99efab82dfa8e8', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求 id', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '9EDC30DC-0050-5459-B788-F761B2BE359B', + ], + 'TranscodeParentJob' => [ + 'title' => 'TranscodeParentJobWithSubJobDTO', + 'description' => 'TranscodeParentJobWithSubJobDTO'."\n", + 'type' => 'object', + 'properties' => [ + 'TranscodeJobList' => [ + 'title' => '子任务列表', + 'description' => 'The list of subjobs.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The subjob.'."\n", + 'type' => 'object', + 'properties' => [ + 'CreateTime' => [ + 'title' => '任务创建时间', + 'description' => 'The time when the job was created.'."\n", + 'type' => 'string', + 'example' => '2022-01-12T08:49:41Z', + ], + 'Name' => [ + 'title' => '任务名', + 'description' => 'The job name.'."\n", + 'type' => 'string', + 'example' => 'transcode-job', + ], + 'ParentJobId' => [ + 'title' => '主任务 ID', + 'description' => 'The main job ID.'."\n", + 'type' => 'string', + 'example' => '8b2198504dd340b7b3c9842a74fc9baa', + ], + 'JobId' => [ + 'title' => '子任务 ID', + 'description' => 'The subjob ID.'."\n", + 'type' => 'string', + 'example' => '7d6a7e0d4db2457a8d45ff5d43e1bf0a', + ], + 'JobIndex' => [ + 'title' => '子任务在整个任务中的索引号', + 'description' => 'The index number of the subjob in the entire job.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'InputGroup' => [ + 'title' => '任务输入组。单输入时为转码任务,多输入时为合流任务。', + 'description' => 'The input group of the job. An input of a single file indicates a transcoding job. An input of multiple files indicates an audio and video stream merge job.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The information about the job input.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'title' => '媒体对象类型。'."\n" + .'取值: '."\n" + .'- OSS: OSS文件。'."\n" + .'- Media: 媒资 ID。'."\n", + 'description' => 'The type of the media object. Valid values:'."\n" + ."\n" + .'* OSS: an Object Storage Service (OSS) object.'."\n" + .'* Media: a media asset.'."\n", + 'type' => 'string', + 'example' => 'OSS', + ], + 'Media' => [ + 'title' => '媒体值:'."\n" + .' type 为 OSS 时,为 URL, 支持 OSS 协议和 HTTP 协议;'."\n" + .' type 为 Media 时,为媒资 ID。', + 'description' => 'The media object.'."\n" + ."\n" + .'* If Type is set to OSS, the URL of an OSS object is returned. Both the OSS and HTTP protocols are supported.'."\n" + .'* If Type is set to Media, the ID of a media asset is returned.'."\n", + 'type' => 'string', + 'example' => 'oss://bucket/path/to/video.mp4', + ], + 'InputUrl' => [ + 'description' => 'The URL of the media asset. This parameter is specified only when the media asset is transcoded.'."\n", + 'type' => 'string', + 'example' => 'oss://bucket/path/to/video.mp4', + ], + ], + ], + ], + 'ProcessConfig' => [ + 'title' => '转码处理配置', + 'description' => 'The transcoding configuration.'."\n", + 'type' => 'object', + 'properties' => [ + 'Transcode' => [ + 'title' => '转码配置', + 'description' => 'The transcoding configuration.'."\n", + 'type' => 'object', + 'properties' => [ + 'TemplateId' => [ + 'title' => '模板 ID。', + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'example' => '9547c6ad97cb4f2aaa29683ebd18d410', + ], + 'OverwriteParams' => [ + 'title' => '覆盖参数, 若填写会覆盖模板对应参数', + 'description' => 'The parameters that are used to overwrite the corresponding parameters of the template.'."\n", + 'type' => 'object', + 'properties' => [ + 'Video' => [ + 'title' => 'video 设置', + 'description' => 'The video settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'Codec' => [ + 'title' => '编码格式', + 'description' => 'The encoding format.'."\n", + 'type' => 'string', + 'example' => 'H.264', + ], + 'Profile' => [ + 'title' => '编码级别。'."\n" + .' 支持baseline、main、high。'."\n" + .' baseline:针对移动设备。'."\n" + .' main:针对标准分辨率设备。'."\n" + .' high:针对高分辨率设备。'."\n" + .' 默认值:high。', + 'description' => 'The encoding profile. Valid values: baseline, main, and high.'."\n" + ."\n" + .'* baseline: applicable to mobile devices.'."\n" + .'* main: applicable to standard-definition devices.'."\n" + .'* high: applicable to high-definition devices.'."\n" + ."\n" + .'Default value: high.'."\n", + 'type' => 'string', + 'example' => 'Main', + ], + 'Bitrate' => [ + 'title' => '视频平均码率。'."\n" + .' 取值范围:[10,50000]。'."\n" + .' 单位:Kbps。', + 'description' => 'The average bitrate of the video.'."\n" + ."\n" + .'* Valid values: \\[10,50000].'."\n" + .'* Unit: Kbit/s.'."\n", + 'type' => 'string', + 'example' => '3000', + ], + 'Crf' => [ + 'title' => '码率-质量控制因子。'."\n" + .' 取值范围:[0,51]。'."\n" + .' 默认值:编码格式为H264,默认值为23。编码格式为H265,默认值为26。'."\n" + .' 如果设置了Crf,则Bitrate的设置失效。', + 'description' => 'The constant rate factor.'."\n" + ."\n" + .'* Valid values: \\[0,51].'."\n" + .'* Default value: 23 if the encoding format is H.264, or 26 if the encoding format is H.265.'."\n" + ."\n" + .'If this parameter is specified, the value of Bitrate becomes invalid.'."\n", + 'type' => 'string', + 'example' => '23', + ], + 'Width' => [ + 'title' => '宽。'."\n" + .' 取值范围:[128,4096]。'."\n" + .' 单位:px。'."\n" + .' 默认值:视频原始宽度。', + 'description' => 'The width of the output video.'."\n" + ."\n" + .'* Valid values: \\[128,4096].'."\n" + .'* Unit: pixels.'."\n" + ."\n" + .'Default value: the width of the input video.'."\n", + 'type' => 'string', + 'example' => '1920', + ], + 'Height' => [ + 'title' => '高。'."\n" + .' 取值范围:[128,4096]。'."\n" + .' 单位:px。'."\n" + .' 默认值:视频原始高度。', + 'description' => 'The height of the output video.'."\n" + ."\n" + .'* Valid values: \\[128,4096].'."\n" + .'* Unit: pixels.'."\n" + ."\n" + .'Default value: the height of the input video.'."\n", + 'type' => 'string', + 'example' => '1080', + ], + 'Fps' => [ + 'title' => '帧率。'."\n" + .' 取值范围:(0,60]。'."\n" + .' 当输入文件帧率超过60时取60。'."\n" + .' 默认值:取输入文件帧率', + 'description' => 'The frame rate.'."\n" + ."\n" + .'* Valid values: (0,60]. The value is 60 if the frame rate of the input video exceeds 60.'."\n" + .'* Default value: the frame rate of the input video.'."\n", + 'type' => 'string', + 'example' => '25', + ], + 'Gop' => [ + 'title' => '关键帧间最大帧数。'."\n" + .' 取值范围:[1,1080000]。'."\n" + .' 默认值:250。', + 'description' => 'The maximum number of frames between two keyframes.'."\n" + ."\n" + .'* Valid values: \\[1,1080000].'."\n" + .'* Default value: 250.'."\n", + 'type' => 'string', + 'example' => '250', + ], + 'Preset' => [ + 'title' => '视频算法器预置。只有H264支持该参数。'."\n" + .'支持veryfast、fast、medium、slow、slower。'."\n" + .'默认值:medium。', + 'description' => 'The preset video algorithm. This parameter takes effect only if the encoding format is H.264. Valid values: veryfast, fast, medium, slow, and slower. Default value: medium.'."\n", + 'type' => 'string', + 'example' => 'medium', + ], + 'ScanMode' => [ + 'title' => '扫描模式。'."\n" + .'支持interlaced、progressive。', + 'description' => 'The scan mode. Valid values: interlaced and progressive.'."\n", + 'type' => 'string', + 'example' => 'progressive', + ], + 'PixFmt' => [ + 'title' => '视频颜色格式。'."\n" + .' 范围:yuv420p,yuvj420p等标准颜色格式。', + 'description' => 'The pixel format of the video. Valid values: standard pixel formats such as yuv420p and yuvj420p.'."\n", + 'type' => 'string', + 'example' => 'yuv420p', + ], + 'Remove' => [ + 'title' => '是否去掉视频', + 'description' => 'Indicates whether the video was removed.'."\n", + 'type' => 'string', + 'example' => 'false', + ], + 'Crop' => [ + 'title' => '视频画面裁切'."\n" + .' 支持2种方式。'."\n" + .' 自动检测黑边并裁切,设置为“border”'."\n" + .' 自定义裁切,参数格式:width:height:left:top。'."\n" + .' 示例:1280:800:0:140', + 'description' => 'The method of video cropping. Valid values:'."\n" + ."\n" + .'* border: automatically detects and removes black bars.'."\n" + .'* A value in the width:height:left:top format: crops the videos based on the custom settings.'."\n", + 'type' => 'string', + 'example' => '1280:800:0:140', + ], + 'Pad' => [ + 'title' => '视频贴黑边'."\n" + .' 参数格式:width:height:left:top。'."\n" + .' 示例:1280:800:0:140', + 'description' => 'The black bars added to the video. Format: width:height:left:top.'."\n", + 'type' => 'string', + 'example' => '1280:800:0:140', + ], + 'LongShortMode' => [ + 'title' => '是否开启横竖屏自适应(即:长短边模式)', + 'description' => 'Indicates whether the auto-rotate screen feature is enabled.'."\n", + 'type' => 'string', + 'example' => 'false', + ], + 'Bufsize' => [ + 'title' => '缓冲区大小'."\n" + .' 值范围:[1000,128000]'."\n" + .' 默认值:6000'."\n" + .' 单位:Kb', + 'description' => 'The buffer size.'."\n" + ."\n" + .'* Valid values: \\[1000,128000].'."\n" + .'* Default value: 6000.'."\n" + .'* Unit: Kbit/s.'."\n", + 'type' => 'string', + 'example' => '6000', + ], + 'Maxrate' => [ + 'title' => '视频码率峰值'."\n" + .' 值范围[10,50000],单位Kbps。', + 'description' => 'The maximum bitrate of the output video.'."\n" + ."\n" + .'* Valid values: \\[10,50000].'."\n" + .'* Unit: Kbit/s.'."\n", + 'type' => 'string', + 'example' => '9000', + ], + 'AbrMax' => [ + 'title' => 'abr 最大码率(只有窄高1有效)'."\n" + .'值范围[10,50000],单位Kbps。', + 'description' => 'The maximum adaptive bitrate (ABR). This parameter takes effect only for Narrowband HD 1.0.'."\n" + ."\n" + .'* Valid values: \\[10,50000].'."\n" + .'* Unit: Kbit/s.'."\n", + 'type' => 'string', + 'example' => '6000', + ], + ], + ], + 'Audio' => [ + 'title' => 'audio 设置', + 'description' => 'The audio settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'Codec' => [ + 'title' => '音频编解码格式,AAC、MP3、VORBIS、FLAC。'."\n" + .' 默认值:AAC', + 'description' => 'The audio codec. Valid values: AAC, MP3, VORBIS, and FLAC. Default value: AAC.'."\n", + 'type' => 'string', + 'example' => 'AAC', + ], + 'Profile' => [ + 'title' => '音频编码预置。'."\n" + .' 当Codec为 AAC时,范围aac_low、aac_he、aac_he_v2、aac_ld、aac_eld。', + 'description' => 'The audio codec profile. If the Codec parameter is set to AAC, the valid values are aac_low, aac_he, aac_he_v2, aac_ld, and aac_eld.'."\n", + 'type' => 'string', + 'example' => 'aac_low', + ], + 'Samplerate' => [ + 'title' => '采样率。'."\n" + .' 默认值:44100'."\n" + .' 支持22050、32000、44100、48000、96000,'."\n" + .' 单位:Hz', + 'description' => 'The sampling rate.'."\n" + ."\n" + .'* Default value: 44100. Valid values: 22050, 32000, 44100, 48000, and 96000.'."\n" + .'* Unit: Hz.'."\n", + 'type' => 'string', + 'example' => '44100', + ], + 'Bitrate' => [ + 'title' => '输出文件的音频码率。'."\n" + .' 值范围:[8,1000]'."\n" + .' 单位:Kbps'."\n" + .' 默认值:128', + 'description' => 'The audio bitrate of the output file.'."\n" + ."\n" + .'* Valid values: \\[8,1000].'."\n" + .'* Unit: Kbit/s.'."\n" + .'* Default value: 128.'."\n", + 'type' => 'string', + 'example' => '128', + ], + 'Channels' => [ + 'title' => '声道数。'."\n" + .' 默认值:2', + 'description' => 'The number of sound channels. Default value: 2.'."\n", + 'type' => 'string', + 'example' => '2', + ], + 'Remove' => [ + 'title' => '是否删除音频流。', + 'description' => 'Indicates whether the audio stream is deleted.'."\n", + 'type' => 'string', + 'example' => 'false', + ], + 'Volume' => [ + 'title' => '音量控制', + 'description' => 'The volume configurations.'."\n", + 'type' => 'object', + 'properties' => [ + 'Method' => [ + 'title' => '音量调整方式', + 'description' => 'The volume adjustment method. Valid values:'."\n", + 'type' => 'string', + 'example' => 'auto', + ], + 'IntegratedLoudnessTarget' => [ + 'title' => '目标音量', + 'description' => 'The output volume.'."\n", + 'type' => 'string', + 'example' => '-6', + ], + 'TruePeak' => [ + 'title' => '最大峰值', + 'description' => 'The peak volume.'."\n", + 'type' => 'string', + 'example' => '-1', + ], + 'LoudnessRangeTarget' => [ + 'title' => '音量范围', + 'description' => 'The volume range.'."\n", + 'type' => 'string', + 'example' => '8', + ], + ], + ], + ], + ], + 'Container' => [ + 'title' => '封装格式设置', + 'description' => 'The encapsulation format settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'Format' => [ + 'title' => '容器格式', + 'description' => 'The container format.'."\n", + 'type' => 'string', + 'example' => 'mp4', + ], + ], + ], + 'MuxConfig' => [ + 'title' => '封装设置', + 'description' => 'The encapsulation settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'Segment' => [ + 'title' => '切片设置', + 'description' => 'The segment settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'Duration' => [ + 'title' => '切片时长', + 'description' => 'The segment length.'."\n", + 'type' => 'string', + 'example' => '10', + ], + 'ForceSegTime' => [ + 'title' => '强制切片时间点', + 'description' => 'The forced segmentation point in time.'."\n", + 'type' => 'string', + 'example' => '2,3', + ], + ], + ], + ], + ], + 'TransConfig' => [ + 'description' => 'The conditional transcoding configurations.'."\n", + 'type' => 'object', + 'properties' => [ + 'TransMode' => [ + 'description' => 'The video transcoding mode. Valid values:'."\n" + ."\n" + .'* onepass: You can set this parameter to onepass if the Bitrate parameter is set to ABR. The encoding speed of this mode is faster than that of the twopass mode.'."\n" + .'* twopass: You can set this parameter to twopass if the Bitrate parameter is set to VBR. The encoding speed of this mode is slower than that of the onepass mode.'."\n" + .'* CBR: the constant bitrate mode.'."\n" + ."\n" + .'Default value: onepass.'."\n", + 'type' => 'string', + 'example' => 'onepass', + ], + 'IsCheckReso' => [ + 'description' => 'Indicates whether the video resolution was checked. You can specify only one of the IsCheckReso and IsCheckResoFail parameters. The priority of the IsCheckResoFail parameter is higher. Valid values:'."\n" + ."\n" + .'* true If the width or height of the input video is less than that of the output video, the resolution of the input video is used for transcoding.'."\n" + .'* false'."\n" + ."\n" + .'Default value: false.'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'IsCheckResoFail' => [ + 'description' => 'Indicates whether the video resolution was checked. You can specify only one of the IsCheckReso and IsCheckResoFail parameters. The priority of the IsCheckResoFail parameter is higher. Valid values:'."\n" + ."\n" + .'* true If the width or height of the input video is less than that of the output video, the transcoding job fails.'."\n" + .'* false'."\n" + ."\n" + .'Default value: false.'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'IsCheckVideoBitrate' => [ + 'description' => 'Indicates whether the video bitrate was checked. You can specify only one of the IsCheckVideoBitrate and IsCheckVideoBitrateFail parameters. The priority of the IsCheckVideoBitrateFail parameter is higher. Valid values:'."\n" + ."\n" + .'* true If the bitrate of the input video is less than that of the output video, the bitrate of the input video is used for transcoding.'."\n" + .'* false'."\n" + ."\n" + .'Default value: false.'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'IsCheckVideoBitrateFail' => [ + 'description' => 'Indicates whether the video bitrate was checked. You can specify only one of the IsCheckVideoBitrate and IsCheckVideoBitrateFail parameters. The priority of the IsCheckVideoBitrateFail parameter is higher. Valid values:'."\n" + ."\n" + .'* true If the bitrate of the input video is less than that of the output video, the transcoding job fails.'."\n" + .'* false'."\n" + ."\n" + .'Default value: false.'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'IsCheckAudioBitrate' => [ + 'description' => 'Indicates whether the audio bitrate was checked. You can specify only one of the IsCheckAudioBitrate and IsCheckAudioBitrateFail parameters. The priority of the IsCheckAudioBitrateFail parameter is higher. Valid values:'."\n" + ."\n" + .'* true If the bitrate of the input audio is less than that of the output audio, the bitrate of the input audio is used for transcoding.'."\n" + .'* false'."\n" + ."\n" + .'Default value:'."\n" + ."\n" + .'* If this parameter is not specified and the codec of the output audio is different from that of the input audio, the default value is false.'."\n" + .'* If this parameter is not specified and the codec of the output audio is the same as that of the input audio, the default value is true.'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'IsCheckAudioBitrateFail' => [ + 'description' => 'Indicates whether the audio bitrate was checked. You can specify only one of the IsCheckAudioBitrate and IsCheckAudioBitrateFail parameters. The priority of the IsCheckAudioBitrateFail parameter is higher. Valid values:'."\n" + ."\n" + .'* true If the bitrate of the input audio is less than that of the output audio, the transcoding job fails.'."\n" + .'* false'."\n" + ."\n" + .'Default value: false.'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'AdjDarMethod' => [ + 'description' => 'The method that is used to adjust the resolution. This parameter takes effect only if both the Width and Height parameters are specified. You can use this parameter together with the LongShortMode parameter.'."\n" + ."\n" + .'Valid values: rescale, crop, pad, and none.'."\n" + ."\n" + .'Default value: none.'."\n" + ."\n" + .'For more information about examples, see How do I set the resolution for an output video?'."\n", + 'type' => 'string', + 'example' => 'none', + ], + ], + ], + 'Tags' => [ + 'type' => 'object', + 'additionalProperties' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + ], + 'ImageWatermarks' => [ + 'title' => '图片水印配置', + 'description' => 'The watermark configuration of an image.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The watermark configuration of an image.'."\n", + 'type' => 'object', + 'properties' => [ + 'TemplateId' => [ + 'title' => '模板 ID。', + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'example' => '9547c6ad97cb4f2aaa29683ebd18d410', + ], + 'OverwriteParams' => [ + 'title' => '覆盖参数, 若填写会覆盖模板对应参数', + 'description' => 'The parameters that are used to overwrite the corresponding parameters of the template.'."\n", + 'type' => 'object', + 'properties' => [ + 'Width' => [ + 'title' => '宽', + 'description' => 'The width of the output video.'."\n", + 'type' => 'string', + 'example' => '32', + ], + 'Height' => [ + 'title' => '高', + 'description' => 'The height of the output video.'."\n", + 'type' => 'string', + 'example' => '32', + ], + 'Dx' => [ + 'title' => '水印位置,x', + 'description' => 'The position of the watermark on the x-axis.'."\n", + 'type' => 'string', + 'example' => '10', + ], + 'Dy' => [ + 'title' => '水印位置,y', + 'description' => 'The position of the watermark on the y-axis.'."\n", + 'type' => 'string', + 'example' => '10', + ], + 'ReferPos' => [ + 'title' => '参考位置: TopLeft, TopRight, BottomLeft, BottomRight default: TopLeft', + 'description' => 'The reference position of the watermark. Valid values: TopLeft, TopRight, BottomLeft, and BottomRight. Default value: TopLeft.'."\n", + 'type' => 'string', + 'example' => 'TopLeft', + ], + 'Timeline' => [ + 'title' => '显示时间设置', + 'description' => 'The timeline settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'Start' => [ + 'title' => '开始时间', + 'description' => 'The start time of the stream.'."\n", + 'type' => 'string', + 'example' => '00:00:05', + ], + 'Duration' => [ + 'title' => '显示时长,秒数 或者 "ToEND"', + 'description' => 'The duration of the stream. Valid values: the number of seconds or "ToEND".'."\n", + 'type' => 'string', + 'example' => 'ToEND', + ], + ], + ], + 'File' => [ + 'title' => '水印图片文件', + 'description' => 'The watermark image file.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'title' => '媒体对象类型。'."\n" + .'取值: '."\n" + .'- OSS: OSS文件。'."\n" + .'- Media: 媒资 ID。'."\n", + 'description' => 'The type of the media object. Valid values:'."\n" + ."\n" + .'* OSS: an OSS object.'."\n" + .'* Media: a media asset.'."\n", + 'type' => 'string', + 'example' => 'OSS', + ], + 'Media' => [ + 'title' => '媒体值:'."\n" + .' type 为 OSS 时,为 URL, 支持 OSS 协议和 HTTP 协议;'."\n" + .' type 为 Media 时,为媒资 ID。', + 'description' => 'The media object.'."\n" + ."\n" + .'* If Type is set to OSS, the URL of an OSS object is returned. Both the OSS and HTTP protocols are supported.'."\n" + .'* If Type is set to Media, the ID of a media asset is returned.'."\n", + 'type' => 'string', + 'example' => 'oss://bucket/path/to/video.mp4', + ], + ], + ], + ], + ], + ], + ], + ], + 'TextWatermarks' => [ + 'title' => '文字水印配置', + 'description' => 'The configurations of the text watermark.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The configurations of the text watermark.'."\n", + 'type' => 'object', + 'properties' => [ + 'TemplateId' => [ + 'title' => '模板 ID。', + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'example' => '9547c6ad97cb4f2aaa29683ebd18d410', + ], + 'OverwriteParams' => [ + 'title' => '覆盖参数, 若填写会覆盖模板对应参数', + 'description' => 'The parameters that are used to overwrite the corresponding parameters of the template.'."\n", + 'type' => 'object', + 'properties' => [ + 'Content' => [ + 'title' => '水印文本,不需要 base64 encode,字符串需要 utf-8 编码', + 'description' => 'The watermark text. Base64 encoding is not required. The string must be encoded in UTF-8.'."\n", + 'type' => 'string', + 'example' => '测试水印', + ], + 'FontName' => [ + 'title' => '字体', + 'description' => 'The font of the text.'."\n", + 'type' => 'string', + 'example' => 'SimSun', + ], + 'FontColor' => [ + 'title' => '颜色', + 'description' => 'The color of the text.'."\n", + 'type' => 'string', + 'example' => '#006400', + ], + 'FontAlpha' => [ + 'title' => '透明度', + 'description' => 'The transparency of the watermark.'."\n", + 'type' => 'string', + 'example' => '1.0', + ], + 'Top' => [ + 'title' => '水印位置,距离上边距离', + 'description' => 'The distance of the watermark from the top edge.'."\n", + 'type' => 'string', + 'example' => '10', + ], + 'Left' => [ + 'title' => '水印位置,距离左边距离', + 'description' => 'The distance of the watermark from the left edge.'."\n", + 'type' => 'string', + 'example' => '10', + ], + 'FontSize' => [ + 'title' => '字体大小', + 'description' => 'The size of the text.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '16', + ], + 'BorderWidth' => [ + 'title' => '边框宽度', + 'description' => 'The border width.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'BorderColor' => [ + 'title' => '边框颜色', + 'description' => 'The border color.'."\n", + 'type' => 'string', + 'example' => '#006400', + ], + 'Adaptive' => [ + 'title' => '根据输出视频大小调整字体 size。 true / false, default: false', + 'description' => 'Indicates whether the text size was adjusted based on the output video dimensions. Valid values: true and false. Default value: false.'."\n", + 'type' => 'string', + 'example' => 'false', + ], + ], + ], + ], + ], + ], + 'Subtitles' => [ + 'title' => '字幕压制配置', + 'description' => 'The subtitle configuration.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The subtitle configuration.'."\n", + 'type' => 'object', + 'properties' => [ + 'TemplateId' => [ + 'title' => '模板 ID。', + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'example' => '9547c6ad97cb4f2aaa29683ebd18d410', + ], + 'OverwriteParams' => [ + 'title' => '覆盖参数, 若填写会覆盖模板对应参数', + 'description' => 'The parameters that are used to overwrite the corresponding parameters of the template.'."\n", + 'type' => 'object', + 'properties' => [ + 'Format' => [ + 'title' => '字幕文件格式', + 'description' => 'The format of the subtitle file.'."\n", + 'type' => 'string', + 'example' => 'vtt', + ], + 'CharEnc' => [ + 'title' => '文件 encoding 格式', + 'description' => 'The file encoding format.'."\n", + 'type' => 'string', + 'example' => 'UTF-8', + ], + 'File' => [ + 'title' => '字幕文件', + 'description' => 'The subtitle file.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'title' => '媒体对象类型。'."\n" + .'取值: '."\n" + .'- OSS: OSS文件。'."\n" + .'- Media: 媒资 ID。'."\n", + 'description' => 'The type of the media object. Valid values:'."\n" + ."\n" + .'* OSS: an OSS object.'."\n" + .'* Media: a media asset.'."\n", + 'type' => 'string', + 'example' => 'OSS', + ], + 'Media' => [ + 'title' => '媒体值:'."\n" + .' type 为 OSS 时,为 URL, 支持 OSS 协议和 HTTP 协议;'."\n" + .' type 为 Media 时,为媒资 ID。', + 'description' => 'The media object.'."\n" + ."\n" + .'* If Type is set to OSS, the URL of an OSS object is returned. Both the OSS and HTTP protocols are supported.'."\n" + .'* If Type is set to Media, the ID of a media asset is returned.'."\n", + 'type' => 'string', + 'example' => 'oss://bucket/path/to/video.mp4', + ], + ], + ], + ], + ], + ], + ], + ], + 'Encryption' => [ + 'title' => '加密配置。', + 'description' => 'The encryption settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'EncryptType' => [ + 'title' => '加密类型。', + 'description' => 'The encryption type.'."\n", + 'type' => 'string', + 'example' => 'PrivateEncryption', + ], + 'CipherText' => [ + 'title' => '标准加密的密钥密文。', + 'description' => 'The ciphertext of HTTP Live Streaming (HLS) encryption.'."\n", + 'type' => 'string', + 'example' => 'MTYi00NDU0LTg5O****', + ], + 'DecryptKeyUri' => [ + 'title' => '标准加密的解密服务地址。', + 'description' => 'The endpoint of the decryption service for HLS encryption.'."\n", + 'type' => 'string', + 'example' => 'https://sample.com/path?CipherText=MTYi00NDU0LTg5O****', + ], + 'KeyServiceType' => [ + 'title' => '密钥服务类型。目前仅支持KMS和Base64', + 'description' => 'The type of the key service. Valid values: KMS and Base64.'."\n", + 'type' => 'string', + 'example' => 'KMS', + ], + ], + ], + 'CombineConfigs' => [ + 'title' => '多输入合流配置', + 'description' => 'The multi-input stream merge configuration.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'AudioIndex' => [ + 'title' => '音频流Index', + 'description' => 'The audio stream index.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '0 或 exclude', + ], + 'VideoIndex' => [ + 'title' => '视频流Index', + 'description' => 'The video stream index.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '0 或 exclude', + ], + 'Start' => [ + 'title' => '输入流的开始时间。 默认为0', + 'description' => 'The start time of the input stream. Default value: 0.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => '0.0', + ], + 'Duration' => [ + 'title' => '输入流的持续时间。 默认为视频时长。', + 'description' => 'The duration of the input stream. The default value is the duration of the video.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => '20.0', + ], + ], + 'description' => '', + ], + ], + 'IsInheritTags' => [ + 'description' => 'Indicates whether the tags of the input stream are inherited in the output stream. This parameter does not take effect when the input is not a media asset. Default value: false.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + ], + 'Output' => [ + 'title' => '输出媒体配置', + 'description' => 'The output file configuration.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'title' => '媒体对象类型。'."\n" + .'取值: '."\n" + .'- OSS: OSS文件。'."\n" + .'- Media: 媒资 ID。'."\n", + 'description' => 'The type of the media object. Valid values:'."\n" + ."\n" + .'* OSS: an OSS object.'."\n" + .'* Media: a media asset.'."\n", + 'type' => 'string', + 'example' => 'OSS', + ], + 'Media' => [ + 'title' => '媒体值:'."\n" + .' type 为 OSS 时,为 URL, 支持 OSS 协议和 HTTP 协议;'."\n" + .' type 为 Media 时,为媒资 ID。', + 'description' => 'The media object.'."\n" + ."\n" + .'* If Type is set to OSS, the URL of an OSS object is returned. Both the OSS and HTTP protocols are supported.'."\n" + .'* If Type is set to Media, the ID of a media asset is returned.'."\n", + 'type' => 'string', + 'example' => 'oss://bucket/path/to/video.mp4', + ], + 'OutputUrl' => [ + 'description' => 'The path of the transcoded output stream. This parameter is required only when the output is a media asset.'."\n", + 'type' => 'string', + 'example' => 'oss://bucket/path/to/{MediaId}/{JobId}.mp4'."\n", + ], + ], + ], + 'UserData' => [ + 'title' => '用户数据', + 'description' => 'The user data.'."\n", + 'type' => 'string', + 'example' => 'user-data', + ], + 'ScheduleConfig' => [ + 'title' => '任务调度信息', + 'description' => 'The scheduling information about the job.'."\n", + 'type' => 'object', + 'properties' => [ + 'PipelineId' => [ + 'title' => '管道 ID。', + 'description' => 'The ID of the ApsaraVideo Media Processing (MPS) queue to which the snapshot job was submitted.'."\n", + 'type' => 'string', + 'example' => 'e37ebee5d98b4781897f6086e89f9c56', + ], + 'Priority' => [ + 'title' => '任务优先级。数字越大优先级越高,取值范围:1~10', + 'description' => 'The priority of the job. Valid values: 1 to 10. The greater the value, the higher the priority.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '5', + ], + ], + ], + 'Status' => [ + 'title' => '转码任务任务状态 - Init: 已提交, Processing: 转码中, Success: 转码成功, Fail: 转码失败, Deleted: 已删除', + 'description' => 'The state of the transcoding job. Valid values: Init (the job is submitted), Success (the job is successful), Fail (the job failed), and Deleted (the job is deleted).'."\n", + 'type' => 'string', + 'example' => 'Init', + ], + 'OutFileMeta' => [ + 'title' => '任务生成视频 Media 信息', + 'description' => 'The media information about the video generated by the job.'."\n", + 'type' => 'object', + 'properties' => [ + 'FileBasicInfo' => [ + 'title' => '基础文件信息', + 'description' => 'The basic file information.'."\n", + 'type' => 'object', + 'properties' => [ + 'MediaId' => [ + 'title' => '媒资 ID。', + 'description' => 'The ID of the media asset.'."\n", + 'type' => 'string', + 'example' => '486c2890096871edba6f81848c016303', + ], + 'FileName' => [ + 'title' => '文件名。', + 'description' => 'The file name.'."\n", + 'type' => 'string', + 'example' => 'file.m3u8', + ], + 'FileStatus' => [ + 'title' => '文件状态。', + 'description' => 'The state of the file.'."\n", + 'type' => 'string', + 'example' => 'Normal', + ], + 'FileType' => [ + 'title' => '文件类型。取值: source_file, transcode_file', + 'description' => 'The file type. Valid values: source_file and transcode_file.'."\n", + 'type' => 'string', + 'example' => 'source_file', + ], + 'FileSize' => [ + 'title' => '文件大小。单位:Byte。', + 'description' => 'The file size. Unit: bytes.'."\n", + 'type' => 'string', + 'example' => '31737', + ], + 'FileUrl' => [ + 'title' => '文件 URL。', + 'description' => 'The URL of the file.'."\n", + 'type' => 'string', + 'example' => 'http://bucket.oss-cn-shanghai.aliyuncs.com/path/to/file.m3u8', + ], + 'Region' => [ + 'title' => '文件所在区域。', + 'description' => 'The region in which the file resides.'."\n", + 'type' => 'string', + 'example' => 'cn-shanghai', + ], + 'FormatName' => [ + 'title' => '视频格式名称。', + 'description' => 'The name of the video format.'."\n", + 'type' => 'string', + 'example' => 'hls,applehttp', + ], + 'Duration' => [ + 'title' => '视频时长(单位: 秒)。', + 'description' => 'The duration of the video. Unit: seconds.'."\n", + 'type' => 'string', + 'example' => '403.039999', + ], + 'Bitrate' => [ + 'title' => '视频码率。', + 'description' => 'The video bitrate.'."\n", + 'type' => 'string', + 'example' => '888.563', + ], + 'Width' => [ + 'title' => '宽。', + 'description' => 'The width of the output video.'."\n", + 'type' => 'string', + 'example' => '848', + ], + 'Height' => [ + 'title' => '高。', + 'description' => 'The height of the output video.'."\n", + 'type' => 'string', + 'example' => '478', + ], + ], + ], + 'AudioStreamInfoList' => [ + 'title' => '音频流信息', + 'description' => 'The information about the audio stream.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The information about the audio stream.'."\n", + 'type' => 'object', + 'properties' => [ + 'Index' => [ + 'title' => '流序号。', + 'description' => 'The sequence number of the stream.'."\n", + 'type' => 'string', + 'example' => '1', + ], + 'CodecName' => [ + 'title' => '编码格式。', + 'description' => 'The encoding format.'."\n", + 'type' => 'string', + 'example' => 'aac', + ], + 'CodecLongName' => [ + 'title' => '编码格式名。', + 'description' => 'The name of the encoding format.'."\n", + 'type' => 'string', + 'example' => 'AAC (Advanced Audio Coding)', + ], + 'CodecTimeBase' => [ + 'title' => '编码器时间基。', + 'description' => 'The time base of the encoder.'."\n", + 'type' => 'string', + 'example' => '1/44100', + ], + 'CodecTagString' => [ + 'title' => '编码器标签名。', + 'description' => 'The name of the encoder tag.'."\n", + 'type' => 'string', + 'example' => '[15][0][0][0]', + ], + 'CodecTag' => [ + 'title' => '编码器标签。', + 'description' => 'The encoder tag.'."\n", + 'type' => 'string', + 'example' => '0x000f', + ], + 'SampleFmt' => [ + 'title' => '采样格式。', + 'description' => 'The sample format.'."\n", + 'type' => 'string', + 'example' => 'fltp', + ], + 'SampleRate' => [ + 'title' => '采样率(单位: Hz)。', + 'description' => 'The sampling rate. Unit: Hz.'."\n", + 'type' => 'string', + 'example' => '44100', + ], + 'Channels' => [ + 'title' => '声道数。', + 'description' => 'The number of sound channels.'."\n", + 'type' => 'string', + 'example' => '2', + ], + 'ChannelLayout' => [ + 'title' => '声道布局。', + 'description' => 'The sound channel layout.'."\n", + 'type' => 'string', + 'example' => 'stereo', + ], + 'Timebase' => [ + 'title' => '时间基。', + 'description' => 'The time base.'."\n", + 'type' => 'string', + 'example' => '1/90000', + ], + 'StartTime' => [ + 'title' => '开始时间。', + 'description' => 'The start time of the stream.'."\n", + 'type' => 'string', + 'example' => '1.473556', + ], + 'Duration' => [ + 'title' => '时长(单位: 秒)。', + 'description' => 'The duration of the stream. Unit: seconds.'."\n", + 'type' => 'string', + 'example' => '403.039989', + ], + 'Bitrate' => [ + 'title' => '码率。', + 'description' => 'The bitrate.'."\n", + 'type' => 'string', + 'example' => '0.f', + ], + 'Lang' => [ + 'title' => '语言。', + 'description' => 'The language of the stream.'."\n", + 'type' => 'string', + 'example' => 'cn', + ], + ], + ], + ], + 'VideoStreamInfoList' => [ + 'title' => '视频流信息', + 'description' => 'The information about the video stream.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The information about the video stream.'."\n", + 'type' => 'object', + 'properties' => [ + 'Index' => [ + 'title' => '流序号。', + 'description' => 'The sequence number of the stream.'."\n", + 'type' => 'string', + 'example' => '0', + ], + 'Codec_name' => [ + 'title' => '编码格式。', + 'description' => 'The encoding format.'."\n", + 'type' => 'string', + 'example' => 'h264', + ], + 'Codec_long_name' => [ + 'title' => '编码格式名。', + 'description' => 'The name of the encoding format.'."\n", + 'type' => 'string', + 'example' => 'H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10', + ], + 'Profile' => [ + 'title' => '编码器预设。', + 'description' => 'The encoder profile.'."\n", + 'type' => 'string', + 'example' => 'High', + ], + 'Codec_time_base' => [ + 'description' => 'The time base of the encoder.'."\n", + 'type' => 'string', + 'example' => '1/50', + ], + 'Codec_tag_string' => [ + 'title' => '编码格式标记文本。', + 'description' => 'The tag string of the encoding format.'."\n", + 'type' => 'string', + 'example' => '[27][0][0][0]', + ], + 'Codec_tag' => [ + 'title' => '编码格式标记。', + 'description' => 'The tag of the encoding format.'."\n", + 'type' => 'string', + 'example' => '0x001b', + ], + 'Width' => [ + 'title' => '宽。', + 'description' => 'The width of the output video.'."\n", + 'type' => 'string', + 'example' => '848', + ], + 'Height' => [ + 'title' => '高。', + 'description' => 'The height of the output video.'."\n", + 'type' => 'string', + 'example' => '478', + ], + 'Has_b_frames' => [ + 'title' => '是否有B帧。'."\n" + .'取值: '."\n" + .'- 0: 没有 B 帧, '."\n" + .'- 1: 有一个 B 帧, '."\n" + .'- 2: 有多个连续 B 帧。', + 'description' => 'Indicates whether the video stream contains bidirectional frames (B-frames). Valid values:'."\n" + ."\n" + .'* 0: The stream contains no B-frames.'."\n" + .'* 1: The stream contains one B-frame.'."\n" + .'* 2: The stream contains multiple consecutive B-frames.'."\n", + 'type' => 'string', + 'example' => '2', + ], + 'Sar' => [ + 'title' => '采集点数宽高比。', + 'description' => 'The aspect ratio of the area from which the sampling points are collected.'."\n", + 'type' => 'string', + 'example' => '478:477', + ], + 'Dar' => [ + 'title' => '图像显示宽高比。', + 'description' => 'The display aspect ratio.'."\n", + 'type' => 'string', + 'example' => '16:9', + ], + 'PixFmt' => [ + 'title' => '颜色存储格式。', + 'description' => 'The pixel format.'."\n", + 'type' => 'string', + 'example' => 'yuv420p', + ], + 'Level' => [ + 'title' => '编码等级。', + 'description' => 'The codec level.'."\n", + 'type' => 'string', + 'example' => '31', + ], + 'Fps' => [ + 'title' => '帧率。', + 'description' => 'The frame rate.'."\n", + 'type' => 'string', + 'example' => '25.0', + ], + 'Avg_fps' => [ + 'title' => '平均帧率。', + 'description' => 'The average frame rate.'."\n", + 'type' => 'string', + 'example' => '25.0', + ], + 'Time_base' => [ + 'title' => '时基。', + 'description' => 'The time base.'."\n", + 'type' => 'string', + 'example' => '1/90000', + ], + 'Start_time' => [ + 'title' => '起始时间。', + 'description' => 'The start time of the stream.'."\n", + 'type' => 'string', + 'example' => '1.473556', + ], + 'Duration' => [ + 'title' => '时长(单位: 秒)。', + 'description' => 'The duration of the stream. Unit: seconds.'."\n", + 'type' => 'string', + 'example' => '403.039989', + ], + 'Bit_rate' => [ + 'title' => '码率。', + 'description' => 'The bitrate.'."\n", + 'type' => 'string', + 'example' => '888.563', + ], + 'NumFrames' => [ + 'title' => '总帧数。', + 'description' => 'The total number of frames.'."\n", + 'type' => 'string', + 'example' => '10040', + ], + 'Lang' => [ + 'title' => '语言。', + 'description' => 'The language of the stream.'."\n", + 'type' => 'string', + 'example' => 'cn', + ], + 'Rotate' => [ + 'title' => '视频画面旋转角度。'."\n" + .'取值 0, 90, 180, 270。'."\n" + .'默认值 0', + 'description' => 'The rotation angle of the video image. Valid values: 0, 90, 180, and 270. Default value: 0.'."\n", + 'type' => 'string', + 'example' => '0', + ], + ], + ], + ], + ], + ], + 'SubmitResultJson' => [ + 'title' => '任务提交结果', + 'description' => 'The job submission result.'."\n", + 'type' => 'object', + 'example' => '{}', + ], + 'SubmitTime' => [ + 'title' => '任务提交时间', + 'description' => 'The time when the job was submitted.'."\n", + 'type' => 'string', + 'example' => '2022-01-12T08:49:41Z', + ], + 'FinishTime' => [ + 'title' => '任务结束时间', + 'description' => 'The time when the job was complete.'."\n", + 'type' => 'string', + 'example' => '2022-01-12T08:49:41Z', + ], + 'RequestId' => [ + 'title' => '提交任务时请求 ID', + 'description' => 'The ID of the request that submitted the job.'."\n", + 'type' => 'string', + 'example' => '31E30781-9495-5E2D-A84D-759B0A01E262', + ], + ], + ], + ], + 'CreateTime' => [ + 'title' => '任务创建时间。格式为: yyyy-MM-ddTHH:mm:ssZ 。', + 'description' => 'The time when the job was created. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2022-01-12T08:49:41Z', + ], + 'Name' => [ + 'title' => '任务名。', + 'description' => 'The job name.'."\n", + 'type' => 'string', + 'example' => 'transcode-job', + ], + 'RequestId' => [ + 'title' => '提交任务时请求 ID。', + 'description' => 'The ID of the request that submitted the job.'."\n", + 'type' => 'string', + 'example' => '31E30781-9495-5E2D-A84D-759B0A01E262', + ], + 'ParentJobId' => [ + 'title' => '主任务 ID。', + 'description' => 'The main job ID.'."\n", + 'type' => 'string', + 'example' => '8b2198504dd340b7b3c9842a74fc9baa', + ], + 'JobCount' => [ + 'title' => '子任务数量。', + 'description' => 'The number of subjobs.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'Status' => [ + 'title' => '任务状态。 Success: 所有子任务完成后,有一个子任务则为成功, Fail: 所有子任务失败', + 'description' => 'The state of the job.'."\n" + ."\n" + .'* Success: At least one of the subjobs is successful.'."\n" + .'* Fail: All subjobs failed.'."\n", + 'type' => 'string', + 'example' => 'Success', + ], + 'TriggerSource' => [ + 'title' => '任务来源。 API: API, WorkFlow: 工作流, Console: 控制台', + 'description' => 'The source of the job. Valid values:'."\n" + ."\n" + .'* API'."\n" + .'* WorkFlow'."\n" + .'* Console'."\n", + 'type' => 'string', + 'example' => 'API', + ], + 'Percent' => [ + 'title' => '任务完成百分比。', + 'description' => 'The completion percentage of the job.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'SubmitTime' => [ + 'title' => '任务提交时间。格式为: yyyy-MM-ddTHH:mm:ssZ 。', + 'description' => 'The time when the job was submitted. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2022-01-12T08:49:41Z', + ], + 'FinishTime' => [ + 'title' => '任务结束时间。格式为: yyyy-MM-ddTHH:mm:ssZ 。', + 'description' => 'The time when the job was complete. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2022-01-12T08:49:41Z', + ], + 'InputGroup' => [ + 'title' => '任务输入组。单输入时为转码任务,多输入时为合流任务。', + 'description' => 'The input group of the job. An input of a single file indicates a transcoding job. An input of multiple files indicates an audio and video stream merge job.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The information about the job input.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'title' => '媒体对象类型。'."\n" + .'取值: '."\n" + .'- OSS: OSS文件。'."\n" + .'- Media: 媒资 ID。'."\n", + 'description' => 'The type of the media object. Valid values:'."\n" + ."\n" + .'* OSS: an OSS object.'."\n" + .'* Media: a media asset.'."\n", + 'type' => 'string', + 'example' => 'OSS', + ], + 'Media' => [ + 'title' => '媒体值:'."\n" + .' type 为 OSS 时,为 URL, 支持 OSS 协议和 HTTP 协议;'."\n" + .' type 为 Media 时,为媒资 ID。', + 'description' => 'The media object.'."\n" + ."\n" + .'* If Type is set to OSS, the URL of an OSS object is returned. Both the OSS and HTTP protocols are supported.'."\n" + .'* If Type is set to Media, the ID of a media asset is returned.'."\n", + 'type' => 'string', + 'example' => 'oss://bucket/path/to/video.mp4', + ], + ], + ], + ], + 'OutputGroup' => [ + 'title' => '任务输出组。', + 'description' => 'The output group of the job.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The output of the job.'."\n", + 'type' => 'object', + 'properties' => [ + 'Output' => [ + 'title' => '输出媒体配置', + 'description' => 'The output file configuration.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'title' => '媒体对象类型。'."\n" + .'取值: '."\n" + .'- OSS: OSS文件。'."\n" + .'- Media: 媒资 ID。'."\n", + 'description' => 'The type of the media object. Valid values:'."\n" + ."\n" + .'* OSS: an OSS object.'."\n" + .'* Media: a media asset.'."\n", + 'type' => 'string', + 'example' => 'OSS', + ], + 'Media' => [ + 'title' => '媒体值:'."\n" + .' type 为 OSS 时,为 URL, 支持 OSS 协议和 HTTP 协议;'."\n" + .' type 为 Media 时,为媒资 ID。', + 'description' => 'The media object.'."\n" + ."\n" + .'* If Type is set to OSS, the URL of an OSS object is returned. Both the OSS and HTTP protocols are supported.'."\n" + .'* If Type is set to Media, the ID of a media asset is returned.'."\n", + 'type' => 'string', + 'example' => 'oss://bucket/path/to/video.mp4', + ], + 'OutputUrl' => [ + 'description' => 'The URL of the output stream.'."\n", + 'type' => 'string', + 'example' => 'oss://bucket/path/to/video.mp4'."\n", + ], + ], + ], + 'ProcessConfig' => [ + 'title' => '任务处理配置', + 'description' => 'The job processing configuration.'."\n", + 'type' => 'object', + 'properties' => [ + 'Transcode' => [ + 'title' => '转码配置', + 'description' => 'The transcoding configuration.'."\n", + 'type' => 'object', + 'properties' => [ + 'TemplateId' => [ + 'title' => '模板 ID。', + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'example' => '9547c6ad97cb4f2aaa29683ebd18d410', + ], + 'OverwriteParams' => [ + 'title' => '覆盖参数, 若填写会覆盖模板对应参数', + 'description' => 'The parameters that are used to overwrite the corresponding parameters of the template.'."\n", + 'type' => 'object', + 'properties' => [ + 'Video' => [ + 'title' => 'video 设置', + 'description' => 'The video settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'Codec' => [ + 'title' => '编码格式', + 'description' => 'The encoding format.'."\n", + 'type' => 'string', + 'example' => 'H.264', + ], + 'Profile' => [ + 'title' => '编码级别。'."\n" + .' 支持baseline、main、high。'."\n" + .' baseline:针对移动设备。'."\n" + .' main:针对标准分辨率设备。'."\n" + .' high:针对高分辨率设备。'."\n" + .' 默认值:high。', + 'description' => 'The encoding profile. Valid values: baseline, main, and high.'."\n" + ."\n" + .'* baseline: applicable to mobile devices.'."\n" + .'* main: applicable to standard-definition devices.'."\n" + .'* high: applicable to high-definition devices.'."\n" + ."\n" + .'Default value: high.'."\n", + 'type' => 'string', + 'example' => 'Main', + ], + 'Bitrate' => [ + 'title' => '视频平均码率。'."\n" + .' 取值范围:[10,50000]。'."\n" + .' 单位:Kbps。', + 'description' => 'The average bitrate of the video.'."\n" + ."\n" + .'* Valid values: \\[10,50000].'."\n" + .'* Unit: Kbit/s.'."\n", + 'type' => 'string', + 'example' => '3000', + ], + 'Crf' => [ + 'title' => '码率-质量控制因子。'."\n" + .' 取值范围:[0,51]。'."\n" + .' 默认值:编码格式为H264,默认值为23。编码格式为H265,默认值为26。'."\n" + .' 如果设置了Crf,则Bitrate的设置失效。', + 'description' => 'The constant rate factor.'."\n" + ."\n" + .'* Valid values: \\[0,51].'."\n" + .'* Default value: 23 if the encoding format is H.264, or 26 if the encoding format is H.265.'."\n" + .'* If this parameter is specified, the value of Bitrate becomes invalid.'."\n", + 'type' => 'string', + 'example' => '23', + ], + 'Width' => [ + 'title' => '宽。'."\n" + .' 取值范围:[128,4096]。'."\n" + .' 单位:px。'."\n" + .' 默认值:视频原始宽度。', + 'description' => 'The width of the output video.'."\n" + ."\n" + .'* Valid values: \\[128,4096].'."\n" + .'* Unit: pixels.'."\n" + .'* Default value: the width of the input video.'."\n", + 'type' => 'string', + 'example' => '1920', + ], + 'Height' => [ + 'title' => '高。'."\n" + .' 取值范围:[128,4096]。'."\n" + .' 单位:px。'."\n" + .' 默认值:视频原始高度。', + 'description' => 'The height of the output video.'."\n" + ."\n" + .'* Valid values: \\[128,4096].'."\n" + .'* Unit: pixels.'."\n" + .'* Default value: the height of the input video.'."\n", + 'type' => 'string', + 'example' => '1080', + ], + 'Fps' => [ + 'title' => '帧率。'."\n" + .' 取值范围:(0,60]。'."\n" + .' 当输入文件帧率超过60时取60。'."\n" + .' 默认值:取输入文件帧率', + 'description' => 'The frame rate.'."\n" + ."\n" + .'* Valid values: (0,60].'."\n" + .'* The value is 60 if the frame rate of the input video exceeds 60.'."\n" + .'* Default value: the frame rate of the input video.'."\n", + 'type' => 'string', + 'example' => '25', + ], + 'Gop' => [ + 'title' => '关键帧间最大帧数。'."\n" + .' 取值范围:[1,1080000]。'."\n" + .' 默认值:250。', + 'description' => 'The maximum number of frames between two keyframes.'."\n" + ."\n" + .'* Valid values: \\[1,1080000].'."\n" + .'* Default value: 250.'."\n", + 'type' => 'string', + 'example' => '250', + ], + 'Preset' => [ + 'title' => '视频算法器预置。只有H264支持该参数。'."\n" + .'支持veryfast、fast、medium、slow、slower。'."\n" + .'默认值:medium。', + 'description' => 'The preset video algorithm. This parameter takes effect only if the encoding format is H.264. Valid values: veryfast, fast, medium, slow, and slower. Default value: medium.'."\n", + 'type' => 'string', + 'example' => 'medium', + ], + 'ScanMode' => [ + 'title' => '扫描模式。'."\n" + .'支持interlaced、progressive。', + 'description' => 'The scan mode. Valid values: interlaced and progressive.'."\n", + 'type' => 'string', + 'example' => 'progressive', + ], + 'PixFmt' => [ + 'title' => '视频颜色格式。'."\n" + .' 范围:yuv420p,yuvj420p等标准颜色格式。', + 'description' => 'The pixel format of the video. Valid values: standard pixel formats such as yuv420p and yuvj420p.'."\n", + 'type' => 'string', + 'example' => 'yuv420p', + ], + 'Remove' => [ + 'title' => '是否去掉视频', + 'description' => 'Indicates whether the video was removed.'."\n", + 'type' => 'string', + 'example' => 'false', + ], + 'Crop' => [ + 'title' => '视频画面裁切'."\n" + .' 支持2种方式。'."\n" + .' 自动检测黑边并裁切,设置为“border”'."\n" + .' 自定义裁切,参数格式:width:height:left:top。'."\n" + .' 示例:1280:800:0:140', + 'description' => 'The method of video cropping. Valid values: border: automatically detects and removes black bars. A value in the width:height:left:top format: crops the videos based on the custom settings. Example: 1280:800:0:140.'."\n", + 'type' => 'string', + 'example' => '1280:800:0:140', + ], + 'Pad' => [ + 'title' => '视频贴黑边'."\n" + .' 参数格式:width:height:left:top。'."\n" + .' 示例:1280:800:0:140', + 'description' => 'The black bars added to the video.'."\n" + ."\n" + .'* Format: width:height:left:top.'."\n" + .'* Example: 1280:800:0:140.'."\n", + 'type' => 'string', + 'example' => '1280:800:0:140', + ], + 'LongShortMode' => [ + 'title' => '是否开启横竖屏自适应(即:长短边模式)', + 'description' => 'Indicates whether the auto-rotate screen feature is enabled.'."\n", + 'type' => 'string', + 'example' => 'false', + ], + 'Bufsize' => [ + 'title' => '缓冲区大小'."\n" + .' 值范围:[1000,128000]'."\n" + .' 默认值:6000'."\n" + .' 单位:Kb', + 'description' => 'The buffer size.'."\n" + ."\n" + .'* Valid values: \\[1000,128000].'."\n" + .'* Default value: 6000.'."\n" + .'* Unit: KB.'."\n", + 'type' => 'string', + 'example' => '6000', + ], + 'Maxrate' => [ + 'title' => '视频码率峰值'."\n" + .' 值范围[10,50000],单位Kbps。', + 'description' => 'The maximum bitrate of the output video.'."\n" + ."\n" + .'* Valid values: \\[10,50000].'."\n" + .'* Unit: Kbit/s.'."\n", + 'type' => 'string', + 'example' => '9000', + ], + 'AbrMax' => [ + 'title' => 'abr 最大码率(只有窄高1有效)'."\n" + .'值范围[10,50000],单位Kbps。', + 'description' => 'The maximum ABR. This parameter takes effect only for Narrowband HD 1.0.'."\n" + ."\n" + .'* Valid values: \\[10,50000].'."\n" + .'* Unit: Kbit/s.'."\n", + 'type' => 'string', + 'example' => '6000', + ], + ], + ], + 'Audio' => [ + 'title' => 'audio 设置', + 'description' => 'The audio settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'Codec' => [ + 'title' => '音频编解码格式,AAC、MP3、VORBIS、FLAC。'."\n" + .' 默认值:AAC', + 'description' => 'The audio codec. Valid values: AAC, MP3, VORBIS, and FLAC. Default value: AAC.'."\n", + 'type' => 'string', + 'example' => 'AAC', + ], + 'Profile' => [ + 'title' => '音频编码预置。'."\n" + .' 当Codec为 AAC时,范围aac_low、aac_he、aac_he_v2、aac_ld、aac_eld。', + 'description' => 'The audio codec profile. If the Codec parameter is set to AAC, the valid values are aac_low, aac_he, aac_he_v2, aac_ld, and aac_eld.'."\n", + 'type' => 'string', + 'example' => 'aac_low', + ], + 'Samplerate' => [ + 'title' => '采样率。'."\n" + .' 默认值:44100'."\n" + .' 支持22050、32000、44100、48000、96000,'."\n" + .' 单位:Hz', + 'description' => 'The sampling rate.'."\n" + ."\n" + .'* Default value: 44100.'."\n" + .'* Valid values: 22050, 32000, 44100, 48000, and 96000.'."\n" + .'* Unit: Hz.'."\n", + 'type' => 'string', + 'example' => '44100', + ], + 'Bitrate' => [ + 'title' => '输出文件的音频码率。'."\n" + .' 值范围:[8,1000]'."\n" + .' 单位:Kbps'."\n" + .' 默认值:128', + 'description' => 'The audio bitrate of the output file.'."\n" + ."\n" + .'* Valid values: \\[8,1000].'."\n" + .'* Unit: Kbit/s.'."\n" + .'* Default value: 128.'."\n", + 'type' => 'string', + 'example' => '128', + ], + 'Channels' => [ + 'title' => '声道数。'."\n" + .' 默认值:2', + 'description' => 'The number of sound channels. Default value: 2.'."\n", + 'type' => 'string', + 'example' => '2', + ], + 'Remove' => [ + 'title' => '是否删除音频流。', + 'description' => 'Indicates whether the audio stream is deleted.'."\n", + 'type' => 'string', + 'example' => 'false', + ], + 'Volume' => [ + 'title' => '音量控制', + 'description' => 'The volume configurations.'."\n", + 'type' => 'object', + 'properties' => [ + 'Method' => [ + 'title' => '音量调整方式', + 'description' => 'The volume adjustment method. Valid values:'."\n", + 'type' => 'string', + 'example' => 'auto', + ], + 'IntegratedLoudnessTarget' => [ + 'title' => '目标音量', + 'description' => 'The output volume.'."\n", + 'type' => 'string', + 'example' => '-6', + ], + 'TruePeak' => [ + 'title' => '最大峰值', + 'description' => 'The peak volume.'."\n", + 'type' => 'string', + 'example' => '-1', + ], + 'LoudnessRangeTarget' => [ + 'title' => '音量范围', + 'description' => 'The volume range.'."\n", + 'type' => 'string', + 'example' => '8', + ], + ], + ], + ], + ], + 'Container' => [ + 'title' => '封装格式设置', + 'description' => 'The encapsulation format settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'Format' => [ + 'title' => '容器格式', + 'description' => 'The container format.'."\n", + 'type' => 'string', + 'example' => 'mp4', + ], + ], + ], + 'MuxConfig' => [ + 'title' => '封装设置', + 'description' => 'The encapsulation settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'Segment' => [ + 'title' => '切片设置', + 'description' => 'The segment settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'Duration' => [ + 'title' => '切片时长', + 'description' => 'The segment length.'."\n", + 'type' => 'string', + 'example' => '10', + ], + 'ForceSegTime' => [ + 'title' => '强制切片时间点', + 'description' => 'The forced segmentation point in time.'."\n", + 'type' => 'string', + 'example' => '2,3', + ], + ], + ], + ], + ], + 'TransConfig' => [ + 'description' => 'The conditional transcoding configurations.'."\n", + 'type' => 'object', + 'properties' => [ + 'TransMode' => [ + 'description' => 'The video transcoding mode. Valid values:'."\n" + ."\n" + .'* onepass: You can set this parameter to onepass if the Bitrate parameter is set to ABR. The encoding speed of this mode is faster than that of the twopass mode.'."\n" + .'* twopass: You can set this parameter to twopass if the Bitrate parameter is set to VBR. The encoding speed of this mode is slower than that of the onepass mode.'."\n" + .'* CBR: the constant bitrate mode.'."\n" + ."\n" + .'Default value: onepass.'."\n", + 'type' => 'string', + 'example' => 'onepass', + ], + 'IsCheckReso' => [ + 'description' => 'Indicates whether the video resolution was checked. You can specify only one of the IsCheckReso and IsCheckResoFail parameters. The priority of the IsCheckResoFail parameter is higher. Valid values:'."\n" + ."\n" + .'* true If the width or height of the input video is less than that of the output video, the resolution of the input video is used for transcoding.'."\n" + .'* false'."\n" + ."\n" + .'Default value: false.'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'IsCheckResoFail' => [ + 'description' => 'Indicates whether the video resolution was checked. You can specify only one of the IsCheckReso and IsCheckResoFail parameters. The priority of the IsCheckResoFail parameter is higher. Valid values:'."\n" + ."\n" + .'* true If the width or height of the input video is less than that of the output video, the transcoding job fails.'."\n" + .'* false'."\n" + ."\n" + .'Default value: false.'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'IsCheckVideoBitrate' => [ + 'description' => 'Indicates whether the video bitrate was checked. You can specify only one of the IsCheckVideoBitrate and IsCheckVideoBitrateFail parameters. The priority of the IsCheckVideoBitrateFail parameter is higher. Valid values:'."\n" + ."\n" + .'* true If the bitrate of the input video is less than that of the output video, the bitrate of the input video is used for transcoding.'."\n" + .'* false'."\n" + ."\n" + .'Default value: false.'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'IsCheckVideoBitrateFail' => [ + 'description' => 'Indicates whether the video bitrate was checked. You can specify only one of the IsCheckVideoBitrate and IsCheckVideoBitrateFail parameters. The priority of the IsCheckVideoBitrateFail parameter is higher. Valid values:'."\n" + ."\n" + .'* true If the bitrate of the input video is less than that of the output video, the transcoding job fails.'."\n" + .'* false'."\n" + ."\n" + .'Default value: false.'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'IsCheckAudioBitrate' => [ + 'description' => 'Indicates whether the audio bitrate was checked. You can specify only one of the IsCheckAudioBitrate and IsCheckAudioBitrateFail parameters. The priority of the IsCheckAudioBitrateFail parameter is higher. Valid values:'."\n" + ."\n" + .'* true If the bitrate of the input audio is less than that of the output audio, the bitrate of the input audio is used for transcoding.'."\n" + .'* false'."\n" + ."\n" + .'Default value:'."\n" + ."\n" + .'* If this parameter is not specified and the codec of the output audio is different from that of the input audio, the default value is false.'."\n" + .'* If this parameter is not specified and the codec of the output audio is the same as that of the input audio, the default value is true.'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'IsCheckAudioBitrateFail' => [ + 'description' => 'Indicates whether the audio bitrate was checked. You can specify only one of the IsCheckAudioBitrate and IsCheckAudioBitrateFail parameters. The priority of the IsCheckAudioBitrateFail parameter is higher. Valid values:'."\n" + ."\n" + .'* true If the bitrate of the input audio is less than that of the output audio, the transcoding job fails.'."\n" + .'* false'."\n" + ."\n" + .'Default value: false.'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'AdjDarMethod' => [ + 'description' => 'The method that is used to adjust the resolution. This parameter takes effect only if both the Width and Height parameters are specified. You can use this parameter together with the LongShortMode parameter.'."\n" + ."\n" + .'Valid values: rescale, crop, pad, and none.'."\n" + ."\n" + .'Default value: none.'."\n", + 'type' => 'string', + 'example' => 'none', + ], + ], + ], + ], + ], + ], + ], + 'ImageWatermarks' => [ + 'title' => '图片水印配置', + 'description' => 'The watermark configuration of an image.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The watermark configuration of an image.'."\n", + 'type' => 'object', + 'properties' => [ + 'TemplateId' => [ + 'title' => '模板 ID。', + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'example' => '9547c6ad97cb4f2aaa29683ebd18d410', + ], + 'OverwriteParams' => [ + 'title' => '覆盖参数, 若填写会覆盖模板对应参数', + 'description' => 'The parameters that are used to overwrite the corresponding parameters of the template.'."\n", + 'type' => 'object', + 'properties' => [ + 'Width' => [ + 'title' => '宽', + 'description' => 'The width of the output video.'."\n", + 'type' => 'string', + 'example' => '32', + ], + 'Height' => [ + 'title' => '高', + 'description' => 'The height of the output video.'."\n", + 'type' => 'string', + 'example' => '32', + ], + 'Dx' => [ + 'title' => '水印位置,x', + 'description' => 'The position of the watermark on the x-axis.'."\n", + 'type' => 'string', + 'example' => '10', + ], + 'Dy' => [ + 'title' => '水印位置,y', + 'description' => 'The position of the watermark on the y-axis.'."\n", + 'type' => 'string', + 'example' => '10', + ], + 'ReferPos' => [ + 'title' => '参考位置: TopLeft, TopRight, BottomLeft, BottomRight default: TopLeft', + 'description' => 'The reference position of the watermark. Valid values: TopLeft, TopRight, BottomLeft, and BottomRight. Default value: TopLeft.'."\n", + 'type' => 'string', + 'example' => 'TopLeft', + ], + 'Timeline' => [ + 'title' => '显示时间设置', + 'description' => 'The timeline settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'Start' => [ + 'title' => '开始时间', + 'description' => 'The start time of the stream.'."\n", + 'type' => 'string', + 'example' => '00:00:05', + ], + 'Duration' => [ + 'title' => '显示时长,秒数 或者 "ToEND"', + 'description' => 'The duration of the stream. Valid values: the number of seconds or "ToEND".'."\n", + 'type' => 'string', + 'example' => 'ToEND', + ], + ], + ], + 'File' => [ + 'title' => '水印图片文件', + 'description' => 'The watermark image file.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'title' => '媒体对象类型。'."\n" + .'取值: '."\n" + .'- OSS: OSS文件。'."\n" + .'- Media: 媒资 ID。'."\n", + 'description' => 'The type of the media object. Valid values:'."\n" + ."\n" + .'* OSS: an OSS object.'."\n" + .'* Media: a media asset.'."\n", + 'type' => 'string', + 'example' => 'OSS', + ], + 'Media' => [ + 'title' => '媒体值:'."\n" + .' type 为 OSS 时,为 URL, 支持 OSS 协议和 HTTP 协议;'."\n" + .' type 为 Media 时,为媒资 ID。', + 'description' => 'The media object.'."\n" + ."\n" + .'* If Type is set to OSS, the URL of an OSS object is returned. Both the OSS and HTTP protocols are supported.'."\n" + .'* If Type is set to Media, the ID of a media asset is returned.'."\n", + 'type' => 'string', + 'example' => 'oss://bucket/path/to/video.mp4', + ], + ], + ], + ], + ], + ], + ], + ], + 'TextWatermarks' => [ + 'title' => '文字水印配置', + 'description' => 'The configurations of the text watermark.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The configurations of the text watermark.'."\n", + 'type' => 'object', + 'properties' => [ + 'TemplateId' => [ + 'title' => '模板 ID。', + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'example' => '9547c6ad97cb4f2aaa29683ebd18d410', + ], + 'OverwriteParams' => [ + 'title' => '覆盖参数, 若填写会覆盖模板对应参数', + 'description' => 'The parameters that are used to overwrite the corresponding parameters of the template.'."\n", + 'type' => 'object', + 'properties' => [ + 'Content' => [ + 'title' => '水印文本,不需要 base64 encode,字符串需要 utf-8 编码', + 'description' => 'The watermark text. Base64 encoding is not required. The string must be encoded in UTF-8.'."\n", + 'type' => 'string', + 'example' => '测试水印', + ], + 'FontName' => [ + 'title' => '字体', + 'description' => 'The font of the text.'."\n", + 'type' => 'string', + 'example' => 'SimSun', + ], + 'FontColor' => [ + 'title' => '颜色', + 'description' => 'The color of the text.'."\n", + 'type' => 'string', + 'example' => '#006400', + ], + 'FontAlpha' => [ + 'title' => '透明度', + 'description' => 'The transparency of the watermark.'."\n", + 'type' => 'string', + 'example' => '1.0', + ], + 'Top' => [ + 'title' => '水印位置,距离上边距离', + 'description' => 'The distance of the watermark from the top edge.'."\n", + 'type' => 'string', + 'example' => '10', + ], + 'Left' => [ + 'title' => '水印位置,距离左边距离', + 'description' => 'The distance of the watermark from the left edge.'."\n", + 'type' => 'string', + 'example' => '10', + ], + 'FontSize' => [ + 'title' => '字体大小', + 'description' => 'The size of the text.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '16', + ], + 'BorderWidth' => [ + 'title' => '边框宽度', + 'description' => 'The border width.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'BorderColor' => [ + 'title' => '边框颜色', + 'description' => 'The border color.'."\n", + 'type' => 'string', + 'example' => '#006400', + ], + 'Adaptive' => [ + 'title' => '根据输出视频大小调整字体 size。 true / false, default: false', + 'description' => 'Indicates whether the text size was adjusted based on the output video dimensions. Valid values: true and false. Default value: false.'."\n", + 'type' => 'string', + 'example' => 'false', + ], + ], + ], + ], + ], + ], + 'Subtitles' => [ + 'title' => '字幕压制配置', + 'description' => 'The subtitle configuration.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The subtitle configuration.'."\n", + 'type' => 'object', + 'properties' => [ + 'TemplateId' => [ + 'title' => '模板 ID。', + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'example' => '9547c6ad97cb4f2aaa29683ebd18d410', + ], + 'OverwriteParams' => [ + 'title' => '覆盖参数, 若填写会覆盖模板对应参数', + 'description' => 'The parameters that are used to overwrite the corresponding parameters of the template.'."\n", + 'type' => 'object', + 'properties' => [ + 'Format' => [ + 'title' => '字幕文件格式', + 'description' => 'The format of the subtitle file.'."\n", + 'type' => 'string', + 'example' => 'vtt', + ], + 'CharEnc' => [ + 'title' => '文件 encoding 格式', + 'description' => 'The file encoding format.'."\n", + 'type' => 'string', + 'example' => 'UTF-8', + ], + 'File' => [ + 'title' => '字幕文件', + 'description' => 'The subtitle file.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'title' => '媒体对象类型。'."\n" + .'取值: '."\n" + .'- OSS: OSS文件。'."\n" + .'- Media: 媒资 ID。'."\n", + 'description' => 'The type of the media object. Valid values:'."\n" + ."\n" + .'* OSS: an OSS object.'."\n" + .'* Media: a media asset.'."\n", + 'type' => 'string', + 'example' => 'OSS', + ], + 'Media' => [ + 'title' => '媒体值:'."\n" + .' type 为 OSS 时,为 URL, 支持 OSS 协议和 HTTP 协议;'."\n" + .' type 为 Media 时,为媒资 ID。', + 'description' => 'The media object.'."\n" + ."\n" + .'* If Type is set to OSS, the URL of an OSS object is returned. Both the OSS and HTTP protocols are supported.'."\n" + .'* If Type is set to Media, the ID of a media asset is returned.'."\n", + 'type' => 'string', + 'example' => 'oss://bucket/path/to/video.mp4', + ], + ], + ], + ], + ], + ], + ], + ], + 'Encryption' => [ + 'title' => '加密配置。', + 'description' => 'The encryption settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'EncryptType' => [ + 'title' => '加密类型。', + 'description' => 'The encryption type.'."\n", + 'type' => 'string', + 'example' => 'PrivateEncryption', + ], + 'CipherText' => [ + 'title' => '标准加密的密钥密文。', + 'description' => 'The ciphertext of HLS encryption.'."\n", + 'type' => 'string', + 'example' => 'MTYi00NDU0LTg5O****', + ], + 'DecryptKeyUri' => [ + 'title' => '标准加密的解密服务地址。', + 'description' => 'The endpoint of the decryption service for HLS encryption.'."\n", + 'type' => 'string', + 'example' => 'https://sample.com/path?CipherText=MTYi00NDU0LTg5O****', + ], + 'KeyServiceType' => [ + 'title' => '密钥服务类型。目前仅支持KMS和Base64', + 'description' => 'The type of the key service. Valid values: KMS and Base64.'."\n", + 'type' => 'string', + 'example' => 'KMS', + ], + ], + ], + 'CombineConfigs' => [ + 'title' => '多输入合流配置', + 'description' => 'The multi-input stream merge configuration.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'AudioIndex' => [ + 'title' => '音频流Index', + 'description' => 'The audio stream index.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '0 或 exclude', + ], + 'VideoIndex' => [ + 'title' => '视频流Index', + 'description' => 'The video stream index.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '0 或 exclude', + ], + 'Start' => [ + 'title' => '输入流的开始时间。 默认为0', + 'description' => 'The start time of the input stream. Default value: 0.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => '0.0', + ], + 'Duration' => [ + 'title' => '输入流的持续时间。 默认为视频时长。', + 'description' => 'The duration of the input stream. The default value is the duration of the video.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => '20.0', + ], + ], + 'description' => '', + ], + ], + ], + ], + ], + ], + ], + 'UserData' => [ + 'title' => '用户数据。', + 'description' => 'The user data.'."\n", + 'type' => 'string', + 'example' => 'user-data', + ], + 'ScheduleConfig' => [ + 'title' => '任务调度配置。', + 'description' => 'The scheduling configuration of the job.'."\n", + 'type' => 'object', + 'properties' => [ + 'PipelineId' => [ + 'title' => '管道 ID。', + 'description' => 'The ID of the ApsaraVideo Media Processing (MPS) queue to which the snapshot job was submitted.'."\n", + 'type' => 'string', + 'example' => 'e37ebee5d98b4781897f6086e89f9c56', + ], + 'Priority' => [ + 'title' => '任务优先级。数字越大优先级越高,取值范围:1~10', + 'description' => 'The priority of the job. Valid values: 1 to 10. The greater the value, the higher the priority.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '5', + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"9EDC30DC-0050-5459-B788-F761B2BE359B\\",\\n \\"TranscodeParentJob\\": {\\n \\"TranscodeJobList\\": [\\n {\\n \\"CreateTime\\": \\"2022-01-12T08:49:41Z\\",\\n \\"Name\\": \\"transcode-job\\",\\n \\"ParentJobId\\": \\"8b2198504dd340b7b3c9842a74fc9baa\\",\\n \\"JobId\\": \\"7d6a7e0d4db2457a8d45ff5d43e1bf0a\\",\\n \\"JobIndex\\": 0,\\n \\"InputGroup\\": [\\n {\\n \\"Type\\": \\"OSS\\",\\n \\"Media\\": \\"oss://bucket/path/to/video.mp4\\",\\n \\"InputUrl\\": \\"oss://bucket/path/to/video.mp4\\"\\n }\\n ],\\n \\"ProcessConfig\\": {\\n \\"Transcode\\": {\\n \\"TemplateId\\": \\"9547c6ad97cb4f2aaa29683ebd18d410\\",\\n \\"OverwriteParams\\": {\\n \\"Video\\": {\\n \\"Codec\\": \\"H.264\\",\\n \\"Profile\\": \\"Main\\",\\n \\"Bitrate\\": \\"3000\\",\\n \\"Crf\\": \\"23\\",\\n \\"Width\\": \\"1920\\",\\n \\"Height\\": \\"1080\\",\\n \\"Fps\\": \\"25\\",\\n \\"Gop\\": \\"250\\",\\n \\"Preset\\": \\"medium\\",\\n \\"ScanMode\\": \\"progressive\\",\\n \\"PixFmt\\": \\"yuv420p\\",\\n \\"Remove\\": \\"false\\",\\n \\"Crop\\": \\"1280:800:0:140\\",\\n \\"Pad\\": \\"1280:800:0:140\\",\\n \\"LongShortMode\\": \\"false\\",\\n \\"Bufsize\\": \\"6000\\",\\n \\"Maxrate\\": \\"9000\\",\\n \\"AbrMax\\": \\"6000\\"\\n },\\n \\"Audio\\": {\\n \\"Codec\\": \\"AAC\\",\\n \\"Profile\\": \\"aac_low\\",\\n \\"Samplerate\\": \\"44100\\",\\n \\"Bitrate\\": \\"128\\",\\n \\"Channels\\": \\"2\\",\\n \\"Remove\\": \\"false\\",\\n \\"Volume\\": {\\n \\"Method\\": \\"auto\\",\\n \\"IntegratedLoudnessTarget\\": \\"-6\\",\\n \\"TruePeak\\": \\"-1\\",\\n \\"LoudnessRangeTarget\\": \\"8\\"\\n }\\n },\\n \\"Container\\": {\\n \\"Format\\": \\"mp4\\"\\n },\\n \\"MuxConfig\\": {\\n \\"Segment\\": {\\n \\"Duration\\": \\"10\\",\\n \\"ForceSegTime\\": \\"2,3\\"\\n }\\n },\\n \\"TransConfig\\": {\\n \\"TransMode\\": \\"onepass\\",\\n \\"IsCheckReso\\": \\"true\\",\\n \\"IsCheckResoFail\\": \\"true\\",\\n \\"IsCheckVideoBitrate\\": \\"true\\",\\n \\"IsCheckVideoBitrateFail\\": \\"true\\",\\n \\"IsCheckAudioBitrate\\": \\"true\\",\\n \\"IsCheckAudioBitrateFail\\": \\"true\\",\\n \\"AdjDarMethod\\": \\"none\\"\\n },\\n \\"Tags\\": {\\n \\"key\\": \\"\\"\\n }\\n }\\n },\\n \\"ImageWatermarks\\": [\\n {\\n \\"TemplateId\\": \\"9547c6ad97cb4f2aaa29683ebd18d410\\",\\n \\"OverwriteParams\\": {\\n \\"Width\\": \\"32\\",\\n \\"Height\\": \\"32\\",\\n \\"Dx\\": \\"10\\",\\n \\"Dy\\": \\"10\\",\\n \\"ReferPos\\": \\"TopLeft\\",\\n \\"Timeline\\": {\\n \\"Start\\": \\"00:00:05\\",\\n \\"Duration\\": \\"ToEND\\"\\n },\\n \\"File\\": {\\n \\"Type\\": \\"OSS\\",\\n \\"Media\\": \\"oss://bucket/path/to/video.mp4\\"\\n }\\n }\\n }\\n ],\\n \\"TextWatermarks\\": [\\n {\\n \\"TemplateId\\": \\"9547c6ad97cb4f2aaa29683ebd18d410\\",\\n \\"OverwriteParams\\": {\\n \\"Content\\": \\"测试水印\\",\\n \\"FontName\\": \\"SimSun\\",\\n \\"FontColor\\": \\"#006400\\",\\n \\"FontAlpha\\": \\"1.0\\",\\n \\"Top\\": \\"10\\",\\n \\"Left\\": \\"10\\",\\n \\"FontSize\\": 16,\\n \\"BorderWidth\\": 0,\\n \\"BorderColor\\": \\"#006400\\",\\n \\"Adaptive\\": \\"false\\"\\n }\\n }\\n ],\\n \\"Subtitles\\": [\\n {\\n \\"TemplateId\\": \\"9547c6ad97cb4f2aaa29683ebd18d410\\",\\n \\"OverwriteParams\\": {\\n \\"Format\\": \\"vtt\\",\\n \\"CharEnc\\": \\"UTF-8\\",\\n \\"File\\": {\\n \\"Type\\": \\"OSS\\",\\n \\"Media\\": \\"oss://bucket/path/to/video.mp4\\"\\n }\\n }\\n }\\n ],\\n \\"Encryption\\": {\\n \\"EncryptType\\": \\"PrivateEncryption\\",\\n \\"CipherText\\": \\"MTYi00NDU0LTg5O****\\",\\n \\"DecryptKeyUri\\": \\"https://sample.com/path?CipherText=MTYi00NDU0LTg5O****\\",\\n \\"KeyServiceType\\": \\"KMS\\"\\n },\\n \\"CombineConfigs\\": [\\n {\\n \\"AudioIndex\\": \\"0 或 exclude\\",\\n \\"VideoIndex\\": \\"0 或 exclude\\",\\n \\"Start\\": 0,\\n \\"Duration\\": 20\\n }\\n ],\\n \\"IsInheritTags\\": true\\n },\\n \\"Output\\": {\\n \\"Type\\": \\"OSS\\",\\n \\"Media\\": \\"oss://bucket/path/to/video.mp4\\",\\n \\"OutputUrl\\": \\"oss://bucket/path/to/{MediaId}/{JobId}.mp4\\\\n\\"\\n },\\n \\"UserData\\": \\"user-data\\",\\n \\"ScheduleConfig\\": {\\n \\"PipelineId\\": \\"e37ebee5d98b4781897f6086e89f9c56\\",\\n \\"Priority\\": 5\\n },\\n \\"Status\\": \\"Init\\",\\n \\"OutFileMeta\\": {\\n \\"FileBasicInfo\\": {\\n \\"MediaId\\": \\"486c2890096871edba6f81848c016303\\",\\n \\"FileName\\": \\"file.m3u8\\",\\n \\"FileStatus\\": \\"Normal\\",\\n \\"FileType\\": \\"source_file\\",\\n \\"FileSize\\": \\"31737\\",\\n \\"FileUrl\\": \\"http://bucket.oss-cn-shanghai.aliyuncs.com/path/to/file.m3u8\\",\\n \\"Region\\": \\"cn-shanghai\\",\\n \\"FormatName\\": \\"hls,applehttp\\",\\n \\"Duration\\": \\"403.039999\\",\\n \\"Bitrate\\": \\"888.563\\",\\n \\"Width\\": \\"848\\",\\n \\"Height\\": \\"478\\"\\n },\\n \\"AudioStreamInfoList\\": [\\n {\\n \\"Index\\": \\"1\\",\\n \\"CodecName\\": \\"aac\\",\\n \\"CodecLongName\\": \\"AAC (Advanced Audio Coding)\\",\\n \\"CodecTimeBase\\": \\"1/44100\\",\\n \\"CodecTagString\\": \\"[15][0][0][0]\\",\\n \\"CodecTag\\": \\"0x000f\\",\\n \\"SampleFmt\\": \\"fltp\\",\\n \\"SampleRate\\": \\"44100\\",\\n \\"Channels\\": \\"2\\",\\n \\"ChannelLayout\\": \\"stereo\\",\\n \\"Timebase\\": \\"1/90000\\",\\n \\"StartTime\\": \\"1.473556\\",\\n \\"Duration\\": \\"403.039989\\",\\n \\"Bitrate\\": \\"0.f\\",\\n \\"Lang\\": \\"cn\\"\\n }\\n ],\\n \\"VideoStreamInfoList\\": [\\n {\\n \\"Index\\": \\"0\\",\\n \\"Codec_name\\": \\"h264\\",\\n \\"Codec_long_name\\": \\"H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10\\",\\n \\"Profile\\": \\"High\\",\\n \\"Codec_time_base\\": \\"1/50\\",\\n \\"Codec_tag_string\\": \\"[27][0][0][0]\\",\\n \\"Codec_tag\\": \\"0x001b\\",\\n \\"Width\\": \\"848\\",\\n \\"Height\\": \\"478\\",\\n \\"Has_b_frames\\": \\"2\\",\\n \\"Sar\\": \\"478:477\\",\\n \\"Dar\\": \\"16:9\\",\\n \\"PixFmt\\": \\"yuv420p\\",\\n \\"Level\\": \\"31\\",\\n \\"Fps\\": \\"25.0\\",\\n \\"Avg_fps\\": \\"25.0\\",\\n \\"Time_base\\": \\"1/90000\\",\\n \\"Start_time\\": \\"1.473556\\",\\n \\"Duration\\": \\"403.039989\\",\\n \\"Bit_rate\\": \\"888.563\\",\\n \\"NumFrames\\": \\"10040\\",\\n \\"Lang\\": \\"cn\\",\\n \\"Rotate\\": \\"0\\"\\n }\\n ]\\n },\\n \\"SubmitResultJson\\": {},\\n \\"SubmitTime\\": \\"2022-01-12T08:49:41Z\\",\\n \\"FinishTime\\": \\"2022-01-12T08:49:41Z\\",\\n \\"RequestId\\": \\"31E30781-9495-5E2D-A84D-759B0A01E262\\"\\n }\\n ],\\n \\"CreateTime\\": \\"2022-01-12T08:49:41Z\\",\\n \\"Name\\": \\"transcode-job\\",\\n \\"RequestId\\": \\"31E30781-9495-5E2D-A84D-759B0A01E262\\",\\n \\"ParentJobId\\": \\"8b2198504dd340b7b3c9842a74fc9baa\\",\\n \\"JobCount\\": 1,\\n \\"Status\\": \\"Success\\",\\n \\"TriggerSource\\": \\"API\\",\\n \\"Percent\\": 0,\\n \\"SubmitTime\\": \\"2022-01-12T08:49:41Z\\",\\n \\"FinishTime\\": \\"2022-01-12T08:49:41Z\\",\\n \\"InputGroup\\": [\\n {\\n \\"Type\\": \\"OSS\\",\\n \\"Media\\": \\"oss://bucket/path/to/video.mp4\\"\\n }\\n ],\\n \\"OutputGroup\\": [\\n {\\n \\"Output\\": {\\n \\"Type\\": \\"OSS\\",\\n \\"Media\\": \\"oss://bucket/path/to/video.mp4\\",\\n \\"OutputUrl\\": \\"oss://bucket/path/to/video.mp4\\\\n\\"\\n },\\n \\"ProcessConfig\\": {\\n \\"Transcode\\": {\\n \\"TemplateId\\": \\"9547c6ad97cb4f2aaa29683ebd18d410\\",\\n \\"OverwriteParams\\": {\\n \\"Video\\": {\\n \\"Codec\\": \\"H.264\\",\\n \\"Profile\\": \\"Main\\",\\n \\"Bitrate\\": \\"3000\\",\\n \\"Crf\\": \\"23\\",\\n \\"Width\\": \\"1920\\",\\n \\"Height\\": \\"1080\\",\\n \\"Fps\\": \\"25\\",\\n \\"Gop\\": \\"250\\",\\n \\"Preset\\": \\"medium\\",\\n \\"ScanMode\\": \\"progressive\\",\\n \\"PixFmt\\": \\"yuv420p\\",\\n \\"Remove\\": \\"false\\",\\n \\"Crop\\": \\"1280:800:0:140\\",\\n \\"Pad\\": \\"1280:800:0:140\\",\\n \\"LongShortMode\\": \\"false\\",\\n \\"Bufsize\\": \\"6000\\",\\n \\"Maxrate\\": \\"9000\\",\\n \\"AbrMax\\": \\"6000\\"\\n },\\n \\"Audio\\": {\\n \\"Codec\\": \\"AAC\\",\\n \\"Profile\\": \\"aac_low\\",\\n \\"Samplerate\\": \\"44100\\",\\n \\"Bitrate\\": \\"128\\",\\n \\"Channels\\": \\"2\\",\\n \\"Remove\\": \\"false\\",\\n \\"Volume\\": {\\n \\"Method\\": \\"auto\\",\\n \\"IntegratedLoudnessTarget\\": \\"-6\\",\\n \\"TruePeak\\": \\"-1\\",\\n \\"LoudnessRangeTarget\\": \\"8\\"\\n }\\n },\\n \\"Container\\": {\\n \\"Format\\": \\"mp4\\"\\n },\\n \\"MuxConfig\\": {\\n \\"Segment\\": {\\n \\"Duration\\": \\"10\\",\\n \\"ForceSegTime\\": \\"2,3\\"\\n }\\n },\\n \\"TransConfig\\": {\\n \\"TransMode\\": \\"onepass\\",\\n \\"IsCheckReso\\": \\"true\\",\\n \\"IsCheckResoFail\\": \\"true\\",\\n \\"IsCheckVideoBitrate\\": \\"true\\",\\n \\"IsCheckVideoBitrateFail\\": \\"true\\",\\n \\"IsCheckAudioBitrate\\": \\"true\\",\\n \\"IsCheckAudioBitrateFail\\": \\"true\\",\\n \\"AdjDarMethod\\": \\"none\\"\\n }\\n }\\n },\\n \\"ImageWatermarks\\": [\\n {\\n \\"TemplateId\\": \\"9547c6ad97cb4f2aaa29683ebd18d410\\",\\n \\"OverwriteParams\\": {\\n \\"Width\\": \\"32\\",\\n \\"Height\\": \\"32\\",\\n \\"Dx\\": \\"10\\",\\n \\"Dy\\": \\"10\\",\\n \\"ReferPos\\": \\"TopLeft\\",\\n \\"Timeline\\": {\\n \\"Start\\": \\"00:00:05\\",\\n \\"Duration\\": \\"ToEND\\"\\n },\\n \\"File\\": {\\n \\"Type\\": \\"OSS\\",\\n \\"Media\\": \\"oss://bucket/path/to/video.mp4\\"\\n }\\n }\\n }\\n ],\\n \\"TextWatermarks\\": [\\n {\\n \\"TemplateId\\": \\"9547c6ad97cb4f2aaa29683ebd18d410\\",\\n \\"OverwriteParams\\": {\\n \\"Content\\": \\"测试水印\\",\\n \\"FontName\\": \\"SimSun\\",\\n \\"FontColor\\": \\"#006400\\",\\n \\"FontAlpha\\": \\"1.0\\",\\n \\"Top\\": \\"10\\",\\n \\"Left\\": \\"10\\",\\n \\"FontSize\\": 16,\\n \\"BorderWidth\\": 0,\\n \\"BorderColor\\": \\"#006400\\",\\n \\"Adaptive\\": \\"false\\"\\n }\\n }\\n ],\\n \\"Subtitles\\": [\\n {\\n \\"TemplateId\\": \\"9547c6ad97cb4f2aaa29683ebd18d410\\",\\n \\"OverwriteParams\\": {\\n \\"Format\\": \\"vtt\\",\\n \\"CharEnc\\": \\"UTF-8\\",\\n \\"File\\": {\\n \\"Type\\": \\"OSS\\",\\n \\"Media\\": \\"oss://bucket/path/to/video.mp4\\"\\n }\\n }\\n }\\n ],\\n \\"Encryption\\": {\\n \\"EncryptType\\": \\"PrivateEncryption\\",\\n \\"CipherText\\": \\"MTYi00NDU0LTg5O****\\",\\n \\"DecryptKeyUri\\": \\"https://sample.com/path?CipherText=MTYi00NDU0LTg5O****\\",\\n \\"KeyServiceType\\": \\"KMS\\"\\n },\\n \\"CombineConfigs\\": [\\n {\\n \\"AudioIndex\\": \\"0 或 exclude\\",\\n \\"VideoIndex\\": \\"0 或 exclude\\",\\n \\"Start\\": 0,\\n \\"Duration\\": 20\\n }\\n ]\\n }\\n }\\n ],\\n \\"UserData\\": \\"user-data\\",\\n \\"ScheduleConfig\\": {\\n \\"PipelineId\\": \\"e37ebee5d98b4781897f6086e89f9c56\\",\\n \\"Priority\\": 5\\n }\\n }\\n}","type":"json"}]', + 'title' => 'GetTranscodeJob', + 'summary' => 'Queries the information about a transcoding job.', + ], + 'ListTranscodeJobs' => [ + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'https', + 'http', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'StartOfCreateTime', + 'in' => 'query', + 'schema' => [ + 'title' => '任务创建时间筛选条件的起始时间。格式为: yyyy-MM-ddTHH:mm:ssZ。', + 'description' => 'The beginning of the time range during which the jobs to be queried were created. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2022-07-01T00:00:00Z', + ], + ], + [ + 'name' => 'EndOfCreateTime', + 'in' => 'query', + 'schema' => [ + 'title' => '任务创建时间筛选条件的结束时间。格式为: yyyy-MM-ddTHH:mm:ssZ。', + 'description' => 'The end of the time range during which the jobs to be queried were created. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2022-07-15T00:00:00Z', + ], + ], + [ + 'name' => 'ParentJobId', + 'in' => 'query', + 'schema' => [ + 'title' => '按 jobId 筛选。', + 'description' => 'The job ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '7b38a5d86f1e47838927b6e7ccb1****', + ], + ], + [ + 'name' => 'Status', + 'in' => 'query', + 'schema' => [ + 'title' => '任务状态 - Init: 已提交, Success: 成功, Fail: 失败', + 'description' => 'The state of the job.'."\n" + ."\n" + .'* Init: The job is submitted.'."\n" + .'* Success: The job is successful.'."\n" + .'* Fail: The job failed.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'Success', + ], + ], + [ + 'name' => 'OrderBy', + 'in' => 'query', + 'schema' => [ + 'title' => '排序顺序。目前只支持两种:CreateTimeDesc: 按创建时间降序 和 CreateTimeAsc: 按创建时间升序', + 'description' => 'The order that you use to sort the query results. Valid values:'."\n" + ."\n" + .'* CreateTimeDesc: sorts the query results by creation time in descending order.'."\n" + .'* CreateTimeAsc: sorts the query results by creation time in ascending order.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'CreateTimeDesc', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'title' => '分页大小。范围: 0~100,默认值:20。', + 'description' => 'The number of entries per page. Valid values: 0 to 100. Default value: 20.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '10', + ], + ], + [ + 'name' => 'NextPageToken', + 'in' => 'query', + 'schema' => [ + 'title' => '连续分页查询时下一页的标记 (第一页没有)。', + 'description' => 'The pagination token that is used in the next request to retrieve a new page of results. You do not need to specify this parameter for the first request.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'ab4802364a2e49208c99efab82dfa8e8', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求 id', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '31E30781-9495-5E2D-A84D-759B0A01E262', + ], + 'Jobs' => [ + 'description' => 'The list of jobs.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The information about the job.'."\n", + 'type' => 'object', + 'properties' => [ + 'CreateTime' => [ + 'title' => '任务创建时间。格式为: yyyy-MM-ddTHH:mm:ssZ 。', + 'description' => 'The time when the job was created. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2022-01-12T08:49:41Z', + ], + 'Name' => [ + 'title' => '任务名。', + 'description' => 'The job name.'."\n", + 'type' => 'string', + 'example' => 'transcode-job', + ], + 'RequestId' => [ + 'title' => '提交任务时请求 ID。', + 'description' => 'The ID of the request that submitted the job.'."\n", + 'type' => 'string', + 'example' => '31E30781-9495-5E2D-A84D-759B0A01E262', + ], + 'ParentJobId' => [ + 'title' => '主任务 ID。', + 'description' => 'The main job ID.'."\n", + 'type' => 'string', + 'example' => '8b2198504dd340b7b3c9842a74fc9baa', + ], + 'JobCount' => [ + 'title' => '子任务数量。', + 'description' => 'The number of subjobs.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'Status' => [ + 'title' => '任务状态。 Success: 所有子任务完成后,有一个子任务则为成功, Fail: 所有子任务失败', + 'description' => 'The state of the job.'."\n" + ."\n" + .'* Success: At least one of the subjobs is successful.'."\n" + .'* Fail: All subjobs failed.'."\n", + 'type' => 'string', + 'example' => 'Success', + ], + 'TriggerSource' => [ + 'title' => '任务来源。 API: API, WorkFlow: 工作流, Console: 控制台', + 'description' => 'The source of the job. Valid values:'."\n" + ."\n" + .'* API'."\n" + .'* WorkFlow'."\n" + .'* Console'."\n", + 'type' => 'string', + 'example' => 'API', + ], + 'Percent' => [ + 'title' => '任务完成百分比。', + 'description' => 'The completion percentage of the job.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'SubmitTime' => [ + 'title' => '任务提交时间。格式为: yyyy-MM-ddTHH:mm:ssZ 。', + 'description' => 'The time when the job was submitted. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2022-01-12T08:49:41Z', + ], + 'FinishTime' => [ + 'title' => '任务结束时间。格式为: yyyy-MM-ddTHH:mm:ssZ 。', + 'description' => 'The time when the job was complete. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2022-01-12T08:49:41Z', + ], + 'InputGroup' => [ + 'title' => '任务输入组。单输入时为转码任务,多输入时为合流任务。', + 'description' => 'The input group of the job. An input of a single file indicates a transcoding job. An input of multiple files indicates an audio and video stream merge job.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The input of the job.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'title' => '媒体对象类型。'."\n" + .'取值: '."\n" + .'- OSS: OSS文件。'."\n" + .'- Media: 媒资 ID。'."\n", + 'description' => 'The type of the media object. Valid values:'."\n" + ."\n" + .'* OSS: an Object Storage Service (OSS) object.'."\n" + .'* Media: a media asset.'."\n", + 'type' => 'string', + 'example' => 'OSS', + ], + 'Media' => [ + 'title' => '媒体值:'."\n" + .' type 为 OSS 时,为 URL, 支持 OSS 协议和 HTTP 协议;'."\n" + .' type 为 Media 时,为媒资 ID。', + 'description' => 'The media object.'."\n" + ."\n" + .'* If Type is set to OSS, the URL of an OSS object is returned. Both the OSS and HTTP protocols are supported.'."\n" + .'* If Type is set to Media, the ID of a media asset is returned.'."\n", + 'type' => 'string', + 'example' => 'oss://bucket/path/to/video.mp4', + ], + 'InputUrl' => [ + 'description' => 'The URL of the media asset. This parameter is specified only when the media asset is transcoded.'."\n", + 'type' => 'string', + 'example' => 'oss://bucket/path/to/video.mp4', + ], + ], + ], + ], + 'OutputGroup' => [ + 'title' => '任务输出组。', + 'description' => 'The output group of the job.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The output of the job.'."\n", + 'type' => 'object', + 'properties' => [ + 'Output' => [ + 'title' => '输出媒体配置', + 'description' => 'The output file configuration.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'title' => '媒体对象类型。'."\n" + .'取值: '."\n" + .'- OSS: OSS文件。'."\n" + .'- Media: 媒资 ID。'."\n", + 'description' => 'The type of the media object. Valid values:'."\n" + ."\n" + .'* OSS: an OSS object.'."\n" + .'* Media: a media asset.'."\n", + 'type' => 'string', + 'example' => 'OSS', + ], + 'Media' => [ + 'title' => '媒体值:'."\n" + .' type 为 OSS 时,为 URL, 支持 OSS 协议和 HTTP 协议;'."\n" + .' type 为 Media 时,为媒资 ID。', + 'description' => 'The media object. If Type is set to OSS, the URL of an OSS object is returned. Both the OSS and HTTP protocols are supported. If Type is set to Media, the ID of a media asset is returned.'."\n", + 'type' => 'string', + 'example' => 'oss://bucket/path/to/video.mp4', + ], + 'OutputUrl' => [ + 'description' => 'The URL of the transcoded output stream. This parameter is required only when the output is a media asset.'."\n", + 'type' => 'string', + 'example' => 'oss://bucket/path/to/{MediaId}/{JobId}.mp4', + ], + ], + ], + 'ProcessConfig' => [ + 'title' => '任务处理配置', + 'description' => 'The job processing configuration.'."\n", + 'type' => 'object', + 'properties' => [ + 'Transcode' => [ + 'title' => '转码配置', + 'description' => 'The transcoding configuration.'."\n", + 'type' => 'object', + 'properties' => [ + 'TemplateId' => [ + 'title' => '模板 ID。', + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'example' => '9547c6ad97cb4f2aaa29683ebd18d410', + ], + 'OverwriteParams' => [ + 'title' => '覆盖参数, 若填写会覆盖模板对应参数', + 'description' => 'The parameters that are used to overwrite the corresponding parameters of the template.'."\n", + 'type' => 'object', + 'properties' => [ + 'Video' => [ + 'title' => 'video 设置', + 'description' => 'The video settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'Codec' => [ + 'title' => '编码格式', + 'description' => 'The encoding format.'."\n", + 'type' => 'string', + 'example' => 'H.264', + ], + 'Profile' => [ + 'title' => '编码级别。'."\n" + .' 支持baseline、main、high。'."\n" + .' baseline:针对移动设备。'."\n" + .' main:针对标准分辨率设备。'."\n" + .' high:针对高分辨率设备。'."\n" + .' 默认值:high。', + 'description' => 'The encoding profile. Valid values: baseline, main, and high.'."\n" + ."\n" + .'* baseline: applicable to mobile devices.'."\n" + .'* main: applicable to standard-definition devices.'."\n" + .'* high: applicable to high-definition devices.'."\n" + ."\n" + .'Default value: high.'."\n", + 'type' => 'string', + 'example' => 'Main', + ], + 'Bitrate' => [ + 'title' => '视频平均码率。'."\n" + .' 取值范围:[10,50000]。'."\n" + .' 单位:Kbps。', + 'description' => 'The average bitrate of the video.'."\n" + ."\n" + .'* Valid values: \\[10,50000].'."\n" + .'* Unit: Kbit/s.'."\n", + 'type' => 'string', + 'example' => '3000', + ], + 'Crf' => [ + 'title' => '码率-质量控制因子。'."\n" + .' 取值范围:[0,51]。'."\n" + .' 默认值:编码格式为H264,默认值为23。编码格式为H265,默认值为26。'."\n" + .' 如果设置了Crf,则Bitrate的设置失效。', + 'description' => 'The constant rate factor.'."\n" + ."\n" + .'* Valid values: \\[0,51].'."\n" + .'* Default value: 23 if the encoding format is H.264, or 26 if the encoding format is H.265.'."\n" + ."\n" + .'If this parameter is set, the value of Bitrate becomes invalid.'."\n", + 'type' => 'string', + 'example' => '23', + ], + 'Width' => [ + 'title' => '宽。'."\n" + .' 取值范围:[128,4096]。'."\n" + .' 单位:px。'."\n" + .' 默认值:视频原始宽度。', + 'description' => 'The width of the output video.'."\n" + ."\n" + .'* Valid values: \\[128,4096].'."\n" + .'* Unit: pixels.'."\n" + .'* Default value: the width of the input video.'."\n", + 'type' => 'string', + 'example' => '1920', + ], + 'Height' => [ + 'title' => '高。'."\n" + .' 取值范围:[128,4096]。'."\n" + .' 单位:px。'."\n" + .' 默认值:视频原始高度。', + 'description' => 'The height of the output video.'."\n" + ."\n" + .'* Valid values: \\[128,4096].'."\n" + .'* Unit: pixels.'."\n" + .'* Default value: the height of the input video.'."\n", + 'type' => 'string', + 'example' => '1080', + ], + 'Fps' => [ + 'title' => '帧率。'."\n" + .' 取值范围:(0,60]。'."\n" + .' 当输入文件帧率超过60时取60。'."\n" + .' 默认值:取输入文件帧率', + 'description' => 'The frame rate.'."\n" + ."\n" + .'* Valid values: (0,60].'."\n" + .'* The value is 60 if the frame rate of the input video exceeds 60.'."\n" + .'* Default value: the frame rate of the input video.'."\n", + 'type' => 'string', + 'example' => '25', + ], + 'Gop' => [ + 'title' => '关键帧间最大帧数。'."\n" + .' 取值范围:[1,1080000]。'."\n" + .' 默认值:250。', + 'description' => 'The maximum number of frames between two keyframes.'."\n" + ."\n" + .'* Valid values: \\[1,1080000].'."\n" + .'* Default value: 250.'."\n", + 'type' => 'string', + 'example' => '250', + ], + 'Preset' => [ + 'title' => '视频算法器预置。只有H264支持该参数。'."\n" + .'支持veryfast、fast、medium、slow、slower。'."\n" + .'默认值:medium。', + 'description' => 'The preset video algorithm. This parameter takes effect only if the encoding format is H.264. Valid values: veryfast, fast, medium, slow, and slower. Default value: medium.'."\n", + 'type' => 'string', + 'example' => 'medium', + ], + 'ScanMode' => [ + 'title' => '扫描模式。'."\n" + .'支持interlaced、progressive。', + 'description' => 'The scan mode. Valid values: interlaced and progressive.'."\n", + 'type' => 'string', + 'example' => 'progressive', + ], + 'PixFmt' => [ + 'title' => '视频颜色格式。'."\n" + .' 范围:yuv420p,yuvj420p等标准颜色格式。', + 'description' => 'The pixel format of the video. Valid values: standard pixel formats such as yuv420p and yuvj420p.'."\n", + 'type' => 'string', + 'example' => 'yuv420p', + ], + 'Remove' => [ + 'title' => '是否去掉视频', + 'description' => 'Indicates whether the video was removed.'."\n", + 'type' => 'string', + 'example' => 'false', + ], + 'Crop' => [ + 'title' => '视频画面裁切'."\n" + .' 支持2种方式。'."\n" + .' 自动检测黑边并裁切,设置为“border”'."\n" + .' 自定义裁切,参数格式:width:height:left:top。'."\n" + .' 示例:1280:800:0:140', + 'description' => 'The method of video cropping. Valid values:'."\n" + ."\n" + .'* border: automatically detects and removes black bars.'."\n" + .'* A value in the width:height:left:top format: crops the videos based on the custom settings. Example: 1280:800:0:140.'."\n", + 'type' => 'string', + 'example' => '1280:800:0:140', + ], + 'Pad' => [ + 'title' => '视频贴黑边'."\n" + .' 参数格式:width:height:left:top。'."\n" + .' 示例:1280:800:0:140', + 'description' => 'The black bars added to the video.'."\n" + ."\n" + .'* Format: width:height:left:top.'."\n" + .'* Example: 1280:800:0:140.'."\n", + 'type' => 'string', + 'example' => '1280:800:0:140', + ], + 'LongShortMode' => [ + 'title' => '是否开启横竖屏自适应(即:长短边模式)', + 'description' => 'Indicates whether the auto-rotate screen feature is enabled.'."\n", + 'type' => 'string', + 'example' => 'false', + ], + 'Bufsize' => [ + 'title' => '缓冲区大小'."\n" + .' 值范围:[1000,128000]'."\n" + .' 默认值:6000'."\n" + .' 单位:Kb', + 'description' => 'The buffer size.'."\n" + ."\n" + .'* Valid values: \\[1000,128000].'."\n" + .'* Default value: 6000.'."\n" + .'* Unit: KB.'."\n", + 'type' => 'string', + 'example' => '6000', + ], + 'Maxrate' => [ + 'title' => '视频码率峰值'."\n" + .' 值范围[10,50000],单位Kbps。', + 'description' => 'The maximum bitrate of the output video. Valid values: \\[10,50000]. Unit: Kbit/s.'."\n", + 'type' => 'string', + 'example' => '9000', + ], + 'AbrMax' => [ + 'title' => 'abr 最大码率(只有窄高1有效)'."\n" + .'值范围[10,50000],单位Kbps。', + 'description' => 'The maximum adaptive bitrate (ABR). This parameter takes effect only for Narrowband HD 1.0. Valid values: \\[10,50000]. Unit: Kbit/s.'."\n", + 'type' => 'string', + 'example' => '6000', + ], + ], + ], + 'Audio' => [ + 'title' => 'audio 设置', + 'description' => 'The audio settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'Codec' => [ + 'title' => '音频编解码格式,AAC、MP3、VORBIS、FLAC。'."\n" + .' 默认值:AAC', + 'description' => 'The audio codec. Valid values: AAC, MP3, VORBIS, and FLAC. Default value: AAC.'."\n", + 'type' => 'string', + 'example' => 'AAC', + ], + 'Profile' => [ + 'title' => '音频编码预置。'."\n" + .' 当Codec为 AAC时,范围aac_low、aac_he、aac_he_v2、aac_ld、aac_eld。', + 'description' => 'The audio codec profile. If the Codec parameter is set to AAC, the valid values are aac_low, aac_he, aac_he_v2, aac_ld, and aac_eld.'."\n", + 'type' => 'string', + 'example' => 'aac_low', + ], + 'Samplerate' => [ + 'title' => '采样率。'."\n" + .' 默认值:44100'."\n" + .' 支持22050、32000、44100、48000、96000,'."\n" + .' 单位:Hz', + 'description' => 'The sampling rate.'."\n" + ."\n" + .'* Default value: 44100.'."\n" + .'* Valid values: 22050, 32000, 44100, 48000, and 96000.'."\n" + .'* Unit: Hz.'."\n", + 'type' => 'string', + 'example' => '44100', + ], + 'Bitrate' => [ + 'title' => '输出文件的音频码率。'."\n" + .' 值范围:[8,1000]'."\n" + .' 单位:Kbps'."\n" + .' 默认值:128', + 'description' => 'The audio bitrate of the output file.'."\n" + ."\n" + .'* Valid values: \\[8,1000].'."\n" + .'* Unit: Kbit/s.'."\n" + .'* Default value: 128.'."\n", + 'type' => 'string', + 'example' => '128', + ], + 'Channels' => [ + 'title' => '声道数。'."\n" + .' 默认值:2', + 'description' => 'The number of sound channels. Default value: 2.'."\n", + 'type' => 'string', + 'example' => '2', + ], + 'Remove' => [ + 'title' => '是否删除音频流。', + 'description' => 'Indicates whether the audio stream is deleted.'."\n", + 'type' => 'string', + 'example' => 'false', + ], + 'Volume' => [ + 'title' => '音量控制', + 'description' => 'The volume configurations.'."\n", + 'type' => 'object', + 'properties' => [ + 'Method' => [ + 'title' => '音量调整方式', + 'description' => 'The volume adjustment method. Valid values:'."\n", + 'type' => 'string', + 'example' => 'auto', + ], + 'IntegratedLoudnessTarget' => [ + 'title' => '目标音量', + 'description' => 'The output volume.'."\n", + 'type' => 'string', + 'example' => '-6', + ], + 'TruePeak' => [ + 'title' => '最大峰值', + 'description' => 'The peak volume.'."\n", + 'type' => 'string', + 'example' => '-1', + ], + 'LoudnessRangeTarget' => [ + 'title' => '音量范围', + 'description' => 'The volume range.'."\n", + 'type' => 'string', + 'example' => '8', + ], + ], + ], + ], + ], + 'Container' => [ + 'title' => '封装格式设置', + 'description' => 'The encapsulation format settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'Format' => [ + 'title' => '容器格式', + 'description' => 'The container format.'."\n", + 'type' => 'string', + 'example' => 'mp4', + ], + ], + ], + 'MuxConfig' => [ + 'title' => '封装设置', + 'description' => 'The encapsulation settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'Segment' => [ + 'title' => '切片设置', + 'description' => 'The segment settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'Duration' => [ + 'title' => '切片时长', + 'description' => 'The segment length.'."\n", + 'type' => 'string', + 'example' => '10', + ], + 'ForceSegTime' => [ + 'title' => '强制切片时间点', + 'description' => 'The forced segmentation point in time.'."\n", + 'type' => 'string', + 'example' => '2,3', + ], + ], + ], + ], + ], + 'Tags' => [ + 'type' => 'object', + 'additionalProperties' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + ], + 'ImageWatermarks' => [ + 'title' => '图片水印配置', + 'description' => 'The watermark configuration for an image.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The watermark configuration for an image.'."\n", + 'type' => 'object', + 'properties' => [ + 'TemplateId' => [ + 'title' => '模板 ID。', + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'example' => '9547c6ad97cb4f2aaa29683ebd18d410', + ], + 'OverwriteParams' => [ + 'title' => '覆盖参数, 若填写会覆盖模板对应参数', + 'description' => 'The parameters that are used to overwrite the corresponding parameters of the template.'."\n", + 'type' => 'object', + 'properties' => [ + 'Width' => [ + 'title' => '宽', + 'description' => 'The width of the output video.'."\n", + 'type' => 'string', + 'example' => '32', + ], + 'Height' => [ + 'title' => '高', + 'description' => 'The height of the output video.'."\n", + 'type' => 'string', + 'example' => '32', + ], + 'Dx' => [ + 'title' => '水印位置,x', + 'description' => 'The position of the watermark on the x-axis.'."\n", + 'type' => 'string', + 'example' => '10', + ], + 'Dy' => [ + 'title' => '水印位置,y', + 'description' => 'The position of the watermark on the y-axis.'."\n", + 'type' => 'string', + 'example' => '10', + ], + 'ReferPos' => [ + 'title' => '参考位置: TopLeft, TopRight, BottomLeft, BottomRight default: TopLeft', + 'description' => 'The reference position of the watermark. Valid values: TopLeft, TopRight, BottomLeft, and BottomRight. Default value: TopLeft.'."\n", + 'type' => 'string', + 'example' => 'TopLeft', + ], + 'Timeline' => [ + 'title' => '显示时间设置', + 'description' => 'The timeline settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'Start' => [ + 'title' => '开始时间', + 'description' => 'The beginning of the time range for which data was queried.'."\n", + 'type' => 'string', + 'example' => '00:00:05', + ], + 'Duration' => [ + 'title' => '显示时长,秒数 或者 "ToEND"', + 'description' => 'The duration of the stream. Valid values: the number of seconds or "ToEND".'."\n", + 'type' => 'string', + 'example' => 'ToEND', + ], + ], + ], + 'File' => [ + 'title' => '水印图片文件', + 'description' => 'The watermark image file.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'title' => '媒体对象类型。'."\n" + .'取值: '."\n" + .'- OSS: OSS文件。'."\n" + .'- Media: 媒资 ID。'."\n", + 'description' => 'The type of the media object. Valid values:'."\n" + ."\n" + .'* OSS: an OSS object.'."\n" + .'* Media: a media asset.'."\n", + 'type' => 'string', + 'example' => 'OSS', + ], + 'Media' => [ + 'title' => '媒体值:'."\n" + .' type 为 OSS 时,为 URL, 支持 OSS 协议和 HTTP 协议;'."\n" + .' type 为 Media 时,为媒资 ID。', + 'description' => 'The media object. If Type is set to OSS, the URL of an OSS object is returned. Both the OSS and HTTP protocols are supported. If Type is set to Media, the ID of a media asset is returned.'."\n", + 'type' => 'string', + 'example' => 'oss://bucket/path/to/video.mp4', + ], + ], + ], + ], + ], + ], + ], + ], + 'TextWatermarks' => [ + 'title' => '文字水印配置', + 'description' => 'The configurations of the text watermarks.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The configurations of the text watermark.'."\n", + 'type' => 'object', + 'properties' => [ + 'TemplateId' => [ + 'title' => '模板 ID。', + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'example' => '9547c6ad97cb4f2aaa29683ebd18d410', + ], + 'OverwriteParams' => [ + 'title' => '覆盖参数, 若填写会覆盖模板对应参数', + 'description' => 'The parameters that are used to overwrite the corresponding parameters of the template.'."\n", + 'type' => 'object', + 'properties' => [ + 'Content' => [ + 'title' => '水印文本,不需要 base64 encode,字符串需要 utf-8 编码', + 'description' => 'The watermark text. Base64 encoding is not required. The string must be encoded in UTF-8.'."\n", + 'type' => 'string', + 'example' => '测试水印', + ], + 'FontName' => [ + 'title' => '字体', + 'description' => 'The font of the text.'."\n", + 'type' => 'string', + 'example' => 'SimSun', + ], + 'FontColor' => [ + 'title' => '颜色', + 'description' => 'The color of the text.'."\n", + 'type' => 'string', + 'example' => '#006400', + ], + 'FontAlpha' => [ + 'title' => '透明度', + 'description' => 'The transparency of the watermark.'."\n", + 'type' => 'string', + 'example' => '1.0', + ], + 'Top' => [ + 'title' => '水印位置,距离上边距离', + 'description' => 'The distance of the watermark from the top edge.'."\n", + 'type' => 'string', + 'example' => '10', + ], + 'Left' => [ + 'title' => '水印位置,距离左边距离', + 'description' => 'The distance of the watermark from the left edge.'."\n", + 'type' => 'string', + 'example' => '10', + ], + 'FontSize' => [ + 'title' => '字体大小', + 'description' => 'The size of the text.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '16', + ], + 'BorderWidth' => [ + 'title' => '边框宽度', + 'description' => 'The border width.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'BorderColor' => [ + 'title' => '边框颜色', + 'description' => 'The border color.'."\n", + 'type' => 'string', + 'example' => '#006400', + ], + 'Adaptive' => [ + 'title' => '根据输出视频大小调整字体 size。 true / false, default: false', + 'description' => 'Indicates whether the text size was adjusted based on the output video dimensions. true / false, default: false'."\n", + 'type' => 'string', + 'example' => 'false', + ], + ], + ], + ], + ], + ], + 'Subtitles' => [ + 'title' => '字幕压制配置', + 'description' => 'The subtitle configuration.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The subtitle configuration.'."\n", + 'type' => 'object', + 'properties' => [ + 'TemplateId' => [ + 'title' => '模板 ID。', + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'example' => '9547c6ad97cb4f2aaa29683ebd18d410', + ], + 'OverwriteParams' => [ + 'title' => '覆盖参数, 若填写会覆盖模板对应参数', + 'description' => 'The parameters that are used to overwrite the corresponding parameters of the template.'."\n", + 'type' => 'object', + 'properties' => [ + 'Format' => [ + 'title' => '字幕文件格式', + 'description' => 'The format of the subtitle file.'."\n", + 'type' => 'string', + 'example' => 'vtt', + ], + 'CharEnc' => [ + 'title' => '文件 encoding 格式', + 'description' => 'The file encoding format.'."\n", + 'type' => 'string', + 'example' => 'UTF-8', + ], + 'File' => [ + 'title' => '字幕文件', + 'description' => 'The subtitle file.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'title' => '媒体对象类型。'."\n" + .'取值: '."\n" + .'- OSS: OSS文件。'."\n" + .'- Media: 媒资 ID。'."\n", + 'description' => 'The type of the media object. Valid values:'."\n" + ."\n" + .'* OSS: an OSS object.'."\n" + .'* Media: a media asset.'."\n", + 'type' => 'string', + 'example' => 'OSS', + ], + 'Media' => [ + 'title' => '媒体值:'."\n" + .' type 为 OSS 时,为 URL, 支持 OSS 协议和 HTTP 协议;'."\n" + .' type 为 Media 时,为媒资 ID。', + 'description' => 'The media object.'."\n" + ."\n" + .'* If Type is set to OSS, the URL of an OSS object is returned. Both the OSS and HTTP protocols are supported.'."\n" + .'* If Type is set to Media, the ID of a media asset is returned.'."\n", + 'type' => 'string', + 'example' => 'oss://bucket/path/to/video.mp4', + ], + ], + ], + ], + ], + ], + ], + ], + 'Encryption' => [ + 'title' => '加密配置。', + 'description' => 'The encryption settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'EncryptType' => [ + 'title' => '加密类型。', + 'description' => 'The encryption type.'."\n", + 'type' => 'string', + 'example' => 'PrivateEncryption', + ], + 'CipherText' => [ + 'title' => '标准加密的密钥密文。', + 'description' => 'The ciphertext of HTTP Live Streaming (HLS) encryption.'."\n", + 'type' => 'string', + 'example' => 'MTYi00NDU0LTg5O****', + ], + 'DecryptKeyUri' => [ + 'title' => '标准加密的解密服务地址。', + 'description' => 'The endpoint of the decryption service for HLS encryption.'."\n", + 'type' => 'string', + 'example' => 'https://sample.com/path?CipherText=MTYi00NDU0LTg5O****', + ], + ], + ], + 'CombineConfigs' => [ + 'title' => '多输入合流配置', + 'description' => 'The multi-input stream merge configuration.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'AudioIndex' => [ + 'title' => '音频流Index', + 'description' => 'The audio stream index.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '0 或 exclude', + ], + 'VideoIndex' => [ + 'title' => '视频流Index', + 'description' => 'The video stream index.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '0 或 exclude', + ], + 'Start' => [ + 'title' => '输入流的开始时间。 默认为0', + 'description' => 'The start time of the input stream. Default value: 0.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => '0.0', + ], + 'Duration' => [ + 'title' => '输入流的持续时间。 默认为视频时长。', + 'description' => 'The duration of the input stream. The default value is the duration of the video.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => '20.0', + ], + ], + 'description' => '', + ], + ], + 'IsInheritTags' => [ + 'description' => 'Indicates whether the tags of the input stream are inherited in the output stream. This parameter does not take effect when the input is not a media asset. Default value: false.'."\n", + 'type' => 'boolean', + ], + ], + ], + ], + ], + ], + 'UserData' => [ + 'title' => '用户数据。', + 'description' => 'The user data.'."\n", + 'type' => 'string', + 'example' => 'user-data', + ], + 'ScheduleConfig' => [ + 'title' => '任务调度配置。', + 'description' => 'The scheduling configuration of the job.'."\n", + 'type' => 'object', + 'properties' => [ + 'PipelineId' => [ + 'title' => '管道 ID。', + 'description' => 'The ID of the MPS queue to which the job was submitted.'."\n", + 'type' => 'string', + 'example' => 'e37ebee5d98b4781897f6086e89f9c56', + ], + 'Priority' => [ + 'title' => '任务优先级。数字越大优先级越高,取值范围:1~10', + 'description' => 'The priority of the job. Valid values: 1 to 10. The greater the value, the higher the priority.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '5', + ], + ], + ], + ], + ], + ], + 'NextPageToken' => [ + 'title' => '下一页标识,第一次提交时为空即可。下一页标识将在第一次查询后返回。', + 'description' => 'The pagination token that is used in the next request to retrieve a new page of results. You do not need to specify this parameter for the first request. The token of the next page is returned after you call this operation for the first time.'."\n", + 'type' => 'string', + 'example' => '019daf5780f74831b0e1a767c9f1c178', + ], + ], + 'description' => '', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"31E30781-9495-5E2D-A84D-759B0A01E262\\",\\n \\"Jobs\\": [\\n {\\n \\"CreateTime\\": \\"2022-01-12T08:49:41Z\\",\\n \\"Name\\": \\"transcode-job\\",\\n \\"RequestId\\": \\"31E30781-9495-5E2D-A84D-759B0A01E262\\",\\n \\"ParentJobId\\": \\"8b2198504dd340b7b3c9842a74fc****\\",\\n \\"JobCount\\": 1,\\n \\"Status\\": \\"Success\\",\\n \\"TriggerSource\\": \\"API\\",\\n \\"Percent\\": 0,\\n \\"SubmitTime\\": \\"2022-01-12T08:49:41Z\\",\\n \\"FinishTime\\": \\"2022-01-12T08:49:41Z\\",\\n \\"InputGroup\\": [\\n {\\n \\"Type\\": \\"OSS\\",\\n \\"Media\\": \\"oss://bucket/path/to/video.mp4\\",\\n \\"InputUrl\\": \\"oss://bucket/path/to/video.mp4\\"\\n }\\n ],\\n \\"OutputGroup\\": [\\n {\\n \\"Output\\": {\\n \\"Type\\": \\"OSS\\",\\n \\"Media\\": \\"oss://bucket/path/to/video.mp4\\",\\n \\"OutputUrl\\": \\"oss://bucket/path/to/{MediaId}/{JobId}.mp4\\"\\n },\\n \\"ProcessConfig\\": {\\n \\"Transcode\\": {\\n \\"TemplateId\\": \\"9547c6ad97cb4f2aaa29683ebd18****\\",\\n \\"OverwriteParams\\": {\\n \\"Video\\": {\\n \\"Codec\\": \\"H.264\\",\\n \\"Profile\\": \\"Main\\",\\n \\"Bitrate\\": \\"3000\\",\\n \\"Crf\\": \\"23\\",\\n \\"Width\\": \\"1920\\",\\n \\"Height\\": \\"1080\\",\\n \\"Fps\\": \\"25\\",\\n \\"Gop\\": \\"250\\",\\n \\"Preset\\": \\"medium\\",\\n \\"ScanMode\\": \\"progressive\\",\\n \\"PixFmt\\": \\"yuv420p\\",\\n \\"Remove\\": \\"false\\",\\n \\"Crop\\": \\"1280:800:0:140\\",\\n \\"Pad\\": \\"1280:800:0:140\\",\\n \\"LongShortMode\\": \\"false\\",\\n \\"Bufsize\\": \\"6000\\",\\n \\"Maxrate\\": \\"9000\\",\\n \\"AbrMax\\": \\"6000\\"\\n },\\n \\"Audio\\": {\\n \\"Codec\\": \\"AAC\\",\\n \\"Profile\\": \\"aac_low\\",\\n \\"Samplerate\\": \\"44100\\",\\n \\"Bitrate\\": \\"128\\",\\n \\"Channels\\": \\"2\\",\\n \\"Remove\\": \\"false\\",\\n \\"Volume\\": {\\n \\"Method\\": \\"auto\\",\\n \\"IntegratedLoudnessTarget\\": \\"-6\\",\\n \\"TruePeak\\": \\"-1\\",\\n \\"LoudnessRangeTarget\\": \\"8\\"\\n }\\n },\\n \\"Container\\": {\\n \\"Format\\": \\"mp4\\"\\n },\\n \\"MuxConfig\\": {\\n \\"Segment\\": {\\n \\"Duration\\": \\"10\\",\\n \\"ForceSegTime\\": \\"2,3\\"\\n }\\n },\\n \\"Tags\\": {\\n \\"key\\": \\"\\"\\n }\\n }\\n },\\n \\"ImageWatermarks\\": [\\n {\\n \\"TemplateId\\": \\"9547c6ad97cb4f2aaa29683ebd18****\\",\\n \\"OverwriteParams\\": {\\n \\"Width\\": \\"32\\",\\n \\"Height\\": \\"32\\",\\n \\"Dx\\": \\"10\\",\\n \\"Dy\\": \\"10\\",\\n \\"ReferPos\\": \\"TopLeft\\",\\n \\"Timeline\\": {\\n \\"Start\\": \\"00:00:05\\",\\n \\"Duration\\": \\"ToEND\\"\\n },\\n \\"File\\": {\\n \\"Type\\": \\"OSS\\",\\n \\"Media\\": \\"oss://bucket/path/to/video.mp4\\"\\n }\\n }\\n }\\n ],\\n \\"TextWatermarks\\": [\\n {\\n \\"TemplateId\\": \\"9547c6ad97cb4f2aaa29683ebd18****\\",\\n \\"OverwriteParams\\": {\\n \\"Content\\": \\"测试水印\\",\\n \\"FontName\\": \\"SimSun\\",\\n \\"FontColor\\": \\"#006400\\",\\n \\"FontAlpha\\": \\"1.0\\",\\n \\"Top\\": \\"10\\",\\n \\"Left\\": \\"10\\",\\n \\"FontSize\\": 16,\\n \\"BorderWidth\\": 0,\\n \\"BorderColor\\": \\"#006400\\",\\n \\"Adaptive\\": \\"false\\"\\n }\\n }\\n ],\\n \\"Subtitles\\": [\\n {\\n \\"TemplateId\\": \\"9547c6ad97cb4f2aaa29683ebd18****\\",\\n \\"OverwriteParams\\": {\\n \\"Format\\": \\"vtt\\",\\n \\"CharEnc\\": \\"UTF-8\\",\\n \\"File\\": {\\n \\"Type\\": \\"OSS\\",\\n \\"Media\\": \\"oss://bucket/path/to/video.mp4\\"\\n }\\n }\\n }\\n ],\\n \\"Encryption\\": {\\n \\"EncryptType\\": \\"PrivateEncryption\\",\\n \\"CipherText\\": \\"MTYi00NDU0LTg5O****\\",\\n \\"DecryptKeyUri\\": \\"https://sample.com/path?CipherText=MTYi00NDU0LTg5O****\\"\\n },\\n \\"CombineConfigs\\": [\\n {\\n \\"AudioIndex\\": \\"0 或 exclude\\",\\n \\"VideoIndex\\": \\"0 或 exclude\\",\\n \\"Start\\": 0,\\n \\"Duration\\": 20\\n }\\n ],\\n \\"IsInheritTags\\": true\\n }\\n }\\n ],\\n \\"UserData\\": \\"user-data\\",\\n \\"ScheduleConfig\\": {\\n \\"PipelineId\\": \\"e37ebee5d98b4781897f6086e89f****\\",\\n \\"Priority\\": 5\\n }\\n }\\n ],\\n \\"NextPageToken\\": \\"019daf5780f74831b0e1a767c9f1****\\"\\n}","type":"json"}]', + 'title' => 'ListTranscodeJobs', + 'summary' => 'Queries a list of transcoding jobs.', + ], + 'SubmitPackageJob' => [ + 'summary' => 'Submits a packaging job.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'https', + 'http', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'Name', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the job.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'job-name', + ], + ], + [ + 'name' => 'Inputs', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The input of the job.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The input of the job.'."\n", + 'type' => 'object', + 'properties' => [ + 'Input' => [ + 'title' => '打包播放流文件信息', + 'description' => 'The information about the input stream file.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'title' => '媒体对象类型。'."\n" + .'取值: '."\n" + .'- OSS: OSS文件。'."\n" + .'- Media: 媒资 ID。'."\n", + 'description' => 'The type of the media object. Valid values:'."\n" + ."\n" + .'* OSS: an Object Storage Service (OSS) object.'."\n" + .'* Media: a media asset.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'OSS', + ], + 'Media' => [ + 'title' => '媒体值:'."\n" + .' type 为 OSS 时,为 URL, 支持 OSS 协议和 HTTP 协议;'."\n" + .' type 为 Media 时,为媒资 ID。', + 'description' => 'The media object.'."\n" + ."\n" + .'* If Type is set to OSS, set this parameter to the URL of an OSS object. Both the OSS and HTTP protocols are supported.'."\n" + .'* If Type is set to Media, set this parameter to the ID of a media asset.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'oss://bucket/path/to/video.mp4', + ], + ], + 'required' => true, + ], + ], + 'required' => false, + ], + 'required' => true, + ], + ], + [ + 'name' => 'Output', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The output of the job.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'title' => '媒体对象类型。'."\n" + .'取值: '."\n" + .'- OSS: OSS文件。'."\n" + .'- Media: 媒资 ID。'."\n", + 'description' => 'The type of the media object. Valid values:'."\n" + ."\n" + .'* OSS: an OSS object.'."\n" + .'* Media: a media asset.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'OSS', + ], + 'Media' => [ + 'title' => '媒体值:'."\n" + .' type 为 OSS 时,为 URL, 支持 OSS 协议和 HTTP 协议;'."\n" + .' type 为 Media 时,为媒资 ID。', + 'description' => 'The media object. If Type is set to OSS, set this parameter to the URL of an OSS object. Both the OSS and HTTP protocols are supported. If Type is set to Media, set this parameter to the ID of a media asset.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'oss://bucket/path/to/video.mp4', + ], + ], + 'required' => true, + ], + ], + [ + 'name' => 'ScheduleConfig', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The scheduling settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'PipelineId' => [ + 'title' => '管道 ID。', + 'description' => 'The ID of the MPS queue to which the job was submitted.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'e37ebee5d98b4781897f6086e89f9c56', + ], + 'Priority' => [ + 'title' => '任务优先级。数字越大优先级越高,取值范围:1~10', + 'description' => 'The priority of the job. Valid values: 1 to 10. The greater the value, the higher the priority.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '5', + ], + ], + 'required' => false, + ], + ], + [ + 'name' => 'UserData', + 'in' => 'query', + 'schema' => [ + 'description' => 'The user-defined data.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{"param": "value"}', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求 id', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '31E30781-9495-5E2D-A84D-759B0A01E262', + ], + 'JobId' => [ + 'title' => '打包任务ID', + 'description' => 'The job ID.'."\n", + 'type' => 'string', + 'example' => '2d705f385b704ee5b*******a36d93e0', + ], + ], + 'description' => '', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"31E30781-9495-5E2D-A84D-759B0A01E262\\",\\n \\"JobId\\": \\"2d705f385b704ee5b*******a36d93e0\\"\\n}","type":"json"}]', + 'title' => 'SubmitPackageJob', + ], + 'GetPackageJob' => [ + 'summary' => 'Queries the information about a packaging job.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'https', + 'http', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'JobId', + 'in' => 'query', + 'schema' => [ + 'title' => '任务 ID', + 'description' => 'The job ID. You can obtain the job ID from the response parameters of the [SubmitPackageJob](~~461964~~) operation.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'ab4802364a2e49208c99efab82dfa8e8', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求 id', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '31E30781-9495-5E2D-A84D-759B0A01E262', + ], + 'PackageJob' => [ + 'title' => '打包任务信息', + 'description' => 'The information about the packaging job.'."\n", + 'type' => 'object', + 'properties' => [ + 'JobId' => [ + 'description' => 'The job ID.'."\n", + 'type' => 'string', + 'example' => 'ab4802364a2e49208c99efab82dfa8e8', + ], + 'TriggerSource' => [ + 'description' => 'The source of the job. Valid values:'."\n" + ."\n" + .'* API'."\n" + .'* WorkFlow'."\n" + .'* Console'."\n", + 'type' => 'string', + 'example' => 'API', + ], + 'Name' => [ + 'description' => 'The name of the job.'."\n", + 'type' => 'string', + 'example' => 'job-name', + ], + 'Inputs' => [ + 'description' => 'The input of the job.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The input of the job.'."\n", + 'type' => 'object', + 'properties' => [ + 'Input' => [ + 'title' => '打包播放流文件信息', + 'description' => 'The information about the input stream file.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'title' => '媒体对象类型。'."\n" + .'取值: '."\n" + .'- OSS: OSS文件。'."\n" + .'- Media: 媒资 ID。'."\n", + 'description' => 'The type of the media object. Valid values:'."\n" + ."\n" + .'* OSS: an Object Storage Service (OSS) object.'."\n" + .'* Media: a media asset.'."\n", + 'type' => 'string', + 'example' => 'OSS', + ], + 'Media' => [ + 'title' => '媒体值:'."\n" + .' type 为 OSS 时,为 URL, 支持 OSS 协议和 HTTP 协议;'."\n" + .' type 为 Media 时,为媒资 ID。', + 'description' => 'The media object.'."\n" + ."\n" + .'* If Type is set to OSS, the URL of an OSS object is returned. Both the OSS and HTTP protocols are supported.'."\n" + .'* If Type is set to Media, the ID of a media asset is returned.'."\n", + 'type' => 'string', + 'example' => 'oss://bucket/path/to/video.mp4', + ], + ], + ], + ], + ], + ], + 'Output' => [ + 'description' => 'The output of the job.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'title' => '媒体对象类型。'."\n" + .'取值: '."\n" + .'- OSS: OSS文件。'."\n" + .'- Media: 媒资 ID。'."\n", + 'description' => 'The type of the media object. Valid values:'."\n" + ."\n" + .'* OSS: an OSS object.'."\n" + .'* Media: a media asset.'."\n", + 'type' => 'string', + 'example' => 'OSS', + ], + 'Media' => [ + 'title' => '媒体值:'."\n" + .' type 为 OSS 时,为 URL, 支持 OSS 协议和 HTTP 协议;'."\n" + .' type 为 Media 时,为媒资 ID。', + 'description' => 'The media object.'."\n" + ."\n" + .'* If Type is set to OSS, the URL of an OSS object is returned. Both the OSS and HTTP protocols are supported.'."\n" + .'* If Type is set to Media, the ID of a media asset is returned.'."\n", + 'type' => 'string', + 'example' => 'oss://bucket/path/to/video.m3u8', + ], + ], + ], + 'OutputUrl' => [ + 'description' => 'The URL of the output file.'."\n", + 'type' => 'string', + 'example' => 'http://bucket.oss-cn-shanghai.aliyuncs.com/output.m3u8', + ], + 'PipelineId' => [ + 'description' => 'The ID of the MPS queue to which the job was submitted.'."\n", + 'type' => 'string', + 'example' => '36f3fee40aa047c0b067d0fb85edc12b', + ], + 'Priority' => [ + 'description' => 'The priority of the job. Valid values: 1 to 10. The greater the value, the higher the priority.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '6', + ], + 'Status' => [ + 'description' => 'The state of the job.'."\n", + 'type' => 'string', + 'example' => 'Init', + ], + 'Code' => [ + 'description' => 'The error code returned if the job fails.'."\n", + 'type' => 'string', + 'example' => 'InvalidParameter', + ], + 'Message' => [ + 'description' => 'The error message that is returned.'."\n", + 'type' => 'string', + 'example' => 'Resource content bad.', + ], + 'SubmitTime' => [ + 'description' => 'The time when the job was submitted. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2022-09-08T11:34:05Z', + ], + 'FinishTime' => [ + 'description' => 'The time when the job was complete. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2022-09-08T11:44:05Z', + ], + 'UserData' => [ + 'description' => 'The user-defined data.'."\n", + 'type' => 'string', + 'example' => '{"param": "value"}', + ], + 'CreateTime' => [ + 'description' => 'The time when the job was created. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2022-09-08T11:34:05Z'."\n", + ], + 'ModifiedTime' => [ + 'description' => 'The time when the job was last modified. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2022-09-08T11:44:05Z'."\n", + ], + ], + ], + ], + 'description' => '', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"31E30781-9495-5E2D-A84D-759B0A01E262\\",\\n \\"PackageJob\\": {\\n \\"JobId\\": \\"ab4802364a2e49208c99efab82df****\\",\\n \\"TriggerSource\\": \\"API\\",\\n \\"Name\\": \\"job-name\\",\\n \\"Inputs\\": [\\n {\\n \\"Input\\": {\\n \\"Type\\": \\"OSS\\",\\n \\"Media\\": \\"oss://bucket/path/to/video.mp4\\"\\n }\\n }\\n ],\\n \\"Output\\": {\\n \\"Type\\": \\"OSS\\",\\n \\"Media\\": \\"oss://bucket/path/to/video.m3u8\\"\\n },\\n \\"OutputUrl\\": \\"http://bucket.oss-cn-shanghai.aliyuncs.com/output.m3u8\\",\\n \\"PipelineId\\": \\"36f3fee40aa047c0b067d0fb85ed****\\",\\n \\"Priority\\": 6,\\n \\"Status\\": \\"Init\\",\\n \\"Code\\": \\"InvalidParameter\\",\\n \\"Message\\": \\"Resource content bad.\\",\\n \\"SubmitTime\\": \\"2022-09-08T11:34:05Z\\",\\n \\"FinishTime\\": \\"2022-09-08T11:44:05Z\\",\\n \\"UserData\\": \\"{\\\\\\"param\\\\\\": \\\\\\"value\\\\\\"}\\",\\n \\"CreateTime\\": \\"2022-09-08T11:34:05Z\\\\n\\",\\n \\"ModifiedTime\\": \\"2022-09-08T11:44:05Z\\\\n\\"\\n }\\n}","type":"json"}]', + 'title' => 'GetPackageJob', + ], + 'ListPackageJobs' => [ + 'summary' => 'Queries packaging jobs.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'https', + 'http', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'StartOfCreateTime', + 'in' => 'query', + 'schema' => [ + 'title' => '任务创建时间筛选条件的起始时间。格式为: yyyy-MM-ddTHH:mm:ssZ。', + 'description' => 'The beginning of the time range during which the jobs to be queried were created. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2022-07-01T00:00:00Z', + ], + ], + [ + 'name' => 'EndOfCreateTime', + 'in' => 'query', + 'schema' => [ + 'title' => '任务创建时间筛选条件的结束时间。格式为: yyyy-MM-ddTHH:mm:ssZ。', + 'description' => 'The end of the time range during which the jobs to be queried were created. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2022-07-15T00:00:00Z', + ], + ], + [ + 'name' => 'JobId', + 'in' => 'query', + 'schema' => [ + 'title' => '按 jobId 筛选。', + 'description' => 'The job ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '7b38a5d86f1e47838927b6e7ccb11cbe', + ], + ], + [ + 'name' => 'Status', + 'in' => 'query', + 'schema' => [ + 'title' => '任务状态 - Init: 已提交, Success: 成功, Fail: 失败', + 'description' => 'The state of the job.'."\n" + ."\n" + .'* Init: The job is submitted.'."\n" + .'* Success: The job is successful.'."\n" + .'* Fail: The job failed.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'Success', + ], + ], + [ + 'name' => 'OrderBy', + 'in' => 'query', + 'schema' => [ + 'title' => '排序顺序。目前只支持两种:CreateTimeDesc: 按创建时间降序 和 CreateTimeAsc: 按创建时间升序', + 'description' => 'The order that you use to sort the query results. Valid values:'."\n" + ."\n" + .'* CreateTimeDesc: sorts the jobs by creation time in descending order.'."\n" + .'* CreateTimeAsc: sorts the jobs by creation time in ascending order.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'CreateTimeDesc', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'title' => '分页大小。范围: 0~100,默认值:20。', + 'description' => 'The number of entries per page. Valid values: 0 to 100. Default value: 20.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '10', + ], + ], + [ + 'name' => 'NextPageToken', + 'in' => 'query', + 'schema' => [ + 'title' => '连续分页查询时下一页的标记 (第一页没有)。', + 'description' => 'The pagination token that is used in the next request to retrieve a new page of results. You do not need to specify this parameter for the first request.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'ab4802364a2e49208c99efab82dfa8e8', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求 id', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '31E30781-9495-5E2D-A84D-759B0A01E262', + ], + 'PackageJobList' => [ + 'title' => '打包任务列表', + 'description' => 'The list of packaging jobs.'."\n", + 'type' => 'object', + 'properties' => [ + 'PackageJobs' => [ + 'description' => 'The list of packaging jobs.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The packaging job.'."\n", + 'type' => 'object', + 'properties' => [ + 'JobId' => [ + 'description' => 'The job ID.'."\n", + 'type' => 'string', + 'example' => '7b38a5d86f1e47838927b6e7ccb11cbe', + ], + 'TriggerSource' => [ + 'description' => 'The source of the job. Valid values:'."\n" + ."\n" + .'* API'."\n" + .'* WorkFlow'."\n" + .'* Console'."\n", + 'type' => 'string', + 'example' => 'API', + ], + 'Name' => [ + 'description' => 'The name of the job.'."\n", + 'type' => 'string', + 'example' => 'job-name', + ], + 'Inputs' => [ + 'description' => 'The input of the job.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The input of the job.'."\n", + 'type' => 'object', + 'properties' => [ + 'Input' => [ + 'title' => '打包播放流文件信息', + 'description' => 'The information about the input stream file.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'title' => '媒体对象类型。'."\n" + .'取值: '."\n" + .'- OSS: OSS文件。'."\n" + .'- Media: 媒资 ID。'."\n", + 'description' => 'The type of the media object. Valid values:'."\n" + ."\n" + .'* OSS: an Object Storage Service (OSS) object.'."\n" + .'* Media: a media asset.'."\n", + 'type' => 'string', + 'example' => 'OSS', + ], + 'Media' => [ + 'title' => '媒体值:'."\n" + .' type 为 OSS 时,为 URL, 支持 OSS 协议和 HTTP 协议;'."\n" + .' type 为 Media 时,为媒资 ID。', + 'description' => 'The media object.'."\n" + ."\n" + .'* If Type is set to OSS, the URL of an OSS object is returned. Both the OSS and HTTP protocols are supported.'."\n" + .'* If Type is set to Media, set this parameter to the ID of a media asset.'."\n", + 'type' => 'string', + 'example' => 'oss://bucket/path/to/video.mp4', + ], + ], + ], + ], + ], + ], + 'Output' => [ + 'description' => 'The output of the job.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'title' => '媒体对象类型。'."\n" + .'取值: '."\n" + .'- OSS: OSS文件。'."\n" + .'- Media: 媒资 ID。'."\n", + 'description' => 'The type of the media object. Valid values:'."\n" + ."\n" + .'* OSS: an OSS object.'."\n" + .'* Media: a media asset.'."\n", + 'type' => 'string', + 'example' => 'OSS', + ], + 'Media' => [ + 'title' => '媒体值:'."\n" + .' type 为 OSS 时,为 URL, 支持 OSS 协议和 HTTP 协议;'."\n" + .' type 为 Media 时,为媒资 ID。', + 'description' => 'The media object.'."\n" + ."\n" + .'* If Type is set to OSS, the URL of an OSS object is returned. Both the OSS and HTTP protocols are supported.'."\n" + .'* If Type is set to Media, set this parameter to the ID of a media asset.'."\n", + 'type' => 'string', + 'example' => 'oss://bucket/path/to/video.mp4', + ], + ], + ], + 'PipelineId' => [ + 'description' => 'The ID of the ApsaraVideo Media Processing (MPS) queue that is used to run the job.'."\n", + 'type' => 'string', + 'example' => '5b40833e4c3e4d4e95a866abb9a42510', + ], + 'Priority' => [ + 'description' => 'The priority of the job. Valid values: 1 to 10. The greater the value, the higher the priority. Default value: 6.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '6', + ], + 'Status' => [ + 'description' => 'The state of the job.'."\n", + 'type' => 'string', + 'example' => 'Success', + ], + 'Code' => [ + 'description' => 'The error code returned if the job fails.'."\n", + 'type' => 'string', + 'example' => 'InvalidParameter', + ], + 'Message' => [ + 'description' => 'The error message that is returned.'."\n", + 'type' => 'string', + 'example' => 'Resource content bad. ', + ], + 'SubmitTime' => [ + 'description' => 'The time when the job was submitted. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2022-07-07T14:00:32Z', + ], + 'FinishTime' => [ + 'description' => 'The time when the job was complete. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2022-07-07T15:00:32Z', + ], + 'UserData' => [ + 'description' => 'The user-defined data.'."\n", + 'type' => 'string', + 'example' => '{"param": "value"}', + ], + 'CreateTime' => [ + 'description' => 'The time when the job was created. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2022-07-07T14:00:32Z', + ], + 'ModifiedTime' => [ + 'description' => 'The time when the job was last modified. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2022-07-07T15:00:32Z', + ], + ], + ], + ], + 'NextPageToken' => [ + 'title' => '下一页标识,第一次提交时为空即可。下一页标识将在第一次查询后返回。', + 'description' => 'The pagination token that is used in the next request to retrieve a new page of results. You do not need to specify this parameter for the first request. The token of the next page is returned after you call this operation for the first time.'."\n", + 'type' => 'string', + 'example' => '019daf5780f74831b0e1a767c9f1c178', + ], + ], + ], + ], + 'description' => '', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"31E30781-9495-5E2D-A84D-759B0A01E262\\",\\n \\"PackageJobList\\": {\\n \\"PackageJobs\\": [\\n {\\n \\"JobId\\": \\"7b38a5d86f1e47838927b6e7ccb1****\\",\\n \\"TriggerSource\\": \\"API\\",\\n \\"Name\\": \\"job-name\\",\\n \\"Inputs\\": [\\n {\\n \\"Input\\": {\\n \\"Type\\": \\"OSS\\",\\n \\"Media\\": \\"oss://bucket/path/to/video.mp4\\"\\n }\\n }\\n ],\\n \\"Output\\": {\\n \\"Type\\": \\"OSS\\",\\n \\"Media\\": \\"oss://bucket/path/to/video.mp4\\"\\n },\\n \\"PipelineId\\": \\"5b40833e4c3e4d4e95a866abb9a4****\\",\\n \\"Priority\\": 6,\\n \\"Status\\": \\"Success\\",\\n \\"Code\\": \\"InvalidParameter\\",\\n \\"Message\\": \\"Resource content bad. \\",\\n \\"SubmitTime\\": \\"2022-07-07T14:00:32Z\\",\\n \\"FinishTime\\": \\"2022-07-07T15:00:32Z\\",\\n \\"UserData\\": \\"{\\\\\\"param\\\\\\": \\\\\\"value\\\\\\"}\\",\\n \\"CreateTime\\": \\"2022-07-07T14:00:32Z\\",\\n \\"ModifiedTime\\": \\"2022-07-07T15:00:32Z\\"\\n }\\n ],\\n \\"NextPageToken\\": \\"019daf5780f74831b0e1a767c9f1****\\"\\n }\\n}","type":"json"}]', + 'title' => 'ListPackageJobs', + ], + 'GenerateKMSDataKey' => [ + 'summary' => 'Generates a random Key Management Service (KMS) data key used for HTTP Live Streaming (HLS) encryption and transcoding of videos.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'DataKey' => [ + 'description' => 'The information about the data key.'."\n", + 'type' => 'object', + 'properties' => [ + 'KeyId' => [ + 'description' => 'The ID of the customer master key (CMK). The ID must be globally unique.'."\n", + 'type' => 'string', + 'example' => '7906979c-8e06-46a2-be2d-68e3ccbc****'."\n", + ], + 'Plaintext' => [ + 'description' => 'The Base64-encoded plaintext of the data key.'."\n", + 'type' => 'string', + 'example' => 'QmFzZTY0IGVuY29kZWQgcGxhaW50****'."\n", + ], + 'CiphertextBlob' => [ + 'description' => 'The ciphertext of the encrypted data key. This parameter is used as CipherText when you create a transcoding job.'."\n", + 'type' => 'string', + 'example' => ' '."\n" + .'ODZhOWVmZDktM2QxNi00ODk0LWJkNGYtMWZjNDNmM2YyYWJmS7FmDBBQ0BkKsQrtRnidtPwirmDcS0ZuJCU41xxAAWk4Z8qsADfbV0b+i6kQmlvj79dJdGOvtX69Uycs901qOjop4bTS****', + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"DataKey\\": {\\n \\"KeyId\\": \\"7906979c-8e06-46a2-be2d-68e3ccbc****\\\\n\\",\\n \\"Plaintext\\": \\"QmFzZTY0IGVuY29kZWQgcGxhaW50****\\\\n\\",\\n \\"CiphertextBlob\\": \\"\\\\t\\\\nODZhOWVmZDktM2QxNi00ODk0LWJkNGYtMWZjNDNmM2YyYWJmS7FmDBBQ0BkKsQrtRnidtPwirmDcS0ZuJCU41xxAAWk4Z8qsADfbV0b+i6kQmlvj79dJdGOvtX69Uycs901qOjop4bTS****\\"\\n }\\n}","type":"json"}]', + 'title' => 'GenerateKMSDataKey', + ], + 'DecryptKMSDataKey' => [ + 'summary' => 'Decrypts the ciphertext specified by CiphertextBlob in the Key Management Service (KMS) data key.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'CiphertextBlob', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ciphertext that you want to decrypt.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'ODZhOWVmZDktM2QxNi00ODk0LWJkNGYtMWZjNDNmM2YyYWJmS7FmDBBQ0BkKsQrtRnidtPwirmDcS0ZuJCU41xxAAWk4Z8qsADfbV0b+i6kQmlvj79dJdGOvtX69Uycs901qOjop4bTS****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'DataKey' => [ + 'description' => 'The information about the decryption result.'."\n", + 'type' => 'object', + 'properties' => [ + 'KeyId' => [ + 'description' => 'The ID of the customer master key (CMK) that was used to decrypt the ciphertext.'."\n", + 'type' => 'string', + 'example' => '202b9877-5a25-46e3-a763-e20791b5****'."\n", + ], + 'Plaintext' => [ + 'description' => 'The plaintext that is generated after decryption.'."\n", + 'type' => 'string', + 'example' => 'tRYXuCwgja12xxO1N/gZERDDCLw9doZEQiPDk/Bv****'."\n", + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"DataKey\\": {\\n \\"KeyId\\": \\"202b9877-5a25-46e3-a763-e20791b5****\\\\n\\",\\n \\"Plaintext\\": \\"tRYXuCwgja12xxO1N/gZERDDCLw9doZEQiPDk/Bv****\\\\n\\"\\n }\\n}","type":"json"}]', + 'title' => 'DecryptKMSDataKey', + ], + 'SubmitSnapshotJob' => [ + 'summary' => 'Submits a snapshot job.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + 'http', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'Name', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the job.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'SampleJob', + ], + ], + [ + 'name' => 'Input', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The snapshot input.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The type of the input file. Valid values:'."\n" + ."\n" + .'1. OSS: an Object Storage Service (OSS) object.'."\n" + .'2. Media: a media asset.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'Media', + ], + 'Media' => [ + 'description' => 'The input file. If Type is set to OSS, the URL of an OSS object is returned. If Type is set to Media, the ID of a media asset is returned. The URL of an OSS object can be in one of the following formats:'."\n" + ."\n" + .'1. oss://bucket/object'."\n" + .'2. http(s)://bucket.oss-\\[RegionId].aliyuncs.com/object In the URL, bucket specifies an OSS bucket that resides in the same region as the job, and object specifies the object URL in OSS.'."\n" + ."\n" + .'> Before you use the OSS bucket in the URL, you must add the bucket on the [Storage Management](~~609918~~) page of the Intelligent Media Services (IMS) console.', + 'type' => 'string', + 'required' => true, + 'example' => 'oss://bucket/object.mp4', + ], + ], + 'required' => true, + ], + ], + [ + 'name' => 'Output', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The snapshot output.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The type of the output file. Valid values:'."\n" + ."\n" + .'1. OSS: an OSS object.'."\n" + .'2. Media: a media asset.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'OSS', + ], + 'Media' => [ + 'description' => 'The output file. If Type is set to OSS, the URL of an OSS object is returned. If Type is set to Media, the ID of a media asset is returned. The URL of an OSS object can be in one of the following formats:'."\n" + ."\n" + .'1. oss://bucket/object'."\n" + .'2. http(s)://bucket.oss-\\[RegionId].aliyuncs.com/object'."\n" + ."\n" + .'In the URL, bucket specifies an OSS bucket that resides in the same region as the job, and object specifies the object URL in OSS. If multiple static snapshots were captured, the object must contain the "{Count}" placeholder. In the case of a sprite, the object must contain the "{TileCount}" placeholder. The suffix of the WebVTT snapshot objects must be ".vtt".'."\n" + ."\n" + .'> Before you use the OSS bucket in the URL, you must add the bucket on the [Storage Management](~~609918~~) page of the IMS console.', + 'type' => 'string', + 'required' => true, + 'example' => 'oss://test-bucket/output-{Count}.jpg', + ], + ], + 'required' => true, + ], + ], + [ + 'name' => 'TemplateConfig', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The snapshot template configuration.'."\n", + 'type' => 'object', + 'properties' => [ + 'TemplateId' => [ + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '****96e8864746a0b6f3****'."\n", + ], + 'OverwriteParams' => [ + 'description' => 'The parameters that are used to overwrite the corresponding parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The snapshot type. Valid values:'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'Sprite', + ], + 'FrameType' => [ + 'title' => '截图公共参数', + 'description' => 'The type of the frame.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'intra', + ], + 'Count' => [ + 'description' => 'The number of snapshots.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '5', + ], + 'Interval' => [ + 'description' => 'The interval at which snapshots are captured.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '10', + ], + 'Time' => [ + 'description' => 'The point in time at which the system starts to capture snapshots in the input video.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1000', + ], + 'Width' => [ + 'description' => 'The width of a captured snapshot.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '720', + ], + 'Height' => [ + 'description' => 'The height of a captured snapshot.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '480', + ], + 'BlackLevel' => [ + 'description' => 'The threshold that is used to filter out black frames for the first snapshot to be captured. This feature is available if you request the system to capture multiple snapshots.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '30', + ], + 'PixelBlackThreshold' => [ + 'description' => 'The color value threshold that determines whether a pixel is black.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '70', + ], + 'SpriteSnapshotConfig' => [ + 'title' => '雪碧图配置', + 'description' => 'The configuration of the sprite snapshot.'."\n", + 'type' => 'object', + 'properties' => [ + 'CellWidth' => [ + 'description' => 'The width of a single snapshot before tiling. The default value is the width of the output snapshot.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '720', + ], + 'CellHeight' => [ + 'description' => 'The height of a single snapshot before tiling. The default value is the height of the output snapshot.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '480', + ], + 'Padding' => [ + 'description' => 'The spacing between two adjacent snapshots. Default value: 0. Unit: pixels.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '20', + ], + 'Margin' => [ + 'description' => 'The width of the frame. Default value: 0. Unit: pixels.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '20', + ], + 'Columns' => [ + 'description' => 'The number of columns that the image sprite contains.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '20', + ], + 'Lines' => [ + 'description' => 'The number of rows that the image sprite contains.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '20', + ], + 'Color' => [ + 'description' => 'The background color.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '#000000', + ], + ], + 'required' => false, + ], + 'IsSptFrag' => [ + 'title' => 'Webvtt截图配置:是否拼合输出', + 'description' => 'The WebVTT snapshot configuration that specifies whether to merge the output snapshots.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + 'required' => false, + ], + ], + 'required' => true, + ], + ], + [ + 'name' => 'ScheduleConfig', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The scheduling settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'PipelineId' => [ + 'description' => 'The ID of the ApsaraVideo Media Processing (MPS) queue that is used to run the job.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '****96e8864746a0b6f3****'."\n", + ], + ], + 'required' => false, + ], + ], + [ + 'name' => 'UserData', + 'in' => 'query', + 'schema' => [ + 'description' => 'The user-defined data.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{"test parameter": "test value"}', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PlainResponse<SnapshotJobDTO>', + 'description' => 'PlainResponse'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'JobId' => [ + 'description' => 'The job ID.'."\n", + 'type' => 'string', + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"JobId\\": \\"****20b48fb04483915d4f2cd8ac****\\"\\n}","type":"json"}]', + 'title' => 'SubmitSnapshotJob', + ], + 'SubmitDynamicImageJob' => [ + 'summary' => 'Submits an image animation job.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'https', + 'http', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'Name', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the job.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'SampleJob', + ], + ], + [ + 'name' => 'Input', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The input of the job.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The type of the input file. Valid values:'."\n" + ."\n" + .'1. OSS: an Object Storage Service (OSS) object.'."\n" + .'2. Media: a media asset.', + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'Media' => '', + 'OSS' => '', + ], + 'example' => 'OSS', + ], + 'Media' => [ + 'description' => 'The input file. If Type is set to OSS, set this parameter to the URL of an OSS object. If Type is set to Media, set this parameter to the ID of a media asset. The URL of an OSS object can be in one of the following formats:'."\n" + ."\n" + .'1. oss://bucket/object'."\n" + .'2. http(s)://bucket.oss-\\[RegionId].aliyuncs.com/object'."\n" + ."\n" + .'In the URL, bucket specifies an OSS bucket that resides in the same region as the job, and object specifies the object URL in OSS.'."\n" + ."\n" + .'> Before you use the OSS bucket in the URL, you must add the bucket on the [Storage Management](~~609918~~) page of the Intelligent Media Services (IMS) console.', + 'type' => 'string', + 'required' => true, + 'example' => 'oss://bucket/object.mp4', + ], + ], + 'required' => true, + ], + ], + [ + 'name' => 'Output', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The output of the job.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The type of the output file. Valid values:'."\n" + ."\n" + .'1. OSS: an OSS object.'."\n" + .'2. Media: a media asset.', + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'Media' => '', + 'OSS' => '', + ], + 'example' => 'Media', + ], + 'Media' => [ + 'description' => 'The output file. The file can be an OSS object or a media asset. The URL of an OSS object can be in one of the following formats:'."\n" + ."\n" + .'* oss://bucket/object'."\n" + .'* http(s)://bucket.oss-\\[regionId].aliyuncs.com/object'."\n" + ."\n" + .'In the URL, bucket specifies an OSS bucket that resides in the same region as the job, and object specifies the object URL in OSS.'."\n" + ."\n" + .'> Before you use the OSS bucket in the URL, you must add the bucket on the [Storage Management](~~609918~~) page of the IMS console.', + 'type' => 'string', + 'required' => true, + 'example' => '****96e8864746a0b6f3****', + ], + ], + 'required' => true, + ], + ], + [ + 'name' => 'TemplateConfig', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The snapshot template configuration.'."\n", + 'type' => 'object', + 'properties' => [ + 'TemplateId' => [ + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '****96e8864746a0b6f3****'."\n", + ], + 'OverwriteParams' => [ + 'description' => 'The parameters that are used to overwrite the corresponding parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'Format' => [ + 'description' => 'The format of the animated image. Valid values:'."\n" + ."\n" + .'* **gif**'."\n" + .'* **webp**'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'gif' => 'gif', + 'webp' => 'webp', + ], + 'example' => 'gif', + ], + 'Width' => [ + 'description' => 'The width of the animated image. Valid values: \\[128,4096].'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1024', + ], + 'Height' => [ + 'description' => 'The height of the animated image. Valid values: \\[128,4096].'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '720', + ], + 'Fps' => [ + 'description' => 'The frame rate. Valid values: \\[1,60].'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '15', + ], + 'ScanMode' => [ + 'description' => 'The scan mode. Valid values:'."\n" + ."\n" + .'* **interlaced**'."\n" + .'* **progressive** This is the default value.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'progressive' => '', + 'interlaced' => '', + ], + 'example' => 'progressive', + ], + 'LongShortMode' => [ + 'description' => 'Specifies whether to enable the auto-rotate screen feature. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n" + ."\n" + .'Default value: **true**.'."\n" + ."\n" + .'> If this feature is enabled, the width of the output video corresponds to the long side of the input video, which is the height of the input video in portrait mode. The height of the output video corresponds to the short side of the input video, which is the width of the input video in portrait mode.'."\n", + 'type' => 'boolean', + 'required' => false, + 'enumValueTitles' => [ + 'true' => 'true', + 'false' => 'false', + ], + 'example' => 'false', + ], + 'TimeSpan' => [ + 'title' => '时间线参数', + 'description' => 'The timeline parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'Seek' => [ + 'description' => 'The start point of the clip.'."\n" + ."\n" + .'* Format: `hh:mm:ss[.SSS]` or `sssss[.SSS]`.'."\n" + .'* Valid values: `[00:00:00.000,23:59:59.999]` or `[0.000,86399.999]`.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '01:59:59.999 or 32000.23', + ], + 'Duration' => [ + 'description' => 'The length of the clip.'."\n" + ."\n" + .'* Format: `hh:mm:ss[.SSS]` or `sssss[.SSS]`.'."\n" + .'* Valid values: `[00:00:00.000,23:59:59.999]` or `[0.000,86399.999]`.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '01:59:59.999 or 32000.23', + ], + 'End' => [ + 'description' => 'The length of the ending part of the original clip to be cropped out. If you specify this parameter, the Duration parameter becomes invalid.'."\n" + ."\n" + .'* Format: `hh:mm:ss[.SSS]` or `sssss[.SSS]`.'."\n" + .'* Valid values: `[00:00:00.000,23:59:59.999]` or `[0.000,86399.999]`.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '01:59:59.999 or 32000.23', + ], + ], + 'required' => false, + ], + ], + 'required' => false, + ], + ], + 'required' => true, + ], + ], + [ + 'name' => 'ScheduleConfig', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The scheduling settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'PipelineId' => [ + 'description' => 'The ID of the MPS queue to which the job was submitted.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '****96e8864746a0b6f3****'."\n", + ], + 'Priority' => [ + 'description' => 'The priority. Valid values: 1 to 10. Default value: 6. A greater value specifies a higher priority.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '6', + ], + ], + 'required' => false, + ], + ], + [ + 'name' => 'UserData', + 'in' => 'query', + 'schema' => [ + 'description' => 'The user-defined data.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{"SampleKey": "SampleValue"}', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PlainResponse<SnapshotJobDTO>', + 'description' => 'PlainResponse'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'JobId' => [ + 'description' => 'The job ID.'."\n", + 'type' => 'string', + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"JobId\\": \\"****20b48fb04483915d4f2cd8ac****\\"\\n}","type":"json"}]', + 'title' => 'SubmitDynamicImageJob', + ], + 'GetSnapshotUrls' => [ + 'summary' => 'Queries the accessible URLs of the output images of a snapshot job.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'https', + 'http', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'JobId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The job ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + ], + [ + 'name' => 'PageNumber', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page. Valid values: 1 to 30. Default value: 10.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '10', + ], + ], + [ + 'name' => 'OrderBy', + 'in' => 'query', + 'schema' => [ + 'title' => '排列顺序。取值:Asc,Desc', + 'description' => 'The order that you use to sort the query results. Valid values: Asc and Desc.'."\n" + ."\n" + .'- Asc'."\n" + ."\n" + .'- Desc', + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'Asc' => '', + 'Desc' => '', + ], + 'example' => 'Asc', + ], + ], + [ + 'name' => 'Timeout', + 'in' => 'query', + 'schema' => [ + 'title' => '鉴权超时时间', + 'description' => 'The authentication timeout period. Unit: seconds Default value: 3600. Maximum value: 129600 (36 hours).'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '3600', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'Total' => [ + 'title' => '截图总数量', + 'description' => 'The total number of snapshots.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '30', + ], + 'SnapshotUrls' => [ + 'title' => '截图URL', + 'description' => 'The list of snapshot URLs.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The URL of the snapshot.'."\n", + 'type' => 'string', + 'example' => 'http://test-bucket.oss-cn-shanghai.aliyuncs.com/ouoput-00001.jpg', + ], + ], + 'WebVTTUrl' => [ + 'title' => 'WebVTT文件URL', + 'description' => 'The URL of the WebVTT file.'."\n", + 'type' => 'string', + 'example' => 'http://test-bucket.oss-cn-shanghai.aliyuncs.com/ouoput.vtt', + ], + ], + 'description' => '', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"Total\\": 30,\\n \\"SnapshotUrls\\": [\\n \\"http://test-bucket.oss-cn-shanghai.aliyuncs.com/ouoput-00001.jpg\\"\\n ],\\n \\"WebVTTUrl\\": \\"http://test-bucket.oss-cn-shanghai.aliyuncs.com/ouoput.vtt\\"\\n}","type":"json"}]', + 'title' => 'GetSnapshotUrls', + ], + 'GetSnapshotJob' => [ + 'summary' => 'Queries the information about a snapshot job.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'https', + 'http', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'JobId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the snapshot job.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '****d80e4e4044975745c14b****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PlainResponse<SnapshotJobDTO>', + 'description' => 'PlainResponse'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'SnapshotJob' => [ + 'title' => '截图任务信息', + 'description' => 'The information about the snapshot job.'."\n", + 'type' => 'object', + 'properties' => [ + 'JobId' => [ + 'description' => 'The job ID.'."\n", + 'type' => 'string', + 'example' => '****d80e4e4044975745c14b****', + ], + 'TriggerSource' => [ + 'description' => 'The request trigger source.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* Console'."\n" + .'* Workflow'."\n" + .'* API'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'Console' => '', + 'Workflow' => '', + 'API' => 'API', + ], + 'example' => 'API', + ], + 'Name' => [ + 'description' => 'The name of the job.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'Type' => [ + 'description' => 'Snapshot types'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* WebVtt'."\n" + .'* Sprite'."\n" + .'* Normal'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'WebVtt' => '', + 'Sprite' => '', + 'Normal' => '', + ], + 'example' => 'Sprite', + ], + 'Input' => [ + 'description' => 'The input of the job.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The type of the input file. Valid values:'."\n" + ."\n" + .'1. OSS: an Object Storage Service (OSS) object.'."\n" + .'2. Media: a media asset.'."\n", + 'type' => 'string', + 'example' => 'OSS', + ], + 'Media' => [ + 'description' => 'The input file. If Type is set to OSS, the URL of an OSS object is returned. If Type is set to Media, the ID of a media asset is returned. The URL of an OSS object can be in one of the following formats:'."\n" + ."\n" + .'1. oss://bucket/object'."\n" + .'2. http(s)://bucket.oss-\\[RegionId].aliyuncs.com/object In the URL, bucket specifies an OSS bucket that resides in the same region as the job, and object specifies the object URL in OSS.'."\n", + 'type' => 'string', + 'example' => 'oss://test-bucket/object.mp4', + ], + 'OssFile' => [ + 'title' => '输入类型为媒资ID时的OSS地址', + 'description' => 'The three key elements of OSS.'."\n", + 'type' => 'object', + 'properties' => [ + 'Bucket' => [ + 'description' => 'The OSS bucket.'."\n", + 'type' => 'string', + 'example' => 'test-bucket', + ], + 'Location' => [ + 'description' => 'The OSS location.'."\n", + 'type' => 'string', + 'example' => 'oss-cn-shanghai', + ], + 'Object' => [ + 'description' => 'The OSS object.'."\n", + 'type' => 'string', + 'example' => 'object.mp4', + ], + ], + ], + ], + ], + 'Output' => [ + 'description' => 'The output of the job.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The type of the output file. Valid values:'."\n" + ."\n" + .'1. OSS: an OSS object.'."\n" + .'2. Media: a media asset.'."\n", + 'type' => 'string', + 'example' => 'OSS', + ], + 'Media' => [ + 'description' => 'The output file. If Type is set to OSS, the URL of an OSS object is returned. If Type is set to Media, the ID of a media asset is returned. The URL of an OSS object can be in one of the following formats:'."\n" + ."\n" + .'1. oss://bucket/object'."\n" + .'2. http(s)://bucket.oss-\\[RegionId].aliyuncs.com/object'."\n" + ."\n" + .'In the URL, bucket specifies an OSS bucket that resides in the same region as the job, and object specifies the object URL in OSS. If multiple static snapshots were captured, the object must contain the "{Count}" placeholder. In the case of a sprite, the object must contain the "{TileCount}" placeholder. The suffix of the WebVTT snapshot objects must be ".vtt".'."\n", + 'type' => 'string', + 'example' => 'http://test-bucket.oss-cn-shanghai.aliyuncs.com/output-{Count}.jpg', + ], + 'OssFile' => [ + 'title' => '输出类型为媒资ID时的OSS地址', + 'description' => 'The three key elements of OSS.'."\n", + 'type' => 'object', + 'properties' => [ + 'Bucket' => [ + 'description' => 'The OSS bucket.'."\n", + 'type' => 'string', + 'example' => 'test-bucket', + ], + 'Location' => [ + 'description' => 'The OSS location.'."\n", + 'type' => 'string', + 'example' => 'oss-cn-shanghai', + ], + 'Object' => [ + 'description' => 'The OSS object.'."\n", + 'type' => 'string', + 'example' => 'output-{Count}.jpg', + ], + ], + ], + ], + ], + 'Count' => [ + 'description' => 'The number of snapshots.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '8', + ], + 'Async' => [ + 'description' => 'Indicates whether the snapshots were captured in asynchronous mode. Default value: true.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'TemplateId' => [ + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'example' => '****d80e4e4044975745c14b****', + ], + 'TemplateConfig' => [ + 'description' => 'The snapshot template configuration.'."\n", + 'type' => 'string', + 'example' => '{"Type":"Normal","FrameType":"normal","Time":0,"Count":10}', + ], + 'PipelineId' => [ + 'description' => 'The ID of the MPS queue to which the job was submitted.'."\n", + 'type' => 'string', + 'example' => '****d80e4e4044975745c14b****', + ], + 'Status' => [ + 'description' => 'The state of the job.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* Init: The job is submitted.'."\n" + .'* Success: The job is successful.'."\n" + .'* Fail: The job failed.'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'Init' => '', + 'Success' => '', + 'Fail' => '', + ], + 'example' => 'Success', + ], + 'Code' => [ + 'description' => 'Error codes'."\n", + 'type' => 'string', + 'example' => 'ResourceNotFound', + ], + 'Message' => [ + 'description' => 'The error message that is returned.'."\n", + 'type' => 'string', + 'example' => 'The specified resource for "Pipeline" could not be found.', + ], + 'SubmitTime' => [ + 'description' => 'The time when the job was submitted.'."\n", + 'type' => 'string', + 'example' => '2022-07-12T16:17:54Z', + ], + 'FinishTime' => [ + 'description' => 'The time when the job was complete.'."\n", + 'type' => 'string', + 'example' => '2022-07-12T16:30:54Z', + ], + 'UserData' => [ + 'description' => 'The user-defined parameters.'."\n", + 'type' => 'string', + 'example' => '{"test parameter": "test value"}', + ], + 'CreateTime' => [ + 'description' => 'The time when the job was created.'."\n", + 'type' => 'string', + 'example' => '2022-07-12T16:17:54Z', + ], + 'ModifiedTime' => [ + 'description' => 'The time when the job was last modified.'."\n", + 'type' => 'string', + 'example' => '2022-07-12T16:30:54Z', + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"SnapshotJob\\": {\\n \\"JobId\\": \\"****d80e4e4044975745c14b****\\",\\n \\"TriggerSource\\": \\"API\\",\\n \\"Name\\": \\"测试任务\\",\\n \\"Type\\": \\"Sprite\\",\\n \\"Input\\": {\\n \\"Type\\": \\"OSS\\",\\n \\"Media\\": \\"oss://test-bucket/object.mp4\\",\\n \\"OssFile\\": {\\n \\"Bucket\\": \\"test-bucket\\",\\n \\"Location\\": \\"oss-cn-shanghai\\",\\n \\"Object\\": \\"object.mp4\\"\\n }\\n },\\n \\"Output\\": {\\n \\"Type\\": \\"OSS\\",\\n \\"Media\\": \\"http://test-bucket.oss-cn-shanghai.aliyuncs.com/output-{Count}.jpg\\",\\n \\"OssFile\\": {\\n \\"Bucket\\": \\"test-bucket\\",\\n \\"Location\\": \\"oss-cn-shanghai\\",\\n \\"Object\\": \\"output-{Count}.jpg\\"\\n }\\n },\\n \\"Count\\": 8,\\n \\"Async\\": true,\\n \\"TemplateId\\": \\"****d80e4e4044975745c14b****\\",\\n \\"TemplateConfig\\": \\"{\\\\\\"Type\\\\\\":\\\\\\"Normal\\\\\\",\\\\\\"FrameType\\\\\\":\\\\\\"normal\\\\\\",\\\\\\"Time\\\\\\":0,\\\\\\"Count\\\\\\":10}\\",\\n \\"PipelineId\\": \\"****d80e4e4044975745c14b****\\",\\n \\"Status\\": \\"Success\\",\\n \\"Code\\": \\"ResourceNotFound\\",\\n \\"Message\\": \\"The specified resource for \\\\\\"Pipeline\\\\\\" could not be found.\\",\\n \\"SubmitTime\\": \\"2022-07-12T16:17:54Z\\",\\n \\"FinishTime\\": \\"2022-07-12T16:30:54Z\\",\\n \\"UserData\\": \\"{\\\\\\"test parameter\\\\\\": \\\\\\"test value\\\\\\"}\\",\\n \\"CreateTime\\": \\"2022-07-12T16:17:54Z\\",\\n \\"ModifiedTime\\": \\"2022-07-12T16:30:54Z\\"\\n }\\n}","type":"json"}]', + 'title' => 'GetSnapshotJob', + ], + 'GetDynamicImageJob' => [ + 'summary' => 'Queries the information about an image animation job.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'https', + 'http', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'JobId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The job ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '****d80e4e4044975745c14b****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PlainResponse<DynamicImageJobDTO>', + 'description' => 'PlainResponse'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******36-3C1E-4417-BDB2-1E034F******', + ], + 'DynamicImageJob' => [ + 'title' => '截图任务信息', + 'description' => 'The information about the snapshot job.'."\n", + 'type' => 'object', + 'properties' => [ + 'JobId' => [ + 'description' => 'The job ID.'."\n", + 'type' => 'string', + 'example' => '****d80e4e4044975745c14b****'."\n", + ], + 'TriggerSource' => [ + 'description' => 'The request trigger source.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* Console'."\n" + .'* Workflow'."\n" + .'* API'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'Console' => '', + 'Workflow' => '', + 'API' => 'API', + ], + 'example' => 'API', + ], + 'Name' => [ + 'description' => 'The name of the job.'."\n", + 'type' => 'string', + 'example' => 'SampleJob', + ], + 'Input' => [ + 'description' => 'The input of the job.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The type of the input file. Valid values:'."\n" + ."\n" + .'1. OSS: an Object Storage Service (OSS) object.'."\n" + .'2. Media: a media asset.'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'Media' => '', + 'OSS' => '', + ], + 'example' => 'OSS', + ], + 'Media' => [ + 'description' => 'The input file. If Type is set to OSS, the URL of an OSS object is returned. If Type is set to Media, the ID of a media asset is returned. The URL of an OSS object can be in one of the following formats:'."\n" + ."\n" + .'1. OSS://bucket/object'."\n" + .'2. http(s)://bucket.oss-\\[RegionId].aliyuncs.com/object'."\n" + ."\n" + .'In the URL, bucket specifies an OSS bucket that resides in the same region as the job, and object specifies the object URL in OSS.'."\n", + 'type' => 'string', + 'example' => 'oss://test-bucket/sample-input.mp4', + ], + 'OssFile' => [ + 'title' => '输入类型为媒资ID时的OSS地址', + 'description' => 'The three key elements of OSS.'."\n", + 'type' => 'object', + 'properties' => [ + 'Bucket' => [ + 'description' => 'The OSS bucket.'."\n", + 'type' => 'string', + 'example' => 'test-bucket', + ], + 'Location' => [ + 'description' => 'The OSS location.'."\n", + 'type' => 'string', + 'example' => 'oss-cn-shanghai', + ], + 'Object' => [ + 'description' => 'The OSS object.'."\n", + 'type' => 'string', + 'example' => 'sample-input.mp4', + ], + ], + ], + ], + ], + 'Output' => [ + 'description' => 'The output of the job.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The type of the input file. Valid values: OSS: an OSS object. Media: a media asset.'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'Media' => '', + 'OSS' => '', + ], + 'example' => 'Media', + ], + 'Media' => [ + 'description' => 'The input file. If Type is set to OSS, the URL of an OSS object is returned. If Type is set to Media, the ID of a media asset is returned. The URL of an OSS object can be in one of the following formats:'."\n" + ."\n" + .'1. OSS://bucket/object'."\n" + .'2. http(s)://bucket.oss-\\[RegionId].aliyuncs.com/object In the URL, bucket specifies an OSS bucket that resides in the same region as the job, and object specifies the object URL in OSS.'."\n", + 'type' => 'string', + 'example' => '****d80e4e4044975745c14b****', + ], + 'OssFile' => [ + 'title' => '输出类型为媒资ID时的OSS地址', + 'description' => 'The three key elements of OSS.'."\n", + 'type' => 'object', + 'properties' => [ + 'Bucket' => [ + 'description' => 'The OSS bucket.'."\n", + 'type' => 'string', + 'example' => 'sample-bucket', + ], + 'Location' => [ + 'description' => 'The OSS location.'."\n", + 'type' => 'string', + 'example' => 'oss-cn-shanghai', + ], + 'Object' => [ + 'description' => 'The OSS object.'."\n", + 'type' => 'string', + 'example' => 'path/to/object', + ], + ], + ], + ], + ], + 'OutputUrl' => [ + 'description' => 'The URL of the output animated image.'."\n", + 'type' => 'string', + 'example' => 'http://test-bucket.oss-cn-shanghai.aliyuncs.com/output.gif', + ], + 'TemplateConfig' => [ + 'description' => 'The animation template configuration.'."\n", + 'type' => 'string', + 'example' => '{"Format":"gif","Fps":5,"Height":1080,"Width":1920}', + ], + 'TemplateId' => [ + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'example' => '****d80e4e4044975745c14b****', + ], + 'PipelineId' => [ + 'description' => 'The ID of the MPS queue to which the job was submitted.'."\n", + 'type' => 'string', + 'example' => '****d80e4e4044975745c14b****', + ], + 'Status' => [ + 'description' => 'The state of the job.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* Init: The job is submitted.'."\n" + .'* Success: The job is successful.'."\n" + .'* Fail: The job failed.'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'Init' => '', + 'Success' => '', + 'Fail' => '', + ], + 'example' => 'Success', + ], + 'Code' => [ + 'description' => 'Error codes'."\n", + 'type' => 'string', + 'example' => 'ResourceNotFound', + ], + 'Message' => [ + 'description' => 'The error message that is returned.'."\n", + 'type' => 'string', + 'example' => 'The specified resource for "CustomTemplate" could not be found.', + ], + 'SubmitTime' => [ + 'description' => 'The time when the job was submitted.'."\n", + 'type' => 'string', + 'example' => '2022-07-12T16:17:54Z', + ], + 'FinishTime' => [ + 'description' => 'The time when the job was complete.'."\n", + 'type' => 'string', + 'example' => '2022-07-12T16:30:54Z', + ], + 'UserData' => [ + 'description' => 'The user-defined data.'."\n", + 'type' => 'string', + 'example' => '{"sampleParam": "sampleValue"}', + ], + 'CreateTime' => [ + 'description' => 'The time when the job was created.'."\n", + 'type' => 'string', + 'example' => '2022-07-12T16:17:54Z', + ], + 'ModifiedTime' => [ + 'description' => 'The time when the job was last modified.'."\n", + 'type' => 'string', + 'example' => '2022-07-12T16:30:54Z', + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******36-3C1E-4417-BDB2-1E034F******\\",\\n \\"DynamicImageJob\\": {\\n \\"JobId\\": \\"****d80e4e4044975745c14b****\\\\n\\",\\n \\"TriggerSource\\": \\"API\\",\\n \\"Name\\": \\"SampleJob\\",\\n \\"Input\\": {\\n \\"Type\\": \\"OSS\\",\\n \\"Media\\": \\"oss://test-bucket/sample-input.mp4\\",\\n \\"OssFile\\": {\\n \\"Bucket\\": \\"test-bucket\\",\\n \\"Location\\": \\"oss-cn-shanghai\\",\\n \\"Object\\": \\"sample-input.mp4\\"\\n }\\n },\\n \\"Output\\": {\\n \\"Type\\": \\"Media\\",\\n \\"Media\\": \\"****d80e4e4044975745c14b****\\",\\n \\"OssFile\\": {\\n \\"Bucket\\": \\"sample-bucket\\",\\n \\"Location\\": \\"oss-cn-shanghai\\",\\n \\"Object\\": \\"path/to/object\\"\\n }\\n },\\n \\"OutputUrl\\": \\"http://test-bucket.oss-cn-shanghai.aliyuncs.com/output.gif\\",\\n \\"TemplateConfig\\": \\"{\\\\\\"Format\\\\\\":\\\\\\"gif\\\\\\",\\\\\\"Fps\\\\\\":5,\\\\\\"Height\\\\\\":1080,\\\\\\"Width\\\\\\":1920}\\",\\n \\"TemplateId\\": \\"****d80e4e4044975745c14b****\\",\\n \\"PipelineId\\": \\"****d80e4e4044975745c14b****\\",\\n \\"Status\\": \\"Success\\",\\n \\"Code\\": \\"ResourceNotFound\\",\\n \\"Message\\": \\"The specified resource for \\\\\\"CustomTemplate\\\\\\" could not be found.\\",\\n \\"SubmitTime\\": \\"2022-07-12T16:17:54Z\\",\\n \\"FinishTime\\": \\"2022-07-12T16:30:54Z\\",\\n \\"UserData\\": \\"{\\\\\\"sampleParam\\\\\\": \\\\\\"sampleValue\\\\\\"}\\",\\n \\"CreateTime\\": \\"2022-07-12T16:17:54Z\\",\\n \\"ModifiedTime\\": \\"2022-07-12T16:30:54Z\\"\\n }\\n}","type":"json"}]', + 'title' => 'GetDynamicImageJob', + ], + 'ListSnapshotJobs' => [ + 'summary' => 'Queries a list of snapshot jobs.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'https', + 'http', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'StartOfCreateTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The beginning of the time range during which the jobs to be queried were created.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2022-07-12T00:00:00Z', + ], + ], + [ + 'name' => 'EndOfCreateTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end of the time range during which the jobs to be queried were created.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2022-07-14T00:00:00Z', + ], + ], + [ + 'name' => 'Status', + 'in' => 'query', + 'schema' => [ + 'description' => 'The state of the job.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* Init: The job is submitted.'."\n" + .'* Success: The job is successful.'."\n" + .'* Fail: The job failed.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'Init' => '', + 'Success' => '', + 'Fail' => '', + ], + 'example' => 'Success', + ], + ], + [ + 'name' => 'OrderBy', + 'in' => 'query', + 'schema' => [ + 'title' => '排序顺序:CreateTimeDesc 和 CreateTimeAsc', + 'description' => 'The order that you use to sort the query results.'."\n" + ."\n" + .'1. CreateTimeDesc'."\n" + .'2. CreateTimeAsc'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* CreateTimeDesc: sorts the jobs by creation time in descending order'."\n" + .'* CreateTimeAsc: sorts the jobs by creation time in ascending order.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'CreateTimeDesc' => '', + 'CreateTimeAsc' => '', + ], + 'example' => 'CreateTimeDesc', + ], + ], + [ + 'name' => 'JobId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The job ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page. Default value: 20. Maximum value: 100.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '20', + ], + ], + [ + 'name' => 'NextPageToken', + 'in' => 'query', + 'schema' => [ + 'title' => '连续分页查询时下一页的标记', + 'description' => 'The pagination token that is used in the next request to retrieve a new page of results.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'Jobs' => [ + 'description' => 'The list of jobs.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The information about the snapshot job.'."\n", + 'type' => 'object', + 'properties' => [ + 'JobId' => [ + 'description' => 'The job ID.'."\n", + 'type' => 'string', + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + 'TriggerSource' => [ + 'description' => 'The request trigger source.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* Console'."\n" + .'* Workflow'."\n" + .'* API'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'Console' => '', + 'Workflow' => '', + 'API' => 'API', + ], + 'example' => 'API', + ], + 'Name' => [ + 'description' => 'The name of the job.'."\n", + 'type' => 'string', + 'example' => 'SampleJob', + ], + 'Type' => [ + 'description' => 'The type of the job.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* WebVtt'."\n" + .'* Sprite'."\n" + .'* Normal'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'WebVtt' => '', + 'Sprite' => '', + 'Normal' => '', + ], + 'example' => 'Sprite', + ], + 'Input' => [ + 'description' => 'The input of the job.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The type of the input file. Valid values:'."\n" + ."\n" + .'1. OSS: an Object Storage Service (OSS) object.'."\n" + .'2. Media: a media asset.'."\n", + 'type' => 'string', + 'example' => 'OSS', + ], + 'Media' => [ + 'description' => 'The input file. If Type is set to OSS, the URL of an OSS object is returned. If Type is set to Media, the ID of a media asset is returned. The URL of an OSS object can be in one of the following formats: 1. OSS://bucket/object 2. http(s)://bucket.oss-\\[RegionId].aliyuncs.com/object In the URL, bucket specifies an OSS bucket that resides in the same region as the job, and object specifies the object URL in OSS.'."\n", + 'type' => 'string', + 'example' => 'oss://bucket/object.mp4', + ], + ], + ], + 'Output' => [ + 'description' => 'The output of the job.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The type of the output file. Valid values:'."\n" + ."\n" + .'1. OSS: an OSS object.'."\n" + .'2. Media: a media asset.'."\n", + 'type' => 'string', + 'example' => 'OSS', + ], + 'Media' => [ + 'description' => 'The output file. If Type is set to OSS, the URL of an OSS object is returned. If Type is set to Media, the ID of a media asset is returned. The URL of an OSS object can be in one of the following formats:'."\n" + ."\n" + .'1. OSS://bucket/object'."\n" + .'2. http(s)://bucket.oss-\\[RegionId].aliyuncs.com/object'."\n" + ."\n" + .'In the URL, bucket specifies an OSS bucket that resides in the same region as the job, and object specifies the object URL in OSS. If multiple static snapshots were captured, the object must contain the "{Count}" placeholder. In the case of a sprite, the object must contain the "{TileCount}" placeholder. The suffix of the WebVTT snapshot objects must be ".vtt".'."\n", + 'type' => 'string', + 'example' => 'http://test-bucket.oss-cn-shanghai.aliyuncs.com/output-{Count}.jpg', + ], + ], + ], + 'Count' => [ + 'description' => 'The number of snapshots.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + ], + 'Async' => [ + 'description' => 'Indicates whether the snapshots were captured in asynchronous mode.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'TemplateId' => [ + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + 'PipelineId' => [ + 'description' => 'The ID of the MPS queue to which the job was submitted.'."\n", + 'type' => 'string', + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + 'Status' => [ + 'description' => 'The state of the job.'."\n" + ."\n" + .'* **Success**: The job is successful.'."\n" + .'* **Fail**: The job failed.'."\n" + .'* **Init**: The job is submitted.'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'Init' => '', + 'Success' => '', + 'Fail' => '', + ], + 'example' => 'Success', + ], + 'SubmitTime' => [ + 'description' => 'The time when the job was submitted.'."\n", + 'type' => 'string', + 'example' => '2022-07-12T16:17:54Z', + ], + 'FinishTime' => [ + 'description' => 'The time when the job was complete.'."\n", + 'type' => 'string', + 'example' => '2022-07-12T16:30:54Z', + ], + 'CreateTime' => [ + 'description' => 'The time when the job was created.'."\n", + 'type' => 'string', + 'example' => '2022-07-12T16:17:54Z', + ], + 'ModifiedTime' => [ + 'description' => 'The time when the job was last modified.'."\n", + 'type' => 'string', + 'example' => '2022-07-12T16:30:54Z', + ], + ], + ], + ], + 'NextPageToken' => [ + 'description' => 'The pagination token that is used in the next request to retrieve a new page of results.'."\n", + 'type' => 'string', + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"Jobs\\": [\\n {\\n \\"JobId\\": \\"****20b48fb04483915d4f2cd8ac****\\",\\n \\"TriggerSource\\": \\"API\\",\\n \\"Name\\": \\"SampleJob\\",\\n \\"Type\\": \\"Sprite\\",\\n \\"Input\\": {\\n \\"Type\\": \\"OSS\\",\\n \\"Media\\": \\"oss://bucket/object.mp4\\"\\n },\\n \\"Output\\": {\\n \\"Type\\": \\"OSS\\",\\n \\"Media\\": \\"http://test-bucket.oss-cn-shanghai.aliyuncs.com/output-{Count}.jpg\\"\\n },\\n \\"Count\\": 10,\\n \\"Async\\": true,\\n \\"TemplateId\\": \\"****20b48fb04483915d4f2cd8ac****\\",\\n \\"PipelineId\\": \\"****20b48fb04483915d4f2cd8ac****\\",\\n \\"Status\\": \\"Success\\",\\n \\"SubmitTime\\": \\"2022-07-12T16:17:54Z\\",\\n \\"FinishTime\\": \\"2022-07-12T16:30:54Z\\",\\n \\"CreateTime\\": \\"2022-07-12T16:17:54Z\\",\\n \\"ModifiedTime\\": \\"2022-07-12T16:30:54Z\\"\\n }\\n ],\\n \\"NextPageToken\\": \\"****20b48fb04483915d4f2cd8ac****\\"\\n}","type":"json"}]', + 'title' => 'ListSnapshotJobs', + ], + 'ListDynamicImageJobs' => [ + 'summary' => 'Queries a list of image animation jobs.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'https', + 'http', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'StartOfCreateTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The beginning of the time range during which the jobs to be queried were created.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2022-07-12T00:00:00Z', + ], + ], + [ + 'name' => 'EndOfCreateTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end of the time range during which the jobs to be queried were created.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2022-07-14T00:00:00Z', + ], + ], + [ + 'name' => 'Status', + 'in' => 'query', + 'schema' => [ + 'description' => 'The state of the job.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* Init: The job is submitted.'."\n" + .'* Success: The job is successful.'."\n" + .'* Fail: The job failed.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'Init' => '', + 'Success' => '', + 'Fail' => '', + ], + 'example' => 'Success', + ], + ], + [ + 'name' => 'OrderBy', + 'in' => 'query', + 'schema' => [ + 'title' => '排序顺序:CreateTimeDesc 和 CreateTimeAsc', + 'description' => 'The order that you use to sort the query results. Valid values:'."\n" + ."\n" + .'1. CreateTimeAsc: sorts the jobs by creation time in ascending order.'."\n" + .'2. CreateTimeDesc: sorts the jobs by creation time in descending order.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'CreateTimeDesc' => '', + 'CreateTimeAsc' => '', + ], + 'example' => 'CreateTimeDesc', + ], + ], + [ + 'name' => 'JobId', + 'in' => 'query', + 'schema' => [ + 'title' => '任务ID', + 'description' => 'The job ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '****cdb3e74639973036bc84****', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page. Default value: 20. Maximum value: 100.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '20', + ], + ], + [ + 'name' => 'NextPageToken', + 'in' => 'query', + 'schema' => [ + 'title' => '连续分页查询时下一页的标记', + 'description' => 'The pagination token that is used in the next request to retrieve a new page of results.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cdb3e74639973036bc84', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PlainResponse<List<DynamicImageJobDTO>>', + 'description' => 'PlainResponse\\<List>'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'Jobs' => [ + 'description' => 'The list of jobs.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The information about an image animation job.'."\n", + 'type' => 'object', + 'properties' => [ + 'JobId' => [ + 'description' => 'The job ID.'."\n", + 'type' => 'string', + 'example' => '****cdb3e74639973036bc84****', + ], + 'TriggerSource' => [ + 'description' => 'The request trigger source.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* Console'."\n" + .'* Workflow'."\n" + .'* API'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'Console' => '', + 'Workflow' => '', + 'API' => 'API', + ], + 'example' => 'API', + ], + 'Name' => [ + 'description' => 'The name of the job.'."\n", + 'type' => 'string', + 'example' => 'SampleJob', + ], + 'Input' => [ + 'description' => 'The input of the job.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The type of the input file. Valid values:'."\n" + ."\n" + .'1. OSS: an Object Storage Service (OSS) object.'."\n" + .'2. Media: a media asset.'."\n" + ."\n" + .'*'."\n" + .'*'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'Media' => '', + 'OSS' => '', + ], + 'example' => 'OSS', + ], + 'Media' => [ + 'description' => 'The input file. The file can be an OSS object or a media asset. The URL of an OSS object can be in one of the following formats:'."\n" + ."\n" + .'1. OSS://bucket/object'."\n" + .'2. http(s)://bucket.oss-\\[regionId].aliyuncs.com/object In the URL, bucket specifies an OSS bucket that resides in the same region as the job, and object specifies the object URL in OSS.'."\n", + 'type' => 'string', + 'example' => 'oss://bucket/object', + ], + ], + ], + 'Output' => [ + 'description' => 'The output of the job.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The type of the output file. Valid values:'."\n" + ."\n" + .'1. OSS: an OSS object.'."\n" + .'2. Media: a media asset.'."\n" + ."\n" + .'*'."\n" + .'*'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'Media' => '', + 'OSS' => '', + ], + 'example' => 'Media', + ], + 'Media' => [ + 'description' => 'The input file. If Type is set to OSS, the URL of an OSS object is returned. If Type is set to Media, the ID of a media asset is returned. The URL of an OSS object can be in one of the following formats:'."\n" + ."\n" + .'1. OSS://bucket/object'."\n" + .'2. http(s)://bucket.oss-\\[RegionId].aliyuncs.com/object In the URL, bucket specifies an OSS bucket that resides in the same region as the job, and object specifies the object URL in OSS.'."\n", + 'type' => 'string', + 'example' => '****cdb3e74639973036bc84****', + ], + ], + ], + 'TemplateId' => [ + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'example' => '****cdb3e74639973036bc84****', + ], + 'PipelineId' => [ + 'description' => 'The ID of the MPS queue to which the job was submitted.'."\n", + 'type' => 'string', + 'example' => '****cdb3e74639973036bc84****', + ], + 'Status' => [ + 'description' => 'The state of the job.'."\n" + ."\n" + .'* **Success**: The job is successful.'."\n" + .'* **Fail**: The job failed.'."\n" + .'* **Init**: The job is submitted.'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'Init' => '', + 'Success' => '', + 'Fail' => '', + ], + 'example' => 'Success', + ], + 'SubmitTime' => [ + 'description' => 'The time when the job was submitted.'."\n", + 'type' => 'string', + 'example' => '2022-07-12T16:17:54Z', + ], + 'FinishTime' => [ + 'description' => 'The time when the job was complete.'."\n", + 'type' => 'string', + 'example' => '2022-07-12T16:30:54Z', + ], + 'CreateTime' => [ + 'description' => 'The time when the job was created.'."\n", + 'type' => 'string', + 'example' => '2022-07-12T16:17:54Z', + ], + 'ModifiedTime' => [ + 'description' => 'The time when the job was last modified.'."\n", + 'type' => 'string', + 'example' => '2022-07-12T16:30:54Z', + ], + ], + ], + ], + 'NextPageToken' => [ + 'description' => 'The pagination token that is used in the next request to retrieve a new page of results.'."\n", + 'type' => 'string', + 'example' => '****cdb3e74639973036bc84****'."\n", + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"Jobs\\": [\\n {\\n \\"JobId\\": \\"****cdb3e74639973036bc84****\\",\\n \\"TriggerSource\\": \\"API\\",\\n \\"Name\\": \\"SampleJob\\",\\n \\"Input\\": {\\n \\"Type\\": \\"OSS\\",\\n \\"Media\\": \\"oss://bucket/object\\"\\n },\\n \\"Output\\": {\\n \\"Type\\": \\"Media\\",\\n \\"Media\\": \\"****cdb3e74639973036bc84****\\"\\n },\\n \\"TemplateId\\": \\"****cdb3e74639973036bc84****\\",\\n \\"PipelineId\\": \\"****cdb3e74639973036bc84****\\",\\n \\"Status\\": \\"Success\\",\\n \\"SubmitTime\\": \\"2022-07-12T16:17:54Z\\",\\n \\"FinishTime\\": \\"2022-07-12T16:30:54Z\\",\\n \\"CreateTime\\": \\"2022-07-12T16:17:54Z\\",\\n \\"ModifiedTime\\": \\"2022-07-12T16:30:54Z\\"\\n }\\n ],\\n \\"NextPageToken\\": \\"****cdb3e74639973036bc84****\\\\n\\"\\n}","type":"json"}]', + 'title' => 'ListDynamicImageJobs', + ], + 'SubmitSyncMediaInfoJob' => [ + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'abilityTreeCode' => '139552', + 'abilityTreeNodes' => [ + 'FEATUREiceFEJXOS', + ], + 'autoTest' => true, + ], + 'parameters' => [ + [ + 'name' => 'Name', + 'in' => 'query', + 'schema' => [ + 'title' => '任务名字', + 'description' => 'The job name.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'job-name', + ], + ], + [ + 'name' => 'Input', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'title' => '任务输入', + 'description' => 'The input of the job.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'title' => '媒体对象类型。'."\n" + .'取值: '."\n" + .'- OSS: OSS文件。'."\n" + .'- Media: 媒资 ID。'."\n", + 'description' => 'The type of the media object.'."\n" + ."\n" + .'* OSS: an Object Storage Service (OSS) object.'."\n" + .'* Media: a media asset.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'OSS', + ], + 'Media' => [ + 'title' => '媒体值:'."\n" + .' type 为 OSS 时,为 URL, 支持 OSS 协议和 HTTP 协议;'."\n" + .' type 为 Media 时,为媒资 ID。', + 'description' => 'The media object.'."\n" + ."\n" + .'* If Type is set to OSS, set this parameter to the URL of an OSS object. Both the OSS and HTTP protocols are supported.'."\n" + ."\n" + .'> Before you use the OSS bucket in the URL, you must add the bucket on the [Storage Management](~~609918~~) page of the Intelligent Media Services (IMS) console.'."\n" + ."\n" + .'* If Type is set to Media, set this parameter to the ID of a media asset.', + 'type' => 'string', + 'required' => true, + 'example' => 'oss://bucket/path/to/video.mp4', + ], + ], + 'required' => true, + ], + ], + [ + 'name' => 'UserData', + 'in' => 'query', + 'schema' => [ + 'title' => '用户数据', + 'description' => 'The user data.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'user-data', + ], + ], + [ + 'name' => 'ScheduleConfig', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'title' => '调度参数', + 'description' => 'The scheduling parameters. This parameter is optional.'."\n", + 'type' => 'object', + 'properties' => [ + 'PipelineId' => [ + 'title' => '管道 ID。', + 'description' => 'The ID of the MPS queue to which the job was submitted.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'e37ebee5d98b4781897f6086e89f9c56', + ], + 'Priority' => [ + 'title' => '任务优先级。数字越大优先级越高,取值范围:1~10', + 'description' => 'The priority of the job. Valid values: 1 to 10. The greater the value, the higher the priority.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '5', + ], + ], + 'required' => false, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求 id', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '31E30781-9495-5E2D-A84D-759B0A01E262', + ], + 'MediaInfoJob' => [ + 'title' => 'MediaInfoJobDTO', + 'description' => 'MediaInfoJobDTO'."\n", + 'type' => 'object', + 'properties' => [ + 'Name' => [ + 'title' => '任务名字。', + 'description' => 'The job name.'."\n", + 'type' => 'string', + 'example' => 'job-name', + ], + 'TriggerSource' => [ + 'title' => '任务来源。 API: API, WorkFlow: 工作流, Console: 控制台', + 'description' => 'The source of the job. Valid values: API, WorkFlow, and Console.'."\n", + 'type' => 'string', + 'example' => 'API', + ], + 'JobId' => [ + 'title' => '任务 ID。', + 'description' => 'The job ID.'."\n", + 'type' => 'string', + 'example' => 'ab4802364a2e49208c99efab82dfa8e8', + ], + 'Input' => [ + 'title' => '任务输入。', + 'description' => 'The input of the job.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'title' => '媒体对象类型。'."\n" + .'取值: '."\n" + .'- OSS: OSS文件。'."\n" + .'- Media: 媒资 ID。'."\n", + 'description' => 'The type of the media object. Valid values:'."\n" + ."\n" + .'* OSS: an OSS object.'."\n" + .'* Media: a media asset.'."\n", + 'type' => 'string', + 'example' => 'OSS', + ], + 'Media' => [ + 'title' => '媒体值:'."\n" + .' type 为 OSS 时,为 URL, 支持 OSS 协议和 HTTP 协议;'."\n" + .' type 为 Media 时,为媒资 ID。', + 'description' => 'The media object. If Type is set to OSS, set this parameter to the URL of an OSS object. Both the OSS and HTTP protocols are supported. If Type is set to Media, set this parameter to the ID of a media asset.'."\n", + 'type' => 'string', + 'example' => 'oss://bucket/path/to/video.mp4', + ], + ], + ], + 'Async' => [ + 'title' => '是否异步处理。', + 'description' => 'Indicates whether asynchronous processing was performed.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'UserData' => [ + 'title' => '用户数据。', + 'description' => 'The user data.'."\n", + 'type' => 'string', + 'example' => 'user-data', + ], + 'ScheduleConfig' => [ + 'title' => '调度信息。', + 'description' => 'The scheduling information.'."\n", + 'type' => 'object', + 'properties' => [ + 'PipelineId' => [ + 'title' => '管道 ID。', + 'description' => 'The ID of the MPS queue to which the job was submitted.'."\n", + 'type' => 'string', + 'example' => 'e37ebee5d98b4781897f6086e89f9c56', + ], + 'Priority' => [ + 'title' => '任务优先级。数字越大优先级越高,取值范围:1~10', + 'description' => 'The priority of the job. Valid values: 1 to 10. The greater the value, the higher the priority.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '5', + ], + ], + ], + 'Status' => [ + 'title' => '任务状态 - Init: 已提交, Success: 成功, Fail: 失败', + 'description' => 'The state of the job. Valid values: Init (the job is submitted), Success (the job is successful), and Fail (the job failed).'."\n", + 'type' => 'string', + 'example' => 'Init', + ], + 'SubmitResultJson' => [ + 'title' => '任务提交信息。', + 'description' => 'The job submission information.'."\n", + 'type' => 'object', + 'example' => '{}', + ], + 'MediaInfoProperty' => [ + 'title' => '媒体信息详情。', + 'description' => 'The details of the media information.'."\n", + 'type' => 'object', + 'properties' => [ + 'FileBasicInfo' => [ + 'title' => '基础文件信息', + 'description' => 'The basic file information.'."\n", + 'type' => 'object', + 'properties' => [ + 'MediaId' => [ + 'title' => '媒资 ID。', + 'description' => 'The ID of the media asset.'."\n", + 'type' => 'string', + 'example' => '999e68259c924f52a6be603cbb3f91cc', + ], + 'FileName' => [ + 'title' => '文件名。', + 'description' => 'The file name.'."\n", + 'type' => 'string', + 'example' => 'file.m3u8', + ], + 'FileStatus' => [ + 'title' => '文件状态。', + 'description' => 'The state of the file. Valid values:'."\n" + ."\n" + .'* Normal'."\n", + 'type' => 'string', + 'example' => 'Normal', + ], + 'FileType' => [ + 'title' => '文件类型。取值: source_file, transcode_file', + 'description' => 'The file type.'."\n", + 'type' => 'string', + 'example' => 'source_file', + ], + 'FileSize' => [ + 'title' => '文件大小。单位:Byte。', + 'description' => 'The file size. Unit: bytes.'."\n", + 'type' => 'string', + 'example' => '31737', + ], + 'FileUrl' => [ + 'title' => '文件 URL。', + 'description' => 'The URL of the file.'."\n", + 'type' => 'string', + 'example' => 'http://bucket.oss-cn-shanghai.aliyuncs.com/path/to/file.m3u8', + ], + 'Region' => [ + 'title' => '文件所在区域。', + 'description' => 'The region in which the file resides.'."\n", + 'type' => 'string', + 'example' => 'cn-shanghai', + ], + 'FormatName' => [ + 'title' => '视频格式名称。', + 'description' => 'The name of the video format.'."\n", + 'type' => 'string', + 'example' => 'hls,applehttp', + ], + 'Duration' => [ + 'title' => '视频时长(单位: 秒)。', + 'description' => 'The duration of the video. Unit: seconds.'."\n", + 'type' => 'string', + 'example' => '403.039999', + ], + 'Bitrate' => [ + 'title' => '视频码率。', + 'description' => 'The video bitrate.'."\n", + 'type' => 'string', + 'example' => '888.563', + ], + 'Width' => [ + 'title' => '宽。', + 'description' => 'The width of the output video.'."\n", + 'type' => 'string', + 'example' => '848', + ], + 'Height' => [ + 'title' => '高。', + 'description' => 'The height of the output video.'."\n", + 'type' => 'string', + 'example' => '478', + ], + ], + ], + 'AudioStreamInfoList' => [ + 'title' => '音频流信息', + 'description' => 'The information about the audio stream.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The information about the audio stream.'."\n", + 'type' => 'object', + 'properties' => [ + 'Index' => [ + 'title' => '流序号。', + 'description' => 'The sequence number of the stream.'."\n", + 'type' => 'string', + 'example' => '1', + ], + 'CodecName' => [ + 'title' => '编码格式。', + 'description' => 'The encoding format.'."\n", + 'type' => 'string', + 'example' => 'aac', + ], + 'CodecLongName' => [ + 'title' => '编码格式名。', + 'description' => 'The name of the encoding format.'."\n", + 'type' => 'string', + 'example' => 'AAC (Advanced Audio Coding)', + ], + 'CodecTimeBase' => [ + 'title' => '编码器时间基。', + 'description' => 'The time base of the encoder.'."\n", + 'type' => 'string', + 'example' => '1/44100', + ], + 'CodecTagString' => [ + 'title' => '编码器标签名。', + 'description' => 'The name of the encoder tag.'."\n", + 'type' => 'string', + 'example' => '[15][0][0][0]', + ], + 'CodecTag' => [ + 'title' => '编码器标签。', + 'description' => 'The encoder tag.'."\n", + 'type' => 'string', + 'example' => '0x000f', + ], + 'SampleFmt' => [ + 'title' => '采样格式。', + 'description' => 'The sample format.'."\n", + 'type' => 'string', + 'example' => 'fltp', + ], + 'SampleRate' => [ + 'title' => '采样率(单位: Hz)。', + 'description' => 'The sampling rate. Unit: Hz.'."\n", + 'type' => 'string', + 'example' => '44100', + ], + 'Channels' => [ + 'title' => '声道数。', + 'description' => 'The number of sound channels.'."\n", + 'type' => 'string', + 'example' => '2', + ], + 'ChannelLayout' => [ + 'title' => '声道布局。', + 'description' => 'The sound channel layout.'."\n", + 'type' => 'string', + 'example' => 'stereo', + ], + 'Timebase' => [ + 'title' => '时间基。', + 'description' => 'The time base.'."\n", + 'type' => 'string', + 'example' => '1/90000', + ], + 'StartTime' => [ + 'title' => '开始时间。', + 'description' => 'The start time of the stream.'."\n", + 'type' => 'string', + 'example' => '1.473556', + ], + 'Duration' => [ + 'title' => '时长(单位: 秒)。', + 'description' => 'The duration of the file.'."\n", + 'type' => 'string', + 'example' => '403.039989', + ], + 'Bitrate' => [ + 'title' => '码率。', + 'description' => 'The bitrate.'."\n", + 'type' => 'string', + 'example' => '0.f', + ], + 'Lang' => [ + 'title' => '语言。', + 'description' => 'The language of the stream.'."\n", + 'type' => 'string', + 'example' => 'us', + ], + ], + ], + ], + 'VideoStreamInfoList' => [ + 'title' => '视频流信息', + 'description' => 'The information about the video stream.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The information about the video stream.'."\n", + 'type' => 'object', + 'properties' => [ + 'Index' => [ + 'title' => '流序号。', + 'description' => 'The sequence number of the stream.'."\n", + 'type' => 'string', + 'example' => '0', + ], + 'Codec_name' => [ + 'title' => '编码格式。', + 'description' => 'The encoding format.'."\n", + 'type' => 'string', + 'example' => 'h264', + ], + 'Codec_long_name' => [ + 'title' => '编码格式名。', + 'description' => 'The name of the encoding format.'."\n", + 'type' => 'string', + 'example' => 'H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10', + ], + 'Profile' => [ + 'title' => '编码器预设。', + 'description' => 'The encoder profile.'."\n", + 'type' => 'string', + 'example' => 'High', + ], + 'Codec_time_base' => [ + 'description' => 'The time base of the encoder.'."\n", + 'type' => 'string', + 'example' => '1/50', + ], + 'Codec_tag_string' => [ + 'title' => '编码格式标记文本。', + 'description' => 'The tag string of the encoding format.'."\n", + 'type' => 'string', + 'example' => '[27][0][0][0]', + ], + 'Codec_tag' => [ + 'title' => '编码格式标记。', + 'description' => 'The tag of the encoding format.'."\n", + 'type' => 'string', + 'example' => '0x001b', + ], + 'Width' => [ + 'title' => '宽。', + 'description' => 'The width of the output video.'."\n", + 'type' => 'string', + 'example' => '848', + ], + 'Height' => [ + 'title' => '高。', + 'description' => 'The height of the output video.'."\n", + 'type' => 'string', + 'example' => '478', + ], + 'Has_b_frames' => [ + 'title' => '是否有B帧。'."\n" + .'取值: '."\n" + .'- 0: 没有 B 帧, '."\n" + .'- 1: 有一个 B 帧, '."\n" + .'- 2: 有多个连续 B 帧。', + 'description' => 'Indicates whether the video stream contains bidirectional frames (B-frames). Valid values:'."\n" + ."\n" + .'* 0: The stream contains no B-frames.'."\n" + .'* 1: The stream contains one B-frame.'."\n" + .'* 2: The stream contains multiple consecutive B-frames.'."\n", + 'type' => 'string', + 'example' => '2', + ], + 'Sar' => [ + 'title' => '采集点数宽高比。', + 'description' => 'The aspect ratio of the area from which the sampling points are collected.'."\n", + 'type' => 'string', + 'example' => '478:477', + ], + 'Dar' => [ + 'title' => '图像显示宽高比。', + 'description' => 'The display aspect ratio.'."\n", + 'type' => 'string', + 'example' => '16:9', + ], + 'PixFmt' => [ + 'title' => '颜色存储格式。', + 'description' => 'The pixel format.'."\n", + 'type' => 'string', + 'example' => 'yuv420p', + ], + 'Level' => [ + 'title' => '编码等级。', + 'description' => 'The codec level.'."\n", + 'type' => 'string', + 'example' => '31', + ], + 'Fps' => [ + 'title' => '帧率。', + 'description' => 'The frame rate.'."\n", + 'type' => 'string', + 'example' => '25.0', + ], + 'Avg_fps' => [ + 'title' => '平均帧率。', + 'description' => 'The average frame rate.'."\n", + 'type' => 'string', + 'example' => '25.0', + ], + 'Time_base' => [ + 'title' => '时基。', + 'description' => 'The time base.'."\n", + 'type' => 'string', + 'example' => '1/90000', + ], + 'Start_time' => [ + 'title' => '起始时间。', + 'description' => 'The start time of the stream.'."\n", + 'type' => 'string', + 'example' => '1.473556', + ], + 'Duration' => [ + 'title' => '时长(单位: 秒)。', + 'description' => 'The duration of the file.'."\n", + 'type' => 'string', + 'example' => '403.039989', + ], + 'Bit_rate' => [ + 'title' => '码率。', + 'description' => 'The bitrate.'."\n", + 'type' => 'string', + 'example' => '888.563', + ], + 'NumFrames' => [ + 'title' => '总帧数。', + 'description' => 'The total number of frames.'."\n", + 'type' => 'string', + 'example' => '10040', + ], + 'Lang' => [ + 'title' => '语言。', + 'description' => 'The language of the stream.'."\n", + 'type' => 'string', + 'example' => 'zh', + ], + 'Rotate' => [ + 'title' => '视频画面旋转角度。'."\n" + .'取值 0, 90, 180, 270。'."\n" + .'默认值 0', + 'description' => 'The rotation angle of the video image.'."\n", + 'type' => 'string', + 'example' => '0', + ], + ], + ], + ], + ], + ], + 'SubmitTime' => [ + 'title' => '任务提交时间。格式为: yyyy-MM-ddTHH:mm:ssZ 。', + 'description' => 'The time when the job was submitted. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2022-01-12T08:49:41Z', + ], + 'FinishTime' => [ + 'title' => '任务完成时间。格式为: yyyy-MM-ddTHH:mm:ssZ 。', + 'description' => 'The time when the job was complete. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2022-01-12T08:49:41Z', + ], + 'RequestId' => [ + 'title' => '请求 ID。', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '4879B9DE-E4B6-19DC-91F5-9D5F4DCE4168', + ], + ], + ], + ], + 'description' => '', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"31E30781-9495-5E2D-A84D-759B0A01E262\\",\\n \\"MediaInfoJob\\": {\\n \\"Name\\": \\"job-name\\",\\n \\"TriggerSource\\": \\"API\\",\\n \\"JobId\\": \\"ab4802364a2e49208c99efab82dfa8e8\\",\\n \\"Input\\": {\\n \\"Type\\": \\"OSS\\",\\n \\"Media\\": \\"oss://bucket/path/to/video.mp4\\"\\n },\\n \\"Async\\": true,\\n \\"UserData\\": \\"user-data\\",\\n \\"ScheduleConfig\\": {\\n \\"PipelineId\\": \\"e37ebee5d98b4781897f6086e89f9c56\\",\\n \\"Priority\\": 5\\n },\\n \\"Status\\": \\"Init\\",\\n \\"SubmitResultJson\\": {},\\n \\"MediaInfoProperty\\": {\\n \\"FileBasicInfo\\": {\\n \\"MediaId\\": \\"999e68259c924f52a6be603cbb3f91cc\\",\\n \\"FileName\\": \\"file.m3u8\\",\\n \\"FileStatus\\": \\"Normal\\",\\n \\"FileType\\": \\"source_file\\",\\n \\"FileSize\\": \\"31737\\",\\n \\"FileUrl\\": \\"http://bucket.oss-cn-shanghai.aliyuncs.com/path/to/file.m3u8\\",\\n \\"Region\\": \\"cn-shanghai\\",\\n \\"FormatName\\": \\"hls,applehttp\\",\\n \\"Duration\\": \\"403.039999\\",\\n \\"Bitrate\\": \\"888.563\\",\\n \\"Width\\": \\"848\\",\\n \\"Height\\": \\"478\\"\\n },\\n \\"AudioStreamInfoList\\": [\\n {\\n \\"Index\\": \\"1\\",\\n \\"CodecName\\": \\"aac\\",\\n \\"CodecLongName\\": \\"AAC (Advanced Audio Coding)\\",\\n \\"CodecTimeBase\\": \\"1/44100\\",\\n \\"CodecTagString\\": \\"[15][0][0][0]\\",\\n \\"CodecTag\\": \\"0x000f\\",\\n \\"SampleFmt\\": \\"fltp\\",\\n \\"SampleRate\\": \\"44100\\",\\n \\"Channels\\": \\"2\\",\\n \\"ChannelLayout\\": \\"stereo\\",\\n \\"Timebase\\": \\"1/90000\\",\\n \\"StartTime\\": \\"1.473556\\",\\n \\"Duration\\": \\"403.039989\\",\\n \\"Bitrate\\": \\"0.f\\",\\n \\"Lang\\": \\"us\\"\\n }\\n ],\\n \\"VideoStreamInfoList\\": [\\n {\\n \\"Index\\": \\"0\\",\\n \\"Codec_name\\": \\"h264\\",\\n \\"Codec_long_name\\": \\"H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10\\",\\n \\"Profile\\": \\"High\\",\\n \\"Codec_time_base\\": \\"1/50\\",\\n \\"Codec_tag_string\\": \\"[27][0][0][0]\\",\\n \\"Codec_tag\\": \\"0x001b\\",\\n \\"Width\\": \\"848\\",\\n \\"Height\\": \\"478\\",\\n \\"Has_b_frames\\": \\"2\\",\\n \\"Sar\\": \\"478:477\\",\\n \\"Dar\\": \\"16:9\\",\\n \\"PixFmt\\": \\"yuv420p\\",\\n \\"Level\\": \\"31\\",\\n \\"Fps\\": \\"25.0\\",\\n \\"Avg_fps\\": \\"25.0\\",\\n \\"Time_base\\": \\"1/90000\\",\\n \\"Start_time\\": \\"1.473556\\",\\n \\"Duration\\": \\"403.039989\\",\\n \\"Bit_rate\\": \\"888.563\\",\\n \\"NumFrames\\": \\"10040\\",\\n \\"Lang\\": \\"zh\\",\\n \\"Rotate\\": \\"0\\"\\n }\\n ]\\n },\\n \\"SubmitTime\\": \\"2022-01-12T08:49:41Z\\",\\n \\"FinishTime\\": \\"2022-01-12T08:49:41Z\\",\\n \\"RequestId\\": \\"4879B9DE-E4B6-19DC-91F5-9D5F4DCE4168\\"\\n }\\n}","type":"json"}]', + 'title' => 'SubmitSyncMediaInfoJob', + 'summary' => 'Submits a media file in synchronous mode for media information analysis.', + 'description' => 'You can call this operation to analyze an input media file in synchronous mode. This operation is suitable for scenarios that require high real-time performance and low concurrency. If it takes an extended period of time to obtain the media information about the input media file, the request may time out or the obtained information may be inaccurate. We recommend that you call the [SubmitMediaInfoJob](~~441222~~) operation to obtain media information.'."\n", + ], + 'SubmitMediaInfoJob' => [ + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'https', + 'http', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'Name', + 'in' => 'query', + 'schema' => [ + 'title' => '任务名字', + 'description' => 'The job name.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'job-name', + ], + ], + [ + 'name' => 'Input', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'title' => '任务输入', + 'description' => 'The input of the job.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'title' => '媒体对象类型。取值: OSS: OSS文件, Media: 媒资 ID', + 'description' => 'The type of the media object. Valid values: OSS and Media. A value of OSS indicates an Object Storage Service (OSS) object. A value of Media indicates a media asset.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'OSS', + ], + 'Media' => [ + 'title' => '媒体值:'."\n" + .' type 为 OSS 时,为 URL, 支持 OSS 协议和 HTTP 协议;'."\n" + .' type 为 Media 时,为媒资 ID。', + 'description' => 'The media object.'."\n" + ."\n" + .'* If Type is set to OSS, set this parameter to the URL of an OSS object. Both the OSS and HTTP protocols are supported.'."\n" + ."\n" + .'> Before you use the OSS bucket in the URL, you must add the bucket on the [Storage Management](~~609918~~) page of the Intelligent Media Services (IMS) console.'."\n" + ."\n" + .'* If Type is set to Media, set this parameter to the ID of a media asset.', + 'type' => 'string', + 'required' => true, + 'example' => 'oss://bucket/path/to/video.mp4', + ], + ], + 'required' => true, + ], + ], + [ + 'name' => 'UserData', + 'in' => 'query', + 'schema' => [ + 'title' => '用户数据', + 'description' => 'The user data.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'user-data', + ], + ], + [ + 'name' => 'ScheduleConfig', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'title' => '调度参数', + 'description' => 'The scheduling parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'PipelineId' => [ + 'title' => '管道 ID。', + 'description' => 'The ID of the ApsaraVideo Media Processing (MPS) queue that is used to run the job.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'e37ebee5d98b4781897f6086e89f9c56', + ], + 'Priority' => [ + 'title' => '任务优先级。数字越大优先级越高,取值范围:1~10', + 'description' => 'The priority of the job. Valid values: 1 to 10. The greater the value, the higher the priority.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '5', + ], + ], + 'required' => false, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求 id', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '31E30781-9495-5E2D-A84D-759B0A01E262', + ], + 'MediaInfoJob' => [ + 'title' => 'MediaInfoJobDTO', + 'description' => 'MediaInfoJobDTO'."\n", + 'type' => 'object', + 'properties' => [ + 'Name' => [ + 'title' => '任务名字', + 'description' => 'The job name.'."\n", + 'type' => 'string', + 'example' => 'job-name', + ], + 'TriggerSource' => [ + 'title' => '任务来源 - API, WorkFlow, Console', + 'description' => 'The source of the job. Valid values: API, WorkFlow, and Console.'."\n", + 'type' => 'string', + 'example' => 'API', + ], + 'JobId' => [ + 'title' => '任务 id', + 'description' => 'The job ID.'."\n", + 'type' => 'string', + 'example' => 'ab4802364a2e49208c99efab82dfa8e8', + ], + 'Input' => [ + 'title' => '任务输入', + 'description' => 'The input of the job.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'title' => '媒体对象类型。取值: OSS: OSS文件, Media: 媒资 ID', + 'description' => 'The type of the media object. Valid values: OSS and Media. A value of OSS indicates an OSS object. A value of Media indicates a media asset.'."\n", + 'type' => 'string', + 'example' => 'OSS', + ], + 'Media' => [ + 'title' => '媒体值:'."\n" + .' type 为 OSS 时,为 URL, 支持 OSS 协议和 HTTP 协议;'."\n" + .' type 为 Media 时,为媒资 ID。', + 'description' => 'The media object. If Type is set to OSS, the URL of an OSS object is returned. Both the OSS and HTTP protocols are supported. If Type is set to Media, set this parameter to the ID of a media asset.'."\n", + 'type' => 'string', + 'example' => 'oss://bucket/path/to/video.mp4', + ], + ], + ], + 'Async' => [ + 'title' => '是否异步处理', + 'description' => 'Indicates whether asynchronous processing was performed.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'UserData' => [ + 'title' => '用户数据', + 'description' => 'The user data.'."\n", + 'type' => 'string', + 'example' => 'user-data', + ], + 'ScheduleConfig' => [ + 'title' => '调度信息', + 'description' => 'The scheduling information.'."\n", + 'type' => 'object', + 'properties' => [ + 'PipelineId' => [ + 'title' => '管道 ID。', + 'description' => 'The ID of the ApsaraVideo Media Processing (MPS) queue that is used to run the job.'."\n", + 'type' => 'string', + 'example' => 'e37ebee5d98b4781897f6086e89f9c56', + ], + 'Priority' => [ + 'title' => '任务优先级。数字越大优先级越高,取值范围:1~10', + 'description' => 'The priority of the job. Valid values: 1 to 10. The greater the value, the higher the priority.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '5', + ], + ], + ], + 'Status' => [ + 'title' => '任务状态 - Init: 已提交, Success: 成功, Fail: 失败', + 'description' => 'The state of the job. Valid values: Init (the job is submitted), Success (the job is successful), and Fail (the job failed).'."\n", + 'type' => 'string', + 'example' => 'Init', + ], + 'SubmitResultJson' => [ + 'title' => '任务提交信息', + 'description' => 'The job submission information.'."\n", + 'type' => 'object', + 'example' => '{}', + ], + 'MediaInfoProperty' => [ + 'title' => '媒体信息详情', + 'description' => 'The details of the media information.'."\n", + 'type' => 'object', + 'properties' => [ + 'FileBasicInfo' => [ + 'title' => '基础文件信息', + 'description' => 'The basic file information.'."\n", + 'type' => 'object', + 'properties' => [ + 'MediaId' => [ + 'title' => '媒资 ID。', + 'description' => 'The ID of the media asset.'."\n", + 'type' => 'string', + 'example' => '2b36bd19c13f4145b094c0cad80dbce5', + ], + 'FileName' => [ + 'title' => '文件名。', + 'description' => 'The file name.'."\n", + 'type' => 'string', + 'example' => 'file.m3u8', + ], + 'FileStatus' => [ + 'title' => '文件状态。', + 'description' => 'The state of the file.'."\n", + 'type' => 'string', + 'example' => 'Normal', + ], + 'FileType' => [ + 'title' => '文件类型。取值: source_file, transcode_file', + 'description' => 'The file type.'."\n", + 'type' => 'string', + 'example' => 'source_file', + ], + 'FileSize' => [ + 'title' => '文件大小。单位:Byte。', + 'description' => 'The file size.'."\n", + 'type' => 'string', + 'example' => '31737', + ], + 'FileUrl' => [ + 'title' => '文件url。', + 'description' => 'The URL of the file.'."\n", + 'type' => 'string', + 'example' => 'http://bucket.oss-cn-shanghai.aliyuncs.com/path/to/file.m3u8', + ], + 'Region' => [ + 'title' => '文件所在区域。', + 'description' => 'The region in which the file resides.'."\n", + 'type' => 'string', + 'example' => 'cn-shanghai', + ], + 'FormatName' => [ + 'title' => '视频格式名称。', + 'description' => 'The name of the video format.'."\n", + 'type' => 'string', + 'example' => 'hls,applehttp', + ], + 'Duration' => [ + 'title' => '视频时长(单位: 秒)。', + 'description' => 'The duration of the video.'."\n", + 'type' => 'string', + 'example' => '403.039999', + ], + 'Bitrate' => [ + 'title' => '视频码率。', + 'description' => 'The video bitrate.'."\n", + 'type' => 'string', + 'example' => '888.563', + ], + 'Width' => [ + 'title' => '宽。', + 'description' => 'The width of the output video.'."\n", + 'type' => 'string', + 'example' => '848', + ], + 'Height' => [ + 'title' => '高。', + 'description' => 'The height of the output video.'."\n", + 'type' => 'string', + 'example' => '478', + ], + ], + ], + 'AudioStreamInfoList' => [ + 'title' => '音频流信息', + 'description' => 'The information about the audio stream.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The information about the audio stream.'."\n", + 'type' => 'object', + 'properties' => [ + 'Index' => [ + 'title' => '流序号。', + 'description' => 'The sequence number of the stream.'."\n", + 'type' => 'string', + 'example' => '1', + ], + 'CodecName' => [ + 'title' => '编码格式。', + 'description' => 'The encoding format.'."\n", + 'type' => 'string', + 'example' => 'aac', + ], + 'CodecLongName' => [ + 'title' => '编码格式名。', + 'description' => 'The name of the encoding format.'."\n", + 'type' => 'string', + 'example' => 'AAC (Advanced Audio Coding)', + ], + 'CodecTimeBase' => [ + 'title' => '编码器时间基。', + 'description' => 'The time base of the encoder.'."\n", + 'type' => 'string', + 'example' => '1/44100', + ], + 'CodecTagString' => [ + 'title' => '编码器标签名。', + 'description' => 'The name of the encoder tag.'."\n", + 'type' => 'string', + 'example' => '[15][0][0][0]', + ], + 'CodecTag' => [ + 'title' => '编码器标签。', + 'description' => 'The encoder tag.'."\n", + 'type' => 'string', + 'example' => '0x000f', + ], + 'SampleFmt' => [ + 'title' => '采样格式。', + 'description' => 'The sample format.'."\n", + 'type' => 'string', + 'example' => 'fltp', + ], + 'SampleRate' => [ + 'title' => '采样率(单位: Hz)。', + 'description' => 'The sampling rate. Unit: Hz.'."\n", + 'type' => 'string', + 'example' => '44100', + ], + 'Channels' => [ + 'title' => '声道数。', + 'description' => 'The number of sound channels.'."\n", + 'type' => 'string', + 'example' => '2', + ], + 'ChannelLayout' => [ + 'title' => '声道布局。', + 'description' => 'The sound channel layout.'."\n", + 'type' => 'string', + 'example' => 'stereo', + ], + 'Timebase' => [ + 'title' => '时间基。', + 'description' => 'The time base.'."\n", + 'type' => 'string', + 'example' => '1/90000', + ], + 'StartTime' => [ + 'title' => '开始时间。', + 'description' => 'The start time of the stream.'."\n", + 'type' => 'string', + 'example' => '1.473556', + ], + 'Duration' => [ + 'title' => '时长(单位: 秒)。', + 'description' => 'The duration of the stream. Unit: seconds.'."\n", + 'type' => 'string', + 'example' => '403.039989', + ], + 'Bitrate' => [ + 'title' => '码率。', + 'description' => 'The bitrate.'."\n", + 'type' => 'string', + 'example' => '0.f', + ], + 'Lang' => [ + 'title' => '语言。', + 'description' => 'The language of the stream.'."\n", + 'type' => 'string', + 'example' => 'us', + ], + ], + ], + ], + 'VideoStreamInfoList' => [ + 'title' => '视频流信息', + 'description' => 'The information about the video stream.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The information about the video stream.'."\n", + 'type' => 'object', + 'properties' => [ + 'Index' => [ + 'title' => '流序号。', + 'description' => 'The sequence number of the stream.'."\n", + 'type' => 'string', + 'example' => '0', + ], + 'Codec_name' => [ + 'title' => '编码格式。', + 'description' => 'The encoding format.'."\n", + 'type' => 'string', + 'example' => 'h264', + ], + 'Codec_long_name' => [ + 'title' => '编码格式名。', + 'description' => 'The name of the encoding format.'."\n", + 'type' => 'string', + 'example' => 'H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10', + ], + 'Profile' => [ + 'title' => '编码器预设。', + 'description' => 'The encoder profile.'."\n", + 'type' => 'string', + 'example' => 'High', + ], + 'Codec_time_base' => [ + 'description' => 'The time base of the encoder.'."\n", + 'type' => 'string', + 'example' => '1/50', + ], + 'Codec_tag_string' => [ + 'title' => '编码格式标记文本。', + 'description' => 'The tag string of the encoding format.'."\n", + 'type' => 'string', + 'example' => '[27][0][0][0]', + ], + 'Codec_tag' => [ + 'title' => '编码格式标记。', + 'description' => 'The tag of the encoding format.'."\n", + 'type' => 'string', + 'example' => '0x001b', + ], + 'Width' => [ + 'title' => '宽。', + 'description' => 'The width of the output video.'."\n", + 'type' => 'string', + 'example' => '848', + ], + 'Height' => [ + 'title' => '高。', + 'description' => 'The height of the output video.'."\n", + 'type' => 'string', + 'example' => '478', + ], + 'Has_b_frames' => [ + 'description' => 'Indicates whether the video stream contains bidirectional frames (B-frames). Valid values:'."\n" + ."\n" + .'* 0: The stream contains no B-frames.'."\n" + .'* 1: The stream contains one B-frame.'."\n" + .'* 2: The stream contains multiple consecutive B-frames.'."\n", + 'type' => 'string', + 'example' => '2', + ], + 'Sar' => [ + 'title' => '采集点数宽高比。', + 'description' => 'The aspect ratio of the area from which the sampling points are collected.'."\n", + 'type' => 'string', + 'example' => '478:477', + ], + 'Dar' => [ + 'title' => '图像显示宽高比。', + 'description' => 'The display aspect ratio.'."\n", + 'type' => 'string', + 'example' => '16:9', + ], + 'PixFmt' => [ + 'title' => '颜色存储格式。', + 'description' => 'The pixel format.'."\n", + 'type' => 'string', + 'example' => 'yuv420p', + ], + 'Level' => [ + 'title' => '编码等级。', + 'description' => 'The codec level.'."\n", + 'type' => 'string', + 'example' => '31', + ], + 'Fps' => [ + 'title' => '帧率。', + 'description' => 'The frame rate.'."\n", + 'type' => 'string', + 'example' => '25.0', + ], + 'Avg_fps' => [ + 'description' => 'The average frame rate.'."\n", + 'type' => 'string', + 'example' => '25.0', + ], + 'Time_base' => [ + 'description' => 'The time base.'."\n", + 'type' => 'string', + 'example' => '1/90000', + ], + 'Start_time' => [ + 'title' => '起始时间。', + 'description' => 'The start time of the stream.'."\n", + 'type' => 'string', + 'example' => '1.473556', + ], + 'Duration' => [ + 'title' => '时长(单位: 秒)。', + 'description' => 'The duration of the file.'."\n", + 'type' => 'string', + 'example' => '403.039989', + ], + 'Bit_rate' => [ + 'description' => 'The bitrate.'."\n", + 'type' => 'string', + 'example' => '888.563', + ], + 'NumFrames' => [ + 'title' => '总帧数。', + 'description' => 'The total number of frames.'."\n", + 'type' => 'string', + 'example' => '10040', + ], + 'Lang' => [ + 'title' => '语言。', + 'description' => 'The language of the stream.'."\n", + 'type' => 'string', + 'example' => 'zh', + ], + 'Rotate' => [ + 'title' => '视频画面旋转角度。取值 0, 90, 180, 270。默认值 0', + 'description' => 'The rotation angle of the video image.'."\n", + 'type' => 'string', + 'example' => '0', + ], + ], + ], + ], + ], + ], + 'SubmitTime' => [ + 'title' => '任务提交时间', + 'description' => 'The time when the job was submitted.'."\n", + 'type' => 'string', + 'example' => '2022-01-12T08:49:41Z', + ], + 'FinishTime' => [ + 'title' => '任务完成时间', + 'description' => 'The time when the job was complete.'."\n", + 'type' => 'string', + 'example' => '2022-01-12T08:49:41Z', + ], + 'RequestId' => [ + 'title' => '请求 id', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '4879B9DE-E4B6-19DC-91F5-9D5F4DCE4168', + ], + ], + ], + ], + 'description' => '', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"31E30781-9495-5E2D-A84D-759B0A01E262\\",\\n \\"MediaInfoJob\\": {\\n \\"Name\\": \\"job-name\\",\\n \\"TriggerSource\\": \\"API\\",\\n \\"JobId\\": \\"ab4802364a2e49208c99efab82dfa8e8\\",\\n \\"Input\\": {\\n \\"Type\\": \\"OSS\\",\\n \\"Media\\": \\"oss://bucket/path/to/video.mp4\\"\\n },\\n \\"Async\\": true,\\n \\"UserData\\": \\"user-data\\",\\n \\"ScheduleConfig\\": {\\n \\"PipelineId\\": \\"e37ebee5d98b4781897f6086e89f9c56\\",\\n \\"Priority\\": 5\\n },\\n \\"Status\\": \\"Init\\",\\n \\"SubmitResultJson\\": {},\\n \\"MediaInfoProperty\\": {\\n \\"FileBasicInfo\\": {\\n \\"MediaId\\": \\"2b36bd19c13f4145b094c0cad80dbce5\\",\\n \\"FileName\\": \\"file.m3u8\\",\\n \\"FileStatus\\": \\"Normal\\",\\n \\"FileType\\": \\"source_file\\",\\n \\"FileSize\\": \\"31737\\",\\n \\"FileUrl\\": \\"http://bucket.oss-cn-shanghai.aliyuncs.com/path/to/file.m3u8\\",\\n \\"Region\\": \\"cn-shanghai\\",\\n \\"FormatName\\": \\"hls,applehttp\\",\\n \\"Duration\\": \\"403.039999\\",\\n \\"Bitrate\\": \\"888.563\\",\\n \\"Width\\": \\"848\\",\\n \\"Height\\": \\"478\\"\\n },\\n \\"AudioStreamInfoList\\": [\\n {\\n \\"Index\\": \\"1\\",\\n \\"CodecName\\": \\"aac\\",\\n \\"CodecLongName\\": \\"AAC (Advanced Audio Coding)\\",\\n \\"CodecTimeBase\\": \\"1/44100\\",\\n \\"CodecTagString\\": \\"[15][0][0][0]\\",\\n \\"CodecTag\\": \\"0x000f\\",\\n \\"SampleFmt\\": \\"fltp\\",\\n \\"SampleRate\\": \\"44100\\",\\n \\"Channels\\": \\"2\\",\\n \\"ChannelLayout\\": \\"stereo\\",\\n \\"Timebase\\": \\"1/90000\\",\\n \\"StartTime\\": \\"1.473556\\",\\n \\"Duration\\": \\"403.039989\\",\\n \\"Bitrate\\": \\"0.f\\",\\n \\"Lang\\": \\"us\\"\\n }\\n ],\\n \\"VideoStreamInfoList\\": [\\n {\\n \\"Index\\": \\"0\\",\\n \\"Codec_name\\": \\"h264\\",\\n \\"Codec_long_name\\": \\"H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10\\",\\n \\"Profile\\": \\"High\\",\\n \\"Codec_time_base\\": \\"1/50\\",\\n \\"Codec_tag_string\\": \\"[27][0][0][0]\\",\\n \\"Codec_tag\\": \\"0x001b\\",\\n \\"Width\\": \\"848\\",\\n \\"Height\\": \\"478\\",\\n \\"Has_b_frames\\": \\"2\\",\\n \\"Sar\\": \\"478:477\\",\\n \\"Dar\\": \\"16:9\\",\\n \\"PixFmt\\": \\"yuv420p\\",\\n \\"Level\\": \\"31\\",\\n \\"Fps\\": \\"25.0\\",\\n \\"Avg_fps\\": \\"25.0\\",\\n \\"Time_base\\": \\"1/90000\\",\\n \\"Start_time\\": \\"1.473556\\",\\n \\"Duration\\": \\"403.039989\\",\\n \\"Bit_rate\\": \\"888.563\\",\\n \\"NumFrames\\": \\"10040\\",\\n \\"Lang\\": \\"zh\\",\\n \\"Rotate\\": \\"0\\"\\n }\\n ]\\n },\\n \\"SubmitTime\\": \\"2022-01-12T08:49:41Z\\",\\n \\"FinishTime\\": \\"2022-01-12T08:49:41Z\\",\\n \\"RequestId\\": \\"4879B9DE-E4B6-19DC-91F5-9D5F4DCE4168\\"\\n }\\n}","type":"json"}]', + 'title' => 'SubmitMediaInfoJob', + 'summary' => 'Submits a media information analysis job in asynchronous mode.', + 'description' => 'You can call this operation to analyze an input media file by using a callback mechanism or initiating subsequent queries. This operation is suitable for scenarios in which real-time performance is less critical and high concurrency is expected.'."\n", + ], + 'GetMediaInfoJob' => [ + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'https', + 'http', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'JobId', + 'in' => 'query', + 'schema' => [ + 'title' => '任务 ID', + 'description' => 'The job ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'ab4802364a2e49208c99efab82dfa8e8', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求 id', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '31E30781-9495-5E2D-A84D-759B0A01E262', + ], + 'MediaInfoJob' => [ + 'title' => 'MediaInfoJobDTO', + 'description' => 'MediaInfoJobDTO'."\n", + 'type' => 'object', + 'properties' => [ + 'Name' => [ + 'title' => '任务名字', + 'description' => 'The job name.'."\n", + 'type' => 'string', + 'example' => 'job-name', + ], + 'TriggerSource' => [ + 'title' => '任务来源 - API, WorkFlow, Console', + 'description' => 'The source of the job. Valid values: API, WorkFlow, and Console.'."\n", + 'type' => 'string', + 'example' => 'API', + ], + 'JobId' => [ + 'title' => '任务 id', + 'description' => 'The job ID.'."\n", + 'type' => 'string', + 'example' => 'ab4802364a2e49208c99efab82dfa8e8', + ], + 'Input' => [ + 'title' => '任务输入', + 'description' => 'The input of the job.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'title' => '媒体对象类型。'."\n" + .'取值: '."\n" + .'- OSS: OSS文件。'."\n" + .'- Media: 媒资 ID。'."\n", + 'description' => 'The type of the media object. Valid values:'."\n" + ."\n" + .'* OSS: an Object Storage Service (OSS) object.'."\n" + .'* Media: a media asset.'."\n", + 'type' => 'string', + 'example' => 'OSS', + ], + 'Media' => [ + 'title' => '媒体值:'."\n" + .' type 为 OSS 时,为 URL, 支持 OSS 协议和 HTTP 协议;'."\n" + .' type 为 Media 时,为媒资 ID。', + 'description' => 'The media object. If Type is set to OSS, the URL of an OSS object is returned. Both the OSS and HTTP protocols are supported. If Type is set to Media, the ID of a media asset is returned.'."\n", + 'type' => 'string', + 'example' => 'oss://bucket/path/to/video.mp4', + ], + ], + ], + 'Async' => [ + 'title' => '是否异步处理', + 'description' => 'Indicates whether asynchronous processing was performed.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'UserData' => [ + 'title' => '用户数据', + 'description' => 'The user data.'."\n", + 'type' => 'string', + 'example' => 'user-data', + ], + 'ScheduleConfig' => [ + 'title' => '调度信息', + 'description' => 'The scheduling information.'."\n", + 'type' => 'object', + 'properties' => [ + 'PipelineId' => [ + 'title' => '管道 ID。', + 'description' => 'The ID of the MPS queue to which the job was submitted.'."\n", + 'type' => 'string', + 'example' => 'e37ebee5d98b4781897f6086e89f9c56', + ], + 'Priority' => [ + 'title' => '任务优先级。数字越大优先级越高,取值范围:1~10', + 'description' => 'The priority of the job. Valid values: 1 to 10. The greater the value, the higher the priority.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '5', + ], + ], + ], + 'Status' => [ + 'title' => '任务状态 - Init: 已提交, Success: 成功, Fail: 失败', + 'description' => 'The state of the job. Valid values: Init (the job is submitted), Success (the job is successful), and Fail (the job failed).'."\n", + 'type' => 'string', + 'example' => 'Init', + ], + 'SubmitResultJson' => [ + 'title' => '任务提交信息', + 'description' => 'The job submission information.'."\n", + 'type' => 'object', + ], + 'MediaInfoProperty' => [ + 'title' => '媒体信息详情', + 'description' => 'The details of the media information.'."\n", + 'type' => 'object', + 'properties' => [ + 'FileBasicInfo' => [ + 'title' => '基础文件信息', + 'description' => 'The basic file information.'."\n", + 'type' => 'object', + 'properties' => [ + 'MediaId' => [ + 'title' => '媒资 ID。', + 'description' => 'The ID of the media asset.'."\n", + 'type' => 'string', + 'example' => 'e520090207114cc7a392d44f0b211574', + ], + 'FileName' => [ + 'title' => '文件名。', + 'description' => 'The file name.'."\n", + 'type' => 'string', + 'example' => 'file.m3u8', + ], + 'FileStatus' => [ + 'title' => '文件状态。', + 'description' => 'The state of the file.'."\n", + 'type' => 'string', + 'example' => 'Normal', + ], + 'FileType' => [ + 'title' => '文件类型。取值: source_file, transcode_file', + 'description' => 'The file type.'."\n", + 'type' => 'string', + 'example' => 'source_file', + ], + 'FileSize' => [ + 'title' => '文件大小。单位:Byte。', + 'description' => 'The file size.'."\n", + 'type' => 'string', + 'example' => '31737', + ], + 'FileUrl' => [ + 'title' => '文件 URL。', + 'description' => 'The URL of the file.'."\n", + 'type' => 'string', + 'example' => 'http://bucket.oss-cn-shanghai.aliyuncs.com/path/to/file.m3u8', + ], + 'Region' => [ + 'title' => '文件所在区域。', + 'description' => 'The region in which the file resides.'."\n", + 'type' => 'string', + 'example' => 'cn-shanghai', + ], + 'FormatName' => [ + 'title' => '视频格式名称。', + 'description' => 'The name of the video format.'."\n", + 'type' => 'string', + 'example' => 'hls,applehttp', + ], + 'Duration' => [ + 'title' => '视频时长(单位: 秒)。', + 'description' => 'The duration of the video. Unit: seconds.'."\n", + 'type' => 'string', + 'example' => '403.039999', + ], + 'Bitrate' => [ + 'title' => '视频码率。', + 'description' => 'The video bitrate.'."\n", + 'type' => 'string', + 'example' => '888.563', + ], + 'Width' => [ + 'title' => '宽。', + 'description' => 'The width of the output video.'."\n", + 'type' => 'string', + 'example' => '848', + ], + 'Height' => [ + 'title' => '高。', + 'description' => 'The height of the output video.'."\n", + 'type' => 'string', + 'example' => '478', + ], + ], + ], + 'AudioStreamInfoList' => [ + 'title' => '音频流信息', + 'description' => 'The information about the audio stream.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Index' => [ + 'title' => '流序号。', + 'description' => 'The sequence number of the stream.'."\n", + 'type' => 'string', + 'example' => '1', + ], + 'CodecName' => [ + 'title' => '编码格式。', + 'description' => 'The encoding format.'."\n", + 'type' => 'string', + 'example' => 'aac', + ], + 'CodecLongName' => [ + 'title' => '编码格式名。', + 'description' => 'The name of the encoding format.'."\n", + 'type' => 'string', + 'example' => 'AAC (Advanced Audio Coding)', + ], + 'CodecTimeBase' => [ + 'title' => '编码器时间基。', + 'description' => 'The time base of the encoder.'."\n", + 'type' => 'string', + 'example' => '1/44100', + ], + 'CodecTagString' => [ + 'title' => '编码器标签名。', + 'description' => 'The name of the encoder tag.'."\n", + 'type' => 'string', + 'example' => '[15][0][0][0]', + ], + 'CodecTag' => [ + 'title' => '编码器标签。', + 'description' => 'The encoder tag.'."\n", + 'type' => 'string', + 'example' => '0x000f', + ], + 'SampleFmt' => [ + 'title' => '采样格式。', + 'description' => 'The sample format.'."\n", + 'type' => 'string', + 'example' => 'fltp', + ], + 'SampleRate' => [ + 'title' => '采样率(单位: Hz)。', + 'description' => 'The sampling rate. Unit: Hz.'."\n", + 'type' => 'string', + 'example' => '44100', + ], + 'Channels' => [ + 'title' => '声道数。', + 'description' => 'The number of sound channels.'."\n", + 'type' => 'string', + 'example' => '2', + ], + 'ChannelLayout' => [ + 'title' => '声道布局。', + 'description' => 'The sound channel layout.'."\n", + 'type' => 'string', + 'example' => 'stereo', + ], + 'Timebase' => [ + 'title' => '时间基。', + 'description' => 'The time base.'."\n", + 'type' => 'string', + 'example' => '1/90000', + ], + 'StartTime' => [ + 'title' => '开始时间。', + 'description' => 'The start time of the stream.'."\n", + 'type' => 'string', + 'example' => '1.473556', + ], + 'Duration' => [ + 'title' => '时长(单位: 秒)。', + 'description' => 'The duration of the stream. Unit: seconds.'."\n", + 'type' => 'string', + 'example' => '403.039989', + ], + 'Bitrate' => [ + 'title' => '码率。', + 'description' => 'The bitrate.'."\n", + 'type' => 'string', + 'example' => '0.f', + ], + 'Lang' => [ + 'title' => '语言。', + 'description' => 'The language of the stream.'."\n", + 'type' => 'string', + 'example' => 'us', + ], + ], + 'description' => '', + ], + ], + 'VideoStreamInfoList' => [ + 'title' => '视频流信息', + 'description' => 'The information about the video stream.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Index' => [ + 'title' => '流序号。', + 'description' => 'The sequence number of the stream.'."\n", + 'type' => 'string', + 'example' => '0', + ], + 'Codec_name' => [ + 'title' => '编码格式。', + 'description' => 'The encoding format.'."\n", + 'type' => 'string', + 'example' => 'h264', + ], + 'Codec_long_name' => [ + 'title' => '编码格式名。', + 'description' => 'The name of the encoding format.'."\n", + 'type' => 'string', + 'example' => 'H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10', + ], + 'Profile' => [ + 'title' => '编码器预设。', + 'description' => 'The encoder profile.'."\n", + 'type' => 'string', + 'example' => 'High', + ], + 'Codec_time_base' => [ + 'description' => 'The time base of the encoder.'."\n", + 'type' => 'string', + 'example' => '1/50', + ], + 'Codec_tag_string' => [ + 'title' => '编码格式标记文本。', + 'description' => 'The tag string of the encoding format.'."\n", + 'type' => 'string', + 'example' => '[27][0][0][0]', + ], + 'Codec_tag' => [ + 'title' => '编码格式标记。', + 'description' => 'The tag of the encoding format.'."\n", + 'type' => 'string', + 'example' => '0x001b', + ], + 'Width' => [ + 'title' => '宽。', + 'description' => 'The width of the output video.'."\n", + 'type' => 'string', + 'example' => '848', + ], + 'Height' => [ + 'title' => '高。', + 'description' => 'The height of the output video.'."\n", + 'type' => 'string', + 'example' => '478', + ], + 'Has_b_frames' => [ + 'title' => '是否有B帧。'."\n" + .'取值: '."\n" + .'- 0: 没有 B 帧, '."\n" + .'- 1: 有一个 B 帧, '."\n" + .'- 2: 有多个连续 B 帧。', + 'description' => 'Indicates whether the video stream contains bidirectional frames (B-frames). Valid values:'."\n" + ."\n" + .'* 0: The stream contains no B-frames.'."\n" + .'* 1: The stream contains one B-frame.'."\n" + .'* 2: The stream contains multiple consecutive B-frames.'."\n", + 'type' => 'string', + 'example' => '2', + ], + 'Sar' => [ + 'title' => '采集点数宽高比。', + 'description' => 'The aspect ratio of the area from which the sampling points are collected.'."\n", + 'type' => 'string', + 'example' => '478:477', + ], + 'Dar' => [ + 'title' => '图像显示宽高比。', + 'description' => 'The display aspect ratio.'."\n", + 'type' => 'string', + 'example' => '16:9', + ], + 'PixFmt' => [ + 'title' => '颜色存储格式。', + 'description' => 'The pixel format.'."\n", + 'type' => 'string', + 'example' => 'yuv420p', + ], + 'Level' => [ + 'title' => '编码等级。', + 'description' => 'The codec level.'."\n", + 'type' => 'string', + 'example' => '31', + ], + 'Fps' => [ + 'title' => '帧率。', + 'description' => 'The frame rate.'."\n", + 'type' => 'string', + 'example' => '25.0', + ], + 'Avg_fps' => [ + 'title' => '平均帧率。', + 'description' => 'The average frame rate.'."\n", + 'type' => 'string', + 'example' => '25.0', + ], + 'Time_base' => [ + 'title' => '时基。', + 'description' => 'The time base.'."\n", + 'type' => 'string', + 'example' => '1/90000', + ], + 'Start_time' => [ + 'title' => '起始时间。', + 'description' => 'The start time of the stream.'."\n", + 'type' => 'string', + 'example' => '1.473556', + ], + 'Duration' => [ + 'title' => '时长(单位: 秒)。', + 'description' => 'The duration of the file.'."\n", + 'type' => 'string', + 'example' => '403.039989', + ], + 'Bit_rate' => [ + 'title' => '码率。', + 'description' => 'The bitrate.'."\n", + 'type' => 'string', + 'example' => '888.563', + ], + 'NumFrames' => [ + 'title' => '总帧数。', + 'description' => 'The total number of frames.'."\n", + 'type' => 'string', + 'example' => '10040', + ], + 'Lang' => [ + 'title' => '语言。', + 'description' => 'The language of the stream.'."\n", + 'type' => 'string', + 'example' => 'zh', + ], + 'Rotate' => [ + 'title' => '视频画面旋转角度。'."\n" + .'取值 0, 90, 180, 270。'."\n" + .'默认值 0', + 'description' => 'The rotation angle of the video image.'."\n", + 'type' => 'string', + 'example' => '0', + ], + ], + 'description' => '', + ], + ], + ], + ], + 'SubmitTime' => [ + 'title' => '任务提交时间', + 'description' => 'The time when the job was submitted.'."\n", + 'type' => 'string', + 'example' => '2022-01-12T08:49:41Z', + ], + 'FinishTime' => [ + 'title' => '任务完成时间', + 'description' => 'The time when the job was complete.'."\n", + 'type' => 'string', + 'example' => '2022-01-12T08:49:41Z', + ], + 'RequestId' => [ + 'title' => '请求 id', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '4879B9DE-E4B6-19DC-91F5-9D5F4DCE4168', + ], + ], + ], + ], + 'description' => '', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"31E30781-9495-5E2D-A84D-759B0A01E262\\",\\n \\"MediaInfoJob\\": {\\n \\"Name\\": \\"job-name\\",\\n \\"TriggerSource\\": \\"API\\",\\n \\"JobId\\": \\"ab4802364a2e49208c99efab82dfa8e8\\",\\n \\"Input\\": {\\n \\"Type\\": \\"OSS\\",\\n \\"Media\\": \\"oss://bucket/path/to/video.mp4\\"\\n },\\n \\"Async\\": true,\\n \\"UserData\\": \\"user-data\\",\\n \\"ScheduleConfig\\": {\\n \\"PipelineId\\": \\"e37ebee5d98b4781897f6086e89f9c56\\",\\n \\"Priority\\": 5\\n },\\n \\"Status\\": \\"Init\\",\\n \\"SubmitResultJson\\": {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n },\\n \\"MediaInfoProperty\\": {\\n \\"FileBasicInfo\\": {\\n \\"MediaId\\": \\"e520090207114cc7a392d44f0b211574\\",\\n \\"FileName\\": \\"file.m3u8\\",\\n \\"FileStatus\\": \\"Normal\\",\\n \\"FileType\\": \\"source_file\\",\\n \\"FileSize\\": \\"31737\\",\\n \\"FileUrl\\": \\"http://bucket.oss-cn-shanghai.aliyuncs.com/path/to/file.m3u8\\",\\n \\"Region\\": \\"cn-shanghai\\",\\n \\"FormatName\\": \\"hls,applehttp\\",\\n \\"Duration\\": \\"403.039999\\",\\n \\"Bitrate\\": \\"888.563\\",\\n \\"Width\\": \\"848\\",\\n \\"Height\\": \\"478\\"\\n },\\n \\"AudioStreamInfoList\\": [\\n {\\n \\"Index\\": \\"1\\",\\n \\"CodecName\\": \\"aac\\",\\n \\"CodecLongName\\": \\"AAC (Advanced Audio Coding)\\",\\n \\"CodecTimeBase\\": \\"1/44100\\",\\n \\"CodecTagString\\": \\"[15][0][0][0]\\",\\n \\"CodecTag\\": \\"0x000f\\",\\n \\"SampleFmt\\": \\"fltp\\",\\n \\"SampleRate\\": \\"44100\\",\\n \\"Channels\\": \\"2\\",\\n \\"ChannelLayout\\": \\"stereo\\",\\n \\"Timebase\\": \\"1/90000\\",\\n \\"StartTime\\": \\"1.473556\\",\\n \\"Duration\\": \\"403.039989\\",\\n \\"Bitrate\\": \\"0.f\\",\\n \\"Lang\\": \\"us\\"\\n }\\n ],\\n \\"VideoStreamInfoList\\": [\\n {\\n \\"Index\\": \\"0\\",\\n \\"Codec_name\\": \\"h264\\",\\n \\"Codec_long_name\\": \\"H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10\\",\\n \\"Profile\\": \\"High\\",\\n \\"Codec_time_base\\": \\"1/50\\",\\n \\"Codec_tag_string\\": \\"[27][0][0][0]\\",\\n \\"Codec_tag\\": \\"0x001b\\",\\n \\"Width\\": \\"848\\",\\n \\"Height\\": \\"478\\",\\n \\"Has_b_frames\\": \\"2\\",\\n \\"Sar\\": \\"478:477\\",\\n \\"Dar\\": \\"16:9\\",\\n \\"PixFmt\\": \\"yuv420p\\",\\n \\"Level\\": \\"31\\",\\n \\"Fps\\": \\"25.0\\",\\n \\"Avg_fps\\": \\"25.0\\",\\n \\"Time_base\\": \\"1/90000\\",\\n \\"Start_time\\": \\"1.473556\\",\\n \\"Duration\\": \\"403.039989\\",\\n \\"Bit_rate\\": \\"888.563\\",\\n \\"NumFrames\\": \\"10040\\",\\n \\"Lang\\": \\"zh\\",\\n \\"Rotate\\": \\"0\\"\\n }\\n ]\\n },\\n \\"SubmitTime\\": \\"2022-01-12T08:49:41Z\\",\\n \\"FinishTime\\": \\"2022-01-12T08:49:41Z\\",\\n \\"RequestId\\": \\"4879B9DE-E4B6-19DC-91F5-9D5F4DCE4168\\"\\n }\\n}","type":"json"}]', + 'title' => 'GetMediaInfoJob', + 'summary' => 'Queries the information about a media information analysis job.', + ], + 'ListMediaInfoJobs' => [ + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'https', + 'http', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'StartOfCreateTime', + 'in' => 'query', + 'schema' => [ + 'title' => '任务创建时间筛选条件的起始时间。格式为: yyyy-MM-ddTHH:mm:ssZ。', + 'description' => 'The beginning of the time range during which the jobs to be queried were created. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2022-07-01T00:00:00Z', + ], + ], + [ + 'name' => 'EndOfCreateTime', + 'in' => 'query', + 'schema' => [ + 'title' => '任务创建时间筛选条件的结束时间。格式为: yyyy-MM-ddTHH:mm:ssZ。', + 'description' => 'The end of the time range during which the jobs to be queried were created. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2022-07-15T00:00:00Z', + ], + ], + [ + 'name' => 'JobId', + 'in' => 'query', + 'schema' => [ + 'title' => '按 jobId 筛选。', + 'description' => 'The job ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '7b38a5d86f1e47838927b6e7ccb11cbe', + ], + ], + [ + 'name' => 'Status', + 'in' => 'query', + 'schema' => [ + 'title' => '任务状态 - Init: 已提交, Success: 成功, Fail: 失败', + 'description' => 'The state of the job. Valid values:'."\n" + ."\n" + .'* Init: The job is submitted.'."\n" + .'* Success: The job is successful.'."\n" + .'* Fail: The job failed.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'Success', + ], + ], + [ + 'name' => 'OrderBy', + 'in' => 'query', + 'schema' => [ + 'title' => '排序顺序。目前只支持两种:CreateTimeDesc: 按创建时间降序 和 CreateTimeAsc: 按创建时间升序', + 'description' => 'The order that you use to sort the query results. Valid values:'."\n" + ."\n" + .'* CreateTimeDesc: sorts the query results by creation time in descending order.'."\n" + .'* CreateTimeAsc: sorts the query results by creation time in ascending order.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'CreateTimeDesc', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'title' => '分页大小。范围: 0~100,默认值:20。', + 'description' => 'The number of entries per page. Default value: 10.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '10', + ], + ], + [ + 'name' => 'NextPageToken', + 'in' => 'query', + 'schema' => [ + 'title' => '连续分页查询时下一页的标记 (第一页没有)。', + 'description' => 'The pagination token that is used in the next request to retrieve a new page of results. You do not need to specify this parameter for the first request.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'ab4802364a2e49208c99efab82dfa8e8', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求 id', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '31E30781-9495-5E2D-A84D-759B0A01E262', + ], + 'Jobs' => [ + 'description' => 'The list of media information analysis jobs.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The details of the job.'."\n", + 'type' => 'object', + 'properties' => [ + 'Name' => [ + 'title' => '任务名字。', + 'description' => 'The job name.'."\n", + 'type' => 'string', + 'example' => 'job-name', + ], + 'TriggerSource' => [ + 'title' => '任务来源。 API: API, WorkFlow: 工作流, Console: 控制台', + 'description' => 'The source of the job. Valid values:'."\n" + ."\n" + .'* API'."\n" + .'* WorkFlow'."\n" + .'* Console'."\n", + 'type' => 'string', + 'example' => 'API', + ], + 'JobId' => [ + 'title' => '任务 ID。', + 'description' => 'The job ID.'."\n", + 'type' => 'string', + 'example' => 'ab4802364a2e49208c99efab82dfa8e8', + ], + 'Input' => [ + 'title' => '任务输入。', + 'description' => 'The input of the job.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'title' => '媒体对象类型。'."\n" + .'取值: '."\n" + .'- OSS: OSS文件。'."\n" + .'- Media: 媒资 ID。'."\n", + 'description' => 'The type of the media object. Valid values:'."\n" + ."\n" + .'* OSS: an Object Storage Service (OSS) object.'."\n" + .'* Media: a media asset.'."\n", + 'type' => 'string', + 'example' => 'OSS', + ], + 'Media' => [ + 'title' => '媒体值:'."\n" + .' type 为 OSS 时,为 URL, 支持 OSS 协议和 HTTP 协议;'."\n" + .' type 为 Media 时,为媒资 ID。', + 'description' => 'The media object.'."\n" + ."\n" + .'* If Type is set to OSS, the URL of an OSS object is returned. Both the OSS and HTTP protocols are supported.'."\n" + .'* If Type is set to Media, the ID of a media asset is returned.'."\n", + 'type' => 'string', + 'example' => 'oss://bucket/path/to/video.mp4', + ], + ], + ], + 'Async' => [ + 'title' => '是否异步处理。', + 'description' => 'Indicates whether asynchronous processing was performed.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'UserData' => [ + 'title' => '用户数据。', + 'description' => 'The user data.'."\n", + 'type' => 'string', + 'example' => 'user-data', + ], + 'ScheduleConfig' => [ + 'title' => '调度信息。', + 'description' => 'The scheduling information.'."\n", + 'type' => 'object', + 'properties' => [ + 'PipelineId' => [ + 'title' => '管道 ID。', + 'description' => 'The ID of the MPS queue to which the job was submitted.'."\n", + 'type' => 'string', + 'example' => 'e37ebee5d98b4781897f6086e89f9c56', + ], + 'Priority' => [ + 'title' => '任务优先级。数字越大优先级越高,取值范围:1~10', + 'description' => 'The priority of the job. Valid values: 1 to 10. The greater the value, the higher the priority.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '5', + ], + ], + ], + 'Status' => [ + 'title' => '任务状态 - Init: 已提交, Success: 成功, Fail: 失败', + 'description' => 'The state of the job. Valid values:'."\n" + ."\n" + .'* Init: The job is submitted.'."\n" + .'* Success: The job is successful.'."\n" + .'* Fail: The job failed.'."\n", + 'type' => 'string', + 'example' => 'Init', + ], + 'SubmitResultJson' => [ + 'title' => '任务提交信息。', + 'description' => 'The job submission information.'."\n", + 'type' => 'object', + ], + 'MediaInfoProperty' => [ + 'title' => '媒体信息详情。', + 'description' => 'The details of the media information.'."\n", + 'type' => 'object', + 'properties' => [ + 'FileBasicInfo' => [ + 'title' => '基础文件信息', + 'description' => 'The basic file information.'."\n", + 'type' => 'object', + 'properties' => [ + 'MediaId' => [ + 'title' => '媒资 ID。', + 'description' => 'The ID of the media asset.'."\n", + 'type' => 'string', + 'example' => '4765337007f571edbfdf81848c016303', + ], + 'FileName' => [ + 'title' => '文件名。', + 'description' => 'The file name.'."\n", + 'type' => 'string', + 'example' => 'file.m3u8', + ], + 'FileStatus' => [ + 'title' => '文件状态。', + 'description' => 'The state of the file.'."\n", + 'type' => 'string', + 'example' => 'Normal', + ], + 'FileType' => [ + 'title' => '文件类型。取值: source_file, transcode_file', + 'description' => 'The file type. Valid values: source_file and transcode_file.'."\n", + 'type' => 'string', + 'example' => 'source_file', + ], + 'FileSize' => [ + 'title' => '文件大小。单位:Byte。', + 'description' => 'The file size. Unit: bytes.'."\n", + 'type' => 'string', + 'example' => '31737', + ], + 'FileUrl' => [ + 'title' => '文件 URL。', + 'description' => 'The URL of the file.'."\n", + 'type' => 'string', + 'example' => 'http://bucket.oss-cn-shanghai.aliyuncs.com/path/to/file.m3u8', + ], + 'Region' => [ + 'title' => '文件所在区域。', + 'description' => 'The region in which the file resides.'."\n", + 'type' => 'string', + 'example' => 'cn-shanghai', + ], + 'FormatName' => [ + 'title' => '视频格式名称。', + 'description' => 'The name of the video format.'."\n", + 'type' => 'string', + 'example' => 'hls,applehttp', + ], + 'Duration' => [ + 'title' => '视频时长(单位: 秒)。', + 'description' => 'The duration of the video. Unit: seconds.'."\n", + 'type' => 'string', + 'example' => '403.039999', + ], + 'Bitrate' => [ + 'title' => '视频码率。', + 'description' => 'The video bitrate.'."\n", + 'type' => 'string', + 'example' => '888.563', + ], + 'Width' => [ + 'title' => '宽。', + 'description' => 'The width.'."\n", + 'type' => 'string', + 'example' => '848', + ], + 'Height' => [ + 'title' => '高。', + 'description' => 'The height.'."\n", + 'type' => 'string', + 'example' => '478', + ], + ], + ], + 'AudioStreamInfoList' => [ + 'title' => '音频流信息', + 'description' => 'The information about the audio stream.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The information about the audio stream.'."\n", + 'type' => 'object', + 'properties' => [ + 'Index' => [ + 'title' => '流序号。', + 'description' => 'The sequence number of the stream.'."\n", + 'type' => 'string', + 'example' => '1', + ], + 'CodecName' => [ + 'title' => '编码格式。', + 'description' => 'The encoding format.'."\n", + 'type' => 'string', + 'example' => 'aac', + ], + 'CodecLongName' => [ + 'title' => '编码格式名。', + 'description' => 'The name of the encoding format.'."\n", + 'type' => 'string', + 'example' => 'AAC (Advanced Audio Coding)', + ], + 'CodecTimeBase' => [ + 'title' => '编码器时间基。', + 'description' => 'The time base of the encoder.'."\n", + 'type' => 'string', + 'example' => '1/44100', + ], + 'CodecTagString' => [ + 'title' => '编码器标签名。', + 'description' => 'The name of the encoder tag.'."\n", + 'type' => 'string', + 'example' => '[15][0][0][0]', + ], + 'CodecTag' => [ + 'title' => '编码器标签。', + 'description' => 'The encoder tag.'."\n", + 'type' => 'string', + 'example' => '0x000f', + ], + 'SampleFmt' => [ + 'title' => '采样格式。', + 'description' => 'The sampling format.'."\n", + 'type' => 'string', + 'example' => 'fltp', + ], + 'SampleRate' => [ + 'title' => '采样率(单位: Hz)。', + 'description' => 'The sampling rate. Unit: Hz.'."\n", + 'type' => 'string', + 'example' => '44100', + ], + 'Channels' => [ + 'title' => '声道数。', + 'description' => 'The number of sound channels.'."\n", + 'type' => 'string', + 'example' => '2', + ], + 'ChannelLayout' => [ + 'title' => '声道布局。', + 'description' => 'The sound channel layout.'."\n", + 'type' => 'string', + 'example' => 'stereo', + ], + 'Timebase' => [ + 'title' => '时间基。', + 'description' => 'The time base.'."\n", + 'type' => 'string', + 'example' => '1/90000', + ], + 'StartTime' => [ + 'title' => '开始时间。', + 'description' => 'The start time of the stream.'."\n", + 'type' => 'string', + 'example' => '1.473556', + ], + 'Duration' => [ + 'title' => '时长(单位: 秒)。', + 'description' => 'The duration of the stream. Unit: seconds.'."\n", + 'type' => 'string', + 'example' => '403.039989', + ], + 'Bitrate' => [ + 'title' => '码率。', + 'description' => 'The bitrate.'."\n", + 'type' => 'string', + 'example' => '0.f', + ], + 'Lang' => [ + 'title' => '语言。', + 'description' => 'The language of the stream.'."\n", + 'type' => 'string', + 'example' => 'cn', + ], + ], + ], + ], + 'VideoStreamInfoList' => [ + 'title' => '视频流信息', + 'description' => 'The information about the video stream.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The information about the video stream.'."\n", + 'type' => 'object', + 'properties' => [ + 'Index' => [ + 'title' => '流序号。', + 'description' => 'The sequence number of the stream.'."\n", + 'type' => 'string', + 'example' => '0', + ], + 'Codec_name' => [ + 'title' => '编码格式。', + 'description' => 'The encoding format.'."\n", + 'type' => 'string', + 'example' => 'h264', + ], + 'Codec_long_name' => [ + 'title' => '编码格式名。', + 'description' => 'The name of the encoding format.'."\n", + 'type' => 'string', + 'example' => 'H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10', + ], + 'Profile' => [ + 'title' => '编码器预设。', + 'description' => 'The encoder profile.'."\n", + 'type' => 'string', + 'example' => 'High', + ], + 'Codec_time_base' => [ + 'description' => 'The time base of the encoder.'."\n", + 'type' => 'string', + 'example' => '1/50', + ], + 'Codec_tag_string' => [ + 'title' => '编码格式标记文本。', + 'description' => 'The tag string of the encoding format.'."\n", + 'type' => 'string', + 'example' => '[27][0][0][0]', + ], + 'Codec_tag' => [ + 'title' => '编码格式标记。', + 'description' => 'The tag of the encoding format.'."\n", + 'type' => 'string', + 'example' => '0x001b', + ], + 'Width' => [ + 'title' => '宽。', + 'description' => 'The width.'."\n", + 'type' => 'string', + 'example' => '848', + ], + 'Height' => [ + 'title' => '高。', + 'description' => 'The height.'."\n", + 'type' => 'string', + 'example' => '478', + ], + 'Has_b_frames' => [ + 'title' => '是否有B帧。'."\n" + .'取值: '."\n" + .'- 0: 没有 B 帧, '."\n" + .'- 1: 有一个 B 帧, '."\n" + .'- 2: 有多个连续 B 帧。', + 'description' => 'Indicates whether the video stream contains bidirectional frames (B-frames). Valid values:'."\n" + ."\n" + .'* 0: The stream contains no B-frames.'."\n" + .'* 1: The stream contains one B-frame.'."\n" + .'* 2: The stream contains multiple consecutive B-frames.'."\n", + 'type' => 'string', + 'example' => '2', + ], + 'Sar' => [ + 'title' => '采集点数宽高比。', + 'description' => 'The aspect ratio of the area from which the sampling points are collected.'."\n", + 'type' => 'string', + 'example' => '478:477', + ], + 'Dar' => [ + 'title' => '图像显示宽高比。', + 'description' => 'The display aspect ratio.'."\n", + 'type' => 'string', + 'example' => '16:9', + ], + 'PixFmt' => [ + 'title' => '颜色存储格式。', + 'description' => 'The pixel format.'."\n", + 'type' => 'string', + 'example' => 'yuv420p', + ], + 'Level' => [ + 'title' => '编码等级。', + 'description' => 'The codec level.'."\n", + 'type' => 'string', + 'example' => '31', + ], + 'Fps' => [ + 'title' => '帧率。', + 'description' => 'The frame rate.'."\n", + 'type' => 'string', + 'example' => '25.0', + ], + 'Avg_fps' => [ + 'title' => '平均帧率。', + 'description' => 'The average frame rate.'."\n", + 'type' => 'string', + 'example' => '25.0', + ], + 'Time_base' => [ + 'title' => '时基。', + 'description' => 'The time base.'."\n", + 'type' => 'string', + 'example' => '1/90000', + ], + 'Start_time' => [ + 'title' => '起始时间。', + 'description' => 'The start time of the stream.'."\n", + 'type' => 'string', + 'example' => '1.473556', + ], + 'Duration' => [ + 'title' => '时长(单位: 秒)。', + 'description' => 'The duration of the stream. Unit: seconds.'."\n", + 'type' => 'string', + 'example' => '403.039989', + ], + 'Bit_rate' => [ + 'title' => '码率。', + 'description' => 'The bitrate.'."\n", + 'type' => 'string', + 'example' => '888.563', + ], + 'NumFrames' => [ + 'title' => '总帧数。', + 'description' => 'The total number of frames.'."\n", + 'type' => 'string', + 'example' => '10040', + ], + 'Lang' => [ + 'title' => '语言。', + 'description' => 'The language of the stream.'."\n", + 'type' => 'string', + 'example' => 'cn', + ], + 'Rotate' => [ + 'title' => '视频画面旋转角度。'."\n" + .'取值 0, 90, 180, 270。'."\n" + .'默认值 0', + 'description' => 'The rotation angle of the video image.'."\n" + ."\n" + .'* Valid values: 0, 90, 180, and 270.'."\n" + .'* Default value: 0.'."\n", + 'type' => 'string', + 'example' => '0', + ], + ], + ], + ], + ], + ], + 'SubmitTime' => [ + 'title' => '任务提交时间。格式为: yyyy-MM-ddTHH:mm:ssZ 。', + 'description' => 'The time when the job was submitted. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2022-01-12T08:49:41Z', + ], + 'FinishTime' => [ + 'title' => '任务完成时间。格式为: yyyy-MM-ddTHH:mm:ssZ 。', + 'description' => 'The time when the job was complete. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2022-01-12T08:49:41Z', + ], + 'RequestId' => [ + 'title' => '请求 ID。', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '4879B9DE-E4B6-19DC-91F5-9D5F4DCE4168', + ], + ], + ], + ], + 'NextPageToken' => [ + 'title' => '下一页标识,第一次提交时为空即可。下一页标识将在第一次查询后返回。', + 'description' => 'The pagination token that is used in the next request to retrieve a new page of results. You do not need to specify this parameter for the first request. The token of the next page is returned after you call this operation for the first time.'."\n", + 'type' => 'string', + 'example' => '019daf5780f74831b0e1a767c9f1c178', + ], + ], + 'description' => '', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"31E30781-9495-5E2D-A84D-759B0A01E262\\",\\n \\"Jobs\\": [\\n {\\n \\"Name\\": \\"job-name\\",\\n \\"TriggerSource\\": \\"API\\",\\n \\"JobId\\": \\"ab4802364a2e49208c99efab82df****\\",\\n \\"Input\\": {\\n \\"Type\\": \\"OSS\\",\\n \\"Media\\": \\"oss://bucket/path/to/video.mp4\\"\\n },\\n \\"Async\\": true,\\n \\"UserData\\": \\"user-data\\",\\n \\"ScheduleConfig\\": {\\n \\"PipelineId\\": \\"e37ebee5d98b4781897f6086e89f****\\",\\n \\"Priority\\": 5\\n },\\n \\"Status\\": \\"Init\\",\\n \\"SubmitResultJson\\": {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n },\\n \\"MediaInfoProperty\\": {\\n \\"FileBasicInfo\\": {\\n \\"MediaId\\": \\"4765337007f571edbfdf81848c01****\\",\\n \\"FileName\\": \\"file.m3u8\\",\\n \\"FileStatus\\": \\"Normal\\",\\n \\"FileType\\": \\"source_file\\",\\n \\"FileSize\\": \\"31737\\",\\n \\"FileUrl\\": \\"http://bucket.oss-cn-shanghai.aliyuncs.com/path/to/file.m3u8\\",\\n \\"Region\\": \\"cn-shanghai\\",\\n \\"FormatName\\": \\"hls,applehttp\\",\\n \\"Duration\\": \\"403.039999\\",\\n \\"Bitrate\\": \\"888.563\\",\\n \\"Width\\": \\"848\\",\\n \\"Height\\": \\"478\\"\\n },\\n \\"AudioStreamInfoList\\": [\\n {\\n \\"Index\\": \\"1\\",\\n \\"CodecName\\": \\"aac\\",\\n \\"CodecLongName\\": \\"AAC (Advanced Audio Coding)\\",\\n \\"CodecTimeBase\\": \\"1/44100\\",\\n \\"CodecTagString\\": \\"[15][0][0][0]\\",\\n \\"CodecTag\\": \\"0x000f\\",\\n \\"SampleFmt\\": \\"fltp\\",\\n \\"SampleRate\\": \\"44100\\",\\n \\"Channels\\": \\"2\\",\\n \\"ChannelLayout\\": \\"stereo\\",\\n \\"Timebase\\": \\"1/90000\\",\\n \\"StartTime\\": \\"1.473556\\",\\n \\"Duration\\": \\"403.039989\\",\\n \\"Bitrate\\": \\"0.f\\",\\n \\"Lang\\": \\"cn\\"\\n }\\n ],\\n \\"VideoStreamInfoList\\": [\\n {\\n \\"Index\\": \\"0\\",\\n \\"Codec_name\\": \\"h264\\",\\n \\"Codec_long_name\\": \\"H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10\\",\\n \\"Profile\\": \\"High\\",\\n \\"Codec_time_base\\": \\"1/50\\",\\n \\"Codec_tag_string\\": \\"[27][0][0][0]\\",\\n \\"Codec_tag\\": \\"0x001b\\",\\n \\"Width\\": \\"848\\",\\n \\"Height\\": \\"478\\",\\n \\"Has_b_frames\\": \\"2\\",\\n \\"Sar\\": \\"478:477\\",\\n \\"Dar\\": \\"16:9\\",\\n \\"PixFmt\\": \\"yuv420p\\",\\n \\"Level\\": \\"31\\",\\n \\"Fps\\": \\"25.0\\",\\n \\"Avg_fps\\": \\"25.0\\",\\n \\"Time_base\\": \\"1/90000\\",\\n \\"Start_time\\": \\"1.473556\\",\\n \\"Duration\\": \\"403.039989\\",\\n \\"Bit_rate\\": \\"888.563\\",\\n \\"NumFrames\\": \\"10040\\",\\n \\"Lang\\": \\"cn\\",\\n \\"Rotate\\": \\"0\\"\\n }\\n ]\\n },\\n \\"SubmitTime\\": \\"2022-01-12T08:49:41Z\\",\\n \\"FinishTime\\": \\"2022-01-12T08:49:41Z\\",\\n \\"RequestId\\": \\"4879B9DE-E4B6-19DC-91F5-9D5F4DCE4168\\"\\n }\\n ],\\n \\"NextPageToken\\": \\"019daf5780f74831b0e1a767c9f1c178\\"\\n}","type":"json"}]', + 'title' => 'ListMediaInfoJobs', + 'summary' => 'Queries a list of media information analysis jobs.', + ], + 'CreateLiveTranscodeTemplate' => [ + 'summary' => 'Creates a live stream transcoding template, which can be referenced when submitting a transcoding job.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'Type', + 'in' => 'query', + 'schema' => [ + 'title' => '模板Id', + 'description' => 'The type of the template. Valid values:'."\n" + ."\n" + .'* normal'."\n" + .'* narrow-band'."\n" + .'* audio-only'."\n" + .'* origin'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'normal', + 'enum' => [ + 'normal', + 'narrow-band', + 'audio-only', + 'origin', + ], + ], + ], + [ + 'name' => 'Name', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the template.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'my template', + 'maxLength' => 20, + 'minLength' => 1, + ], + ], + [ + 'name' => 'TemplateConfig', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The configuration of the template.'."\n", + 'type' => 'object', + 'properties' => [ + 'VideoParams' => [ + 'description' => 'The video parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'Codec' => [ + 'description' => 'The encoding type. Valid values:'."\n" + ."\n" + .'* H.264'."\n" + .'* H.265'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'H.264', + 'enum' => [ + 'H.264', + 'H.265', + ], + ], + 'Height' => [ + 'description' => 'The height of the output video. Valid values: Height ≥ 128 max (Height,Width) ≤ 2560 min (Height,Width) ≤ 1440'."\n" + ."\n" + .'Note: The resolution of the output video that is transcoded by using the H.265 Narrowband HD transcoding template cannot exceed 1280 × 720 pixels.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '720', + ], + 'Width' => [ + 'description' => 'The width of the output video. Valid values: Width ≥ 128 max (Height,Width) ≤ 2560 min (Height,Width) ≤ 1440'."\n" + ."\n" + .'Note: The resolution of the output video that is transcoded by using the H.265 Narrowband HD transcoding template cannot exceed 1280 × 720 pixels.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '1280', + ], + 'Fps' => [ + 'description' => 'The frame rate of the output video. Unit: frames per second (FPS). Valid values: 1 to 60.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '25', + ], + 'Bitrate' => [ + 'description' => 'The bitrate of the output video. Unit: Kbit/s. Valid values: 1 to 6000.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2500', + ], + 'Gop' => [ + 'description' => 'The group of pictures (GOP) of the output video. Unit: frame. Valid values: 1 to 3000.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '1000', + ], + 'Profile' => [ + 'description' => 'The encoding profile. The profile determines how a video is encoded. In most cases, a greater value indicates better image quality and higher resource consumption. Valid values: 1: baseline. This value is suitable for mobile devices. 2: main. This value is suitable for standard-definition devices. 3: high. This value is suitable for high-definition devices.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2', + 'enum' => [ + '1', + '2', + '3', + ], + ], + ], + 'required' => false, + ], + 'AudioParams' => [ + 'description' => 'The audio parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'Codec' => [ + 'description' => 'The audio codec. Valid values:'."\n" + ."\n" + .'* AAC'."\n" + .'* MP3'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'AAC', + 'enum' => [ + 'AAC', + 'MP3', + ], + ], + 'Bitrate' => [ + 'description' => 'The bitrate of the output audio. Unit: Kbit/s. Valid values: 1 to 1000.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '100', + ], + 'Samplerate' => [ + 'description' => 'The audio sampling rate. Valid values: 22050 to 96000.'."\n" + ."\n" + .'Note: If you set AudioProfile to aac_ld, the audio sampling rate cannot exceed 44,100.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '44100', + ], + 'Channels' => [ + 'description' => 'The number of sound channels. Valid values: 1: mono 2: binaural'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2', + ], + 'Profile' => [ + 'description' => 'The audio codec profile. Valid values when the Codec parameter is set to AAC:'."\n" + ."\n" + .'* aac_low'."\n" + .'* aac_he'."\n" + .'* aac_he_v2'."\n" + .'* aac_ld'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'aaclow', + 'enum' => [ + 'aac_low', + 'aac_he', + 'aac_he_v2', + 'aac_ld', + ], + ], + ], + 'required' => false, + ], + ], + 'required' => false, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******3B-0E1A-586A-AC29-742247******', + ], + 'TemplateId' => [ + 'description' => 'The ID of the template.'."\n", + 'type' => 'string', + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParam.Height', + 'errorMessage' => 'Invalid Parameters: Height', + ], + [ + 'errorCode' => 'InvalidParam.Width', + 'errorMessage' => 'Invalid Parameters: Width', + ], + [ + 'errorCode' => 'InvalidParam.Fps', + 'errorMessage' => 'Invalid Parameters: Fps', + ], + ], + 403 => [ + [ + 'errorCode' => 'OperationDenied', + 'errorMessage' => 'Your account has not enabled the ICE service.', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******3B-0E1A-586A-AC29-742247******\\",\\n \\"TemplateId\\": \\"****20b48fb04483915d4f2cd8ac****\\"\\n}","type":"json"}]', + 'title' => 'CreateLiveTranscodeTemplate', + ], + 'GetLiveTranscodeTemplate' => [ + 'summary' => 'Queries the information a live stream transcoding template.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'TemplateId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '****a046-263c-3560-978a-fb287666****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******3B-0E1A-586A-AC29-742247******', + ], + 'TemplateContent' => [ + 'description' => 'The content of the template.'."\n", + 'type' => 'object', + 'properties' => [ + 'Name' => [ + 'description' => 'The name of the template.'."\n", + 'type' => 'string', + 'example' => 'my-template', + ], + 'TemplateId' => [ + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'example' => 'bcfa57950bc649b2abfb476ecd36ea4f', + ], + 'Type' => [ + 'description' => 'The type of the template.'."\n", + 'type' => 'string', + 'example' => 'normal', + ], + 'Category' => [ + 'description' => 'The category of the template. Valid values:'."\n" + ."\n" + .'* system'."\n" + .'* customized'."\n", + 'type' => 'string', + 'example' => 'customized', + ], + 'CreateTime' => [ + 'description' => 'The time when the template was created.'."\n", + 'type' => 'string', + 'example' => '2022-07-25T06:15:14Z', + ], + 'TemplateConfig' => [ + 'description' => 'The configuration of the template.'."\n", + 'type' => 'object', + 'properties' => [ + 'VideoParams' => [ + 'description' => 'The video parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'Codec' => [ + 'description' => 'The encoding type.'."\n", + 'type' => 'string', + 'example' => 'H.264', + ], + 'Height' => [ + 'description' => 'The height of the output video.'."\n", + 'type' => 'string', + 'example' => '720', + ], + 'Width' => [ + 'description' => 'The width of the output video.'."\n", + 'type' => 'string', + 'example' => '1280', + ], + 'Fps' => [ + 'description' => 'The frame rate of the output video.'."\n", + 'type' => 'string', + 'example' => '30', + ], + 'Bitrate' => [ + 'description' => 'The bitrate of the output video.'."\n", + 'type' => 'string', + 'example' => '2500', + ], + 'Gop' => [ + 'description' => 'The group of pictures (GOP) of the output video.'."\n", + 'type' => 'string', + 'example' => '1000', + ], + 'Profile' => [ + 'description' => 'The encoding profile.'."\n", + 'type' => 'string', + 'example' => '2', + ], + ], + ], + 'AudioParams' => [ + 'description' => 'The audio parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'Codec' => [ + 'description' => 'The audio codec.'."\n", + 'type' => 'string', + 'example' => 'AAC', + ], + 'Bitrate' => [ + 'description' => 'The bitrate of the output audio.'."\n", + 'type' => 'string', + 'example' => '1000', + ], + 'Samplerate' => [ + 'description' => 'The audio sampling rate.'."\n", + 'type' => 'string', + 'example' => '44100', + ], + 'Channels' => [ + 'description' => 'The number of sound channels.'."\n", + 'type' => 'string', + 'example' => '2', + ], + 'Profile' => [ + 'description' => 'The audio codec profile.'."\n", + 'type' => 'string', + 'example' => '1', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParam', + 'errorMessage' => '%s', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******3B-0E1A-586A-AC29-742247******\\",\\n \\"TemplateContent\\": {\\n \\"Name\\": \\"my-template\\",\\n \\"TemplateId\\": \\"bcfa57950bc649b2abfb476ecd36ea4f\\",\\n \\"Type\\": \\"normal\\",\\n \\"Category\\": \\"customized\\",\\n \\"CreateTime\\": \\"2022-07-25T06:15:14Z\\",\\n \\"TemplateConfig\\": {\\n \\"VideoParams\\": {\\n \\"Codec\\": \\"H.264\\",\\n \\"Height\\": \\"720\\",\\n \\"Width\\": \\"1280\\",\\n \\"Fps\\": \\"30\\",\\n \\"Bitrate\\": \\"2500\\",\\n \\"Gop\\": \\"1000\\",\\n \\"Profile\\": \\"2\\"\\n },\\n \\"AudioParams\\": {\\n \\"Codec\\": \\"AAC\\",\\n \\"Bitrate\\": \\"1000\\",\\n \\"Samplerate\\": \\"44100\\",\\n \\"Channels\\": \\"2\\",\\n \\"Profile\\": \\"1\\"\\n }\\n }\\n }\\n}","type":"json"}]', + 'title' => 'GetLiveTranscodeTemplate', + ], + 'UpdateLiveTranscodeTemplate' => [ + 'summary' => 'Updates the information about a live stream transcoding template.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'TemplateId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The template ID. To obtain the template ID, log on to the [Intelligent Media Services (IMS) console](https://ims.console.aliyun.com/summary), choose Real-time Media Processing > Template Management, and then click the Transcoding tab. Alternatively, find the ID from the response parameters of the [CreateLiveTranscodeTemplate](~~449217~~) operation.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '****96e8864746a0b6f3****', + ], + ], + [ + 'name' => 'Name', + 'in' => 'query', + 'schema' => [ + 'description' => 'The template name.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '', + ], + ], + [ + 'name' => 'TemplateConfig', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The configuration of the template.'."\n", + 'type' => 'object', + 'properties' => [ + 'VideoParams' => [ + 'description' => 'The video parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'Codec' => [ + 'description' => 'The encoding type. Valid values:'."\n" + ."\n" + .'* H.264'."\n" + .'* H.265'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'H.264' => 'H.264', + 'H.265' => 'H.265', + ], + 'example' => 'H.264', + 'enum' => [], + ], + 'Height' => [ + 'description' => 'The height of the output video. Valid values:'."\n" + ."\n" + .'* Height ≥ 128'."\n" + .'* max (Height,Width) ≤ 2560'."\n" + .'* min(Height,Width)≤ 1440'."\n" + ."\n" + .'> The resolution of a video transcoded by using the H.265 Narrowband HD template cannot exceed 1,280 × 720 pixels.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '720', + ], + 'Width' => [ + 'description' => 'The width of the output video. Valid values:'."\n" + ."\n" + .'* Width ≥ 128'."\n" + .'* max (Height,Width) ≤ 2560'."\n" + .'* min(Height,Width)≤ 1440'."\n" + ."\n" + .'> The resolution of a video transcoded by using the H.265 Narrowband HD template cannot exceed 1,280 × 720 pixels.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '1280', + ], + 'Fps' => [ + 'description' => 'The frame rate of the output video. Unit: frames per second (FPS). Valid values: 1 to 60.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '30', + ], + 'Bitrate' => [ + 'description' => 'The bitrate of the output video. Unit: Kbit/s. Valid values: 1 to 6000.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2500', + ], + 'Gop' => [ + 'description' => 'The group of pictures (GOP) of the output video. Unit: frame. Valid values: 1 to 3000.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '1000', + ], + 'Profile' => [ + 'description' => 'The video encoding profile. The profile determines how a video is encoded. In most cases, a greater value indicates better image quality and higher resource consumption. Valid values:'."\n" + ."\n" + .'* 1: baseline. This value is suitable for mobile devices.'."\n" + .'* 2: main. This value is suitable for standard-definition devices.'."\n" + .'* 3: high. This value is suitable for high-definition devices.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 1 => '1', + '2', + '3', + ], + 'example' => '2', + ], + ], + 'required' => false, + ], + 'AudioParams' => [ + 'description' => 'The audio parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'Codec' => [ + 'description' => 'The audio codec. Valid values: AAC MP3'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'MP3' => 'MP3', + 'AAC' => 'AAC', + ], + 'example' => 'AAC', + 'enum' => [], + ], + 'Bitrate' => [ + 'description' => 'The bitrate of the output audio. Unit: Kbit/s. Valid values: 1 to 1000.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '100', + ], + 'Samplerate' => [ + 'description' => 'The audio sampling rate. Valid values: 22050 to 96000.'."\n" + ."\n" + .'Note If you set AudioProfile to aac_ld, the audio sampling rate cannot exceed 44100.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '44100', + ], + 'Channels' => [ + 'description' => 'The number of sound channels. Valid values: 1: mono 2: binaural'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 1 => '1', + '2', + ], + 'example' => '2', + ], + 'Profile' => [ + 'description' => 'The audio codec profile. Valid values when the Codec parameter is set to AAC:'."\n" + ."\n" + .'* aac_low'."\n" + .'* aac_he'."\n" + .'* aac_he_v2'."\n" + .'* aac_ld'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'aac_low', + 'enum' => [], + ], + ], + 'required' => false, + ], + ], + 'required' => false, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******3B-0E1A-586A-AC29-742247******', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParam.TemplateIdInuse', + 'errorMessage' => 'Parameters: templateId is inuse.', + ], + ], + 403 => [ + [ + 'errorCode' => 'OperationDenied', + 'errorMessage' => 'Your account has not enabled the ICE service.', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******3B-0E1A-586A-AC29-742247******\\"\\n}","type":"json"}]', + 'title' => 'UpdateLiveTranscodeTemplate', + ], + 'DeleteLiveTranscodeTemplate' => [ + 'summary' => 'Deletes a live stream transcoding template.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'TemplateId', + 'in' => 'query', + 'schema' => [ + 'title' => '模板Id', + 'description' => 'The template ID. To obtain the template ID, log on to the [Intelligent Media Services (IMS) console](https://ice.console.aliyun.com/summary), choose Real-time Media Processing > Template Management, and then click the Transcoding tab. Alternatively, find the ID from the response parameters of the [CreateLiveTranscodeTemplate](~~449217~~) operation.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '****d80e4e4044975745c14b****', + 'enum' => [], + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******3B-0E1A-586A-AC29-742247******', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParam', + 'errorMessage' => 'Parameters: templateId is inuse.', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******3B-0E1A-586A-AC29-742247******\\"\\n}","type":"json"}]', + 'title' => 'DeleteLiveTranscodeTemplate', + ], + 'ListLiveTranscodeTemplates' => [ + 'summary' => 'Queries a list of live stream transcoding templates.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'Type', + 'in' => 'query', + 'schema' => [ + 'title' => '模板Id', + 'description' => 'The type of the template. Valid values:'."\n" + ."\n" + .'* normal'."\n" + .'* narrow-band'."\n" + .'* audio-only'."\n" + .'* origin'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'normal', + 'enum' => [ + 'normal', + 'narrow-band', + 'audio-only', + 'origin', + ], + ], + ], + [ + 'name' => 'VideoCodec', + 'in' => 'query', + 'schema' => [ + 'description' => 'The video codec. Valid values:'."\n" + ."\n" + .'* H.264'."\n" + .'* H.265'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'H.264', + 'enum' => [ + 'H.264', + 'H.265', + ], + ], + ], + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number of the page to return. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'minimum' => '1', + 'example' => '1', + 'default' => '0', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page. Default value: 10. Maximum value: 100.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'minimum' => '1', + 'example' => '20', + 'default' => '50', + ], + ], + [ + 'name' => 'SortBy', + 'in' => 'query', + 'schema' => [ + 'description' => 'The sorting order. By default, the query results are sorted by creation time in descending order. Valid values:'."\n" + ."\n" + .'* asc'."\n" + .'* desc'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'asc', + 'default' => 'desc', + 'enum' => [ + 'asc', + 'desc', + ], + ], + ], + [ + 'name' => 'KeyWord', + 'in' => 'query', + 'schema' => [ + 'description' => 'The search keyword. You can use the template ID or name as the keyword to search for templates. If you search for templates by name, fuzzy match is supported.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'my_template', + ], + ], + [ + 'name' => 'Category', + 'in' => 'query', + 'schema' => [ + 'description' => 'The category of the template. Valid values:'."\n" + ."\n" + .'* system'."\n" + .'* customized'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'customized', + 'enum' => [ + 'system', + 'customized', + ], + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******3B-0E1A-586A-AC29-742247******', + ], + 'TotalCount' => [ + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '100', + ], + 'TemplateContentList' => [ + 'description' => 'The list of transcoding templates.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Name' => [ + 'description' => 'The template name.'."\n", + 'type' => 'string', + 'example' => 'my_template', + ], + 'TemplateId' => [ + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'example' => '9b1571b513cb44f7a1ba6ae561ff46f7', + ], + 'Type' => [ + 'description' => 'The type of the template.'."\n", + 'type' => 'string', + 'example' => 'normal', + ], + 'Category' => [ + 'description' => 'The category of the template. Valid values:'."\n", + 'type' => 'string', + 'example' => 'system', + ], + 'CreateTime' => [ + 'description' => 'The time when the job was created.'."\n", + 'type' => 'string', + 'example' => '2022-07-20T03:26:36Z', + ], + 'TemplateConfig' => [ + 'description' => 'The configuration of the template.'."\n", + 'type' => 'object', + 'properties' => [ + 'VideoParams' => [ + 'description' => 'The video parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'Codec' => [ + 'description' => 'The encoding format.'."\n", + 'type' => 'string', + 'example' => '264', + ], + 'Height' => [ + 'description' => 'The vertical resolution of the video.'."\n", + 'type' => 'string', + 'example' => '1280', + ], + 'Width' => [ + 'description' => 'The horizontal resolution of the video.'."\n", + 'type' => 'string', + 'example' => '720', + ], + 'Fps' => [ + 'description' => 'The video frame rate.'."\n", + 'type' => 'string', + 'example' => '30', + ], + 'Bitrate' => [ + 'description' => 'The video bitrate.'."\n", + 'type' => 'string', + 'example' => '2500', + ], + 'Gop' => [ + 'description' => 'The group of pictures (GOP) of the output video. Unit: frame.'."\n", + 'type' => 'string', + 'example' => '1000', + ], + 'Profile' => [ + 'description' => 'The encoding profile.'."\n", + 'type' => 'string', + 'example' => '3', + ], + ], + ], + 'AudioParams' => [ + 'description' => 'The audio parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'Codec' => [ + 'description' => 'The audio codec.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'AAC', + ], + 'Bitrate' => [ + 'description' => 'The audio bitrate.'."\n", + 'type' => 'string', + 'example' => '1000', + ], + 'Samplerate' => [ + 'description' => 'The audio sampling rate.'."\n", + 'type' => 'string', + 'example' => '44100', + ], + 'Channels' => [ + 'description' => 'The number of sound channels.'."\n", + 'type' => 'string', + 'example' => '2', + ], + 'Profile' => [ + 'description' => 'The encoding profile.'."\n", + 'type' => 'string', + 'example' => 'aac_low', + ], + ], + ], + ], + ], + ], + 'description' => '', + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 403 => [ + [ + 'errorCode' => 'OperationDenied', + 'errorMessage' => 'Your account has not enabled the ICE service.', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******3B-0E1A-586A-AC29-742247******\\",\\n \\"TotalCount\\": 100,\\n \\"TemplateContentList\\": [\\n {\\n \\"Name\\": \\"my_template\\",\\n \\"TemplateId\\": \\"9b1571b513cb44f7a1ba6ae561ff46f7\\",\\n \\"Type\\": \\"normal\\",\\n \\"Category\\": \\"system\\",\\n \\"CreateTime\\": \\"2022-07-20T03:26:36Z\\",\\n \\"TemplateConfig\\": {\\n \\"VideoParams\\": {\\n \\"Codec\\": \\"264\\",\\n \\"Height\\": \\"1280\\",\\n \\"Width\\": \\"720\\",\\n \\"Fps\\": \\"30\\",\\n \\"Bitrate\\": \\"2500\\",\\n \\"Gop\\": \\"1000\\",\\n \\"Profile\\": \\"3\\"\\n },\\n \\"AudioParams\\": {\\n \\"Codec\\": \\"AAC\\",\\n \\"Bitrate\\": \\"1000\\",\\n \\"Samplerate\\": \\"44100\\",\\n \\"Channels\\": \\"2\\",\\n \\"Profile\\": \\"aac_low\\"\\n }\\n }\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'ListLiveTranscodeTemplates', + ], + 'SubmitLiveTranscodeJob' => [ + 'summary' => 'Submits a live stream transcoding job.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'Name', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the transcoding job.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'task1', + 'maxLength' => 128, + 'minLength' => 1, + ], + ], + [ + 'name' => 'TemplateId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '****96e8864746a0b6f3****', + ], + ], + [ + 'name' => 'StartMode', + 'in' => 'query', + 'schema' => [ + 'description' => 'The start mode of the transcoding job.'."\n" + ."\n" + .'* 0: The transcoding job immediately starts.'."\n" + .'* 1: The transcoding job starts at the scheduled time.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'example' => '0', + 'enum' => [ + '0', + '1', + ], + ], + ], + [ + 'name' => 'StreamInput', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The information about the input stream.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The type of the input stream. The value can only be rtmp.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'rtmp', + 'enum' => [ + 'rtmp', + ], + ], + 'InputUrl' => [ + 'description' => 'The URL of the input stream.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'rtmp://mydomain/app/stream1', + ], + ], + 'required' => true, + ], + ], + [ + 'name' => 'TranscodeOutput', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The information about the transcoding output.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The type of the output stream. A value of LiveCenter indicates that the URL of the output stream is generated based on the domain name of ApsaraVideo Live. The value can only be LiveCenter.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'LiveCenter', + ], + 'DomainName' => [ + 'description' => 'The streaming domain name of ApsaraVideo Live.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'mydomain', + ], + ], + 'required' => true, + ], + ], + [ + 'name' => 'TimedConfig', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The configuration of a timed transcoding job. This parameter is required if you set StartMode to 1.'."\n", + 'type' => 'object', + 'properties' => [ + 'StartTime' => [ + 'description' => 'The start time of the transcoding job. Note: The time span between the start time and the current time cannot exceed seven days.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2022-02-21T00:00:00Z', + ], + 'EndTime' => [ + 'description' => 'The stop time of the transcoding job. Note: The time span between the stop time and the current time cannot exceed seven days.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2022-07-20T08:20:32Z', + ], + ], + 'required' => false, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******3B-0E1A-586A-AC29-742247******', + ], + 'JobId' => [ + 'description' => 'The ID of the transcoding job.'."\n", + 'type' => 'string', + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 403 => [ + [ + 'errorCode' => 'Forbidden', + 'errorMessage' => 'User not authorized to operate on the specified resource.', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******3B-0E1A-586A-AC29-742247******\\",\\n \\"JobId\\": \\"****20b48fb04483915d4f2cd8ac****\\"\\n}","type":"json"}]', + 'title' => 'SubmitLiveTranscodeJob', + 'description' => '* When you submit a transcoding job that immediately takes effect, make sure that the input stream can be streamed.'."\n" + .'* When you submit a timed transcoding job, make sure that the input stream can be streamed before the specified time.'."\n", + ], + 'SendLiveTranscodeJobCommand' => [ + 'summary' => 'Sends a command to process a live stream transcoding job.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'JobId', + 'in' => 'query', + 'schema' => [ + 'title' => '模板Id', + 'description' => 'The ID of the transcoding job.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '****20b48fb04483915d4f2cd8ac****', + 'enum' => [], + ], + ], + [ + 'name' => 'Command', + 'in' => 'query', + 'schema' => [ + 'description' => 'The operation command. Only the stop command is supported. This command is used to stop a transcoding job.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'stop', + 'enum' => [ + 'stop', + ], + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******3B-0E1A-586A-AC29-742247******', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******3B-0E1A-586A-AC29-742247******\\"\\n}","type":"json"}]', + 'title' => 'SendLiveTranscodeJobCommand', + ], + 'GetLiveTranscodeJob' => [ + 'summary' => 'Queries the information about a live stream transcoding job.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'JobId', + 'in' => 'query', + 'schema' => [ + 'title' => '模板Id', + 'description' => 'The ID of the transcoding job.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '****20b48fb04483915d4f2cd8ac****', + 'enum' => [], + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******3B-0E1A-586A-AC29-742247******', + ], + 'Job' => [ + 'description' => 'The information about the transcoding job.'."\n", + 'type' => 'object', + 'properties' => [ + 'Name' => [ + 'description' => 'The name of the transcoding job.'."\n", + 'type' => 'string', + 'example' => 'task1', + ], + 'JobId' => [ + 'description' => 'The ID of the transcoding job.'."\n", + 'type' => 'string', + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + 'TemplateType' => [ + 'description' => 'The type of the template.'."\n", + 'type' => 'string', + 'example' => 'normal', + ], + 'TemplateId' => [ + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'example' => 'b6491d5b3e514b7d895d14b5453ea119', + ], + 'TemplateName' => [ + 'description' => 'The template name.'."\n", + 'type' => 'string', + 'example' => 'basic', + ], + 'StartMode' => [ + 'description' => 'The start mode of the job.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'Status' => [ + 'description' => 'The state of the job.'."\n" + ."\n" + .'* 0: The job is not started.'."\n" + .'* 1: The job is in progress.'."\n" + .'* 2: The job is stopped.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'StreamInput' => [ + 'description' => 'The information about the input stream.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The type of the input stream.'."\n", + 'type' => 'string', + 'example' => 'rtmp', + ], + 'InputUrl' => [ + 'description' => 'The URL of the input stream.'."\n", + 'type' => 'string', + 'example' => 'rtmp://mydomain/app/stream1', + ], + ], + ], + 'OutputStream' => [ + 'description' => 'The information about the output stream.'."\n", + 'type' => 'object', + 'properties' => [ + 'StreamInfos' => [ + 'description' => 'The information about the output stream.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The type of the output stream protocol. Only the RTMP protocol is supported.'."\n", + 'type' => 'string', + 'example' => 'rtmp', + ], + 'OutputUrl' => [ + 'description' => 'The URL of the output stream.'."\n", + 'type' => 'string', + 'example' => 'rtmp://mydomain/app/mytranscode1', + ], + ], + 'description' => '', + ], + ], + ], + ], + 'CreateTime' => [ + 'description' => 'The time when the job was created.'."\n", + 'type' => 'string', + 'example' => '2022-07-20T02:48:58Z', + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'Forbidden', + 'errorMessage' => '%s', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******3B-0E1A-586A-AC29-742247******\\",\\n \\"Job\\": {\\n \\"Name\\": \\"task1\\",\\n \\"JobId\\": \\"****20b48fb04483915d4f2cd8ac****\\",\\n \\"TemplateType\\": \\"normal\\",\\n \\"TemplateId\\": \\"b6491d5b3e514b7d895d14b5453ea119\\",\\n \\"TemplateName\\": \\"basic\\",\\n \\"StartMode\\": 0,\\n \\"Status\\": 1,\\n \\"StreamInput\\": {\\n \\"Type\\": \\"rtmp\\",\\n \\"InputUrl\\": \\"rtmp://mydomain/app/stream1\\"\\n },\\n \\"OutputStream\\": {\\n \\"StreamInfos\\": [\\n {\\n \\"Type\\": \\"rtmp\\",\\n \\"OutputUrl\\": \\"rtmp://mydomain/app/mytranscode1\\"\\n }\\n ]\\n },\\n \\"CreateTime\\": \\"2022-07-20T02:48:58Z\\"\\n }\\n}","type":"json"}]', + 'title' => 'GetLiveTranscodeJob', + ], + 'UpdateLiveTranscodeJob' => [ + 'summary' => 'Updates the information about a live stream transcoding job.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'Name', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the job.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'mytest3', + 'maxLength' => 128, + 'minLength' => 1, + ], + ], + [ + 'name' => 'JobId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The job ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + ], + [ + 'name' => 'StreamInput', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The information about the input stream.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The type of the input stream. The value can only be rtmp.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'rtmp', + 'enum' => [ + 'rtmp', + ], + ], + 'InputUrl' => [ + 'description' => 'The URL of the input stream.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'rtmp://mydomain/app/stream1', + ], + ], + 'required' => false, + ], + ], + [ + 'name' => 'TranscodeOutput', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The information about the transcoding output.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The type of the output stream. A value of LiveCenter indicates that the URL of the output stream is generated based on the domain name of ApsaraVideo Live. The value can only be LiveCenter.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'LiveCenter', + ], + 'DomainName' => [ + 'description' => 'The streaming domain name of ApsaraVideo Live.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'mydomain', + ], + ], + 'required' => false, + ], + ], + [ + 'name' => 'TimedConfig', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The configuration of a timed transcoding job.'."\n", + 'type' => 'object', + 'properties' => [ + 'StartTime' => [ + 'description' => 'The start time of the transcoding job. Note: The time span between the start time and the current time cannot exceed seven days.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2022-06-19T02:16:41Z'."\n", + ], + 'EndTime' => [ + 'description' => 'The stop time of the transcoding job. Note: The time span between the stop time and the current time cannot exceed seven days.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2022-08-05T06:08:31Z', + ], + ], + 'required' => false, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******3B-0E1A-586A-AC29-742247******', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******3B-0E1A-586A-AC29-742247******\\"\\n}","type":"json"}]', + 'title' => 'UpdateLiveTranscodeJob', + 'description' => '* For a non-timed transcoding job, you can modify the Name parameter of the job, regardless of the job state.'."\n" + .'* For a timed job, you can modify the Name, StreamInput, TranscodeOutput, and TimedConfig parameters. However, the StreamInput, TranscodeOutput, and TimedConfig parameters can be modified only when the job is not started.'."\n", + ], + 'DeleteLiveTranscodeJob' => [ + 'summary' => '删除指定转码任务', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'JobId', + 'in' => 'query', + 'schema' => [ + 'title' => '模板Id', + 'description' => 'The ID of the transcoding job.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '****20b48fb04483915d4f2cd8ac****', + 'enum' => [], + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******3B-0E1A-586A-AC29-742247******', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******3B-0E1A-586A-AC29-742247******\\"\\n}","type":"json"}]', + 'title' => 'DeleteLiveTranscodeJob', + ], + 'ListLiveTranscodeJobs' => [ + 'summary' => 'Queries a list of live stream transcoding jobs.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'Type', + 'in' => 'query', + 'schema' => [ + 'title' => '模板Id', + 'description' => 'The type of the template used by the transcoding job.'."\n" + ."\n" + .'* normal'."\n" + .'* narrow-band'."\n" + .'* audio-only'."\n" + .'* origin'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'normal', + 'enum' => [ + 'normal', + 'narrow-band', + 'audio-only', + 'origin', + ], + ], + ], + [ + 'name' => 'StartMode', + 'in' => 'query', + 'schema' => [ + 'description' => 'The start mode of the transcoding job.'."\n" + ."\n" + .'* 0: The transcoding job immediately starts.'."\n" + .'* 1: The transcoding job starts at the scheduled time.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'enumValueTitles' => [ + '0', + '1', + ], + 'example' => '0', + ], + ], + [ + 'name' => 'Status', + 'in' => 'query', + 'schema' => [ + 'description' => 'The state of the job.'."\n" + ."\n" + .'0: The job is not started. 1: The job is in progress. 2: The job is stopped.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'enumValueTitles' => [ + '0', + '1', + '2', + ], + 'example' => '1', + ], + ], + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'minimum' => '1', + 'example' => '1', + 'default' => '0', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page. Default value: 10. Maximum value: 100.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'minimum' => '1', + 'example' => '20', + 'default' => '50', + ], + ], + [ + 'name' => 'SortBy', + 'in' => 'query', + 'schema' => [ + 'description' => 'The sorting order. By default, the query results are sorted by creation time in descending order. Valid values:'."\n" + ."\n" + .'* asc'."\n" + .'* desc'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'asc', + 'default' => 'desc', + 'enum' => [ + 'asc', + 'desc', + ], + ], + ], + [ + 'name' => 'KeyWord', + 'in' => 'query', + 'schema' => [ + 'description' => 'The search keyword. You can use the job ID or name as the keyword to search for jobs. If you search for jobs by name, fuzzy match is supported.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '24ecbb5c-4f98-4194-9400-f17102e27fc5', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******3B-0E1A-586A-AC29-742247******', + ], + 'TotalCount' => [ + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '100', + ], + 'JobList' => [ + 'description' => 'The list of transcoding jobs.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Name' => [ + 'description' => 'The name of the transcoding job.'."\n", + 'type' => 'string', + 'example' => 'mytask', + ], + 'JobId' => [ + 'description' => 'The job ID.'."\n", + 'type' => 'string', + 'example' => '****a046-263c-3560-978a-fb287782****', + ], + 'TemplateType' => [ + 'description' => 'The type of the transcoding template used by the transcoding job.'."\n", + 'type' => 'string', + 'example' => 'normal', + ], + 'TemplateId' => [ + 'description' => 'The ID of the transcoding template used by the transcoding job.'."\n", + 'type' => 'string', + 'example' => '****a046-263c-3560-978a-fb287666****', + ], + 'TemplateName' => [ + 'description' => 'The template name.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'StartMode' => [ + 'description' => 'The start mode of the job.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'Status' => [ + 'description' => 'The state of the job.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'StreamInput' => [ + 'description' => 'The information about the input stream.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The type of the input stream.'."\n", + 'type' => 'string', + 'example' => 'rtmp', + ], + 'InputUrl' => [ + 'description' => 'The URL of the input stream.'."\n", + 'type' => 'string', + 'example' => 'rtmp://mydomain/app/stream1', + ], + ], + ], + 'OutputStream' => [ + 'description' => 'The information about the output stream.'."\n", + 'type' => 'object', + 'properties' => [ + 'StreamInfos' => [ + 'description' => 'The list of stream URLs.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The type of the output stream protocol. Only the RTMP protocol is supported.'."\n", + 'type' => 'string', + 'example' => 'rtmp', + ], + 'OutputUrl' => [ + 'description' => 'The URL of the output stream.'."\n", + 'type' => 'string', + 'example' => 'rtmp://mydomain/app/mytranscode1', + ], + ], + 'description' => '', + ], + ], + ], + ], + 'CreateTime' => [ + 'description' => 'The time when the job was created.'."\n", + 'type' => 'string', + 'example' => '2022-07-20T02:48:58Z', + ], + ], + 'description' => '', + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******3B-0E1A-586A-AC29-742247******\\",\\n \\"TotalCount\\": 100,\\n \\"JobList\\": [\\n {\\n \\"Name\\": \\"mytask\\",\\n \\"JobId\\": \\"****a046-263c-3560-978a-fb287782****\\",\\n \\"TemplateType\\": \\"normal\\",\\n \\"TemplateId\\": \\"****a046-263c-3560-978a-fb287666****\\",\\n \\"TemplateName\\": \\"模板1\\",\\n \\"StartMode\\": 0,\\n \\"Status\\": 1,\\n \\"StreamInput\\": {\\n \\"Type\\": \\"rtmp\\",\\n \\"InputUrl\\": \\"rtmp://mydomain/app/stream1\\"\\n },\\n \\"OutputStream\\": {\\n \\"StreamInfos\\": [\\n {\\n \\"Type\\": \\"rtmp\\",\\n \\"OutputUrl\\": \\"rtmp://mydomain/app/mytranscode1\\"\\n }\\n ]\\n },\\n \\"CreateTime\\": \\"2022-07-20T02:48:58Z\\"\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'ListLiveTranscodeJobs', + ], + 'CreateLiveRecordTemplate' => [ + 'summary' => 'Creates a live stream recording template to submit live stream recording jobs.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'RecordFormat', + 'in' => 'formData', + 'style' => 'json', + 'schema' => [ + 'title' => '录制格式', + 'description' => 'The list of recording formats.'."\n", + 'type' => 'array', + 'items' => [ + 'title' => '格式', + 'description' => 'The recording format.'."\n", + 'type' => 'object', + 'properties' => [ + 'Format' => [ + 'title' => '格式', + 'description' => 'The format.'."\n" + ."\n" + .'> If you set this parameter to m3u8, you must also specify the SliceOssObjectPrefix and SliceDuration parameters.'."\n", + 'type' => 'string', + 'deprecated' => false, + 'required' => true, + 'example' => 'm3u8', + 'pattern' => '', + 'default' => '', + 'enum' => [ + 'm3u8', + 'mp4', + 'flv', + ], + ], + 'SliceDuration' => [ + 'title' => '切片时长', + 'description' => 'The duration of a single segment. Unit: seconds.'."\n" + ."\n" + .'> This parameter takes effect only if you set Format to m3u8.'."\n" + ."\n" + .'If you do not specify this parameter, the default value 30 seconds is used. Valid values: 5 to 30.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'deprecated' => false, + 'required' => false, + 'example' => '30', + 'pattern' => '', + 'default' => '', + ], + 'OssObjectPrefix' => [ + 'title' => 'Oss对象名', + 'description' => 'The name of the recording file that is stored in Object Storage Service (OSS).'."\n" + ."\n" + .'* The name must be less than 256 bytes in length and can contain the {JobId}, {Sequence}, {StartTime}, {EndTime}, {EscapedStartTime}, and {EscapedEndTime} variables.'."\n" + .'* The name must contain the {StartTime} and {EndTime} variables or the {EscapedStartTime} and {EscapedEndTime} variables.'."\n", + 'type' => 'string', + 'deprecated' => false, + 'required' => false, + 'example' => 'record/{JobId}/{Sequence}_{EscapedStartTime}_{EscapedEndTime}', + 'pattern' => '', + 'default' => '', + ], + 'SliceOssObjectPrefix' => [ + 'title' => '切片Oss对象名', + 'description' => 'The name of the TS segment.'."\n" + ."\n" + .'> This parameter is required only if you set Format to m3u8.'."\n" + ."\n" + .'* By default, the duration of a segment is 30 seconds. The segment name must be less than 256 bytes in length and can contain the {JobId}, {UnixTimestamp}, and {Sequence} variables.'."\n" + .'* The segment name must contain the {UnixTimestamp} and {Sequence} variables.'."\n", + 'type' => 'string', + 'deprecated' => false, + 'required' => false, + 'example' => 'record/{JobId}/{UnixTimestamp}_{Sequence}', + 'pattern' => '', + 'default' => '', + ], + 'CycleDuration' => [ + 'description' => 'The duration of the recording cycle. Unit: seconds. If you do not specify this parameter, the default value 6 hours is used.'."\n" + ."\n" + .'> '."\n" + ."\n" + .'* If a live stream is interrupted during a recording cycle but is resumed within 3 minutes, the stream is recorded in the same recording before and after the interruption.'."\n" + ."\n" + .'* If a live stream is interrupted for more than 3 minutes, a new recording is generated. To change the default stream interruption time, submit a ticket.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'deprecated' => false, + 'required' => false, + 'example' => '3600', + ], + ], + 'deprecated' => false, + 'required' => false, + ], + 'deprecated' => false, + 'required' => true, + ], + ], + [ + 'name' => 'Name', + 'in' => 'formData', + 'schema' => [ + 'title' => '资源名称', + 'description' => 'The name of the template.'."\n", + 'type' => 'string', + 'deprecated' => false, + 'required' => true, + 'pattern' => '', + 'default' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'TemplateId' => [ + 'title' => '资源一级ID', + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'deprecated' => false, + 'example' => '****96e8864746a0b6f3****', + 'pattern' => '', + 'readOnly' => true, + 'default' => '', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '0622C702-41BE-467E-AF2E-883D4517962E', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"TemplateId\\": \\"****96e8864746a0b6f3****\\",\\n \\"RequestId\\": \\"0622C702-41BE-467E-AF2E-883D4517962E\\"\\n}","type":"json"}]', + 'title' => 'CreateLiveRecordTemplate', + 'description' => 'You must specify a recording template for live stream recording. You can configure information such as the format and duration of a recording in a recording template. The recording format can be M3U8, MP4, or FLV.'."\n", + ], + 'GetLiveRecordTemplate' => [ + 'summary' => 'Queries the information about a live stream recording template or a snapshot of the template.', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'TemplateId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '69e1f9fe-1e97-11ed-ba64-0c42a1b73d66', + ], + ], + [ + 'name' => 'JobId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the recording job. You can specify the JobId parameter to retrieve the snapshot of the template used by the job.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'ab0e3e76-1e9d-11ed-ba64-0c42a1b73d66', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RecordTemplate' => [ + 'title' => '录制模板', + 'description' => 'The recording template.'."\n", + 'type' => 'object', + 'properties' => [ + 'RecordFormatList' => [ + 'title' => '录制格式', + 'description' => 'The list of recording formats.'."\n", + 'type' => 'array', + 'items' => [ + 'title' => '格式', + 'description' => 'The recording format.'."\n", + 'type' => 'object', + 'properties' => [ + 'Format' => [ + 'title' => '格式', + 'description' => 'The output file format.'."\n", + 'type' => 'string', + 'deprecated' => false, + 'example' => 'm3u8', + 'pattern' => '', + 'default' => '', + 'enum' => [ + 'm3u8', + 'mp4', + 'flv', + ], + ], + 'OssObjectPrefix' => [ + 'title' => 'Oss对象名', + 'description' => 'The name of the recording file that is stored in Object Storage Service (OSS).'."\n", + 'type' => 'string', + 'deprecated' => false, + 'example' => 'record/{JobId}/{Sequence}{EscapedStartTime}{EscapedEndTime}', + 'pattern' => '', + 'default' => '', + ], + 'SliceOssObjectPrefix' => [ + 'title' => '切片Oss对象名', + 'description' => 'The name of the TS segment.'."\n", + 'type' => 'string', + 'deprecated' => false, + 'example' => 'record/{JobId}/{UnixTimestamp}_{Sequence}', + 'pattern' => '', + 'default' => '', + ], + 'CycleDuration' => [ + 'description' => 'The duration of the recording cycle. Unit: seconds. If you do not specify this parameter, the default value 6 hours is used.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'deprecated' => false, + 'example' => '7200', + ], + 'SliceDuration' => [ + 'description' => 'The duration of a single segment. Unit: seconds.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '30', + ], + ], + 'deprecated' => false, + ], + 'deprecated' => false, + ], + 'CreateTime' => [ + 'title' => '创建时间', + 'description' => 'The time when the job was created.'."\n", + 'type' => 'string', + 'format' => 'iso8601', + 'example' => '2022-07-20T03:26:36Z', + ], + 'LastModified' => [ + 'title' => '创建时间', + 'description' => 'The time when the template was last modified.'."\n", + 'type' => 'string', + 'format' => 'iso8601', + 'example' => '2022-07-20T03:26:36Z', + ], + 'TemplateId' => [ + 'title' => '资源一级ID', + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'deprecated' => false, + 'example' => '69e1f9fe-1e97-11ed-ba64-0c42a1b73d66', + 'pattern' => '', + 'default' => '', + ], + 'Name' => [ + 'title' => '资源名称', + 'description' => 'The template name.'."\n", + 'type' => 'string', + 'deprecated' => false, + 'example' => 'test template', + 'pattern' => '', + 'default' => '', + ], + 'Type' => [ + 'title' => '资源名称', + 'description' => 'The type of the template.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* system'."\n" + .'* custom'."\n", + 'type' => 'string', + 'deprecated' => false, + 'enumValueTitles' => [ + 'system' => 'system', + 'custom' => 'custom', + ], + 'example' => 'custom', + 'pattern' => '', + 'default' => '', + ], + ], + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'C892855F-95DF-50D6-A28C-279ABDB76810', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RecordTemplate\\": {\\n \\"RecordFormatList\\": [\\n {\\n \\"Format\\": \\"m3u8\\",\\n \\"OssObjectPrefix\\": \\"record/{JobId}/{Sequence}{EscapedStartTime}{EscapedEndTime}\\",\\n \\"SliceOssObjectPrefix\\": \\"record/{JobId}/{UnixTimestamp}_{Sequence}\\",\\n \\"CycleDuration\\": 7200,\\n \\"SliceDuration\\": 30\\n }\\n ],\\n \\"CreateTime\\": \\"2022-07-20T03:26:36Z\\",\\n \\"LastModified\\": \\"2022-07-20T03:26:36Z\\",\\n \\"TemplateId\\": \\"69e1f9fe-1e97-11ed-ba64-0c42a1b73d66\\",\\n \\"Name\\": \\"test template\\",\\n \\"Type\\": \\"custom\\"\\n },\\n \\"RequestId\\": \\"C892855F-95DF-50D6-A28C-279ABDB76810\\"\\n}","type":"json"}]', + 'title' => 'GetLiveRecordTemplate', + ], + 'UpdateLiveRecordTemplate' => [ + 'summary' => 'Updates the information about a live stream recording template.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'RecordFormat', + 'in' => 'formData', + 'style' => 'json', + 'schema' => [ + 'title' => '录制格式', + 'description' => 'The list of recording formats.'."\n", + 'type' => 'array', + 'items' => [ + 'title' => '格式', + 'description' => 'The recording format.'."\n", + 'type' => 'object', + 'properties' => [ + 'Format' => [ + 'title' => '格式', + 'description' => 'The format of recording files.'."\n" + ."\n" + .'> If you set this parameter to m3u8, you must also specify the SliceOssObjectPrefix and SliceDuration parameters.'."\n", + 'type' => 'string', + 'deprecated' => false, + 'required' => true, + 'example' => 'm3u8', + 'pattern' => '', + 'default' => '', + 'enum' => [ + 'm3u8', + 'mp4', + 'flv', + ], + ], + 'SliceDuration' => [ + 'title' => '切片时长', + 'description' => 'The duration of a single segment. Unit: seconds'."\n" + ."\n" + .'> This parameter takes effect only if you set Format to m3u8.'."\n" + ."\n" + .'If you do not specify this parameter, the default value 30 seconds is used. Valid values: 5 to 30.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'deprecated' => false, + 'required' => false, + 'example' => '30', + 'pattern' => '', + 'default' => '', + ], + 'OssObjectPrefix' => [ + 'title' => 'Oss对象名', + 'description' => 'The name of the recording that is stored in Object Storage Service (OSS).'."\n" + ."\n" + .'* The name must be less than 256 bytes in length and can contain the {JobId}, {Sequence}, {StartTime}, {EndTime}, {EscapedStartTime}, and {EscapedEndTime} variables.'."\n" + .'* The name must contain the {StartTime} and {EndTime} variables or the {EscapedStartTime} and {EscapedEndTime} variables.'."\n", + 'type' => 'string', + 'deprecated' => false, + 'required' => false, + 'example' => 'record/{JobId}/{Sequence}_{EscapedStartTime}_{EscapedEndTime}', + 'pattern' => '', + 'default' => '', + ], + 'SliceOssObjectPrefix' => [ + 'title' => '切片Oss对象名', + 'description' => 'The name of the TS segment.'."\n" + ."\n" + .'> This parameter is required only if you set Format to m3u8. By default, the duration of a segment is 30 seconds. The segment name must be less than 256 bytes in length and can contain the {JobId}, {UnixTimestamp}, and {Sequence} variables.'."\n" + ."\n" + .'The segment name must contain the {UnixTimestamp} and {Sequence} variables.'."\n", + 'type' => 'string', + 'deprecated' => false, + 'required' => false, + 'example' => 'record/{JobId}/{UnixTimestamp}_{Sequence}'."\n", + 'pattern' => '', + 'default' => '', + ], + 'CycleDuration' => [ + 'description' => 'The duration of the recording cycle. Unit: seconds If you do not specify this parameter, the default value 6 hours is used.'."\n" + ."\n" + .'> '."\n" + ."\n" + .'* If a live stream is interrupted during a recording cycle but is resumed within 3 minutes, the stream is recorded in the same recording before and after the interruption.'."\n" + ."\n" + .'* If a live stream is interrupted for more than 3 minutes, a new recording is generated. To change the default stream interruption time, submit a ticket.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'deprecated' => false, + 'required' => false, + 'example' => '3600', + ], + ], + 'deprecated' => false, + 'required' => false, + ], + 'deprecated' => false, + 'required' => true, + ], + ], + [ + 'name' => 'TemplateId', + 'in' => 'formData', + 'schema' => [ + 'title' => '资源一级ID', + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'deprecated' => false, + 'required' => true, + 'example' => '69e1f9fe-1e97-11ed-ba64-0c42a1b73d66', + 'pattern' => '', + 'default' => '', + ], + ], + [ + 'name' => 'Name', + 'in' => 'formData', + 'schema' => [ + 'title' => '资源名称', + 'description' => 'The template name.'."\n", + 'type' => 'string', + 'deprecated' => false, + 'required' => true, + 'example' => 'test template', + 'pattern' => '', + 'default' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '资源一级ID', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'deprecated' => false, + 'example' => '0F3D5C03-4B6E-5F40-B7F6-B1956776E7D3', + 'pattern' => '', + 'readOnly' => true, + 'default' => '', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"0F3D5C03-4B6E-5F40-B7F6-B1956776E7D3\\"\\n}","type":"json"}]', + 'title' => 'UpdateLiveRecordTemplate', + 'description' => 'Only user-created templates can be updated. The preset template cannot be updated.'."\n", + ], + 'DeleteLiveRecordTemplate' => [ + 'summary' => 'Deletes a live stream recording template without affecting existing jobs.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'TemplateId', + 'in' => 'query', + 'schema' => [ + 'title' => '资源一级ID', + 'description' => 'The ID of the template to be deleted. To obtain the template ID, log on to the [Intelligent Media Services (IMS) console](https://ice.console.aliyun.com/live-processing/template/list/record), choose Real-time Media Processing > Template Management, and then click the Recording tab. Alternatively, find the ID from the response parameters of the [CreateLiveRecordTemplate](~~448213~~) operation.'."\n", + 'type' => 'string', + 'properties' => [], + 'deprecated' => false, + 'required' => true, + 'example' => '69e1f9fe-1e97-11ed-ba64-0c42a1b73d66', + 'pattern' => '', + 'readOnly' => true, + 'default' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '3E5330CF-B4C8-5BEF-AA6B-8E70BD20FAEE', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"3E5330CF-B4C8-5BEF-AA6B-8E70BD20FAEE\\"\\n}","type":"json"}]', + 'title' => 'DeleteLiveRecordTemplate', + ], + 'ListLiveRecordTemplates' => [ + 'summary' => 'Queries a list of live stream recording templates.', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'Keyword', + 'in' => 'query', + 'schema' => [ + 'description' => 'The search keyword. You can use the template ID or name as the keyword to search for templates. If you search for templates by name, fuzzy match is supported.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'test template', + ], + ], + [ + 'name' => 'Type', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of the template.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* system'."\n" + .'* custom'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'system' => '', + 'custom' => '', + ], + 'example' => 'custom', + ], + ], + [ + 'name' => 'TemplateIds', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'type' => 'array', + 'items' => [ + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '69e1f9fe-1e97-11ed-ba64-0c42a1b73d66', + ], + 'required' => false, + 'maxItems' => 100, + 'description' => '', + ], + ], + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number. Minimum value: 1. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page. Valid values: 1 to 100. Default value: 10.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '10', + ], + ], + [ + 'name' => 'SortBy', + 'in' => 'query', + 'schema' => [ + 'description' => 'The sorting order. By default, the query results are sorted by creation time in descending order.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* asc: sorts the query results in ascending order.'."\n" + .'* desc: sorts the query results in descending order.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'asc' => 'asc', + 'desc' => 'desc', + ], + 'example' => 'desc', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RecordTemplateList' => [ + 'title' => '数组,返回示例目录。', + 'description' => 'The list of recording templates.'."\n", + 'type' => 'array', + 'items' => [ + 'title' => 'LiveRecordTemplateItemType', + 'description' => 'The recording template.'."\n", + 'type' => 'object', + 'properties' => [ + 'Name' => [ + 'title' => '资源名称', + 'description' => 'The template name.'."\n", + 'type' => 'string', + 'deprecated' => false, + 'example' => 'test template', + 'pattern' => '', + 'default' => '', + ], + 'Type' => [ + 'title' => '资源名称', + 'description' => 'The type of the template.'."\n", + 'type' => 'string', + 'deprecated' => false, + 'example' => 'custom', + 'pattern' => '', + 'default' => '', + ], + 'LastModified' => [ + 'title' => '最后修改时间', + 'description' => 'The time when the template was last modified.'."\n", + 'type' => 'string', + 'format' => 'iso8601', + 'deprecated' => false, + 'example' => '2022-07-20T03:26:36Z', + 'pattern' => '', + 'default' => '', + ], + 'TemplateId' => [ + 'title' => '资源一级ID', + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'deprecated' => false, + 'example' => '69e1f9fe-1e97-11ed-ba64-0c42a1b73d66', + 'pattern' => '', + 'default' => '', + ], + 'RecordFormatList' => [ + 'title' => '录制格式', + 'description' => 'The list of recording formats.'."\n", + 'type' => 'array', + 'items' => [ + 'title' => '格式', + 'description' => 'The recording format.'."\n", + 'type' => 'object', + 'properties' => [ + 'Format' => [ + 'title' => '格式', + 'description' => 'The output file format.'."\n", + 'type' => 'string', + 'deprecated' => false, + 'example' => 'm3u8', + 'pattern' => '', + 'default' => '', + 'enum' => [ + 'm3u8', + 'mp4', + 'flv', + ], + ], + 'SliceDuration' => [ + 'title' => '切片时长', + 'description' => 'The duration of a single segment. Unit: seconds.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'deprecated' => false, + 'example' => '30', + 'pattern' => '', + 'default' => '', + ], + 'OssObjectPrefix' => [ + 'title' => 'Oss对象名', + 'description' => 'The name of the recording file that is stored in Object Storage Service (OSS).'."\n", + 'type' => 'string', + 'deprecated' => false, + 'example' => 'record/{JobId}/{Sequence}_{EscapedStartTime}_{EscapedEndTime}', + 'pattern' => '', + 'default' => '', + ], + 'SliceOssObjectPrefix' => [ + 'title' => '切片Oss对象名', + 'description' => 'The name of the TS segment.'."\n", + 'type' => 'string', + 'deprecated' => false, + 'example' => 'record/{JobId}/{UnixTimestamp}_{Sequence}', + 'pattern' => '', + 'default' => '', + ], + 'CycleDuration' => [ + 'description' => 'The duration of the recording cycle. Unit: seconds.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'deprecated' => false, + 'example' => '21600', + ], + ], + 'deprecated' => false, + ], + 'deprecated' => false, + ], + 'CreateTime' => [ + 'title' => '创建时间', + 'description' => 'The time when the job was created.'."\n", + 'type' => 'string', + 'format' => 'iso8601', + 'example' => '2022-07-20T02:48:58Z', + ], + ], + ], + ], + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'BEA98A0C-7870-15FE-B96F-8880BB600A2C', + ], + 'TotalCount' => [ + 'title' => '总记录数。', + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '5', + ], + 'PageNo' => [ + 'description' => 'The page number.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'PageSize' => [ + 'description' => 'The number of entries per page.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10', + ], + 'SortBy' => [ + 'description' => 'The sorting order. By default, the query results are sorted by creation time in descending order.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* asc: sorts the query results in ascending order.'."\n" + .'* desc: sorts the query results in descending order.'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'asc' => 'asc', + 'desc' => 'desc', + ], + 'example' => 'desc', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RecordTemplateList\\": [\\n {\\n \\"Name\\": \\"test template\\",\\n \\"Type\\": \\"custom\\",\\n \\"LastModified\\": \\"2022-07-20T03:26:36Z\\",\\n \\"TemplateId\\": \\"69e1f9fe-1e97-11ed-ba64-0c42a1b73d66\\",\\n \\"RecordFormatList\\": [\\n {\\n \\"Format\\": \\"m3u8\\",\\n \\"SliceDuration\\": 30,\\n \\"OssObjectPrefix\\": \\"record/{JobId}/{Sequence}_{EscapedStartTime}_{EscapedEndTime}\\",\\n \\"SliceOssObjectPrefix\\": \\"record/{JobId}/{UnixTimestamp}_{Sequence}\\",\\n \\"CycleDuration\\": 21600\\n }\\n ],\\n \\"CreateTime\\": \\"2022-07-20T02:48:58Z\\"\\n }\\n ],\\n \\"RequestId\\": \\"BEA98A0C-7870-15FE-B96F-8880BB600A2C\\",\\n \\"TotalCount\\": 5,\\n \\"PageNo\\": 1,\\n \\"PageSize\\": 10,\\n \\"SortBy\\": \\"desc\\"\\n}","type":"json"}]', + 'title' => 'ListLiveRecordTemplates', + ], + 'SubmitLiveRecordJob' => [ + 'summary' => 'Submits a live stream recording job.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'NotifyUrl', + 'in' => 'formData', + 'schema' => [ + 'title' => '回调地址', + 'description' => 'The callback URL.'."\n", + 'type' => 'string', + 'deprecated' => false, + 'required' => false, + 'example' => 'https://example.com/imsnotify', + 'pattern' => '', + 'default' => '', + ], + ], + [ + 'name' => 'StreamInput', + 'in' => 'formData', + 'style' => 'json', + 'schema' => [ + 'description' => 'The URL of the live stream.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The type of the live stream URL. The value can only be rtmp.'."\n", + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'rtmp' => 'rtmp', + ], + 'example' => 'rtmp', + ], + 'Url' => [ + 'description' => 'The URL of the live stream.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'rtmp://example.com/live/stream1', + ], + ], + 'deprecated' => false, + 'required' => true, + ], + ], + [ + 'name' => 'RecordOutput', + 'in' => 'formData', + 'style' => 'json', + 'schema' => [ + 'description' => 'The storage address of the recording.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The type of the storage address.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'oss', + ], + 'Bucket' => [ + 'description' => 'The bucket name.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'imsbucket1', + ], + 'Endpoint' => [ + 'description' => 'The endpoint of the storage service.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'oss-cn-hangzhou.aliyuncs.com', + ], + ], + 'deprecated' => false, + 'required' => true, + ], + ], + [ + 'name' => 'TemplateId', + 'in' => 'formData', + 'schema' => [ + 'title' => '录制模板ID', + 'description' => 'The ID of the recording template.'."\n", + 'type' => 'string', + 'deprecated' => false, + 'required' => true, + 'example' => '69e1f9fe-1e97-11ed-ba64-0c42a1b73d66', + 'pattern' => '', + 'default' => '', + ], + ], + [ + 'name' => 'Name', + 'in' => 'formData', + 'schema' => [ + 'title' => '资源名称', + 'description' => 'The name of the recording job.'."\n", + 'type' => 'string', + 'deprecated' => false, + 'required' => true, + 'example' => 'live stream record 1', + 'pattern' => '', + 'default' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'BEA98A0C-7870-15FE-B96F-8880BB600A2C', + ], + 'JobId' => [ + 'title' => '若创建接口为异步实现,则需返回明确的JobId。', + 'description' => 'The ID of the recording job.'."\n", + 'type' => 'string', + 'example' => 'ab0e3e76-1e9d-11ed-ba64-0c42a1b73d66', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"BEA98A0C-7870-15FE-B96F-8880BB600A2C\\",\\n \\"JobId\\": \\"ab0e3e76-1e9d-11ed-ba64-0c42a1b73d66\\"\\n}","type":"json"}]', + 'title' => 'SubmitLiveRecordJob', + 'description' => 'You can call this operation to record live streams of ApsaraVideo Live or third-party Real-Time Messaging Protocol (RTMP) live streams. We recommend that you ingest a stream before you call this operation to submit a recording job. If no stream is pulled from the streaming URL, the job attempts to pull a stream for 3 minutes. If the attempt times out, the recording service stops.'."\n" + ."\n" + .'Before you submit a recording job, you must prepare an Object Storage Service (OSS) or ApsaraVideo VOD bucket. We recommend that you use a storage address configured in Intelligent Media Services (IMS) to facilitate the management and processing of generated recording files.'."\n" + ."\n" + .'If the preset recording template does not meet your requirements, you can create a custom recording template.'."\n", + ], + 'GetLiveRecordJob' => [ + 'summary' => 'Queries the information about a live stream recording job.', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'JobId', + 'in' => 'query', + 'schema' => [ + 'title' => 'A short description of struct', + 'description' => 'The ID of the recording job.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'ab0e3e76-1e9d-11ed-ba64-0c42a1b73d66', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RecordJob' => [ + 'title' => '录制任务', + 'description' => 'The details of the recording job.'."\n", + 'type' => 'object', + 'properties' => [ + 'NotifyUrl' => [ + 'title' => '回调地址', + 'description' => 'The callback URL.'."\n", + 'type' => 'string', + 'deprecated' => false, + 'example' => 'https://example.com/imsnotify', + 'pattern' => '', + 'default' => '', + ], + 'CreateTime' => [ + 'title' => '创建时间', + 'description' => 'The time when the job was created.'."\n", + 'type' => 'string', + 'format' => 'iso8601', + 'example' => '2022-07-20T02:48:58Z', + ], + 'StreamInput' => [ + 'description' => 'The URL of the live stream.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The type of the live stream. The value can only be rtmp.'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'rtmp' => 'rtmp', + ], + 'example' => 'rtmp', + ], + 'Url' => [ + 'description' => 'The URL of the live stream.'."\n", + 'type' => 'string', + 'example' => 'rtmp://example.com/app/stream', + ], + ], + 'deprecated' => false, + ], + 'RecordOutput' => [ + 'description' => 'The storage address of the recording.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The type of the storage address.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* vod'."\n" + .'* oss'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'vod' => 'vod', + 'oss' => 'oss', + ], + 'example' => 'oss', + ], + 'Bucket' => [ + 'description' => 'The bucket name.'."\n", + 'type' => 'string', + 'example' => 'imsbucket1', + ], + 'Endpoint' => [ + 'description' => 'The endpoint of the storage service.'."\n", + 'type' => 'string', + 'example' => 'oss-cn-shanghai.aliyuncs.com', + ], + ], + 'deprecated' => false, + ], + 'TemplateId' => [ + 'title' => '录制模板ID', + 'description' => 'The ID of the recording template.'."\n", + 'type' => 'string', + 'deprecated' => false, + 'example' => '69e1f9fe-1e97-11ed-ba64-0c42a1b73d66', + 'pattern' => '', + 'default' => '', + ], + 'TemplateName' => [ + 'title' => '录制模板ID', + 'description' => 'The name of the recording template.'."\n", + 'type' => 'string', + 'deprecated' => false, + 'example' => 'test template', + 'pattern' => '', + 'default' => '', + ], + 'Name' => [ + 'title' => '资源名称', + 'description' => 'The name of the recording job.'."\n", + 'type' => 'string', + 'deprecated' => false, + 'example' => '', + 'pattern' => '', + 'default' => '', + ], + 'JobId' => [ + 'title' => '资源名称', + 'description' => 'The ID of the recording job.'."\n", + 'type' => 'string', + 'deprecated' => false, + 'example' => 'ab0e3e76-1e9d-11ed-ba64-0c42a1b73d66', + 'pattern' => '', + 'default' => '', + ], + 'Status' => [ + 'title' => '资源名称', + 'description' => 'The state of the recording job.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* paused: The job is paused.'."\n" + .'* initial: The job is not started.'."\n" + .'* started: The job is in progress.'."\n", + 'type' => 'string', + 'deprecated' => false, + 'enumValueTitles' => [ + 'paused' => 'paused', + 'initial' => 'initial', + 'started' => 'started', + ], + 'example' => 'paused', + 'pattern' => '', + 'default' => '', + ], + ], + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'B57A046C-CE33-5FBB-B57A-D2B89ACF6907', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RecordJob\\": {\\n \\"NotifyUrl\\": \\"https://example.com/imsnotify\\",\\n \\"CreateTime\\": \\"2022-07-20T02:48:58Z\\",\\n \\"StreamInput\\": {\\n \\"Type\\": \\"rtmp\\",\\n \\"Url\\": \\"rtmp://example.com/app/stream\\"\\n },\\n \\"RecordOutput\\": {\\n \\"Type\\": \\"oss\\",\\n \\"Bucket\\": \\"imsbucket1\\",\\n \\"Endpoint\\": \\"oss-cn-shanghai.aliyuncs.com\\"\\n },\\n \\"TemplateId\\": \\"69e1f9fe-1e97-11ed-ba64-0c42a1b73d66\\",\\n \\"TemplateName\\": \\"test template\\",\\n \\"Name\\": \\"直播活动录制任务1\\",\\n \\"JobId\\": \\"ab0e3e76-1e9d-11ed-ba64-0c42a1b73d66\\",\\n \\"Status\\": \\"paused\\"\\n },\\n \\"RequestId\\": \\"B57A046C-CE33-5FBB-B57A-D2B89ACF6907\\"\\n}","type":"json"}]', + 'title' => 'GetLiveRecordJob', + ], + 'DeleteLiveRecordFiles' => [ + 'summary' => 'Deletes live stream recording files. You can choose to delete only the recording files or delete both the recording files and the original Object Storage Service (OSS) files.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'RecordIds', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'The collection of IDs of recording files.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The ID of the recording file in the UUID format.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '13cbb83e-043c-4728-ac35-****', + ], + 'required' => true, + 'maxItems' => 100, + ], + ], + [ + 'name' => 'RemoveFile', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to delete the original files in OSS.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'Id of the request'."\n", + 'type' => 'string', + 'example' => '13cbb83e-043c-4728-ac35-*****', + ], + 'DeleteFileInfoList' => [ + 'description' => 'The list of files deleted.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The file deleted.'."\n", + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The code that identifies the result of the deletion.'."\n", + 'type' => 'string', + 'example' => 'OK', + ], + 'Message' => [ + 'description' => 'The result of deletion.'."\n", + 'type' => 'string', + 'example' => 'OK', + ], + 'RecordId' => [ + 'description' => 'The ID of the deleted recording file.'."\n", + 'type' => 'string', + 'example' => '13cbb83e-043c-4728-ac35-*****', + ], + ], + ], + ], + 'Message' => [ + 'description' => 'The description of the state returned.'."\n", + 'type' => 'string', + 'example' => 'OK', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"13cbb83e-043c-4728-ac35-*****\\",\\n \\"DeleteFileInfoList\\": [\\n {\\n \\"Code\\": \\"OK\\",\\n \\"Message\\": \\"OK\\",\\n \\"RecordId\\": \\"13cbb83e-043c-4728-ac35-*****\\"\\n }\\n ],\\n \\"Message\\": \\"OK\\"\\n}","type":"json"}]', + 'title' => 'DeleteLiveRecordFiles', + ], + 'ListLiveRecordJobs' => [ + 'summary' => 'Queries a list of live stream recording jobs by page.', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'Keyword', + 'in' => 'query', + 'schema' => [ + 'description' => 'The search keyword. You can use the job ID or name as the keyword to search for jobs.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'ab0e3e76-1e9d-11ed-ba64-0c42a1b73d66', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The beginning of the time range to query. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.'."\n", + 'type' => 'string', + 'format' => 'iso8601', + 'required' => false, + 'example' => '2022-07-15T08:00:00Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end of the time range to query. The maximum time range between EndTime and StartTime cannot exceed 30 days. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.'."\n", + 'type' => 'string', + 'format' => 'iso8601', + 'required' => false, + 'example' => '2022-07-11T08:00:00Z', + ], + ], + [ + 'name' => 'Status', + 'in' => 'query', + 'schema' => [ + 'description' => 'The state of the job. By default, the state is not filtered.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* paused: The job is paused.'."\n" + .'* initial: The job is not started.'."\n" + .'* started: The job is in progress.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'paused' => 'paused', + 'initial' => 'initial', + 'started' => 'started', + ], + 'example' => 'started', + ], + ], + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page. Default value: 10.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '20', + ], + ], + [ + 'name' => 'SortBy', + 'in' => 'query', + 'schema' => [ + 'description' => 'The sorting order. By default, the query results are sorted by creation time in descending order.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* asc: sorts the query results in ascending order.'."\n" + .'* desc: sorts the query results in descending order.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'asc' => 'asc', + 'desc' => 'desc', + ], + 'example' => 'desc', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'A27DFFA4-F272-5563-8363-CB0BC42740BA', + ], + 'LiveRecordJobs' => [ + 'title' => '数组,返回示例目录。', + 'description' => 'The list of live stream recording jobs.'."\n", + 'type' => 'array', + 'items' => [ + 'title' => 'LiveRecordJobItemType', + 'description' => 'LiveRecordJobItemType'."\n", + 'type' => 'object', + 'properties' => [ + 'RecordOutput' => [ + 'description' => 'The storage address of the recording.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The type of the storage address.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* vod'."\n" + .'* oss'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'vod' => 'vod', + 'oss' => 'oss', + ], + 'example' => 'oss', + ], + 'Bucket' => [ + 'description' => 'The bucket name.'."\n", + 'type' => 'string', + 'example' => 'imsbucket1', + ], + 'Endpoint' => [ + 'description' => 'The endpoint of the storage service.'."\n", + 'type' => 'string', + 'example' => 'oss-cn-hangzhou.aliyuncs.com', + ], + ], + 'deprecated' => false, + ], + 'Name' => [ + 'title' => '资源名称', + 'description' => 'The name of the recording job.'."\n", + 'type' => 'string', + 'deprecated' => false, + 'example' => '', + 'pattern' => '', + 'default' => '', + ], + 'NotifyUrl' => [ + 'title' => '回调地址', + 'description' => 'The callback URL.'."\n", + 'type' => 'string', + 'deprecated' => false, + 'example' => 'https://example.com/imsnotify', + 'pattern' => '', + 'default' => '', + ], + 'TemplateId' => [ + 'title' => '录制模板ID', + 'description' => 'The ID of the recording template.'."\n", + 'type' => 'string', + 'deprecated' => false, + 'example' => '69e1f9fe-1e97-11ed-ba64-0c42a1b73d66', + 'pattern' => '', + 'default' => '', + ], + 'CreateTime' => [ + 'title' => '创建时间', + 'description' => 'The time when the job was created.'."\n", + 'type' => 'string', + 'format' => 'iso8601', + 'example' => '2022-07-20T03:26:36Z', + ], + 'StreamInput' => [ + 'description' => 'The URL of the live stream.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The type of the live stream URL.'."\n", + 'type' => 'string', + 'example' => 'rtmp', + ], + 'Url' => [ + 'description' => 'The URL of the live stream.'."\n", + 'type' => 'string', + 'example' => 'rtmp://example-live.com/live/stream1', + ], + ], + 'deprecated' => false, + ], + 'JobId' => [ + 'description' => 'The ID of the recording job.'."\n", + 'type' => 'string', + 'example' => 'ab0e3e76-1e9d-11ed-ba64-0c42a1b73d66', + ], + 'Status' => [ + 'description' => 'The state of the recording job.'."\n", + 'type' => 'string', + 'example' => 'paused', + ], + 'TemplateName' => [ + 'description' => 'The name of the recording template.'."\n", + 'type' => 'string', + 'example' => 'test template', + ], + ], + ], + ], + 'TotalCount' => [ + 'title' => '总记录数。', + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '180', + ], + 'PageNo' => [ + 'description' => 'The page number. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'PageSize' => [ + 'description' => 'The number of entries per page. Default value: 10.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '20', + ], + 'SortBy' => [ + 'description' => 'The sorting order. By default, the query results are sorted by creation time in descending order.'."\n", + 'type' => 'string', + 'example' => 'desc', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"A27DFFA4-F272-5563-8363-CB0BC42740BA\\",\\n \\"LiveRecordJobs\\": [\\n {\\n \\"RecordOutput\\": {\\n \\"Type\\": \\"oss\\",\\n \\"Bucket\\": \\"imsbucket1\\",\\n \\"Endpoint\\": \\"oss-cn-hangzhou.aliyuncs.com\\"\\n },\\n \\"Name\\": \\"直播活动录制任务1\\",\\n \\"NotifyUrl\\": \\"https://example.com/imsnotify\\",\\n \\"TemplateId\\": \\"69e1f9fe-1e97-11ed-ba64-0c42a1b73d66\\",\\n \\"CreateTime\\": \\"2022-07-20T03:26:36Z\\",\\n \\"StreamInput\\": {\\n \\"Type\\": \\"rtmp\\",\\n \\"Url\\": \\"rtmp://example-live.com/live/stream1\\"\\n },\\n \\"JobId\\": \\"ab0e3e76-1e9d-11ed-ba64-0c42a1b73d66\\",\\n \\"Status\\": \\"paused\\",\\n \\"TemplateName\\": \\"test template\\"\\n }\\n ],\\n \\"TotalCount\\": 180,\\n \\"PageNo\\": 1,\\n \\"PageSize\\": 20,\\n \\"SortBy\\": \\"desc\\"\\n}","type":"json"}]', + 'title' => 'ListLiveRecordJobs', + ], + 'ListLiveRecordFiles' => [ + 'summary' => 'Queries all recording index files in the specified period of time.', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end of the time range to query. The maximum time range to query is four days. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2017-12-22T08:00:00Z', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The beginning of the time range to query. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2017-12-21T08:00:01Z', + ], + ], + [ + 'name' => 'JobIds', + 'in' => 'query', + 'style' => 'flat', + 'schema' => [ + 'description' => 'The list of job IDs.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The ID of the recording job.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '9E83D5D0-8D72-5E7D-B61A-****', + ], + 'required' => false, + 'maxItems' => 100, + ], + ], + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number of the page to return. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page. Valid values: 5 to 30. Default value: 10.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '10', + ], + ], + [ + 'name' => 'SortBy', + 'in' => 'query', + 'schema' => [ + 'description' => 'The sorting order of the index files by creation time. Valid values:'."\n" + ."\n" + .'asc: The query results are displayed in ascending order. This is the default value.'."\n" + ."\n" + .'desc: The query results are displayed in descending order.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'asc', + ], + ], + [ + 'name' => 'RecordFormat', + 'in' => 'query', + 'schema' => [ + 'description' => 'The format of the recording file. Valid values:'."\n" + ."\n" + .'M3U8, FLV, and MP4'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'm3u8', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'DE24625C-7C0F-4020-8448-****', + ], + 'PageNo' => [ + 'description' => 'The page number.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'SortBy' => [ + 'description' => 'The sorting order of the index files by creation time.'."\n", + 'type' => 'string', + 'example' => 'asc', + ], + 'PageSize' => [ + 'description' => 'The number of entries per page.'."\n", + 'type' => 'string', + 'example' => '10', + ], + 'TotalCount' => [ + 'description' => 'The total number of files that meet the specified conditions.'."\n", + 'type' => 'string', + 'example' => '100', + ], + 'Files' => [ + 'description' => 'The list of index files.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'RecordUrl' => [ + 'description' => 'The URL of the index file.'."\n", + 'type' => 'string', + 'example' => 'http://****/atestObject****.m3u8', + ], + 'StartTime' => [ + 'description' => 'The beginning of the time range to query. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2015-12-01T07:36:00Z', + ], + 'EndTime' => [ + 'description' => 'The end of the time range to query. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2015-12-01T07:36:10Z', + ], + 'Duration' => [ + 'description' => 'The recording length. Unit: seconds.'."\n", + 'type' => 'number', + 'format' => 'float', + 'example' => '100.0', + ], + 'Width' => [ + 'description' => 'The width of the video.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '480', + ], + 'Height' => [ + 'description' => 'The height of the video.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '640', + ], + 'CreateTime' => [ + 'description' => 'The time when the file was created in UTC.'."\n", + 'type' => 'string', + 'example' => '2016-05-27T09:40:56Z', + ], + 'RecordOutput' => [ + 'description' => 'The storage information about the recording file.'."\n", + 'type' => 'string', + 'example' => '{ "Type": "oss", "Endpoint":"oss-cn-shanghai.aliyuncs.com", "Bucket": "test-bucket" }', + ], + 'RecordId' => [ + 'description' => 'The ID of the index file.'."\n", + 'type' => 'string', + 'example' => 'c4d7f0a4-b506-43f9-8de3-07732c3f****', + ], + 'StreamUrl' => [ + 'description' => 'The name of the live stream.'."\n", + 'type' => 'string', + 'example' => 'LiveStream***', + ], + 'JobName' => [ + 'description' => 'The name of the recording job.'."\n", + 'type' => 'string', + 'example' => 'LiveRecordJob***', + ], + 'Format' => [ + 'description' => 'The format of the recording file.'."\n", + 'type' => 'string', + 'example' => 'm3u8', + ], + 'JobId' => [ + 'description' => 'The ID of the recording job.'."\n", + 'type' => 'string', + 'example' => 'c4d7f0a4-b506-43f9-8de3-07732c3f****', + ], + ], + 'description' => '', + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"DE24625C-7C0F-4020-8448-****\\",\\n \\"PageNo\\": 1,\\n \\"SortBy\\": \\"asc\\",\\n \\"PageSize\\": \\"10\\",\\n \\"TotalCount\\": \\"100\\",\\n \\"Files\\": [\\n {\\n \\"RecordUrl\\": \\"http://****/atestObject****.m3u8\\",\\n \\"StartTime\\": \\"2015-12-01T07:36:00Z\\",\\n \\"EndTime\\": \\"2015-12-01T07:36:10Z\\",\\n \\"Duration\\": 100,\\n \\"Width\\": 480,\\n \\"Height\\": 640,\\n \\"CreateTime\\": \\"2016-05-27T09:40:56Z\\",\\n \\"RecordOutput\\": \\"{ \\\\\\"Type\\\\\\": \\\\\\"oss\\\\\\", \\\\\\"Endpoint\\\\\\":\\\\\\"oss-cn-shanghai.aliyuncs.com\\\\\\", \\\\\\"Bucket\\\\\\": \\\\\\"test-bucket\\\\\\" }\\",\\n \\"RecordId\\": \\"c4d7f0a4-b506-43f9-8de3-07732c3f****\\",\\n \\"StreamUrl\\": \\"LiveStream***\\",\\n \\"JobName\\": \\"LiveRecordJob***\\",\\n \\"Format\\": \\"m3u8\\",\\n \\"JobId\\": \\"c4d7f0a4-b506-43f9-8de3-07732c3f****\\"\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'ListLiveRecordFiles', + ], + 'CreateLiveSnapshotTemplate' => [ + 'summary' => 'Create a live stream snapshot template to facilitate the creation of snapshot jobs.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'TemplateName', + 'in' => 'formData', + 'schema' => [ + 'title' => '模板名称。'."\n", + 'description' => 'The name of the template.'."\n" + ."\n" + .'* It cannot exceed 128 characters in length.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '', + ], + ], + [ + 'name' => 'OverwriteFormat', + 'in' => 'formData', + 'schema' => [ + 'title' => '覆盖截图文件格式,不能以“/”开头,目前只支持.jpg后缀,最大长度为255。'."\n" + .'支持占位符:'."\n" + .'{JobId}:截图任务ID'."\n" + .'不允许填写{UnixTimestamp}、{Sequence}、{Date}等占位符'."\n" + .'覆盖截图和序列截图的文件格式至少要设置一个。', + 'description' => 'The naming format of the snapshot captured in overwrite mode.'."\n" + ."\n" + .'* The value cannot start with a forward slash (/). Only the suffix .jpg is supported.'."\n" + .'* It cannot exceed 255 characters in length.'."\n" + .'* The {JobId} placeholder is supported. It specifies the ID of the snapshot job.'."\n" + .'* Placeholders such as {UnixTimestamp}, {Sequence}, and {Date} are not allowed.'."\n" + .'* You must specify at least one of the OverwriteFormat and SequenceFormat parameters.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'snapshot/{JobId}.jpg', + ], + ], + [ + 'name' => 'SequenceFormat', + 'in' => 'formData', + 'schema' => [ + 'title' => '序列截图文件格式,不能以“/”开头,目前只支持.jpg后缀,最大长度为255。'."\n" + .'支持占位符:'."\n" + .'{JobId}:截图任务ID'."\n" + .'{Date}:截图日期'."\n" + .'{UnixTimestamp}:时间戳'."\n" + .'{Sequence}:序列号'."\n" + .'其中{UnixTimestamp}、{Sequence}至少要填写一个。'."\n" + .'覆盖截图和序列截图的文件格式至少要设置一个。', + 'description' => 'The naming format of the snapshot captured in time series mode.'."\n" + ."\n" + .'* The value cannot start with a forward slash (/). Only the suffix .jpg is supported.'."\n" + .'* It cannot exceed 255 characters in length.'."\n" + .'* The {JobId}, {Date}, {UnixTimestamp}, and {Sequence} placeholders are supported. {JobId} specifies the ID of the snapshot job. {Date} specifies the date on which the snapshot is captured. {UnixTimestamp} specifies the timestamp of the snapshot. {Sequence} specifies the sequence number of the snapshot. You must specify at least one of the {UnixTimestamp} and {Sequence} placeholders.'."\n" + .'* You must specify at least one of the OverwriteFormat and SequenceFormat parameters.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'snapshot/{JobId}/{UnixTimestamp}.jpg', + ], + ], + [ + 'name' => 'TimeInterval', + 'in' => 'formData', + 'schema' => [ + 'title' => '截图时间间隔,取值范围是[5, 3600]。', + 'description' => 'The interval between two adjacent snapshots. Unit: seconds.'."\n" + ."\n" + .'* Valid values: \\[5,3600].'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'example' => '5', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => '响应数据。', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID。', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'TemplateId' => [ + 'title' => '模板ID。', + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'example' => '****a046-263c-3560-978a-fb287782****', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'MissingParameter', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => '%s', + ], + ], + 403 => [ + [ + 'errorCode' => 'UserDisable', + 'errorMessage' => 'User is disable.', + ], + [ + 'errorCode' => 'Forbidden', + 'errorMessage' => 'User not authorized to operate on the specified resource.', + ], + [ + 'errorCode' => 'OperationDenied', + 'errorMessage' => 'Your account has not enabled the ICE service.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"TemplateId\\": \\"****a046-263c-3560-978a-fb287782****\\"\\n}","type":"json"}]', + 'title' => 'CreateLiveSnapshotTemplate', + ], + 'GetLiveSnapshotTemplate' => [ + 'summary' => 'Queries the information about a live stream snapshot template.', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'TemplateId', + 'in' => 'query', + 'schema' => [ + 'title' => '模板ID。', + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '****a046-263c-3560-978a-fb287782****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => '响应数据。', + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID。', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'TemplateId' => [ + 'title' => '模板ID。', + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'example' => '****a046-263c-3560-978a-fb287782****', + ], + 'TemplateName' => [ + 'title' => '模板名称。', + 'description' => 'The template name.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'Type' => [ + 'title' => '模板类型。'."\n" + .'custom:自定义'."\n" + .'system:系统预置', + 'description' => 'The type of the template.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* system'."\n" + .'* custom'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'system' => '', + 'custom' => '', + ], + 'example' => 'custom', + ], + 'OverwriteFormat' => [ + 'title' => '覆盖截图文件格式。', + 'description' => 'The naming format of the snapshot captured in overwrite mode.'."\n", + 'type' => 'string', + 'example' => 'snapshot/{JobId}.jpg', + ], + 'SequenceFormat' => [ + 'title' => '序列截图文件格式。', + 'description' => 'The naming format of the snapshot captured in time series mode.'."\n", + 'type' => 'string', + 'example' => 'snapshot/{JobId}/{UnixTimestamp}.jpg', + ], + 'TimeInterval' => [ + 'title' => '截图时间间隔。', + 'description' => 'The interval between two adjacent snapshots.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '5', + ], + 'LastModified' => [ + 'title' => '创建时间。', + 'description' => 'The time when the template was created.'."\n", + 'type' => 'string', + 'example' => '2022-02-02T22:22:22Z', + ], + 'CreateTime' => [ + 'title' => '修改时间。', + 'description' => 'The time when the configuration was modified.'."\n", + 'type' => 'string', + 'example' => '2022-02-02T22:22:22Z', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'MissingParameter', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => '%s', + ], + ], + 403 => [ + [ + 'errorCode' => 'UserDisable', + 'errorMessage' => 'User is disable.', + ], + [ + 'errorCode' => 'Forbidden', + 'errorMessage' => 'User not authorized to operate on the specified resource.', + ], + [ + 'errorCode' => 'OperationDenied', + 'errorMessage' => 'Your account has not enabled the ICE service.', + ], + ], + [ + [ + 'errorCode' => 'TemplateNotFound', + 'errorMessage' => 'No such template.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"TemplateId\\": \\"****a046-263c-3560-978a-fb287782****\\",\\n \\"TemplateName\\": \\"模板1\\",\\n \\"Type\\": \\"custom\\",\\n \\"OverwriteFormat\\": \\"snapshot/{JobId}.jpg\\",\\n \\"SequenceFormat\\": \\"snapshot/{JobId}/{UnixTimestamp}.jpg\\",\\n \\"TimeInterval\\": 5,\\n \\"LastModified\\": \\"2022-02-02T22:22:22Z\\",\\n \\"CreateTime\\": \\"2022-02-02T22:22:22Z\\"\\n}","type":"json"}]', + 'title' => 'GetLiveSnapshotTemplate', + ], + 'UpdateLiveSnapshotTemplate' => [ + 'summary' => 'Updates the information about a live stream snapshot template.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'TemplateId', + 'in' => 'formData', + 'schema' => [ + 'title' => '模板ID。', + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '****a046-263c-3560-978a-fb287782****', + ], + ], + [ + 'name' => 'TemplateName', + 'in' => 'formData', + 'schema' => [ + 'title' => '模板名称。', + 'description' => 'The name of the template.'."\n" + ."\n" + .'* It cannot exceed 128 characters in length.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '', + ], + ], + [ + 'name' => 'OverwriteFormat', + 'in' => 'formData', + 'schema' => [ + 'title' => '覆盖截图文件格式,不能以“/”开头,目前只支持.jpg后缀,最大长度为255。'."\n" + .'支持占位符:'."\n" + .'{JobId}:截图任务ID'."\n" + .'不允许填写{UnixTimestamp}、{Sequence}等占位符'."\n" + .'覆盖截图和序列截图的文件格式至少要设置一个。', + 'description' => 'The naming format of the snapshot captured in overwrite mode.'."\n" + ."\n" + .'* The value cannot start with a forward slash (/). Only the suffix .jpg is supported.'."\n" + .'* The value cannot exceed 255 characters in length.'."\n" + .'* The {JobId} placeholder is supported. It specifies the ID of the snapshot job.'."\n" + .'* Placeholders such as {UnixTimestamp}, {Sequence}, and {Date} are not allowed.'."\n" + .'* You must specify at least one of the OverwriteFormat and SequenceFormat parameters.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'snapshot/{JobId}.jpg', + ], + ], + [ + 'name' => 'SequenceFormat', + 'in' => 'formData', + 'schema' => [ + 'title' => '序列截图文件格式,不能以“/”开头,目前只支持.jpg后缀,最大长度为255。'."\n" + .'支持占位符:'."\n" + .'{JobId}:截图任务ID'."\n" + .'{Date}:截图日期'."\n" + .'{UnixTimestamp}:时间戳'."\n" + .'{Sequence}:序列号'."\n" + .'其中{UnixTimestamp}、{Sequence}至少要填写一个。'."\n" + .'覆盖截图和序列截图的文件格式至少要设置一个。', + 'description' => 'The naming format of the snapshot captured in time series mode.'."\n" + ."\n" + .'* The value cannot start with a forward slash (/). Only the suffix .jpg is supported.'."\n" + .'* The value cannot exceed 255 characters in length.'."\n" + .'* The {JobId}, {Date}, {UnixTimestamp}, and {Sequence} placeholders are supported. {JobId} specifies the ID of the snapshot job. {Date} specifies the date on which the snapshot is captured. {UnixTimestamp} specifies the timestamp of the snapshot. {Sequence} specifies the sequence number of the snapshot. You must specify at least one of the {UnixTimestamp} and {Sequence} placeholders.'."\n" + .'* You must specify at least one of the OverwriteFormat and SequenceFormat parameters.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'snapshot/{JobId}/{UnixTimestamp}.jpg', + ], + ], + [ + 'name' => 'TimeInterval', + 'in' => 'formData', + 'schema' => [ + 'title' => '截图时间间隔,[5, 3600]。', + 'description' => 'The interval between two adjacent snapshots. Unit: seconds.'."\n" + ."\n" + .'* Valid values: \\[5,3600].'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'example' => '5', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => '响应数据。', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID。', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'MissingParameter', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => '%s', + ], + ], + 403 => [ + [ + 'errorCode' => 'UserDisable', + 'errorMessage' => 'User is disable.', + ], + [ + 'errorCode' => 'Forbidden', + 'errorMessage' => 'User not authorized to operate on the specified resource.', + ], + [ + 'errorCode' => 'OperationDenied', + 'errorMessage' => 'Your account has not enabled the ICE service.', + ], + ], + [ + [ + 'errorCode' => 'TemplateNotFound', + 'errorMessage' => 'No such template.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\"\\n}","type":"json"}]', + 'title' => 'UpdateLiveSnapshotTemplate', + ], + 'DeleteLiveSnapshotTemplate' => [ + 'summary' => 'Deletes a live stream snapshot template.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'TemplateId', + 'in' => 'formData', + 'schema' => [ + 'title' => '模板ID。', + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '****a046-263c-3560-978a-fb287782****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => '响应数据。', + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID。', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'MissingParameter', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => '%s', + ], + ], + 403 => [ + [ + 'errorCode' => 'UserDisable', + 'errorMessage' => 'User is disable.', + ], + [ + 'errorCode' => 'Forbidden', + 'errorMessage' => 'User not authorized to operate on the specified resource.', + ], + [ + 'errorCode' => 'OperationDenied', + 'errorMessage' => 'Your account has not enabled the ICE service.', + ], + ], + [ + [ + 'errorCode' => 'TemplateNotFound', + 'errorMessage' => 'No such template.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\"\\n}","type":"json"}]', + 'title' => 'DeleteLiveSnapshotTemplate', + ], + 'ListLiveSnapshotTemplates' => [ + 'summary' => 'Queries a list of live stream snapshot templates by page.', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'SearchKeyWord', + 'in' => 'query', + 'schema' => [ + 'title' => '搜索关键词,模板ID/名称,名称支持模糊搜索。', + 'description' => 'The search keyword. You can use the template ID or name as the keyword to search for templates. If you search for templates by name, fuzzy match is supported.'."\n" + ."\n" + .'* It cannot exceed 128 characters in length.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '****a046-263c-3560-978a-fb287782****', + ], + ], + [ + 'name' => 'TemplateIds', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'title' => '指定模板ID查询,如果指定SearchKeyWord,该条件不生效。', + 'description' => 'The template IDs.'."\n" + ."\n" + .'* If you specify the SearchKeyWord parameter, this condition does not take effect.'."\n" + .'* The maximum length of the array is 200.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'string', + 'required' => false, + 'example' => '****a046-263c-3560-978a-fb287782****', + 'description' => '', + ], + 'required' => false, + 'maxItems' => 100, + ], + ], + [ + 'name' => 'Type', + 'in' => 'query', + 'schema' => [ + 'title' => '模板类型,默认是查询全部。'."\n" + .'custom:自定义'."\n" + .'system:系统预置', + 'description' => 'The type of the template. By default, all types are queried.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* system'."\n" + .'* custom'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'system' => '', + 'custom' => '', + ], + 'example' => 'custom', + ], + ], + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'title' => '页码,[1, n),默认是1。', + 'description' => 'The page number. Valid values: \\[1,n). Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'title' => '页宽,[1, 100],默认是10。', + 'description' => 'The number of entries per page. Valid values: 1 to 100. Default value: 10.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '10', + ], + ], + [ + 'name' => 'SortBy', + 'in' => 'query', + 'schema' => [ + 'title' => '排序,默认按CreateTime排序,默认是desc。'."\n" + .'asc:升序'."\n" + .'desc:倒序', + 'description' => 'The sorting order. By default, the query results are sorted by creation time in descending order.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* asc: sorts the query results by creation time in ascending order.'."\n" + .'* desc: sorts the query results by creation time in descending order.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'asc' => '', + 'desc' => '', + ], + 'example' => 'desc', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => '响应数据。', + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID。', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'TemplateList' => [ + 'title' => '模板列表。', + 'description' => 'The list of the templates.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'TemplateId' => [ + 'title' => '模板ID。', + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'example' => '****a046-263c-3560-978a-fb287782****', + ], + 'TemplateName' => [ + 'title' => '模板名称。', + 'description' => 'The template name.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'Type' => [ + 'title' => '模板类型。'."\n" + .'custom:自定义'."\n" + .'system:系统预置', + 'description' => 'The type of the template.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* system'."\n" + .'* custom'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'system' => '', + 'custom' => '', + ], + 'example' => 'custom', + ], + 'TimeInterval' => [ + 'title' => '截图时间间隔。', + 'description' => 'The interval between two adjacent snapshots. Unit: seconds.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + ], + 'CreateTime' => [ + 'title' => '创建时间。', + 'description' => 'The time when the job was created.'."\n", + 'type' => 'string', + 'example' => '2022-07-20T02:48:58Z', + ], + ], + 'description' => '', + ], + ], + 'PageNo' => [ + 'title' => '页码。', + 'description' => 'The number of the returned page.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'PageSize' => [ + 'title' => '页宽。', + 'description' => 'The number of entries per page.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + ], + 'SortBy' => [ + 'title' => '排序。', + 'description' => 'The sorting order of the results by creation time.'."\n", + 'type' => 'string', + 'example' => 'desc', + ], + 'TotalCount' => [ + 'title' => '总数。', + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '100', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'MissingParameter', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => '%s', + ], + ], + 403 => [ + [ + 'errorCode' => 'UserDisable', + 'errorMessage' => 'User is disable.', + ], + [ + 'errorCode' => 'OperationDenied', + 'errorMessage' => 'Your account has not enabled the ICE service.', + ], + [ + 'errorCode' => 'Forbidden', + 'errorMessage' => 'User not authorized to operate on the specified resource.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"TemplateList\\": [\\n {\\n \\"TemplateId\\": \\"****a046-263c-3560-978a-fb287782****\\",\\n \\"TemplateName\\": \\"模板1\\",\\n \\"Type\\": \\"custom\\",\\n \\"TimeInterval\\": 10,\\n \\"CreateTime\\": \\"2022-07-20T02:48:58Z\\"\\n }\\n ],\\n \\"PageNo\\": 1,\\n \\"PageSize\\": 10,\\n \\"SortBy\\": \\"desc\\",\\n \\"TotalCount\\": 100\\n}","type":"json"}]', + 'title' => 'ListLiveSnapshotTemplates', + ], + 'SubmitLiveSnapshotJob' => [ + 'summary' => 'Submits a live stream snapshot job. If the job is submitted during stream ingest, it automatically starts in asynchronous mode. Otherwise, it does not start.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'JobName', + 'in' => 'formData', + 'schema' => [ + 'title' => '任务名称。', + 'description' => 'The name of the job.'."\n" + ."\n" + .'* It cannot exceed 128 characters in length.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '', + ], + ], + [ + 'name' => 'StreamInput', + 'in' => 'formData', + 'style' => 'json', + 'schema' => [ + 'title' => '流输入信息。', + 'description' => 'The information about the input stream.'."\n", + 'type' => 'object', + 'properties' => [ + 'Url' => [ + 'title' => '流输入地址。', + 'description' => 'The URL of the input stream.'."\n" + ."\n" + .'* It cannot exceed 255 characters in length.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'rtmp://www.aliyun.com/stream', + ], + 'Type' => [ + 'title' => '流输入类型。', + 'description' => 'The type of the input stream. The value can only be rtmp.'."\n", + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'rtmp' => 'rtmp', + ], + 'example' => 'rtmp', + ], + ], + 'required' => true, + ], + ], + [ + 'name' => 'SnapshotOutput', + 'in' => 'formData', + 'style' => 'json', + 'schema' => [ + 'title' => '截图输出信息。', + 'description' => 'The information about the output snapshot.'."\n", + 'type' => 'object', + 'properties' => [ + 'StorageType' => [ + 'title' => '截图存储类型。', + 'description' => 'The storage type of the snapshot. The value can only be oss.'."\n", + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'oss' => 'oss', + ], + 'example' => 'oss', + ], + 'Endpoint' => [ + 'title' => '截图输出终端。', + 'description' => 'The output endpoint of the snapshot.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'oss-cn-shanghai.aliyuncs.com', + ], + 'Bucket' => [ + 'title' => '截图输出终端的Bucket。', + 'description' => 'The bucket of the snapshot output endpoint.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'testbucket', + ], + ], + 'required' => true, + ], + ], + [ + 'name' => 'TemplateId', + 'in' => 'formData', + 'schema' => [ + 'title' => '模板ID。', + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '****a046-263c-3560-978a-fb287782****', + ], + ], + [ + 'name' => 'CallbackUrl', + 'in' => 'formData', + 'schema' => [ + 'title' => '截图回调地址。', + 'description' => 'The snapshot callback URL.'."\n" + ."\n" + .'* It cannot exceed 255 characters in length.'."\n" + .'* Both HTTP and HTTPS URLs are supported.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'http://www.aliyun.com/snapshot/callback', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => '响应数据。', + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID。', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'JobId' => [ + 'title' => '任务ID。', + 'description' => 'The job ID.'."\n", + 'type' => 'string', + 'example' => '****a046-263c-3560-978a-fb287666****', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'MissingParameter', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => '%s', + ], + ], + 403 => [ + [ + 'errorCode' => 'UserDisable', + 'errorMessage' => 'User is disable. ', + ], + [ + 'errorCode' => 'Forbidden', + 'errorMessage' => 'User not authorized to operate on the specified resource.', + ], + [ + 'errorCode' => 'OperationDenied', + 'errorMessage' => 'Your account has not enabled the ICE service.', + ], + ], + [ + [ + 'errorCode' => 'TemplateNotFound', + 'errorMessage' => 'No such template. ', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"JobId\\": \\"****a046-263c-3560-978a-fb287666****\\"\\n}","type":"json"}]', + 'title' => 'SubmitLiveSnapshotJob', + ], + 'SendLiveSnapshotJobCommand' => [ + 'summary' => 'Sends a command to process a live stream snapshot job.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'JobId', + 'in' => 'formData', + 'schema' => [ + 'title' => '截图任务ID。', + 'description' => 'The ID of the snapshot job.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '****a046-263c-3560-978a-fb287782****', + ], + ], + [ + 'name' => 'Command', + 'in' => 'formData', + 'schema' => [ + 'title' => '操作指令:start,stop,restart。', + 'description' => 'The operation command.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* stop'."\n" + .'* restart'."\n" + .'* start'."\n", + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'stop' => '', + 'restart' => '', + 'start' => '', + ], + 'example' => 'start', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => '响应数据。', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID。', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'MissingParameter', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'JobLimitExceeded', + 'errorMessage' => 'Job limit exceeded.', + ], + [ + 'errorCode' => 'StreamNotFound', + 'errorMessage' => 'No such stream.', + ], + ], + 403 => [ + [ + 'errorCode' => 'UserDisable', + 'errorMessage' => 'User is disable.', + ], + [ + 'errorCode' => 'Forbidden', + 'errorMessage' => 'User not authorized to operate on the specified resource.', + ], + [ + 'errorCode' => 'OperationDenied', + 'errorMessage' => 'Your account has not enabled the ICE service.', + ], + ], + [ + [ + 'errorCode' => 'JobNotFound', + 'errorMessage' => 'No such job.', + ], + ], + 409 => [ + [ + 'errorCode' => 'JobAlreadyStarted', + 'errorMessage' => 'Job is already started.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\"\\n}","type":"json"}]', + 'title' => 'SendLiveSnapshotJobCommand', + ], + 'GetLiveSnapshotJob' => [ + 'summary' => 'Queries the information a live stream snapshot job.', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'JobId', + 'in' => 'query', + 'schema' => [ + 'title' => '任务ID。', + 'description' => 'The job ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '****a046-263c-3560-978a-fb287782****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => '响应数据。', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID。', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'JobId' => [ + 'title' => '任务ID。', + 'description' => 'The job ID.'."\n", + 'type' => 'string', + 'example' => '****a046-263c-3560-978a-fb287782****', + ], + 'JobName' => [ + 'title' => '任务名称。', + 'description' => 'The name of the job.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'TemplateId' => [ + 'title' => '模板ID。', + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'example' => '****a046-263c-3560-978a-fb287666****', + ], + 'TemplateName' => [ + 'title' => '模板名称。', + 'description' => 'The name of the template.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'Status' => [ + 'title' => '任务状态。'."\n" + .'init:未启动'."\n" + .'started:执行中'."\n" + .'paused:已停止', + 'description' => 'The state of the job.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* init: The job is not started.'."\n" + .'* paused: The job is paused.'."\n" + .'* started: The job is in progress.'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'init' => '', + 'paused' => '', + 'started' => '', + ], + 'example' => 'started', + ], + 'StreamInput' => [ + 'title' => '输入信息。', + 'description' => 'The input information.'."\n", + 'type' => 'object', + 'properties' => [ + 'Url' => [ + 'title' => '输入地址。', + 'description' => 'The URL of the input stream.'."\n", + 'type' => 'string', + 'example' => 'rtmp://www.aliyun.com/stream', + ], + 'Type' => [ + 'title' => '输入类型,rtmp、hls、flv。', + 'description' => 'The type of the input stream. The value can only be rtmp.'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'rtmp' => 'rtmp', + ], + 'example' => 'rtmp', + ], + ], + ], + 'SnapshotOutput' => [ + 'title' => '输出信息。', + 'description' => 'The output information.'."\n", + 'type' => 'object', + 'properties' => [ + 'StorageType' => [ + 'title' => '存储类型,目前只支持oss。', + 'description' => 'The storage type. The value can only be oss.'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'oss' => 'oss', + ], + 'example' => 'oss', + ], + 'Endpoint' => [ + 'title' => '输出终端,type=oss时返回OSS域名。', + 'description' => 'The output endpoint. If the storage type is set to oss, the Object Storage Service (OSS) domain name is returned.'."\n", + 'type' => 'string', + 'example' => 'oss-cn-shanghai.aliyuncs.com', + ], + 'Bucket' => [ + 'title' => '输出终端的Bucket,type=oss时返回OSS Bucket。', + 'description' => 'The bucket of the output endpoint. If the storage type is set to oss, the OSS bucket is returned.'."\n", + 'type' => 'string', + 'example' => 'testbucket', + ], + ], + ], + 'OverwriteFormat' => [ + 'title' => '覆盖截图格式。', + 'description' => 'The naming format of the snapshot captured in overwrite mode.'."\n", + 'type' => 'string', + 'example' => 'snapshot/{JobId}.jpg', + ], + 'SequenceFormat' => [ + 'title' => '序列截图格式。', + 'description' => 'The naming format of the snapshot captured in time series mode.'."\n", + 'type' => 'string', + 'example' => 'snapshot/{JobId}/{UnixTimestamp}.jpg', + ], + 'TimeInterval' => [ + 'title' => '截图时间间隔。', + 'description' => 'The interval between two adjacent snapshots.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '5', + ], + 'CallbackUrl' => [ + 'title' => '截图回调地址。', + 'description' => 'The snapshot callback URL.'."\n", + 'type' => 'string', + 'example' => 'http://www.aliyun.com/snapshot/callback', + ], + 'LastModified' => [ + 'title' => '最后修改时间。', + 'description' => 'The time when the file was last modified.'."\n", + 'type' => 'string', + 'example' => '2022-02-02T22:22:22Z', + ], + 'CreateTime' => [ + 'title' => '创建时间。', + 'description' => 'The time when the file was created.'."\n", + 'type' => 'string', + 'example' => '2022-02-02T22:22:22Z', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'MissingParameter', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => '%s', + ], + ], + 403 => [ + [ + 'errorCode' => 'UserDisable', + 'errorMessage' => 'User is disable.', + ], + [ + 'errorCode' => 'Forbidden', + 'errorMessage' => 'User not authorized to operate on the specified resource.', + ], + [ + 'errorCode' => 'OperationDenied', + 'errorMessage' => 'Your account has not enabled the ICE service.', + ], + ], + [ + [ + 'errorCode' => 'JobNotFound', + 'errorMessage' => 'No such job.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"JobId\\": \\"****a046-263c-3560-978a-fb287782****\\",\\n \\"JobName\\": \\"截图任务1\\",\\n \\"TemplateId\\": \\"****a046-263c-3560-978a-fb287666****\\",\\n \\"TemplateName\\": \\"模板1\\",\\n \\"Status\\": \\"started\\",\\n \\"StreamInput\\": {\\n \\"Url\\": \\"rtmp://www.aliyun.com/stream\\",\\n \\"Type\\": \\"rtmp\\"\\n },\\n \\"SnapshotOutput\\": {\\n \\"StorageType\\": \\"oss\\",\\n \\"Endpoint\\": \\"oss-cn-shanghai.aliyuncs.com\\",\\n \\"Bucket\\": \\"testbucket\\"\\n },\\n \\"OverwriteFormat\\": \\"snapshot/{JobId}.jpg\\",\\n \\"SequenceFormat\\": \\"snapshot/{JobId}/{UnixTimestamp}.jpg\\",\\n \\"TimeInterval\\": 5,\\n \\"CallbackUrl\\": \\"http://www.aliyun.com/snapshot/callback\\",\\n \\"LastModified\\": \\"2022-02-02T22:22:22Z\\",\\n \\"CreateTime\\": \\"2022-02-02T22:22:22Z\\"\\n}","type":"json"}]', + 'title' => 'GetLiveSnapshotJob', + ], + 'DeleteLiveSnapshotFiles' => [ + 'summary' => 'Deletes live stream snapshot files. You can choose to delete only the snapshot files or delete both the snapshot files and the original Object Storage Service (OSS) files.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceP3TB74', + ], + ], + 'parameters' => [ + [ + 'name' => 'JobId', + 'in' => 'query', + 'schema' => [ + 'title' => '截图任务ID。', + 'description' => 'The ID of the snapshot job.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '****a046-263c-3560-978a-fb287782****', + ], + ], + [ + 'name' => 'CreateTimestampList', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'title' => '创建时间戳列表。', + 'description' => 'The list of timestamps when the jobs were created. The values are UNIX timestamps representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC. A maximum of 200 jobs can be deleted at a time.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1660638613798', + 'description' => '', + ], + 'required' => true, + 'maxItems' => 200, + ], + ], + [ + 'name' => 'DeleteOriginalFile', + 'in' => 'query', + 'schema' => [ + 'title' => '是否删除原始文件,默认是false。', + 'description' => 'Specifies whether to delete the original files at the same time. Default value: false.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => '响应数据。', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID。', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '****2876-6263-4B75-8F2C-CD0F7FCF****', + ], + 'DeleteFileResultList' => [ + 'title' => '删除结果列表。', + 'description' => 'The list of deleted files.'."\n", + 'type' => 'array', + 'items' => [ + 'title' => '', + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'Result' => [ + 'title' => 'OK表示删除成功,其他表示删除失败。', + 'description' => 'The result of deletion. A value of OK indicates that the file is deleted. Other values indicate that the file failed to be deleted.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* OK: The file was deleted.'."\n" + .'* NotFound: The file was not found.'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'OK' => '', + 'NotFound' => '', + ], + 'example' => 'OK', + ], + 'CreateTimestamp' => [ + 'title' => '创建时间戳。', + 'description' => 'The time when the file was created. This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1660638613798', + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'MissingParameter', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'OverlayNotSupported', + 'errorMessage' => 'Not Sopport to remove overlay snapshot, please remove overlay snapshot from OSS console.', + ], + ], + 403 => [ + [ + 'errorCode' => 'UserDisable', + 'errorMessage' => 'User is disable.', + ], + [ + 'errorCode' => 'BucketNotAuthorized', + 'errorMessage' => 'Bucket is not authorised.', + ], + [ + 'errorCode' => 'Forbidden', + 'errorMessage' => 'User not authorized to operate on the specified resource.', + ], + [ + 'errorCode' => 'OperationDenied', + 'errorMessage' => 'Your account has not enabled the ICE service.', + ], + ], + [ + [ + 'errorCode' => 'JobNotFound', + 'errorMessage' => 'No such job.', + ], + [ + 'errorCode' => 'NoValidSnapshot', + 'errorMessage' => 'No snapshots found with given parameters.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"****2876-6263-4B75-8F2C-CD0F7FCF****\\",\\n \\"DeleteFileResultList\\": [\\n {\\n \\"Result\\": \\"OK\\",\\n \\"CreateTimestamp\\": 1660638613798\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'DeleteLiveSnapshotFiles', + ], + 'ListLiveSnapshotJobs' => [ + 'summary' => 'Queries a list of live stream snapshot jobs by page.', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'title' => '查询开始时间。UTC时间,格式:yyyy-MM-ddTHH:mm:ssZ。默认为7天前,StartTime与EndTime间隔不能超过30天。', + 'description' => 'The beginning of the time range to query. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.'."\n" + ."\n" + .'* The default value is seven days ago.'."\n" + .'* The time range specified by the StartTime and EndTime parameters cannot exceed 30 days.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2022-02-02T00:00:00Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'title' => '查询结束时间。UTC时间,格式:yyyy-MM-ddTHH:mm:ssZ。默认为StartTime+7天,StartTime与EndTime间隔不能超过30天。', + 'description' => 'The end of the time range to query. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.'."\n" + ."\n" + .'* By default, EndTime is seven days later than StartTime.'."\n" + .'* The time range specified by the StartTime and EndTime parameters cannot exceed 30 days.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2022-02-02T23:59:59Z', + ], + ], + [ + 'name' => 'SearchKeyWord', + 'in' => 'query', + 'schema' => [ + 'title' => '搜索关键词,任务ID/名称,名称支持模糊搜索。', + 'description' => 'The search keyword. You can use the job ID or name as the keyword to search for jobs. If you search for jobs by name, fuzzy match is supported.'."\n" + ."\n" + .'* It cannot exceed 128 characters in length.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '****a046-263c-3560-978a-fb287782****', + ], + ], + [ + 'name' => 'Status', + 'in' => 'query', + 'schema' => [ + 'title' => '任务状态过滤,默认查询全部。'."\n" + .'init:未启动'."\n" + .'started:执行中'."\n" + .'paused:已停止', + 'description' => 'The job state filter. By default, all jobs are queried.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* init: The job is not started.'."\n" + .'* paused: The job is paused.'."\n" + .'* started: The job is in progress.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'init' => '', + 'paused' => '', + 'started' => '', + ], + ], + ], + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'title' => '页码,[1, n),默认是1。', + 'description' => 'The page number. Valid values: \\[1,n). Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'title' => '页宽,[1, 100],默认是10。', + 'description' => 'The number of entries per page. Valid values: 1 to 100. Default value: 10.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '10', + ], + ], + [ + 'name' => 'SortBy', + 'in' => 'query', + 'schema' => [ + 'title' => '排序,默认按CreateTime排序,默认是desc。'."\n" + .'asc:升序'."\n" + .'desc:倒序', + 'description' => 'The sorting order. By default, the query results are sorted by creation time in descending order.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* asc: sorts the query results by creation time in ascending order.'."\n" + .'* desc: sorts the query results by creation time in descending order.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'asc' => '', + 'desc' => '', + ], + 'example' => 'desc', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => '返回数据。', + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID。', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'JobList' => [ + 'title' => '任务列表。', + 'description' => 'The list of jobs.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'JobId' => [ + 'title' => '任务ID。', + 'description' => 'The job ID.'."\n", + 'type' => 'string', + 'example' => '****a046-263c-3560-978a-fb287782****', + ], + 'JobName' => [ + 'title' => '任务名称。', + 'description' => 'The name of the job.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'TemplateId' => [ + 'title' => '模板ID。', + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'example' => '****a046-263c-3560-978a-fb287666****', + ], + 'TemplateName' => [ + 'title' => '模板名称。', + 'description' => 'The template name.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'Status' => [ + 'title' => '任务状态。'."\n" + .'init:未启动'."\n" + .'started:执行中'."\n" + .'paused:已停止', + 'description' => 'The state of the job.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* init: The job is not started.'."\n" + .'* paused: The job is paused.'."\n" + .'* started: The job is in progress.'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'init' => '', + 'paused' => '', + 'started' => '', + ], + 'example' => 'started', + ], + 'SnapshotOutput' => [ + 'title' => '输出信息。', + 'description' => 'The output information.'."\n", + 'type' => 'object', + 'properties' => [ + 'StorageType' => [ + 'title' => '存储类型,目前只支持oss。', + 'description' => 'The storage type. The value can only be oss.'."\n", + 'type' => 'string', + 'example' => 'oss', + ], + 'Endpoint' => [ + 'title' => '输出终端,type=oss时返回OSS域名。', + 'description' => 'The output endpoint. If the storage type is set to oss, the Object Storage Service (OSS) domain name is returned.'."\n", + 'type' => 'string', + 'example' => 'oss-cn-shanghai.aliyuncs.com', + ], + 'Bucket' => [ + 'title' => '输出终端的Bucket,type=oss时返回OSS Bucket。', + 'description' => 'The bucket of the output endpoint. If the storage type is set to oss, the OSS bucket is returned.'."\n", + 'type' => 'string', + 'example' => 'testbucket', + ], + ], + ], + 'TimeInterval' => [ + 'title' => '截图时间间隔。', + 'description' => 'The interval between two adjacent snapshots. Unit: seconds.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '5', + ], + 'CreateTime' => [ + 'title' => '创建时间。', + 'description' => 'The time when the template was created.'."\n", + 'type' => 'string', + 'example' => '2022-07-20T02:48:58Z', + ], + ], + 'description' => '', + ], + ], + 'PageNo' => [ + 'title' => '页码。', + 'description' => 'The page number.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'PageSize' => [ + 'title' => '页宽。', + 'description' => 'The number of entries per page.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + ], + 'SortBy' => [ + 'title' => '排序。', + 'description' => 'The sorting order of the jobs by creation time.'."\n", + 'type' => 'string', + 'example' => 'desc', + ], + 'TotalCount' => [ + 'title' => '总数。', + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '100', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'MissingParameter', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'MalformedStartTime', + 'errorMessage' => 'Specified parameter StartTime is not valid.', + ], + [ + 'errorCode' => 'MalformedEndTime', + 'errorMessage' => 'Specified parameter EndTime is not valid.', + ], + [ + 'errorCode' => 'EndTimeMismatch', + 'errorMessage' => 'Specified end time does not math the specified start time.', + ], + ], + 403 => [ + [ + 'errorCode' => 'UserDisable', + 'errorMessage' => 'User is disable.', + ], + [ + 'errorCode' => 'Forbidden', + 'errorMessage' => 'User not authorized to operate on the specified resource.', + ], + [ + 'errorCode' => 'OperationDenied', + 'errorMessage' => 'Your account has not enabled the ICE service.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"JobList\\": [\\n {\\n \\"JobId\\": \\"****a046-263c-3560-978a-fb287782****\\",\\n \\"JobName\\": \\"截图任务1\\",\\n \\"TemplateId\\": \\"****a046-263c-3560-978a-fb287666****\\",\\n \\"TemplateName\\": \\"模板1\\",\\n \\"Status\\": \\"started\\",\\n \\"SnapshotOutput\\": {\\n \\"StorageType\\": \\"oss\\",\\n \\"Endpoint\\": \\"oss-cn-shanghai.aliyuncs.com\\",\\n \\"Bucket\\": \\"testbucket\\"\\n },\\n \\"TimeInterval\\": 5,\\n \\"CreateTime\\": \\"2022-07-20T02:48:58Z\\"\\n }\\n ],\\n \\"PageNo\\": 1,\\n \\"PageSize\\": 10,\\n \\"SortBy\\": \\"desc\\",\\n \\"TotalCount\\": 100\\n}","type":"json"}]', + 'title' => 'ListLiveSnapshotJobs', + ], + 'ListLiveSnapshotFiles' => [ + 'summary' => 'Queries a list of live stream snapshot files by page.', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'JobId', + 'in' => 'query', + 'schema' => [ + 'title' => '截图任务ID。', + 'description' => 'The ID of the snapshot job.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '****a046-263c-3560-978a-fb287782****', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'title' => '开始时间。UTC时间,格式:yyyy-MM-ddTHH:mm:ssZ。', + 'description' => 'The beginning of the time range to query. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '2022-02-02T00:00:00Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'title' => '结束时间。UTC时间,格式:yyyy-MM-ddTHH:mm:ssZ(UTC时间)。EndTime和StartTime之间的间隔不能超过1天。', + 'description' => 'The end of the time range to query. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.'."\n" + ."\n" + .'* The maximum time range that can be specified is one day.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '2022-02-02T23:59:59Z', + ], + ], + [ + 'name' => 'Limit', + 'in' => 'query', + 'schema' => [ + 'title' => '每次获取数量,[1, 100],默认为10。', + 'description' => 'The number of results to return each time. Valid values: 1 to 100. Default value: 10.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '10', + ], + ], + [ + 'name' => 'SortBy', + 'in' => 'query', + 'schema' => [ + 'title' => '排序,默认为asc。'."\n" + .'asc:按时间升序'."\n" + .'desc:按时间倒序', + 'description' => 'The sorting order. Default value: asc.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* asc: sorts the query results by creation time in ascending order.'."\n" + .'* desc: sorts the query results by creation time in descending order.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'asc' => '', + 'desc' => '', + ], + 'example' => 'desc', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => '响应数据。', + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID。', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'FileList' => [ + 'title' => '文件列表。', + 'description' => 'The list of files.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'OssEndpoint' => [ + 'title' => 'OSS域名。', + 'description' => 'The Object Storage Service (OSS) domain name.'."\n", + 'type' => 'string', + 'example' => 'oss-cn-shanghai.aliyuncs.com', + ], + 'OssBucket' => [ + 'title' => 'OSS bucket。', + 'description' => 'The OSS bucket.'."\n", + 'type' => 'string', + 'example' => 'testbucket', + ], + 'OssObject' => [ + 'title' => 'OSS存储对象位置。', + 'description' => 'The location in which the OSS object is stored.'."\n", + 'type' => 'string', + 'example' => 'snapshot/****a046-263c-3560-978a-fb287782****/1660638613798.jpg', + ], + 'CreateTime' => [ + 'title' => '创建时间。', + 'description' => 'The time when the template was created.'."\n", + 'type' => 'string', + 'example' => '2022-02-02T22:22:22Z', + ], + 'CreateTimestamp' => [ + 'title' => '创建时间戳,用于删除传参。', + 'description' => 'The creation timestamp that is used as an input parameter for a delete API operation.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1619503516000', + ], + 'IsOverlay' => [ + 'title' => '是否覆盖截图。', + 'description' => 'Specifies whether to overlay snapshots.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + 'NextStartTime' => [ + 'title' => '下一页的开始时间,没有返回则表示结束翻页。', + 'description' => 'The start time of the next page. If no value is returned, the pagination ends.'."\n", + 'type' => 'string', + 'example' => '2022-02-02T22:22:22Z', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'MissingParameter', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'MalformedStartTime', + 'errorMessage' => 'Specified parameter StartTime is not valid.', + ], + [ + 'errorCode' => 'MalformedEndTime', + 'errorMessage' => 'Specified parameter EndTime is not valid.', + ], + [ + 'errorCode' => 'EndTimeMismatch', + 'errorMessage' => 'Specified end time does not math the specified start time.', + ], + ], + 403 => [ + [ + 'errorCode' => 'UserDisable', + 'errorMessage' => 'User is disable.', + ], + [ + 'errorCode' => 'Forbidden', + 'errorMessage' => 'User not authorized to operate on the specified resource.', + ], + [ + 'errorCode' => 'OperationDenied', + 'errorMessage' => 'Your account has not enabled the ICE service.', + ], + ], + [ + [ + 'errorCode' => 'JobNotFound', + 'errorMessage' => 'No such job.', + ], + [ + 'errorCode' => 'NoValidSnapshot', + 'errorMessage' => 'No snapshots found with given parameters.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"FileList\\": [\\n {\\n \\"OssEndpoint\\": \\"oss-cn-shanghai.aliyuncs.com\\",\\n \\"OssBucket\\": \\"testbucket\\",\\n \\"OssObject\\": \\"snapshot/****a046-263c-3560-978a-fb287782****/1660638613798.jpg\\",\\n \\"CreateTime\\": \\"2022-02-02T22:22:22Z\\",\\n \\"CreateTimestamp\\": 1619503516000,\\n \\"IsOverlay\\": true\\n }\\n ],\\n \\"NextStartTime\\": \\"2022-02-02T22:22:22Z\\"\\n}","type":"json"}]', + 'title' => 'ListLiveSnapshotFiles', + ], + 'CreateEditingProject' => [ + 'summary' => 'Creates an online editing project. You can specify configurations such as the title, description, timeline, and thumbnail for the project.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'Title', + 'in' => 'query', + 'schema' => [ + 'title' => '云剪辑工程标题', + 'description' => 'The title of the online editing project.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'example', + ], + ], + [ + 'name' => 'Description', + 'in' => 'query', + 'schema' => [ + 'title' => '云剪辑工程描述', + 'description' => 'The description of the online editing project.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '描述', + ], + ], + [ + 'name' => 'Timeline', + 'in' => 'formData', + 'schema' => [ + 'title' => '云剪辑工程时间线,Json格式', + 'description' => 'The timeline of the online editing project, in the JSON format.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{"VideoTracks":[{"VideoTrackClips":[{"MediaId":"****4d7cf14dc7b83b0e801c****"},{"MediaId":"****4d7cf14dc7b83b0e801c****"}]}]}', + ], + ], + [ + 'name' => 'CoverURL', + 'in' => 'query', + 'schema' => [ + 'title' => '云剪辑工程封面', + 'description' => 'The thumbnail URL of the online editing project.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'https://example.com/example.png', + ], + ], + [ + 'name' => 'TemplateId', + 'in' => 'query', + 'schema' => [ + 'title' => '模板Id', + 'description' => 'The template ID. This parameter is used to quickly build a timeline with ease. Note: Only one of Timeline and TemplateId can be specified. If TemplateId is specified, ClipsParam must also be specified.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '****96e8864746a0b6f3****', + ], + ], + [ + 'name' => 'ClipsParam', + 'in' => 'query', + 'schema' => [ + 'title' => '模板素材参数', + 'description' => 'The material parameter corresponding to the template, in the JSON format. If TemplateId is specified, ClipsParam must also be specified. For more information<props="china">, see [Create and use a regular template](https://help.aliyun.com/document_detail/328557.html) and [Create and use an advanced template](https://help.aliyun.com/document_detail/291418.html)</props>.', + 'type' => 'string', + 'required' => false, + 'example' => '', + ], + ], + [ + 'name' => 'TemplateType', + 'in' => 'query', + 'schema' => [ + 'title' => '模板类型', + 'description' => 'The template type. This parameter is required if you create a template-based online editing project. Default value: Timeline. Valid values:'."\n" + ."\n" + .'* Timeline: a regular template.'."\n" + .'* VETemplate: an advanced template.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'Timeline' => '', + 'VETemplate' => '', + ], + 'example' => 'Timeline', + ], + ], + [ + 'name' => 'MaterialMaps', + 'in' => 'query', + 'schema' => [ + 'title' => '工程关联素材,多个素材以逗号(,)分隔;每种类型最多支持10个素材ID', + 'description' => 'The material associated with the project. Separate multiple material IDs with commas (,). Each type supports up to 10 material IDs.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{"video":"*****2e057304fcd9b145c5cafc*****", "image":"****8021a8d493da643c8acd98*****,*****cb6307a4edea614d8b3f3c*****", "liveStream": "[{\\"appName\\":\\"testrecord\\",\\"domainName\\":\\"test.alivecdn.com\\",\\"liveUrl\\":\\"rtmp://test.alivecdn.com/testrecord/teststream\\",\\"streamName\\":\\"teststream\\"}]", "editingProject": "*****9b145c5cafc2e057304fcd*****"}', + ], + ], + [ + 'name' => 'BusinessConfig', + 'in' => 'query', + 'schema' => [ + 'title' => '工程业务配置。如果是直播剪辑工程必填OutputMediaConfig.StorageLocation, Path 不填默认合成的直播片段存储在根路径下 OutputMediaTarget 不填默认oss-object,可以填vod-media 表示存储到vod OutputMediaTarget 为vod-media 时,Path不生效。', + 'description' => 'The business configuration of the project. This parameter can be ignored for general editing projects.'."\n" + ."\n" + .'For a live stream editing project, observe the following rules: OutputMediaConfig.StorageLocation is required. OutputMediaConfig.Path is optional. If you do not specify this option, the live streaming clips are stored in the root directory by default.'."\n" + ."\n" + .'Valid values of OutputMediaTarget include vod-media and oss-object. If you do not specify OutputMediaTarget, the default value oss-object is used.'."\n" + ."\n" + .'If you set OutputMediaTarget to vod-media, the setting of OutputMediaConfig.Path does not take effect.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{ "OutputMediaConfig" : { "StorageLocation": "test-bucket.oss-cn-shanghai.aliyuncs.com", "Path": "test-path" }, "OutputMediaTarget": "oss-object", "ReservationTime": "2021-06-21T08:05:00Z" }', + ], + ], + [ + 'name' => 'ProjectType', + 'in' => 'query', + 'schema' => [ + 'title' => '剪辑工程类型,EditingProject: 普通剪辑工程;LiveEditingProject: 直播剪辑工程', + 'description' => 'The type of the editing project. Valid values: EditingProject and LiveEditingProject. A value of EditingProject indicates a regular editing project, and a value of LiveEditingProject indicates a live stream editing project.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'LiveEditingProject', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******3B-0E1A-586A-AC29-742247******', + ], + 'Project' => [ + 'description' => 'The information about the online editing project.'."\n", + 'type' => 'object', + 'properties' => [ + 'ProjectId' => [ + 'title' => '云剪辑工程ID', + 'description' => 'The ID of the online editing project.'."\n", + 'type' => 'string', + 'example' => '****01bf24bf41c78b2754cb3187****', + ], + 'Title' => [ + 'title' => '云剪辑工程标题', + 'description' => 'The title of the online editing project.'."\n", + 'type' => 'string', + 'example' => 'example_title', + ], + 'Description' => [ + 'title' => '云剪辑工程描述', + 'description' => 'The description of the online editing project.'."\n", + 'type' => 'string', + 'example' => 'example_description', + ], + 'Timeline' => [ + 'title' => '云剪辑工程时间线,Json格式', + 'description' => 'The timeline of the online editing project, in the JSON format.<props="china">For more information about objects in a timeline, see [Timeline configurations](https://help.aliyun.com/document_detail/198823.htm?spm=a2c4g.11186623.2.9.90dc653dF67srN#topic-2024662). </props> If you leave this parameter empty, an empty timeline is created and the duration of the online editing project is zero.', + 'type' => 'string', + 'example' => '{"VideoTracks":[{"VideoTrackClips":[{"MediaId":"****4d7cf14dc7b83b0e801c****"},{"MediaId":"****4d7cf14dc7b83b0e801c****"}]}]}', + ], + 'TemplateId' => [ + 'title' => '模板Id', + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'example' => '****96e8864746a0b6f3****', + ], + 'ClipsParam' => [ + 'title' => '模板素材参数', + 'description' => 'The template material parameters.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'CoverURL' => [ + 'title' => '云剪辑工程封面。', + 'description' => 'The thumbnail URL of the online editing project.'."\n", + 'type' => 'string', + 'example' => 'http://example-bucket.oss-cn-shanghai.aliyuncs.com/example.png?Expires=<ExpireTime>&OSSAccessKeyId=<OSSAccessKeyId>&Signature=<Signature>&security-token=<SecurityToken>', + ], + 'Status' => [ + 'title' => '云剪辑工程状态。 所有云剪辑工程状态列表: -1:Draft -2:Editing -3:Producing -4:Produced -5:ProduceFailed -7:Deleted', + 'description' => 'The status of the online editing project.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'\\- 1: Draft'."\n" + ."\n" + .'\\- 2: Editing'."\n" + ."\n" + .'\\- 3: Producing'."\n" + ."\n" + .'\\- 4: Produced'."\n" + ."\n" + .'\\- 5: ProduceFailed'."\n" + ."\n" + .'\\- 7: Deleted'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2', + ], + 'StatusName' => [ + 'title' => '云剪辑状态名称,对应状态列表中状态名称。', + 'description' => 'The status of the online editing project. For more information, see the status list.'."\n", + 'type' => 'string', + 'example' => 'Editing', + ], + 'CreateTime' => [ + 'title' => '云剪辑工程创建时间', + 'description' => 'The time when the online editing project was created.'."\n", + 'type' => 'string', + 'example' => '2021-01-08T16:52:07Z', + ], + 'ModifiedTime' => [ + 'title' => '云剪辑工程编辑时间', + 'description' => 'The time when the online editing project was last edited.'."\n", + 'type' => 'string', + 'example' => '2021-01-08T16:52:07Z', + ], + 'Duration' => [ + 'title' => '云剪辑工程时长', + 'description' => 'The duration of the online editing project.'."\n", + 'type' => 'number', + 'format' => 'float', + 'example' => '3.4200000', + ], + 'CreateSource' => [ + 'title' => '云剪辑工程创建方式 -OpenAPI -AliyunConsole -WebSDK -LiveEditingOpenAPI -LiveEditingConsole', + 'description' => 'The method for creating the online editing project. Valid values:'."\n" + ."\n" + .'\\- OpenAPI'."\n" + ."\n" + .'\\- AliyunConsole'."\n" + ."\n" + .'\\- WebSDK'."\n" + ."\n" + .'\\- LiveEditingOpenAPI'."\n" + ."\n" + .'\\- LiveEditingConsole'."\n", + 'type' => 'string', + 'example' => 'WebSDK', + ], + 'ModifiedSource' => [ + 'title' => '云剪辑工程创建方式 -OpenAPI -AliyunConsole -WebSDK -LiveEditingOpenAPI -LiveEditingConsole', + 'description' => 'The method for editing the online editing project. Valid values:'."\n" + ."\n" + .'\\- OpenAPI'."\n" + ."\n" + .'\\- AliyunConsole'."\n" + ."\n" + .'\\- WebSDK'."\n" + ."\n" + .'\\- LiveEditingOpenAPI'."\n" + ."\n" + .'\\- LiveEditingConsole'."\n", + 'type' => 'string', + 'example' => 'WebSDK', + ], + 'TemplateType' => [ + 'description' => 'The template type of the online editing project. Valid values:'."\n" + ."\n" + .'\\- Timeline'."\n" + ."\n" + .'\\- VETemplate'."\n", + 'type' => 'string', + 'example' => 'Timeline', + ], + 'BusinessConfig' => [ + 'title' => '工程业务配置', + 'description' => 'The business configuration of the project. This parameter can be ignored for general editing projects.'."\n", + 'type' => 'string', + 'example' => '{ "OutputMediaConfig" : { "StorageLocation": "test-bucket.oss-cn-shanghai.aliyuncs.com", "Path": "test-path" }, "OutputMediaTarget": "oss-object", "ReservationTime": "2021-06-21T08:05:00Z" }', + ], + 'ProjectType' => [ + 'title' => '剪辑工程类型,EditingProject: 普通剪辑工程;LiveEditingProject: 直播剪辑工程', + 'description' => 'The type of the editing project. Default value: EditingProject. Valid values:'."\n" + ."\n" + .'\\- EditingProject: a regular editing project.'."\n" + ."\n" + .'\\- LiveEditingProject: a live stream editing project.'."\n", + 'type' => 'string', + 'example' => 'LiveEditingProject', + ], + 'BusinessStatus' => [ + 'title' => '业务状态,业务状态 /** 预约中 **/ RESERVING(0, "Reserving"), /** 预约取消 **/ RESERVATION_CANCELED(1, "ReservationCanceled"), /** 直播中 **/ BROADCASTING(3, "BroadCasting"), /** 加载失败 **/ LOADING_FAILED(4, "LoadingFailed"), /** 直播结束 **/ LIVE_FINISHED(5, "LiveFinished");', + 'description' => 'The business status of the project. This parameter can be ignored for general editing projects. Valid values:'."\n" + ."\n" + .'* Reserving'."\n" + .'* ReservationCanceled'."\n" + .'* BroadCasting'."\n" + .'* LoadingFailed'."\n" + .'* LiveFinished'."\n", + 'type' => 'string', + 'example' => 'Reserving', + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"******3B-0E1A-586A-AC29-742247******\\",\\n \\"Project\\": {\\n \\"ProjectId\\": \\"****01bf24bf41c78b2754cb3187****\\",\\n \\"Title\\": \\"example_title\\",\\n \\"Description\\": \\"example_description\\",\\n \\"Timeline\\": \\"{\\\\\\"VideoTracks\\\\\\":[{\\\\\\"VideoTrackClips\\\\\\":[{\\\\\\"MediaId\\\\\\":\\\\\\"****4d7cf14dc7b83b0e801c****\\\\\\"},{\\\\\\"MediaId\\\\\\":\\\\\\"****4d7cf14dc7b83b0e801c****\\\\\\"}]}]}\\",\\n \\"TemplateId\\": \\"****96e8864746a0b6f3****\\",\\n \\"ClipsParam\\": \\"见模板使用文档\\",\\n \\"CoverURL\\": \\"http://example-bucket.oss-cn-shanghai.aliyuncs.com/example.png?Expires=<ExpireTime>&OSSAccessKeyId=<OSSAccessKeyId>&Signature=<Signature>&security-token=<SecurityToken>\\",\\n \\"Status\\": 2,\\n \\"StatusName\\": \\"Editing\\",\\n \\"CreateTime\\": \\"2021-01-08T16:52:07Z\\",\\n \\"ModifiedTime\\": \\"2021-01-08T16:52:07Z\\",\\n \\"Duration\\": 3.42,\\n \\"CreateSource\\": \\"WebSDK\\",\\n \\"ModifiedSource\\": \\"WebSDK\\",\\n \\"TemplateType\\": \\"Timeline\\",\\n \\"BusinessConfig\\": \\"{ \\\\\\"OutputMediaConfig\\\\\\" : { \\\\\\"StorageLocation\\\\\\": \\\\\\"test-bucket.oss-cn-shanghai.aliyuncs.com\\\\\\", \\\\\\"Path\\\\\\": \\\\\\"test-path\\\\\\" }, \\\\\\"OutputMediaTarget\\\\\\": \\\\\\"oss-object\\\\\\", \\\\\\"ReservationTime\\\\\\": \\\\\\"2021-06-21T08:05:00Z\\\\\\" }\\",\\n \\"ProjectType\\": \\"LiveEditingProject\\",\\n \\"BusinessStatus\\": \\"Reserving\\"\\n }\\n}","errorExample":""},{"type":"xml","example":"<CreateEditingProjectResponse>\\n <RequestId>******3B-0E1A-586A-AC29-742247******</RequestId>\\n <Project>\\n <ProjectId>****01bf24bf41c78b2754cb3187****</ProjectId>\\n <Title>example_title</Title>\\n <Description>example_description</Description>\\n <Timeline>{\\"VideoTracks\\":[{\\"VideoTrackClips\\":[{\\"MediaId\\":\\"****4d7cf14dc7b83b0e801c****\\"},{\\"MediaId\\":\\"****4d7cf14dc7b83b0e801c****\\"}]}]}</Timeline>\\n <CoverURL>http://example-bucket.oss-cn-shanghai.aliyuncs.com/example.png?Expires=<ExpireTime>&OSSAccessKeyId=<OSSAccessKeyId>&Signature=<Signature>&security-token=<SecurityToken></CoverURL>\\n <Status>2</Status>\\n <StatusName>Editing</StatusName>\\n <CreateTime>2021-01-08T16:52:07Z</CreateTime>\\n <ModifiedTime>2021-01-08T16:52:07Z</ModifiedTime>\\n <Duration>3.42</Duration>\\n <CreateSource>WebSDK</CreateSource>\\n <ModifiedSource>WebSDK</ModifiedSource>\\n <TemplateType>Timeline</TemplateType>\\n </Project>\\n</CreateEditingProjectResponse>","errorExample":""}]', + 'title' => 'CreateEditingProject', + ], + 'GetEditingProject' => [ + 'summary' => 'Queries the information about an online editing project.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + [ + 'PrivateKey' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'ProjectId', + 'in' => 'query', + 'schema' => [ + 'title' => '云剪辑工程ID', + 'description' => 'The ID of the online editing project.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '****fb2101bf24b2754cb318787dc****', + ], + ], + [ + 'name' => 'RequestSource', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the request source. Valid values:'."\n" + ."\n" + .'\\- OpenAPI (default): Timeline conversion is not performed.'."\n" + ."\n" + .'\\- WebSDK: If you specify this value, the project timeline is automatically converted into the frontend style, and the materials in the timeline are associated with the project to enable preview by using frontend web SDKs.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'WebSDK', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '****63E8B7C7-4812-46AD-0FA56029AC86****', + ], + 'Project' => [ + 'description' => 'The information about the online editing project.'."\n", + 'type' => 'object', + 'properties' => [ + 'ProjectId' => [ + 'title' => '云剪辑工程ID', + 'description' => 'The ID of the online editing project.'."\n", + 'type' => 'string', + 'example' => '****fb2101bf24b2754cb318787dc****', + ], + 'Title' => [ + 'title' => '云剪辑工程标题', + 'description' => 'The title of the online editing project.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'Timeline' => [ + 'title' => '云剪辑工程时间线', + 'description' => 'The timeline of the online editing project.'."\n", + 'type' => 'string', + 'example' => '{"VideoTracks":[{"VideoTrackClips":[{"MediaId":"****9b4d7cf14dc7b83b0e801cbe****"},{"MediaId":"****9b4d7cf14dc7b83b0e801cbe****"},{"MediaId":"****1656bca4474999c961a6d2a2****"}]}]}', + ], + 'TemplateId' => [ + 'title' => '模板Id', + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'example' => '****96e8864746a0b6f3****', + ], + 'ClipsParam' => [ + 'title' => '模板素材参数', + 'description' => 'The material parameter corresponding to the template, in the JSON format. If TemplateId is specified, ClipsParam must also be specified. For more information<props="china">, see [Create and use a regular template](https://help.aliyun.com/document_detail/328557.html) and [Create and use an advanced template](https://help.aliyun.com/document_detail/291418.html)</props>.', + 'type' => 'string', + 'example' => '', + ], + 'Description' => [ + 'title' => '云剪辑工程描述', + 'description' => 'The description of the online editing project.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'CoverURL' => [ + 'title' => '云剪辑工程封面', + 'description' => 'The thumbnail URL of the online editing project.'."\n", + 'type' => 'string', + 'example' => 'oss://example-bucket/example.jpg', + ], + 'CreateTime' => [ + 'title' => '云剪辑工程创建时间', + 'description' => 'The time when the online editing project was created.'."\n", + 'type' => 'string', + 'example' => '2020-12-20T12:00:00Z', + ], + 'ModifiedTime' => [ + 'title' => '云剪辑工程最新修改时间', + 'description' => 'The time when the online editing project was last modified.'."\n", + 'type' => 'string', + 'example' => '2020-12-20T13:00:00Z', + ], + 'Duration' => [ + 'title' => '云剪辑工程总时长', + 'description' => 'The total duration of the online editing project.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '24.120000', + ], + 'Status' => [ + 'title' => '云剪辑工程状态', + 'description' => 'The status of the online editing project. Valid values:'."\n" + ."\n" + .'\\- Draft'."\n" + ."\n" + .'\\- Editing'."\n" + ."\n" + .'\\- Producing'."\n" + ."\n" + .'\\- Produced'."\n" + ."\n" + .'\\- ProduceFailed'."\n" + ."\n" + .'\\- Deleted'."\n", + 'type' => 'string', + 'example' => 'Editing', + ], + 'CreateSource' => [ + 'title' => '云剪辑工程创建来源', + 'description' => 'The method for creating the online editing project. Valid values:'."\n" + ."\n" + .'\\- OpenAPI'."\n" + ."\n" + .'\\- AliyunConsole'."\n" + ."\n" + .'\\- WebSDK'."\n" + ."\n" + .'\\- LiveEditingOpenAPI'."\n" + ."\n" + .'\\- LiveEditingConsole'."\n", + 'type' => 'string', + 'example' => 'OpenAPI', + ], + 'TemplateType' => [ + 'title' => '云剪辑工程模板类型', + 'description' => 'The template type of the online editing project. Valid values:'."\n" + ."\n" + .'\\- Timeline'."\n" + ."\n" + .'\\- VETemplate'."\n", + 'type' => 'string', + 'example' => 'Timeline', + ], + 'ModifiedSource' => [ + 'title' => '云剪辑工程修改来源', + 'description' => 'The method for editing the online editing project. Valid values:'."\n" + ."\n" + .'\\- OpenAPI'."\n" + ."\n" + .'\\- AliyunConsole'."\n" + ."\n" + .'\\- WebSDK'."\n" + ."\n" + .'\\- LiveEditingOpenAPI'."\n" + ."\n" + .'\\- LiveEditingConsole'."\n", + 'type' => 'string', + 'example' => 'OpenAPI', + ], + 'ProjectType' => [ + 'description' => 'The type of the editing project. Default value: EditingProject. Valid values:'."\n" + ."\n" + .'\\- EditingProject: a regular editing project.'."\n" + ."\n" + .'\\- LiveEditingProject: a live stream editing project.'."\n", + 'type' => 'string', + 'example' => 'EditingProject', + ], + 'BusinessConfig' => [ + 'description' => 'The business configuration of the project. This parameter can be ignored for general editing projects.'."\n", + 'type' => 'string', + 'example' => '{ "OutputMediaConfig" : { "StorageLocation": "test-bucket.oss-cn-shanghai.aliyuncs.com", "Path": "test-path" }, "OutputMediaTarget": "oss-object", "ReservationTime": "2021-06-21T08:05:00Z" }', + ], + 'BusinessStatus' => [ + 'description' => 'The business status of the project. This parameter can be ignored for general editing projects. Valid values:'."\n" + ."\n" + .'Reserving'."\n" + ."\n" + .'ReservationCanceled'."\n" + ."\n" + .'BroadCasting'."\n" + ."\n" + .'LoadingFailed'."\n" + ."\n" + .'LiveFinished'."\n", + 'type' => 'string', + 'example' => 'Reserving', + ], + 'TimelineConvertStatus' => [ + 'description' => 'The project conversion status. Conversion of an API-style timeline into a frontend-style timeline is an asynchronous process and takes effect only if RequestSource:WebSDK is specified.'."\n" + ."\n" + .'\\- Unconverted'."\n" + ."\n" + .'\\- Converting'."\n" + ."\n" + .'\\- Converted'."\n" + ."\n" + .'\\- ConvertFailed'."\n", + 'type' => 'string', + 'example' => 'Converted', + ], + 'TimelineConvertErrorMessage' => [ + 'description' => 'The error message returned if the project conversion failed. The error message displays the detailed information about the failure, and is returned only if the value of TimelineConvertStatus is ConvertFailed.'."\n", + 'type' => 'string', + 'example' => 'The StorageLocation must be in the same division(apiRegion) as ICE service access point.', + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => 'The specified parameter \\ is not valid.', + ], + ], + ], + 'staticInfo' => [], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"****63E8B7C7-4812-46AD-0FA56029AC86****\\",\\n \\"Project\\": {\\n \\"ProjectId\\": \\"****fb2101bf24b2754cb318787dc****\\",\\n \\"Title\\": \\"样本title\\",\\n \\"Timeline\\": \\"{\\\\\\"VideoTracks\\\\\\":[{\\\\\\"VideoTrackClips\\\\\\":[{\\\\\\"MediaId\\\\\\":\\\\\\"****9b4d7cf14dc7b83b0e801cbe****\\\\\\"},{\\\\\\"MediaId\\\\\\":\\\\\\"****9b4d7cf14dc7b83b0e801cbe****\\\\\\"},{\\\\\\"MediaId\\\\\\":\\\\\\"****1656bca4474999c961a6d2a2****\\\\\\"}]}]}\\",\\n \\"TemplateId\\": \\"****96e8864746a0b6f3****\\",\\n \\"ClipsParam\\": \\"见模板使用文档\\",\\n \\"Description\\": \\"示例描述\\",\\n \\"CoverURL\\": \\"http://aaa.bbb/your-cover.jpg\\",\\n \\"CreateTime\\": \\"2020-12-20T12:00:00Z\\",\\n \\"ModifiedTime\\": \\"2020-12-20T13:00:00Z\\",\\n \\"Duration\\": 24.12,\\n \\"Status\\": \\"Editing\\",\\n \\"CreateSource\\": \\"OpenAPI\\",\\n \\"TemplateType\\": \\"Timeline\\",\\n \\"ModifiedSource\\": \\"OpenAPI\\",\\n \\"ProjectType\\": \\"EditingProject\\",\\n \\"BusinessConfig\\": \\"{ \\\\\\"OutputMediaConfig\\\\\\" : { \\\\\\"StorageLocation\\\\\\": \\\\\\"test-bucket.oss-cn-shanghai.aliyuncs.com\\\\\\", \\\\\\"Path\\\\\\": \\\\\\"test-path\\\\\\" }, \\\\\\"OutputMediaTarget\\\\\\": \\\\\\"oss-object\\\\\\", \\\\\\"ReservationTime\\\\\\": \\\\\\"2021-06-21T08:05:00Z\\\\\\" }\\",\\n \\"BusinessStatus\\": \\"Reserving\\",\\n \\"TimelineConvertStatus\\": \\"Converted\\",\\n \\"TimelineConvertErrorMessage\\": \\"The StorageLocation must be in the same division(apiRegion) as ICE service access point.\\"\\n }\\n}","errorExample":""},{"type":"xml","example":"<GetEditingProjectResponse>\\n <RequestId>****63E8B7C7-4812-46AD-0FA56029AC86****</RequestId>\\n <Project>\\n <ProjectId>****fb2101bf24b2754cb318787dc****</ProjectId>\\n <Title>样本title</Title>\\n <Timeline>{\\"VideoTracks\\":[{\\"VideoTrackClips\\":[{\\"MediaId\\":\\"****9b4d7cf14dc7b83b0e801cbe****\\"},{\\"MediaId\\":\\"****9b4d7cf14dc7b83b0e801cbe****\\"},{\\"MediaId\\":\\"****1656bca4474999c961a6d2a2****\\"}]}]}</Timeline>\\n <Description>示例描述</Description>\\n <CoverURL>oss://example-bucket/example.jpg</CoverURL>\\n <CreateTime>2020-12-20T12:00:00Z</CreateTime>\\n <ModifiedTime>2020-12-20T13:00:00Z</ModifiedTime>\\n <Status>2</Status>\\n <CreateSource>OpenAPI</CreateSource>\\n <TemplateType>Timeline</TemplateType>\\n <ModifiedSource>OpenAPI</ModifiedSource>\\n </Project>\\n</GetEditingProjectResponse>","errorExample":""}]', + 'title' => 'GetEditingProject', + ], + 'UpdateEditingProject' => [ + 'summary' => 'Modifies an online editing project. You can call this operation to modify the configurations such as the title, timeline, and thumbnail of an online editing project.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + [ + 'PrivateKey' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'Title', + 'in' => 'query', + 'schema' => [ + 'title' => '云剪辑工程标题', + 'description' => 'The title of the online editing project.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'testtimeline', + ], + ], + [ + 'name' => 'Description', + 'in' => 'query', + 'schema' => [ + 'title' => '云剪辑工程描述', + 'description' => 'The description of the online editing project.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'testtimeline001desciption', + ], + ], + [ + 'name' => 'Timeline', + 'in' => 'formData', + 'schema' => [ + 'title' => '云剪辑工程时间线,Json格式', + 'description' => 'The timeline of the online editing project, in the JSON format.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{"VideoTracks":[{"VideoTrackClips":[{"MediaId":"****cc3308ac500ca54328bc3443****"},{"MediaId":"****da87a9cff64*d88bc6d8326e4****"}]}]}', + ], + ], + [ + 'name' => 'TemplateId', + 'in' => 'query', + 'schema' => [ + 'title' => '模板Id', + 'description' => 'The template ID. This parameter is used to quickly build a timeline with ease. Note: Only one of ProjectId, Timeline, and TemplateId can be specified. If TemplateId is specified, ClipsParam must also be specified.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '****96e8864746a0b6f3****', + ], + ], + [ + 'name' => 'ClipsParam', + 'in' => 'query', + 'schema' => [ + 'title' => '模板对应的素材参数', + 'description' => 'The material parameter corresponding to the template, in the JSON format. If TemplateId is specified, ClipsParam must also be specified.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '', + ], + ], + [ + 'name' => 'CoverURL', + 'in' => 'query', + 'schema' => [ + 'title' => '云剪辑工程封面', + 'description' => 'The thumbnail URL of the online editing project.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'https://****.com/6AB4D0E1E1C7446888****.png', + ], + ], + [ + 'name' => 'ProjectId', + 'in' => 'query', + 'schema' => [ + 'title' => '云剪辑工程ID', + 'description' => 'The ID of the online editing project.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '****4ee4b97e27b525142a6b2****', + ], + ], + [ + 'name' => 'BusinessStatus', + 'in' => 'query', + 'schema' => [ + 'description' => 'The business status of the project. This parameter can be ignored for general editing projects. Valid values:'."\n" + ."\n" + .'* Reserving'."\n" + .'* ReservationCanceled'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'Reserving', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '****25818875-5F78-4AF6-D7393642CA58****', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => 'The specified parameter \\ is not valid.', + ], + ], + 404 => [ + [ + 'errorCode' => 'ProjectNotFound', + 'errorMessage' => 'The specified project not found', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"****25818875-5F78-4AF6-D7393642CA58****\\"\\n}","errorExample":""},{"type":"xml","example":"<UpdateEditingProjectResponse>\\n <RequestId>****25818875-5F78-4AF6-D7393642CA58****</RequestId>\\n</UpdateEditingProjectResponse>","errorExample":""}]', + 'title' => 'UpdateEditingProject', + ], + 'DeleteEditingProjects' => [ + 'summary' => 'Deletes one or more online editing project.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'ProjectIds', + 'in' => 'query', + 'schema' => [ + 'title' => '云剪辑工程ID。支持多个云剪辑工程,以逗号分隔。', + 'description' => 'The ID of the online editing project. You can specify multiple IDs separated with commas (,).'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '****fb2101bf24bf41cb318787dc****,****87dcfb2101bf24bf41cb3187****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '****25818875-5F78-4AF6-D7393642CA58****', + ], + ], + ], + ], + ], + 'staticInfo' => [], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"****25818875-5F78-4AF6-D7393642CA58****\\",\\n \\"IgnoredList\\": \\"****fb2101bf24bf41cb318787dc****\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteEditingProjectsResponse>\\n <RequestId>****25818875-5F78-4AF6-D7393642CA58****</RequestId>\\n <IgnoredList>****fb2101bf24bf41cb318787dc****</IgnoredList>\\n</DeleteEditingProjectsResponse>","errorExample":""}]', + 'title' => 'DeleteEditingProjects', + ], + 'ListEditingProjects' => [ + 'summary' => 'Queries a list of projects that meet the specified conditions. You can filter projects by project creation time.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + [ + 'PrivateKey' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '182100', + 'abilityTreeNodes' => [ + 'FEATUREiceM55707', + ], + ], + 'parameters' => [ + [ + 'name' => 'ProjectType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of the editing project. Valid values:'."\n" + ."\n" + .'* EditingProject: a regular editing project.'."\n" + .'* LiveEditingProject: a live stream editing project.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'EditingProject', + ], + ], + [ + 'name' => 'TemplateType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The template type. This parameter is required if you create a template-based online editing project. Default value: Timeline.'."\n" + ."\n" + .'*'."\n" + .'*'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* Timeline: a regular template.'."\n" + .'* VETemplate: an advanced template.'."\n" + .'* None: general editing.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'Timeline' => '', + 'VETemplate' => '', + 'None' => '', + ], + 'example' => 'None', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The beginning of the time range to query. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2017-12-21T08:00:01Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end of the time range to query. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2022-02-02T23:59:59Z', + ], + ], + [ + 'name' => 'Keyword', + 'in' => 'query', + 'schema' => [ + 'description' => 'The search keyword. You can search by job ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '******6f36bc45d09a9d5cde49******', + ], + ], + [ + 'name' => 'Status', + 'in' => 'query', + 'schema' => [ + 'description' => 'The status of the online editing project. By default, online editing projects in all states are queried.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'Produced', + ], + ], + [ + 'name' => 'CreateSource', + 'in' => 'query', + 'schema' => [ + 'description' => 'The method for creating the online editing project. Valid values:'."\n" + ."\n" + .'\\- OpenAPI'."\n" + ."\n" + .'\\- AliyunConsole'."\n" + ."\n" + .'\\- WebSDK'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'OpenAPI', + ], + ], + [ + 'name' => 'NextToken', + 'in' => 'query', + 'schema' => [ + 'description' => 'The pagination token that is used in the next request to retrieve a new page of results.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '8EqYpQbZ6Eh7+Zz8DxVYoQ==', + ], + ], + [ + 'name' => 'MaxResults', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page. A maximum of 100 entries can be returned on each page.'."\n" + ."\n" + .'Default value: 10.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '10', + ], + ], + [ + 'name' => 'SortBy', + 'in' => 'query', + 'schema' => [ + 'description' => 'The order of sorting of the results. Valid values:'."\n" + ."\n" + .'* CreationTime:Desc (default): sorts the results in reverse chronological order.'."\n" + .'* CreationTime:Asc: sorts the results in chronological order.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'CreationTime:Desc', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '*****ACB-44F2-5F2D-88D7-1283E70*****', + ], + 'NextToken' => [ + 'title' => '表示当前调用返回读取到的位置,空代表数据已经读取完毕', + 'description' => 'A pagination token. It can be used in the next request to retrieve a new page of results. If NextToken is empty, no next page exists.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'Nzv3rcKla9wHUGua9YXHNA==', + ], + 'MaxResults' => [ + 'title' => 'MaxResults本次请求所返回的最大记录条数', + 'description' => 'The maximum number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + ], + 'ProjectList' => [ + 'description' => 'The queried online editing projects.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'ProjectId' => [ + 'description' => 'The ID of the online editing project.'."\n", + 'type' => 'string', + 'example' => '****fddd7748b58bf1d47e95****', + ], + 'Title' => [ + 'description' => 'The title of the online editing project.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'Description' => [ + 'description' => 'The description of the online editing project.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'CoverURL' => [ + 'description' => 'The thumbnail URL of the online editing project.'."\n", + 'type' => 'string', + 'example' => 'https://xxx.com/cover/xxx.jpg', + ], + 'CreateTime' => [ + 'description' => 'The time when the online editing project was created.'."\n", + 'type' => 'string', + 'example' => '2017-01-11T12:00:00Z', + ], + 'ModifiedTime' => [ + 'description' => 'The time when the online editing project was last modified.'."\n", + 'type' => 'string', + 'example' => '2017-01-11T12:00:00Z', + ], + 'Status' => [ + 'description' => 'The status of the online editing project. Valid values:'."\n" + ."\n" + .'\\- Draft'."\n" + ."\n" + .'\\- Editing'."\n" + ."\n" + .'\\- Producing'."\n" + ."\n" + .'\\- Produced'."\n" + ."\n" + .'\\- ProduceFailed'."\n", + 'type' => 'string', + 'example' => 'Produced', + ], + 'ErrorCode' => [ + 'description' => 'The error code returned if the production of the online editing project failed.'."\n", + 'type' => 'string', + 'example' => 'InvalidParameter', + ], + 'ErrorMessage' => [ + 'description' => 'The error message returned if the production of the online editing project failed.'."\n", + 'type' => 'string', + 'example' => 'The specified parameter \\"LiveStreamConfig\\" is not valid. specified parameter example is not valid.', + ], + 'CreateSource' => [ + 'description' => 'The method for editing the online editing project. Valid values:'."\n" + ."\n" + .'\\- OpenAPI'."\n" + ."\n" + .'\\- AliyunConsole'."\n" + ."\n" + .'\\- WebSDK'."\n", + 'type' => 'string', + 'example' => 'OpenAPI', + ], + 'ModifiedSource' => [ + 'description' => 'The method for modifying the online editing project last time.'."\n", + 'type' => 'string', + 'example' => 'OpenAPI', + ], + 'TemplateType' => [ + 'description' => 'The template type. Valid values:'."\n" + ."\n" + .'* Timeline: a regular template.'."\n" + .'* VETemplate: an advanced template.'."\n", + 'type' => 'string', + 'example' => 'Timeline', + ], + 'ProjectType' => [ + 'description' => 'The type of the editing project. Valid values:'."\n" + ."\n" + .'* EditingProject: a regular editing project.'."\n" + .'* LiveEditingProject: a live stream editing project.'."\n", + 'type' => 'string', + 'example' => 'EditingProject', + ], + 'BusinessConfig' => [ + 'description' => 'The business configuration of the project. This parameter can be ignored for general editing projects.'."\n", + 'type' => 'string', + 'example' => '{}', + ], + 'BusinessStatus' => [ + 'description' => 'The business status of the project. This parameter can be ignored for general editing projects.'."\n", + 'type' => 'string', + 'example' => '{}', + ], + ], + 'description' => '', + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"*****ACB-44F2-5F2D-88D7-1283E70*****\\",\\n \\"NextToken\\": \\"Nzv3rcKla9wHUGua9YXHNA==\\",\\n \\"MaxResults\\": 10,\\n \\"ProjectList\\": [\\n {\\n \\"ProjectId\\": \\"****fddd7748b58bf1d47e95****\\",\\n \\"Title\\": \\"工程标题\\",\\n \\"Description\\": \\"工程描述\\",\\n \\"CoverURL\\": \\"https://xxx.com/cover/xxx.jpg\\",\\n \\"CreateTime\\": \\"2017-01-11T12:00:00Z\\",\\n \\"ModifiedTime\\": \\"2017-01-11T12:00:00Z\\",\\n \\"Status\\": \\"Produced\\",\\n \\"ErrorCode\\": \\"InvalidParameter\\",\\n \\"ErrorMessage\\": \\"The specified parameter \\\\\\\\\\\\\\"LiveStreamConfig\\\\\\\\\\\\\\" is not valid. specified parameter example is not valid.\\",\\n \\"CreateSource\\": \\"OpenAPI\\",\\n \\"ModifiedSource\\": \\"OpenAPI\\",\\n \\"TemplateType\\": \\"Timeline\\",\\n \\"ProjectType\\": \\"EditingProject\\",\\n \\"BusinessConfig\\": \\"{}\\",\\n \\"BusinessStatus\\": \\"{}\\"\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'ListEditingProjects', + ], + 'AddEditingProjectMaterials' => [ + 'summary' => 'Adds one or more materials to an online editing project.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + [ + 'PrivateKey' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'ProjectId', + 'in' => 'query', + 'schema' => [ + 'title' => '云剪辑工程ID', + 'description' => 'The ID of the online editing project.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '*****b2101cb318c*****', + ], + ], + [ + 'name' => 'MaterialMaps', + 'in' => 'query', + 'schema' => [ + 'title' => '素材ID', + 'description' => 'The material ID. Separate multiple material IDs with commas (,). Each type supports up to 10 material IDs. The following material types are supported:'."\n" + ."\n" + .'* video'."\n" + .'* audio'."\n" + .'* image'."\n" + .'* liveStream'."\n" + .'* editingProject'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '{"video":"*****2e057304fcd9b145c5cafc*****", "image":"****8021a8d493da643c8acd98*****,*****cb6307a4edea614d8b3f3c*****", "liveStream": "[{\\"appName\\":\\"testrecord\\",\\"domainName\\":\\"test.alivecdn.com\\",\\"liveUrl\\":\\"rtmp://test.alivecdn.com/testrecord/teststream\\",\\"streamName\\":\\"teststream\\"}]", "editingProject": "*****9b145c5cafc2e057304fcd*****"}', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '*****ACB-44F2-5F2D-88D7-1283E70*****', + ], + 'ProjectId' => [ + 'description' => 'The ID of the online editing project.'."\n", + 'type' => 'string', + 'example' => '*****67ae06542b9b93e0d1c387*****', + ], + 'MediaInfos' => [ + 'title' => '符合要求的媒资集合', + 'description' => 'The media assets that meet the specified conditions.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'MediaId' => [ + 'title' => '媒资ID', + 'description' => 'The ID of the media asset.'."\n", + 'type' => 'string', + 'example' => '*****5cb2e35433198daae94a72*****', + ], + 'MediaBasicInfo' => [ + 'title' => 'BasicInfo', + 'description' => 'The basic information of the media assets.'."\n", + 'type' => 'object', + 'properties' => [ + 'MediaId' => [ + 'title' => 'MediaId', + 'description' => 'The ID of the media asset.'."\n", + 'type' => 'string', + 'example' => '*****5cb2e35433198daae94a72*****', + ], + 'InputURL' => [ + 'title' => '待注册的媒资在相应系统中的地址', + 'description' => 'The URL of the media asset in another service.'."\n", + 'type' => 'string', + 'example' => 'http://bucket.oss-cn-shanghai.aliyuncs.com/file.mp4', + ], + 'MediaType' => [ + 'title' => '媒资媒体类型', + 'description' => 'The type of the media asset.'."\n", + 'type' => 'string', + 'example' => 'Video', + ], + 'BusinessType' => [ + 'title' => '媒资业务类型', + 'description' => 'The business type of the media asset.'."\n", + 'type' => 'string', + 'example' => 'general', + ], + 'Source' => [ + 'title' => '来源', + 'description' => 'The source of the media asset.'."\n", + 'type' => 'string', + 'example' => 'oss', + ], + 'Title' => [ + 'title' => '标题', + 'description' => 'The title of the media asset.'."\n", + 'type' => 'string', + 'example' => 'default_title_2020-12-23T03:32:59Z', + ], + 'Description' => [ + 'title' => '内容描述', + 'description' => 'The description of the media asset.'."\n", + 'type' => 'string', + 'example' => 'sample_description', + ], + 'Category' => [ + 'title' => '分类', + 'description' => 'The category of the media asset.'."\n", + 'type' => 'string', + 'example' => 'audio', + ], + 'MediaTags' => [ + 'title' => '标签', + 'description' => 'The tags of the media asset.'."\n", + 'type' => 'string', + 'example' => 'sample_tag', + ], + 'CoverURL' => [ + 'title' => '封面地址', + 'description' => 'The thumbnail URL of the media asset.'."\n", + 'type' => 'string', + 'example' => 'http://example-bucket.oss-cn-shanghai.aliyuncs.com/example.png?Expires=<ExpireTime>&OSSAccessKeyId=<OSSAccessKeyId>&Signature=<Signature>&security-token=<SecurityToken>', + ], + 'UserData' => [ + 'title' => '用户数据', + 'description' => 'The user data.'."\n", + 'type' => 'string', + 'example' => 'userData', + ], + 'Snapshots' => [ + 'title' => '截图', + 'description' => 'The snapshots of the media asset.'."\n", + 'type' => 'string', + 'example' => 'null', + ], + 'Status' => [ + 'title' => '资源状态', + 'description' => 'The status of the media asset. Valid values:'."\n" + ."\n" + .'\\- Init'."\n" + ."\n" + .'\\- Preparing'."\n" + ."\n" + .'\\- PrepareFail'."\n" + ."\n" + .'\\- Normal'."\n", + 'type' => 'string', + 'example' => 'Normal', + ], + 'TranscodeStatus' => [ + 'title' => '转码状态', + 'description' => 'The transcoding status of the media asset.'."\n", + 'type' => 'string', + 'example' => 'Init', + ], + 'CreateTime' => [ + 'title' => '媒资创建时间', + 'description' => 'The time when the media asset was created.'."\n", + 'type' => 'string', + 'example' => '2020-12-23T03:32:59Z', + ], + 'ModifiedTime' => [ + 'title' => '媒资修改时间', + 'description' => 'The time when the media asset was last modified.'."\n", + 'type' => 'string', + 'example' => '2020-12-23T03:32:59Z', + ], + 'DeletedTime' => [ + 'title' => '媒资删除时间', + 'description' => 'The time when the media asset was deleted.'."\n", + 'type' => 'string', + 'example' => '2020-12-23T03:32:59Z', + ], + 'SpriteImages' => [ + 'title' => '雪碧图', + 'description' => 'The sprite of the media asset.'."\n", + 'type' => 'string', + 'example' => 'http://outin-example.oss-cn-shanghai.aliyuncs.com/test.png?Expires=<ExpireTime>&OSSAccessKeyId=<OSSAccessKeyId>&Signature=<Signature>&security-token=<SecurityToken>', + ], + ], + ], + 'FileInfoList' => [ + 'title' => 'FileInfos', + 'description' => 'FileInfos'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'FileBasicInfo' => [ + 'title' => '文件基础信息,包含时长,大小等', + 'description' => 'The basic information of the file, including the duration and size.'."\n", + 'type' => 'object', + 'properties' => [ + 'FileName' => [ + 'title' => '文件名', + 'description' => 'The file name.'."\n", + 'type' => 'string', + 'example' => 'example.mp4', + ], + 'FileStatus' => [ + 'title' => '文件状态', + 'description' => 'The file status.'."\n" + ."\n" + .'\\-Uploading'."\n" + ."\n" + .'\\-Normal'."\n" + ."\n" + .'\\-UploadFail'."\n" + ."\n" + .'\\-Disable'."\n" + ."\n" + .'\\-Deleted'."\n", + 'type' => 'string', + 'example' => 'Normal', + ], + 'FileType' => [ + 'title' => '文件类型', + 'description' => 'The file type.'."\n", + 'type' => 'string', + 'example' => 'source_file', + ], + 'FileSize' => [ + 'title' => '文件大小(字节)', + 'description' => 'The file size. Unit: bytes.'."\n", + 'type' => 'string', + 'example' => '30611502', + ], + 'FileUrl' => [ + 'title' => '文件oss地址', + 'description' => 'The Object Storage Service (OSS) URL of the file.'."\n", + 'type' => 'string', + 'example' => 'http://example-bucket.oss-cn-shanghai.aliyuncs.com/example.mp4?Expires=<ExpireTime>&OSSAccessKeyId=<OSSAccessKeyId>&Signature=<Signature>&security-token=<SecurityToken>', + ], + 'Region' => [ + 'title' => '文件存储区域', + 'description' => 'The region in which the file resides.'."\n", + 'type' => 'string', + 'example' => 'cn-shanghai', + ], + 'FormatName' => [ + 'title' => '封装格式', + 'description' => 'The container format.'."\n", + 'type' => 'string', + 'example' => 'mov,mp4,m4a,3gp,3g2,mj2', + ], + 'Duration' => [ + 'title' => '时长', + 'description' => 'The duration.'."\n", + 'type' => 'string', + 'example' => '216.206667', + ], + 'Bitrate' => [ + 'title' => '码率', + 'description' => 'The bitrate.'."\n", + 'type' => 'string', + 'example' => '1132.68', + ], + 'Width' => [ + 'title' => '宽', + 'description' => 'The width.'."\n", + 'type' => 'string', + 'example' => '960', + ], + 'Height' => [ + 'title' => '高', + 'description' => 'The height.'."\n", + 'type' => 'string', + 'example' => '540', + ], + ], + ], + ], + 'description' => '', + ], + ], + ], + 'description' => '', + ], + ], + 'LiveMaterials' => [ + 'description' => 'The materials associated with the live stream.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'AppName' => [ + 'description' => 'The application name of the live stream.'."\n", + 'type' => 'string', + 'example' => 'testrecord', + ], + 'StreamName' => [ + 'description' => 'The name of the live stream.'."\n", + 'type' => 'string', + 'example' => 'teststream', + ], + 'DomainName' => [ + 'description' => 'The domain name of the live stream.'."\n", + 'type' => 'string', + 'example' => 'test.alivecdn.com', + ], + 'LiveUrl' => [ + 'description' => 'The URL of the live stream.'."\n", + 'type' => 'string', + 'example' => 'rtmp://test.alivecdn.com/testrecord/teststream', + ], + ], + 'description' => '', + ], + ], + 'ProjectMaterials' => [ + 'description' => 'The materials associated with the editing project. A live stream editing project will be associated with a regular editing project after the live streaming ends.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The ID of the regular editing project associated with the live stream editing project.'."\n", + 'type' => 'string', + 'example' => '*****c38767ae06542b9b93e0d1*****', + ], + 'example' => '*****9b145c5cafc2e057304fcd*****', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => 'The specified parameter \\ is not valid.', + ], + ], + 404 => [ + [ + 'errorCode' => 'ProjectNotFound', + 'errorMessage' => 'The specified project not found', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"*****ACB-44F2-5F2D-88D7-1283E70*****\\",\\n \\"ProjectId\\": \\"*****67ae06542b9b93e0d1c387*****\\",\\n \\"MediaInfos\\": [\\n {\\n \\"MediaId\\": \\"*****5cb2e35433198daae94a72*****\\",\\n \\"MediaBasicInfo\\": {\\n \\"MediaId\\": \\"*****5cb2e35433198daae94a72*****\\",\\n \\"InputURL\\": \\"http://bucket.oss-cn-shanghai.aliyuncs.com/file.mp4\\",\\n \\"MediaType\\": \\"Video\\",\\n \\"BusinessType\\": \\"general\\",\\n \\"Source\\": \\"oss\\",\\n \\"Title\\": \\"default_title_2020-12-23T03:32:59Z\\",\\n \\"Description\\": \\"sample_description\\",\\n \\"Category\\": \\"audio\\",\\n \\"MediaTags\\": \\"sample_tag\\",\\n \\"CoverURL\\": \\"http://example-bucket.oss-cn-shanghai.aliyuncs.com/example.png?Expires=<ExpireTime>&OSSAccessKeyId=<OSSAccessKeyId>&Signature=<Signature>&security-token=<SecurityToken>\\",\\n \\"UserData\\": \\"userData\\",\\n \\"Snapshots\\": \\"null\\",\\n \\"Status\\": \\"Normal\\",\\n \\"TranscodeStatus\\": \\"Init\\",\\n \\"CreateTime\\": \\"2020-12-23T03:32:59Z\\",\\n \\"ModifiedTime\\": \\"2020-12-23T03:32:59Z\\",\\n \\"DeletedTime\\": \\"2020-12-23T03:32:59Z\\",\\n \\"SpriteImages\\": \\"http://outin-example.oss-cn-shanghai.aliyuncs.com/test.png?Expires=<ExpireTime>&OSSAccessKeyId=<OSSAccessKeyId>&Signature=<Signature>&security-token=<SecurityToken>\\"\\n },\\n \\"FileInfoList\\": [\\n {\\n \\"FileBasicInfo\\": {\\n \\"FileName\\": \\"example.mp4\\",\\n \\"FileStatus\\": \\"Normal\\",\\n \\"FileType\\": \\"source_file\\",\\n \\"FileSize\\": \\"30611502\\",\\n \\"FileUrl\\": \\"http://example-bucket.oss-cn-shanghai.aliyuncs.com/example.mp4?Expires=<ExpireTime>&OSSAccessKeyId=<OSSAccessKeyId>&Signature=<Signature>&security-token=<SecurityToken>\\",\\n \\"Region\\": \\"cn-shanghai\\",\\n \\"FormatName\\": \\"mov,mp4,m4a,3gp,3g2,mj2\\",\\n \\"Duration\\": \\"216.206667\\",\\n \\"Bitrate\\": \\"1132.68\\",\\n \\"Width\\": \\"960\\",\\n \\"Height\\": \\"540\\"\\n }\\n }\\n ]\\n }\\n ],\\n \\"LiveMaterials\\": [\\n {\\n \\"AppName\\": \\"testrecord\\",\\n \\"StreamName\\": \\"teststream\\",\\n \\"DomainName\\": \\"test.alivecdn.com\\",\\n \\"LiveUrl\\": \\"rtmp://test.alivecdn.com/testrecord/teststream\\"\\n }\\n ],\\n \\"ProjectMaterials\\": [\\n \\"*****c38767ae06542b9b93e0d1*****\\"\\n ]\\n}","errorExample":""},{"type":"xml","example":"<AddEditingProjectMaterialsResponse>\\n <RequestId>*****ACB-44F2-5F2D-88D7-1283E70*****</RequestId>\\n <ProjectId>*****67ae06542b9b93e0d1c387*****</ProjectId>\\n <MediaInfos>\\n <MediaId>*****5cb2e35433198daae94a72*****</MediaId>\\n <MediaBasicInfo>\\n <MediaId>*****5cb2e35433198daae94a72*****</MediaId>\\n <InputURL>http://bucket.oss-cn-shanghai.aliyuncs.com/file.mp4</InputURL>\\n <MediaType>Video</MediaType>\\n <BusinessType>general</BusinessType>\\n <Source>oss</Source>\\n <Title>default_title_2020-12-23T03:32:59Z</Title>\\n <Description>sample_description</Description>\\n <Category>audio</Category>\\n <MediaTags>sample_tag</MediaTags>\\n <CoverURL>http://example-bucket.oss-cn-shanghai.aliyuncs.com/example.png?Expires=<ExpireTime>&OSSAccessKeyId=<OSSAccessKeyId>&Signature=<Signature>&security-token=<SecurityToken></CoverURL>\\n <UserData>userData</UserData>\\n <Snapshots>null</Snapshots>\\n <Status>Normal</Status>\\n <TranscodeStatus>Init</TranscodeStatus>\\n <CreateTime>2020-12-23T03:32:59Z</CreateTime>\\n <ModifiedTime>2020-12-23T03:32:59Z</ModifiedTime>\\n <DeletedTime>2020-12-23T03:32:59Z</DeletedTime>\\n <SpriteImages>http://outin-example.oss-cn-shanghai.aliyuncs.com/test.png?Expires=<ExpireTime>&OSSAccessKeyId=<OSSAccessKeyId>&Signature=<Signature>&security-token=<SecurityToken></SpriteImages>\\n </MediaBasicInfo>\\n <FileInfoList>\\n <FileBasicInfo>\\n <FileName>example.mp4</FileName>\\n <FileStatus>Normal</FileStatus>\\n <FileType>source_file</FileType>\\n <FileSize>30611502</FileSize>\\n <FileUrl>http://example-bucket.oss-cn-shanghai.aliyuncs.com/example.mp4?Expires=<ExpireTime>&OSSAccessKeyId=<OSSAccessKeyId>&Signature=<Signature>&security-token=<SecurityToken></FileUrl>\\n <Region>cn-shanghai</Region>\\n <FormatName>mov,mp4,m4a,3gp,3g2,mj2</FormatName>\\n <Duration>216.206667</Duration>\\n <Bitrate>1132.68</Bitrate>\\n <Width>960</Width>\\n <Height>540</Height>\\n </FileBasicInfo>\\n </FileInfoList>\\n </MediaInfos>\\n <LiveMaterials>\\n <AppName>testrecord</AppName>\\n <StreamName>teststream</StreamName>\\n <DomainName>test.alivecdn.com</DomainName>\\n <LiveUrl>rtmp://test.alivecdn.com/testrecord/teststream</LiveUrl>\\n </LiveMaterials>\\n <ProjectMaterials>*****c38767ae06542b9b93e0d1*****</ProjectMaterials>\\n</AddEditingProjectMaterialsResponse>","errorExample":""}]', + 'title' => 'AddEditingProjectMaterials', + ], + 'GetEditingProjectMaterials' => [ + 'summary' => 'Queries all materials associated with an online editing project.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + [ + 'PrivateKey' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceM55707', + ], + ], + 'parameters' => [ + [ + 'name' => 'ProjectId', + 'in' => 'query', + 'schema' => [ + 'title' => '云剪辑工程ID', + 'description' => 'The ID of the online editing project.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '*****fb2101cb318*****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******89-C21D-4B78-AE24-3788B8******', + ], + 'ProjectId' => [ + 'description' => 'The project ID.'."\n", + 'type' => 'string', + 'example' => '*****67ae06542b9b93e0d1c387*****', + ], + 'MediaInfos' => [ + 'title' => '符合要求的媒资集合', + 'description' => 'The media assets that meet the specified conditions.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'MediaId' => [ + 'title' => '媒资ID', + 'description' => 'The ID of the media asset.'."\n", + 'type' => 'string', + 'example' => '*****64623a94eca8516569c8fe*****', + ], + 'MediaBasicInfo' => [ + 'title' => 'BasicInfo', + 'description' => 'The basic information of the media asset.'."\n", + 'type' => 'object', + 'properties' => [ + 'MediaId' => [ + 'title' => 'MediaId', + 'description' => 'The ID of the media asset.'."\n", + 'type' => 'string', + 'example' => '*****64623a94eca8516569c8f*****', + ], + 'InputURL' => [ + 'title' => '待注册的媒资在相应系统中的地址', + 'description' => 'The URL of the media asset in another service.'."\n", + 'type' => 'string', + 'example' => 'http://bucket.oss-cn-shanghai.aliyuncs.com/file.mp4', + ], + 'MediaType' => [ + 'title' => '媒资媒体类型', + 'description' => 'The type of the media asset.'."\n", + 'type' => 'string', + 'example' => 'video', + ], + 'BusinessType' => [ + 'title' => '媒资业务类型', + 'description' => 'The business type of the media asset.'."\n", + 'type' => 'string', + 'example' => 'general', + ], + 'Source' => [ + 'title' => '来源', + 'description' => 'The source of the media asset.'."\n", + 'type' => 'string', + 'example' => 'oss', + ], + 'Title' => [ + 'title' => '标题', + 'description' => 'The title of the media asset.'."\n", + 'type' => 'string', + 'example' => 'file.mp4', + ], + 'Description' => [ + 'title' => '内容描述', + 'description' => 'The description of the media asset.'."\n", + 'type' => 'string', + 'example' => 'sample_description', + ], + 'Category' => [ + 'title' => '分类', + 'description' => 'The category of the media asset.'."\n", + 'type' => 'string', + 'example' => 'video', + ], + 'MediaTags' => [ + 'title' => '标签', + 'description' => 'The tags of the media asset.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'CoverURL' => [ + 'title' => '封面地址', + 'description' => 'The thumbnail URL of the media asset.'."\n", + 'type' => 'string', + 'example' => 'http://sample-bucket.oss-cn-shanghai.aliyuncs.com/sample-corver.jpg?Expires=1628670610&OSSAccessKeyId=AK&Signature=signature', + ], + 'UserData' => [ + 'title' => '用户数据', + 'description' => 'The user data.'."\n", + 'type' => 'string', + 'example' => 'userData', + ], + 'Snapshots' => [ + 'title' => '截图', + 'description' => 'The snapshots of the media asset.'."\n", + 'type' => 'string', + 'example' => 'null', + ], + 'Status' => [ + 'title' => '资源状态', + 'description' => 'The status of the media asset.'."\n", + 'type' => 'string', + 'example' => 'Normal', + ], + 'TranscodeStatus' => [ + 'title' => '转码状态', + 'description' => 'The transcoding status of the media asset.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* TranscodeSuccess: transcoding completed.'."\n" + .'* TranscodeFailed: transcoding failed.'."\n" + .'* Init: initializing.'."\n" + .'* Transcoding: transcoding in progress.'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'TranscodeSuccess' => '', + 'TranscodeFailed' => '', + 'Init' => '', + 'Transcoding' => '', + ], + 'example' => 'Init', + ], + 'CreateTime' => [ + 'title' => '媒资创建时间', + 'description' => 'The time when the media asset was created.'."\n", + 'type' => 'string', + 'example' => '2020-12-26T04:11:08Z', + ], + 'ModifiedTime' => [ + 'title' => '媒资修改时间', + 'description' => 'The time when the media asset was last modified.'."\n", + 'type' => 'string', + 'example' => '2020-12-26T04:11:08Z', + ], + 'DeletedTime' => [ + 'title' => '媒资删除时间', + 'description' => 'The time when the media asset was deleted.'."\n", + 'type' => 'string', + 'example' => '2020-12-26T04:11:08Z', + ], + 'SpriteImages' => [ + 'title' => '雪碧图', + 'description' => 'The sprite of the media asset'."\n", + 'type' => 'string', + 'example' => 'null', + ], + ], + ], + 'FileInfoList' => [ + 'title' => 'FileInfos', + 'description' => 'The information about the file.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'FileBasicInfo' => [ + 'title' => '文件基础信息,包含时长,大小等', + 'description' => 'The basic information of the file, such as the duration and size.'."\n", + 'type' => 'object', + 'properties' => [ + 'FileName' => [ + 'title' => '文件名', + 'description' => 'The file name.'."\n", + 'type' => 'string', + 'example' => 'example.mp4', + ], + 'FileStatus' => [ + 'title' => '文件状态', + 'description' => 'The file status.'."\n", + 'type' => 'string', + 'example' => 'Normal', + ], + 'FileType' => [ + 'title' => '文件类型', + 'description' => 'The file type.'."\n", + 'type' => 'string', + 'example' => 'source_file', + ], + 'FileSize' => [ + 'title' => '文件大小(字节)', + 'description' => 'The file size. Unit: bytes.'."\n", + 'type' => 'string', + 'example' => '30611502', + ], + 'FileUrl' => [ + 'title' => '文件oss地址', + 'description' => 'The Object Storage Service (OSS) URL of the file.'."\n", + 'type' => 'string', + 'example' => 'http://example-bucket.oss-cn-shanghai.aliyuncs.com/example.mp4?Expires=<ExpireTime>&OSSAccessKeyId=<OSSAccessKeyId>&Signature=<Signature>&security-token=<SecurityToken>', + ], + 'Region' => [ + 'title' => '文件存储区域', + 'description' => 'The region in which the file resides.'."\n", + 'type' => 'string', + 'example' => 'cn-shanghai', + ], + 'FormatName' => [ + 'title' => '封装格式', + 'description' => 'The container format.'."\n", + 'type' => 'string', + 'example' => 'mov,mp4,m4a,3gp,3g2,mj2', + ], + 'Duration' => [ + 'title' => '时长', + 'description' => 'The duration.'."\n", + 'type' => 'string', + 'example' => '216.206667', + ], + 'Bitrate' => [ + 'title' => '码率', + 'description' => 'The bitrate.'."\n", + 'type' => 'string', + 'example' => '1132.68', + ], + 'Width' => [ + 'title' => '宽', + 'description' => 'The width.'."\n", + 'type' => 'string', + 'example' => '960', + ], + 'Height' => [ + 'title' => '高', + 'description' => 'The height.'."\n", + 'type' => 'string', + 'example' => '540', + ], + ], + ], + ], + 'description' => '', + ], + ], + ], + 'description' => '', + ], + ], + 'LiveMaterials' => [ + 'description' => 'The materials associated with the live stream.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'AppName' => [ + 'description' => 'The application name of the live stream.'."\n", + 'type' => 'string', + 'example' => 'testrecord', + ], + 'StreamName' => [ + 'description' => 'The name of the live stream.'."\n", + 'type' => 'string', + 'example' => 'testrecord', + ], + 'DomainName' => [ + 'description' => 'The domain name of the live stream.'."\n", + 'type' => 'string', + 'example' => 'test.alivecdn.com', + ], + 'LiveUrl' => [ + 'description' => 'The URL of the live stream.'."\n", + 'type' => 'string', + 'example' => 'rtmp://test.alivecdn.com/testrecord/teststream', + ], + ], + 'description' => '', + ], + ], + 'ProjectMaterials' => [ + 'description' => 'The materials associated with the editing project. A live stream editing project will be associated with a regular editing project after the live streaming ends.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The ID of the regular editing project associated with the live stream editing project.'."\n", + 'type' => 'string', + 'example' => '*****c38767ae06542b9b93e0d1*****', + ], + 'example' => '*****9b145c5cafc2e057304fcd*****', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => 'The specified parameter \\ is not valid.', + ], + ], + 404 => [ + [ + 'errorCode' => 'ProjectNotFound', + 'errorMessage' => 'The specified project not found', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"******89-C21D-4B78-AE24-3788B8******\\",\\n \\"ProjectId\\": \\"*****67ae06542b9b93e0d1c387*****\\",\\n \\"MediaInfos\\": [\\n {\\n \\"MediaId\\": \\"*****64623a94eca8516569c8fe*****\\",\\n \\"MediaBasicInfo\\": {\\n \\"MediaId\\": \\"*****64623a94eca8516569c8f*****\\",\\n \\"InputURL\\": \\"http://bucket.oss-cn-shanghai.aliyuncs.com/file.mp4\\",\\n \\"MediaType\\": \\"video\\",\\n \\"BusinessType\\": \\"general\\",\\n \\"Source\\": \\"oss\\",\\n \\"Title\\": \\"file.mp4\\",\\n \\"Description\\": \\"sample_description\\",\\n \\"Category\\": \\"video\\",\\n \\"MediaTags\\": \\"标签,tag1\\",\\n \\"CoverURL\\": \\"http://sample-bucket.oss-cn-shanghai.aliyuncs.com/sample-corver.jpg?Expires=1628670610&OSSAccessKeyId=AK&Signature=signature\\",\\n \\"UserData\\": \\"userData\\",\\n \\"Snapshots\\": \\"null\\",\\n \\"Status\\": \\"Normal\\",\\n \\"TranscodeStatus\\": \\"Init\\",\\n \\"CreateTime\\": \\"2020-12-26T04:11:08Z\\",\\n \\"ModifiedTime\\": \\"2020-12-26T04:11:08Z\\",\\n \\"DeletedTime\\": \\"2020-12-26T04:11:08Z\\",\\n \\"SpriteImages\\": \\"null\\"\\n },\\n \\"FileInfoList\\": [\\n {\\n \\"FileBasicInfo\\": {\\n \\"FileName\\": \\"example.mp4\\",\\n \\"FileStatus\\": \\"Normal\\",\\n \\"FileType\\": \\"source_file\\",\\n \\"FileSize\\": \\"30611502\\",\\n \\"FileUrl\\": \\"http://example-bucket.oss-cn-shanghai.aliyuncs.com/example.mp4?Expires=<ExpireTime>&OSSAccessKeyId=<OSSAccessKeyId>&Signature=<Signature>&security-token=<SecurityToken>\\",\\n \\"Region\\": \\"cn-shanghai\\",\\n \\"FormatName\\": \\"mov,mp4,m4a,3gp,3g2,mj2\\",\\n \\"Duration\\": \\"216.206667\\",\\n \\"Bitrate\\": \\"1132.68\\",\\n \\"Width\\": \\"960\\",\\n \\"Height\\": \\"540\\"\\n }\\n }\\n ]\\n }\\n ],\\n \\"LiveMaterials\\": [\\n {\\n \\"AppName\\": \\"testrecord\\",\\n \\"StreamName\\": \\"testrecord\\",\\n \\"DomainName\\": \\"test.alivecdn.com\\",\\n \\"LiveUrl\\": \\"rtmp://test.alivecdn.com/testrecord/teststream\\"\\n }\\n ],\\n \\"ProjectMaterials\\": [\\n \\"*****c38767ae06542b9b93e0d1*****\\"\\n ]\\n}","errorExample":""},{"type":"xml","example":"<GetEditingProjectMaterialsResponse>\\n <RequestId>******89-C21D-4B78-AE24-3788B8******</RequestId>\\n <ProjectId>*****67ae06542b9b93e0d1c387*****</ProjectId>\\n <MediaInfos>\\n <MediaId>*****64623a94eca8516569c8fe*****</MediaId>\\n <MediaBasicInfo>\\n <MediaId>*****64623a94eca8516569c8f*****</MediaId>\\n <InputURL>http://bucket.oss-cn-shanghai.aliyuncs.com/file.mp4</InputURL>\\n <MediaType>video</MediaType>\\n <BusinessType>general</BusinessType>\\n <Source>oss</Source>\\n <Title>file.mp4</Title>\\n <Description>sample_description</Description>\\n <Category>video</Category>\\n <MediaTags>标签,tag1</MediaTags>\\n <CoverURL>http://sample-bucket.oss-cn-shanghai.aliyuncs.com/sample-corver.jpg?Expires=1628670610&OSSAccessKeyId=AK&Signature=signature</CoverURL>\\n <UserData>userData</UserData>\\n <Snapshots>null</Snapshots>\\n <Status>Normal</Status>\\n <TranscodeStatus>Init</TranscodeStatus>\\n <CreateTime>2020-12-26T04:11:08Z</CreateTime>\\n <ModifiedTime>2020-12-26T04:11:08Z</ModifiedTime>\\n <DeletedTime>2020-12-26T04:11:08Z</DeletedTime>\\n <SpriteImages>null</SpriteImages>\\n </MediaBasicInfo>\\n <FileInfoList>\\n <FileBasicInfo>\\n <FileName>example.mp4</FileName>\\n <FileStatus>Normal</FileStatus>\\n <FileType>source_file</FileType>\\n <FileSize>30611502</FileSize>\\n <FileUrl>http://example-bucket.oss-cn-shanghai.aliyuncs.com/example.mp4?Expires=<ExpireTime>&OSSAccessKeyId=<OSSAccessKeyId>&Signature=<Signature>&security-token=<SecurityToken></FileUrl>\\n <Region>cn-shanghai</Region>\\n <FormatName>mov,mp4,m4a,3gp,3g2,mj2</FormatName>\\n <Duration>216.206667</Duration>\\n <Bitrate>1132.68</Bitrate>\\n <Width>960</Width>\\n <Height>540</Height>\\n </FileBasicInfo>\\n </FileInfoList>\\n </MediaInfos>\\n <LiveMaterials>\\n <AppName>testrecord</AppName>\\n <StreamName>testrecord</StreamName>\\n <DomainName>test.alivecdn.com</DomainName>\\n <LiveUrl>rtmp://test.alivecdn.com/testrecord/teststream</LiveUrl>\\n </LiveMaterials>\\n <ProjectMaterials>*****c38767ae06542b9b93e0d1*****</ProjectMaterials>\\n</GetEditingProjectMaterialsResponse>","errorExample":""}]', + 'title' => 'GetEditingProjectMaterials', + ], + 'DeleteEditingProjectMaterials' => [ + 'summary' => 'Deletes one or more materials from an online editing project.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + [ + 'PrivateKey' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'ProjectId', + 'in' => 'query', + 'schema' => [ + 'title' => '云剪辑工程ID', + 'description' => 'The ID of the online editing project.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '*****fb2101cb318*****', + ], + ], + [ + 'name' => 'MaterialIds', + 'in' => 'query', + 'schema' => [ + 'title' => '素材ID', + 'description' => 'The material ID. Separate multiple material IDs with commas (,). You can specify up to 10 IDs.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '*****cbd721b418a89a7dafb1dc*****,*****86f5d534c95997c55c96f*****', + ], + ], + [ + 'name' => 'MaterialType', + 'in' => 'query', + 'schema' => [ + 'title' => '素材类型', + 'description' => 'The material type. Valid values:'."\n" + ."\n" + .'\\- video'."\n" + ."\n" + .'\\- image'."\n" + ."\n" + .'\\- audio'."\n" + ."\n" + .'\\- subtitle'."\n" + ."\n" + .'\\- text'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'video', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******36-3C1E-4417-BDB2-1E034F******', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => 'The specified parameter \\ is not valid.', + ], + ], + 404 => [ + [ + 'errorCode' => 'ProjectNotFound', + 'errorMessage' => 'The specified project not found', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"******36-3C1E-4417-BDB2-1E034F******\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteEditingProjectMaterialsResponse>\\n <RequestId>******36-3C1E-4417-BDB2-1E034F******</RequestId>\\n</DeleteEditingProjectMaterialsResponse>","errorExample":""}]', + 'title' => 'DeleteEditingProjectMaterials', + ], + 'GetLiveEditingIndexFile' => [ + 'summary' => 'Queries the index file of a live stream. The index file is used to preview an editing project in the console.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'AppName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The application name of the live stream.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'testrecord', + ], + ], + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The domain name of the live stream.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'test.alivecdn.com', + ], + ], + [ + 'name' => 'StreamName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the live stream.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'teststream', + ], + ], + [ + 'name' => 'ProjectId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the live stream editing project.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '*****cb6307a4edea614d8b3f3c*****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'headers' => [], + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '4E84BE44-58A7-****-****-FBEBEA16EF94', + ], + 'IndexFile' => [ + 'description' => 'The URL of the index file.'."\n", + 'type' => 'string', + 'example' => '', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"4E84BE44-58A7-****-****-FBEBEA16EF94\\",\\n \\"IndexFile\\": \\"https://bucket.oss-cn-shanghai.aliyuncs.com/test/live1.m3u8?<鉴权>&x-oss-process=hls/sign\\"\\n}","errorExample":""},{"type":"xml","example":"<GetLiveEditingIndexFileResponse>\\n <RequestId>4E84BE44-58A7-****-****-FBEBEA16EF94</RequestId>\\n <IndexFile>https://bucket.oss-cn-shanghai.aliyuncs.com/test/live1.m3u8?<鉴权>&x-oss-process=hls/sign</IndexFile>\\n</GetLiveEditingIndexFileResponse>","errorExample":""}]', + 'title' => 'GetLiveEditingIndexFile', + ], + 'SubmitProjectExportJob' => [ + 'summary' => 'Submits a project export task.', + 'path' => '', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'paid', + 'abilityTreeNodes' => [ + 'FEATUREiceM55707', + ], + ], + 'parameters' => [ + [ + 'name' => 'ProjectId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the online editing project.'."\n" + .'><notice>Either ProjectId or Timeline must be provided.></notice>', + 'type' => 'string', + 'required' => false, + 'example' => '*****67ae06542b9b93e0d1c387*****', + ], + ], + [ + 'name' => 'Timeline', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The timeline of the online editing job. For data structure, see [Timeline](~~198823~~).'."\n" + .'><notice>Either ProjectId or Timeline must be provided.></notice>', + 'type' => 'string', + 'required' => false, + 'example' => '{"VideoTracks":[{"VideoTrackClips":[{"MediaId":"****4d7cf14dc7b83b0e801c****"},{"MediaId":"****4d7cf14dc7b83b0e801c****"}]}]}', + ], + ], + [ + 'name' => 'ExportType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The export type. Valid values:'."\n" + ."\n" + .'* **BaseTimeline**: exports the timeline.'."\n" + .'* **AdobePremierePro**: exports an Adobe Premiere Pro project.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'BaseTimeline', + ], + ], + [ + 'name' => 'OutputMediaConfig', + 'in' => 'query', + 'schema' => [ + 'description' => 'The output path for the exported project and generated intermediate files, in JSON format. The export destination only supports OSS. Path fields:'."\n" + ."\n" + .'* **Bucket**: Required. The OSS bucket name.'."\n" + .'* **Prefix**: Optional. The path prefix. If not specified, it defaults to the root directory.'."\n" + .'* **Width**: Optional. The width of the output. The value must be a positive integer. If not provided, the system automatically calculates the value based on the input project or timeline.'."\n" + .'* **Height**: Optional. The height of the output. The value must be a positive integer. If not provided, the system automatically calculates the value based on the input project or timeline.', + 'type' => 'string', + 'required' => true, + 'example' => '{'."\n" + .' "Bucket": "example-bucket",'."\n" + .' "Prefix": "example_prefix",'."\n" + .' "Width": 1920,'."\n" + .' "Height": 1080'."\n" + .'}', + ], + ], + [ + 'name' => 'UserData', + 'in' => 'query', + 'schema' => [ + 'description' => 'The user-defined data in the JSON format.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{"NotifyAddress":"http://xx.xx.xxx","Key":"Valuexxx"}'."\n", + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'JobId' => [ + 'title' => '合成作业Id', + 'description' => 'The ID of the project export task.'."\n", + 'type' => 'string', + 'example' => '****cdb3e74639973036bc84****', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"JobId\\": \\"****cdb3e74639973036bc84****\\"\\n}","type":"json"}]', + 'title' => 'SubmitProjectExportJob', + ], + 'GetProjectExportJob' => [ + 'summary' => 'Queries the information of a project export task.', + 'path' => '', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceM55707', + ], + ], + 'parameters' => [ + [ + 'name' => 'JobId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the project export task.', + 'type' => 'string', + 'required' => true, + 'example' => '****cdb3e74639973036bc84****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.', + 'type' => 'string', + 'example' => '****2876-6263-4B75-8F2C-CD0F7FCF****', + ], + 'ProjectExportJob' => [ + 'description' => 'The project export task.'."\n", + 'type' => 'object', + 'properties' => [ + 'JobId' => [ + 'description' => 'The ID of the project export task.', + 'type' => 'string', + 'example' => '****cdb3e74639973036bc84****'."\n", + ], + 'ProjectId' => [ + 'description' => 'The ID of the online editing project.', + 'type' => 'string', + 'example' => '****fddd7748b58bf1d47e95****'."\n", + ], + 'ExportType' => [ + 'description' => 'The export type. Valid values:'."\n" + ."\n" + .'* **BaseTimeline**: exports the timeline.'."\n" + .'* **AdobePremierePro**: exports an Adobe Premiere Pro project.'."\n", + 'type' => 'string', + 'example' => 'BaseTimeline', + ], + 'Status' => [ + 'description' => 'The status of the project export task. Valid values:'."\n" + ."\n" + .'- Init: Initializing'."\n" + .'- Processing'."\n" + .'- Success'."\n" + .'- Failed', + 'type' => 'string', + 'example' => 'Success', + ], + 'Code' => [ + 'description' => 'The error code for the failed export task.'."\n" + .'><notice>Use the error code for troubleshooting.></notice>', + 'type' => 'string', + 'example' => 'InvalidParameter', + ], + 'Message' => [ + 'description' => 'The error message for the failed export task.'."\n" + .'><notice>Use the error message for troubleshooting.></notice>', + 'type' => 'string', + 'example' => 'The specified parameter is not valid.', + ], + 'ExportResult' => [ + 'description' => 'The exported data.'."\n", + 'type' => 'object', + 'properties' => [ + 'Timeline' => [ + 'description' => 'The timeline of the online editing job. This field is returned when ExportType is BaseTimeline. For data structure, see [Timeline](~~198823~~).'."\n", + 'type' => 'string', + 'example' => '{"VideoTracks":[{"VideoTrackClips":[{"Type":"Video","MediaId":"****4d7cf14dc7b83b0e801c****","MediaURL":"https://test-bucket.oss-cn-shanghai.aliyuncs.com/test.mp4","TimelineIn":0.0,"TimelineOut":5.0,"In":0.0,"Out":5.0,"Speed":1.0,"Duration":5.0,"VirginDuration":13.334,"Height":1.0,"Width":1.0,"X":0.0,"Y":0.0}]}]}', + ], + 'ProjectUrl' => [ + 'description' => 'The URL of the exported project, which is typically a signed OSS URL. This field is returned when ExportType is AdobePremierePro.'."\n", + 'type' => 'string', + 'example' => 'http://example-bucket.oss-cn-shanghai.aliyuncs.com/example_prefix/exported_project_1e8c39a502c3436c84f88290cd713bf3.zip?Expires=1750331685&....', + ], + ], + ], + 'UserData' => [ + 'description' => 'The user-defined data in the JSON format.', + 'type' => 'string', + 'example' => '{"NotifyAddress":"http://xx.xx.xxx","Key":"Valuexxx"}', + ], + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"****2876-6263-4B75-8F2C-CD0F7FCF****\\",\\n \\"ProjectExportJob\\": {\\n \\"JobId\\": \\"****cdb3e74639973036bc84****\\\\n\\",\\n \\"ProjectId\\": \\"****fddd7748b58bf1d47e95****\\\\n\\",\\n \\"ExportType\\": \\"BaseTimeline\\",\\n \\"Status\\": \\"Success\\",\\n \\"Code\\": \\"InvalidParameter\\",\\n \\"Message\\": \\"The specified parameter is not valid.\\",\\n \\"ExportResult\\": {\\n \\"Timeline\\": \\"{\\\\\\"VideoTracks\\\\\\":[{\\\\\\"VideoTrackClips\\\\\\":[{\\\\\\"Type\\\\\\":\\\\\\"Video\\\\\\",\\\\\\"MediaId\\\\\\":\\\\\\"****4d7cf14dc7b83b0e801c****\\\\\\",\\\\\\"MediaURL\\\\\\":\\\\\\"https://test-bucket.oss-cn-shanghai.aliyuncs.com/test.mp4\\\\\\",\\\\\\"TimelineIn\\\\\\":0.0,\\\\\\"TimelineOut\\\\\\":5.0,\\\\\\"In\\\\\\":0.0,\\\\\\"Out\\\\\\":5.0,\\\\\\"Speed\\\\\\":1.0,\\\\\\"Duration\\\\\\":5.0,\\\\\\"VirginDuration\\\\\\":13.334,\\\\\\"Height\\\\\\":1.0,\\\\\\"Width\\\\\\":1.0,\\\\\\"X\\\\\\":0.0,\\\\\\"Y\\\\\\":0.0}]}]}\\",\\n \\"ProjectUrl\\": \\"http://example-bucket.oss-cn-shanghai.aliyuncs.com/example_prefix/exported_project_1e8c39a502c3436c84f88290cd713bf3.zip?Expires=1750331685&....\\"\\n },\\n \\"UserData\\": \\"{\\\\\\"NotifyAddress\\\\\\":\\\\\\"http://xx.xx.xxx\\\\\\",\\\\\\"Key\\\\\\":\\\\\\"Valuexxx\\\\\\"}\\"\\n }\\n}","type":"json"}]', + 'title' => 'GetProjectExportJob', + ], + 'SubmitMediaProducingJob' => [ + 'summary' => 'Submits a media editing and production job. If you need to perform any form of post-production such as editing and production on video or audio materials, you can call this operation to automate the process.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'ProjectId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the editing project.'."\n" + ."\n" + .'> : You must specify one of ProgectId, Timeline, and TempalteId and leave the other two parameters empty.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'xxxxxfb2101cb318xxxxx', + ], + ], + [ + 'name' => 'Timeline', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The timeline of the online editing job. For more information about the parameters, see [Timeline configurations](~~198823~~).'."\n" + ."\n" + .'> : You must specify one of ProgectId, Timeline, and TempalteId and leave the other two parameters empty.', + 'type' => 'string', + 'required' => false, + 'example' => '{"VideoTracks":[{"VideoTrackClips":[{"MediaId":"****4d7cf14dc7b83b0e801c****"},{"MediaId":"****4d7cf14dc7b83b0e801c****"}]}]}', + ], + ], + [ + 'name' => 'TemplateId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The template ID. The template is used to build a timeline with ease.'."\n" + ."\n" + .'> : You must specify one of ProgectId, Timeline, and TempalteId and leave the other two parameters empty. If TemplateId is specified, ClipsParam must also be specified.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '****96e8864746a0b6f3****', + ], + ], + [ + 'name' => 'ClipsParam', + 'in' => 'query', + 'schema' => [ + 'description' => 'The material parameters of the template, in the JSON format. If TemplateId is specified, ClipsParam must also be specified. For more information, see [Create and use a regular template](~~445399~~) and [Create and use advanced templates](~~445389~~).', + 'type' => 'string', + 'required' => false, + 'example' => '', + ], + ], + [ + 'name' => 'ProjectMetadata', + 'in' => 'query', + 'schema' => [ + 'description' => 'The metadata of the editing project, in the JSON format. For more information about the parameters, see [ProjectMetadata](~~357745~~).', + 'type' => 'string', + 'required' => false, + 'example' => '', + ], + ], + [ + 'name' => 'OutputMediaTarget', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of the output file. Valid values:'."\n" + ."\n" + .'* oss-object: OSS object in an OSS bucket.'."\n" + .'* vod-media: media asset in ApsaraVideo VOD.'."\n" + .'* S3: output file based on the Amazon Simple Storage Service (S3) protocol.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'oss-object', + ], + ], + [ + 'name' => 'OutputMediaConfig', + 'in' => 'query', + 'schema' => [ + 'description' => 'The configurations of the output file, in the JSON format. You can specify an OSS URL or a storage location in a storage bucket of ApsaraVideo VOD.'."\n" + ."\n" + .'To store the output file in OSS, you must specify MediaURL. To store the output file in ApsaraVideo VOD, you must specify StorageLocation and FileName.'."\n" + ."\n" + .'For more information, see [OutputMediaConfig](~~357745~~).', + 'type' => 'string', + 'required' => true, + 'example' => '{"MediaURL":"https://example-bucket.oss-cn-shanghai.aliyuncs.com/example.mp4"}', + ], + ], + [ + 'name' => 'UserData', + 'in' => 'query', + 'schema' => [ + 'description' => 'The user-defined data in the JSON format, which can be up to 512 bytes in length. You can specify a custom callback URL. For more information, see [Configure a callback upon editing completion](~~451631~~).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{"NotifyAddress":"https://xx.com/xx","RegisterMediaNotifyAddress":"https://xxx.com/xx"}', + ], + ], + [ + 'name' => 'ClientToken', + 'in' => 'query', + 'schema' => [ + 'description' => 'The client token that is used to ensure the idempotence of the request.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '****12e8864746a0a398****', + ], + ], + [ + 'name' => 'Source', + 'in' => 'query', + 'schema' => [ + 'description' => 'The source of the editing and production request. Valid values:'."\n" + ."\n" + .'* OpenAPI'."\n" + .'* AliyunConsole'."\n" + .'* WebSDK'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'OPENAPI', + ], + ], + [ + 'name' => 'EditingProduceConfig', + 'in' => 'query', + 'schema' => [ + 'description' => 'The parameters for editing and production. For more information, see [EditingProduceConfig](~~357745~~).'."\n" + ."\n" + .'> If no thumbnail is specified in EditingProduceConfig, the first frame of the video is used as the thumbnail.'."\n" + ."\n" + .'* AutoRegisterInputVodMedia: specifies whether to automatically register the ApsaraVideo VOD media assets in your timeline with IMS. Default value: true.'."\n" + .'* OutputWebmTransparentChannel: specifies whether the output video contains alpha channels. Default value: false.'."\n" + .'* CoverConfig: the custom thumbnail parameters.'."\n" + .'*', + 'type' => 'string', + 'required' => false, + 'example' => '{'."\n" + .' "AutoRegisterInputVodMedia": "true",'."\n" + .' "OutputWebmTransparentChannel": "true"'."\n" + .'}', + ], + ], + [ + 'name' => 'MediaMetadata', + 'in' => 'query', + 'schema' => [ + 'description' => 'The metadata of the produced video, in the JSON format. For more information about the parameters, see [MediaMetadata](~~357745~~).', + 'type' => 'string', + 'required' => false, + 'example' => '{'."\n" + .' "Title":"test-title",'."\n" + .' "Tags":"test-tags1,tags2"'."\n" + .'}', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '****36-3C1E-4417-BDB2-1E034F****', + ], + 'ProjectId' => [ + 'title' => '剪辑工程Id', + 'description' => 'The ID of the editing project.'."\n", + 'type' => 'string', + 'example' => '****b4549d46c88681030f6e****', + ], + 'JobId' => [ + 'title' => '合成作业Id', + 'description' => 'The job ID.'."\n", + 'type' => 'string', + 'example' => '****d80e4e4044975745c14b****', + ], + 'MediaId' => [ + 'title' => '合成ICE媒资Id', + 'description' => 'The media asset ID of the output file.'."\n", + 'type' => 'string', + 'example' => '****c469e944b5a856828dc2****', + ], + 'VodMediaId' => [ + 'title' => 'vod媒资id', + 'description' => 'The media asset ID of the output file in ApsaraVideo VOD if the output file is stored in ApsaraVideo VOD.'."\n", + 'type' => 'string', + 'example' => '****d8s4h75ci975745c14b****', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => 'The specified parameter \\ is not valid.', + ], + ], + 404 => [ + [ + 'errorCode' => 'ProjectNotFound', + 'errorMessage' => 'The specified project not found', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"****36-3C1E-4417-BDB2-1E034F****\\",\\n \\"ProjectId\\": \\"****b4549d46c88681030f6e****\\",\\n \\"JobId\\": \\"****d80e4e4044975745c14b****\\",\\n \\"MediaId\\": \\"****c469e944b5a856828dc2****\\",\\n \\"VodMediaId\\": \\"****d8s4h75ci975745c14b****\\"\\n}","errorExample":""},{"type":"xml","example":"<SubmitMediaProducingJobResponse>\\n <RequestId>****36-3C1E-4417-BDB2-1E034F****</RequestId>\\n <ProjectId>****b4549d46c88681030f6e****</ProjectId>\\n <JobId>****d80e4e4044975745c14b****</JobId>\\n <MediaId>****c469e944b5a856828dc2****</MediaId>\\n</SubmitMediaProducingJobResponse>","errorExample":""}]', + 'title' => 'SubmitMediaProducingJob', + 'description' => '* This operation returns only the submission result of a media editing and production job. When the submission result is returned, the job may still be in progress. After a media editing and production job is submitted, the job is queued in the background for asynchronous processing.'."\n" + .'* The materials referenced in the timeline of an online editing project can be media assets in the media asset library or Object Storage Service (OSS) objects. External URLs or Alibaba Cloud Content Delivery Network (CDN) URLs are not supported. To use an OSS object as a material, you must set MediaUrl to an OSS URL, such as https://your-bucket.oss-region-name.aliyuncs.com/your-object.ext.'."\n" + .'* After the production is complete, the output file is automatically registered as a media asset. The media asset first needs to be analyzed. After the media asset is analyzed, you can query the duration and resolution information based on the media asset ID.'."\n" + ."\n" + .'## [](#)Limits'."\n" + ."\n" + .'* The throttling threshold of this operation is 30 queries per second (QPS).'."\n" + ."\n" + .' **'."\n" + ."\n" + .' **Note** If the threshold is exceeded, a "Throttling.User" error is returned when you submit an editing job. For more information about how to resolve this issue, see the [FAQ](~~453484~~).'."\n" + ."\n" + .'* You can create up to 100 video tracks, 100 image tracks, and 100 subtitle tracks in a project.'."\n" + ."\n" + .'* The total size of material files cannot exceed 1 TB.'."\n" + ."\n" + .'* The OSS buckets in which the materials reside and where the output media assets are stored must be in the same region as the region in which Intelligent Media Services (IMS) is activated.'."\n" + ."\n" + .'* An output video must meet the following requirements:'."\n" + ."\n" + .' * Both the width and height must be at least 128 pixels.'."\n" + .' * Both the width and height cannot exceed 4,096 pixels.'."\n" + .' * The shorter side of the video cannot exceed 2,160 pixels.'."\n", + 'requestParamsDescription' => '## **Sample OutputMediaConfig parameter configurations**.'."\n" + ."\n" + .'**Example: Store the output file in OSS**'."\n" + ."\n" + .'```'."\n" + .'{'."\n" + .' "MediaURL":"https://my-test-bucket.oss-cn-shanghai.aliyuncs.com/test/xxxxxtest001xxxxx.mp4",'."\n" + .' "Bitrate": 2000, '."\n" + .' "Width": 800, '."\n" + .' "Height": 680'."\n" + .'}'."\n" + .'```'."\n" + ."\n" + .'To store the output file in OSS, you must specify MediaURL. The default value of OutputMediaTarget is oss-object, which specifies to store the output file in OSS. Other parameters are optional. Bitrate specifies the bitrate of the output file. Generally, the higher the bitrate, the clearer the video. The maximum value is 5000. Width and Height specify the resolution of the output file.'."\n" + ."\n" + .'Specify the OSS URL in the following format: https://bucketname.oss-region-name.aliyuncs.com/xxx/yyy.ext.'."\n" + ."\n" + .'bucketname: the name of the OSS bucket.'."\n" + ."\n" + .'region-name.aliyuncs.com: the public endpoint of OSS. For example, the endpoints of the China (Shanghai), China (Beijing), and China (Hangzhou) regions are:'."\n" + ."\n" + .'```'."\n" + .'oss-cn-shanghai.aliyuncs.com'."\n" + .'oss-cn-hangzhou.aliyuncs.com '."\n" + .'oss-cn-beijing.aliyuncs.com'."\n" + .'```'."\n" + ."\n" + .'**Example: Store the output file in ApsaraVideo VOD**'."\n" + ."\n" + .'```'."\n" + .'{ '."\n" + .' "StorageLocation": "outin-*xxxxxx7d2a3811eb83da00163exxxxxx.oss-cn-shanghai.aliyuncs.com", '."\n" + .' "FileName": "output.mp4", '."\n" + .' "Bitrate": 2000, '."\n" + .' "Width": 800, '."\n" + .' "Height": 680'."\n" + .'}'."\n" + .'```'."\n" + ."\n" + .'To store the output file in ApsaraVideo VOD, you must specify StorageLocation and FileName. Set OutputMediaTarget to vod-media, which specifies to store the output file in a storage bucket of ApsaraVideo VOD. The storage locations that can be used in ApsaraVideo VOD can be found in the storage addresses for media assets after media assets are uploaded to ApsaraVideo VOD.'."\n" + ."\n" + .'**Parameters in OutputMediaConfig**'."\n" + ."\n" + .'|Parameter|Type|Description|'."\n" + .'|:---|:---|:---|'."\n" + .'|MediaURL|String|The URL of the output file. If OutputMediaTarget is set to oss-object, specify the HTTP URL of the OSS object, such as http://xxx-bucket-name.oss-cn-shanghai.aliyuncs.com/OSS. The region is the same as the region in which the operation is called.|'."\n" + .'|StorageLocation|String|If OutputMediaTarget is set to vod-media, this parameter indicates the storage location of the media asset in ApsaraVideo VOD. The storage location is the path of the file in ApsaraVideo VOD, excluding the prefix http://. Example: outin-xxxxxx.oss-cn-shanghai.aliyuncs.com.|'."\n" + .'|FileName|String|If OutputMediaTarget is set to vod-media, this parameter indicates the file name of the output file. The value contains the file name extension but not the path.|'."\n" + .'|Width|Integer|The width of the output file. You can leave this parameter empty. The default value is the maximum width of the input materials.|'."\n" + .'|Height|Integer|The height of the output file. You can leave this parameter empty. The default value is the maximum height of the input materials.|'."\n" + .'|Bitrate|Integer|The bitrate of the output file. Unit: Kbit/s. You can leave this parameter empty. The default value is the maximum bitrate of the input materials.|'."\n" + .'|VodTemplateGroupId|String|The ID of the VOD transcoding template group. If VOD transcoding is not required, set the value to VOD\\_NO\\_TRANSCODE.|', + ], + 'GetMediaProducingJob' => [ + 'summary' => 'Queries the information about a media editing and production job. The requested information includes the state, timeline, template, and data of the job. You can call this operation to query only media editing and production jobs created within the past year.', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceM55707', + ], + ], + 'parameters' => [ + [ + 'name' => 'JobId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the media editing and production job.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '****cdb3e74639973036bc84****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '****83B7-7F87-4792-BFE9-63CD2137****', + ], + 'MediaProducingJob' => [ + 'description' => 'The information about the online editing project.'."\n", + 'type' => 'object', + 'properties' => [ + 'JobId' => [ + 'description' => 'The ID of the media editing and production job.'."\n", + 'type' => 'string', + 'example' => '****cdb3e74639973036bc84****', + ], + 'ProjectId' => [ + 'description' => 'The ID of the online editing project.'."\n", + 'type' => 'string', + 'example' => '****fddd7748b58bf1d47e95****', + ], + 'MediaId' => [ + 'description' => 'The media asset ID of the output file.'."\n", + 'type' => 'string', + 'example' => '****0cc6ba49eab379332c5b****', + ], + 'MediaURL' => [ + 'description' => 'The URL of the output file.'."\n", + 'type' => 'string', + 'example' => 'http://example-bucket.oss-cn-shanghai.aliyuncs.com/example2.mp4', + ], + 'Timeline' => [ + 'description' => 'The timeline of the media editing and production job.'."\n", + 'type' => 'string', + 'example' => '{"VideoTracks":[{"VideoTrackClips":[{"MediaId":"****4d7cf14dc7b83b0e801c****"},{"MediaId":"****4d7cf14dc7b83b0e801c****"}]}]}', + ], + 'TemplateId' => [ + 'description' => 'The ID of the template used by the media editing and production job.'."\n", + 'type' => 'string', + 'example' => '****6e76134d739cc3e85d3e****', + ], + 'ClipsParam' => [ + 'description' => 'The template parameters of the media editing and production job.'."\n", + 'type' => 'string', + 'example' => '{"VideoArray":["****05512043f49f697f7425****","****05512043f49f697f7425****","****05512043f49f697f7425****"]}', + ], + 'Duration' => [ + 'description' => 'The duration of the output file.'."\n" + ."\n" + .'Note: This parameter has a value if the job is successful and the output file is an audio or video file.'."\n", + 'type' => 'number', + 'format' => 'float', + 'example' => '30.500000', + ], + 'CreateTime' => [ + 'description' => 'The time when the media editing and production job was created.'."\n" + ."\n" + .'The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2020-12-23T13:33:40Z', + ], + 'CompleteTime' => [ + 'description' => 'The time when the media editing and production job was complete.'."\n" + ."\n" + .'The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2020-12-23T13:33:52Z', + ], + 'ModifiedTime' => [ + 'description' => 'The time when the media editing and production job was last modified.'."\n" + ."\n" + .'The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2020-12-23T13:33:49Z', + ], + 'Status' => [ + 'description' => 'The state of the media editing and production job. Valid values:'."\n" + ."\n" + .'Init'."\n" + ."\n" + .'Queuing'."\n" + ."\n" + .'Processing'."\n" + ."\n" + .'Success'."\n" + ."\n" + .'Failed'."\n", + 'type' => 'string', + 'example' => 'Failed', + ], + 'Code' => [ + 'description' => 'The response code'."\n" + ."\n" + .'Note: Pay attention to this parameter if the job failed.'."\n", + 'type' => 'string', + 'example' => 'ExceededMaximumValue', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'Note: Pay attention to this parameter if the job failed.'."\n", + 'type' => 'string', + 'example' => 'The specified "Width_Height" has exceeded maximum value.', + ], + 'VodMediaId' => [ + 'description' => 'The media asset ID of the output file in ApsaraVideo VOD if the output file is stored in ApsaraVideo VOD.'."\n", + 'type' => 'string', + 'example' => '****332c5b0cc6ba49eab379****', + ], + 'UserData' => [ + 'description' => 'The user-defined data in the JSON format.'."\n", + 'type' => 'string', + 'example' => '{"NotifyAddress":"http://xx.xx.xxx","Key":"Valuexxx"}', + ], + 'SubJobMaterials' => [ + 'description' => 'The materials of the media editing and production job if the job is a subjob of a quick video production job, including the broadcast text and title.'."\n", + 'type' => 'string', + 'example' => '{"Title": "Title", "SpeechText": "Broadcast text of a quick video production job"}'."\n", + ], + 'Progress' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => 'The specified parameter \\ is not valid.', + ], + ], + 404 => [ + [ + 'errorCode' => 'JobNotFound', + 'errorMessage' => 'The specified job not found', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"****83B7-7F87-4792-BFE9-63CD2137****\\",\\n \\"MediaProducingJob\\": {\\n \\"JobId\\": \\"****cdb3e74639973036bc84****\\",\\n \\"ProjectId\\": \\"****fddd7748b58bf1d47e95****\\",\\n \\"MediaId\\": \\"****0cc6ba49eab379332c5b****\\",\\n \\"MediaURL\\": \\"http://example-bucket.oss-cn-shanghai.aliyuncs.com/example2.mp4\\",\\n \\"Timeline\\": \\"{\\\\\\"VideoTracks\\\\\\":[{\\\\\\"VideoTrackClips\\\\\\":[{\\\\\\"MediaId\\\\\\":\\\\\\"****4d7cf14dc7b83b0e801c****\\\\\\"},{\\\\\\"MediaId\\\\\\":\\\\\\"****4d7cf14dc7b83b0e801c****\\\\\\"}]}]}\\",\\n \\"TemplateId\\": \\"****6e76134d739cc3e85d3e****\\",\\n \\"ClipsParam\\": \\"{\\\\\\"VideoArray\\\\\\":[\\\\\\"****05512043f49f697f7425****\\\\\\",\\\\\\"****05512043f49f697f7425****\\\\\\",\\\\\\"****05512043f49f697f7425****\\\\\\"]}\\",\\n \\"Duration\\": 30.5,\\n \\"CreateTime\\": \\"2020-12-23T13:33:40Z\\",\\n \\"CompleteTime\\": \\"2020-12-23T13:33:52Z\\",\\n \\"ModifiedTime\\": \\"2020-12-23T13:33:49Z\\",\\n \\"Status\\": \\"Failed\\",\\n \\"Code\\": \\"ExceededMaximumValue\\",\\n \\"Message\\": \\"The specified \\\\\\"Width_Height\\\\\\" has exceeded maximum value.\\",\\n \\"VodMediaId\\": \\"****332c5b0cc6ba49eab379****\\",\\n \\"UserData\\": \\"{\\\\\\"NotifyAddress\\\\\\":\\\\\\"http://xx.xx.xxx\\\\\\",\\\\\\"Key\\\\\\":\\\\\\"Valuexxx\\\\\\"}\\",\\n \\"SubJobMaterials\\": \\"{\\\\\\"Title\\\\\\": \\\\\\"标题\\\\\\", \\\\\\"SpeechText\\\\\\": \\\\\\"批量智能一键成片口播文案\\\\\\"}\\",\\n \\"Progress\\": 0\\n }\\n}","errorExample":""},{"type":"xml","example":"<GetMediaProducingJobResponse>\\n <RequestId>****83B7-7F87-4792-BFE9-63CD2137****</RequestId>\\n <MediaProducingJob>\\n <JobId>****cdb3e74639973036bc84****</JobId>\\n <ProjectId>****fddd7748b58bf1d47e95****</ProjectId>\\n <MediaId>****0cc6ba49eab379332c5b****</MediaId>\\n <MediaURL>http://example-bucket.oss-cn-shanghai.aliyuncs.com/example2.mp4</MediaURL>\\n <Timeline>{\\"VideoTracks\\":[{\\"VideoTrackClips\\":[{\\"MediaId\\":\\"****4d7cf14dc7b83b0e801c****\\"},{\\"MediaId\\":\\"****4d7cf14dc7b83b0e801c****\\"}]}]}</Timeline>\\n <TemplateId>****6e76134d739cc3e85d3e****</TemplateId>\\n <ClipsParam>{\\"VideoArray\\":[\\"****05512043f49f697f7425****\\",\\"****05512043f49f697f7425****\\",\\"****05512043f49f697f7425****\\"]}</ClipsParam>\\n <Duration>30.5</Duration>\\n <CreateTime>2020-12-23T13:33:40Z</CreateTime>\\n <CompleteTime>2020-12-23T13:33:52Z</CompleteTime>\\n <ModifiedTime>2020-12-23T13:33:49Z</ModifiedTime>\\n <Status>Failed</Status>\\n <Code>ExceededMaximumValue</Code>\\n <Message>The specified \\"Width_Height\\" has exceeded maximum value.</Message>\\n </MediaProducingJob>\\n</GetMediaProducingJobResponse>","errorExample":""}]', + 'title' => 'GetMediaProducingJob', + ], + 'SubmitLiveEditingJob' => [ + 'summary' => 'Submits a live editing job to merge one or more live stream clips into one video. After a live editing job is submitted, the job is queued in the background for asynchronous processing. You can call the GeLiveEditingJob operation to query the state of the job based on the job ID. You can also call the GetMediaInfo operation to query the information about the generated media asset based on the media asset ID.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'Clips', + 'in' => 'query', + 'schema' => [ + 'description' => 'The clips in the JSON array format. The output video is created by merging these clips sequentially.'."\n" + ."\n" + .'Each clip has a start time and an end time. If no live stream parameters are specified, the outer live stream configurations apply. The start and end timestamps are in UTC. For more information about the parameters, see the "Clip" section of this topic.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '[{\\"StartTime\\": \\" 2021-06-21T08:01:00Z\\", \\"EndTime\\": \\" 2021-06-21T08:03:00Z\\" , "AppName": "app", "DomainName": "domain.com", "StreamName": "stream"}, {\\"StartTime\\": \\" 2021-06-21T08:05:00Z\\", \\"EndTime\\": \\" 2021-06-21T08:09:00Z\\" }]', + ], + ], + [ + 'name' => 'ProjectId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the live editing project. If this parameter is specified, the system reads the storage configurations of the project. If this parameter is not specified, the specified storage configurations take precedence.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '****fddd7748b58bf1d47e95****', + ], + ], + [ + 'name' => 'LiveStreamConfig', + 'in' => 'query', + 'schema' => [ + 'description' => 'The live stream configurations, in the JSON format. The configurations must include the following parameters:'."\n" + ."\n" + .'* AppName: the name of the application to which the live stream belongs.'."\n" + .'* DomainName: the domain name of the application.'."\n" + .'* StreamName: the name of the live stream.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{ "AppName": "app", "DomainName": "domain.com", "StreamName": "stream" }', + ], + ], + [ + 'name' => 'OutputMediaConfig', + 'in' => 'query', + 'schema' => [ + 'description' => 'The configurations of the output file, in the JSON format. You can specify an OSS URL or a storage location in a storage bucket of ApsaraVideo VOD.'."\n" + ."\n" + .'* To store the output file in OSS, you must specify MediaURL.'."\n" + .'* To store the output file in ApsaraVideo VOD, you must specify StorageLocation and FileName.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '', + ], + ], + [ + 'name' => 'MediaProduceConfig', + 'in' => 'query', + 'schema' => [ + 'description' => 'The production configurations, in the JSON format. Mode specifies the editing mode. Valid values:'."\n" + ."\n" + .'* **AccurateFast** (default): fast editing. It is faster than the Accurate mode. The resolution of the output file is the same as that of the source stream. You cannot specify the width and height of the output file.'."\n" + .'* **Accurate**: accurate editing. In this mode, you can specify the width and height of the output file.'."\n" + .'* **Rough**: rough editing. The minimum precision is one TS segment. The output file comprises all segments within the specified time range. You can specify the width and height of the output file.'."\n" + .'* **RoughFast**: fast rough editing. It is faster than the Accurate mode. The minimum precision is one TS segment. The output file comprises all segments within the specified time range. The resolution of the output file is the same as that of the source stream. You cannot specify the width and height of the output file.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{ "Mode": "AccurateFast"}', + ], + ], + [ + 'name' => 'UserData', + 'in' => 'query', + 'schema' => [ + 'description' => 'The user-defined data in the JSON format, which can be up to 512 bytes in length.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{"key": "value"}', + ], + ], + [ + 'name' => 'OutputMediaTarget', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of the output file. Valid values:'."\n" + ."\n" + .'* oss-object: OSS object in an OSS bucket.'."\n" + .'* vod-media: media asset in Alibaba Cloud VOD.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'oss-object', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '****36-3C1E-4417-BDB2-1E034F****', + ], + 'ProjectId' => [ + 'description' => 'The ID of the live editing project.'."\n", + 'type' => 'string', + 'example' => '****fddd7748b58bf1d47e95****', + ], + 'JobId' => [ + 'description' => 'The ID of the live editing job.'."\n", + 'type' => 'string', + 'example' => '****d80e4e4044975745c14b****', + ], + 'MediaId' => [ + 'description' => 'The media asset ID of the output file.'."\n", + 'type' => 'string', + 'example' => '****c469e944b5a856828dc2****', + ], + 'MediaURL' => [ + 'description' => 'The URL of the output file.'."\n", + 'type' => 'string', + 'example' => 'http://test-bucket.cn-shanghai.aliyuncs.com/test.mp4', + ], + 'VodMediaId' => [ + 'description' => 'The media asset ID of the output file in ApsaraVideo VOD if the output file is stored in ApsaraVideo VOD.'."\n", + 'type' => 'string', + 'example' => '****d7578s4h75ci945c14b****', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"****36-3C1E-4417-BDB2-1E034F****\\",\\n \\"ProjectId\\": \\"****fddd7748b58bf1d47e95****\\",\\n \\"JobId\\": \\"****d80e4e4044975745c14b****\\",\\n \\"MediaId\\": \\"****c469e944b5a856828dc2****\\",\\n \\"MediaURL\\": \\"http://test-bucket.cn-shanghai.aliyuncs.com/test.mp4\\",\\n \\"VodMediaId\\": \\"****d7578s4h75ci945c14b****\\"\\n}","errorExample":""},{"type":"xml","example":"<SubmitLiveEditingJobResponse>\\n <RequestId>****36-3C1E-4417-BDB2-1E034F****</RequestId>\\n <ProjectId>****fddd7748b58bf1d47e95****</ProjectId>\\n <JobId>****d80e4e4044975745c14b****</JobId>\\n <MediaId>****c469e944b5a856828dc2****</MediaId>\\n <MediaURL>http://test-bucket.cn-shanghai.aliyuncs.com/test.mp4</MediaURL>\\n</SubmitLiveEditingJobResponse>","errorExample":""}]', + 'title' => 'SubmitLiveEditingJob', + 'description' => 'Live editing is supported for live streams that are recorded and stored in Object Storage Service (OSS) and ApsaraVideo VOD. If multiple live streams are involved in a single job, only those recorded within the same application are supported for mixed editing. The streams must all be recorded either in OSS or ApsaraVideo VOD.'."\n", + 'requestParamsDescription' => '### Clip'."\n" + ."\n" + .'|Parameter|Type|Example|Description|Required|'."\n" + .'|---|---|---|---|---|'."\n" + .'|StartTime|String|2021-06-21T08:01:00Z|The start time of the captured clip. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.|Yes|'."\n" + .'|EndTime|String|2021-06-21T08:05:00Z|The end time of the captured clip. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.|Yes|'."\n" + .'|AppName|String|app|The name of the application to which the live stream belongs. If you do not specify this parameter, the outer live stream configurations apply.|No|'."\n" + .'|DomainName|String|domain.com|The domain name. If you do not specify this parameter, the outer live stream configurations apply.|No|'."\n" + .'|StreamName|String|stream|The name of the live stream. If you do not specify this parameter, the outer live stream configurations apply.|No|'."\n" + .'|CoverTime|String|2021-06-21T08:03:00Z|The timestamp in the clip. The image at this timestamp is used as the thumbnail of the output file. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC. If you specify CoverTime for multiple clips, only the first one takes effect. CoverTime must be later than or equal to StartTime and earlier than or equal to EndTime.|No|'."\n" + .'|CoverUrl|String|<ph>https://test.oss-cn-shanghai.aliyuncs.com</ph>|The output URL of the thumbnail. The OSS bucket must be in the same region in which IMS is activated. Only self-managed OSS buckets are supported. Buckets managed by ApsaraVideo VOD are not supported.|No|', + ], + 'GetLiveEditingJob' => [ + 'summary' => 'Queries the information about a live editing job. The requested information includes the state, timeline, and template of the job, the ID and URL of the output file, and the configurations of the job. You can call this operation to query only live editing jobs created within the past year.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'JobId', + 'in' => 'query', + 'schema' => [ + 'title' => '直播剪辑JobId', + 'description' => 'The ID of the live editing job.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '****d80e4e4044975745c14b****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '****36-3C1E-4417-BDB2-1E034F****', + ], + 'LiveEditingJob' => [ + 'title' => '直播剪辑任务', + 'description' => 'The information about the live editing job.'."\n", + 'type' => 'object', + 'properties' => [ + 'JobId' => [ + 'title' => '直播剪辑任务ID', + 'description' => 'The ID of the live editing job.'."\n", + 'type' => 'string', + 'example' => '****cdb3e74639973036bc84****', + ], + 'ProjectId' => [ + 'title' => '直播剪辑工程ID', + 'description' => 'The ID of the live editing project.'."\n", + 'type' => 'string', + 'example' => '****fddd7748b58bf1d47e95****', + ], + 'Status' => [ + 'title' => '直播剪辑作业状态,取值可能为如下值: -Init (初始状态) -Queuing(排队中) -Processing(处理中) -Success(成功) -Failed(失败)', + 'description' => 'The state of the live editing job. Valid values: Init, Queuing, Processing, Success, and Failed.'."\n", + 'type' => 'string', + 'example' => 'Success', + ], + 'Clips' => [ + 'title' => '剪辑片段列表', + 'description' => 'The clips.'."\n", + 'type' => 'string', + 'example' => '[{\\"StartTime\\": \\" 2021-06-21T08:01:00Z\\", \\"EndTime\\": \\" 2021-06-21T08:03:00Z\\" }]', + ], + 'UserData' => [ + 'title' => '用户数据', + 'description' => 'The user-defined data.'."\n", + 'type' => 'string', + 'example' => '{"key": "value\'}', + ], + 'CreationTime' => [ + 'title' => '直播剪辑作业创建时间,格式为utc时间。 格式为:"2021-06-21T08:01:00Z"。', + 'description' => 'The time when the live editing job was created. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2020-12-23T13:33:40Z', + ], + 'ModifiedTime' => [ + 'title' => '直播剪辑作业修改时间,格式为utc时间。 格式为:"2021-06-21T08:01:00Z"。', + 'description' => 'The time when the live editing job was last modified. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2020-12-23T13:33:49Z', + ], + 'CompleteTime' => [ + 'title' => '直播剪辑作业完成时间,格式为utc时间。 格式为:"2021-06-21T08:01:00Z"。', + 'description' => 'The time when the live editing job was completed. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2020-12-23T13:33:52Z', + ], + 'MediaId' => [ + 'title' => '输出成品的资源Id', + 'description' => 'The media asset ID of the output file.'."\n", + 'type' => 'string', + 'example' => '****0cc6ba49eab379332c5b****', + ], + 'MediaURL' => [ + 'title' => '输出成品的资源文件URL', + 'description' => 'The URL of the output file.'."\n", + 'type' => 'string', + 'example' => 'http://example-bucket.oss-cn-shanghai.aliyuncs.com/example2.mp4', + ], + 'Code' => [ + 'title' => '剪辑合成作业错误码 注:作业失败时关注该字段', + 'description' => 'The response code. Note: Pay attention to this parameter if the job failed.'."\n", + 'type' => 'string', + 'example' => 'InvalidParameter', + ], + 'Message' => [ + 'title' => '剪辑合成作业错误信息 注:作业失败时关注该字段', + 'description' => 'The returned message. Note: Pay attention to this parameter if the job failed.'."\n", + 'type' => 'string', + 'example' => 'The specific parameter LiveStreamConfig is not valid.', + ], + 'LiveStreamConfig' => [ + 'title' => '直播剪辑配置', + 'description' => 'The live editing configurations.'."\n", + 'type' => 'object', + 'properties' => [ + 'AppName' => [ + 'title' => '播流所属应用名称', + 'description' => 'The name of the application to which the live stream belongs.'."\n", + 'type' => 'string', + 'example' => 'app', + ], + 'DomainName' => [ + 'title' => '播流所属域名', + 'description' => 'The domain name of the live stream.'."\n", + 'type' => 'string', + 'example' => 'domain.com', + ], + 'StreamName' => [ + 'title' => '播流所属流名', + 'description' => 'The name of the live stream.'."\n", + 'type' => 'string', + 'example' => 'streamName', + ], + ], + ], + 'MediaProduceConfig' => [ + 'title' => '直播剪辑合成配置', + 'description' => 'The production configurations.'."\n", + 'type' => 'object', + 'properties' => [ + 'Mode' => [ + 'title' => '剪辑模式,默认Accurate', + 'description' => 'The editing mode. Default value: Accurate.'."\n", + 'type' => 'string', + 'example' => 'Accurate', + ], + ], + ], + 'OutputMediaConfig' => [ + 'title' => '输出成片的存储配置', + 'description' => 'The storage configurations of the output file.'."\n", + 'type' => 'object', + 'properties' => [ + 'MediaURL' => [ + 'title' => '输出成片的文件地址', + 'description' => 'The URL of the output file.'."\n", + 'type' => 'string', + 'example' => 'https://testice-testbucket.oss-cn-shanghai.aliyuncs.com/test.mp4', + ], + 'StorageLocation' => [ + 'title' => '当 OutputMediaTarget 的目标为 vod-media 时, 指定 storage location 来存储媒资到 VOD; storage location 是 VOD 中的文件存储位置, 不包含 http:// 的前缀, 如: outin-xxxxxx.oss-cn-shanghai.aliyuncs.com', + 'description' => 'If OutputMediaTarget is set to vod-media, this parameter indicates the storage location of the media asset in ApsaraVideo VOD. The storage location is the path of the file in ApsaraVideo VOD, excluding the prefix http://. Example: outin-xxxxxx.oss-cn-shanghai.aliyuncs.com.'."\n", + 'type' => 'string', + 'example' => 'outin-xxxxxx.oss-cn-shanghai.aliyuncs.com', + ], + 'FileName' => [ + 'title' => '当 OutputMediaTarget 的目标为 vod-media 时,指定 fileName(包含文件后缀,不含路径)作为输出文件名', + 'description' => 'If OutputMediaTarget is set to vod-media, this parameter indicates the file name of the output file. The value contains the file name extension but not the path.'."\n", + 'type' => 'string', + 'example' => 'test.mp4', + ], + 'Width' => [ + 'title' => '输出成品的宽。可以不填,默认值是多个素材的最大宽', + 'description' => 'The width of the output file. You can leave this parameter empty. The default value is the maximum width of the input materials.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '640', + ], + 'Height' => [ + 'title' => '输出成品的高。可以不填,默认值是多个素材的最大高', + 'description' => 'The height of the output file. You can leave this parameter empty. The default value is the maximum height of the input materials.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '480', + ], + 'Bitrate' => [ + 'title' => '输出成品的码率,单位为Kbps。可以不填,默认值是多个素材的最高码率', + 'description' => 'The bitrate of the output file. Unit: Kbit/s. You can leave this parameter empty. The default value is the maximum bitrate of the input materials.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1000', + ], + 'VodTemplateGroupId' => [ + 'title' => '合成成片输出到vod,指定vod转码模板组。如不需要VOD转码,请填写 "VOD_NO_TRANSCODE".', + 'description' => 'The ID of the VOD transcoding template group. If VOD transcoding is not required, set the value to VOD_NO_TRANSCODE.'."\n", + 'type' => 'string', + 'example' => 'VOD_NO_TRANSCODE', + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"****36-3C1E-4417-BDB2-1E034F****\\",\\n \\"LiveEditingJob\\": {\\n \\"JobId\\": \\"****cdb3e74639973036bc84****\\",\\n \\"ProjectId\\": \\"****fddd7748b58bf1d47e95****\\",\\n \\"Status\\": \\"Success\\",\\n \\"Clips\\": \\"[{\\\\\\\\\\\\\\"StartTime\\\\\\\\\\\\\\": \\\\\\\\\\\\\\" 2021-06-21T08:01:00Z\\\\\\\\\\\\\\", \\\\\\\\\\\\\\"EndTime\\\\\\\\\\\\\\": \\\\\\\\\\\\\\" 2021-06-21T08:03:00Z\\\\\\\\\\\\\\" }]\\",\\n \\"UserData\\": \\"{\\\\\\"key\\\\\\": \\\\\\"value\'}\\",\\n \\"CreationTime\\": \\"2020-12-23T13:33:40Z\\",\\n \\"ModifiedTime\\": \\"2020-12-23T13:33:49Z\\",\\n \\"CompleteTime\\": \\"2020-12-23T13:33:52Z\\",\\n \\"MediaId\\": \\"****0cc6ba49eab379332c5b****\\",\\n \\"MediaURL\\": \\"http://example-bucket.oss-cn-shanghai.aliyuncs.com/example2.mp4\\",\\n \\"Code\\": \\"InvalidParameter\\",\\n \\"Message\\": \\"The specific parameter LiveStreamConfig is not valid.\\",\\n \\"LiveStreamConfig\\": {\\n \\"AppName\\": \\"app\\",\\n \\"DomainName\\": \\"domain.com\\",\\n \\"StreamName\\": \\"streamName\\"\\n },\\n \\"MediaProduceConfig\\": {\\n \\"Mode\\": \\"Accurate\\"\\n },\\n \\"OutputMediaConfig\\": {\\n \\"MediaURL\\": \\"https://testice-testbucket.oss-cn-shanghai.aliyuncs.com/test.mp4\\",\\n \\"StorageLocation\\": \\"outin-xxxxxx.oss-cn-shanghai.aliyuncs.com\\",\\n \\"FileName\\": \\"test.mp4\\",\\n \\"Width\\": 640,\\n \\"Height\\": 480,\\n \\"Bitrate\\": 1000,\\n \\"VodTemplateGroupId\\": \\"VOD_NO_TRANSCODE\\"\\n }\\n }\\n}","errorExample":""},{"type":"xml","example":"<GetLiveEditingJobResponse>\\n <RequestId>****36-3C1E-4417-BDB2-1E034F****</RequestId>\\n <LiveEditingJob>\\n <JobId>****cdb3e74639973036bc84****</JobId>\\n <ProjectId>****fddd7748b58bf1d47e95****</ProjectId>\\n <Status>Success</Status>\\n <Clips>[{\\\\\\"StartTime\\\\\\": \\\\\\" 2021-06-21T08:01:00Z\\\\\\", \\\\\\"EndTime\\\\\\": \\\\\\" 2021-06-21T08:03:00Z\\\\\\" }]</Clips>\\n <UserData>{\\"key\\": \\"value\'}</UserData>\\n <CreationTime>2020-12-23T13:33:40Z</CreationTime>\\n <ModifiedTime>2020-12-23T13:33:49Z</ModifiedTime>\\n <CompleteTime>2020-12-23T13:33:52Z</CompleteTime>\\n <MediaId>****0cc6ba49eab379332c5b****</MediaId>\\n <MediaURL>http://example-bucket.oss-cn-shanghai.aliyuncs.com/example2.mp4</MediaURL>\\n <Code>InvalidParameter</Code>\\n <Message>The specific parameter LiveStreamConfig is not valid.</Message>\\n <LiveStreamConfig>\\n <AppName>app</AppName>\\n <DomainName>domain.com</DomainName>\\n <StreamName>streamName</StreamName>\\n </LiveStreamConfig>\\n <MediaProduceConfig>\\n <Mode>Accurate</Mode>\\n </MediaProduceConfig>\\n <OutputMediaConfig>\\n <MediaURL>https://testice-testbucket.oss-cn-shanghai.aliyuncs.com/test.mp4</MediaURL>\\n <StorageLocation>outin-xxxxxx.oss-cn-shanghai.aliyuncs.com</StorageLocation>\\n <FileName>test.mp4</FileName>\\n <Width>640</Width>\\n <Height>480</Height>\\n <Bitrate>1000</Bitrate>\\n <VodTemplateGroupId>VOD_NO_TRANSCODE</VodTemplateGroupId>\\n </OutputMediaConfig>\\n </LiveEditingJob>\\n</GetLiveEditingJobResponse>","errorExample":""}]', + 'title' => 'GetLiveEditingJob', + ], + 'SubmitBatchMediaProducingJob' => [ + 'summary' => 'Submits a quick video production job that intelligently edits multiple video, audio, and image assets to generate multiple videos at a time.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'paid', + 'abilityTreeCode' => '131231', + 'abilityTreeNodes' => [ + 'FEATUREiceANRKXC', + ], + ], + 'parameters' => [ + [ + 'name' => 'ClientToken', + 'in' => 'query', + 'schema' => [ + 'title' => '调用方保证请求幂等性Client Token', + 'description' => 'The client token that is used to ensure the idempotence of the request.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '****12e8864746a0a398****'."\n", + ], + ], + [ + 'name' => 'InputConfig', + 'in' => 'formData', + 'schema' => [ + 'title' => '用户合成输出配置', + 'description' => 'The input configurations. For more information, see [InputConfig](~~2692547#2faed1559549n~~).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '', + ], + ], + [ + 'name' => 'EditingConfig', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The editing configurations. For more information, see [EditingConfig](~~2692547#1be9bba03b7qu~~).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{'."\n" + .' "MediaConfig": {'."\n" + .' "Volume": 0'."\n" + .' },'."\n" + .' "SpeechConfig": {'."\n" + .' "Volume": 1'."\n" + .' },'."\n" + .' "BackgroundMusicConfig": {'."\n" + .' "Volume": 0.3'."\n" + .' }'."\n" + .'}', + ], + ], + [ + 'name' => 'OutputConfig', + 'in' => 'query', + 'schema' => [ + 'title' => '任务来源', + 'description' => 'The output configurations. For more information, see [OutputConfig](~~2692547#447b928fcbuoa~~).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{'."\n" + .' "MediaURL": "http://xxx.oss-cn-shanghai.aliyuncs.com/xxx_{index}.mp4",'."\n" + .' "Count": 20,'."\n" + .' "MaxDuration": 15,'."\n" + .' "Width": 1080,'."\n" + .' "Height": 1920,'."\n" + .' "Video": {"Crf": 27}'."\n" + .'}', + ], + ], + [ + 'name' => 'UserData', + 'in' => 'query', + 'schema' => [ + 'title' => '用户配置UserData', + 'description' => 'The user-defined data, including the business and callback configurations. For more information, see [UserData](~~357745~~).', + 'type' => 'string', + 'required' => false, + 'example' => '', + ], + ], + [ + 'name' => 'TemplateConfig', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '****36-3C1E-4417-BDB2-1E034F****', + ], + 'JobId' => [ + 'title' => '批量混剪任务jobId', + 'description' => 'The ID of the quick video production job.'."\n", + 'type' => 'string', + 'example' => '****d80e4e4044975745c14b****', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"****36-3C1E-4417-BDB2-1E034F****\\",\\n \\"JobId\\": \\"****d80e4e4044975745c14b****\\"\\n}","type":"json"}]', + 'title' => 'SubmitBatchMediaProducingJob', + ], + 'GetBatchMediaProducingJob' => [ + 'summary' => 'Queries the information about a quick video production job, including the input parameters, job state, and the IDs and URLs of the output media assets. You can call this operation to query only quick video production jobs created within the past year.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '207313', + 'abilityTreeNodes' => [ + 'FEATUREiceANRKXC', + ], + ], + 'parameters' => [ + [ + 'name' => 'JobId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the quick video production job.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '****b4549d46c88681030f6e****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '****36-3C1E-4417-BDB2-1E034F****', + ], + 'EditingBatchJob' => [ + 'description' => 'The information about the quick video production job.'."\n", + 'type' => 'object', + 'properties' => [ + 'JobId' => [ + 'description' => 'The job ID.'."\n", + 'type' => 'string', + 'example' => '****b6b2750d4308892ac3330238****', + ], + 'InputConfig' => [ + 'description' => 'The input configurations. For more information, see [InputConfig](~~2692547#2faed1559549n~~).'."\n", + 'type' => 'string', + 'example' => '', + ], + 'EditingConfig' => [ + 'description' => 'The editing configurations. For more information, see [EditingConfig](~~2692547#1be9bba03b7qu~~).'."\n", + 'type' => 'string', + 'example' => '{'."\n" + .' "MediaConfig": {'."\n" + .' "Volume": 0'."\n" + .' },'."\n" + .' "SpeechConfig": {'."\n" + .' "Volume": 1'."\n" + .' },'."\n" + .' "BackgroundMusicConfig": {'."\n" + .' "Volume": 0.3'."\n" + .' }'."\n" + .'}', + ], + 'OutputConfig' => [ + 'description' => 'The output configurations. For more information, see [OutputConfig](~~2692547#447b928fcbuoa~~).'."\n", + 'type' => 'string', + 'example' => '{'."\n" + .' "MediaURL": "http://xxx.oss-cn-shanghai.aliyuncs.com/xxx_{index}.mp4",'."\n" + .' "Count": 20,'."\n" + .' "MaxDuration": 15,'."\n" + .' "Width": 1080,'."\n" + .' "Height": 1920,'."\n" + .' "Video": {"Crf": 27}'."\n" + .'}', + ], + 'Status' => [ + 'description' => 'The job state. Valid values:'."\n" + ."\n" + .'Init: The job is initialized.'."\n" + ."\n" + .'Processing: The job is in progress.'."\n" + ."\n" + .'Finished: The job is complete.'."\n", + 'type' => 'string', + 'example' => 'Finished', + ], + 'UserData' => [ + 'description' => 'The user-defined data, including the business and callback configurations. For more information, see [UserData](~~357745~~).', + 'type' => 'string', + 'example' => '{"NotifyAddress":"http://xx.xx.xxx"}', + ], + 'Extend' => [ + 'description' => 'The extended information. This parameter contains the following fields:'."\n" + ."\n" + .'ErrorCode: the error code of the main job.'."\n" + ."\n" + .'ErrorMessage: the error message of the main job.'."\n", + 'type' => 'string', + 'example' => '{'."\n" + .' "ErrorCode": "InvalidMaterial.NotFound",'."\n" + .' "ErrorMessage": "The specified clips id not found:[\\"****30d0b5e871eebb2ff7f6c75a****\\"]"'."\n" + .'}', + ], + 'CreateTime' => [ + 'description' => 'The time when the job was created. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2024-06-13T08:47:07Z', + ], + 'ModifiedTime' => [ + 'description' => 'The time when the job was last modified.'."\n" + ."\n" + .'The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2024-06-13T08:57:07Z'."\n", + ], + 'CompleteTime' => [ + 'description' => 'The time when the job was complete.'."\n" + ."\n" + .'The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2024-06-13T08:57:07Z'."\n", + ], + 'JobType' => [ + 'type' => 'string', + ], + 'SubJobList' => [ + 'description' => 'The quick video production subjobs.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The information about the quick video production subjob.'."\n", + 'type' => 'object', + 'properties' => [ + 'MediaId' => [ + 'description' => 'The ID of the output media asset.'."\n", + 'type' => 'string', + 'example' => '****1470b11171ee9d19e7e6c66a****', + ], + 'JobId' => [ + 'description' => 'The subjob ID.'."\n", + 'type' => 'string', + 'example' => '****8e81933d44e3ae69e2f81485****', + ], + 'MediaURL' => [ + 'description' => 'The URL of the output file.'."\n", + 'type' => 'string', + 'example' => 'http:/xxx.oss-cn-shanghai.aliyuncs.com/xxx_0.mp4', + ], + 'Status' => [ + 'description' => 'The subjob state. Valid values:'."\n" + ."\n" + .'Init: The subjob is initialized.'."\n" + ."\n" + .'Processing: The subjob is in progress.'."\n" + ."\n" + .'Success: The subjob is successful.'."\n" + ."\n" + .'Failed: The subjob failed.'."\n", + 'type' => 'string', + 'example' => 'Success', + ], + 'ErrorCode' => [ + 'description' => 'The error code that is returned if the subjob failed. This parameter is not returned if the subjob is successful.'."\n", + 'type' => 'string', + 'example' => 'InvalidMaterial.NotFound', + ], + 'ErrorMessage' => [ + 'description' => 'The error message that is returned if the subjob failed. This parameter is not returned if the subjob is successful.'."\n", + 'type' => 'string', + 'example' => 'The specified clips id not found:["****30d0b5e871eebb2ff7f6c75a****"]', + ], + 'ProjectId' => [ + 'description' => 'The ID of the online editing project.'."\n", + 'type' => 'string', + 'example' => '****7cc47fe04eaa81bd853acb6a****', + ], + 'Duration' => [ + 'type' => 'number', + 'format' => 'float', + ], + ], + ], + ], + 'ExtendInput' => [ + 'type' => 'string', + ], + 'ExtendOutput' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"****36-3C1E-4417-BDB2-1E034F****\\",\\n \\"EditingBatchJob\\": {\\n \\"JobId\\": \\"****b6b2750d4308892ac3330238****\\",\\n \\"InputConfig\\": \\"{\\\\n \\\\\\"MediaGroupArray\\\\\\": [{\\\\n \\\\\\"GroupName\\\\\\": \\\\\\"MediaGroup1\\\\\\",\\\\n \\\\\\"MediaArray\\\\\\": [\\\\n \\\\\\"****9d46c886b45481030f6e****\\\\\\",\\\\n \\\\\\"****6c886b4549d481030f6e****\\\\\\" ]\\\\n }, {\\\\n \\\\\\"GroupName\\\\\\": \\\\\\"MediaGroup2\\\\\\",\\\\n \\\\\\"MediaArray\\\\\\": [\\\\n \\\\\\"****d46c886810b454930f6e****\\\\\\",\\\\n \\\\\\"****4549d886810b46c30f6e****\\\\\\" ]\\\\n }],\\\\n \\\\\\"TitleArray\\\\\\": [\\\\n \\\\\\"回龙观盒马鲜生开业啦\\\\\\",\\\\n \\\\\\"盒马鲜生开业啦\\\\\\" ],\\\\n \\\\\\"SpeechTextArray\\\\\\": [\\\\n \\\\\\"附近的商场新开了一家盒马鲜生,今天是第一天开业\\\\\\"\\\\n \\\\\\"商场里的人不少,零食、酒水都比较便宜大家也快来看看呀\\\\\\" ]\\\\n}\\",\\n \\"EditingConfig\\": \\"{\\\\n \\\\\\"MediaConfig\\\\\\": {\\\\n \\\\\\"Volume\\\\\\": 0\\\\n },\\\\n \\\\\\"SpeechConfig\\\\\\": {\\\\n \\\\\\"Volume\\\\\\": 1\\\\n },\\\\n \\\\\\"BackgroundMusicConfig\\\\\\": {\\\\n \\\\\\"Volume\\\\\\": 0.3\\\\n }\\\\n}\\",\\n \\"OutputConfig\\": \\"{\\\\n \\\\\\"MediaURL\\\\\\": \\\\\\"http://xxx.oss-cn-shanghai.aliyuncs.com/xxx_{index}.mp4\\\\\\",\\\\n \\\\\\"Count\\\\\\": 20,\\\\n \\\\\\"MaxDuration\\\\\\": 15,\\\\n \\\\\\"Width\\\\\\": 1080,\\\\n \\\\\\"Height\\\\\\": 1920,\\\\n \\\\\\"Video\\\\\\": {\\\\\\"Crf\\\\\\": 27}\\\\n}\\",\\n \\"Status\\": \\"Finished\\",\\n \\"UserData\\": \\"{\\\\\\"NotifyAddress\\\\\\":\\\\\\"http://xx.xx.xxx\\\\\\"}\\",\\n \\"Extend\\": \\"{\\\\n\\\\t\\\\\\"ErrorCode\\\\\\": \\\\\\"InvalidMaterial.NotFound\\\\\\",\\\\n\\\\t\\\\\\"ErrorMessage\\\\\\": \\\\\\"The specified clips id not found:[\\\\\\\\\\\\\\"****30d0b5e871eebb2ff7f6c75a****\\\\\\\\\\\\\\"]\\\\\\"\\\\n}\\",\\n \\"CreateTime\\": \\"2024-06-13T08:47:07Z\\",\\n \\"ModifiedTime\\": \\"2024-06-13T08:57:07Z\\\\n\\",\\n \\"CompleteTime\\": \\"2024-06-13T08:57:07Z\\\\n\\",\\n \\"JobType\\": \\"Script\\",\\n \\"SubJobList\\": [\\n {\\n \\"MediaId\\": \\"****1470b11171ee9d19e7e6c66a****\\",\\n \\"JobId\\": \\"****8e81933d44e3ae69e2f81485****\\",\\n \\"MediaURL\\": \\"http:/xxx.oss-cn-shanghai.aliyuncs.com/xxx_0.mp4\\",\\n \\"Status\\": \\"Success\\",\\n \\"ErrorCode\\": \\"InvalidMaterial.NotFound\\",\\n \\"ErrorMessage\\": \\"The specified clips id not found:[\\\\\\"****30d0b5e871eebb2ff7f6c75a****\\\\\\"]\\",\\n \\"ProjectId\\": \\"****7cc47fe04eaa81bd853acb6a****\\",\\n \\"Duration\\": 24.5\\n }\\n ],\\n \\"ExtendInput\\": \\"[\\\\\\"****7cc47fe04eaa81bd853acb6a****\\\\\\", \\\\\\"****04eaa7cc47fe81bd853acb6a****\\\\\\"]\\",\\n \\"ExtendOutput\\": \\"{\\\\n\\\\t\\\\\\"textMatchMediaOutputList\\\\\\": [{\\\\n\\\\t\\\\t\\\\\\"textMatchMediaSentenceOutputList\\\\\\": [{\\\\n\\\\t\\\\t\\\\t\\\\t\\\\\\"duration\\\\\\": 3.366667,\\\\n\\\\t\\\\t\\\\t\\\\t\\\\\\"matchClipList\\\\\\": [{\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"clipId\\\\\\": \\\\\\"null-2\\\\\\",\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"endTime\\\\\\": 11.16,\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"mediaId\\\\\\": \\\\\\"****a0900f5071efbf1ce7e6c66a****\\\\\\",\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"score\\\\\\": -0.253,\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"startTime\\\\\\": 8.04\\\\n\\\\t\\\\t\\\\t\\\\t}],\\\\n\\\\t\\\\t\\\\t\\\\t\\\\\\"text\\\\\\": \\\\\\"附近的商场新开了一家盒马鲜生\\\\\\",\\\\n\\\\t\\\\t\\\\t\\\\t\\\\\\"textId\\\\\\": \\\\\\"0\\\\\\"\\\\n\\\\t\\\\t\\\\t},\\\\n\\\\t\\\\t\\\\t{\\\\n\\\\t\\\\t\\\\t\\\\t\\\\\\"duration\\\\\\": 1.566667,\\\\n\\\\t\\\\t\\\\t\\\\t\\\\\\"matchClipList\\\\\\": [{\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"clipId\\\\\\": \\\\\\"null-1\\\\\\",\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"endTime\\\\\\": 1.54,\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"mediaId\\\\\\": \\\\\\"****a0900f5071efbf1ce7e6c66a****\\\\\\",\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"score\\\\\\": -0.2326,\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"startTime\\\\\\": 0\\\\n\\\\t\\\\t\\\\t\\\\t}],\\\\n\\\\t\\\\t\\\\t\\\\t\\\\\\"text\\\\\\": \\\\\\"今天是第一天开业\\\\\\",\\\\n\\\\t\\\\t\\\\t\\\\t\\\\\\"textId\\\\\\": \\\\\\"0\\\\\\"\\\\n\\\\t\\\\t\\\\t}\\\\n\\\\t\\\\t]\\\\n\\\\t}]\\\\n}\\"\\n }\\n}","type":"json"}]', + 'title' => 'GetBatchMediaProducingJob', + ], + 'SubmitSportsHighlightsJob' => [ + 'summary' => 'Submits a sports highlights job to generate a highlights video of an event based on event materials that contain commentary.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'abilityTreeCode' => '235590', + 'abilityTreeNodes' => [ + 'FEATUREiceANRKXC', + ], + ], + 'parameters' => [ + [ + 'name' => 'ClientToken', + 'in' => 'query', + 'schema' => [ + 'title' => '调用方保证请求幂等性Client Token', + 'description' => 'The client token that is used to ensure the idempotence of the request.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '****12e8864746a0a398****'."\n", + ], + ], + [ + 'name' => 'InputConfig', + 'in' => 'formData', + 'schema' => [ + 'title' => '用户合成输出配置', + 'description' => 'The input configurations.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '', + ], + ], + [ + 'name' => 'OutputConfig', + 'in' => 'query', + 'schema' => [ + 'title' => '任务来源', + 'description' => 'The output configurations.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{'."\n" + .' "MediaURL": "http://xxx.oss-cn-shanghai.aliyuncs.com/xxx_{index}.mp4",'."\n" + .' "Count": 1,'."\n" + .' "Width": 1080,'."\n" + .' "Height": 1920'."\n" + .'}', + ], + ], + [ + 'name' => 'UserData', + 'in' => 'query', + 'schema' => [ + 'title' => '用户配置UserData', + 'description' => 'The user-defined data.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '****36-3C1E-4417-BDB2-1E034F****'."\n", + ], + 'JobId' => [ + 'description' => 'The ID of the sports highlights job.'."\n", + 'type' => 'string', + 'example' => '****d80e4e4044975745c14b****'."\n", + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"****36-3C1E-4417-BDB2-1E034F****\\\\n\\",\\n \\"JobId\\": \\"****d80e4e4044975745c14b****\\\\n\\"\\n}","type":"json"}]', + 'title' => 'SubmitSportsHighlightsJob', + ], + 'SubmitScreenMediaHighlightsJob' => [ + 'summary' => 'Submits a task to automatically recognize the highlight segments in the video input and compile them into a dramatic and engaging clip.', + 'path' => '', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'paid', + 'abilityTreeNodes' => [ + 'FEATUREiceANRKXC', + ], + ], + 'parameters' => [ + [ + 'name' => 'InputConfig', + 'in' => 'formData', + 'schema' => [ + 'title' => '用户合成输出配置', + 'description' => 'The input configuration. For detailed parameters, see [InputConfig](~~2863940#dda38bf6ec2pk~~).', + 'type' => 'string', + 'required' => false, + 'example' => '{'."\n" + .' "MediaArray": ['."\n" + .' "****9d46c886b45481030f6e****",'."\n" + .' "****6c886b4549d481030f6e****"'."\n" + .' ]'."\n" + .'}', + ], + ], + [ + 'name' => 'EditingConfig', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The editing configuration. For detailed parameters, see [EditingConfig](~~2863940#9b05519d46e0x~~).', + 'type' => 'string', + 'required' => false, + 'example' => '{'."\n" + .' "MediaConfig": {'."\n" + .' "Volume": 1'."\n" + .' },'."\n" + .' "ProcessConfig": {'."\n" + .' "AllowTransition": true,'."\n" + .' "TransitionList": ["fadecolor"]'."\n" + .' }'."\n" + .'}', + ], + ], + [ + 'name' => 'OutputConfig', + 'in' => 'query', + 'schema' => [ + 'title' => '任务来源', + 'description' => 'The output configuration. For detailed parameters, see [OutputConfig](~~2863940#4111a373d0xbz~~).', + 'type' => 'string', + 'required' => false, + 'example' => '{'."\n" + .' "MediaURL": "http://xxx.oss-cn-shanghai.aliyuncs.com/xxx_{index}.mp4",'."\n" + .' "Count": 1,'."\n" + .' "Width": 1080,'."\n" + .' "Height": 1920'."\n" + .'}', + ], + ], + [ + 'name' => 'UserData', + 'in' => 'query', + 'schema' => [ + 'title' => '用户配置UserData', + 'description' => 'The user-defined data, including the business and callback configurations. For more information, see [UserData](~~357745~~).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '****36-3C1E-4417-BDB2-1E034F****', + ], + 'JobId' => [ + 'description' => 'The ID of the task.'."\n", + 'type' => 'string', + 'example' => '****20b48fb04483915d4f2cd8ac****'."\n", + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"****36-3C1E-4417-BDB2-1E034F****\\",\\n \\"JobId\\": \\"****20b48fb04483915d4f2cd8ac****\\\\n\\"\\n}","type":"json"}]', + 'title' => 'SubmitScreenMediaHighlightsJob', + ], + 'ListMediaProducingJobs' => [ + 'summary' => 'Queries a list of media editing and production jobs that meet the specified conditions. You can query the jobs based on the job state and type.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'abilityTreeCode' => '12624', + 'abilityTreeNodes' => [ + 'FEATUREiceM55707', + ], + ], + 'parameters' => [ + [ + 'name' => 'Status', + 'in' => 'query', + 'schema' => [ + 'title' => '查询以下状态的合成任务,支持多值,以英文逗号分隔', + 'description' => 'The job state.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* Init: The job is initialized.'."\n" + .'* Failed: The job failed.'."\n" + .'* Success: The job is successful.'."\n" + .'* Processing: The job is in progress.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'Init' => '', + 'Failed' => '', + 'Success' => '', + 'Processing' => '', + ], + 'example' => 'Success', + ], + ], + [ + 'name' => 'JobType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The job type.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* LiveEditingJob: live editing job.'."\n" + .'* EditingJob: regular template-based editing job'."\n" + .'* VETemplateJob: advanced template-based editing job.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'LiveEditingJob' => '', + 'EditingJob' => '', + 'VETemplateJob' => '', + ], + 'example' => 'EditingJob', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The beginning of the time range to query. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2017-01-11T12:00:00Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end of the time range to query. The maximum time range between EndTime and StartTime cannot exceed 30 days. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2022-02-02T23:59:59Z', + ], + ], + [ + 'name' => 'Keyword', + 'in' => 'query', + 'schema' => [ + 'description' => 'The search keyword. For example, you can use a job ID as the keyword to search for jobs.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + ], + [ + 'name' => 'ProjectId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the online editing project.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '******927cfb53d05b96c1bfe1******', + ], + ], + [ + 'name' => 'MasterJobId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the quick video production job. If this parameter is specified, the subjobs of the quick video production job are queried.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '******8750b54e3c976a47da6f******', + ], + ], + [ + 'name' => 'NextToken', + 'in' => 'query', + 'schema' => [ + 'description' => 'The pagination token that is used in the next request to retrieve a new page of results.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '8EqYpQbZ6Eh7+Zz8DxVYoQ==', + ], + ], + [ + 'name' => 'MaxResults', + 'in' => 'query', + 'schema' => [ + 'description' => 'The maximum number of entries to return.'."\n" + ."\n" + .'Default value: 10. Valid values: 1 to 100.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '100', + ], + ], + [ + 'name' => 'SortBy', + 'in' => 'query', + 'schema' => [ + 'description' => 'The sorting parameter. By default, the query results are sorted by creation time in descending order.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* CreationTime:Asc: sorted by creation time in ascending order.'."\n" + .'* CreationTime:Desc: sorted by creation time in descending order.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'CreationTime:Asc' => '', + 'CreationTime:Desc' => '', + ], + 'example' => 'CreationTime:Desc', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'MediaProducingJobList' => [ + 'description' => 'The queried media editing and production jobs.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The queried media editing and production job.'."\n", + 'type' => 'object', + 'properties' => [ + 'JobId' => [ + 'description' => 'The ID of the online editing job.'."\n", + 'type' => 'string', + 'example' => '******8750b54e3c976a47da6f******', + ], + 'ProjectId' => [ + 'description' => 'The ID of the online editing project.'."\n", + 'type' => 'string', + 'example' => '******faa3b542f5a6135217e3******', + ], + 'MediaId' => [ + 'description' => 'The media asset ID of the output file.'."\n", + 'type' => 'string', + 'example' => '0ce4ea70f52471edab61f7e7d6786302', + ], + 'MediaURL' => [ + 'description' => 'The URL of the output file.'."\n", + 'type' => 'string', + 'example' => 'http://your-bucket.oss-cn-shanghai.aliyuncs.com/your-video.mp4', + ], + 'TemplateId' => [ + 'description' => 'The ID of the online editing template.'."\n", + 'type' => 'string', + 'example' => 'cb786a39c5d44cecb23d8c864facffc1', + ], + 'ClipsParam' => [ + 'description' => 'The template material parameters.'."\n", + 'type' => 'string', + 'example' => '{"Text1":"text","Text0":"text","Media1":"mediaId","Media0":"mediaId"}', + ], + 'Duration' => [ + 'description' => 'The duration of the output file. Unit: seconds.'."\n", + 'type' => 'number', + 'format' => 'float', + 'example' => '15.5', + ], + 'CreateTime' => [ + 'description' => 'The time when the job was created. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2022-03-21T16:40:00Z', + ], + 'CompleteTime' => [ + 'description' => 'The time when the job was complete. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2022-03-21T16:40:30Z', + ], + 'ModifiedTime' => [ + 'description' => 'The time when the job was last modified.'."\n", + 'type' => 'string', + 'example' => '2022-03-21T16:41:00Z', + ], + 'Status' => [ + 'description' => 'The job state.'."\n", + 'type' => 'string', + 'example' => 'Sucess', + ], + 'Code' => [ + 'description' => 'The response code.'."\n", + 'type' => 'string', + 'example' => 'Success', + ], + 'Message' => [ + 'description' => 'The returned message. Note: Pay attention to this parameter if the job failed.'."\n", + 'type' => 'string', + 'example' => 'The resource operated InputFile is bad', + ], + 'UserData' => [ + 'description' => 'The user-defined data in the JSON format.'."\n", + 'type' => 'string', + 'example' => '{"key":"value"}', + ], + ], + ], + ], + 'MaxResults' => [ + 'description' => 'The maximum number of entries returned.'."\n" + ."\n" + .'Default value: 10. Valid values: 1 to 100.'."\n", + 'type' => 'string', + 'example' => '100', + ], + 'NextToken' => [ + 'description' => 'A pagination token. It can be used in the next request to retrieve a new page of results.'."\n", + 'type' => 'string', + 'example' => '8EqYpQbZ6Eh7+Zz8DxVYoQ==', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"MediaProducingJobList\\": [\\n {\\n \\"JobId\\": \\"******8750b54e3c976a47da6f******\\",\\n \\"ProjectId\\": \\"******faa3b542f5a6135217e3******\\",\\n \\"MediaId\\": \\"0ce4ea70f52471edab61f7e7d6786302\\",\\n \\"MediaURL\\": \\"http://your-bucket.oss-cn-shanghai.aliyuncs.com/your-video.mp4\\",\\n \\"TemplateId\\": \\"cb786a39c5d44cecb23d8c864facffc1\\",\\n \\"ClipsParam\\": \\"{\\\\\\"Text1\\\\\\":\\\\\\"text\\\\\\",\\\\\\"Text0\\\\\\":\\\\\\"text\\\\\\",\\\\\\"Media1\\\\\\":\\\\\\"mediaId\\\\\\",\\\\\\"Media0\\\\\\":\\\\\\"mediaId\\\\\\"}\\",\\n \\"Duration\\": 15.5,\\n \\"CreateTime\\": \\"2022-03-21T16:40:00Z\\",\\n \\"CompleteTime\\": \\"2022-03-21T16:40:30Z\\",\\n \\"ModifiedTime\\": \\"2022-03-21T16:41:00Z\\",\\n \\"Status\\": \\"Sucess\\",\\n \\"Code\\": \\"Success\\",\\n \\"Message\\": \\"The resource operated InputFile is bad\\",\\n \\"UserData\\": \\"{\\\\\\"key\\\\\\":\\\\\\"value\\\\\\"}\\"\\n }\\n ],\\n \\"MaxResults\\": \\"100\\",\\n \\"NextToken\\": \\"8EqYpQbZ6Eh7+Zz8DxVYoQ==\\"\\n}","type":"json"}]', + 'title' => 'ListMediaProducingJobs', + ], + 'ListBatchMediaProducingJobs' => [ + 'summary' => 'Queries a list of quick video production jobs based on conditions such as the job type and state.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'abilityTreeCode' => '216608', + 'abilityTreeNodes' => [ + 'FEATUREiceANRKXC', + ], + ], + 'parameters' => [ + [ + 'name' => 'JobId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the quick video production job.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '****d80e4e4044975745c14b****', + ], + ], + [ + 'name' => 'JobType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The job type.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* Script: script-based editing job that mixes media assets.'."\n" + .'* Smart_Mix: intelligent editing job that mixes media assets.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'Script' => '', + 'Smart_Mix' => '', + ], + 'example' => 'Script', + ], + ], + [ + 'name' => 'Status', + 'in' => 'query', + 'schema' => [ + 'description' => 'The job state.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* Finished'."\n" + .'* Init'."\n" + .'* Failed'."\n" + .'* Processing'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'Finished' => '', + 'Init' => '', + 'Failed' => '', + 'Processing' => '', + ], + 'example' => 'Finished', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The beginning of the time range to query. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2022-02-02T00:00:00Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end of the time range to query. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2023-06-05T15:59:59Z', + ], + ], + [ + 'name' => 'SortBy', + 'in' => 'query', + 'schema' => [ + 'description' => 'The sorting parameter. Valid values:'."\n" + ."\n" + .'* desc (default): sorted by creation time in descending order.'."\n" + .'* asc: sorted by creation time in ascending order.'."\n" + ."\n" + .'<!---->', + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'asc' => '', + 'desc' => '', + ], + 'example' => 'desc', + ], + ], + [ + 'name' => 'NextToken', + 'in' => 'query', + 'schema' => [ + 'description' => 'The pagination token that is used in the next request to retrieve a new page of results.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'mRZkKAovub0xWVfH14he4Q==', + ], + ], + [ + 'name' => 'MaxResults', + 'in' => 'query', + 'schema' => [ + 'description' => 'The maximum number of entries to return.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '100', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******3B-0E1A-586A-AC29-742247******', + ], + 'EditingBatchJobList' => [ + 'description' => 'The queried quick video production jobs.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The queried quick video production job.'."\n", + 'type' => 'object', + 'properties' => [ + 'JobId' => [ + 'description' => 'The ID of the quick video production job.'."\n", + 'type' => 'string', + 'example' => '******7ecbee4c6d9b8474498e******', + ], + 'InputConfig' => [ + 'description' => 'The input configurations.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'EditingConfig' => [ + 'description' => 'The editing configurations. For more information, see [EditingConfig](~~2692547#1be9bba03b7qu~~).'."\n", + 'type' => 'string', + 'example' => '{'."\n" + .' "MediaConfig": {'."\n" + .' "Volume": 0'."\n" + .' },'."\n" + .' "SpeechConfig": {'."\n" + .' "Volume": 1'."\n" + .' },'."\n" + .' "BackgroundMusicConfig": {'."\n" + .' "Volume": 0.3'."\n" + .' }'."\n" + .'}', + ], + 'OutputConfig' => [ + 'description' => 'The output configurations. For more information, see [OutputConfig](~~2692547#447b928fcbuoa~~).'."\n", + 'type' => 'string', + 'example' => '{'."\n" + .' "MediaURL": "http://xxx.oss-cn-shanghai.aliyuncs.com/xxx_{index}.mp4",'."\n" + .' "Count": 20,'."\n" + .' "MaxDuration": 15,'."\n" + .' "Width": 1080,'."\n" + .' "Height": 1920,'."\n" + .' "Video": {"Crf": 27}'."\n" + .'}', + ], + 'Status' => [ + 'description' => 'The job state.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* Finished'."\n" + .'* Init'."\n" + .'* Failed'."\n" + .'* Processing'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'Finished' => '', + 'Init' => '', + 'Failed' => '', + 'Processing' => '', + ], + 'example' => 'Finished', + ], + 'UserData' => [ + 'description' => 'The user-defined data in the JSON format, which can be up to 512 bytes in length. You can specify a custom callback URL. For more information, see [Configure a callback upon editing completion](~~451631~~).', + 'type' => 'string', + 'example' => '', + ], + 'Extend' => [ + 'description' => 'The extended information of the job.'."\n", + 'type' => 'string', + 'example' => '{}', + ], + 'CreateTime' => [ + 'description' => 'The time when the job was created. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2023-06-09T06:36:48Z', + ], + 'ModifiedTime' => [ + 'description' => 'The time when the job was last modified.'."\n", + 'type' => 'string', + 'example' => '2023-06-09T06:37:58Z', + ], + 'CompleteTime' => [ + 'description' => 'The time when the job was complete. The time follows the ISO 8601 standard in the *yyyy-MM-dd*T*HH:mm:ss*Z format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'enumValueTitles' => [], + 'example' => '2023-06-09T06:38:09Z'."\n", + ], + 'JobType' => [ + 'description' => 'The job type.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* Script: script-based editing job that mixes media assets.'."\n" + .'* Smart_Mix: intelligent editing job that mixes media assets.'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'Script' => '', + 'Smart_Mix' => '', + ], + 'example' => 'Script', + ], + ], + ], + ], + 'NextToken' => [ + 'description' => 'A pagination token. It can be used in the next request to retrieve a new page of results.'."\n", + 'type' => 'string', + 'example' => '8EqYpQbZ6Eh7+Zz8DxVYoQ==', + ], + 'MaxResults' => [ + 'description' => 'The number of entries per page. Valid values: 1 to 100.'."\n" + ."\n" + .'Default value: 10.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '100', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******3B-0E1A-586A-AC29-742247******\\",\\n \\"EditingBatchJobList\\": [\\n {\\n \\"JobId\\": \\"******7ecbee4c6d9b8474498e******\\",\\n \\"InputConfig\\": \\"{\\\\n \\\\\\"MediaGroupArray\\\\\\": [{\\\\n \\\\\\"MediaArray\\\\\\": [\\\\n \\\\\\"****9d46c886b45481030f6e****\\\\\\",\\\\n \\\\\\"****6c886b4549d481030f6e****\\\\\\" ]\\\\n }, {\\\\n \\\\\\"MediaArray\\\\\\": [\\\\n \\\\\\"****d46c886810b454930f6e****\\\\\\",\\\\n \\\\\\"****4549d886810b46c30f6e****\\\\\\" ]\\\\n }],\\\\n \\\\\\"TitleArray\\\\\\": [\\\\n \\\\\\"回龙观盒马鲜生开业啦\\\\\\"],\\\\n \\\\\\"SpeechTextArray\\\\\\": [\\\\n \\\\\\"附近的商场新开了一家盒马鲜生,今天是第一天开业\\\\\\"]\\\\n}\\",\\n \\"EditingConfig\\": \\"{\\\\n \\\\\\"MediaConfig\\\\\\": {\\\\n \\\\\\"Volume\\\\\\": 0\\\\n },\\\\n \\\\\\"SpeechConfig\\\\\\": {\\\\n \\\\\\"Volume\\\\\\": 1\\\\n },\\\\n \\\\\\"BackgroundMusicConfig\\\\\\": {\\\\n \\\\\\"Volume\\\\\\": 0.3\\\\n }\\\\n}\\",\\n \\"OutputConfig\\": \\"{\\\\n \\\\\\"MediaURL\\\\\\": \\\\\\"http://xxx.oss-cn-shanghai.aliyuncs.com/xxx_{index}.mp4\\\\\\",\\\\n \\\\\\"Count\\\\\\": 20,\\\\n \\\\\\"MaxDuration\\\\\\": 15,\\\\n \\\\\\"Width\\\\\\": 1080,\\\\n \\\\\\"Height\\\\\\": 1920,\\\\n \\\\\\"Video\\\\\\": {\\\\\\"Crf\\\\\\": 27}\\\\n}\\",\\n \\"Status\\": \\"Finished\\",\\n \\"UserData\\": \\"{\\\\\\"NotifyAddress\\\\\\":\\\\\\"http://xx.xx.xxx\\\\\\"}或{\\\\\\"NotifyAddress\\\\\\":\\\\\\"https://xx.xx.xxx\\\\\\"}或{\\\\\\"NotifyAddress\\\\\\":\\\\\\"ice-callback-demo\\\\\\"}\\",\\n \\"Extend\\": \\"{}\\",\\n \\"CreateTime\\": \\"2023-06-09T06:36:48Z\\",\\n \\"ModifiedTime\\": \\"2023-06-09T06:37:58Z\\",\\n \\"CompleteTime\\": \\"2023-06-09T06:38:09Z\\\\n\\",\\n \\"JobType\\": \\"Script\\"\\n }\\n ],\\n \\"NextToken\\": \\"8EqYpQbZ6Eh7+Zz8DxVYoQ==\\",\\n \\"MaxResults\\": 100\\n}","type":"json"}]', + 'title' => 'ListBatchMediaProducingJobs', + ], + 'AddTemplate' => [ + 'summary' => 'Creates a template.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'Name', + 'in' => 'query', + 'schema' => [ + 'title' => '模板名称', + 'description' => 'The name of the custom template.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '视频添加水印模板', + ], + ], + [ + 'name' => 'Type', + 'in' => 'query', + 'schema' => [ + 'title' => '模板类型,取值范围:Timeline', + 'description' => 'The template type. Valid values:'."\n" + ."\n" + .'* Timeline: a regular template created based on the timeline of a video editing project, in which multiple materials are arranged in sequence across multiple layers. It can be used to convert text and images into videos, create photo albums, add opening and closing parts, and apply the default watermark.'."\n" + .'* VETemplate: an advanced template created using effects of Adobe After Effects (AE). It can be used to produce complex animations and advanced media effects.'."\n" + ."\n" + .'<!---->', + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'Timeline' => '', + 'VETemplate' => '', + ], + 'example' => 'Timeline', + ], + ], + [ + 'name' => 'Config', + 'in' => 'formData', + 'schema' => [ + 'title' => '参见Timeline模板Config文档', + 'description' => '* The template configurations. The Config object of a regular template is encapsulated based on the Timeline object of an online editing project. The Config object of a custom template provides more flexible features. If you have special requirements, we recommend that you understand the structure of a Config object and configure a custom template. For more information, see [Config object of a regular template](~~456193~~).'."\n" + .'* For more information about Config object examples, see [Basic template configurations](~~451634~~).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '参见Timeline模板Config文档', + ], + ], + [ + 'name' => 'CoverUrl', + 'in' => 'query', + 'schema' => [ + 'title' => '模板封面', + 'description' => 'The URL of the template thumbnail.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'http://example-bucket.oss-cn-shanghai.aliyuncs.com/cover.jpg', + ], + ], + [ + 'name' => 'PreviewMedia', + 'in' => 'query', + 'schema' => [ + 'title' => '预览视频媒资id', + 'description' => 'The ID of the template preview video.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '****01bf24bf41c78b2754cb3187****', + ], + ], + [ + 'name' => 'Status', + 'in' => 'query', + 'schema' => [ + 'title' => '模板状态', + 'description' => 'The template state. Valid values:'."\n" + ."\n" + .'* Available: The template is available.'."\n" + .'* Created: The template is created but not ready for use.'."\n" + .'* Uploading: The video is being uploaded.'."\n" + .'* Processing: The advanced template is being processed.'."\n" + .'* UploadFailed: Failed to upload the video.'."\n" + .'* ProcessFailed: Failed to process the advanced template.'."\n" + ."\n" + .'<!---->', + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'UploadFailed' => '', + 'ProcessFailed' => '', + 'Available' => '', + 'Uploading' => '', + 'Created' => '', + 'Processing' => '', + ], + 'example' => 'Available', + ], + ], + [ + 'name' => 'Source', + 'in' => 'query', + 'schema' => [ + 'title' => '模板创建来源,默认OpenAPI', + 'description' => 'The source from which the template is created. Valid values:'."\n" + ."\n" + .'* OpenAPI'."\n" + .'* AliyunConsole'."\n" + .'* WebSDK'."\n" + ."\n" + .'<!---->', + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'AliyunConsole' => '', + 'WebSDK' => '', + 'OpenAPI' => '', + ], + 'example' => 'OpenAPI', + ], + ], + [ + 'name' => 'RelatedMediaids', + 'in' => 'query', + 'schema' => [ + 'title' => '模板相关素材,模板编辑器使用', + 'description' => 'The IDs of the materials associated with the template for use by the regular template editor.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{"video":["1805a0c6ca544fb395a06ca683619655"]}', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '****2876-6263-4B75-8F2C-CD0F7FCF****', + ], + 'Template' => [ + 'title' => '模板信息', + 'description' => 'The template information.'."\n", + 'type' => 'object', + 'properties' => [ + 'TemplateId' => [ + 'title' => '模板Id', + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'example' => '****01bf24bf41c78b2754cb3187****', + ], + 'Name' => [ + 'title' => '模板名称', + 'description' => 'The template name.'."\n", + 'type' => 'string', + 'example' => '视频添加水印模板', + ], + 'Type' => [ + 'title' => '模板类型', + 'description' => 'The template type.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* Timeline: regular template.'."\n" + .'* VETemplate: advanced template.'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'Timeline' => '', + 'VETemplate' => '', + ], + 'example' => 'Timeline', + ], + 'Config' => [ + 'title' => '参见Timeline模板Config文档', + 'description' => 'The template configurations.'."\n", + 'type' => 'string', + 'example' => '参见Timeline模板Config文档', + ], + 'CoverUrl' => [ + 'title' => '模板封面', + 'description' => 'The URL of the template thumbnail.'."\n", + 'type' => 'string', + 'example' => 'http://example-bucket.oss-cn-shanghai.aliyuncs.com/cover.jpg', + ], + 'PreviewMedia' => [ + 'title' => '预览视频媒资id', + 'description' => 'The ID of the preview video.'."\n", + 'type' => 'string', + 'example' => '****01bf24bf41c78b2754cb3187****', + ], + 'Status' => [ + 'title' => '模板状态', + 'description' => 'The template state.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* UploadFailed: Failed to upload the video.'."\n" + .'* ProcessFailed: Failed to process the advanced template.'."\n" + .'* Available: The template is available.'."\n" + .'* Uploading: The video is being uploaded.'."\n" + .'* Created: The template is created but not ready for use.'."\n" + .'* Processing: The advanced template is being processed.'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'UploadFailed' => '', + 'ProcessFailed' => '', + 'Available' => '', + 'Uploading' => '', + 'Created' => '', + 'Processing' => '', + ], + 'example' => 'Available', + ], + 'CreateSource' => [ + 'title' => '模板创建来源', + 'description' => 'The source from which the template was created.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* AliyunConsole'."\n" + .'* WebSDK'."\n" + .'* OpenAPI'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'AliyunConsole' => '', + 'WebSDK' => '', + 'OpenAPI' => '', + ], + 'example' => 'OpenAPI', + ], + 'ModifiedSource' => [ + 'title' => '模板修改来源', + 'description' => 'The source from which the template was modified.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* AliyunConsole'."\n" + .'* WebSDK'."\n" + .'* OpenAPI'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'AliyunConsole' => '', + 'WebSDK' => '', + 'OpenAPI' => '', + ], + 'example' => 'OpenAPI', + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"****2876-6263-4B75-8F2C-CD0F7FCF****\\",\\n \\"Template\\": {\\n \\"TemplateId\\": \\"****01bf24bf41c78b2754cb3187****\\",\\n \\"Name\\": \\"模板名称\\",\\n \\"Type\\": \\"Timeline\\",\\n \\"Config\\": \\"参见Config文档\\",\\n \\"CoverUrl\\": \\"http://example-bucket.oss-cn-shanghai.aliyuncs.com/cover.jpg\\",\\n \\"PreviewMedia\\": \\"****01bf24bf41c78b2754cb3187****\\",\\n \\"Status\\": \\"Available\\",\\n \\"CreateSource\\": \\"OpenAPI\\",\\n \\"ModifiedSource\\": \\"OpenAPI\\"\\n }\\n}","errorExample":""},{"type":"xml","example":"<AddTemplateResponse>\\n <RequestId>****2876-6263-4B75-8F2C-CD0F7FCF****</RequestId>\\n <Template>\\n <TemplateId>****01bf24bf41c78b2754cb3187****</TemplateId>\\n <Name>模板名称</Name>\\n <Type>Timeline</Type>\\n <Config>参见Config文档</Config>\\n <CoverUrl>http://example-bucket.oss-cn-shanghai.aliyuncs.com/cover.jpg</CoverUrl>\\n <PreviewMedia>****01bf24bf41c78b2754cb3187****</PreviewMedia>\\n <Status>Normal</Status>\\n <CreateSource>OpenAPI</CreateSource>\\n <ModifiedSource>OpenAPI</ModifiedSource>\\n </Template>\\n</AddTemplateResponse>","errorExample":""}]', + 'title' => 'AddTemplate', + 'description' => '* For more information about how to use a regular template, see [Create and use a regular template](~~445399~~).'."\n" + .'* For more information about how to use an advanced template, see [Create and use advanced templates](~~445389~~).'."\n" + .'* After an advanced template is created, it enters the Processing state. In this case, the template is unavailable. The template can be used only when it is in the Available state. The time required for template processing varies based on the size of the template file. Generally, it ranges from 10 seconds to 5 minutes.', + ], + 'GetTemplate' => [ + 'summary' => 'Queries the information about a template based on the template ID. You can call this operation to query the information about an advanced template if the template is in the Available state.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'TemplateId', + 'in' => 'query', + 'schema' => [ + 'title' => '模板Id', + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + ], + [ + 'name' => 'RelatedMediaidFlag', + 'in' => 'query', + 'schema' => [ + 'title' => '是否返回模板关联素材,1返回,默认0,不返回', + 'description' => 'Specifies whether to return the information about the associated materials. Default value: 0. Valid values: 0 and 1. A value of 1 specifies that the information about the associated materials is returned. This parameter is valid only for regular templates.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '0', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'Template' => [ + 'description' => 'The template information.'."\n", + 'type' => 'object', + 'properties' => [ + 'TemplateId' => [ + 'title' => '模板ID', + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + 'Name' => [ + 'title' => '模板名称', + 'description' => 'The template name.'."\n", + 'type' => 'string', + 'example' => '视频添加水印模板', + ], + 'Type' => [ + 'title' => '模板类型', + 'description' => 'The template type. Valid values:'."\n" + ."\n" + .'* Timeline'."\n" + .'* VETemplate'."\n", + 'type' => 'string', + 'example' => 'Timeline', + ], + 'Config' => [ + 'title' => '模板配置', + 'description' => 'The template configurations.'."\n" + ."\n" + .'* For more information about the configurations of a regular template, see [Config object of a regular template](~~456193~~).'."\n" + .'* For more information about the configurations of an advanced template, see [Create and use advanced templates](~~445389~~).', + 'type' => 'string', + 'example' => '参考Timeline模板配置详解', + ], + 'PreviewMedia' => [ + 'title' => '预览素材', + 'description' => 'The preview media asset.'."\n", + 'type' => 'string', + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + 'Status' => [ + 'title' => '模板状态', + 'description' => 'The template state. Valid values:'."\n" + ."\n" + .'* Available'."\n" + .'* Created'."\n" + .'* Uploading'."\n" + .'* Processing'."\n" + .'* UploadFailed'."\n" + .'* ProcessFailed'."\n", + 'type' => 'string', + 'example' => 'Available', + ], + 'CreateSource' => [ + 'title' => '创建来源', + 'description' => 'The source from which the template was created. Valid values:'."\n" + ."\n" + .'* AliyunConsole'."\n" + .'* OpenAPI'."\n" + .'* WebSDK'."\n", + 'type' => 'string', + 'example' => 'OpenAPI', + ], + 'ModifiedSource' => [ + 'title' => '修改来源', + 'description' => 'The source from which the template was modified. Valid values:'."\n" + ."\n" + .'* AliyunConsole'."\n" + .'* OpenAPI'."\n" + .'* WebSDK'."\n", + 'type' => 'string', + 'example' => 'OpenAPI', + ], + 'PreviewMediaStatus' => [ + 'title' => '预览素材状态', + 'description' => 'The state of the preview media asset. Valid values:'."\n" + ."\n" + .'* Init: the initial state, which indicates that the source file is not ready.'."\n" + .'* Preparing: The source file is being prepared. For example, the file is being uploaded or edited.'."\n" + .'* PrepareFail: The source file failed to be prepared. For example, the information about the source file failed to be obtained.'."\n" + .'* Normal: The source file is ready.'."\n", + 'type' => 'string', + 'example' => 'Normal', + ], + 'CreationTime' => [ + 'title' => '创建时间', + 'description' => 'The time when the template was created.'."\n", + 'type' => 'string', + 'example' => '2020-12-26T04:11:10Z', + ], + 'ModifiedTime' => [ + 'title' => '修改时间', + 'description' => 'The time when the template was last modified.'."\n", + 'type' => 'string', + 'example' => '2020-12-26T04:11:10Z', + ], + 'CoverURL' => [ + 'title' => '封面URL', + 'description' => 'The thumbnail URL.'."\n", + 'type' => 'string', + 'example' => 'http://example-bucket.oss-cn-shanghai.aliyuncs.com/cover.jpg', + ], + 'ClipsParam' => [ + 'title' => '提交合成任务的ClipsParam参数', + 'description' => 'The clip parameters for submitting a video production job. You can replace mediaId and text with real values to submit a job. References:'."\n" + ."\n" + .'* [Create and use a regular template](~~445399~~)'."\n" + .'* [Create and use advanced templates](~~445389~~)', + 'type' => 'string', + 'example' => '{"Media1":"mediaId","Text1":"text"}', + ], + 'RelatedMediaids' => [ + 'title' => '模板关联素材', + 'description' => 'The IDs of the materials associated with the template for use by the regular template editor.'."\n", + 'type' => 'string', + 'example' => '{"video":["******c04f1d4a06996144cc1a******"],"audio":["******c04f1d4a06996144cc1a******"],"image":["******c04f1d4a06996144cc1a******"]}', + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"Template\\": {\\n \\"TemplateId\\": \\"****20b48fb04483915d4f2cd8ac****\\",\\n \\"Name\\": \\"视频添加水印模板\\",\\n \\"Type\\": \\"Timeline\\",\\n \\"Config\\": \\"参考Timeline模板配置详解\\",\\n \\"PreviewMedia\\": \\"****20b48fb04483915d4f2cd8ac****\\",\\n \\"Status\\": \\"Available\\",\\n \\"CreateSource\\": \\"OpenAPI\\",\\n \\"ModifiedSource\\": \\"OpenAPI\\",\\n \\"PreviewMediaStatus\\": \\"Normal\\",\\n \\"CreationTime\\": \\"2020-12-26T04:11:10Z\\",\\n \\"ModifiedTime\\": \\"2020-12-26T04:11:10Z\\",\\n \\"CoverURL\\": \\"http://example-bucket.oss-cn-shanghai.aliyuncs.com/cover.jpg\\",\\n \\"ClipsParam\\": \\"{\\\\\\"Media1\\\\\\":\\\\\\"mediaId\\\\\\",\\\\\\"Text1\\\\\\":\\\\\\"text\\\\\\"}\\",\\n \\"RelatedMediaids\\": \\"{\\\\\\"video\\\\\\":[\\\\\\"******c04f1d4a06996144cc1a******\\\\\\"],\\\\\\"audio\\\\\\":[\\\\\\"******c04f1d4a06996144cc1a******\\\\\\"],\\\\\\"image\\\\\\":[\\\\\\"******c04f1d4a06996144cc1a******\\\\\\"]}\\"\\n }\\n}","errorExample":""},{"type":"xml","example":"<GetTemplateResponse>\\n <RequestId>******11-DB8D-4A9A-875B-275798******</RequestId>\\n <Template>\\n <TemplateId>****20b48fb04483915d4f2cd8ac****</TemplateId>\\n <Name>视频添加水印模板</Name>\\n <Type>Timeline</Type>\\n <Config>参考Timeline模板配置详解</Config>\\n <PreviewMedia>****20b48fb04483915d4f2cd8ac****</PreviewMedia>\\n <Status>Available</Status>\\n <CreateSource>OpenAPI</CreateSource>\\n <ModifiedSource>OpenAPI</ModifiedSource>\\n <PreviewMediaStatus>Normal</PreviewMediaStatus>\\n <CreationTime>2020-12-26T04:11:10Z</CreationTime>\\n <ModifiedTime>2020-12-26T04:11:10Z</ModifiedTime>\\n <CoverURL>http://example-bucket.oss-cn-shanghai.aliyuncs.com/cover.jpg</CoverURL>\\n </Template>\\n</GetTemplateResponse>","errorExample":""}]', + 'title' => 'GetTemplate', + 'description' => 'A template is an encapsulation of the timeline of a media editing and production job. You can define a common timeline as a template. When you have the same requirements, you need to only specify key parameters and materials to produce videos.'."\n" + ."\n" + .'* For more information about how to use a regular template, see [Create and use a regular template](~~445399~~).'."\n" + .'* For more information about how to use an advanced template, see [Create and use advanced templates](~~445389~~).', + ], + 'UpdateTemplate' => [ + 'summary' => 'Modifies an online editing template. You can modify the template title and template configurations.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'TemplateId', + 'in' => 'query', + 'schema' => [ + 'title' => '模板ID', + 'description' => 'The ID of the online editing template. You can obtain the template ID in the [Intelligent Media Services (IMS) console](https://ice.console.aliyun.com/production/template/list/common) or the response parameters of the [AddTemplate](~~441161~~) operation.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + ], + [ + 'name' => 'Name', + 'in' => 'query', + 'schema' => [ + 'title' => '模板名称', + 'description' => 'The name of the online editing template.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '视频添加水印模板', + ], + ], + [ + 'name' => 'Config', + 'in' => 'formData', + 'schema' => [ + 'title' => '参见模板Config文档', + 'description' => 'The template configurations. For more information, see [Config object of a regular template](~~456193~~).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{'."\n" + .' "VideoTracks": ['."\n" + .' {'."\n" + .' "VideoTrackClips": ['."\n" + .' {'."\n" + .' "Sys_Type" : "ArrayItems",'."\n" + .' "Sys_ArrayObject" : "$VideoArray",'."\n" + .' "Sys_Template" : {'."\n" + .' "MediaId" : "$MediaId"'."\n" + .' }'."\n" + .' }'."\n" + .' ]'."\n" + .' }'."\n" + .' ]'."\n" + .'}', + ], + ], + [ + 'name' => 'CoverUrl', + 'in' => 'query', + 'schema' => [ + 'title' => '模板封面', + 'description' => 'The URL of the template thumbnail.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'http://example-bucket.oss-cn-shanghai.aliyuncs.com/cover.jpg', + ], + ], + [ + 'name' => 'PreviewMedia', + 'in' => 'query', + 'schema' => [ + 'title' => '预览视频媒资id', + 'description' => 'The ID of the preview video.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + ], + [ + 'name' => 'Status', + 'in' => 'query', + 'schema' => [ + 'title' => '模板状态', + 'description' => 'The template state. Valid values:'."\n" + ."\n" + .'* Available: The template is available.'."\n" + .'* Created: The template is created but not ready for use.'."\n" + .'* Uploading: The video is being uploaded.'."\n" + .'* Processing: The advanced template is being processed.'."\n" + .'* UploadFailed: Failed to upload the video.'."\n" + .'* ProcessFailed: Failed to process the advanced template.'."\n" + ."\n" + .'> After an advanced template is created, it enters the Processing state. In this case, the template is unavailable. The template can be used only when it is in the Available state. The time required for template processing varies based on the size of the template file. Generally, it ranges from 10 seconds to 5 minutes.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'Available', + ], + ], + [ + 'name' => 'Source', + 'in' => 'query', + 'schema' => [ + 'title' => '修改来源,默认OpenAPI', + 'description' => 'The source from which the template is modified. Default value: OpenAPI. Valid values:'."\n" + ."\n" + .'* AliyunConsole'."\n" + .'* OpenAPI'."\n" + .'* WebSDK'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'OpenAPI', + ], + ], + [ + 'name' => 'RelatedMediaids', + 'in' => 'query', + 'schema' => [ + 'title' => '模板相关素材,模板编辑器使用', + 'description' => 'The IDs of the materials associated with the template for use by the regular template editor.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{"video":["******c04f1d4a06996144cc1a******","******cb7db64841b159b4f2ea******"],"audio":["******c04f1d4a06996144cc1a******"],"image":["******c04f1d4a06996144cc1a******"]}', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"F8D475A5-F2EC-5755-ABD8-22D5561C****\\"\\n}","errorExample":""},{"type":"xml","example":"<UpdateTemplateResponse>\\n <RequestId>******11-DB8D-4A9A-875B-275798******</RequestId>\\n</UpdateTemplateResponse>","errorExample":""}]', + 'title' => 'UpdateTemplate', + 'description' => '* For more information about how to use a regular template, see [Create and use a regular template](~~445399~~).'."\n" + .'* For more information about how to use an advanced template, see [Create and use advanced templates](~~445389~~).', + ], + 'DeleteTemplate' => [ + 'summary' => 'Deletes templates.', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'TemplateIds', + 'in' => 'query', + 'schema' => [ + 'title' => '模板id,多个id用英文逗号隔开', + 'description' => 'The IDs of the templates that you want to delete. Separate multiple IDs with commas (,).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '****20b48fb04483915d4f2cd8ac****,****20b48fb04483915d4f2cd8ac****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteTemplateResponse>\\n <RequestId>******11-DB8D-4A9A-875B-275798******</RequestId>\\n</DeleteTemplateResponse>","errorExample":""}]', + 'title' => 'DeleteTemplate', + 'description' => 'A template is an encapsulation of the timeline of a media editing and production job. You can define a common timeline as a template. When you have the same requirements, you need to only specify key parameters and materials to produce videos.'."\n" + ."\n" + .'* For more information about how to use a regular template, see [Create and use a regular template](~~445399~~).'."\n" + .'* For more information about how to use an advanced template, see [Create and use advanced templates](~~445389~~).', + ], + 'ListTemplates' => [ + 'summary' => 'Queries a list of templates that meet the specified conditions. You can query templates based on information such as the template status and creation source.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'title' => '当前页码。默认值为1。', + 'description' => 'The page number. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'title' => '分页大小,每页显示条数。默认值为10,最大值为100。', + 'description' => 'The number of entries per page. Default value: 20. Valid values: 1 to 100.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '20', + ], + ], + [ + 'name' => 'Type', + 'in' => 'query', + 'schema' => [ + 'title' => '模板类型', + 'description' => 'The template type.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* Timeline'."\n" + .'* VETemplate'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'Timeline' => 'Timeline', + 'VETemplate' => 'VETemplate', + ], + 'example' => 'Timeline', + ], + ], + [ + 'name' => 'Status', + 'in' => 'query', + 'schema' => [ + 'title' => '模板状态', + 'description' => 'The template state.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* UploadFailed: Failed to upload the video.'."\n" + .'* ProcessFailed: Failed to process the advanced template.'."\n" + .'* Available: The template is available.'."\n" + .'* Uploading: The video is being uploaded.'."\n" + .'* Created: The template is created but not ready for use.'."\n" + .'* Processing: The advanced template is being processed.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'UploadFailed' => '', + 'ProcessFailed' => '', + 'Available' => '', + 'Uploading' => '', + 'Created' => '', + 'Processing' => '', + ], + 'example' => 'Available', + ], + ], + [ + 'name' => 'CreateSource', + 'in' => 'query', + 'schema' => [ + 'title' => '创建来源', + 'description' => 'The source from which the template was created.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* AliyunConsole'."\n" + .'* WebSDK'."\n" + .'* OpenAPI'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'AliyunConsole' => '', + 'WebSDK' => '', + 'OpenAPI' => '', + ], + 'example' => 'OpenAPI', + ], + ], + [ + 'name' => 'Keyword', + 'in' => 'query', + 'schema' => [ + 'title' => '搜索关键词,可以根据模板id和title搜索', + 'description' => 'The search keyword. You can use the template ID or title as the keyword to search for templates.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + ], + [ + 'name' => 'SortType', + 'in' => 'query', + 'schema' => [ + 'title' => '排序参数,默认根据创建时间倒序', + 'description' => 'The sorting parameter. By default, the query results are sorted by creation time in descending order.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* CreationTime:Asc: sorted by creation time in ascending order.'."\n" + .'* CreationTime:Desc: sorted by creation time in descending order.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'CreationTime:ASC' => '', + 'CreationTime:Desc' => '', + ], + 'example' => 'CreationTime:Desc', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'TotalCount' => [ + 'title' => '本次请求条件下的数据总量。', + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '100', + ], + 'Templates' => [ + 'description' => 'The queried templates.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The template information.'."\n", + 'type' => 'object', + 'properties' => [ + 'TemplateId' => [ + 'title' => '模板ID', + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + 'Name' => [ + 'title' => '模板名称', + 'description' => 'The template name.'."\n", + 'type' => 'string', + 'example' => '视频添加水印模板', + ], + 'Type' => [ + 'title' => '模板类型', + 'description' => 'The template type.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* Timeline: regular template.'."\n" + .'* VETemplate: advanced template.'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'Timeline' => '', + 'VETemplate' => '', + ], + 'example' => 'Timeline', + ], + 'Config' => [ + 'title' => '模板配置', + 'description' => 'The template configurations.'."\n", + 'type' => 'string', + 'example' => '参考Timeline模板配置详解', + ], + 'PreviewMedia' => [ + 'title' => '预览素材', + 'description' => 'The preview media asset.'."\n", + 'type' => 'string', + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + 'Status' => [ + 'title' => '模板状态', + 'description' => 'The template state.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* UploadFailed: Failed to upload the video.'."\n" + .'* ProcessFailed: Failed to process the advanced template.'."\n" + .'* Available: The template is available.'."\n" + .'* Uploading: The video is being uploaded.'."\n" + .'* Created: The template is created but not ready for use.'."\n" + .'* Processing: The advanced template is being processed.'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'UploadFailed' => '', + 'ProcessFailed' => '', + 'Available' => '', + 'Uploading' => '', + 'Created' => '', + 'Processing' => '', + ], + 'example' => 'Available', + ], + 'CreateSource' => [ + 'title' => '创建来源', + 'description' => 'The source from which the template was created.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* AliyunConsole'."\n" + .'* WebSDK'."\n" + .'* OpenAPI'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'AliyunConsole' => '', + 'WebSDK' => '', + 'OpenAPI' => '', + ], + 'example' => 'OpenAPI', + ], + 'ModifiedSource' => [ + 'title' => '修改来源', + 'description' => 'The source from which the template was modified.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* AliyunConsole'."\n" + .'* WebSDK'."\n" + .'* OpenAPI'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'AliyunConsole' => '', + 'WebSDK' => '', + 'OpenAPI' => '', + ], + 'example' => 'OpenAPI', + ], + 'PreviewMediaStatus' => [ + 'title' => '预览素材状态', + 'description' => 'The state of the preview media asset.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* PrepareFail'."\n" + .'* Init'."\n" + .'* Normal'."\n" + .'* Preparing'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'PrepareFail' => '', + 'Init' => '', + 'Normal' => '', + 'Preparing' => '', + ], + 'example' => 'Normal', + ], + 'CreationTime' => [ + 'title' => '创建时间', + 'description' => 'The time when the template was created.'."\n", + 'type' => 'string', + 'example' => '2020-12-26T04:11:10Z', + ], + 'ModifiedTime' => [ + 'title' => '修改时间', + 'description' => 'The time when the template was last modified.'."\n", + 'type' => 'string', + 'example' => '2020-12-26T04:11:10Z', + ], + 'CoverURL' => [ + 'title' => '封面URL', + 'description' => 'The thumbnail URL.'."\n", + 'type' => 'string', + 'example' => 'http://example-bucket.oss-cn-shanghai.aliyuncs.com/cover.jpg', + ], + 'ClipsParam' => [ + 'title' => 'ClipsParam', + 'description' => 'The clip parameters.'."\n", + 'type' => 'string', + 'example' => '{"Media1":"mediaId","Text1":"text"}', + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"TotalCount\\": 100,\\n \\"Templates\\": [\\n {\\n \\"TemplateId\\": \\"****20b48fb04483915d4f2cd8ac****\\",\\n \\"Name\\": \\"云剪辑模板\\",\\n \\"Type\\": \\"Timeline\\",\\n \\"Config\\": \\"参考Timeline模板配置详解\\",\\n \\"PreviewMedia\\": \\"****20b48fb04483915d4f2cd8ac****\\",\\n \\"Status\\": \\"Available\\",\\n \\"CreateSource\\": \\"OpenAPI\\",\\n \\"ModifiedSource\\": \\"OpenAPI\\",\\n \\"PreviewMediaStatus\\": \\"Normal\\",\\n \\"CreationTime\\": \\"2020-12-26T04:11:10Z\\",\\n \\"ModifiedTime\\": \\"2020-12-26T04:11:10Z\\",\\n \\"CoverURL\\": \\"http://example-bucket.oss-cn-shanghai.aliyuncs.com/cover.jpg\\",\\n \\"ClipsParam\\": \\"{\\\\\\"Media1\\\\\\":\\\\\\"mediaId\\\\\\",\\\\\\"Text1\\\\\\":\\\\\\"text\\\\\\"}\\"\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<ListTemplatesResponse>\\n <RequestId>******11-DB8D-4A9A-875B-275798******</RequestId>\\n <TotalCount>100</TotalCount>\\n <Templates>\\n <TemplateId>****20b48fb04483915d4f2cd8ac****</TemplateId>\\n <Name>视频添加水印模板</Name>\\n <Type>Timeline</Type>\\n <Config>参考Timeline模板配置详解</Config>\\n <PreviewMedia>****20b48fb04483915d4f2cd8ac****</PreviewMedia>\\n <Status>Available</Status>\\n <CreateSource>OpenAPI</CreateSource>\\n <ModifiedSource>OpenAPI</ModifiedSource>\\n <PreviewMediaStatus>Normal</PreviewMediaStatus>\\n <CreationTime>2020-12-26T04:11:10Z</CreationTime>\\n <ModifiedTime>2020-12-26T04:11:10Z</ModifiedTime>\\n <CoverURL>http://example-bucket.oss-cn-shanghai.aliyuncs.com/cover.jpg</CoverURL>\\n </Templates>\\n</ListTemplatesResponse>","errorExample":""}]', + 'title' => 'ListTemplates', + 'description' => 'A template is an encapsulation of the timeline of a media editing and production job. You can define a common timeline as a template. When you have the same requirements, you need to only specify key parameters and materials to produce videos.'."\n" + ."\n" + .'* For more information about how to use a regular template, see [Create and use a regular template](~~445399~~).'."\n" + .'* For more information about how to use an advanced template, see [Create and use advanced templates](~~445389~~).', + ], + 'GetTemplateMaterials' => [ + 'summary' => 'Queries the URLs of materials associated with an advanced template for use by the advanced template editor. The URLs expire in 30 minutes. FileList is an array of materials that you want to query. If you do not specify this parameter, the URLs of all materials are returned. A maximum of 400 URLs can be returned.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'TemplateId', + 'in' => 'query', + 'schema' => [ + 'title' => '模板Id', + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + ], + [ + 'name' => 'FileList', + 'in' => 'query', + 'schema' => [ + 'title' => '所需文件列表', + 'description' => 'The materials that you want to query.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '["music.mp3","config.json","assets/1.jpg"]', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'MaterialUrls' => [ + 'title' => '关联素材地址', + 'description' => 'The URLs of the associated materials.'."\n", + 'type' => 'string', + 'example' => '{"music.mp3":"https://bucket.oss-cn-shanghai.aliyuncs.com/music.mp3?sign=xxx","config.json":"https://bucket.oss-cn-shanghai.aliyuncs.com/config.json?sign=xxx","assets/1.jpg":"https://bucket.oss-cn-shanghai.aliyuncs.com/assets/1.jpg?sign=xxx"}', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"MaterialUrls\\": \\"{\\\\\\"music.mp3\\\\\\":\\\\\\"https://bucket.oss-cn-shanghai.aliyuncs.com/music.mp3?sign=xxx\\\\\\",\\\\\\"config.json\\\\\\":\\\\\\"https://bucket.oss-cn-shanghai.aliyuncs.com/config.json?sign=xxx\\\\\\",\\\\\\"assets/1.jpg\\\\\\":\\\\\\"https://bucket.oss-cn-shanghai.aliyuncs.com/assets/1.jpg?sign=xxx\\\\\\"}\\"\\n}","errorExample":""},{"type":"xml","example":"<GetTemplateMaterialsResponse>\\n <RequestId>******11-DB8D-4A9A-875B-275798******</RequestId>\\n <MaterialUrls>{\\"music.mp3\\":\\"https://bucket.oss-cn-shanghai.aliyuncs.com/music.mp3?sign=xxx\\",\\"config.json\\":\\"https://bucket.oss-cn-shanghai.aliyuncs.com/config.json?sign=xxx\\",\\"assets/1.jpg\\":\\"https://bucket.oss-cn-shanghai.aliyuncs.com/assets/1.jpg?sign=xxx\\"}</MaterialUrls>\\n</GetTemplateMaterialsResponse>","errorExample":""}]', + 'title' => 'GetTemplateMaterials', + ], + 'GetTemplateParams' => [ + 'summary' => 'Queries the parameters for replaceable materials in a template, including the parameter names, default values, and material thumbnails. Only advanced templates are supported.', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceDXIJ4D', + ], + ], + 'parameters' => [ + [ + 'name' => 'TemplateId', + 'in' => 'query', + 'schema' => [ + 'title' => '模板ID', + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'headers' => [], + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '****2876-6263-4B75-8F2C-CD0F7FCF****', + ], + 'TemplateId' => [ + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'example' => '******419c8741c1b4325f035b******', + ], + 'ParamList' => [ + 'description' => 'The queried parameters.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The template parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'title' => '模板ID', + 'description' => 'The parameter name.'."\n", + 'type' => 'string', + 'example' => 'video1', + ], + 'Type' => [ + 'description' => 'The material type.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* Video'."\n" + .'* Text'."\n" + .'* Image'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'Video' => '', + 'Text' => '', + 'Image' => '', + ], + 'example' => 'Image', + ], + 'CoverUrl' => [ + 'description' => 'The thumbnail URL of the original material.'."\n", + 'type' => 'string', + 'example' => 'https://ice-materials-***.alicdn.com/***/********20221****.jpg', + ], + 'MediaUrl' => [ + 'description' => 'The URL of the original material.'."\n", + 'type' => 'string', + 'example' => 'https://ice-materials-***.alicdn.com/***/********2022111618012453120c2a81*******.mp4', + ], + 'Content' => [ + 'description' => 'The original subtitle content.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'X' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'Y' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'Width' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'Height' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'TimelineIn' => [ + 'type' => 'number', + 'format' => 'float', + ], + 'TimelineOut' => [ + 'type' => 'number', + 'format' => 'float', + ], + ], + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"****2876-6263-4B75-8F2C-CD0F7FCF****\\",\\n \\"TemplateId\\": \\"******419c8741c1b4325f035b******\\",\\n \\"ParamList\\": [\\n {\\n \\"Key\\": \\"video1\\",\\n \\"Type\\": \\"Image\\",\\n \\"CoverUrl\\": \\"https://ice-materials-***.alicdn.com/***/********20221****.jpg\\",\\n \\"MediaUrl\\": \\"https://ice-materials-***.alicdn.com/***/********2022111618012453120c2a81*******.mp4\\",\\n \\"Content\\": \\"字幕测试\\",\\n \\"X\\": 100,\\n \\"Y\\": 100,\\n \\"Width\\": 300,\\n \\"Height\\": 300,\\n \\"TimelineIn\\": 5.5,\\n \\"TimelineOut\\": 8.5\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'GetTemplateParams', + ], + 'DeleteHotwordLibrary' => [ + 'summary' => 'Deletes a specified hotword library based on the ID.', + 'path' => '', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREice405U0J', + ], + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'HotwordLibraryId', + 'in' => 'query', + 'schema' => [ + 'title' => '删除热词库Id', + 'description' => 'The ID of the hotword library that you want to delete.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '****cdb3e74639973036bc84****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '****83B7-7F87-4792-BFE9-63CD2137****', + ], + 'Success' => [ + 'title' => '删除是否成功', + 'description' => 'Indicates whether the request was successful.'."\n", + 'type' => 'boolean', + 'default' => 'true', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"****83B7-7F87-4792-BFE9-63CD2137****\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => 'DeleteHotwordLibrary', + 'description' => '## [](#)'."\n" + ."\n" + .'* You can call this operation to delete a specified hotword library.'."\n" + .'* The delete operation is irreversible.'."\n" + .'* You can create up to 100 hotword libraries in an account.'."\n", + ], + 'GetHotwordLibrary' => [ + 'summary' => 'Queries the information about a specified hotword library based on the ID.', + 'path' => '', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREice405U0J', + ], + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'HotwordLibraryId', + 'in' => 'query', + 'schema' => [ + 'title' => '热词库Id', + 'description' => 'The ID of the hotword library.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '****96e8864746a0b6f3****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '****12e8864746a0a398****', + ], + 'HotwordLibraryId' => [ + 'title' => '热词库Id', + 'description' => 'The ID of the hotword library.'."\n", + 'type' => 'string', + 'example' => '****05512043f49f697f7425****', + ], + 'Name' => [ + 'title' => '热词库名称', + 'description' => 'The name of the hotword library.'."\n", + 'type' => 'string', + 'example' => '热词库名称', + ], + 'Description' => [ + 'title' => '热词库描述', + 'description' => 'The description of the hotword library.'."\n", + 'type' => 'string', + 'example' => '热词库描述', + ], + 'Hotwords' => [ + 'title' => '热词列表', + 'description' => 'The hotword list.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The hotword data.'."\n", + '$ref' => '#/components/schemas/Hotword', + ], + ], + 'UsageScenario' => [ + 'title' => '热词库使用场景', + 'description' => 'The usage scenario of the hotword library.'."\n", + 'type' => 'string', + 'example' => 'ASR', + ], + 'CreationTime' => [ + 'title' => '热词库创建时间', + 'description' => 'The time when the hotword library was created.'."\n", + 'type' => 'string', + 'example' => '2020-12-23T13:33:49Z', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"****12e8864746a0a398****\\",\\n \\"HotwordLibraryId\\": \\"****05512043f49f697f7425****\\",\\n \\"Name\\": \\"热词库名称\\",\\n \\"Description\\": \\"热词库描述\\",\\n \\"Hotwords\\": [\\n {\\n \\"TranspositionResultList\\": [\\n {\\n \\"TranslatedText\\": \\"你好\\",\\n \\"TargetLanguage\\": \\"zh\\"\\n }\\n ],\\n \\"Language\\": \\"en\\",\\n \\"Text\\": \\"hello\\",\\n \\"Weight\\": 0\\n }\\n ],\\n \\"UsageScenario\\": \\"ASR\\",\\n \\"CreationTime\\": \\"2020-12-23T13:33:49Z\\"\\n}","type":"json"}]', + 'title' => 'GetHotwordLibrary', + 'description' => '## [](#)'."\n" + ."\n" + .'You can call this operation to retrieve details of a specified hotword library based on the ID, including the library name, description, and content and attributes of all hotwords in it.'."\n", + ], + 'ListHotwordLibraries' => [ + 'summary' => 'Queries hotword libraries that meet specific search conditions.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREice405U0J', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'NextToken', + 'in' => 'query', + 'schema' => [ + 'title' => '当前开始读取的位置', + 'description' => 'The pagination token that is used in the next request to retrieve a new page of results.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '****73f33c91-d59383e8280b****', + ], + ], + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'title' => '当前页码。默认值为1。', + 'description' => 'The page number. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'title' => '分页大小,每页显示条数。默认值为10,最大值为100。', + 'description' => 'The number of entries per page. Default value: 10. Valid values: 1 to 100.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '10', + ], + ], + [ + 'name' => 'SortBy', + 'in' => 'query', + 'schema' => [ + 'title' => '排序参数,默认根据创建时间倒序', + 'description' => 'The sorting order. By default, the query results are sorted by creation time in descending order.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'CreationTime:Desc', + ], + ], + [ + 'name' => 'Name', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the hotword library.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '热词库使用名称', + ], + ], + [ + 'name' => 'UsageScenario', + 'in' => 'query', + 'schema' => [ + 'title' => '词库的使用场景'."\n" + .'● ASR智能文本识别:ASR'."\n" + .'● 结构化媒资:StructuredMediaAssets'."\n" + .'● 视频翻译:VideoTranslation', + 'description' => 'The usage scenario of the hotword library. Valid values:'."\n" + ."\n" + .'* ASR: Automatic Speech Recognition'."\n" + .'* StructuredMediaAssets: structured media analysis'."\n" + .'* VideoTranslation: Video translation. This field cannot be modified after the hotword library is created.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'ASR', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'title' => '筛选开始时间', + 'description' => 'The beginning of the time range to query.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2020-12-26T04:11:10Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'title' => '筛选结束时间', + 'description' => 'The end of the time range to query.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2020-12-26T04:11:10Z', + ], + ], + [ + 'name' => 'MaxResults', + 'in' => 'query', + 'schema' => [ + 'title' => '本次请求所返回的最大记录条数。'."\n" + ."\n" + .'最大值:100,默认值:10', + 'description' => 'The maximum number of entries to return.'."\n" + ."\n" + .'Default value: 10. Valid values: 1 to 100.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '10', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID。', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '****9262E3DA-07FA-4862-FCBB6BC61D08*****', + ], + 'NextToken' => [ + 'title' => '用来表示当前调用返回读取到的位置,空代表数据已经读取完毕。', + 'description' => 'A pagination token that can be used in the next request to retrieve a new page of results. If it is empty, all results are returned.'."\n", + 'type' => 'string', + 'example' => 'CBB6BC61D08', + ], + 'MaxResults' => [ + 'description' => 'The maximum number of hotword libraries that can be returned.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + ], + 'TotalCount' => [ + 'description' => 'The total number of hotword libraries.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '20', + ], + 'HotwordLibraryList' => [ + 'description' => 'The hotword libraries.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Description' => [ + 'description' => 'The description of the hotword library. It can be up to 200 characters in length.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'UsageScenario' => [ + 'description' => 'The usage scenario of the hotword library. Valid values:'."\n" + ."\n" + .'* ASR: Automatic Speech Recognition'."\n" + .'* StructuredMediaAssets: structured media analysis'."\n" + .'* VideoTranslation: Video translation This field cannot be modified after the hotword library is created.'."\n", + 'type' => 'string', + 'example' => 'ASR', + ], + 'ModifiedTime' => [ + 'description' => 'The time when the hotword library was last modified.'."\n", + 'type' => 'string', + 'example' => '2017-01-11T12:00:00Z'."\n", + ], + 'CreationTime' => [ + 'description' => 'The time when the hotword library was created.'."\n", + 'type' => 'string', + 'example' => '2017-01-11T12:00:00Z', + ], + 'HotwordLibraryId' => [ + 'description' => 'The ID of the hotword library.'."\n", + 'type' => 'string', + 'example' => 'a93b91141c0f422fa114af203f8b****', + ], + 'Name' => [ + 'description' => 'The name of the hotword library.'."\n", + 'type' => 'string', + 'example' => 'my_hotwords', + ], + ], + 'description' => '', + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"****9262E3DA-07FA-4862-FCBB6BC61D08*****\\",\\n \\"NextToken\\": \\"CBB6BC61D08\\",\\n \\"MaxResults\\": 10,\\n \\"TotalCount\\": 20,\\n \\"HotwordLibraryList\\": [\\n {\\n \\"Description\\": \\"存放名人的词库\\",\\n \\"UsageScenario\\": \\"ASR\\",\\n \\"ModifiedTime\\": \\"2017-01-11T12:00:00Z\\\\n\\",\\n \\"CreationTime\\": \\"2017-01-11T12:00:00Z\\",\\n \\"HotwordLibraryId\\": \\"a93b91141c0f422fa114af203f8b****\\",\\n \\"Name\\": \\"my_hotwords\\"\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'ListHotwordLibraries', + 'description' => '## [](#)'."\n" + ."\n" + .'* You can call this operation to get information about all hotword libraries that you created.'."\n" + .'* The API supports fuzzy search by `Name`, filtering by creation time range, and pagination.'."\n" + .'* By default, the results are sorted by creation time in descending order. You can set `SortBy` to change the sorting order.'."\n" + .'* The maximum number of entries returned for each request is 100. Default value: 10.'."\n" + .'* Use `NextToken` for pagination.'."\n", + ], + 'UpdateHotwordLibrary' => [ + 'summary' => 'Modifies a specified hotword library, including its name, description, and hotword list.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREice405U0J', + ], + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'Name', + 'in' => 'query', + 'schema' => [ + 'title' => '词库名称,长度上限100', + 'description' => 'The name of the hotword library. It can be up to 100 characters in length.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'my_hotwords', + ], + ], + [ + 'name' => 'Description', + 'in' => 'query', + 'schema' => [ + 'title' => '描述,长度上限200', + 'description' => 'The description of the hotword library. It can be up to 200 characters in length.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '存放名人的词库', + ], + ], + [ + 'name' => 'Hotwords', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'title' => '热词列表,长度上限300', + 'description' => 'The hotword list. You can add up to 300 hotword entries to a single library.'."\n", + 'type' => 'array', + 'items' => [ + 'title' => '热词信息', + 'description' => 'The hotword information.'."\n", + 'required' => false, + '$ref' => '#/components/schemas/Hotword', + ], + 'required' => false, + 'example' => '', + ], + ], + [ + 'name' => 'HotwordLibraryId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the hotword library.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '*a0052ff71efbfd4e7e6c66*', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '*3B-0E1A-586A-AC29-742247*', + ], + 'Success' => [ + 'title' => '热词库Id', + 'description' => 'The ID of the hotword library.'."\n", + 'type' => 'string', + 'example' => '****96e8864746a0b6f3****', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"*3B-0E1A-586A-AC29-742247*\\",\\n \\"Success\\": \\"****96e8864746a0b6f3****\\"\\n}","type":"json"}]', + 'title' => 'UpdateHotwordLibrary', + 'description' => '## [](#)'."\n" + ."\n" + .'* You can call this operation to modify a specified hotword library.'."\n" + .'* The hotword library ID (`HotwordLibraryId`) is required to identify the library that requires modification.'."\n" + .'* You can modify its name (`Name` ), description (`Description` ), and hotword list (`HotWords`).'."\n" + .'* Each hotword in the list can also be modified, including its content (`Text`), weight (`Weight`), language (`Language`), and translation results (`TranspositionResultList`).'."\n" + .'* A single account supports up to 100 hotword libraries, each containing a maximum of 300 hotword entries. In a library, the combination of `language` and `text` of an entry must be unique. The combination of `TranslatedText` and `TargetLanguage` in `TranspositionResultList` must also be unique.'."\n", + ], + 'CreateHotwordLibrary' => [ + 'summary' => 'Creates a hotword library.', + 'path' => '', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREice405U0J', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'Name', + 'in' => 'query', + 'schema' => [ + 'title' => '词库名称,长度上限100', + 'description' => 'The name of the hotword library. It can be up to 100 characters in length.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'my_hotwords', + ], + ], + [ + 'name' => 'Description', + 'in' => 'query', + 'schema' => [ + 'title' => '描述,长度上限200', + 'description' => 'The description of the hotword library. It can be up to 200 characters in length.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '存放名人的词库', + ], + ], + [ + 'name' => 'UsageScenario', + 'in' => 'query', + 'schema' => [ + 'title' => '词库的使用场景'."\n" + .'● ASR智能文本识别:ASR'."\n" + .'● 结构化媒资:StructuredMediaAssets'."\n" + .'● 视频翻译:VideoTranslation'."\n" + .'词库一旦新增后,该字段不可修改', + 'description' => 'The usage scenario of the hotword library. Valid values:'."\n" + ."\n" + .'· ASR: Automatic Speech Recognition'."\n" + ."\n" + .'· StructuredMediaAssets: structured media analysis'."\n" + ."\n" + .'· VideoTranslation: Video translation.'."\n" + ."\n" + .'This field cannot be modified after the hotword library is created.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'ASR', + ], + ], + [ + 'name' => 'Hotwords', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'title' => '热词列表,长度上限300', + 'description' => 'The hotword list. You can add up to 300 hotword entries to a single library.'."\n", + 'type' => 'array', + 'items' => [ + 'title' => '热词信息', + 'description' => 'The hotword information.'."\n", + 'required' => false, + '$ref' => '#/components/schemas/Hotword', + ], + 'required' => true, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '13cbb83e-043c-4728-ac35-*****', + ], + 'HotwordLibraryId' => [ + 'title' => '热词库Id', + 'description' => 'The ID of the hotword library.'."\n", + 'type' => 'string', + 'example' => '****96e8864746a0b6f3****', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"13cbb83e-043c-4728-ac35-*****\\",\\n \\"HotwordLibraryId\\": \\"****96e8864746a0b6f3****\\"\\n}","type":"json"}]', + 'title' => 'CreateHotwordLibrary', + ], + 'CreateAvatarTrainingJob' => [ + 'summary' => 'Creates an avatar training job. You can configure the basic information of the avatar and the materials required for the training.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'AvatarName', + 'in' => 'query', + 'schema' => [ + 'description' => '* The name of the digital human.'."\n" + .'* The name can be up to seven characters in length.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '', + 'maxLength' => 7, + ], + ], + [ + 'name' => 'AvatarDescription', + 'in' => 'query', + 'schema' => [ + 'description' => '* The description of the digital human.'."\n" + .'* The description can be up to 1,000 characters in length.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '', + 'maxLength' => 1027, + ], + ], + [ + 'name' => 'AvatarType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of the digital human.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2DAvatar', + ], + ], + [ + 'name' => 'Thumbnail', + 'in' => 'query', + 'schema' => [ + 'description' => '* The thumbnail URL.'."\n" + .'* After the digital human is trained, the thumbnail is uploaded to this URL.'."\n" + .'* The URL must be a valid public Object Storage Service (OSS) URL.'."\n" + .'* The URL can be up to 512 characters in length.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'https://your-bucket.oss-cn-hangzhou.aliyuncs.com/thumbnail.png', + 'maxLength' => 512, + ], + ], + [ + 'name' => 'Portrait', + 'in' => 'query', + 'schema' => [ + 'description' => '* The media asset ID of the portrait image.'."\n" + .'* The value must be 32 characters in length.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '****571c704445f9a0ee011406c2****', + 'maxLength' => 32, + 'minLength' => 32, + ], + ], + [ + 'name' => 'Video', + 'in' => 'query', + 'schema' => [ + 'description' => '* The ID of the video used for training.'."\n" + .'* The value must be 32 characters in length.'."\n" + .'* Supported formats: MP4, MOV, and WebM.'."\n" + .'* The duration of the video must be 5 to 15 minutes.'."\n" + .'* The resolution of the video must be 1920×1080 or 1080×1920.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '****571c704445f9a0ee011406c2****', + 'maxLength' => 32, + 'minLength' => 32, + ], + ], + [ + 'name' => 'Transparent', + 'in' => 'query', + 'schema' => [ + 'description' => '* Specifies whether the training video supports alpha channels.'."\n" + ."\n" + .' **'."\n" + ."\n" + .' **Note**: Make sure that the current settings are consistent with those of the submitted training video. Otherwise, the digital human may malfunction.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'True', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Data' => [ + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'JobId' => [ + 'description' => 'The ID of the digital human training job.'."\n", + 'type' => 'string', + 'example' => '****d718e2ff4f018ccf419a7b71****', + ], + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"JobId\\": \\"****d718e2ff4f018ccf419a7b71****\\"\\n }\\n}","type":"json"}]', + 'title' => 'CreateAvatarTrainingJob', + ], + 'UpdateAvatarTrainingJob' => [ + 'summary' => 'Modifies a digital human training job. You can modify the basic information or update parameters such as Video and Transparent for retraining if the training failed.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'JobId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the digital human training job.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '****cdb3e74639973036bc84****', + ], + ], + [ + 'name' => 'AvatarName', + 'in' => 'query', + 'schema' => [ + 'description' => '* The name of the digital human.'."\n" + .'* The name can be up to seven characters in length.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '', + 'maxLength' => 7, + ], + ], + [ + 'name' => 'AvatarDescription', + 'in' => 'query', + 'schema' => [ + 'description' => '* The description of the digital human.'."\n" + .'* The description can be up to 1,000 characters in length.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '', + 'maxLength' => 1024, + ], + ], + [ + 'name' => 'Thumbnail', + 'in' => 'query', + 'schema' => [ + 'description' => '* The thumbnail URL.'."\n" + .'* After the digital human is trained, the thumbnail is uploaded to this URL.'."\n" + .'* The URL must be a valid public Object Storage Service (OSS) URL.'."\n" + .'* The URL can be up to 512 characters in length.'."\n" + .'* The URL cannot be updated after the digital human is trained.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'https://your-bucket.oss-cn-hangzhou.aliyuncs.com/thumbnail.png', + 'maxLength' => 512, + ], + ], + [ + 'name' => 'Portrait', + 'in' => 'query', + 'schema' => [ + 'description' => '* The media asset ID of the portrait image.'."\n" + .'* The value must be 32 characters in length.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '****571c704445f9a0ee011406c2****', + 'maxLength' => 32, + 'minLength' => 32, + ], + ], + [ + 'name' => 'Video', + 'in' => 'query', + 'schema' => [ + 'description' => '* The ID of the video used for training.'."\n" + .'* The value must be 32 characters in length.'."\n" + .'* Supported formats: MP4, MOV, and WebM.'."\n" + .'* The duration of the video must be 5 to 15 minutes.'."\n" + .'* The resolution of the video must be 1920×1080 or 1080×1920.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '****571c704445f9a0ee011406c2****', + 'maxLength' => 32, + 'minLength' => 32, + ], + ], + [ + 'name' => 'Transparent', + 'in' => 'query', + 'schema' => [ + 'description' => '* Indicates whether the input video supports alpha channels.'."\n" + ."\n" + .'* You can modify this parameter only if the job is in the Init or Fail state.'."\n" + ."\n" + .' **'."\n" + ."\n" + .' **Note**: Make sure that the current settings are consistent with those of the submitted training video. Otherwise, the digital human may malfunction.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'True', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Data' => [ + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'JobId' => [ + 'description' => 'The ID of the digital human training job.'."\n", + 'type' => 'string', + 'example' => '****d718e2ff4f018ccf419a7b71****', + ], + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"JobId\\": \\"****d718e2ff4f018ccf419a7b71****\\"\\n }\\n}","type":"json"}]', + 'title' => 'UpdateAvatarTrainingJob', + ], + 'SubmitAvatarTrainingJob' => [ + 'summary' => 'Submits a digital human training job. You can call this operation to submit a job the first time or submit a job again with updated parameters if the training failed.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'JobId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the digital human training job.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '*****ACB-44F2-5F2D-88D7-1283E70*****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Data' => [ + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'JobId' => [ + 'description' => 'The ID of the digital human training job.'."\n", + 'type' => 'string', + 'example' => '****29faef8144638ba42eb8e037****', + ], + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"*****ACB-44F2-5F2D-88D7-1283E70*****\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"JobId\\": \\"****29faef8144638ba42eb8e037****\\"\\n }\\n}","type":"json"}]', + 'title' => 'SubmitAvatarTrainingJob', + ], + 'GetAvatarTrainingJob' => [ + 'summary' => 'Queries the information about a digital human training job.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'JobId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the digital human training job.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'Data' => [ + 'description' => 'The data returned if the request was successful.'."\n", + 'type' => 'object', + 'properties' => [ + 'AvatarTrainingJob' => [ + 'description' => 'The information about the digital human training job.'."\n", + 'type' => 'object', + 'properties' => [ + 'JobId' => [ + 'description' => 'The ID of the digital human training job.'."\n", + 'type' => 'string', + 'example' => '****55d86f7f4587943ce7734d6b****', + ], + 'AvatarId' => [ + 'description' => 'The ID of the digital human.'."\n", + 'type' => 'string', + 'example' => 'Avatar-XXXX', + ], + 'AvatarName' => [ + 'description' => 'The name of the digital human.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'AvatarDescription' => [ + 'description' => 'The description of the digital human.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'AvatarType' => [ + 'description' => 'The type of the digital human.'."\n", + 'type' => 'string', + 'example' => '2DAvatar', + ], + 'Status' => [ + 'description' => '* The state of the digital human training job.'."\n" + .'* Valid values: Init, Queuing, Training, Success, and Fail.'."\n", + 'type' => 'string', + 'example' => 'Success', + ], + 'Message' => [ + 'description' => 'The status description.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'Thumbnail' => [ + 'description' => 'The thumbnail URL.'."\n", + 'type' => 'string', + 'example' => 'https://your-bucket.oss-cn-hangzhou.aliyuncs.com/thumbnail.png', + ], + 'Portrait' => [ + 'description' => 'The media asset ID of the portrait image.'."\n", + 'type' => 'string', + 'example' => '****571c704445f9a0ee011406c2****', + ], + 'Video' => [ + 'description' => 'The ID of the video used for training.'."\n", + 'type' => 'string', + 'example' => '****571c704445f9a0ee011406c2****', + ], + 'Transparent' => [ + 'description' => 'Indicates whether the input video supports alpha channels.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'FirstTrainingTime' => [ + 'description' => '* The time when the first training was initiated.'."\n" + .'* The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2020-12-23T13:33:40Z', + ], + 'LastTrainingTime' => [ + 'description' => '* The time when the last training was initiated.'."\n" + .'* The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2020-12-23T13:33:40Z', + ], + ], + ], + ], + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"Data\\": {\\n \\"AvatarTrainingJob\\": {\\n \\"JobId\\": \\"****55d86f7f4587943ce7734d6b****\\",\\n \\"AvatarId\\": \\"Avatar-XXXX\\",\\n \\"AvatarName\\": \\"小数\\",\\n \\"AvatarDescription\\": \\"这是一个数字人,用于某某场景。\\",\\n \\"AvatarType\\": \\"2DAvatar\\",\\n \\"Status\\": \\"Success\\\\n\\",\\n \\"Message\\": \\"训练成功\\",\\n \\"Thumbnail\\": \\"https://your-bucket.oss-cn-hangzhou.aliyuncs.com/thumbnail.png\\",\\n \\"Portrait\\": \\"****571c704445f9a0ee011406c2****\\",\\n \\"Video\\": \\"****571c704445f9a0ee011406c2****\\",\\n \\"Transparent\\": true,\\n \\"FirstTrainingTime\\": \\"2020-12-23T13:33:40Z\\",\\n \\"LastTrainingTime\\": \\"2020-12-23T13:33:40Z\\"\\n }\\n },\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => 'GetAvatarTrainingJob', + ], + 'DeleteAvatarTrainingJob' => [ + 'summary' => 'Deletes a digital human training job that is in the Init or Fail state.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'JobId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the digital human training job.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Data' => [ + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'JobId' => [ + 'description' => 'The ID of the digital human training job.'."\n", + 'type' => 'string', + 'example' => '****d718e2ff4f018ccf419a7b71****', + ], + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"JobId\\": \\"****d718e2ff4f018ccf419a7b71****\\"\\n }\\n}","type":"json"}]', + 'title' => 'DeleteAvatarTrainingJob', + ], + 'ListAvatarTrainingJobs' => [ + 'summary' => 'Queries a list of digital human training jobs.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'PageNo', + 'in' => 'query', + 'allowEmptyValue' => false, + 'schema' => [ + 'description' => '* The page number.'."\n" + .'* Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + 'default' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => '* The number of entries per page.'."\n" + .'* Default value: 10.'."\n" + .'* Valid values: 1 to 100.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '100', + 'example' => '10', + 'default' => '10', + ], + ], + [ + 'name' => 'Status', + 'in' => 'query', + 'schema' => [ + 'description' => '* The job state.'."\n" + .'* Valid values: Init, Queuing, Training, Success, and Fail.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'Success', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '****63E8B7C7-4812-46AD-0FA56029AC86****', + ], + 'Data' => [ + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'AvatarTrainingJobList' => [ + 'description' => 'The list of digital human training jobs.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'JobId' => [ + 'description' => 'The ID of the digital human training job.'."\n", + 'type' => 'string', + 'example' => '*****aded114489ea02e0addf93*****', + ], + 'AvatarId' => [ + 'description' => 'The ID of the digital human.'."\n", + 'type' => 'string', + 'example' => 'Avatar-XXX', + ], + 'AvatarName' => [ + 'description' => 'The name of the digital human.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'AvatarDescription' => [ + 'description' => 'The description of the digital human.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'AvatarType' => [ + 'description' => 'The type of the digital human.'."\n", + 'type' => 'string', + 'example' => '2DAvatar', + ], + 'Status' => [ + 'description' => 'The state of the digital human training job.'."\n", + 'type' => 'string', + 'example' => 'Normal', + ], + 'Message' => [ + 'description' => 'The status description.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'Portrait' => [ + 'description' => 'The media asset ID of the portrait image.'."\n", + 'type' => 'string', + 'example' => '*****aded114489ea02e0addf93*****', + ], + 'FirstTrainingTime' => [ + 'description' => '* The time when the first training was initiated.'."\n" + .'* The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2020-12-23T13:33:40Z', + ], + 'LastTrainingTime' => [ + 'description' => '* The time when the last training was initiated.'."\n" + .'* The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2020-12-23T13:33:40Z', + ], + 'CreateTime' => [ + 'description' => '* The time when the job was created.'."\n" + .'* The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2020-12-23T13:33:40Z', + ], + ], + 'description' => '', + ], + ], + 'TotalCount' => [ + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '3', + ], + ], + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"****63E8B7C7-4812-46AD-0FA56029AC86****\\",\\n \\"Data\\": {\\n \\"AvatarTrainingJobList\\": [\\n {\\n \\"JobId\\": \\"*****aded114489ea02e0addf93*****\\",\\n \\"AvatarId\\": \\"Avatar-XXX\\",\\n \\"AvatarName\\": \\"小数\\",\\n \\"AvatarDescription\\": \\"这是一个数字人,用于某某场景。\\",\\n \\"AvatarType\\": \\"2DAvatar\\",\\n \\"Status\\": \\"Success\\",\\n \\"Message\\": \\"训练成功\\",\\n \\"Portrait\\": \\"*****aded114489ea02e0addf93*****\\",\\n \\"FirstTrainingTime\\": \\"2020-12-23T13:33:40Z\\",\\n \\"LastTrainingTime\\": \\"2020-12-23T13:33:40Z\\",\\n \\"CreateTime\\": \\"2020-12-23T13:33:40Z\\"\\n }\\n ],\\n \\"TotalCount\\": 3\\n },\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => 'ListAvatarTrainingJobs', + ], + 'GetAvatar' => [ + 'summary' => 'Queries the information about a trained digital human.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'AvatarId', + 'in' => 'query', + 'schema' => [ + 'description' => '* The ID of the digital human.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'Avatar-XXXX', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'Data' => [ + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'Avatar' => [ + 'description' => 'The information about the digital human.'."\n", + 'type' => 'object', + 'properties' => [ + 'AvatarId' => [ + 'description' => 'The ID of the digital human.'."\n", + 'type' => 'string', + 'example' => 'Avatar-XXXX', + ], + 'AvatarName' => [ + 'description' => 'The name of the digital human.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'AvatarDescription' => [ + 'description' => 'The description of the digital human.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'AvatarType' => [ + 'description' => 'The type of the digital human.'."\n", + 'type' => 'string', + 'example' => '2DAvatar', + ], + 'Thumbnail' => [ + 'description' => 'The thumbnail URL.'."\n", + 'type' => 'string', + 'example' => 'https://your-bucket.oss-cn-hangzhou.aliyuncs.com/thumbnail.png', + ], + 'Portrait' => [ + 'description' => 'The media asset ID of the portrait image.'."\n", + 'type' => 'string', + 'example' => '****571c704445f9a0ee011406c2****', + ], + 'Transparent' => [ + 'description' => 'Indicates whether the digital human supports alpha channels.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Width' => [ + 'description' => 'The width of the digital human image in pixels.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1080', + ], + 'Height' => [ + 'description' => 'The height of the digital human image in pixels.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1920', + ], + ], + ], + ], + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"Data\\": {\\n \\"Avatar\\": {\\n \\"AvatarId\\": \\"Avatar-XXXX\\",\\n \\"AvatarName\\": \\"小数\\",\\n \\"AvatarDescription\\": \\"这是一个数字人,用于某某场景。\\",\\n \\"AvatarType\\": \\"2DAvatar\\",\\n \\"Thumbnail\\": \\"https://your-bucket.oss-cn-hangzhou.aliyuncs.com/thumbnail.png\\",\\n \\"Portrait\\": \\"****571c704445f9a0ee011406c2****\\",\\n \\"Transparent\\": true,\\n \\"Width\\": 1080,\\n \\"Height\\": 1920\\n }\\n },\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => 'GetAvatar', + ], + 'ListAvatars' => [ + 'summary' => 'Queries a list of trained digital humans.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'PageNo', + 'in' => 'query', + 'allowEmptyValue' => false, + 'schema' => [ + 'description' => '* The page number.'."\n" + .'* Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + 'default' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => '* The number of entries per page.'."\n" + .'* Default value: 10.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '100', + 'example' => '10', + 'default' => '10', + ], + ], + [ + 'name' => 'AvatarType', + 'in' => 'query', + 'schema' => [ + 'description' => '* The type of the digital human.'."\n" + .'* 2DAvatar'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2DAvatar', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'Data' => [ + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'AvatarList' => [ + 'description' => 'The queried digital humans.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'AvatarId' => [ + 'description' => 'The ID of the digital human.'."\n", + 'type' => 'string', + 'example' => 'Avatar-XXX', + ], + 'AvatarName' => [ + 'description' => 'The name of the digital human.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'AvatarDescription' => [ + 'description' => 'The description of the digital human.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'AvatarType' => [ + 'description' => 'The type of the digital human.'."\n", + 'type' => 'string', + 'example' => '2DAvatar', + ], + 'Thumbnail' => [ + 'description' => 'The thumbnail URL.'."\n", + 'type' => 'string', + 'example' => 'https://your-bucket.oss-cn-hangzhou.aliyuncs.com/thumbnail.png', + ], + 'Portrait' => [ + 'description' => 'The media asset ID of the portrait image.'."\n", + 'type' => 'string', + 'example' => '****571c704445f9a0ee011406c2****', + ], + 'Transparent' => [ + 'description' => 'Indicates whether the digital human image supports the alpha channels.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + 'TotalCount' => [ + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + ], + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"Data\\": {\\n \\"AvatarList\\": [\\n {\\n \\"AvatarId\\": \\"Avatar-XXX\\",\\n \\"AvatarName\\": \\"小数\\",\\n \\"AvatarDescription\\": \\"这是一个数字人,用于某某场景。\\",\\n \\"AvatarType\\": \\"2DAvatar\\",\\n \\"Thumbnail\\": \\"https://your-bucket.oss-cn-hangzhou.aliyuncs.com/thumbnail.png\\",\\n \\"Portrait\\": \\"****571c704445f9a0ee011406c2****\\",\\n \\"Transparent\\": true\\n }\\n ],\\n \\"TotalCount\\": 1\\n },\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => 'ListAvatars', + ], + 'CreateCustomizedVoiceJob' => [ + 'summary' => 'Creates a human voice cloning job. You can configure the basic information of the human voice cloning job.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'VoiceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The voice ID. It can be the English name or Chinese Pinyin of the voice.'."\n" + ."\n" + .'* The value must be a unique ID that is not used by other custom voices.'."\n" + .'* The ID can be up to 32 characters in length.'."\n" + .'* Only letters and digits are supported.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'xiaozhuan', + 'maxLength' => 32, + 'minLength' => 0, + ], + ], + [ + 'name' => 'VoiceName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The voice name.'."\n" + ."\n" + .'* The name can be up to 32 characters in length.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '', + 'maxLength' => 32, + 'minLength' => 0, + ], + ], + [ + 'name' => 'VoiceDesc', + 'in' => 'query', + 'schema' => [ + 'description' => 'The voice description.'."\n" + ."\n" + .'* The description can be up to 256 characters in length.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '', + 'maxLength' => 256, + 'minLength' => 0, + ], + ], + [ + 'name' => 'Gender', + 'in' => 'query', + 'schema' => [ + 'description' => 'The gender. Valid values:'."\n" + ."\n" + .'* female'."\n" + .'* male'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'female', + 'enum' => [ + 'female', + 'male', + ], + ], + ], + [ + 'name' => 'Scenario', + 'in' => 'query', + 'schema' => [ + 'description' => 'The scenario. Valid values:'."\n" + ."\n" + .'* story'."\n" + .'* interaction'."\n" + .'* navigation'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'story', + 'enum' => [ + 'story', + 'interaction', + 'navigation', + ], + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values: true false'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Data' => [ + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'VoiceId' => [ + 'description' => 'The voice ID.'."\n", + 'type' => 'string', + 'example' => 'xiaozhuan', + ], + 'JobId' => [ + 'description' => 'The ID of the human voice cloning job.'."\n", + 'type' => 'string', + 'example' => '****29faef8144638ba42eb8e037****', + ], + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"VoiceId\\": \\"xiaozhuan\\",\\n \\"JobId\\": \\"****29faef8144638ba42eb8e037****\\"\\n }\\n}","type":"json"}]', + 'title' => 'CreateCustomizedVoiceJob', + ], + 'GetDemonstrationForCustomizedVoiceJob' => [ + 'summary' => 'Queries the text to be read and sample audio for training a personalized human voice.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'Scenario', + 'in' => 'query', + 'schema' => [ + 'description' => 'The demonstration scenario.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* **story**'."\n" + .'* **interaction**'."\n" + .'* **navigation**'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'story', + 'enum' => [ + 'story', + 'interaction', + 'navigation', + ], + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Data' => [ + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'DemonstrationList' => [ + 'description' => 'A list of 20 text entries to be read and the corresponding sample audio.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'DemoAudio' => [ + 'description' => 'The URL of the sample audio.'."\n" + ."\n" + .'* The value is an Object Storage Service (OSS) URL.'."\n" + ."\n" + .' **'."\n" + ."\n" + .' **Note**: The URL expires in 12 hours.'."\n", + 'type' => 'string', + 'example' => 'http://bucket.oss-cn-shanghai.aliyuncs.com/1.wav', + ], + 'Text' => [ + 'description' => 'The text content to be read.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'AudioId' => [ + 'description' => 'The sequence number of the text, which corresponds to the AduioRecordId parameter to be passed during audio check.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '2', + ], + ], + 'description' => '', + ], + ], + ], + ], + ], + ], + ], + [], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"DemonstrationList\\": [\\n {\\n \\"DemoAudio\\": \\"http://bucket.oss-cn-shanghai.aliyuncs.com/1.wav\\",\\n \\"Text\\": \\"不行,他想了一下,我不能这样对国王说,这是在撒谎。\\",\\n \\"AudioId\\": 2\\n }\\n ]\\n }\\n}","type":"json"}]', + 'title' => 'GetDemonstrationForCustomizedVoiceJob', + ], + 'DetectAudioForCustomizedVoiceJob' => [ + 'summary' => 'Checks whether the reading of users has issues, such as noticeable pronunciation errors or background noise. After the audio is checked on the cloud, the qualified audio is temporarily stored on the cloud for subsequent training. Do not skip this step.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'VoiceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The voice ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'xiaozhuan', + ], + ], + [ + 'name' => 'RecordUrl', + 'in' => 'query', + 'schema' => [ + 'description' => 'The URL of the recording file.'."\n" + ."\n" + .'> : The URL must be an Object Storage Service (OSS) URL within your Alibaba Cloud account. The OSS bucket must be in the same region in which IMS is activated.'."\n" + ."\n" + .'> : The audio file must be in the WAV or PCM format and must be a 16-bit mono audio file at 48000 Hz.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'https://your-bucket.oss-cn-hangzhou.aliyuncs.com/record1.wav', + ], + ], + [ + 'name' => 'AudioRecordId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The sequence number of the recording file.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'maximum' => '20', + 'minimum' => '1', + 'example' => '1', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values: true false'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Data' => [ + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'Pass' => [ + 'description' => 'Indicates whether the audio file passes the check. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'boolean', + 'example' => 'false', + ], + 'Reason' => [ + 'description' => 'The reason returned if the audio file failed to pass the check.'."\n", + 'type' => 'string', + 'example' => '', + ], + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"Pass\\": false,\\n \\"Reason\\": \\"发音错误,请准确读出文案中的内容\\"\\n }\\n}","type":"json"}]', + 'title' => 'DetectAudioForCustomizedVoiceJob', + ], + 'SubmitCustomizedVoiceJob' => [ + 'summary' => 'Submits a basic voice cloning job.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'VoiceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The voice ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'xiaozhuan', + 'maxLength' => 32, + 'minLength' => 0, + ], + ], + [ + 'name' => 'DemoAudioMediaURL', + 'in' => 'query', + 'schema' => [ + 'description' => 'The URL of the sample audio file.'."\n" + ."\n" + .'* If this parameter is specified, a sample audio file is generated at the specified Object Storage Service (OSS) URL after the training is complete.'."\n" + ."\n" + .'* If this parameter is not specified, no sample audio file is generated.'."\n" + ."\n" + .' **'."\n" + ."\n" + .' **Note**: The URL must be a valid public OSS URL within your Alibaba Cloud account.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'https://your-bucket.oss-cn-shanghai.aliyuncs.com/demo.MP3', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Data' => [ + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'JobId' => [ + 'description' => 'The ID of the human voice cloning job.'."\n", + 'type' => 'string', + 'example' => '****d718e2ff4f018ccf419a7b71****', + ], + 'VoiceId' => [ + 'description' => 'The voice ID.'."\n", + 'type' => 'string', + 'example' => 'xiaozhuan', + ], + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"JobId\\": \\"****d718e2ff4f018ccf419a7b71****\\",\\n \\"VoiceId\\": \\"xiaozhuan\\"\\n }\\n}","type":"json"}]', + 'title' => 'SubmitCustomizedVoiceJob', + ], + 'SubmitStandardCustomizedVoiceJob' => [ + 'summary' => 'Submits a standard human voice cloning job. After you call this operation, the JobId is returned. The training process is asynchronous. During training, you can call the GetCustomizedVoiceJob operation to query information such as the job state.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'VoiceName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The voice name.'."\n" + ."\n" + .'* The name can be up to 32 characters in length.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '', + ], + ], + [ + 'name' => 'Gender', + 'in' => 'query', + 'schema' => [ + 'description' => 'The gender. Valid values:'."\n" + ."\n" + .'* female'."\n" + .'* male'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'female', + ], + ], + [ + 'name' => 'Authentication', + 'in' => 'query', + 'schema' => [ + 'description' => '* The media asset ID of the authentication audio.'."\n" + ."\n" + .'* Upload an audio file for identity authentication. If the voiceprint extracted from the uploaded file differs from that of the training file, the job fails.'."\n" + ."\n" + .' **'."\n" + ."\n" + .' **Note**: Clearly read and record the following text: I confirm to customize human voice cloning and provide audio files that contain my voice for training. I promise that I am responsible for the customized content and that the content complies with laws and regulations.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '****571c704445f9a0ee011406c2****', + ], + ], + [ + 'name' => 'Audios', + 'in' => 'query', + 'schema' => [ + 'description' => '* The material assets IDs of the materials for training.'."\n" + .'* Separate multiple media IDs with commas (,).'."\n" + ."\n" + .'> : The total duration of all materials must be within 15 to 30 minutes. The duration of each material must be greater than 1 minute.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '****571c704445f9a0ee011406c2****,****571c704445f9a0ee011406c2****,****571c704445f9a0ee011406c2****', + ], + ], + [ + 'name' => 'DemoAudioMediaURL', + 'in' => 'query', + 'schema' => [ + 'description' => 'The URL of the sample audio file.'."\n" + ."\n" + .'* If this parameter is specified, a sample audio file is generated at the specified Object Storage Service (OSS) URL after the training is complete.'."\n" + ."\n" + .'* If this parameter is not specified, no sample audio file is generated.'."\n" + ."\n" + .' **'."\n" + ."\n" + .' **Note**: The URL must be a valid public OSS URL within your Alibaba Cloud account.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'https://your-bucket.oss-cn-shanghai.aliyuncs.com/demo.mp3', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '****63E8B7C7-4812-46AD-0FA56029AC86****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Data' => [ + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'JobId' => [ + 'description' => 'The ID of the human voice cloning job.'."\n", + 'type' => 'string', + 'example' => '****d718e2ff4f018ccf419a7b71****', + ], + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"****63E8B7C7-4812-46AD-0FA56029AC86****\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"JobId\\": \\"****d718e2ff4f018ccf419a7b71****\\"\\n }\\n}","errorExample":""},{"type":"xml","example":"<SubmitStandardCustomizedVoiceJobResponse>\\n <RequestId>****63E8B7C7-4812-46AD-0FA56029AC86****</RequestId>\\n <Success>true</Success>\\n <Data>\\n <JobId>****d718e2ff4f018ccf419a7b71****</JobId>\\n </Data>\\n</SubmitStandardCustomizedVoiceJobResponse>","errorExample":""}]', + 'title' => 'SubmitStandardCustomizedVoiceJob', + ], + 'GetCustomizedVoiceJob' => [ + 'summary' => 'Queries the information about a human voice cloning job.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'JobId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the human voice cloning job.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '****63E8B7C7-4812-46AD-0FA56029AC86****', + ], + 'Data' => [ + 'description' => 'The data returned if the request was successful.'."\n", + 'type' => 'object', + 'properties' => [ + 'CustomizedVoiceJob' => [ + 'description' => 'The information about the human voice cloning job.'."\n", + 'type' => 'object', + 'properties' => [ + 'JobId' => [ + 'description' => 'The ID of the human voice cloning job.'."\n", + 'type' => 'string', + 'example' => '****571c704445f9a0ee011406c2****', + ], + 'VoiceId' => [ + 'description' => 'The voice ID.'."\n", + 'type' => 'string', + 'example' => 'xiaozhuan', + ], + 'Status' => [ + 'description' => 'The job state. Valid values:'."\n" + ."\n" + .'* Initialization'."\n" + .'* AudioDetecting'."\n" + .'* PreTraining'."\n" + .'* Training'."\n" + .'* Success'."\n" + .'* Fail'."\n", + 'type' => 'string', + 'example' => 'Fail', + ], + 'Message' => [ + 'description' => 'The status description.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'Type' => [ + 'description' => 'The type of the human voice cloning job. Valid values:'."\n" + ."\n" + .'* Basic'."\n" + .'* Standard'."\n", + 'type' => 'string', + 'example' => 'Standard', + ], + 'VoiceName' => [ + 'description' => 'The voice name.'."\n", + 'type' => 'string', + 'example' => 'Xiaozhuan'."\n", + ], + 'VoiceDesc' => [ + 'description' => 'The voice description.'."\n", + 'type' => 'string', + 'example' => 'This is an exclusive voice'."\n", + ], + 'Scenario' => [ + 'description' => 'The scenario. Valid values:'."\n" + ."\n" + .'* story'."\n" + .'* interaction'."\n" + .'* navigation'."\n", + 'type' => 'string', + 'example' => 'story', + ], + 'Gender' => [ + 'description' => 'The gender. Valid values:'."\n" + ."\n" + .'* female'."\n" + .'* male'."\n", + 'type' => 'string', + 'example' => 'female', + ], + 'CreateTime' => [ + 'description' => 'The time when the job was created. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2023-06-07T02:27:08Z', + ], + ], + ], + ], + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"****63E8B7C7-4812-46AD-0FA56029AC86****\\",\\n \\"Data\\": {\\n \\"CustomizedVoiceJob\\": {\\n \\"JobId\\": \\"****571c704445f9a0ee011406c2****\\",\\n \\"VoiceId\\": \\"xiaozhuan\\",\\n \\"Status\\": \\"Fail\\",\\n \\"Message\\": \\"训练失败\\",\\n \\"Type\\": \\"Standard\\",\\n \\"VoiceName\\": \\"小专\\",\\n \\"VoiceDesc\\": \\"这是一个专属人声\\",\\n \\"Scenario\\": \\"story\\",\\n \\"Gender\\": \\"female\\",\\n \\"CreateTime\\": \\"2023-06-07T02:27:08Z\\"\\n }\\n },\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => 'GetCustomizedVoiceJob', + ], + 'DeleteCustomizedVoiceJob' => [ + 'summary' => 'Deletes a human voice cloning job that is not in the Training or Success state.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'JobId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the human voice cloning job.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => 'DeleteCustomizedVoiceJob', + ], + 'ListCustomizedVoiceJobs' => [ + 'summary' => 'Queries a list of human voice cloning jobs.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page. Default value: 10. Valid values: 1 to 100.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '10', + ], + ], + [ + 'name' => 'Type', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of the human voice cloning job. Valid values:'."\n" + ."\n" + .'* Basic'."\n" + .'* Standard'."\n" + ."\n" + .'> : If you do not specify this parameter, the default value Basic is used.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'Standard', + 'enum' => [ + 'Basic', + 'Standard', + 'Premium', + ], + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******3B-0E1A-586A-AC29-742247******', + ], + 'Data' => [ + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'CustomizedVoiceJobList' => [ + 'description' => 'The queried human voice cloning jobs.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The queried human voice cloning job.'."\n", + 'type' => 'object', + 'properties' => [ + 'JobId' => [ + 'description' => 'The ID of the human voice cloning job.'."\n", + 'type' => 'string', + 'example' => '2245ab99a7fd4116a4fd3f499b7a56c5', + ], + 'VoiceId' => [ + 'description' => 'The voice ID.'."\n", + 'type' => 'string', + 'example' => 'xiaozhuan', + ], + 'Status' => [ + 'description' => 'The job state. Valid values:'."\n" + ."\n" + .'* Initialization'."\n" + .'* AudioDetecting'."\n" + .'* PreTraining'."\n" + .'* Training'."\n" + .'* Success'."\n" + .'* Fail'."\n", + 'type' => 'string', + 'example' => 'Success', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'VoiceName' => [ + 'description' => 'The voice name.'."\n" + ."\n" + .'* The name can be up to 32 characters in length.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'VoiceDesc' => [ + 'description' => 'The voice description.'."\n" + ."\n" + .'* The description can be up to 256 characters in length.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'Type' => [ + 'description' => '* The voice type. Valid values:'."\n" + ."\n" + .' * Basic'."\n" + .' * Standard'."\n", + 'type' => 'string', + 'example' => 'Standard', + ], + 'Gender' => [ + 'description' => 'The gender. Valid values:'."\n" + ."\n" + .'* female'."\n" + .'* male'."\n", + 'type' => 'string', + 'example' => 'female', + ], + 'Scenario' => [ + 'description' => 'The scenario. Valid values:'."\n" + ."\n" + .'* story'."\n" + .'* interaction'."\n" + .'* navigation'."\n", + 'type' => 'string', + 'example' => 'story', + ], + 'CreateTime' => [ + 'description' => '* The time when the job was created.'."\n" + .'* The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2023-04-01T06:23:59Z', + ], + 'GmtCreate' => [ + 'description' => 'The time when the job was created.'."\n", + 'type' => 'string', + 'example' => '2022-06-27T02:42:28Z', + ], + ], + ], + ], + 'TotalCount' => [ + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '271', + ], + ], + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values: true false'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******3B-0E1A-586A-AC29-742247******\\",\\n \\"Data\\": {\\n \\"CustomizedVoiceJobList\\": [\\n {\\n \\"JobId\\": \\"2245ab99a7fd4116a4fd3f499b7a56c5\\",\\n \\"VoiceId\\": \\"xiaozhuan\\",\\n \\"Status\\": \\"Success\\",\\n \\"Message\\": \\"训练成功\\",\\n \\"VoiceName\\": \\"小专\\",\\n \\"VoiceDesc\\": \\"这是这个声音的描述\\",\\n \\"Type\\": \\"Standard\\",\\n \\"Gender\\": \\"female\\",\\n \\"Scenario\\": \\"story\\",\\n \\"CreateTime\\": \\"2023-04-01T06:23:59Z\\",\\n \\"GmtCreate\\": \\"2022-06-27T02:42:28Z\\"\\n }\\n ],\\n \\"TotalCount\\": 271\\n },\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => 'ListCustomizedVoiceJobs', + ], + 'GetCustomizedVoice' => [ + 'summary' => 'Queries the information about a personalized human voice.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'VoiceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The voice ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'xiaozhuan', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '****63E8B7C7-4812-46AD-0FA56029AC86****', + ], + 'Data' => [ + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'CustomizedVoice' => [ + 'description' => 'The personalized human voice.'."\n", + 'type' => 'object', + 'properties' => [ + 'VoiceId' => [ + 'description' => 'The voice ID.'."\n", + 'type' => 'string', + 'example' => 'xiaozhuan', + ], + 'VoiceName' => [ + 'description' => 'The voice name.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'VoiceDesc' => [ + 'description' => 'The voice description.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'Gender' => [ + 'description' => 'The gender. Valid values:'."\n" + ."\n" + .'* female'."\n" + .'* male'."\n", + 'type' => 'string', + 'example' => 'female', + ], + 'Scenario' => [ + 'description' => 'The demonstration scenario.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* **story**'."\n" + .'* **interaction**'."\n" + .'* **navigation**'."\n", + 'type' => 'string', + 'example' => 'interaction', + ], + 'DemoAudioMediaId' => [ + 'description' => 'The media asset ID of the sample audio file.'."\n", + 'type' => 'string', + 'example' => '****42d3c312402982be65975f5b****', + ], + ], + ], + ], + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"****63E8B7C7-4812-46AD-0FA56029AC86****\\",\\n \\"Data\\": {\\n \\"CustomizedVoice\\": {\\n \\"VoiceId\\": \\"xiaozhuan\\",\\n \\"VoiceName\\": \\"小专\\",\\n \\"VoiceDesc\\": \\"这是一个个性化人声\\",\\n \\"Gender\\": \\"female\\",\\n \\"Scenario\\": \\"interaction\\",\\n \\"DemoAudioMediaId\\": \\"****42d3c312402982be65975f5b****\\"\\n }\\n },\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => 'GetCustomizedVoice', + ], + 'UpdateCustomizedVoice' => [ + 'summary' => 'Updates a personalized human voice. Only the media asset ID of the sample audio file can be modified.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'VoiceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The voice ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'xiaozhuan', + ], + ], + [ + 'name' => 'DemoAudioMediaId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The media asset ID of the sample audio file.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '****4d5e829d498aaf966b119348****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '4E84BE44-58A7-****-****-FBEBEA16EF94', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"4E84BE44-58A7-****-****-FBEBEA16EF94\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => 'UpdateCustomizedVoice', + ], + 'ListCustomizedVoices' => [ + 'summary' => 'Queries a list of personalized human voices.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'Type', + 'in' => 'query', + 'schema' => [ + 'description' => '* The voice type. Valid values:'."\n" + ."\n" + .' * Basic'."\n" + .' * Standard'."\n" + ."\n" + .'* If you do not specify this parameter, the default value Basic is used.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'Standard', + ], + ], + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page. Default value: 10. Valid values: 1 to 100.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '10', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'Data' => [ + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'CustomizedVoiceList' => [ + 'description' => 'The queried personalized human voices.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The personalized human voice.'."\n", + 'type' => 'object', + 'properties' => [ + 'VoiceId' => [ + 'description' => 'The voice ID.'."\n", + 'type' => 'string', + 'example' => 'xiaozhuan', + ], + 'VoiceName' => [ + 'description' => 'The voice name.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'VoiceDesc' => [ + 'description' => 'The voice description.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'Gender' => [ + 'description' => 'The gender. Valid values:'."\n" + ."\n" + .'* female'."\n" + .'* male'."\n", + 'type' => 'string', + 'example' => 'male', + ], + 'Scenario' => [ + 'description' => 'The scenario. Valid values:'."\n" + ."\n" + .'* story'."\n" + .'* interaction'."\n" + .'* navigation'."\n", + 'type' => 'string', + 'example' => 'story', + ], + 'DemoAudioMediaId' => [ + 'description' => 'The media asset ID of the sample audio file.'."\n", + 'type' => 'string', + 'example' => '****4d5e829d498aaf966b119348****', + ], + 'Type' => [ + 'description' => '* The voice type. Valid values:'."\n" + ."\n" + .' * Basic'."\n" + .' * Standard'."\n", + 'type' => 'string', + 'example' => 'Standard', + ], + ], + ], + ], + 'TotalCount' => [ + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '41', + ], + ], + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"Data\\": {\\n \\"CustomizedVoiceList\\": [\\n {\\n \\"VoiceId\\": \\"xiaozhuan\\",\\n \\"VoiceName\\": \\"小专\\",\\n \\"VoiceDesc\\": \\"这是一个个性化人声小专\\",\\n \\"Gender\\": \\"male\\",\\n \\"Scenario\\": \\"story\\",\\n \\"DemoAudioMediaId\\": \\"****4d5e829d498aaf966b119348****\\",\\n \\"Type\\": \\"Standard\\"\\n }\\n ],\\n \\"TotalCount\\": 41\\n },\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => 'ListCustomizedVoices', + ], + 'SubmitASRJob' => [ + 'summary' => 'Submits an automatic speech recognition (ASR) job to extract the start and end time and the corresponding text information of a speech in a video.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'paid', + 'abilityTreeNodes' => [ + 'FEATUREice405U0J', + ], + ], + 'parameters' => [ + [ + 'name' => 'InputFile', + 'in' => 'query', + 'schema' => [ + 'title' => '输入配置,支持OSS地址和内容库素材ID', + 'description' => 'The input file. You can specify an Object Storage Service (OSS) URL or the ID of a media asset in the media asset library.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'oss://example-bucket.oss-cn-shanghai.aliyuncs.com/example.mp4 或 ****20b48fb04483915d4f2cd8ac****', + ], + ], + [ + 'name' => 'UserData', + 'in' => 'query', + 'schema' => [ + 'title' => '自定义设置,为JSON字符串', + 'description' => 'The user-defined data in the JSON format. You can specify your business information, such as the business environment and job information.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{'."\n" + .' "user": "data",'."\n" + .' "env": "prod"'."\n" + .'}', + ], + ], + [ + 'name' => 'Title', + 'in' => 'query', + 'schema' => [ + 'title' => '任务标题', + 'description' => 'The job title, which can be up to 128 bytes in length.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '测试标题', + ], + ], + [ + 'name' => 'Description', + 'in' => 'query', + 'schema' => [ + 'title' => '任务描述', + 'description' => 'The job description, which can up to 128 bytes in length.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '测试描述', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'title' => '开始时间', + 'description' => 'The start time of the speech to recognize.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '00:00:00', + ], + ], + [ + 'name' => 'Duration', + 'in' => 'query', + 'schema' => [ + 'title' => '持续时间', + 'description' => 'The speech duration.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '00:00:10', + ], + ], + [ + 'name' => 'EditingConfig', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求Id', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'JobId' => [ + 'title' => '智能任务Id', + 'description' => 'The job ID.'."\n", + 'type' => 'string', + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + 'State' => [ + 'title' => '任务状态', + 'description' => 'The job state. Valid values:'."\n" + ."\n" + .'* Created'."\n" + .'* Executing'."\n" + .'* Finished'."\n" + .'* Failed'."\n", + 'type' => 'string', + 'example' => 'Finished', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"JobId\\": \\"****20b48fb04483915d4f2cd8ac****\\",\\n \\"State\\": \\"Finished\\"\\n}","errorExample":""},{"type":"xml","example":"<SubmitASRJobResponse>\\n <RequestId>******11-DB8D-4A9A-875B-275798******</RequestId>\\n <JobId>****20b48fb04483915d4f2cd8ac****</JobId>\\n <State>Finished</State>\\n</SubmitASRJobResponse>","errorExample":""}]', + 'title' => 'SubmitASRJob', + 'responseParamsDescription' => 'You can call the [GetSmartHandleJob](~~441172~~) operation to query the execution details of an ASR job. The following example shows the result returned by the [GetSmartHandleJob](~~441172~~) operation for a successful job.'."\n" + ."\n" + .' {'."\n" + .' "RequestId": "******2D-443C-5043-B0E4-867070******",'."\n" + .' "JobResult": {'."\n" + .' "AiResult": "[{\\"content\\":\\"Talking about\\",\\"from\\":0.0,\\"to\\":0.846},{\\"content\\":\\"he is now incredibly popular\\",\\"from\\":0.846,\\"to\\":3.386},{\\"content\\":\\"Although ticket prices are high\\",\\"from\\":3.386,\\"to\\":4.402},{\\"content\\":\\"his shows often sell out instantly\\",\\"from\\":4.402,\\"to\\":6.265},{\\"content\\":\\"In addition, he frequently appears on various comedy programs, where he judges performances by new comedians\\",\\"from\\":6.265,\\"to\\":10.33}]"'."\n" + .' },'."\n" + .' "State": "Finished",'."\n" + .' "Output": "[{\\"content\\":\\"Talking about\\",\\"from\\":0.0,\\"to\\":0.846},{\\"content\\":\\"he is now incredibly popular\\",\\"from\\":0.846,\\"to\\":3.386},{\\"content\\":\\"Although ticket prices are high\\",\\"from\\":3.386,\\"to\\":4.402},{\\"content\\":\\"his shows often sell out instantly\\",\\"from\\":4.402,\\"to\\":6.265},{\\"content\\":\\"In addition, he frequently appears on various comedy programs, where he judges performances by new comedians\\",\\"from\\":6.265,\\"to\\":10.33}]"'."\n" + .' "JobId": "******042d5e4db6866f6289d1******",'."\n" + .' "SmartJobInfo": {'."\n" + .' "JobType": "ASR",'."\n" + .' "ModifiedTime": "2022-01-21T06:15:08Z",'."\n" + .' "UserId": 1234562230123456,'."\n" + .' "CreateTime": "2022-01-21T06:15:02Z",'."\n" + .' "Title": "default_title_2022-01-21T06:15:02Z",'."\n" + .' "InputConfig": {'."\n" + .' "JobParameters": "{\\"duration\\":\\"00:30:00\\",\\"start_time\\":\\"00:00:00\\",\\"request_params\\":\\"&enable_word_level_result=true\\"}",'."\n" + .' "InputFile": "oss://your-bucket.oss-cn-shanghai.aliyuncs.com/your-video.mp4"'."\n" + .' }'."\n" + .' }'."\n" + .' }', + ], + 'SubmitAvatarVideoJob' => [ + 'summary' => 'Submits a task to render a video of an avatar speaking the content of the specified text or a human voice audio file.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + ], + 'parameters' => [ + [ + 'name' => 'InputConfig', + 'in' => 'query', + 'schema' => [ + 'description' => 'The input configurations of the video rendering task for an avatar. You can specify text, the Object Storage Service (OSS) URL of an audio file, or the ID of a media asset. The audio file must be in the MP3 or WAV format.'."\n" + ."\n" + .'><notice>The text must be at least five characters in length.></notice>', + 'type' => 'string', + 'required' => false, + 'example' => '{"Text": "To be, or not to be, that is the question."}', + ], + ], + [ + 'name' => 'EditingConfig', + 'in' => 'query', + 'schema' => [ + 'description' => 'The avatar configurations, including the avatar ID, voice, and speech rate.', + 'type' => 'string', + 'required' => false, + 'example' => '{"AvatarId":"yunqiao"}', + ], + ], + [ + 'name' => 'OutputConfig', + 'in' => 'query', + 'schema' => [ + 'description' => 'The output configurations, including the destination URL for the rendered video.', + 'type' => 'string', + 'required' => false, + 'example' => '{"MediaURL":"https://your-bucket.oss-cn-shanghai.aliyuncs.com/xxx.mp4"}', + ], + ], + [ + 'name' => 'Title', + 'in' => 'query', + 'schema' => [ + 'title' => '任务标题', + 'description' => 'The task name. Max length: 128 bytes.', + 'type' => 'string', + 'required' => false, + 'example' => 'test', + ], + ], + [ + 'name' => 'Description', + 'in' => 'query', + 'schema' => [ + 'title' => '任务描述', + 'description' => 'The task description. Max length: 128 bytes.', + 'type' => 'string', + 'required' => false, + 'example' => 'test', + ], + ], + [ + 'name' => 'UserData', + 'in' => 'query', + 'schema' => [ + 'title' => '自定义设置,为JSON字符串', + 'description' => 'A user-defined JSON string for passing custom business information, such as environment details or task metadata.', + 'type' => 'string', + 'required' => false, + 'example' => '{"user":"data","env":"prod"}', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.', + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******'."\n", + ], + 'JobId' => [ + 'description' => 'The task ID.', + 'type' => 'string', + 'example' => '****20b48fb04483915d4f2cd8ac****'."\n", + ], + 'MediaId' => [ + 'description' => 'The media asset ID of the output file.'."\n", + 'type' => 'string', + 'example' => '******70dcc471edaf00e6f6f4******', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\\\n\\",\\n \\"JobId\\": \\"****20b48fb04483915d4f2cd8ac****\\\\n\\",\\n \\"MediaId\\": \\"******70dcc471edaf00e6f6f4******\\"\\n}","type":"json"}]', + 'title' => 'SubmitAvatarVideoJob', + 'description' => '- The input supports only text or a human voice audio file in MP3 or WAV format.'."\n" + .'- The output supports MP4 and WebM formats. For the MP4 format, the task produces two videos: one with the avatar on a green screen background and a separate alpha mask video. This is ideal for post-production. For the WebM format, the task produces a single video with a transparent alpha channel, suitable for direct web front-end display. Rendering WebM is slower due to encoding complexity.'."\n" + .'- The final output includes sentence-level timestamps, which are useful for subsequent video editing.', + 'requestParamsDescription' => '### [](#inputconfig-)Examples of InputConfig'."\n" + ."\n" + .'Set InputConfig to the OSS URL of an audio file:'."\n" + ."\n" + .' {'."\n" + .' "InputFile": "https://your-bucket.oss-cn-shanghai.aliyuncs.com/xxx.mp3"'."\n" + .' }'."\n" + ."\n" + .'Set InputConfig to text:'."\n" + ."\n" + .' {'."\n" + .' "Text": "To be, or not to be, that is the question."}'."\n" + ."\n" + .'Set InputConfig to the ID of a media asset:'."\n" + ."\n" + .' {'."\n" + .' "MediaId": "4aef0c80cc0071edbf92f6e7c44b6302"'."\n" + .' }'."\n" + ."\n" + .'### [](#editingconfig-)Example of EditingConfig'."\n" + ."\n" + .'AvatarId: required. The ID of the avatar. For valid values, see [Official avatar examples](https://www.alibabacloud.com/help/en/ims/developer-reference/examples-of-official-images-of-digital-people).\\'."\n" + .'Voice: optional. The voice of the avatar. This parameter takes effect only when InputConfig is set to text. For valid values, see [Intelligent voice samples](https://www.alibabacloud.com/help/en/ims/developer-reference/smart-voice-effect-example).\\'."\n" + .'CustomizedVoice: the custom voice. Specify this parameter if you want to set the avatar voice to a cloned human voice.\\'."\n" + .'LoopMotion: specifies whether the first and last frames of the video are the same. When set to true, it ensures smooth transitions in movements and expressions during loop playback, preventing frame jumps. Valid values: true and false. Default value: false.\\'."\n" + .'SpeechRate: the speech rate. This parameter takes effect only when InputConfig is set to text. Valid values: -500 to 500. Default value: 0.\\'."\n" + .'PitchRate: the pitch. This parameter takes effect only when InputConfig is set to text. Valid values: -500 to 500. Default value: 0.\\'."\n" + .'Volume: the volume. This parameter takes effect only when InputConfig is set to text. Valid values: 0 to 100. Default value: 50.\\'."\n" + .'BackgroundUrl: optional. The background image. If not provided, a black background is used by default. Only JPG and PNG formats are supported. The resolution must be 1080P, matching the orientation (portrait or landscape) of the avatar image.'."\n" + ."\n" + .' {'."\n" + .' "AvatarId": "xinxin-marketing_standing", '."\n" + .' "BackgroundUrl": "https://your-bucket.oss-cn-shanghai.aliyuncs.com/xxx.jpg",'."\n" + .' "Voice" : "zhichu",'."\n" + .' "LoopMotion": true,'."\n" + .' "SpeechRate": 100,'."\n" + .' "PitchRate": 10, '."\n" + .' "Volume": 10 '."\n" + .' }'."\n" + ."\n" + .'### [](#outputconfig-)Example of OutputConfig'."\n" + ."\n" + .' {'."\n" + .' "MediaURL": "https://your-bucket.oss-cn-shanghai.aliyuncs.com/xxx.mp4'."\n" + .' }', + 'responseParamsDescription' => 'You can call the [GetSmartHandleJob](https://help.aliyun.com/document_detail/203429.html) operation to query the state and results of the task. Sample success response:'."\n" + ."\n" + .' {'."\n" + .' "RequestId": "2014D1A8-4143-164F-94B4-32B8F39B706D",'."\n" + .' "JobId": "d9367da8c7184ec7a3f24de530ac5b9a",'."\n" + .' "State": "Finished",'."\n" + .' "SmartJobInfo": {'."\n" + .' "Title": "default_title_2023-03-28T13:37:47Z",'."\n" + .' "EditingConfig": "null",'."\n" + .' "JobType": "AvatarVideo",'."\n" + .' "CreateTime": "2023-03-28T13:37:47Z",'."\n" + .' "ModifiedTime": "2023-03-28T13:37:47Z",'."\n" + .' "UserId": 1833202230108227,'."\n" + .' "outputConfig": {'."\n" + .' "mediaUrl": "https://oushu-test-shanghai.oss-cn-shanghai.aliyuncs.com/avatar/222.mp4"'."\n" + .' }'."\n" + .' },'."\n" + .' "JobResult": {'."\n" + .' "MediaId": "4aef0c80cc0071edbf92f6e7c44b6302",'."\n" + .' "AiResult": "{\\"outputVideoUrl\\":\\"https://oushu-test-shanghai.oss-cn-shanghai.aliyuncs.com/avatar/222.mp4\\",\\"subtitleClips\\":\\"[{\\\\\\"from\\\\\\":0.0,\\\\\\"to\\\\\\":4.692,\\\\\\"content\\\\\\":\\\\\\"Do you not see the Yellow River flowing down from the sky and rushing into the sea, never to return? \\\\\\"},{\\\\\\"from\\\\\\":4.692,\\\\\\"to\\\\\\":9.061,\\\\\\"content\\\\\\":\\\\\\"Do you not see, before the mirror\'s gleaming light, one\'s black hair turns to snow white from morning to night? \\\\\\"}]\\"}"'."\n" + .' }'."\n" + .' }'."\n" + ."\n" + .'Parameters of AiResult:\\'."\n" + .'outputVideoUrl: the URL of the output video. In this example, the output video is in the MP4 format.\\'."\n" + .'subtitleClips: the timestamps of the subtitles.'."\n" + ."\n" + .' {'."\n" + .' "outputVideoUrl": "https://oushu-test-shanghai.oss-cn-shanghai.aliyuncs.com/avatar/222.mp4",'."\n" + .' "subtitleClips": "[{\\"from\\":0.0,\\"to\\":4.692,\\"content\\":\\"Do you not see the Yellow River flowing down from the sky and rushing into the sea, never to return? \\"},{\\"from\\":4.692,\\"to\\":9.061,\\"content\\":\\"Do you not see, before the mirror\'s gleaming light, one\'s black hair turns to snow white from morning to night? \\"}]"'."\n" + .' }', + ], + 'SubmitAudioProduceJob' => [ + 'summary' => 'Converts the provided text content into a high-quality audio file.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'EditingConfig', + 'in' => 'query', + 'schema' => [ + 'title' => '音频生产配置', + 'description' => 'The audio editing configurations.'."\n" + ."\n" + .'* voice: the [voice type](~~449563~~).'."\n" + .'* customizedVoice: the ID of the personalized human voice.'."\n" + .'* format: the format of the output file. Valid values: PCM, WAV, and MP3.'."\n" + .'* volume: the volume. Default value: 50. Valid values: 0 to 100.'."\n" + .'* speech_rate: the speech tempo. Default value: 0. Value range: -500 to 500.'."\n" + .'* pitch_rate: the intonation. Default value: 0. Value range: -500 to 500.'."\n" + ."\n" + .'> If you specify both voice and customizedVoice, customizedVoice takes precedence over voice.', + 'type' => 'string', + 'required' => true, + 'example' => '{"voice":"Siqi","format":"MP3","volume":50}', + ], + ], + [ + 'name' => 'OutputConfig', + 'in' => 'query', + 'schema' => [ + 'title' => '音频输出配置', + 'description' => 'The output audio configurations.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '{"bucket":"bucket","object":"objeck"}', + ], + ], + [ + 'name' => 'InputConfig', + 'in' => 'query', + 'schema' => [ + 'title' => '文本内容。 最大支持300个汉字', + 'description' => 'The text content. A maximum of 2,000 characters are supported. The [Speech Synthesis Markup Language (SSML)](~~2672807~~) is supported.', + 'type' => 'string', + 'required' => true, + 'example' => '测试文本', + ], + ], + [ + 'name' => 'Title', + 'in' => 'query', + 'schema' => [ + 'title' => '任务标题', + 'description' => 'The job title. If you do not specify this parameter, the system generates a title based on the current date.'."\n" + ."\n" + .'* The job title can be up to 128 bytes in length.'."\n" + .'* The value must be encoded in UTF-8.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '任务标题。若不提供,根据日期自动生成默认title 长度不超过128字节 UTF8编码', + ], + ], + [ + 'name' => 'Description', + 'in' => 'query', + 'schema' => [ + 'title' => '任务描述', + 'description' => 'The job description.'."\n" + ."\n" + .'* The job description can be up to 1,024 bytes in length.'."\n" + .'* The value must be encoded in UTF-8.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '任务描述 长度不超过1024字节 UTF8编码', + ], + ], + [ + 'name' => 'UserData', + 'in' => 'query', + 'schema' => [ + 'title' => '自定义数据', + 'description' => 'The user-defined data in the JSON format, which can be up to 512 bytes in length. You can specify a custom callback URL. For more information, see [Configure a callback upon editing completion](~~451631~~).', + 'type' => 'string', + 'required' => false, + 'example' => '{"user":"data"}', + ], + ], + [ + 'name' => 'Overwrite', + 'in' => 'query', + 'schema' => [ + 'title' => '是否覆盖现有OSS文件', + 'description' => 'Specifies whether to overwrite the existing Object Storage Service (OSS) object.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求Id', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'JobId' => [ + 'title' => '任务ID', + 'description' => 'The job ID.'."\n", + 'type' => 'string', + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + 'State' => [ + 'title' => '任务状态', + 'description' => 'The job state. Valid values:'."\n" + ."\n" + .'* Created'."\n" + .'* Executing'."\n" + .'* Finished'."\n" + .'* Failed'."\n", + 'type' => 'string', + 'example' => 'Created', + ], + 'MediaId' => [ + 'title' => '媒资Id', + 'description' => 'The ID of the media asset.'."\n", + 'type' => 'string', + 'example' => '****2bcbfcfa30fccb36f72dca22****', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"JobId\\": \\"****20b48fb04483915d4f2cd8ac****\\",\\n \\"State\\": \\"Created\\",\\n \\"MediaId\\": \\"****2bcbfcfa30fccb36f72dca22****\\"\\n}","errorExample":""},{"type":"xml","example":"<SubmitAudioProduceJobResponse>\\n <RequestId>******11-DB8D-4A9A-875B-275798******</RequestId>\\n <JobId>****20b48fb04483915d4f2cd8ac****</JobId>\\n <State>Created</State>\\n</SubmitAudioProduceJobResponse>","errorExample":""}]', + 'title' => 'SubmitAudioProduceJob', + 'responseParamsDescription' => 'You can call the [GetSmartHandleJob](~~441172~~) operation to query the execution details of an intelligent audio production job. The following example shows the result returned by the [GetSmartHandleJob](~~441172~~) operation for a successful job.'."\n" + ."\n" + .' {'."\n" + .' "RequestId": "******2D-443C-5043-B0E4-867070******",'."\n" + .' "JobId": "******042d5e4db6866f6289d1******",'."\n" + .' "State": "Finished",'."\n" + .' "SmartJobInfo": {'."\n" + .' "Title": "default_title_2022-01-21T06:15:07Z",'."\n" + .' "JobType": "TextToSpeech",'."\n" + .' "CreateTime": "2022-01-21T06:15:07Z",'."\n" + .' "ModifiedTime": "2022-01-21T06:15:07Z",'."\n" + .' "InputConfig": {'."\n" + .' "InputFile": "Talking about Guo Degang, he is now incredibly popular. Although ticket prices are high, his shows often sell out instantly. In addition, he frequently appears on various comedy programs, where he judges performances by new comedians."'."\n" + .' },'."\n" + .' "EditingConfig": "{\\"format\\":\\"MP3\\",\\"pitch_rate\\":0,\\"sample_rate\\":16000,\\"speech_rate\\":0,\\"voice\\":\\"Siqi\\",\\"volume\\":50}",'."\n" + .' "OutputConfig": {'."\n" + .' "Bucket": "your-bucket",'."\n" + .' "Object": "your-audio"'."\n" + .' }'."\n" + .' },'."\n" + .' "JobResult": {'."\n" + .' "MediaId": "******bf47c94e82b3b2014361******",'."\n" + .' "AiResult": "[{\\"content\\":\\"Talking about\\",\\"from\\":0.0,\\"to\\":0.846},{\\"content\\":\\"he is now incredibly popular\\",\\"from\\":0.846,\\"to\\":3.386},{\\"content\\":\\"Although ticket prices are high\\",\\"from\\":3.386,\\"to\\":4.402},{\\"content\\":\\"his shows often sell out instantly\\",\\"from\\":4.402,\\"to\\":6.265},{\\"content\\":\\"In addition, he frequently appears on various comedy programs, where he judges performances by new comedians\\",\\"from\\":6.265,\\"to\\":10.33}]"'."\n" + .' }'."\n" + .' }', + ], + 'SubmitTextGenerateJob' => [ + 'summary' => 'Submits a text generation job to generate marketing copies based on keywords and the requirements for the word count and number of output copies. The word count of the output copies may differ from the specified word count. After the job is submitted, you can call the GetSmartHandleJob operation to obtain the job state and result based on the job ID.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'abilityTreeCode' => '209430', + 'abilityTreeNodes' => [ + 'FEATUREiceM55707', + ], + ], + 'parameters' => [ + [ + 'name' => 'Title', + 'in' => 'query', + 'schema' => [ + 'description' => 'The job title.'."\n" + ."\n" + .'The job title can be up to 128 bytes in length.'."\n" + ."\n" + .'The value must be encoded in UTF-8.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '', + ], + ], + [ + 'name' => 'Description', + 'in' => 'query', + 'schema' => [ + 'description' => 'The job description, which can be up to 1,024 bytes in length and must be encoded in UTF-8.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '', + ], + ], + [ + 'name' => 'Type', + 'in' => 'query', + 'schema' => [ + 'description' => 'The job type.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* MarketingCopy: the marketing copy.'."\n" + .'* Title: the short video title.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'MarketingCopy' => '', + 'Title' => '', + ], + 'example' => 'MarketingCopy', + ], + ], + [ + 'name' => 'GenerateConfig', + 'in' => 'query', + 'schema' => [ + 'description' => 'The text generation configurations, including keywords and the requirements for the word count and number of output copies.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '', + ], + ], + [ + 'name' => 'UserData', + 'in' => 'query', + 'schema' => [ + 'description' => 'The user-defined data in the JSON format, which can be up to 512 bytes in length. You can specify a custom callback URL. For more information, see [Configure a callback upon editing completion](~~451631~~).', + 'type' => 'string', + 'required' => false, + 'example' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'JobId' => [ + 'description' => 'The job ID.'."\n", + 'type' => 'string', + 'example' => '****d80e4e4044975745c14b****', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"JobId\\": \\"****d80e4e4044975745c14b****\\"\\n}","type":"json"}]', + 'title' => 'SubmitTextGenerateJob', + ], + 'SubmitVideoTranslationJob' => [ + 'summary' => 'Submits a video translation job. You can call this operation to translate video subtitles and speech to a specific language, and synchronize the speakers\' lip movements with the translated audio.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'paid', + 'abilityTreeCode' => '222559', + 'abilityTreeNodes' => [ + 'FEATUREice405U0J', + ], + ], + 'parameters' => [ + [ + 'name' => 'InputConfig', + 'in' => 'query', + 'schema' => [ + 'description' => '* The input parameters of the video translation job.'."\n" + .'* A video translation job takes a video or subtitle file as the input.'."\n" + .'* The value must be in the JSON format.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{"Type":"Video","Media":"https://your-bucket.oss-cn-shanghai.aliyuncs.com/xxx.mp4"}', + ], + ], + [ + 'name' => 'EditingConfig', + 'in' => 'query', + 'schema' => [ + 'description' => '* The configuration parameters of the video translation job.'."\n" + .'* The value must be in the JSON format.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{"SourceLanguage":"zh","TargetLanguage":"en","DetextArea":"Auto"}', + ], + ], + [ + 'name' => 'OutputConfig', + 'in' => 'query', + 'schema' => [ + 'description' => '* The output parameters of the video translation job.'."\n" + .'* A video translation job can generate a video or subtitle file as the output.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{"MediaURL": "https://your-bucket.oss-cn-shanghai.aliyuncs.com/your-object.mp4"}', + ], + ], + [ + 'name' => 'Title', + 'in' => 'query', + 'schema' => [ + 'description' => '* The job title.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '', + ], + ], + [ + 'name' => 'Description', + 'in' => 'query', + 'schema' => [ + 'description' => '* The job description.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '', + ], + ], + [ + 'name' => 'UserData', + 'in' => 'query', + 'schema' => [ + 'description' => '* The user-defined data.'."\n" + .'* The data must be in the JSON format, and can be up to 512 characters in length.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{"NotifyAddress":"http://xx.xx.xxx"}', + ], + ], + [ + 'name' => 'ClientToken', + 'in' => 'query', + 'schema' => [ + 'description' => '* The client token.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '', + ], + ], + [ + 'name' => 'SignatureMehtod', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + ], + ], + [ + 'name' => 'SignatureType', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******3B-0E1A-586A-AC29-742247******', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Data' => [ + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'JobId' => [ + 'description' => 'The ID of the video translation job.'."\n", + 'type' => 'string', + 'example' => '****d718e2ff4f018ccf419a7b71****', + ], + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******3B-0E1A-586A-AC29-742247******\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"JobId\\": \\"****d718e2ff4f018ccf419a7b71****\\"\\n }\\n}","type":"json"}]', + 'title' => 'SubmitVideoTranslationJob', + 'description' => 'After you call this operation to submit a video translation job, the system returns a job ID. You can call the GetSmartHandleJob operation based on the job ID to obtain the status and result information of the job.'."\n", + 'requestParamsDescription' => '### [](#inputconfig)InputConfig'."\n" + ."\n" + .'#### [](#)Parameter description'."\n" + ."\n" + .'1. Type: the type of the input file. Valid values:'."\n" + ."\n" + .' * Video: The input is a video.'."\n" + .' * Subtitle: The input is a subtitle file.'."\n" + ."\n" + .'2. Media: the video material. This parameter is required if Type is set to Video. Valid values:'."\n" + ."\n" + .' * Media asset ID in IMS'."\n" + .' * OSS URL'."\n" + ."\n" + .'3. Subtitle: the SRT subtitle file. This parameter is required if Type is set to Subtitle. Valid value:'."\n" + ."\n" + .' * OSS URL'."\n" + ."\n" + .'#### [](#)Examples'."\n" + ."\n" + .'The input is a video, with the media asset ID specified.'."\n" + ."\n" + .' {'."\n" + .' "Type": "Video",'."\n" + .' "Media": "*****c80cc0071edbf92f6e7c44*****"'."\n" + .' }'."\n" + ."\n" + .'The input is a video, with the OSS URL specified.'."\n" + ."\n" + .' {'."\n" + .' "Type": "Video",'."\n" + .' "Media": "https://your-bucket.oss-cn-shanghai.aliyuncs.com/video.mp4"'."\n" + .' }'."\n" + ."\n" + .'The input is a subtitle file, with the OSS URL specified.'."\n" + ."\n" + .' {'."\n" + .' "Type": "Subtitle",'."\n" + .' "Subtitle": "https://your-bucket.oss-cn-shanghai.aliyuncs.com/subtitle.srt"'."\n" + .' }'."\n" + ."\n" + .'### [](#editingconfig)EditingConfig'."\n" + ."\n" + .'#### [](#-1)Parameter description'."\n" + ."\n" + .'* SourceLanguage: the source language. Valid value:'."\n" + ."\n" + .' * zh: Chinese.'."\n" + ."\n" + .'* TargetLanguage: the target language. Valid values:'."\n" + ."\n" + .' * en: English.'."\n" + .' * Other language codes. For more information, see [Machine Translation language code list](https://www.alibabacloud.com/help/zh/machine-translation/developer-reference/machine-translation-language-code-list?spm=a2c63.p38356.0.0.2bd56b9bPRoCRQ).'."\n" + ."\n" + .'* DetextArea: the area where the subtitle is erased. If this parameter is not specified, the subtitle is not erased. Valid values:'."\n" + ."\n" + .' * Auto: intelligently identifies the subtitle area.'."\n" + ."\n" + .' * \\[\\[x, y, width, height]]: the area where the subtitle is erased. The value is a two-layer array. You can specify multiple areas. The value contains the following options:'."\n" + ."\n" + .' * x: the ratio of the horizontal distance from the upper-left corner of the subtitle frame to the upper-left corner of the video. Valid values: \\[0,1].'."\n" + .' * y: the ratio of the vertical distance from the upper-left corner of the subtitle frame to the upper-left corner of the video. Valid values: \\[0,1].'."\n" + .' * width: the ratio of the width of the subtitle frame to the width of the video. Valid values: \\[0,1].'."\n" + .' * height: the ratio of the height of the subtitle frame to the height of the video. Valid values: \\[0,1].'."\n" + ."\n" + .'* SupportEditing: specifies whether to support custom editing. Valid values:'."\n" + ."\n" + .' * true: supports custom editing. In this case, all intermediate files generated during processing are retained and an editing project is generated for custom production.'."\n" + .' * false: does not support custom editing. This is the default value. In this case, intermediate files are not retained and no editing project is generated.'."\n" + ."\n" + .'* SubtitleTranslate: the subtitle translation configurations.'."\n" + ."\n" + .' * TextSource: the subtitle source. Valid values:'."\n" + ."\n" + .' * OCR: The subtitle is obtained from the video by using optical character recognition (OCR). This is the default value.'."\n" + .' * SubtitleFile: The subtitle is obtained from the input subtitle file.'."\n" + ."\n" + .' * OcrArea: the OCR area. If you do not specify this parameter, the default value Auto is used.'."\n" + ."\n" + .' * Auto: intelligently identifies the subtitle area.'."\n" + ."\n" + .' * SubtitleConfig: the subtitle effect configurations. The parameters are the same as the subtitle parameters in the timeline settings for video editing. For more information<props="china">, see [SubtitleTrackClip](https://help.aliyun.com/zh/ims/developer-reference/timeline-configuration-description?spm=a2c4g.11186623.0.i2#section-orj-0mj-8j2)</props>.'."\n" + ."\n" + .'#### [](#-1)Examples'."\n" + ."\n" + .'Translate the subtitle from Chinese into English, with intelligent subtitle erasure enabled.'."\n" + ."\n" + .' {'."\n" + .' "SourceLanguage": "zh",'."\n" + .' "TargetLanguage": "en",'."\n" + .' "DetextArea": "Auto"'."\n" + .' }'."\n" + ."\n" + .'Translate the subtitle from Chinese into English, and specify the area where the subtitle is erased.'."\n" + ."\n" + .' {'."\n" + .' "SourceLanguage": "zh",'."\n" + .' "TargetLanguage": "en",'."\n" + .' "DetextArea": "[[0.1,0.85,0.8,0.15]]"'."\n" + .' }'."\n" + ."\n" + .'Translate the subtitle from Chinese into English without erasing the subtitle, and specify the area where the translated subtitle is displayed.'."\n" + ."\n" + .' {'."\n" + .' "SourceLanguage": "zh",'."\n" + .' "TargetLanguage": "en",'."\n" + .' "SubtitleTranslate": {'."\n" + .' "TextSource": "OCR",'."\n" + .' "OcrArea": "Auto",'."\n" + .' "SubtitleConfig": {'."\n" + .' "Alignment" : "Center"'."\n" + .' "Y": 0.8'."\n" + .' }'."\n" + .' }'."\n" + .' }'."\n" + ."\n" + .'### [](#outputconfig)OutputConfig'."\n" + ."\n" + .'#### [](#-2)Parameter description'."\n" + ."\n" + .'* MediaURL: the URL of the output file, which can be a video file or a subtitle file.'."\n" + ."\n" + .'#### [](#-2)Examples'."\n" + ."\n" + .'The output is a video file.'."\n" + ."\n" + .' {'."\n" + .' "MediaURL": "https://your-bucket.oss-cn-shanghai.aliyuncs.com/video.mp4"'."\n" + .' }'."\n" + ."\n" + .'The output is a subtitle file.'."\n" + ."\n" + .' {'."\n" + .' "MediaURL": "https://your-bucket.oss-cn-shanghai.aliyuncs.com/subtitle.srt"'."\n" + .' }', + ], + 'SubmitHighlightExtractionJob' => [ + 'summary' => 'Submits a highlight extraction task.', + 'path' => '', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'paid', + 'abilityTreeNodes' => [ + 'FEATUREiceANRKXC', + ], + ], + 'parameters' => [ + [ + 'name' => 'ClientToken', + 'in' => 'query', + 'schema' => [ + 'title' => '调用方保证请求幂等性Client Token', + 'description' => 'The client token used to ensure the idempotency of the request.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '****12e8864746a0a398****'."\n", + ], + ], + [ + 'name' => 'InputConfig', + 'in' => 'formData', + 'schema' => [ + 'title' => '用户合成输出配置', + 'description' => 'The input configuration.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{'."\n" + .' "MediaArray": [{'."\n" + .' "MediaId": "ceb72f00e****1ef8216e7e6c64a6302"'."\n" + .' }, {'."\n" + .' "MediaId": "ce450c40e****1ef8216e7e6c64a6302"'."\n" + .' }, {'."\n" + .' "MediaId": "ce49a020e****1ef81c1e6f6d5686302"'."\n" + .' }, {'."\n" + .' "MediaId": "d047e120e****1ef81c1e6f6d5686302"'."\n" + .' }, {'."\n" + .' "MediaId": "cfe2ddc0e****1ef81c1e6f6d5686302"'."\n" + .' }],'."\n" + .' "Strategy": {'."\n" + .' "Count": 5,'."\n" + .' "ClipDuration": 15'."\n" + .' }'."\n" + .'}', + ], + ], + [ + 'name' => 'OutputConfig', + 'in' => 'query', + 'schema' => [ + 'title' => '任务来源', + 'description' => 'The output configuration.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{'."\n" + .' "NeedExport": true,'."\n" + .' "OutputMediaTarget": "oss-object",'."\n" + .' "Bucket": "test-bucket",'."\n" + .' "ObjectKey": "path/to/test_{index}.mp4",'."\n" + .' "Width": 1920,'."\n" + .' "Height": 1080,'."\n" + .' "ExportAsNewMedia": false'."\n" + .'}', + ], + ], + [ + 'name' => 'UserData', + 'in' => 'query', + 'schema' => [ + 'title' => '用户配置UserData', + 'description' => 'The user-defined data, including the business and callback configurations. For more information, see [UserData](~~357745#section-urj-v3f-0s1~~).', + 'type' => 'string', + 'required' => false, + 'example' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '******3B-0E1A-586A-AC29-742247******', + ], + 'JobId' => [ + 'title' => '批量混剪任务jobId', + 'description' => 'The ID of the highlight extraction task.'."\n", + 'type' => 'string', + 'example' => '****cdb3e74639973036bc84****', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******3B-0E1A-586A-AC29-742247******\\",\\n \\"JobId\\": \\"****cdb3e74639973036bc84****\\"\\n}","type":"json"}]', + 'title' => 'SubmitHighlightExtractionJob', + ], + 'SubmitSegmentationJob' => [ + 'summary' => 'Splits a long video into multiple video clips and outputs as video files or media assets.', + 'path' => '', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'paid', + 'abilityTreeNodes' => [ + 'FEATUREice405U0J', + ], + ], + 'parameters' => [ + [ + 'name' => 'ClientToken', + 'in' => 'query', + 'schema' => [ + 'title' => '调用方保证请求幂等性Client Token', + 'description' => 'The client token that is used to ensure the idempotence of the request.', + 'type' => 'string', + 'required' => false, + 'example' => '****12e8864746a0a398****', + ], + ], + [ + 'name' => 'InputConfig', + 'in' => 'formData', + 'schema' => [ + 'title' => '用户合成输出配置', + 'description' => 'The input configuration. For detailed parameters, see [InputConfig](~~2874121#cc59ad3082jbx~~).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{'."\n" + .' "Type": "OSS",'."\n" + .' "Media": "http://test-bucket.oss-cn-shanghai.aliyuncs.com/test.mp4"'."\n" + .'}'."\n" + .'or {'."\n" + .' "Type": "Media",'."\n" + .' "Media": "ce49a020e****1ef81c1e6f6d5686302"'."\n" + .'}', + ], + ], + [ + 'name' => 'OutputConfig', + 'in' => 'query', + 'schema' => [ + 'title' => '任务来源', + 'description' => 'The output configuration. For detailed parameters, see [OutputConfig](~~2874121#cef23186a8d6w~~).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{'."\n" + .' "OutputMediaTarget": "oss-object",'."\n" + .' "Bucket": "test-bucket",'."\n" + .' "ObjectKey": "path/to/test_{index}.mp4",'."\n" + .' "Width": 1920,'."\n" + .' "Height": 1080,'."\n" + .' "ExportAsNewMedia": false'."\n" + .'}', + ], + ], + [ + 'name' => 'UserData', + 'in' => 'query', + 'schema' => [ + 'title' => '用户配置UserData', + 'description' => 'The user-defined data in the JSON format, which can be up to 512 bytes in length.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{"test": "22"}', + ], + ], + [ + 'name' => 'JobParams', + 'in' => 'query', + 'schema' => [ + 'description' => 'The task parameters. For details, see [JobParams](~~2874121#a60357f2d5iix~~).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{'."\n" + .' "Mode": "UserDefined",'."\n" + .' "Ranges": [{'."\n" + .' "In": 10,'."\n" + .' "Out": 20'."\n" + .' }, {'."\n" + .' "In": 35,'."\n" + .' "Out": 50'."\n" + .' }]'."\n" + .'}', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.', + 'type' => 'string', + 'example' => '******3B-0E1A-586A-AC29-742247******'."\n", + ], + 'JobId' => [ + 'title' => '批量混剪任务jobId', + 'description' => 'The task ID.', + 'type' => 'string', + 'example' => '****cdb3e74639973036bc84****'."\n", + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******3B-0E1A-586A-AC29-742247******\\\\n\\",\\n \\"JobId\\": \\"****cdb3e74639973036bc84****\\\\n\\"\\n}","type":"json"}]', + 'title' => 'SubmitSegmentationJob', + ], + 'GetSmartHandleJob' => [ + 'summary' => 'Queries the information about an intelligent job and the execution results of the job based the job ID. You can call this operation to query only intelligent jobs created within the past year.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREice405U0J', + ], + ], + 'parameters' => [ + [ + 'name' => 'JobId', + 'in' => 'query', + 'schema' => [ + 'title' => '任务Id', + 'description' => 'The job ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'headers' => [], + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求Id', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'JobId' => [ + 'title' => '任务Id', + 'description' => 'The job ID.'."\n", + 'type' => 'string', + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + 'Output' => [ + 'title' => '任务结果', + 'description' => 'The job results.'."\n", + 'type' => 'string', + 'example' => '{}', + ], + 'JobResult' => [ + 'description' => 'The job results.'."\n", + 'type' => 'object', + 'properties' => [ + 'MediaId' => [ + 'title' => '媒资Id', + 'description' => 'The ID of the media asset.'."\n", + 'type' => 'string', + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + 'AiResult' => [ + 'title' => '智能分析结果', + 'description' => 'The AI analysis result.'."\n", + 'type' => 'string', + 'example' => 'Intelligent segmentation or tagging information'."\n", + ], + 'Usage' => [ + 'description' => 'The token usage. This parameter is returned only for keyword-based text generation jobs.'."\n", + 'type' => 'string', + 'example' => '{"total_tokens":100}', + ], + 'MediaUrl' => [ + 'type' => 'string', + ], + ], + ], + 'State' => [ + 'title' => '任务状态', + 'description' => 'The job state.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* Finished'."\n" + .'* Failed'."\n" + .'* Executing'."\n" + .'* Created'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'Finished' => '', + 'Failed' => '', + 'Executing' => '', + 'Created' => '', + ], + 'example' => 'Finished', + ], + 'UserData' => [ + 'title' => '用户自定义信息', + 'description' => 'The user-defined data in the JSON format.'."\n", + 'type' => 'string', + 'example' => '{"user":"data"}', + ], + 'SmartJobInfo' => [ + 'title' => '智能任务信息', + 'description' => 'The information about the intelligent job.'."\n", + 'type' => 'object', + 'properties' => [ + 'Title' => [ + 'title' => '任务标题', + 'description' => 'The job title.'."\n", + 'type' => 'string', + 'example' => '测试标题', + ], + 'Description' => [ + 'title' => '任务描述', + 'description' => 'The job description.'."\n", + 'type' => 'string', + 'example' => '测试描述', + ], + 'UserId' => [ + 'title' => 'userid', + 'description' => 'The user ID.'."\n", + 'type' => 'string', + 'example' => '1974526429******', + ], + 'InputConfig' => [ + 'title' => '输入参数', + 'description' => 'The input configurations.'."\n", + 'type' => 'object', + 'properties' => [ + 'InputFile' => [ + 'title' => 'OSS地址 或 内容库素材ID', + 'description' => 'The OSS URL or the ID of the material in the media asset library.'."\n", + 'type' => 'string', + 'example' => 'oss://example-bucket.oss-cn-shanghai.aliyuncs.com/example.mp4 或 ******11-DB8D-4A9A-875B-275798******', + ], + ], + ], + 'OutputConfig' => [ + 'title' => '输出配置', + 'description' => 'The output configurations.'."\n", + 'type' => 'object', + 'properties' => [ + 'Bucket' => [ + 'title' => 'OSS Bucket', + 'description' => 'The OSS bucket.'."\n", + 'type' => 'string', + 'example' => 'test-bucket', + ], + 'Object' => [ + 'title' => 'OSS Object', + 'description' => 'The OSS object.'."\n", + 'type' => 'string', + 'example' => 'test-object', + ], + ], + ], + 'CreateTime' => [ + 'title' => '创建时间', + 'description' => 'The time when the job was created.'."\n", + 'type' => 'string', + 'example' => '2020-12-26T04:11:10Z', + ], + 'ModifiedTime' => [ + 'title' => '修改时间', + 'description' => 'The time when the job was last modified.'."\n", + 'type' => 'string', + 'example' => '2020-12-26T04:11:10Z', + ], + 'JobType' => [ + 'title' => '任务类型', + 'description' => 'The job type.'."\n", + 'type' => 'string', + 'example' => 'ASR', + ], + ], + ], + 'ErrorCode' => [ + 'type' => 'string', + ], + 'ErrorMessage' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"JobId\\": \\"****20b48fb04483915d4f2cd8ac****\\",\\n \\"Output\\": \\"{}\\",\\n \\"JobResult\\": {\\n \\"MediaId\\": \\"****20b48fb04483915d4f2cd8ac****\\",\\n \\"AiResult\\": \\"拆条或智能标签信息\\",\\n \\"Usage\\": \\"{\\\\\\"total_tokens\\\\\\":100}\\",\\n \\"MediaUrl\\": \\"\\"\\n },\\n \\"State\\": \\"Finished\\",\\n \\"UserData\\": \\"{\\\\\\"user\\\\\\":\\\\\\"data\\\\\\"}\\",\\n \\"SmartJobInfo\\": {\\n \\"Title\\": \\"测试标题\\",\\n \\"Description\\": \\"测试描述\\",\\n \\"UserId\\": \\"1974526429******\\",\\n \\"InputConfig\\": {\\n \\"InputFile\\": \\"oss://example-bucket.oss-cn-shanghai.aliyuncs.com/example.mp4 或 ******11-DB8D-4A9A-875B-275798******\\"\\n },\\n \\"OutputConfig\\": {\\n \\"Bucket\\": \\"test-bucket\\",\\n \\"Object\\": \\"test-object\\"\\n },\\n \\"CreateTime\\": \\"2020-12-26T04:11:10Z\\",\\n \\"ModifiedTime\\": \\"2020-12-26T04:11:10Z\\",\\n \\"JobType\\": \\"ASR\\"\\n },\\n \\"ErrorCode\\": \\"\\",\\n \\"ErrorMessage\\": \\"\\"\\n}","errorExample":""},{"type":"xml","example":"<GetSmartHandleJobResponse>\\n <RequestId>******11-DB8D-4A9A-875B-275798******</RequestId>\\n <JobId>****20b48fb04483915d4f2cd8ac****</JobId>\\n <Output>{}</Output>\\n <State>Finished</State>\\n <UserData>{\\"user\\":\\"data\\"}</UserData>\\n <SmartJobInfo>\\n <Title>测试标题</Title>\\n <Description>测试描述</Description>\\n <UserId>1974526429******</UserId>\\n <InputConfig>\\n <InputFile>oss://example-bucket.oss-cn-shanghai.aliyuncs.com/example.mp4 或 ******11-DB8D-4A9A-875B-275798******</InputFile>\\n </InputConfig>\\n <OutputConfig>\\n <Bucket>test-bucket</Bucket>\\n <Object>test-object</Object>\\n </OutputConfig>\\n <CreateTime>2020-12-26T04:11:10Z</CreateTime>\\n <ModifiedTime>2020-12-26T04:11:10Z</ModifiedTime>\\n <JobType>ASR</JobType>\\n </SmartJobInfo>\\n</GetSmartHandleJobResponse>","errorExample":""}]', + 'title' => 'GetSmartHandleJob', + 'responseParamsDescription' => 'Each type of intelligent job returns results in different formats. The following examples are execution results for various intelligent jobs.'."\n" + ."\n" + .'## [](#asr-)ASR-based intelligent subtitle job'."\n" + ."\n" + .' {'."\n" + .' "RequestId": "******2D-443C-5043-B0E4-867070******",'."\n" + .' "JobId": "******042d5e4db6866f6289d1******",'."\n" + .' "State": "Finished",'."\n" + .' "SmartJobInfo": {'."\n" + .' "JobType": "ASR",'."\n" + .' "ModifiedTime": "2022-01-21T06:15:08Z",'."\n" + .' "CreateTime": "2022-01-21T06:15:02Z",'."\n" + .' "Title": "default_title_2022-01-21T06:15:02Z",'."\n" + .' "InputConfig": {'."\n" + .' "JobParameters": "{\\"duration\\":\\"00:30:00\\",\\"start_time\\":\\"00:00:00\\",\\"request_params\\":\\"&enable_word_level_result=true\\"}",'."\n" + .' "InputFile": "oss://your-bucket.oss-cn-shanghai.aliyuncs.com/your-video.mp4"'."\n" + .' }'."\n" + .' },'."\n" + .' "JobResult": {'."\n" + .' "AiResult": "[{\\"content\\":\\"Talking about\\",\\"from\\":0.0,\\"to\\":0.846},{\\"content\\":\\"he is now incredibly popular\\",\\"from\\":0.846,\\"to\\":3.386},{\\"content\\":\\"Although ticket prices are high\\",\\"from\\":3.386,\\"to\\":4.402},{\\"content\\":\\"his shows often sell out instantly\\",\\"from\\":4.402,\\"to\\":6.265},{\\"content\\":\\"In addition, he frequently appears on various comedy programs, where he judges performances by new comedians\\",\\"from\\":6.265,\\"to\\":10.33}]"'."\n" + .' }'."\n" + .' }'."\n" + ."\n" + .'## [](#)Intelligent audio production job'."\n" + ."\n" + .' {'."\n" + .' "RequestId": "******2D-443C-5043-B0E4-867070******",'."\n" + .' "JobId": "******042d5e4db6866f6289d1******",'."\n" + .' "State": "Finished",'."\n" + .' "SmartJobInfo": {'."\n" + .' "Title": "default_title_2022-01-21T06:15:07Z",'."\n" + .' "JobType": "TextToSpeech",'."\n" + .' "CreateTime": "2022-01-21T06:15:07Z",'."\n" + .' "ModifiedTime": "2022-01-21T06:15:07Z",'."\n" + .' "InputConfig": {'."\n" + .' "InputFile": "Talking about Guo Degang, he is now incredibly popular. Although ticket prices are high, his shows often sell out instantly. In addition, he frequently appears on various comedy programs, where he judges performances by new comedians."'."\n" + .' },'."\n" + .' "EditingConfig": "{\\"format\\":\\"MP3\\",\\"pitch_rate\\":0,\\"sample_rate\\":16000,\\"speech_rate\\":0,\\"voice\\":\\"Siqi\\",\\"volume\\":50}",'."\n" + .' "OutputConfig": {'."\n" + .' "Bucket": "your-bucket",'."\n" + .' "Object": "your-audio"'."\n" + .' }'."\n" + .' },'."\n" + .' "JobResult": {'."\n" + .' "MediaId": "******bf47c94e82b3b2014361******",'."\n" + .' "AiResult": "[{\\"content\\":\\"Talking about\\",\\"from\\":0.0,\\"to\\":0.846},{\\"content\\":\\"he is now incredibly popular\\",\\"from\\":0.846,\\"to\\":3.386},{\\"content\\":\\"Although ticket prices are high\\",\\"from\\":3.386,\\"to\\":4.402},{\\"content\\":\\"his shows often sell out instantly\\",\\"from\\":4.402,\\"to\\":6.265},{\\"content\\":\\"In addition, he frequently appears on various comedy programs, where he judges performances by new comedians\\",\\"from\\":6.265,\\"to\\":10.33}]"'."\n" + .' }'."\n" + .' }'."\n" + ."\n" + .'## [](#)Keyword-based text generation job'."\n" + ."\n" + .' {'."\n" + .' "RequestId":"******AC-5A01-1116-87A4-BF86F2******",'."\n" + .' "UserData":"{\\"NotifyAddress\\":\\"https://****\\"}",'."\n" + .' "JobResult":{'."\n" + .' "AiResult":"[\\"Our new cake shop uses pure dairy cream, offering a mellow and silky smooth taste. Every bite is a sweet surprise, making your taste buds dance with freshness and purity. \\",\\"Explore a new world of desserts at our new cake shop. Our cakes are made with high-quality dairy cream. The flavor is subtly sweet but not overwhelming, with layers of richness. Each cake tells a sweet story of craftsmanship, waiting for you to savor. \\",\\"For those who appreciate the fine things in life, our new cake shop uses premium dairy cream, free from artificial additives. The pure and fragrant milk flavor is light and airy, with each bite offering a unique celebration of pleasures in life. \\"]",'."\n" + .' "Usage": "{\\"total_tokens\\":200}"'."\n" + .' },'."\n" + .' "State":"Finished",'."\n" + .' "JobId":"******8c784f461db57c99c9d9******",'."\n" + .' "SmartJobInfo":{'."\n" + .' "JobType":"TextGenerate",'."\n" + .' "ModifiedTime":"2024-01-17T08:46:17Z",'."\n" + .' "CreateTime":"2024-01-17T08:46:17Z",'."\n" + .' "Title":"default_title_2024-01-17T08:46:17Z",'."\n" + .' "EditingConfig":"{\\"Type\\":\\"MarketingCopy\\",\\"GenerateConfig\\":\\"{\\\\\\"keywords\\\\\\":\\\\\\"New cake shop, dairy cream\\\\\\",\\\\\\"textLength\\\\\\":100,\\\\\\"targetCount\\\\\\":3}\\"}"'."\n" + .' }'."\n" + .' }'."\n", + ], + 'DeleteSmartJob' => [ + 'summary' => 'Deletes intelligent jobs based on job IDs.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'JobId', + 'in' => 'query', + 'schema' => [ + 'title' => '任务id,多个任务id用英文逗号分割', + 'description' => 'The IDs of the jobs to delete. Separate multiple IDs with commas (,).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '******b48fb04483915d4f2cd8******,******042d5e4db6866f6289d1******', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'RequestId', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteSmartJobResponse>\\n <RequestId>******11-DB8D-4A9A-875B-275798******</RequestId>\\n</DeleteSmartJobResponse>","errorExample":""}]', + 'title' => 'DeleteSmartJob', + ], + 'ListSmartJobs' => [ + 'summary' => 'Queries a list of intelligent jobs based on specified parameters.', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'NextToken', + 'in' => 'query', + 'schema' => [ + 'title' => '当前开始读取的位置', + 'description' => 'The pagination token that is used in the next request to retrieve a new page of results.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '****73f33c91-d59383e8280b****', + ], + ], + [ + 'name' => 'MaxResults', + 'in' => 'query', + 'schema' => [ + 'title' => '分页大小。最大不超过100。 默认值:10', + 'description' => 'The maximum number of entries to return.'."\n" + ."\n" + .'Default value: 10. Valid values: 1 to 100.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '10', + ], + ], + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'title' => '当前页码。默认值为1。', + 'description' => 'The page number. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'title' => '分页大小,每页显示条数。默认值为10,最大值为100。', + 'description' => 'The number of entries per page. Default value: 10. Valid values: 1 to 100.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '10', + ], + ], + [ + 'name' => 'JobType', + 'in' => 'query', + 'schema' => [ + 'title' => '任务类型', + 'description' => 'The job type.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* ASR: automatic speech recognition(job) job.'."\n" + .'* DynamicChart: dynamic chart job.'."\n" + .'* VideoTranslation: video translation job.'."\n" + .'* TextToSpeech: intelligent audio production job.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'ASR' => '', + 'DynamicChart' => '', + 'VideoTranslation' => '', + 'TextToSpeech' => '', + ], + 'example' => 'ASR', + ], + ], + [ + 'name' => 'SortBy', + 'in' => 'query', + 'schema' => [ + 'title' => '排序参数,默认根据创建时间倒序', + 'description' => 'The sorting parameter. By default, the query results are sorted by creation time in descending order.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* CreationTime:Asc: sorted by creation time in ascending order.'."\n" + .'* CreationTime:Desc: sorted by creation time in descending order.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'CreationTime:Asc' => '', + 'CreationTime:Desc' => '', + ], + 'example' => 'CreationTime:Desc', + ], + ], + [ + 'name' => 'JobState', + 'in' => 'query', + 'schema' => [ + 'title' => '任务状态', + 'description' => 'The job state.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* Finished: The job is complete.'."\n" + .'* Failed: The job failed.'."\n" + .'* Executing: The job is in progress.'."\n" + .'* Created: The job is created.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'Finished' => '', + 'Failed' => '', + 'Executing' => '', + 'Created' => '', + ], + 'example' => 'Finished', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID。', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '****9262E3DA-07FA-4862-FCBB6BC61D08*****', + ], + 'SmartJobList' => [ + 'description' => 'The queried intelligent jobs.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The queried intelligent job.'."\n", + 'type' => 'object', + 'properties' => [ + 'JobId' => [ + 'title' => '任务Id', + 'description' => 'The job ID.'."\n", + 'type' => 'string', + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + 'Title' => [ + 'title' => '任务标题', + 'description' => 'The job title.'."\n", + 'type' => 'string', + 'example' => '测试标题', + ], + 'Description' => [ + 'title' => '任务描述', + 'description' => 'The job description.'."\n", + 'type' => 'string', + 'example' => '测试描述', + ], + 'UserId' => [ + 'title' => '用户Id', + 'description' => 'The user ID.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1084506228******', + ], + 'JobType' => [ + 'title' => '任务类型', + 'description' => 'The job type.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* ASR: ASR job.'."\n" + .'* DynamicChart: dynamic chart job.'."\n" + .'* TextToSpeech: intelligent audio production job.'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'ASR' => '', + 'DynamicChart' => '', + 'TextToSpeech' => '', + ], + 'example' => 'ASR', + ], + 'EditingConfig' => [ + 'title' => '输入配置', + 'description' => 'The editing configurations.'."\n", + 'type' => 'string', + 'example' => '{"AudioConfig":{},"InputConfig":""}', + ], + 'UserData' => [ + 'title' => '用户自定义字段', + 'description' => 'The user-defined data.'."\n", + 'type' => 'string', + 'example' => '{"user":"data"}', + ], + 'JobState' => [ + 'title' => '任务状态', + 'description' => 'The job state.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* Finished: The job is complete.'."\n" + .'* Failed: The job failed.'."\n" + .'* Executing: The job is in progress.'."\n" + .'* Created: The job is created.'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'Finished' => '', + 'Failed' => '', + 'Executing' => '', + 'Created' => '', + ], + 'example' => 'Finished', + ], + 'CreateTime' => [ + 'title' => '创建时间', + 'description' => 'The time when the job was created.'."\n", + 'type' => 'string', + 'example' => '2020-12-26T04:11:10Z', + ], + 'ModifiedTime' => [ + 'title' => '最后修改时间', + 'description' => 'The time when the job was last modified.'."\n", + 'type' => 'string', + 'example' => '2020-12-26T04:11:10Z', + ], + 'InputConfig' => [ + 'title' => '任务输入配置', + 'description' => 'The input configurations.'."\n", + 'type' => 'object', + 'properties' => [ + 'InputFile' => [ + 'title' => '文件信息', + 'description' => 'The information about the input file.'."\n", + 'type' => 'string', + 'example' => 'oss://example-bucket.oss-cn-shanghai.aliyuncs.com/example.mp4', + ], + 'Keyword' => [ + 'title' => '关键词信息', + 'description' => 'The keyword information.'."\n", + 'type' => 'string', + 'example' => '测试关键词', + ], + ], + ], + 'OutputConfig' => [ + 'title' => '任务输出配置', + 'description' => 'The output configurations.'."\n", + 'type' => 'object', + 'properties' => [ + 'Bucket' => [ + 'title' => 'OSS Bucket', + 'description' => 'The Object Storage Service (OSS) bucket.'."\n", + 'type' => 'string', + 'example' => 'test-bucket', + ], + 'Object' => [ + 'title' => 'OSS Object', + 'description' => 'The OSS object.'."\n", + 'type' => 'string', + 'example' => 'test-object', + ], + ], + ], + ], + ], + ], + 'NextToken' => [ + 'title' => '用来表示当前调用返回读取到的位置,空代表数据已经读取完毕。', + 'description' => 'A pagination token. It can be used in the next request to retrieve a new page of results. If NextToken is empty, no next page exists.'."\n", + 'type' => 'string', + 'example' => 'CBB6BC61D08', + ], + 'MaxResults' => [ + 'title' => '本次请求所返回的最大记录条数,最后一页前每页记录条数为MaxResults取值。 例如: 正例:10,10,5,反例:10,5,10', + 'description' => 'The maximum number of entries returned on a single page. The value is set to the maximum number of entries returned on each page except for the last page. Valid example: 10,10,5. Invalid example: 10,5,10.'."\n", + 'type' => 'string', + 'example' => '10', + ], + 'TotalCount' => [ + 'title' => '本次请求条件下的数据总量,此参数为可选参数,默认可不返回。', + 'description' => 'Optional. The total number of entries returned. By default, this parameter is not returned.'."\n", + 'type' => 'string', + 'example' => '110', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"****9262E3DA-07FA-4862-FCBB6BC61D08*****\\",\\n \\"SmartJobList\\": [\\n {\\n \\"JobId\\": \\"****20b48fb04483915d4f2cd8ac****\\",\\n \\"Title\\": \\"测试标题\\",\\n \\"Description\\": \\"测试描述\\",\\n \\"UserId\\": 0,\\n \\"JobType\\": \\"ASR\\",\\n \\"EditingConfig\\": \\"{\\\\\\"AudioConfig\\\\\\":{},\\\\\\"InputConfig\\\\\\":\\\\\\"\\\\\\"}\\",\\n \\"UserData\\": \\"{\\\\\\"user\\\\\\":\\\\\\"data\\\\\\"}\\",\\n \\"JobState\\": \\"Finished\\",\\n \\"CreateTime\\": \\"2020-12-26T04:11:10Z\\",\\n \\"ModifiedTime\\": \\"2020-12-26T04:11:10Z\\",\\n \\"InputConfig\\": {\\n \\"InputFile\\": \\"oss://example-bucket.oss-cn-shanghai.aliyuncs.com/example.mp4\\",\\n \\"Keyword\\": \\"测试关键词\\"\\n },\\n \\"OutputConfig\\": {\\n \\"Bucket\\": \\"test-bucket\\",\\n \\"Object\\": \\"test-object\\"\\n }\\n }\\n ],\\n \\"NextToken\\": \\"CBB6BC61D08\\",\\n \\"MaxResults\\": \\"10\\",\\n \\"TotalCount\\": \\"110\\"\\n}","errorExample":""},{"type":"xml","example":"<ListSmartJobsResponse>\\n <RequestId>****9262E3DA-07FA-4862-FCBB6BC61D08*****</RequestId>\\n <SmartJobList>\\n <JobId>****20b48fb04483915d4f2cd8ac****</JobId>\\n <Title>测试标题</Title>\\n <Description>测试描述</Description>\\n <JobType>ASR</JobType>\\n <EditingConfig>{\\"AudioConfig\\":{},\\"InputConfig\\":\\"\\"}</EditingConfig>\\n <UserData>{\\"user\\":\\"data\\"}</UserData>\\n <JobState>Finished</JobState>\\n <CreateTime>2020-12-26T04:11:10Z</CreateTime>\\n <ModifiedTime>2020-12-26T04:11:10Z</ModifiedTime>\\n <InputConfig>\\n <InputFile>oss://example-bucket.oss-cn-shanghai.aliyuncs.com/example.mp4</InputFile>\\n <Keyword>测试关键词</Keyword>\\n </InputConfig>\\n <OutputConfig>\\n <Bucket>test-bucket</Bucket>\\n <Object>test-object</Object>\\n </OutputConfig>\\n </SmartJobList>\\n <NextToken>CBB6BC61D08</NextToken>\\n <MaxResults>10</MaxResults>\\n <TotalCount>110</TotalCount>\\n</ListSmartJobsResponse>","errorExample":""}]', + 'title' => 'ListSmartJobs', + ], + 'ListSmartSysAvatarModels' => [ + 'summary' => 'Queries a list of system digital humans. This operation supports paged queries.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'abilityTreeCode' => '172912', + 'abilityTreeNodes' => [ + 'FEATUREiceM55707', + ], + ], + 'parameters' => [ + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page. Default value: 10. Valid values: 1 to 100.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '10', + ], + ], + [ + 'name' => 'SdkVersion', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '****63E8B7C7-4812-46AD-0FA56029AC86****', + ], + 'SmartSysAvatarModelList' => [ + 'description' => 'The queried digital humans.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The queried digital human.'."\n", + 'type' => 'object', + 'properties' => [ + 'AvatarName' => [ + 'description' => 'The name of the digital human.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'AvatarId' => [ + 'description' => 'The ID of the digital human. The ID is required to submit a separate digital human rendering job or use the digital human image in an intelligent timeline.'."\n", + 'type' => 'string', + 'example' => 'yunqiao', + ], + 'CoverUrl' => [ + 'description' => 'The sample thumbnail URL of the digital human.'."\n", + 'type' => 'string', + 'example' => 'http://ice-pub-media.myalicdn.com/smart/avatarModel/coverDemo/yunqiao.mp4', + ], + 'VideoUrl' => [ + 'description' => 'The sample video URL of the digital human.'."\n", + 'type' => 'string', + 'example' => 'http://ice-pub-media.myalicdn.com/smart/avatarModel/videoDemo/yunqiao.mp4', + ], + 'Width' => [ + 'description' => 'The video width.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1080', + ], + 'Height' => [ + 'description' => 'The video height.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1920', + ], + 'Bitrate' => [ + 'description' => 'The video bitrate.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '4000', + ], + 'OutputMask' => [ + 'description' => 'Indicates whether portrait mask rendering is supported.'."\n", + 'type' => 'boolean', + 'example' => 'false', + ], + ], + ], + ], + 'TotalCount' => [ + 'title' => '虚拟人总数', + 'description' => 'The total number of system digital human images returned.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '4', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"****63E8B7C7-4812-46AD-0FA56029AC86****\\",\\n \\"SmartSysAvatarModelList\\": [\\n {\\n \\"AvatarName\\": \\"云乔\\",\\n \\"AvatarId\\": \\"yunqiao\\",\\n \\"CoverUrl\\": \\"http://ice-pub-media.myalicdn.com/smart/avatarModel/coverDemo/yunqiao.mp4\\",\\n \\"VideoUrl\\": \\"http://ice-pub-media.myalicdn.com/smart/avatarModel/videoDemo/yunqiao.mp4\\",\\n \\"Width\\": 1080,\\n \\"Height\\": 1920,\\n \\"Bitrate\\": 4000,\\n \\"OutputMask\\": false\\n }\\n ],\\n \\"TotalCount\\": 4\\n}","type":"json"}]', + 'title' => 'ListSmartSysAvatarModels', + ], + 'ListSmartVoiceGroups' => [ + 'summary' => 'Queries a list of speaker groups, including the name, gender, and sample audio of each speaker. The list is grouped by scenario.', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '147883', + 'abilityTreeNodes' => [ + 'FEATUREiceM55707', + ], + ], + 'parameters' => [ + [ + 'name' => 'VoiceType', + 'in' => 'query', + 'schema' => [ + 'title' => '音色类型,默认不填:返回小模型语种音色。支持传入:'."\n" + .'Cosyvoice,返回Cosyvoice大模型音色示例。', + 'type' => 'string', + 'required' => false, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '627B30EB-1D0A-5C6D-8467-431626E0FA10', + ], + 'VoiceGroups' => [ + 'description' => 'The queried speaker groups.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The queried speaker groups.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The name of the speaker group.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'VoiceList' => [ + 'description' => 'The speakers.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The information about the speaker.'."\n", + 'type' => 'object', + 'properties' => [ + 'Name' => [ + 'description' => 'The speaker name.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'VoiceType' => [ + 'description' => 'The speaker type.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* Male'."\n" + .'* Female'."\n" + .'* Boy'."\n" + .'* Girl'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'Male' => 'Male', + 'Female' => 'Female', + 'Boy' => 'Boy', + 'Girl' => 'Girl', + ], + 'example' => 'Female', + ], + 'Voice' => [ + 'description' => 'The speaker ID.'."\n", + 'type' => 'string', + 'example' => 'zhitian', + ], + 'Desc' => [ + 'description' => 'The speaker description.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'Tag' => [ + 'description' => 'The tag of the speaker type.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'Remark' => [ + 'description' => 'The remarks of the speaker.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'VoiceUrl' => [ + 'description' => 'The URL of the sample audio file.'."\n", + 'type' => 'string', + 'example' => 'https://***.com/zhiqing.mp3', + ], + 'SupportSampleRate' => [ + 'type' => 'string', + ], + 'VoiceSource' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"627B30EB-1D0A-5C6D-8467-431626E0FA10\\",\\n \\"VoiceGroups\\": [\\n {\\n \\"Type\\": \\"超高清\\",\\n \\"VoiceList\\": [\\n {\\n \\"Name\\": \\"知甜\\",\\n \\"VoiceType\\": \\"Female\\",\\n \\"Voice\\": \\"zhitian\\",\\n \\"Desc\\": \\"甜美女声\\",\\n \\"Tag\\": \\"通用场景\\",\\n \\"Remark\\": \\"中文及中英文混合场景\\",\\n \\"VoiceUrl\\": \\"https://***.com/zhitian.mp3\\",\\n \\"SupportSampleRate\\": \\"48000\\",\\n \\"VoiceSource\\": \\"\\"\\n }\\n ]\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'ListSmartVoiceGroups', + ], + 'StartAIAgentInstance' => [ + 'summary' => 'Starts an AI agent that is configured in the Intelligent Media Services (IMS) console.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '236525', + 'abilityTreeNodes' => [ + 'FEATUREice405U0J', + ], + ], + 'parameters' => [ + [ + 'name' => 'AIAgentId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the AI agent created in the [IMS](https://ims.console.aliyun.com/ai/robot/list) console.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '39f8e0bc005e4f309379701645f4****', + ], + ], + [ + 'name' => 'RuntimeConfig', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => '', + 'required' => true, + '$ref' => '#/components/schemas/AIAgentRuntimeConfig', + ], + ], + [ + 'name' => 'AgentConfig', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + '$ref' => '#/components/schemas/AIAgentConfig', + ], + ], + [ + 'name' => 'UserData', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => '{"Email":"[email protected]","Preferences":{"Language":"en"}}', + ], + ], + [ + 'name' => 'SessionId', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => 'f213fbc005e4f309379701645f4****'."\n", + ], + ], + [ + 'name' => 'ChatSyncConfig', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => '同步聊天记录配置。', + 'type' => 'object', + 'properties' => [ + 'IMAIAgentId' => [ + 'description' => 'IM的智能体Id。', + 'type' => 'string', + 'required' => false, + 'example' => '******005e4f309379701645f4****'."\n", + ], + 'ReceiverId' => [ + 'description' => '接收用户Id。', + 'type' => 'string', + 'required' => false, + 'example' => '4167626d312034b2b1c3b7f2f3e41884', + ], + ], + 'required' => false, + ], + ], + [ + 'name' => 'TemplateConfig', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => '', + 'required' => false, + '$ref' => '#/components/schemas/AIAgentTemplateConfig', + 'deprecated' => true, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => '', + 'type' => 'string', + 'example' => '7B117AF5-2A16-412C-B127-FA6175ED1AD0', + ], + 'InstanceId' => [ + 'description' => '', + 'type' => 'string', + 'example' => '39f8e0bc005e4f309379701645f4****', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"7B117AF5-2A16-412C-B127-FA6175ED1AD0\\",\\n \\"InstanceId\\": \\"39f8e0bc005e4f309379701645f4****\\"\\n}","type":"json"}]', + 'title' => 'StartAIAgentInstance', + 'description' => 'You can call this operation to start an AI agent instance for a conversation. ````````When the AI agent is started, the system returns a unique `InstanceId` for subsequent tracking and operations.'."\n", + ], + 'StopAIAgentInstance' => [ + 'summary' => 'Stops an AI agent instance.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '236519', + 'abilityTreeNodes' => [ + 'FEATUREice405U0J', + ], + ], + 'parameters' => [ + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => true, + 'example' => '39f8e0bc005e4f309379701645f4****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => '', + 'type' => 'string', + 'example' => '7B117AF5-2A16-412C-B127-FA6175ED1AD0', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"7B117AF5-2A16-412C-B127-FA6175ED1AD0\\"\\n}","type":"json"}]', + 'title' => 'StopAIAgentInstance', + 'description' => '* When you no longer need an AI agent to participate in a conversation or task, you can call this operation to stop the running agent and release relevant resources.****'."\n" + .'* You must specify the unique ID of the AI agent that you want to stop by using InstanceId.****'."\n" + .'* ****'."\n", + ], + 'UpdateAIAgentInstance' => [ + 'summary' => 'Updates the configurations of an AI agent.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '236521', + 'abilityTreeNodes' => [ + 'FEATUREice405U0J', + ], + ], + 'parameters' => [ + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the AI agent that you want to update.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '39f8e0bc005e4f309379701645f4****', + ], + ], + [ + 'name' => 'AgentConfig', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + '$ref' => '#/components/schemas/AIAgentConfig', + ], + ], + [ + 'name' => 'UserData', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => '{"VoiceId":"xiaoxia"}', + ], + ], + [ + 'name' => 'TemplateConfig', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The template configurations of the AI agent. The configurations are merged with the template configurations that are used to start the AI agent. For more information, see the definition of TemplateConfig.'."\n", + 'required' => false, + '$ref' => '#/components/schemas/AIAgentTemplateConfig', + 'deprecated' => true, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '7B117AF5-2A16-412C-B127-FA6175ED1AD0', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"7B117AF5-2A16-412C-B127-FA6175ED1AD0\\"\\n}","type":"json"}]', + 'title' => 'UpdateAIAgentInstance', + 'description' => '## [](#)Request description'."\n" + ."\n" + .'You can call this operation to update the configurations of an AI agent, such as the tone, by specifying the agent ID and configurations.'."\n", + ], + 'DescribeAIAgentInstance' => [ + 'summary' => 'Queries the information about an AI agent.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '236522', + 'abilityTreeNodes' => [ + 'FEATUREice405U0J', + ], + ], + 'parameters' => [ + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the AI agent that you want to query.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '39f8e0bc005e4f309379701645f4****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'Instance' => [ + 'description' => 'The information about the AI agent.'."\n", + 'type' => 'object', + 'properties' => [ + 'CallLogUrl' => [ + 'description' => 'The URL of the call log file.'."\n", + 'type' => 'string', + 'example' => 'https://example.com/call_logs/12345', + ], + 'RuntimeConfig' => [ + 'description' => 'The runtime configurations of the AI agent.'."\n", + 'example' => '{"VoiceChat":{"AgentUserId":"voice_agent_001","ChannelId":"voice_channel_001","AuthToken":"your_voice_chat_auth_token"}}', + '$ref' => '#/components/schemas/AIAgentRuntimeConfig', + ], + 'Status' => [ + 'description' => 'The state of the AI agent. Valid values: Finished and Executing.'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'Finished' => 'Finished', + 'Executing' => 'Executing', + ], + 'example' => 'Finished', + ], + 'TemplateConfig' => [ + 'description' => 'The template configurations of the AI agent.'."\n", + 'example' => '{"VoiceChat": {"AppId": "your_voice_chat_app_id"}}', + '$ref' => '#/components/schemas/AIAgentTemplateConfig', + 'deprecated' => true, + ], + 'UserData' => [ + 'description' => 'The custom information.'."\n", + 'type' => 'string', + 'example' => '{"Email":"[email protected]","Preferences":{"Language":"en"}}', + ], + 'SessionId' => [ + 'type' => 'string', + ], + 'AgentConfig' => [ + '$ref' => '#/components/schemas/AIAgentConfig', + ], + 'GmtCreate' => [ + 'type' => 'string', + ], + 'GmtModified' => [ + 'type' => 'string', + ], + ], + ], + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '7B117AF5-2A16-412C-B127-FA6175ED1AD0', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Instance\\": {\\n \\"CallLogUrl\\": \\"https://example.com/call_logs/12345\\",\\n \\"RuntimeConfig\\": {\\n \\"VoiceChat\\": {\\n \\"AuthToken\\": \\"\\",\\n \\"AgentUserId\\": \\"\\",\\n \\"ChannelId\\": \\"\\"\\n },\\n \\"AuthToken\\": \\"\\",\\n \\"AgentUserId\\": \\"\\",\\n \\"VisionChat\\": {\\n \\"AuthToken\\": \\"\\",\\n \\"AgentUserId\\": \\"\\",\\n \\"ChannelId\\": \\"\\"\\n },\\n \\"ChannelId\\": \\"\\",\\n \\"AvatarChat3D\\": {\\n \\"AuthToken\\": \\"\\",\\n \\"AgentUserId\\": \\"\\",\\n \\"ChannelId\\": \\"\\"\\n }\\n },\\n \\"Status\\": \\"Finished\\",\\n \\"TemplateConfig\\": {\\n \\"VoiceChat\\": {\\n \\"Greeting\\": \\"\\",\\n \\"LlmHistory\\": [\\n {\\n \\"Role\\": \\"\\",\\n \\"Content\\": \\"\\"\\n }\\n ],\\n \\"WorkflowOverrideParams\\": \\"\\",\\n \\"EnableIntelligentSegment\\": true,\\n \\"AvatarUrlType\\": \\"\\",\\n \\"AvatarUrl\\": \\"\\",\\n \\"VoiceIdList\\": [\\n \\"\\"\\n ],\\n \\"CharBreak\\": true,\\n \\"EnableVoiceInterrupt\\": true,\\n \\"VoiceprintId\\": \\"\\",\\n \\"GracefulShutdown\\": true,\\n \\"InterruptWords\\": [\\n \\"\\"\\n ],\\n \\"UserOnlineTimeout\\": 0,\\n \\"AsrLanguageId\\": \\"\\",\\n \\"UserOfflineTimeout\\": 0,\\n \\"LlmSystemPrompt\\": \\"\\",\\n \\"BailianAppParams\\": \\"\\",\\n \\"VadLevel\\": 0,\\n \\"LlmHistoryLimit\\": 0,\\n \\"AsrMaxSilence\\": 0,\\n \\"WakeUpQuery\\": \\"\\",\\n \\"AppId\\": \\"\\",\\n \\"Volume\\": 0,\\n \\"VoiceId\\": \\"\\",\\n \\"UseVoiceprint\\": true,\\n \\"MaxIdleTime\\": 0,\\n \\"AsrHotWords\\": [\\n \\"\\"\\n ],\\n \\"EnablePushToTalk\\": true\\n },\\n \\"MessageChat\\": {\\n \\"AppId\\": \\"\\",\\n \\"VoiceIdList\\": [\\n \\"\\"\\n ]\\n },\\n \\"VisionChat\\": {\\n \\"Greeting\\": \\"\\",\\n \\"LlmHistory\\": [\\n {\\n \\"Role\\": \\"\\",\\n \\"Content\\": \\"\\"\\n }\\n ],\\n \\"WorkflowOverrideParams\\": \\"\\",\\n \\"EnableIntelligentSegment\\": true,\\n \\"VoiceIdList\\": [\\n \\"\\"\\n ],\\n \\"CharBreak\\": true,\\n \\"EnableVoiceInterrupt\\": true,\\n \\"VoiceprintId\\": \\"\\",\\n \\"GracefulShutdown\\": true,\\n \\"InterruptWords\\": [\\n \\"\\"\\n ],\\n \\"UserOnlineTimeout\\": 0,\\n \\"AsrLanguageId\\": \\"\\",\\n \\"UserOfflineTimeout\\": 0,\\n \\"LlmSystemPrompt\\": \\"\\",\\n \\"BailianAppParams\\": \\"\\",\\n \\"VadLevel\\": 0,\\n \\"LlmHistoryLimit\\": 0,\\n \\"AsrMaxSilence\\": 0,\\n \\"WakeUpQuery\\": \\"\\",\\n \\"AppId\\": \\"\\",\\n \\"Volume\\": 0,\\n \\"VoiceId\\": \\"\\",\\n \\"UseVoiceprint\\": true,\\n \\"MaxIdleTime\\": 0,\\n \\"AsrHotWords\\": [\\n \\"\\"\\n ],\\n \\"EnablePushToTalk\\": true\\n },\\n \\"AvatarChat3D\\": {\\n \\"Greeting\\": \\"\\",\\n \\"LlmHistory\\": [\\n {\\n \\"Role\\": \\"\\",\\n \\"Content\\": \\"\\"\\n }\\n ],\\n \\"WorkflowOverrideParams\\": \\"\\",\\n \\"EnableIntelligentSegment\\": true,\\n \\"VoiceIdList\\": [\\n \\"\\"\\n ],\\n \\"AvatarId\\": \\"\\",\\n \\"CharBreak\\": true,\\n \\"EnableVoiceInterrupt\\": true,\\n \\"VoiceprintId\\": \\"\\",\\n \\"GracefulShutdown\\": true,\\n \\"InterruptWords\\": [\\n \\"\\"\\n ],\\n \\"UserOnlineTimeout\\": 0,\\n \\"AsrLanguageId\\": \\"\\",\\n \\"UserOfflineTimeout\\": 0,\\n \\"LlmSystemPrompt\\": \\"\\",\\n \\"BailianAppParams\\": \\"\\",\\n \\"VadLevel\\": 0,\\n \\"LlmHistoryLimit\\": 0,\\n \\"AsrMaxSilence\\": 0,\\n \\"WakeUpQuery\\": \\"\\",\\n \\"AppId\\": \\"\\",\\n \\"Volume\\": 0,\\n \\"VoiceId\\": \\"\\",\\n \\"UseVoiceprint\\": true,\\n \\"MaxIdleTime\\": 0,\\n \\"AsrHotWords\\": [\\n \\"\\"\\n ],\\n \\"EnablePushToTalk\\": true\\n }\\n },\\n \\"UserData\\": \\"{\\\\\\"Email\\\\\\":\\\\\\"[email protected]\\\\\\",\\\\\\"Preferences\\\\\\":{\\\\\\"Language\\\\\\":\\\\\\"en\\\\\\"}}\\",\\n \\"SessionId\\": \\"955535**************\\",\\n \\"AgentConfig\\": {\\n \\"AppId\\": \\"\\",\\n \\"Greeting\\": \\"\\",\\n \\"WakeUpQuery\\": \\"\\",\\n \\"MaxIdleTime\\": 0,\\n \\"UserOnlineTimeout\\": 0,\\n \\"UserOfflineTimeout\\": 0,\\n \\"EnablePushToTalk\\": true,\\n \\"GracefulShutdown\\": true,\\n \\"Volume\\": 0,\\n \\"WorkflowOverrideParams\\": \\"\\",\\n \\"AvatarUrl\\": \\"\\",\\n \\"AvatarUrlType\\": \\"\\",\\n \\"EnableIntelligentSegment\\": true,\\n \\"AsrConfig\\": {\\n \\"AsrLanguageId\\": \\"\\",\\n \\"AsrMaxSilence\\": 0,\\n \\"AsrHotWords\\": [\\n \\"\\"\\n ],\\n \\"VadLevel\\": 0,\\n \\"CustomParams\\": \\"\\",\\n \\"VadDuration\\": 0\\n },\\n \\"TtsConfig\\": {\\n \\"VoiceId\\": \\"\\",\\n \\"VoiceIdList\\": [\\n \\"\\"\\n ],\\n \\"PronunciationRules\\": [\\n {\\n \\"Word\\": \\"\\",\\n \\"Pronunciation\\": \\"\\",\\n \\"Type\\": \\"\\"\\n }\\n ],\\n \\"ModelId\\": \\"\\",\\n \\"LanguageId\\": \\"\\",\\n \\"Emotion\\": \\"\\",\\n \\"SpeechRate\\": 0\\n },\\n \\"LlmConfig\\": {\\n \\"LlmHistory\\": [\\n {\\n \\"Role\\": \\"\\",\\n \\"Content\\": \\"\\"\\n }\\n ],\\n \\"LlmHistoryLimit\\": 0,\\n \\"LlmSystemPrompt\\": \\"\\",\\n \\"BailianAppParams\\": \\"\\",\\n \\"OpenAIExtraQuery\\": \\"\\",\\n \\"LlmCompleteReply\\": true,\\n \\"FunctionMap\\": [\\n {\\n \\"Function\\": \\"\\",\\n \\"MatchFunction\\": \\"\\"\\n }\\n ],\\n \\"OutputMinLength\\": 0,\\n \\"OutputMaxDelay\\": 0,\\n \\"HistorySyncWithTTS\\": true\\n },\\n \\"AvatarConfig\\": {\\n \\"AvatarId\\": \\"\\"\\n },\\n \\"InterruptConfig\\": {\\n \\"EnableVoiceInterrupt\\": true,\\n \\"InterruptWords\\": [\\n \\"\\"\\n ],\\n \\"NoInterruptMode\\": \\"\\"\\n },\\n \\"VoiceprintConfig\\": {\\n \\"UseVoiceprint\\": true,\\n \\"VoiceprintId\\": \\"\\",\\n \\"RegistrationMode\\": \\"\\"\\n },\\n \\"TurnDetectionConfig\\": {\\n \\"TurnEndWords\\": [\\n \\"\\"\\n ],\\n \\"Mode\\": \\"\\",\\n \\"SemanticWaitDuration\\": 0,\\n \\"Eagerness\\": \\"\\"\\n },\\n \\"ExperimentalConfig\\": \\"\\",\\n \\"VcrConfig\\": {\\n \\"StillFrameMotion\\": {\\n \\"Enabled\\": true,\\n \\"CallbackDelay\\": 0\\n },\\n \\"InvalidFrameMotion\\": {\\n \\"Enabled\\": true,\\n \\"CallbackDelay\\": 0\\n },\\n \\"PeopleCount\\": {\\n \\"Enabled\\": true\\n },\\n \\"Equipment\\": {\\n \\"Enabled\\": true\\n },\\n \\"HeadMotion\\": {\\n \\"Enabled\\": true\\n },\\n \\"LookAway\\": {\\n \\"Enabled\\": true\\n }\\n },\\n \\"OutboundCallConfig\\": {\\n \\"Type\\": 0,\\n \\"SipDomain\\": \\"\\"\\n },\\n \\"InboundCallConfig\\": {\\n \\"Type\\": 0,\\n \\"AuthUrl\\": \\"\\",\\n \\"AuthToken\\": \\"\\"\\n },\\n \\"AmbientSoundConfig\\": {\\n \\"ResourceId\\": \\"\\",\\n \\"Volume\\": 0\\n },\\n \\"AutoSpeechConfig\\": {\\n \\"UserIdle\\": {\\n \\"WaitTime\\": 0,\\n \\"MaxRepeats\\": 0,\\n \\"Messages\\": [\\n {\\n \\"Text\\": \\"\\",\\n \\"Probability\\": 0\\n }\\n ]\\n },\\n \\"LlmPending\\": {\\n \\"WaitTime\\": 0,\\n \\"Messages\\": [\\n {\\n \\"Text\\": \\"\\",\\n \\"Probability\\": 0\\n }\\n ]\\n }\\n },\\n \\"BackChannelingConfigs\\": [\\n {\\n \\"Enabled\\": true,\\n \\"TriggerStage\\": \\"\\",\\n \\"Probability\\": 0,\\n \\"Words\\": [\\n {\\n \\"Text\\": \\"\\",\\n \\"Probability\\": 0\\n }\\n ]\\n }\\n ],\\n \\"BackChannelingConfig\\": [\\n {\\n \\"Enabled\\": true,\\n \\"TriggerStage\\": \\"\\",\\n \\"Probability\\": 0,\\n \\"Words\\": [\\n {\\n \\"Text\\": \\"\\",\\n \\"Probability\\": 0\\n }\\n ]\\n }\\n ]\\n },\\n \\"GmtCreate\\": \\"2025-07-18T06:39:08.000+00:00\\",\\n \\"GmtModified\\": \\"2025-07-18T06:40:12.000+00:00\\"\\n },\\n \\"RequestId\\": \\"7B117AF5-2A16-412C-B127-FA6175ED1AD0\\"\\n}","type":"json"}]', + 'title' => 'DescribeAIAgentInstance', + 'description' => '## [](#)Request description'."\n" + ."\n" + .'* **Feature**: You can call this operation to query the information about an AI agent.'."\n" + .'* **Scenario**: If you need to monitor or analyze the performance of an AI agent in a call or debug the agent configurations, you can call this operation to obtain required data.'."\n", + ], + 'ListAIAgentInstance' => [ + 'summary' => 'Queries a list of AI agents.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '236523', + 'abilityTreeNodes' => [ + 'FEATUREice405U0J', + ], + ], + 'parameters' => [ + [ + 'name' => 'AIAgentId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the AI agent.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '39f8e0bc005e4f309379701645f4***', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The beginning of the time range to query. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC. This parameter does not have a default value.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2023-01-01T00:00:00Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end of the time range to query. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC. This parameter does not have a default value.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2023-01-02T00:00:00Z', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page. Default value: 10. Valid values: 0 to 100.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '10', + ], + ], + [ + 'name' => 'PageNumber', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number. Default value: 1. Valid values: 1 to 100.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'Instances' => [ + 'description' => 'The list of the AI agents.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'CallLogUrl' => [ + 'description' => 'The URL of the call log file for the AI agent. The structure of the file is CallLog in the JSON format.'."\n", + 'type' => 'string', + 'example' => 'https://example.com/call_logs/12345.json', + ], + 'RuntimeConfig' => [ + 'description' => 'The runtime configurations of the AI agent.'."\n", + 'example' => '{"VoiceChat":{"AgentUserId":"voice_agent_001","ChannelId":"voice_channel_001","AuthToken":"your_voice_chat_auth_token"}}', + '$ref' => '#/components/schemas/AIAgentRuntimeConfig', + ], + 'Status' => [ + 'description' => 'The state of the instance. Valid values:'."\n" + ."\n" + .'* Executing'."\n" + .'* Finished'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'Finished' => 'Finished', + 'Executing' => 'Executing', + ], + 'example' => 'Finished', + ], + 'TemplateConfig' => [ + 'description' => 'The template configurations of the AI agent.'."\n", + 'example' => '{"VoiceChat": {"VoiceId": "zhixiaoxia"}}', + '$ref' => '#/components/schemas/AIAgentTemplateConfig', + 'deprecated' => true, + ], + 'UserData' => [ + 'description' => 'The custom information.'."\n", + 'type' => 'string', + 'example' => '{"Email":"[email protected]","Preferences":{"Language":"en"}}', + ], + 'AgentConfig' => [ + '$ref' => '#/components/schemas/AIAgentConfig', + ], + ], + 'description' => '', + ], + ], + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '7B117AF5-2A16-412C-B127-FA6175ED1AD0', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Instances\\": [\\n {\\n \\"CallLogUrl\\": \\"https://example.com/call_logs/12345.json\\",\\n \\"RuntimeConfig\\": {\\n \\"VoiceChat\\": {\\n \\"AuthToken\\": \\"\\",\\n \\"AgentUserId\\": \\"\\",\\n \\"ChannelId\\": \\"\\"\\n },\\n \\"AuthToken\\": \\"\\",\\n \\"AgentUserId\\": \\"\\",\\n \\"VisionChat\\": {\\n \\"AuthToken\\": \\"\\",\\n \\"AgentUserId\\": \\"\\",\\n \\"ChannelId\\": \\"\\"\\n },\\n \\"ChannelId\\": \\"\\",\\n \\"AvatarChat3D\\": {\\n \\"AuthToken\\": \\"\\",\\n \\"AgentUserId\\": \\"\\",\\n \\"ChannelId\\": \\"\\"\\n }\\n },\\n \\"Status\\": \\"Finished\\",\\n \\"TemplateConfig\\": {\\n \\"VoiceChat\\": {\\n \\"Greeting\\": \\"\\",\\n \\"LlmHistory\\": [\\n {\\n \\"Role\\": \\"\\",\\n \\"Content\\": \\"\\"\\n }\\n ],\\n \\"WorkflowOverrideParams\\": \\"\\",\\n \\"EnableIntelligentSegment\\": true,\\n \\"AvatarUrlType\\": \\"\\",\\n \\"AvatarUrl\\": \\"\\",\\n \\"VoiceIdList\\": [\\n \\"\\"\\n ],\\n \\"CharBreak\\": true,\\n \\"EnableVoiceInterrupt\\": true,\\n \\"VoiceprintId\\": \\"\\",\\n \\"GracefulShutdown\\": true,\\n \\"InterruptWords\\": [\\n \\"\\"\\n ],\\n \\"UserOnlineTimeout\\": 0,\\n \\"AsrLanguageId\\": \\"\\",\\n \\"UserOfflineTimeout\\": 0,\\n \\"LlmSystemPrompt\\": \\"\\",\\n \\"BailianAppParams\\": \\"\\",\\n \\"VadLevel\\": 0,\\n \\"LlmHistoryLimit\\": 0,\\n \\"AsrMaxSilence\\": 0,\\n \\"WakeUpQuery\\": \\"\\",\\n \\"AppId\\": \\"\\",\\n \\"Volume\\": 0,\\n \\"VoiceId\\": \\"\\",\\n \\"UseVoiceprint\\": true,\\n \\"MaxIdleTime\\": 0,\\n \\"AsrHotWords\\": [\\n \\"\\"\\n ],\\n \\"EnablePushToTalk\\": true\\n },\\n \\"MessageChat\\": {\\n \\"AppId\\": \\"\\",\\n \\"VoiceIdList\\": [\\n \\"\\"\\n ]\\n },\\n \\"VisionChat\\": {\\n \\"Greeting\\": \\"\\",\\n \\"LlmHistory\\": [\\n {\\n \\"Role\\": \\"\\",\\n \\"Content\\": \\"\\"\\n }\\n ],\\n \\"WorkflowOverrideParams\\": \\"\\",\\n \\"EnableIntelligentSegment\\": true,\\n \\"VoiceIdList\\": [\\n \\"\\"\\n ],\\n \\"CharBreak\\": true,\\n \\"EnableVoiceInterrupt\\": true,\\n \\"VoiceprintId\\": \\"\\",\\n \\"GracefulShutdown\\": true,\\n \\"InterruptWords\\": [\\n \\"\\"\\n ],\\n \\"UserOnlineTimeout\\": 0,\\n \\"AsrLanguageId\\": \\"\\",\\n \\"UserOfflineTimeout\\": 0,\\n \\"LlmSystemPrompt\\": \\"\\",\\n \\"BailianAppParams\\": \\"\\",\\n \\"VadLevel\\": 0,\\n \\"LlmHistoryLimit\\": 0,\\n \\"AsrMaxSilence\\": 0,\\n \\"WakeUpQuery\\": \\"\\",\\n \\"AppId\\": \\"\\",\\n \\"Volume\\": 0,\\n \\"VoiceId\\": \\"\\",\\n \\"UseVoiceprint\\": true,\\n \\"MaxIdleTime\\": 0,\\n \\"AsrHotWords\\": [\\n \\"\\"\\n ],\\n \\"EnablePushToTalk\\": true\\n },\\n \\"AvatarChat3D\\": {\\n \\"Greeting\\": \\"\\",\\n \\"LlmHistory\\": [\\n {\\n \\"Role\\": \\"\\",\\n \\"Content\\": \\"\\"\\n }\\n ],\\n \\"WorkflowOverrideParams\\": \\"\\",\\n \\"EnableIntelligentSegment\\": true,\\n \\"VoiceIdList\\": [\\n \\"\\"\\n ],\\n \\"AvatarId\\": \\"\\",\\n \\"CharBreak\\": true,\\n \\"EnableVoiceInterrupt\\": true,\\n \\"VoiceprintId\\": \\"\\",\\n \\"GracefulShutdown\\": true,\\n \\"InterruptWords\\": [\\n \\"\\"\\n ],\\n \\"UserOnlineTimeout\\": 0,\\n \\"AsrLanguageId\\": \\"\\",\\n \\"UserOfflineTimeout\\": 0,\\n \\"LlmSystemPrompt\\": \\"\\",\\n \\"BailianAppParams\\": \\"\\",\\n \\"VadLevel\\": 0,\\n \\"LlmHistoryLimit\\": 0,\\n \\"AsrMaxSilence\\": 0,\\n \\"WakeUpQuery\\": \\"\\",\\n \\"AppId\\": \\"\\",\\n \\"Volume\\": 0,\\n \\"VoiceId\\": \\"\\",\\n \\"UseVoiceprint\\": true,\\n \\"MaxIdleTime\\": 0,\\n \\"AsrHotWords\\": [\\n \\"\\"\\n ],\\n \\"EnablePushToTalk\\": true\\n }\\n },\\n \\"UserData\\": \\"{\\\\\\"Email\\\\\\":\\\\\\"[email protected]\\\\\\",\\\\\\"Preferences\\\\\\":{\\\\\\"Language\\\\\\":\\\\\\"en\\\\\\"}}\\",\\n \\"AgentConfig\\": {\\n \\"AppId\\": \\"\\",\\n \\"Greeting\\": \\"\\",\\n \\"WakeUpQuery\\": \\"\\",\\n \\"MaxIdleTime\\": 0,\\n \\"UserOnlineTimeout\\": 0,\\n \\"UserOfflineTimeout\\": 0,\\n \\"EnablePushToTalk\\": true,\\n \\"GracefulShutdown\\": true,\\n \\"Volume\\": 0,\\n \\"WorkflowOverrideParams\\": \\"\\",\\n \\"AvatarUrl\\": \\"\\",\\n \\"AvatarUrlType\\": \\"\\",\\n \\"EnableIntelligentSegment\\": true,\\n \\"AsrConfig\\": {\\n \\"AsrLanguageId\\": \\"\\",\\n \\"AsrMaxSilence\\": 0,\\n \\"AsrHotWords\\": [\\n \\"\\"\\n ],\\n \\"VadLevel\\": 0,\\n \\"CustomParams\\": \\"\\",\\n \\"VadDuration\\": 0\\n },\\n \\"TtsConfig\\": {\\n \\"VoiceId\\": \\"\\",\\n \\"VoiceIdList\\": [\\n \\"\\"\\n ],\\n \\"PronunciationRules\\": [\\n {\\n \\"Word\\": \\"\\",\\n \\"Pronunciation\\": \\"\\",\\n \\"Type\\": \\"\\"\\n }\\n ],\\n \\"ModelId\\": \\"\\",\\n \\"LanguageId\\": \\"\\",\\n \\"Emotion\\": \\"\\",\\n \\"SpeechRate\\": 0\\n },\\n \\"LlmConfig\\": {\\n \\"LlmHistory\\": [\\n {\\n \\"Role\\": \\"\\",\\n \\"Content\\": \\"\\"\\n }\\n ],\\n \\"LlmHistoryLimit\\": 0,\\n \\"LlmSystemPrompt\\": \\"\\",\\n \\"BailianAppParams\\": \\"\\",\\n \\"OpenAIExtraQuery\\": \\"\\",\\n \\"LlmCompleteReply\\": true,\\n \\"FunctionMap\\": [\\n {\\n \\"Function\\": \\"\\",\\n \\"MatchFunction\\": \\"\\"\\n }\\n ],\\n \\"OutputMinLength\\": 0,\\n \\"OutputMaxDelay\\": 0,\\n \\"HistorySyncWithTTS\\": true\\n },\\n \\"AvatarConfig\\": {\\n \\"AvatarId\\": \\"\\"\\n },\\n \\"InterruptConfig\\": {\\n \\"EnableVoiceInterrupt\\": true,\\n \\"InterruptWords\\": [\\n \\"\\"\\n ],\\n \\"NoInterruptMode\\": \\"\\"\\n },\\n \\"VoiceprintConfig\\": {\\n \\"UseVoiceprint\\": true,\\n \\"VoiceprintId\\": \\"\\",\\n \\"RegistrationMode\\": \\"\\"\\n },\\n \\"TurnDetectionConfig\\": {\\n \\"TurnEndWords\\": [\\n \\"\\"\\n ],\\n \\"Mode\\": \\"\\",\\n \\"SemanticWaitDuration\\": 0,\\n \\"Eagerness\\": \\"\\"\\n },\\n \\"ExperimentalConfig\\": \\"\\",\\n \\"VcrConfig\\": {\\n \\"StillFrameMotion\\": {\\n \\"Enabled\\": true,\\n \\"CallbackDelay\\": 0\\n },\\n \\"InvalidFrameMotion\\": {\\n \\"Enabled\\": true,\\n \\"CallbackDelay\\": 0\\n },\\n \\"PeopleCount\\": {\\n \\"Enabled\\": true\\n },\\n \\"Equipment\\": {\\n \\"Enabled\\": true\\n },\\n \\"HeadMotion\\": {\\n \\"Enabled\\": true\\n },\\n \\"LookAway\\": {\\n \\"Enabled\\": true\\n }\\n },\\n \\"OutboundCallConfig\\": {\\n \\"Type\\": 0,\\n \\"SipDomain\\": \\"\\"\\n },\\n \\"InboundCallConfig\\": {\\n \\"Type\\": 0,\\n \\"AuthUrl\\": \\"\\",\\n \\"AuthToken\\": \\"\\"\\n },\\n \\"AmbientSoundConfig\\": {\\n \\"ResourceId\\": \\"\\",\\n \\"Volume\\": 0\\n },\\n \\"AutoSpeechConfig\\": {\\n \\"UserIdle\\": {\\n \\"WaitTime\\": 0,\\n \\"MaxRepeats\\": 0,\\n \\"Messages\\": [\\n {\\n \\"Text\\": \\"\\",\\n \\"Probability\\": 0\\n }\\n ]\\n },\\n \\"LlmPending\\": {\\n \\"WaitTime\\": 0,\\n \\"Messages\\": [\\n {\\n \\"Text\\": \\"\\",\\n \\"Probability\\": 0\\n }\\n ]\\n }\\n },\\n \\"BackChannelingConfigs\\": [\\n {\\n \\"Enabled\\": true,\\n \\"TriggerStage\\": \\"\\",\\n \\"Probability\\": 0,\\n \\"Words\\": [\\n {\\n \\"Text\\": \\"\\",\\n \\"Probability\\": 0\\n }\\n ]\\n }\\n ],\\n \\"BackChannelingConfig\\": [\\n {\\n \\"Enabled\\": true,\\n \\"TriggerStage\\": \\"\\",\\n \\"Probability\\": 0,\\n \\"Words\\": [\\n {\\n \\"Text\\": \\"\\",\\n \\"Probability\\": 0\\n }\\n ]\\n }\\n ]\\n }\\n }\\n ],\\n \\"RequestId\\": \\"7B117AF5-2A16-412C-B127-FA6175ED1AD0\\"\\n}","type":"json"}]', + 'title' => 'ListAIAgentInstance', + 'description' => '## [](#)Request description'."\n" + ."\n" + .'You can call this operation to query a list of AI agents based on the `AIAgentId`. The optional parameters include `StartTime`, `EndTime`, `PageSize`, and `PageNumber`. The returned result includes the status, runtime configurations, template configurations, custom information, and the URL of call log file for each AI agent.'."\n" + ."\n" + .'**Note**:'."\n" + ."\n" + .'* The default value of `PageSize` is 10, and the default value of `PageNumber` is 1.'."\n", + ], + 'SendAIAgentSpeech' => [ + 'summary' => 'Instructs an AI agent to immediately broadcast a text message and supports interruption settings.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '237311', + 'abilityTreeNodes' => [ + 'FEATUREice405U0J', + ], + ], + 'parameters' => [ + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => true, + 'example' => '39f8e0bc005e4f309379701645f4****', + ], + ], + [ + 'name' => 'Text', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => true, + 'example' => '', + ], + ], + [ + 'name' => 'EnableInterrupt', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether the broadcast can interrupt the ongoing speech. Default value: true'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + [ + 'name' => 'Type', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => '', + 'type' => 'string', + 'example' => '7B117AF5-2A16-412C-B127-FA6175ED1AD0', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"7B117AF5-2A16-412C-B127-FA6175ED1AD0\\"\\n}","type":"json"}]', + 'title' => 'SendAIAgentSpeech', + 'description' => 'You can call this operation to instruct an AI agent to broadcast the content that you specify. You can determine whether this broadcast can immediately interrupt the ongoing speech. The interruption is allowed by default.'."\n" + ."\n" + .'**Note**'."\n" + ."\n" + .'* Make sure that the `InstanceId` is valid and corresponds to an existing AI agent.'."\n" + .'* The content of `Text` must comply with the specifications and does not contain sensitive or inappropriate information.'."\n" + .'* If you do not want the new broadcast to interrupt the ongoing speech, you must set `EnableInterrupt` to `false`.'."\n", + ], + 'TakeoverAIAgentCall' => [ + 'summary' => 'Hands off a conversation to a human agent.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceMX4DML', + ], + ], + 'parameters' => [ + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the AI agent that will be taken over.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '39f8e0bc005e4f309379701645f4****', + ], + ], + [ + 'name' => 'HumanAgentUserId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the human agent that will take over the AI agent (UserId in ARTC). If you do not specify this parameter, it is automatically generated and returned.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'uid2', + ], + ], + [ + 'name' => 'RequireToken', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to return the ARTC token. Default value: false.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'false', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '******3B-0E1A-586A-AC29-742247******', + ], + 'ChannelId' => [ + 'description' => 'The ID of the ARTC channel.'."\n", + 'type' => 'string', + 'example' => '70f22d5784194938a7e387052f2b3208', + ], + 'HumanAgentUserId' => [ + 'description' => 'The ID of the human agent.'."\n", + 'type' => 'string', + 'example' => 'uid2', + ], + 'Token' => [ + 'description' => 'The ARTC token.'."\n", + 'type' => 'string', + 'example' => 'eyJhcHBpZCI6ICIxMjM0MTIzNxxxxx', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******3B-0E1A-586A-AC29-742247******\\",\\n \\"ChannelId\\": \\"70f22d5784194938a7e387052f2b3208\\",\\n \\"HumanAgentUserId\\": \\"uid2\\",\\n \\"Token\\": \\"eyJhcHBpZCI6ICIxMjM0MTIzNxxxxx\\"\\n}","type":"json"}]', + 'title' => 'TakeoverAIAgentCall', + ], + 'SendAIAgentDataChannelMessage' => [ + 'summary' => 'Sends a DataChannel message to an AI agent.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceMX4DML', + ], + ], + 'parameters' => [ + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the AI agent in the conversation.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '39f8e0bc005e4f309379701645f4****'."\n", + ], + ], + [ + 'name' => 'Message', + 'in' => 'query', + 'schema' => [ + 'description' => 'The DataChannel message you want to send. You must specify a JSON string. The value can be up to 8,192 characters in length.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '{"key":"value"}', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '7B117AF5-2A16-412C-B127-FA6175ED1AD0'."\n", + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"7B117AF5-2A16-412C-B127-FA6175ED1AD0\\\\n\\"\\n}","type":"json"}]', + 'title' => 'SendAIAgentDataChannelMessage', + ], + 'SendAIAgentText' => [ + 'summary' => 'Sends a message as input to the large language model (LLM).', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '237311', + 'abilityTreeNodes' => [ + 'FEATUREice405U0J', + ], + ], + 'parameters' => [ + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the AI agent instance.'."\n" + ."\n" + .'> InstanceId is a unique identifier that is returned when the AI agent is started. To start an AI agent, call [StartAIAgentInstance ](~~2846201~~) or [GenerateAIAgentCall](~~2846209~~).', + 'type' => 'string', + 'required' => true, + 'example' => 'f27f9b9be28642a88e18****', + ], + ], + [ + 'name' => 'Text', + 'in' => 'query', + 'schema' => [ + 'description' => 'The input to the LLM.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'Hello', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'DB488837-3****', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"DB488837-3****\\"\\n}","type":"json"}]', + 'title' => 'SendAIAgentText', + ], + 'GenerateMessageChatToken' => [ + 'summary' => 'Generates the token required for interactive messaging.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '236523', + 'abilityTreeNodes' => [ + 'FEATUREice405U0J', + ], + ], + 'parameters' => [ + [ + 'name' => 'AIAgentId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the AI agent.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '19de81b3b3d94abda22******', + ], + ], + [ + 'name' => 'UserId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the user to sign in. It can be up to 64 characters in length and can contain only letters, digits, and underscores (\\_).'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'YOURUSERID', + ], + ], + [ + 'name' => 'Role', + 'in' => 'query', + 'schema' => [ + 'description' => 'The role. A value of admin indicates that the user can perform management operations. This parameter is empty by default.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'user', + ], + ], + [ + 'name' => 'Expire', + 'in' => 'query', + 'schema' => [ + 'description' => 'The validity period. Unit: seconds. Default value: 3600.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '3600', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'req_1234567890abcdef', + ], + 'Token' => [ + 'description' => 'The generated token.'."\n", + 'type' => 'string', + 'example' => 'acet**********', + ], + 'AppId' => [ + 'description' => 'The AppID of the user.'."\n", + 'type' => 'string', + 'example' => '***********', + ], + 'UserId' => [ + 'description' => 'The ID of the user for joining the channel.'."\n", + 'type' => 'string', + 'example' => 'YOURUSERID', + ], + 'Nonce' => [ + 'description' => 'The nonce used to generate the token.'."\n", + 'type' => 'string', + 'example' => 'AK-***********', + ], + 'Role' => [ + 'description' => 'The role used to generate the token.'."\n", + 'type' => 'string', + 'example' => 'admin', + ], + 'AppSign' => [ + 'description' => 'The application signature.'."\n", + 'type' => 'string', + 'example' => 'H4sIAAAAAAAE******************', + ], + 'TimeStamp' => [ + 'description' => 'The expiration time. Unit: seconds. Expiration time = Current time + Validity period.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1700000000', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"req_1234567890abcdef\\",\\n \\"Token\\": \\"acet**********\\",\\n \\"AppId\\": \\"***********\\",\\n \\"UserId\\": \\"YOURUSERID\\",\\n \\"Nonce\\": \\"AK-***********\\",\\n \\"Role\\": \\"admin\\",\\n \\"AppSign\\": \\"H4sIAAAAAAAE******************\\",\\n \\"TimeStamp\\": 1700000000\\n}","type":"json"}]', + 'title' => 'GenerateMessageChatToken', + ], + 'GenerateAIAgentCall' => [ + 'summary' => 'Creates an AI agent. This operation returns the channel in which the AI agent resides, the username of the AI agent in the channel, and the token that you can use to join the channel.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '236524', + 'abilityTreeNodes' => [ + 'FEATUREice405U0J', + ], + ], + 'parameters' => [ + [ + 'name' => 'AIAgentId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the AI agent.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '39f8e0bc005e4f309379701645f4****', + ], + ], + [ + 'name' => 'Expire', + 'in' => 'query', + 'schema' => [ + 'description' => 'The time when the token expires. Unit: seconds. Default value: 3600. Valid values: 0 to 604800.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '3600', + ], + ], + [ + 'name' => 'UserId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The username of the AI agent in the channel. If you do not specify this parameter, the system automatically generates a username. The value can be up to 64 characters in length.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '877ae632caae49b1afc81c2e8194ffb4', + ], + ], + [ + 'name' => 'TemplateConfig', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The template configurations of the AI agent. The specified configurations are merged with the template configurations that are specified in the console. If you do not specify this parameter, the system uses the default configurations for an AI agent created in the console.'."\n", + 'required' => false, + '$ref' => '#/components/schemas/AIAgentTemplateConfig', + 'deprecated' => true, + ], + ], + [ + 'name' => 'UserData', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => '{"Email":"[email protected]","Preferences":{"Language":"en"}}'."\n", + ], + ], + [ + 'name' => 'SessionId', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => 'fw1gr0bc005e4f309379701645f4****', + ], + ], + [ + 'name' => 'AgentConfig', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + '$ref' => '#/components/schemas/AIAgentConfig', + ], + ], + [ + 'name' => 'ChatSyncConfig', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'IMAIAgentId' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => '******005e4f309379701645f4****'."\n", + ], + 'ReceiverId' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => '4167626d312034b2b1c3b7f2f3e41884', + ], + ], + 'required' => false, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'AIAgentUserId' => [ + 'description' => 'The username of the AI agent in the Alibaba Real-Time Communication (ARTC) channel.'."\n", + 'type' => 'string', + 'example' => '877ae632caae49b1afc81c2e8194ffb4', + ], + 'ChannelId' => [ + 'description' => 'The ARTC channel ID.'."\n", + 'type' => 'string', + 'example' => '70f22d5784194938a7e387052f2b3208', + ], + 'InstanceId' => [ + 'description' => 'The ID of the AI agent.'."\n", + 'type' => 'string', + 'example' => '39f8e0bc005e4f309379701645f4****', + ], + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '7B117AF5-2A16-412C-B127-FA6175ED1AD0', + ], + 'Token' => [ + 'description' => 'The ARTC token of the client.'."\n", + 'type' => 'string', + 'example' => 'eyJhcHBpZCI6ICIxMjM0MTIzNxxxxx', + ], + 'UserId' => [ + 'description' => 'The username in the ARTC channel.'."\n", + 'type' => 'string', + 'example' => 'user123', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"AIAgentUserId\\": \\"877ae632caae49b1afc81c2e8194ffb4\\",\\n \\"ChannelId\\": \\"70f22d5784194938a7e387052f2b3208\\",\\n \\"InstanceId\\": \\"39f8e0bc005e4f309379701645f4****\\",\\n \\"RequestId\\": \\"7B117AF5-2A16-412C-B127-FA6175ED1AD0\\",\\n \\"Token\\": \\"eyJhcHBpZCI6ICIxMjM0MTIzNxxxxx\\",\\n \\"UserId\\": \\"user123\\"\\n}","type":"json"}]', + 'title' => 'GenerateAIAgentCall', + 'description' => '## [](#)Request description'."\n" + ."\n" + .'You can call this operation to create an AI agent based on the provided ID. You can join the channel based on the returned information and talk to the agent.'."\n" + ."\n" + .'**Note:** Make sure that the provided AI agent ID is valid and configure optional parameters based on your business requirements.'."\n", + ], + 'ListAIAgentDialogues' => [ + 'summary' => 'Lists the dialog records of an AI agent.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '235498', + 'abilityTreeNodes' => [ + 'FEATUREice405U0J', + ], + ], + 'parameters' => [ + [ + 'name' => 'SessionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The session ID.', + 'type' => 'string', + 'required' => true, + 'example' => 'f27f9b9be28642a88e18****', + ], + ], + [ + 'name' => 'RoundLimit', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specify the start of the time range to query using a UNIX timestamp accurate to milliseconds.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '0', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specify the end of the time range to query using a UNIX timestamp accurate to milliseconds.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '17358082464030', + ], + ], + [ + 'name' => 'PageNumber', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number. Default value: 1.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page. Default value: 20. Valid values: 1 to 100.', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '20', + ], + ], + [ + 'name' => 'Order', + 'in' => 'query', + 'schema' => [ + 'description' => 'The sorting order. Valid values: '."\n" + ."\n" + .'- DESC: descending order (default)'."\n" + .'- ASC: ascending order', + 'type' => 'string', + 'required' => false, + 'example' => 'DESC', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '7B117AF5-***************', + ], + 'Dialogues' => [ + 'description' => 'The dialog records.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'DialogueId' => [ + 'description' => 'The unique ID of the dialog.', + 'type' => 'string', + 'example' => '19de81b3b3d94abda22****', + ], + 'RoundId' => [ + 'description' => 'The ID of the conversational turn.', + 'type' => 'string', + 'example' => 'f27f9b9be28642a88e18****', + ], + 'Producer' => [ + 'description' => 'The speaker. Valid values: '."\n" + ."\n" + .'- user'."\n" + .'- agent', + 'type' => 'string', + 'enumValueTitles' => [ + 'agent' => 'agent', + 'user' => 'user', + ], + 'example' => 'user', + ], + 'Text' => [ + 'description' => 'The specific content.', + 'type' => 'string', + 'example' => 'Hello', + ], + 'ReasoningText' => [ + 'description' => 'The reasoning trace.'."\n", + 'type' => 'string', + 'example' => 'I\'m thinking'."\n", + ], + 'AttachedFileList' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Url' => [ + 'type' => 'string', + ], + 'Id' => [ + 'type' => 'string', + ], + 'Format' => [ + 'type' => 'string', + ], + 'Type' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'Name' => [ + 'type' => 'string', + ], + ], + ], + ], + 'Time' => [ + 'description' => 'The UNIX timestamp, measured in milliseconds, which indicates the time when the message was generated.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1734511087000', + ], + 'Type' => [ + 'description' => 'The message type. Valid values:'."\n" + ."\n" + .'Voice calls:'."\n" + ."\n" + .'1. greeting: the welcome message.'."\n" + .'2. normal: the voice response.'."\n" + .'3. speech: the proactive message.'."\n" + ."\n" + .'Messaging conversations:'."\n" + ."\n" + .'1. normal: the text reply.'."\n" + .'2. announcement: the proactive text message.'."\n" + .'3. custom: the custom message.'."\n", + 'type' => 'string', + 'example' => 'announcement', + ], + 'Source' => [ + 'description' => 'The source of the message. Valid values:'."\n" + ."\n" + .'chat: messaging conversations.'."\n" + ."\n" + .'call: voice calls.'."\n", + 'type' => 'string', + 'example' => 'chat', + ], + 'NodeId' => [ + 'type' => 'string', + ], + 'Extend' => [ + 'type' => 'string', + ], + ], + 'description' => '', + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"7B117AF5-***************\\",\\n \\"Dialogues\\": [\\n {\\n \\"DialogueId\\": \\"19de81b3b3d94abda22****\\",\\n \\"RoundId\\": \\"f27f9b9be28642a88e18****\\",\\n \\"Producer\\": \\"user\\",\\n \\"Text\\": \\"你好\\",\\n \\"ReasoningText\\": \\"我在思考\\",\\n \\"AttachedFileList\\": [\\n {\\n \\"Url\\": \\"\\",\\n \\"Id\\": \\"\\",\\n \\"Format\\": \\"\\",\\n \\"Type\\": 0,\\n \\"Name\\": \\"\\"\\n }\\n ],\\n \\"Time\\": 1734511087000,\\n \\"Type\\": \\"announcement\\",\\n \\"Source\\": \\"chat\\",\\n \\"NodeId\\": \\"\\",\\n \\"Extend\\": \\"\\"\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'ListAIAgentDialogues', + ], + 'DeleteAIAgentDialogue' => [ + 'summary' => 'Deletes dialog records of an AI agent.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '235498', + 'abilityTreeNodes' => [ + 'FEATUREice405U0J', + ], + ], + 'parameters' => [ + [ + 'name' => 'SessionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The session ID.', + 'type' => 'string', + 'required' => true, + 'example' => '6d594e7f55624c47a48789******', + ], + ], + [ + 'name' => 'DialogueId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the dialog that you want to delete.', + 'type' => 'string', + 'required' => true, + 'example' => 'f27f9b9be28642a88e18*******', + ], + ], + [ + 'name' => 'NodeId', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '7B117AF5-2A1******', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"7B117AF5-2A1******\\"\\n}","type":"json"}]', + 'title' => 'DeleteAIAgentDialogue', + ], + 'SendMessageChatText' => [ + 'summary' => 'Sends a message to the client.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '237311', + 'abilityTreeNodes' => [ + 'FEATUREice405U0J', + ], + ], + 'parameters' => [ + [ + 'name' => 'SessionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the session.', + 'type' => 'string', + 'required' => true, + 'example' => 'f27f9b9be28642a88e18****', + ], + ], + [ + 'name' => 'AIAgentId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the AI agent.', + 'type' => 'string', + 'required' => true, + 'example' => '39f8e0bc005e4f309379701645f4****', + ], + ], + [ + 'name' => 'ReceiverId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the user who receives the message. The ID can be up to 64 bytes in length and can contain letters and digits.', + 'type' => 'string', + 'required' => true, + 'example' => '60000042053', + ], + ], + [ + 'name' => 'Type', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of the message. Valid values:'."\n" + ."\n" + .'- announcement: notification.'."\n" + .'- custom: custom message.', + 'type' => 'string', + 'required' => true, + 'example' => 'announcement', + ], + ], + [ + 'name' => 'Text', + 'in' => 'query', + 'schema' => [ + 'description' => 'The content of the message.', + 'type' => 'string', + 'required' => true, + 'example' => 'Hello', + ], + ], + [ + 'name' => 'Mode', + 'in' => 'query', + 'schema' => [ + 'description' => 'The mode of message sending. Valid values:'."\n" + .'- online'."\n" + .'- offline'."\n" + ."\n" + .'Default value: offline.', + 'type' => 'string', + 'required' => false, + 'example' => 'online', + ], + ], + [ + 'name' => 'NeedArchiving', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to archive chat records. Default value: true.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '******3B-0E1A-586A-AC29-742247******', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******3B-0E1A-586A-AC29-742247******\\"\\n}","type":"json"}]', + 'title' => 'SendMessageChatText', + ], + 'StartAIAgentOutboundCall' => [ + 'summary' => 'Initiates an outbound phone call for an AI agent.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '236524', + 'abilityTreeNodes' => [ + 'FEATUREice405U0J', + ], + ], + 'parameters' => [ + [ + 'name' => 'AIAgentId', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => true, + 'example' => '***********e4f309379701645f4****', + ], + ], + [ + 'name' => 'CallerNumber', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => true, + 'example' => '183*****333', + ], + ], + [ + 'name' => 'CalledNumber', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => true, + 'example' => '173*****533', + ], + ], + [ + 'name' => 'Config', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => '', + 'required' => false, + '$ref' => '#/components/schemas/AIAgentOutboundCallConfig', + ], + ], + [ + 'name' => 'UserData', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => '', + ], + ], + [ + 'name' => 'SessionId', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => 'f213fbc005e4f309379701645f4****'."\n", + ], + ], + [ + 'name' => 'ImsAIAgentFreeObCall', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', + 'type' => 'object', + 'properties' => [ + 'InstanceId' => [ + 'description' => '', + 'type' => 'string', + 'example' => '*********296014bb58670940*********', + ], + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => '', + 'type' => 'string', + 'example' => '***********-4417-BDB2************', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"InstanceId\\": \\"*********296014bb58670940*********\\",\\n \\"RequestId\\": \\"***********-4417-BDB2************\\"\\n}","type":"json"}]', + 'title' => 'StartAIAgentOutboundCall', + ], + 'ListAIAgentPhoneNumber' => [ + 'summary' => 'Lists available phone numbers.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '236523', + 'abilityTreeNodes' => [ + 'FEATUREice405U0J', + ], + ], + 'parameters' => [ + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '50', + ], + ], + [ + 'name' => 'PageNumber', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'Number', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + ], + ], + [ + 'name' => 'Status', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', + 'type' => 'object', + 'properties' => [ + 'Data' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'PhoneNumber' => [ + 'description' => '', + 'type' => 'string', + 'example' => '132*****683', + ], + 'Status' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + ], + ], + ], + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => '', + 'type' => 'string', + 'example' => '************16-412C-B127-******', + ], + 'TotalNumber' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '186', + ], + 'PageNumber' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'PageSize' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": [\\n {\\n \\"PhoneNumber\\": \\"132*****683\\",\\n \\"Status\\": 1\\n }\\n ],\\n \\"RequestId\\": \\"************16-412C-B127-******\\",\\n \\"TotalNumber\\": 186,\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10\\n}","type":"json"}]', + 'title' => 'ListAIAgentPhoneNumber', + ], + 'ForwardAIAgentCall' => [ + 'summary' => '转呼通话到目标电话', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceMX4DML', + ], + ], + 'parameters' => [ + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => 'call_instance_202******', + ], + ], + [ + 'name' => 'CalledNumber', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => '13**********', + ], + ], + [ + 'name' => 'TransferPrompt', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + ], + ], + [ + 'name' => 'ErrorPrompt', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + ], + ], + [ + 'name' => 'CallerNumber', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => '', + 'type' => 'string', + 'example' => '550e8400********55440000'."\n", + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'IdempotentParameterMismatch', + 'errorMessage' => 'The request uses the same client token as a previous, but non-identical request. Do not reuse a client token with different requests, unless the requests are identical.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"550e8400********55440000\\\\n\\"\\n}","type":"json"}]', + 'title' => 'ForwardAIAgentCall', + ], + 'SetAIAgentVoiceprint' => [ + 'summary' => 'Registers a voiceprint.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceMX4DML', + ], + ], + 'parameters' => [ + [ + 'name' => 'VoiceprintId', + 'in' => 'query', + 'schema' => [ + 'description' => 'A unique identifier for the voiceprint. Generate this ID based on your own business rules. Requirement: 1 to 127 characters in length.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'vp_1699123456_8527', + ], + ], + [ + 'name' => 'Input', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The input file.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'Specifies the access type for the audio file. The system will verify file accessibility via HEAD or GET requests. Valid values:'."\n" + ."\n" + .'* url: An HTTP(S) link to the audio file.'."\n" + ."\n" + .'* oss: An OSS object. Supports the following formats:'."\n" + ."\n" + .' 1. OSS URI: oss://bucket-name/object-key'."\n" + ."\n" + .' Example: oss://my-bucket/audio/sample.wav'."\n" + ."\n" + .' 2. OSS public URL: http(s)://${bucket}.oss-${region}.aliyuncs.com/${object}'."\n" + ."\n" + .' Example: https://my-bucket.oss-cn-hangzhou.aliyuncs.com/audio/sample.wav'."\n" + ."\n" + .'> The OSS bucket must be in the same region as the service. Otherwise, the access fails.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'url', + ], + 'Data' => [ + 'description' => 'The media access link.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'https://my-bucket.oss-cn-hangzhou.aliyuncs.com/audio/sample.wav', + ], + 'Format' => [ + 'description' => 'The audio file format. Only WAV is supported.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'wav', + ], + ], + 'required' => false, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '550e8400********55440000', + ], + 'VoiceprintId' => [ + 'description' => 'The ID of the registered voiceprint.'."\n", + 'type' => 'string', + 'example' => 'vp_1699123456_8527', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'IdempotentParameterMismatch', + 'errorMessage' => 'The request uses the same client token as a previous, but non-identical request. Do not reuse a client token with different requests, unless the requests are identical.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"550e8400********55440000\\",\\n \\"VoiceprintId\\": \\"vp_1699123456_8527\\"\\n}","type":"json"}]', + 'title' => 'SetAIAgentVoiceprint', + ], + 'ClearAIAgentVoiceprint' => [ + 'summary' => 'Deletes a voiceprint based on its ID.', + 'path' => '', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceMX4DML', + ], + ], + 'parameters' => [ + [ + 'name' => 'VoiceprintId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The unique identifier for the voiceprint.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'vp_1699123456_8527', + ], + ], + [ + 'name' => 'RegistrationMode', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\"\\n}","type":"json"}]', + 'title' => 'ClearAIAgentVoiceprint', + 'description' => '## [](#)'."\n" + ."\n" + .'``````````'."\n", + ], + 'ListAIAgentVoiceprints' => [ + 'summary' => 'Lists the registered voiceprints.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceMX4DML', + ], + ], + 'parameters' => [ + [ + 'name' => 'VoiceprintId', + 'in' => 'query', + 'schema' => [ + 'description' => 'A unique identifier for the voiceprint. This parameter is optional. If provided, only the information for that ID is returned. If not specified, all voiceprints under the account are returned.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'vp_1699123456_8527'."\n", + ], + ], + [ + 'name' => 'PageNumber', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page. Value values: \\[1,100].'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '100', + ], + ], + [ + 'name' => 'RegistrationMode', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'Voiceprints' => [ + 'description' => 'The voiceprints.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The voiceprint information.'."\n", + 'type' => 'object', + 'properties' => [ + 'VoiceprintId' => [ + 'description' => 'The unique identifier for the voiceprint.'."\n", + 'type' => 'string', + 'example' => 'vp_1699123456_8527', + ], + 'GmtCreate' => [ + 'description' => 'The creation time of the voiceprint.'."\n", + 'type' => 'string', + 'example' => '2025-07-28T10:03:58.000+00:00', + ], + 'GmtModified' => [ + 'description' => 'The last modification time of the voiceprint.'."\n", + 'type' => 'string', + 'example' => '2025-07-28T10:03:58.000+00:00', + ], + ], + ], + ], + 'TotalCount' => [ + 'description' => 'The total number of voiceprints that match the query criteria.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '2', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'IdempotentParameterMismatch', + 'errorMessage' => 'The request uses the same client token as a previous, but non-identical request. Do not reuse a client token with different requests, unless the requests are identical.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"Voiceprints\\": [\\n {\\n \\"VoiceprintId\\": \\"vp_1699123456_8527\\",\\n \\"GmtCreate\\": \\"2025-07-28T10:03:58.000+00:00\\",\\n \\"GmtModified\\": \\"2025-07-28T10:03:58.000+00:00\\"\\n }\\n ],\\n \\"TotalCount\\": 2\\n}","type":"json"}]', + 'title' => 'ListAIAgentVoiceprints', + ], + 'SubmitAIAgentVideoAuditTask' => [ + 'summary' => 'Submits a video to a specified AI agent for content moderation. This operation supports video input from OSS and delivers the results asynchronously via callbacks. You can define custom frame-capturing policies and moderation prompts.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '236524', + 'abilityTreeNodes' => [ + 'FEATUREice405U0J', + ], + ], + 'parameters' => [ + [ + 'name' => 'AIAgentId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the AI agent.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '*******3b3d94abda22******', + ], + ], + [ + 'name' => 'Input', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The details of the input file.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The type of the input file. Valid values:'."\n" + ."\n" + .'* OSS: an OSS object.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'OSS', + ], + 'Media' => [ + 'description' => 'The OSS URL of the input file. Format:'."\n" + ."\n" + .'http(s)://{BucketName}.{Endpoint}/{ObjectName}'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'http://my-bucket.cn-shanghai.aliyuncs.com/object-id.mp4', + ], + ], + 'required' => true, + ], + ], + [ + 'name' => 'UserData', + 'in' => 'query', + 'schema' => [ + 'description' => 'The user-defined data.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '', + ], + ], + [ + 'name' => 'CallbackConfig', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'Callback configurations.'."\n", + 'type' => 'object', + 'properties' => [ + 'Url' => [ + 'description' => 'The URL for receiving callback notifications.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'https://yourcallback', + ], + 'Token' => [ + 'description' => 'The authentication token for callback.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'Bearer Token', + ], + ], + 'required' => false, + 'example' => '{"Url":"https://yourcallback","Token":"yourtoken"}', + ], + ], + [ + 'name' => 'AuditInterval', + 'in' => 'query', + 'schema' => [ + 'description' => 'The interval, in milliseconds, at which to submit captured frames to the AI agent. Valid values: 0 to 5000. Default value: 3000. If it is set to 0, all captured frames are sent to the model in a single batch request. Otherwise, frames are sent sequentially with the specified interval between each request.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '3000', + ], + ], + [ + 'name' => 'CapturePolicies', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'An array of frame-capturing policies. Each policy defines a set of frames to be analyzed and will generate a separate result from the model.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'A single policy.'."\n", + 'type' => 'object', + 'properties' => [ + 'FrameCount' => [ + 'description' => 'The number of frames to capture.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '2', + ], + 'StartTime' => [ + 'description' => 'The timestamp in the video at which to start capturing frames. Unit: seconds.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '0', + ], + 'Duration' => [ + 'description' => 'The duration over which to capture the specified number of frames. Unit: seconds.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '10', + ], + 'Prompt' => [ + 'description' => 'The text prompt to send to the MLLM along with the captured frames.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '', + ], + ], + 'required' => false, + ], + 'required' => true, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'JobId' => [ + 'description' => 'The job ID.'."\n", + 'type' => 'string', + 'example' => '**********fb04483915d4f2**********', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '**********-586A-AC29-742247******', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"JobId\\": \\"**********fb04483915d4f2**********\\",\\n \\"RequestId\\": \\"**********-586A-AC29-742247******\\"\\n}","type":"json"}]', + 'title' => 'SubmitAIAgentVideoAuditTask', + 'description' => 'Call SubmitAIAgentVideoAuditTask to submit a video moderation task with configurations such as a video URL, frame-capturing policies, and review interval. The system returns a unique JobId for tracking. When the task is complete, the service will push the results, including the moderation status and AI-generated analysis, to the configured callback URL. Only OSS URLs are supported as input. The underlying multi-modal large language model (MLLM) only supports interaction via the non-streaming OpenAI protocol.'."\n", + ], + 'GetAiRtcLicenseInfoList' => [ + 'summary' => 'Retrieves a list of license batches for Real-time Conversational AI based on specified filter criteria.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceMX4DML', + ], + ], + 'parameters' => [ + [ + 'name' => 'LicenseItemId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the batch.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '17712***', + ], + ], + [ + 'name' => 'Status', + 'in' => 'query', + 'schema' => [ + 'description' => 'The status of the batch. Valid values:'."\n" + ."\n" + .'* `1`: Active'."\n" + .'* `2`: Expired'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'enumValueTitles' => [], + 'example' => '1', + ], + ], + [ + 'name' => 'Type', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of license. Valid values:'."\n" + ."\n" + .'* `1`: Audio call'."\n" + .'* `2`: Vision call'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'enumValueTitles' => [], + 'example' => '1', + ], + ], + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '10', + ], + ], + [ + 'name' => 'NeedTotalCount', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to include the total count of records in the response. Defaults to `true`.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + 'default' => 'true', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => '', + 'description' => 'ApiResponse\\<CollectionResult>'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '7B117AF5-2A16-412C-B127-FA6175ED1***', + ], + 'Success' => [ + 'description' => 'Indicates whether the call was successful.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Code' => [ + 'description' => 'The error code returned.'."\n", + 'type' => 'string', + 'example' => 'Success', + ], + 'Message' => [ + 'description' => 'The error message.'."\n", + 'type' => 'string', + 'example' => 'OK', + ], + 'HttpStatusCode' => [ + 'description' => 'The HTTP status code.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => 'httpStatusCode', + ], + 'LicenseInfoList' => [ + 'description' => 'An array of AiRtcLicenseInfoDTO objects, each representing a license batch.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'A license batch.'."\n", + '$ref' => '#/components/schemas/AiRtcLicenseInfoDTO', + ], + ], + 'TotalCount' => [ + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '100', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"7B117AF5-2A16-412C-B127-FA6175ED1***\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"Success\\",\\n \\"Message\\": \\"OK\\",\\n \\"HttpStatusCode\\": 0,\\n \\"LicenseInfoList\\": [\\n {\\n \\"CreationTime\\": \\"\\",\\n \\"ModificationTime\\": \\"\\",\\n \\"Type\\": 0,\\n \\"LicenseItemId\\": \\"\\",\\n \\"Status\\": 0,\\n \\"ValidDays\\": 0,\\n \\"ExpiredOn\\": \\"\\",\\n \\"BeginOn\\": \\"\\",\\n \\"LicenseCount\\": 0,\\n \\"AvailableCapacity\\": 0,\\n \\"InstanceId\\": \\"\\",\\n \\"ContractNo\\": \\"\\"\\n }\\n ],\\n \\"TotalCount\\": 100\\n}","type":"json"}]', + 'title' => 'GetAiRtcLicenseInfoList', + 'description' => '## [](#)Usage notes'."\n" + ."\n" + .'* This API allows you to retrieve a list of license batches for Real-time Conversational AI using filters such as Batch ID, status, and type.'."\n" + .'* By default, the `NeedTotalCount` parameter is set to `true`, indicating that the response includes the total count of matching records. Set it to `false` if you do not need this total.'."\n" + .'* If no filter criteria are provided, the API returns information for all license batches.'."\n", + ], + 'GetAiRtcAuthCodeList' => [ + 'summary' => 'Retrieves a list of Real-time Conversational AI authentication codes and their status for a specified batch.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceMX4DML', + ], + ], + 'parameters' => [ + [ + 'name' => 'LicenseItemId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the batch.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => '17712***', + ], + ], + [ + 'name' => 'Status', + 'in' => 'query', + 'schema' => [ + 'description' => 'The status of the authorization code. Valid values:'."\n" + ."\n" + .'* `1`: Activated'."\n" + .'* `2`: Inactive'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'Type', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of license. Valid values:'."\n" + ."\n" + .'* `1`: Audio call'."\n" + .'* `2`: Vision call'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '10', + ], + ], + [ + 'name' => 'NeedTotalCount', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to include the total count of records in the response. Defaults to `true`.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + 'default' => 'true', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => '', + 'description' => 'ApiResponse\\<CollectionResult>'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '7B117AF5-2A16-412C-B127-FA6175ED1***', + ], + 'Success' => [ + 'description' => 'Indicates whether the call was successful.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Code' => [ + 'description' => 'The error code.'."\n", + 'type' => 'string', + 'example' => 'Success', + ], + 'Message' => [ + 'description' => 'The error message.'."\n", + 'type' => 'string', + 'example' => 'OK', + ], + 'HttpStatusCode' => [ + 'description' => 'The HTTP status code.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'AuthCodeList' => [ + 'description' => 'An array of AiRtcAuthCodeDTO objects, each representing an authorization code.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'An authorization code.'."\n", + '$ref' => '#/components/schemas/AiRtcAuthCodeDTO', + ], + ], + 'TotalCount' => [ + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"7B117AF5-2A16-412C-B127-FA6175ED1***\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"Success\\",\\n \\"Message\\": \\"OK\\",\\n \\"HttpStatusCode\\": 200,\\n \\"AuthCodeList\\": [\\n {\\n \\"Status\\": 0,\\n \\"Type\\": 0,\\n \\"AuthCode\\": \\"\\",\\n \\"ActivatedTime\\": \\"\\",\\n \\"DeviceId\\": \\"\\",\\n \\"CreationTime\\": \\"\\",\\n \\"License\\": \\"\\",\\n \\"ModificationTime\\": \\"\\",\\n \\"LicenseItemId\\": \\"\\"\\n }\\n ],\\n \\"TotalCount\\": 10\\n}","type":"json"}]', + 'title' => 'GetAiRtcAuthCodeList', + 'description' => '## [](#)Usage notes'."\n" + ."\n" + .'* This API retrieves a list of authorization codes for a specific batch ID. You can filter the results by status and type.'."\n" + .'* Pagination is supported via the `PageNo` and `PageSize` parameters.'."\n" + .'* By default, the `NeedTotalCount` parameter is set to `true`, indicating that the response includes the total count of matching records.'."\n" + .'* `LicenseItemId` is a required parameter that specifies the batch to query.'."\n", + ], + 'ActiveAiRtcLicense' => [ + 'summary' => 'Activates a specified license using the batch ID, authorization code, and device SN.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceMX4DML', + ], + ], + 'parameters' => [ + [ + 'name' => 'LicenseItemId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The batch ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => '17712***', + ], + ], + [ + 'name' => 'AuthCode', + 'in' => 'query', + 'schema' => [ + 'description' => 'The authorization code.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'iU1IeJech7***', + ], + ], + [ + 'name' => 'DeviceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The device ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'device-***', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => '', + 'description' => 'ApiResponse\\<CollectionResult>'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '4F9C14FE-1147-15AC-8EDF-A590FF12***', + ], + 'Success' => [ + 'description' => 'Indicates whether the call was successful.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Code' => [ + 'description' => 'The error code returned.'."\n", + 'type' => 'string', + 'example' => 'Success', + ], + 'Message' => [ + 'description' => 'The error message.'."\n", + 'type' => 'string', + 'example' => 'OK', + ], + 'HttpStatusCode' => [ + 'description' => 'The HTTP status code.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'License' => [ + 'description' => 'The license information.'."\n", + 'type' => 'string', + 'example' => 'a659a06659a***', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"4F9C14FE-1147-15AC-8EDF-A590FF12***\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"Success\\",\\n \\"Message\\": \\"OK\\",\\n \\"HttpStatusCode\\": 200,\\n \\"License\\": \\"a659a06659a***\\"\\n}","type":"json"}]', + 'title' => 'ActiveAiRtcLicense', + 'description' => '## [](#)Usage notes'."\n" + ."\n" + .'This API is used to activate a specific license for Real-time Conversational AI by providing a batch ID (`LicenseItemId`), authorization code (`AuthCode`), and device ID (`DeviceId`). Upon successful activation, the API returns a response containing the request ID, an error code, the request status, the HTTP status code, and the activated license information.'."\n" + ."\n" + .'**Note**: Ensure that the provided batch ID, authorization code, and device ID are correct. Incorrect information may cause the activation to fail.'."\n", + ], + 'SubmitVideoCognitionJob' => [ + 'summary' => 'Submits a video for AI analysis and processing.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'paid', + 'abilityTreeNodes' => [ + 'FEATUREiceVYUZ7L', + ], + ], + 'parameters' => [ + [ + 'name' => 'Title', + 'in' => 'query', + 'schema' => [ + 'description' => 'The video title. It supports letters, digits, and hyphens (-), and cannot start with a special character. Max length: 256 bytes.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => true, + 'example' => 'example-title-**** ', + ], + ], + [ + 'name' => 'Params', + 'in' => 'query', + 'schema' => [ + 'description' => 'Additional request parameters, provided as a JSON string. This is used to pass specific settings for various AI analysis modules, such as Natural Language Processing (NLP), shot segmentation, tagging, and action recognition.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{'."\n" + .' "nlpParams": {'."\n" + .' "sourceLanguage": "cn",'."\n" + .' "diarizationEnabled": true,'."\n" + .' "speakerCount": 2,'."\n" + .' "summarizationEnabled": true,'."\n" + .' "summarizationTypes": "Paragraph,Conversational,QuestionsAnswering,MindMap",'."\n" + .' "translationEnabled": true,'."\n" + .' "targetLanguages": "en",'."\n" + .' "autoChaptersEnabled": true,'."\n" + .' "meetingAssistanceEnabled": true'."\n" + .' }'."\n" + .'}', + ], + ], + [ + 'name' => 'UserData', + 'in' => 'query', + 'schema' => [ + 'description' => 'The user-defined data that is passed through and returned as-is in the response. Max length: 1,024 bytes.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{"test":1}', + ], + ], + [ + 'name' => 'Input', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'title' => 'input', + 'description' => 'The media input object.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The type of media input. Valid values:'."\n" + ."\n" + .'* OSS'."\n" + .'* Media'."\n" + .'* URL'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'Media', + ], + 'Media' => [ + 'description' => 'If Type is set to OSS, specify an OSS path. Example: OSS://test-bucket/video/202208/test.mp4.'."\n" + ."\n" + .'If Type is set to Media, specify a media asset ID. Example: c5c62d8f0361337cab312dce8e77dc6d.'."\n" + ."\n" + .'If Type is set to URL, specify an HTTP URL. Example: https://zc-test.oss-cn-shanghai.aliyuncs.com/test/unknowFace.mp4.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'c5c62d8f03613************c6d', + ], + ], + 'required' => false, + 'docRequired' => true, + ], + ], + [ + 'name' => 'TemplateId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the template that specifies the analysis algorithms to be used. For details, see [CreateCustomTemplate](https://help.aliyun.com/zh/ims/developer-reference/api-ice-2020-11-09-createcustomtemplate?spm=a2c4g.11186623.help-menu-193643.d\\_5\\_0\\_3\\_3\\_0\\_0.17b66afamjKySv) and [smart tagging template](https://help.aliyun.com/zh/ims/user-guide/smart-tagging-template?spm=a2c4g.11186623.0.i15).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '39f8e0bc00***************', + ], + ], + [ + 'name' => 'TemplateConfig', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'JobId' => [ + 'description' => 'The task ID.'."\n", + 'type' => 'string', + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + ], + 'description' => '', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"JobId\\": \\"****20b48fb04483915d4f2cd8ac****\\"\\n}","type":"json"}]', + 'title' => 'SubmitVideoCognitionJob', + 'requestParamsDescription' => '### nlpParams'."\n" + ."\n" + .'|Feature|Parameter|Type|Required|Description|Example|'."\n" + .'|---|---|---|---|---|---|'."\n" + .'||nlpParams|object|Yes|An object containing all NLP-related parameters. This field is required if the analysis template includes the NLP type.|{"sourceLanguage":"cn"}|'."\n" + .'|Transcription|sourceLanguage|string|Yes|The source language for transcription. Valid values: cn (Mandarin), en (English), yue (Cantonese), fspk (Chinese and English).|"cn"|'."\n" + .'||diarizationEnabled|boolean|No|Specifies whether to enable speaker diarization. Default value: false.|true|'."\n" + .'||speakerCount|integer|No|Specifies the number of speakers for diarization. If this parameter is not specified, the speakers are not recognized. Valid values: 0: an arbitrary number of speakers. 2: two speakers.|2|'."\n" + .'|Summarization|summarizationEnabled|boolean|No|Specifies whether to enable summarization, which can generate full-text summaries, speaker summaries, and more.|true|'."\n" + .'||summarizationTypes|string|No|Specify the desired summary types. Valid values: Paragraph (full-text summary), Conversational (speaker summary), QuestionsAnswering (Q&A), and MindMap.|"Paragraph,Conversational,QuestionsAnswering,MindMap"|'."\n" + .'|Translation|translationEnabled|boolean|No|Specifies whether to enable translation.|true|'."\n" + .'||targetLanguages|string|No|The target languages for translation. Valid values: cn (Mandarin), en (English), yue (Cantonese), fspk (Chinese and English).|"en,cn"|'."\n" + .'|Chapter generation|autoChaptersEnabled|boolean|No|Specifies whether to enable chapter generation. The output includes chapter titles and summaries.|true|'."\n" + .'|AI minutes|meetingAssistanceEnabled|boolean|No|Specifies whether to enable AI minutes. The output includes topic classification, keywords, key sentences, and to-do list.|true|', + ], + 'QueryVideoCognitionJob' => [ + 'summary' => 'Retrieves the results of an AI analysis and processing task.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceVYUZ7L', + ], + ], + 'parameters' => [ + [ + 'name' => 'JobId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the task to query. It is returned when you call the [SubmitSmarttagJob](~~478786~~) operation.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + ], + [ + 'name' => 'Params', + 'in' => 'query', + 'schema' => [ + 'description' => 'Additional request parameters, provided as a JSON string.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{}', + ], + ], + [ + 'name' => 'IncludeResults', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'Specifies whether to include the full algorithm results in the response.'."\n", + 'type' => 'object', + 'properties' => [ + 'NeedAsr' => [ + 'description' => 'Specifies whether to include Automatic Speech Recognition (ASR) results.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + 'NeedOcr' => [ + 'description' => 'Specifies whether to include Optical Character Recognition (OCR) results.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + 'NeedProcess' => [ + 'description' => 'Specifies whether to include the URL to the raw output of the algorithm.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + 'required' => false, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'JobStatus' => [ + 'description' => 'The status of the task. Valid values:'."\n" + ."\n" + .'* **Success**'."\n" + .'* **Fail**'."\n" + .'* **Processing**'."\n" + .'* **Submitted**'."\n", + 'type' => 'string', + 'example' => 'Success', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******'."\n", + ], + 'UserData' => [ + 'description' => 'The user-defined data.'."\n", + 'type' => 'string', + 'example' => '{"userId":"123432412831"}'."\n", + ], + 'Results' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'result' => [ + 'description' => 'An array of analysis result objects.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The type of analysis result. Valid values:'."\n" + ."\n" + .'1. TextLabel: Tags from text content.'."\n" + .'2. VideoLabel: Tags from video content.'."\n" + .'3. ASR: Raw speech recognition results. Not returned by default.'."\n" + .'4. OCR: Raw text recognition results. Not returned by default.'."\n" + .'5. NLP: Natural Language Processing results. Not returned by default.'."\n" + .'6. Process: URL to the raw algorithm output. Not returned by default.'."\n", + 'type' => 'string', + 'example' => 'ASR', + ], + 'Data' => [ + 'description' => 'A JSON string containing the detailed analysis data. The structure of this data depends on the Type field. For details, see the Result parameters section below.'."\n", + 'type' => 'string', + 'example' => '{"title":"example-title-****"} '."\n", + ], + ], + 'description' => '', + ], + ], + ], + ], + ], + 'description' => '', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"JobStatus\\": \\"Success\\",\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\\\n\\",\\n \\"UserData\\": \\"{\\\\\\"userId\\\\\\":\\\\\\"123432412831\\\\\\"}\\\\n\\",\\n \\"Results\\": {\\n \\"result\\": [\\n {\\n \\"Type\\": \\"ASR\\",\\n \\"Data\\": \\"{\\\\\\"title\\\\\\":\\\\\\"example-title-****\\\\\\"}\\\\t\\\\n\\"\\n }\\n ]\\n }\\n}","type":"json"}]', + 'title' => 'QueryVideoCognitionJob', + 'responseParamsDescription' => '**Result parameters**'."\n" + ."\n" + .'**VideoLabel** data structure'."\n" + ."\n" + .'|Parameter|Type|Description|'."\n" + .'|---|---|---|'."\n" + .'|persons|JSONArray|An array of detected person results.|'."\n" + .'|persons.name|String|The name of the recognized person.|'."\n" + .'|persons.category|String|The category of the person. Valid values: `celebrity`, `politician`, `sensitive`, `unknown`, and the ID of a custom figure library.|'."\n" + .'|persons.ratio|double|The appearance rate of the person. Valid values: 0 to 1.|'."\n" + .'|persons.occurrences|JSONArray|An array of detailed appearance information for the person.|'."\n" + .'|persons.occurrences.score|double|Confidence score of the recognition.|'."\n" + .'|persons.occurrences.from|double|Start time of the appearance, in seconds.|'."\n" + .'|persons.occurrences.to|double|End time of the appearance, in seconds.|'."\n" + .'|persons.occurrences.position|JSONObject|Face coordinates.|'."\n" + .'|persons.occurrences.position.leftTop|int\\[\\]|The x and y coordinates of the top-left corner.|'."\n" + .'|persons.occurrences.position.rightBottom|int\\[\\]|The x and y coordinates of the bottom-right corner.|'."\n" + .'|persons.occurrences.timestamp|double|The timestamp of this specific coordinate capture, in seconds.|'."\n" + .'|persons.occurrences.scene|String|The shot type. Valid values: `closeUp`, `medium-closeUp`, `medium`, and `medium-long` (full shot).|'."\n" + .'|tags|JSONArray|An array of detected objects, scenes, and other tags. See examples below.|'."\n" + .'|tags.mainTagName|String|The main tag.|'."\n" + .'|tags.subTagName|String|The subtag.|'."\n" + .'|tags.ratio|double|The appearance rate of the tag. Valid values: 0 to 1.|'."\n" + .'|tags.occurrences|JSONArray|An array of detailed appearance information for the tag.|'."\n" + .'|tags.occurrences.score|double|The confidence score.|'."\n" + .'|tags.occurrences.from|double|Start time, in seconds.|'."\n" + .'|tags.occurrences.to|double|End time, in seconds.|'."\n" + .'|classifications|JSONArray|An array of video classification information.|'."\n" + .'|classifications.score|double|The confidence score of the classification.|'."\n" + .'|classifications.category1|String|The level-1 category, such as Lifestyle, Anime, or Automotive.|'."\n" + .'|classifications.category2|String|The level-2 category, such as health or home under the level-1 category Lifestyle.|'."\n" + ."\n" + .'Tags examples'."\n" + ."\n" + .'|mainTagName|subTagName|'."\n" + .'|---|---|'."\n" + .'|Program|Dad, Where Are We Going?, Top Funny Comedian|'."\n" + .'|Role|Doctor, Nurse, Teacher|'."\n" + .'|Object|Piano, Cup, Table, Scrambled eggs with tomato, car, cosmetics|'."\n" + .'|Logo|CCTV-1, CCTV-2, CNN, BBC|'."\n" + .'|Action|Dancing, Kissing, Hugging, Meeting, Singing, Calling, Horseback riding, Fighting|'."\n" + .'|Location|Tiananmen Square, Statue of Liberty, Leshan Giant Buddha, China, America|'."\n" + .'|Scene|Bedroom, Subway Station, Terraced Field, Beach, Desert|'."\n" + ."\n" + .'**ImageLabel** data structure'."\n" + ."\n" + .'|Parameter|Type|Description|'."\n" + .'|---|---|---|'."\n" + .'|persons|JSONArray|The information about the recognized people.|'."\n" + .'|persons.name|String|The name of the recognized person.|'."\n" + .'|persons.category|String|The type of the recognized person. Valid values: celebrity, politician, and sensitive.|'."\n" + .'|persons.score|double|Confidence score of the recognition.|'."\n" + .'|persons.position|JSONObject|Face coordinates.|'."\n" + .'|persons.position.leftTop|int\\[\\]|The x and y coordinates of the top-left corner.|'."\n" + .'|persons.position.rightBottom|int\\[\\]|The x and y coordinates of the bottom-right corner.|'."\n" + .'|persons.scene|String|The shot type. Valid values: closeUp, medium-closeUp, medium, medium-long.|'."\n" + .'|tags|JSONArray|An array of detected objects, scenes, and other tags. See examples below.|'."\n" + .'|tags.mainTagName|String|The main tag.|'."\n" + .'|tags.subTagName|String|The subtag.|'."\n" + .'|tags.score|double|The confidence score.|'."\n" + ."\n" + .'Tags examples'."\n" + ."\n" + .'|mainTagName|subTagName|'."\n" + .'|---|---|'."\n" + .'|Role|Doctor, Nurse, Teacher|'."\n" + .'|Location|Tiananmen Square, Statue of Liberty, Leshan Giant Buddha, China, America|'."\n" + .'|Action|Talking|'."\n" + .'|Logo|CCTV-1, CCTV-2, CNN, BBC|'."\n" + .'|Action|Dancing, Kissing, Hugging, Meeting, Singing, Calling, Horseback riding, Fighting|'."\n" + .'|Object|Piano, Cup, Table, Scrambled eggs with tomato, car, cosmetics|'."\n" + .'|Scene|Bedroom, Subway Station, Terraced Field, Beach, Desert|'."\n" + ."\n" + .'TextLabel data structure from ASR & OCR'."\n" + ."\n" + .'|Parameter|Type|Description|'."\n" + .'|---|---|---|'."\n" + .'|tags|JSONArray|The text tags. For more information, see the following table.|'."\n" + .'|tags.name|String|The category of the tag.|'."\n" + .'|tags.value|String|The detected values. May contain multiple values separated by a comma.|'."\n" + ."\n" + .'Tags examples'."\n" + ."\n" + .'|name|value|'."\n" + .'|---|---|'."\n" + .'|Location|Tiananmen Square, Statue of Liberty, Leshan Giant Buddha, China, America|'."\n" + .'|Organization|World Wildlife Fund, China Media Group|'."\n" + .'|Logo|Nike, Li-Ning|'."\n" + .'|Keyword|Backbone force|'."\n" + ."\n" + .'**CPVLabel** data structure'."\n" + ."\n" + .'* cates: An array of hierarchical category results.'."\n" + .'* entities: An array of entity results, with knowledge graph data.'."\n" + .'* hotwords: An array of detected hotwords from a watchlist.'."\n" + .'* freeTags: free tags (keywords).'."\n" + ."\n" + .'|Parameter|Type|Example|Description|'."\n" + .'|---|---|---|---|'."\n" + .'|type|String|hmi|The type of the result. Valid values: hmi (human-in-the-loop), autp (automated tagging).|'."\n" + .'|cates|JSONArray|\\-|An array of hierarchical category results.|'."\n" + .'|cates.labelLevel1|String|Travel|The level-1 tag.|'."\n" + .'|cates.labelLevel2|String|Scenery|The level-2 tag.|'."\n" + .'|cates.label|String|""|The name of the tag. An empty value may be returned by the algorithm.|'."\n" + .'|cates.appearanceProbability|double|0.96|The appearance rate.|'."\n" + .'|cates.detailInfo|JSONArray|\\-|\\-|'."\n" + .'|cates.detailInfo.score|double|0.9|The confidence score.|'."\n" + .'|cates.detailInfo.startTime|double|0.021|Start time, in seconds.|'."\n" + .'|cates.detailInfo.endTime|double|29.021|End time, in seconds.|'."\n" + .'|entities|JSONArray|\\-|\\-|'."\n" + .'|entities.labelLevel1|String|Location|The level-1 tag.|'."\n" + .'|entities.labelLevel2|String|Landmark|The level-2 tag.|'."\n" + .'|entities.label|String|Huangguoshu Waterfall|The name of the tag.|'."\n" + .'|entities.appearanceProbability|double|0.067|The appearance rate.|'."\n" + .'|entities.knowledgeInfo|String|{"name": "Huangguoshu Waterfall", "nameEn": "Huangguoshu Waterfall", "description": "One of the four largest waterfalls in Asia"}|The knowledge graph information. The fields are provided in the Appendix.|'."\n" + .'|entities.detailInfo|JSONArray|\\-|\\-|'."\n" + .'|entities.detailInfo.score|double|0.33292606472969055|The confidence score.|'."\n" + .'|entities.detailInfo.startTime|double|6.021|Start time, in seconds.|'."\n" + .'|entities.detailInfo.endTime|double|8.021|End time, in seconds.|'."\n" + .'|entities.detailInfo.trackData|JSONArray|\\-|Structured tracking data for the entity.|'."\n" + .'|entities.detailInfo.trackData.score|double|0.32|The confidence score.|'."\n" + .'|entities.detailInfo.trackData.bbox|integer\\[\\]|23, 43, 45, 67|The bounding box.|'."\n" + .'|entities.detailInfo.trackData.timestamp|double|7.9|The timestamp.|'."\n" + .'|hotwords|JSONArray|\\-|\\-|'."\n" + .'|hotwords.labelLevel1|String|The information about the hotword.|The level-1 tag.|'."\n" + .'|hotwords.labelLevel1|String|Hotword|The level-2 tag.|'."\n" + .'|hotwords.labelLevel2|String|""|The level-2 tag.|'."\n" + .'|hotwords.label|String|China Meteorological Administration|The content of the hotword.|'."\n" + .'|hotwords.appearanceProbability|double|0.96|The appearance rate.|'."\n" + .'|hotwords.detailInfo|JSONArray|||'."\n" + .'|hotwords.detailInfo.score|double|1.0|The confidence score.|'."\n" + .'|hotwords.detailInfo.startTime|double|0.021|Start time, in seconds.|'."\n" + .'|hotwords.detailInfo.endTime|double|29.021|End time, in seconds.|'."\n" + .'|freeTags|JSONArray|||'."\n" + .'|freeTags.labelLevel1|String|Hotword|The level-1 tag.|'."\n" + .'|freeTags.labelLevel2|String|""|The level-2 tag.|'."\n" + .'|freeTags.label|String|Central Meteorological Observatory|The content of the keyword.|'."\n" + .'|freeTags.appearanceProbability|double|0.96|The appearance rate.|'."\n" + .'|freeTags.detailInfo|JSONArray|||'."\n" + .'|freeTags.detailInfo.score|double|0.9|The confidence score.|'."\n" + .'|freeTags.detailInfo.startTime|double|0.021|Start time, in seconds.|'."\n" + .'|freeTags.detailInfo.endTime|double|29.021|End time, in seconds.|'."\n" + ."\n" + .'**ASR result**'."\n" + ."\n" + .'|Parameter|Type|Description|'."\n" + .'|---|---|---|'."\n" + .'|details|JSONArray|The details of the result.|'."\n" + .'|details.from|double|The start timestamp. Unit: seconds.|'."\n" + .'|details.to|double|The end timestamp. Unit: seconds.|'."\n" + .'|details.content|String|The recognized text.|'."\n" + ."\n" + .'**OCR result**'."\n" + ."\n" + .'|Parameter|Type|Description|'."\n" + .'|---|---|---|'."\n" + .'|details|JSONArray|The details of the result.|'."\n" + .'|details.timestamp|double|The timestamp. Unit: seconds.|'."\n" + .'|details.info|JSONArray|The details of the recognized text at the specified timestamp.|'."\n" + .'|details.info.score|double|The confidence score.|'."\n" + .'|details.info.position|JSONObject|The coordinates of the text.|'."\n" + .'|details.info.position.leftTop|int\\[\\]|The x and y coordinates of the top-left corner.|'."\n" + .'|details.info.position.rightBottom|int\\[\\]|The x and y coordinates of the bottom-right corner.|'."\n" + .'|details.info.content|String|The recognized text.|'."\n" + ."\n" + .'**Metadata**'."\n" + ."\n" + .'**Note** If you do not use the human-in-the-loop mode and you specify the needMetaData parameter when you call the [SubmitSmarttagJob](~~478786~~) operation, the original title of the video is returned in the result.'."\n" + ."\n" + .'|Parameter|Type|Description|'."\n" + .'|---|---|---|'."\n" + .'|title|String|The title of the video.|'."\n" + ."\n" + .'**Subtitle extraction result**'."\n" + ."\n" + .'|Parameter|Type|Description|'."\n" + .'|---|---|---|'."\n" + .'|details|JSONArray|The details of the result.|'."\n" + .'|details.allResultUrl|String|The URL of the file that contains all subtitles. The URL is valid for half a year after the task is complete.|'."\n" + .'|details.chResultUrl|String|The URL of the file that contains only Chinese subtitles. The URL is valid for half a year after the task is complete.|'."\n" + .'|details.engResultUrl|String|The URL of the file that contains only English subtitles. The URL is valid for half a year after the task is complete.|'."\n" + ."\n" + .'**Note** The content of the file is in the following format: `Serial number + Time range + Subtitle content`. Each line in the file contains a sentence.'."\n" + ."\n" + .'**NLP-based result**'."\n" + ."\n" + .'|Parameter|Type|Description|'."\n" + .'|---|---|---|'."\n" + .'|transcription|object|The transcription results.|'."\n" + .'|autoChapters|object|A list of automatically generated chapters.|'."\n" + .'|summarization|object|The AI-generated summaries.|'."\n" + .'|meetingAssistance|object|The AI-generated minutes.|'."\n" + .'|translation|object|The text translation result.|'."\n" + ."\n" + .'**Parameters of transcription**'."\n" + ."\n" + .'|Parameter|Type|Description|'."\n" + .'|---|---|---|'."\n" + .'|transcription|object|The transcription results.|'."\n" + .'|transcription.paragraphs|list\\[\\]|The results are organized by paragraph.|'."\n" + .'|transcription.paragraphs\\[i\\].paragraphId|string|The paragraph ID.|'."\n" + .'|transcription.paragraphs\\[i\\].speakerId|string|The speaker ID.|'."\n" + .'|transcription.paragraphs\\[i\\].words|list\\[\\]|The words contained in the paragraph.|'."\n" + .'|transcription.paragraphs\\[i\\].words\\[i\\].id|int|The word ID. You do not need to pay attention to it.|'."\n" + .'|transcription.paragraphs\\[i\\].words\\[i\\].sentenceId|int|The sentence ID. The words that have the same sentence ID can be assembled into a sentence.|'."\n" + .'|transcription.paragraphs\\[i\\].words\\[i\\].start|long|The start time of the word. The value is a timestamp representing the number of milliseconds that have elapsed since the audio starts.|'."\n" + .'|transcription.paragraphs\\[i\\].words\\[i\\].end|long|The end time of the word. The value is a timestamp representing the number of milliseconds that have elapsed since the audio starts.|'."\n" + .'|transcription.paragraphs\\[i\\].words\\[i\\].text|string|The word content.|'."\n" + ."\n" + .'**Parameters of summarization**'."\n" + ."\n" + .'|Parameter|Type|Description|'."\n" + .'|---|---|---|'."\n" + .'|summarization|object|The summary results. The results may be empty or of different summary types.|'."\n" + .'|summarization.paragraphSummary|string|The summary of the full text.|'."\n" + .'|summarization.conversationalSummary|list\\[\\]|A list of speaker summary results.|'."\n" + .'|summarization.conversationalSummary\\[i\\].speakerId|string|The ID of the speaker.|'."\n" + .'|summarization.conversationalSummary\\[i\\].speakerName|string|The name of the speaker.|'."\n" + .'|summarization.conversationalSummary\\[i\\].summary|string|The summary corresponding to the speaker.|'."\n" + .'|summarization.questionsAnsweringSummary|list\\[\\]|A list of Q&A.|'."\n" + .'|summarization.questionsAnsweringSummary\\[i\\].question|string|The question.|'."\n" + .'|summarization.questionsAnsweringSummary\\[i\\].sentenceIdsOfQuestion|list\\[\\]|The IDs of transcribed sentences corresponding to this question.|'."\n" + .'|summarization.questionsAnsweringSummary\\[i\\].answer|string|The answer to the question.|'."\n" + .'|summarization.questionsAnsweringSummary\\[i\\].sentenceIdsOfAnswer|list\\[\\]|The IDs of transcribed sentences corresponding to this answer.|'."\n" + .'|summarization.mindMapSummary|list\\[object\\]|The mind map. It may contain the summary of each topic and the relationship between topics.|'."\n" + .'|summarization.mindMapSummary\\[i\\].title|string|The title of the topic.|'."\n" + .'|summarization.mindMapSummary\\[i\\].topic|list\\[object\\]|An array that contains each topic and its subtopics.|'."\n" + .'|summarization.mindMapSummary\\[i\\].topic\\[i\\].title|string|The title of the topic.|'."\n" + .'|summarization.mindMapSummary\\[i\\].topic\\[i\\].topic|list\\[object\\]|An array that contains the subtopics of the topic. The array can be empty.|'."\n" + ."\n" + .'**Parameters of translation**'."\n" + ."\n" + .'|Parameter|Type|Description|'."\n" + .'|---|---|---|'."\n" + .'|translation|object|The translation result.|'."\n" + .'|translation.paragraphs|list\\[\\]|The translation of the transcribed text, organized by paragraph.|'."\n" + .'|translation.paragraphs.paragraphId|string|The paragraph ID, which corresponds to the paragraph ID in the ASR result.|'."\n" + .'|translation.paragraphs.sentences|list\\[\\]|A list of translated sentences.|'."\n" + .'|translation.paragraphs.sentences\\[i\\].sentenctId|long|The sentence ID.|'."\n" + .'|translation.paragraphs.sentences\\[i\\].start|long|The start time of the sentence. The value is a timestamp representing the number of milliseconds that have elapsed since the audio starts.|'."\n" + .'|translation.paragraphs.sentences\\[i\\].end|long|The end time of the sentence. The value is a timestamp representing the number of milliseconds that have elapsed since the audio starts.|'."\n" + .'|translation.paragraphs.sentences\\[i\\].text|string|The translated text, which corresponds to the ASR result.|'."\n" + ."\n" + .'**Parameters of autoChapters**'."\n" + ."\n" + .'|Parameter|Type|Description|'."\n" + .'|---|---|---|'."\n" + .'|autoChapters|list\\[\\]|A list of automatically generated chapters.|'."\n" + .'|autoChapters\\[i\\].id|int|The serial number of the chapter.|'."\n" + .'|autoChapters\\[i\\].start|long|The start time of the chapter. The value is a timestamp representing the number of milliseconds that have elapsed since the audio starts.|'."\n" + .'|autoChapters\\[i\\].end|long|The end time of the chapter. The value is a timestamp representing the number of milliseconds that have elapsed since the audio starts.|'."\n" + .'|autoChapters\\[i\\].headline|string|The headline of the chapter.|'."\n" + .'|autoChapters\\[i\\].summary|string|The chapter overview.|'."\n" + ."\n" + .'**Parameters of meetingAssistance**'."\n" + ."\n" + .'|Parameter|Type|Description|'."\n" + .'|---|---|---|'."\n" + .'|meetingAssistance|object|The result of the AI minutes, which may be empty or of different types.|'."\n" + .'|meetingAssistance.keywords|list\\[\\]|A list of extracted keywords.|'."\n" + .'|meetingAssistance.keySentences|list\\[\\]|A list of key sentences.|'."\n" + .'|meetingAssistance.keySentences\\[i\\].id|long|The serial number of the key sentence.|'."\n" + .'|meetingAssistance.keySentences\\[i\\].sentenceId|long|The ID of the key sentence, which corresponds to the sentence ID in the original ASR result.|'."\n" + .'|meetingAssistance.keySentences\\[i\\].start|long|The start time of the key sentence. The value is a timestamp representing the number of milliseconds that have elapsed since the audio starts.|'."\n" + .'|meetingAssistance.keySentences\\[i\\].end|long|The end time of the key sentence. The value is a timestamp representing the number of milliseconds that have elapsed since the audio starts.|'."\n" + .'|meetingAssistance.keySentences\\[i\\].text|string|The key sentence information.|'."\n" + .'|meetingAssistance.actions|list\\[\\]|A list of to-do items.|'."\n" + .'|meetingAssistance.actions\\[i\\].id|long|The serial number of the to-do item.|'."\n" + .'|meetingAssistance.actions\\[i\\].sentenceId|long|The ID of the key sentence, which corresponds to the sentence ID in the original ASR result.|'."\n" + .'|meetingAssistance.actions\\[i\\].start|long|The start time. The value is a timestamp representing the number of milliseconds that have elapsed since the audio starts.|'."\n" + .'|meetingAssistance.actions\\[i\\].end|long|The end time. The value is a timestamp representing the number of milliseconds that have elapsed since the audio starts.|'."\n" + .'|meetingAssistance.actions\\[i\\].text|string|The content of the to-do item.|'."\n" + .'|meetingAssistance.classifications|object|The scene type. Only three types of scenes are supported.|'."\n" + .'|meetingAssistance.classifications.interview|float|The confidence score for the interview scene.|'."\n" + .'|meetingAssistance.classifications.lecture|float|The confidence score for the lecture scene.|'."\n" + .'|meetingAssistance.classifications.meeting|float|The confidence score for the meeting scene.|', + ], + 'QuerySmarttagJob' => [ + 'summary' => 'Queries the information about a smart tagging job.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceVYUZ7L', + ], + ], + 'parameters' => [ + [ + 'name' => 'JobId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the smart tagging job that you want to query. You can obtain the job ID from the response parameters of the SubmitSmarttagJob operation.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => '88c6ca184c0e47098a5b665e2****', + ], + ], + [ + 'name' => 'Params', + 'in' => 'query', + 'schema' => [ + 'description' => 'The extra parameters that you want to query in the request. The value is a JSON string. Example: {"labelResultType":"auto"}. The value of labelResultType is of the STRING type. Valid values:'."\n" + ."\n" + .'* auto: machine tagging'."\n" + .'* hmi: tagging by human and machine'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{"labelResultType":"auto"} '."\n", + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'JobStatus' => [ + 'description' => 'The status of the job. Valid values:'."\n" + ."\n" + .'* **Success**: The job was successful.'."\n" + .'* **Fail**: The job failed.'."\n" + .'* **Processing**: The job is in progress.'."\n" + .'* **Submitted**: The job is submitted and waiting to be processed.'."\n", + 'type' => 'string', + 'example' => 'Success', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'UserData' => [ + 'description' => 'The content of callback messages that are sent to Simple Message Queue (SMQ) when the information of the smart tagging job changes. For more information about the parameters contained in the callback message, see the "Callback parameters" section of this topic.'."\n", + 'type' => 'string', + 'example' => '{"userId":"123432412831"}', + ], + 'Results' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'Result' => [ + 'description' => 'The analysis results of the smart tagging job. The value is an array.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The type of the analysis result.'."\n" + ."\n" + .'* The type of the analysis result based on Smart tagging V1.0. Valid values:'."\n" + ."\n" + .'1. TextLabel: the text tag.'."\n" + .'2. VideoLabel: the video tag.'."\n" + .'3. ASR: the original result of automatic speech recognition (ASR). By default, this type of result is not returned.'."\n" + .'4. OCR: the original result of optical character recognition (OCR). By default, this type of result is not returned.'."\n" + .'5. NLP: the natural language processing (NLP)-based result. By default, this type of result is not returned.'."\n" + ."\n" + .'* The type of the analysis result based on Smart tagging V2.0. Valid values:'."\n" + ."\n" + .'1. CPVLabel'."\n" + .'2. Meta: the information about the video file, such as the title of the video. By default, this type of information is not returned.'."\n" + ."\n" + .'* The type of the analysis result based on Smart tagging V2.0-custom. Valid values:'."\n" + ."\n" + .'1. CPVLabel'."\n" + .'2. Meta: the information about the video file, such as the title of the video. By default, this type of information is not returned.'."\n", + 'type' => 'string', + 'example' => 'Meta', + ], + 'Data' => [ + 'description' => 'The details of the analysis result. The value is a JSON string. For more information about the parameters of different result types, see the "Parameters of different result types" section of this topic.'."\n", + 'type' => 'string', + 'example' => '{"title":"example-title-****"} '."\n", + ], + ], + 'description' => '', + ], + ], + ], + ], + 'Usages' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'Usage' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'type' => 'string', + ], + 'Quota' => [ + 'type' => 'integer', + 'format' => 'int64', + ], + ], + ], + ], + ], + ], + ], + 'description' => '', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"JobStatus\\": \\"Success\\",\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"UserData\\": \\"{\\\\\\"userId\\\\\\":\\\\\\"123432412831\\\\\\"}\\",\\n \\"Results\\": {\\n \\"Result\\": [\\n {\\n \\"Type\\": \\"Meta\\",\\n \\"Data\\": \\"{\\\\\\"title\\\\\\":\\\\\\"example-title-****\\\\\\"}\\\\t\\\\n\\"\\n }\\n ]\\n },\\n \\"Usages\\": {\\n \\"Usage\\": [\\n {\\n \\"Type\\": \\"\\",\\n \\"Quota\\": 0\\n }\\n ]\\n }\\n}","type":"json"}]', + 'title' => 'QuerySmarttagJob', + 'responseParamsDescription' => '**Callback parameters** When the status of the smart tagging job changes, ApsaraVideo Media Processing (MPS) sends a message to the specified SMQ queue. For more information about how to specify an SMQ queue for receiving callbacks, see the UpdatePipeline topic. The callback message is a JSON string that contains the parameters described in the following table.'."\n" + ."\n" + .'|Parameter|Type|Description|'."\n" + .'|---|---|---|'."\n" + .'|Type|String|The type of the job. The fixed value is smarttag, which indicates a smart tagging job.|'."\n" + .'|JobId|String|The unique ID of the job.|'."\n" + .'|State|String|The current status of the job. The value is the same as that of the JobStatus response parameter of the QuerySmarttagJob operation.|'."\n" + .'|State|String|The current status of the job. The value is the same as that of the JobStatus response parameter of the QuerySmarttagJob operation.|'."\n" + .'|UserData|String|The UserData information passed for the SubmitSmarttagJob operation.|'."\n" + .'|UserData|String|The UserData information passed for the SubmitSmarttagJob operation.|'."\n" + ."\n" + .'**Parameters of different result types**'."\n" + ."\n" + .'Parameters of **VideoLabel**'."\n" + ."\n" + .'|Parameter|Type|Description|'."\n" + .'|---|---|---|'."\n" + .'|persons|JSONArray|The information of figures identified by the smart tagging job.|'."\n" + .'|persons.name|String|The name of the identified figure.|'."\n" + .'|persons.category|String|The type of the identified figure. Valid values: `celebrity`, `politician`, `sensitive`, and `unknown`. A figure is identified as unknown based on the custom figure library. In this case, the ID of the custom figure is returned.|'."\n" + .'|persons.ratio|double|The appearance rate of the figure. Valid values: 0 to 1.|'."\n" + .'|persons.occurrences|JSONArray|The details of the appearances of the figure.|'."\n" + .'|persons.occurrences.score|double|The score for the confidence level.|'."\n" + .'|persons.occurrences.from|double|The point in time when the figure appears. Unit: seconds.|'."\n" + .'|persons.occurrences.to|double|The point in time when the figure disappears. Unit: seconds.|'."\n" + .'|persons.occurrences.position|JSONObject|The face coordinates of the figure.|'."\n" + .'|persons.occurrences.position.leftTop|int\\[\\]|The x and y coordinates of the upper-left corner.|'."\n" + .'|persons.occurrences.position.rightBottom|int\\[\\]|The x and y coordinates of the lower-right corner.|'."\n" + .'|persons.occurrences.timestamp|double|The timestamp of the face coordinates. Unit: seconds.|'."\n" + .'|persons.occurrences.scene|String|The camera shot of the figure. Valid values: `closeUp`, `medium-closeUp`, `medium`, and `medium-long`.|'."\n" + .'|tags|JSONArray|The tags of the detected objects. For more information, see the following table.|'."\n" + .'|tags.mainTagName|String|The main tag.|'."\n" + .'|tags.subTagName|String|The subtag.|'."\n" + .'|tags.ratio|double|The appearance rate of the tag. Valid values: 0 to 1.|'."\n" + .'|tags.occurrences|JSONArray|The details of the appearances of the tag.|'."\n" + .'|tags.occurrences.score|double|The score for the confidence level.|'."\n" + .'|tags.occurrences.from|double|The point in time when the tag appears. Unit: seconds.|'."\n" + .'|tags.occurrences.to|double|The point in time when the tag disappears. Unit: seconds.|'."\n" + .'|classifications|JSONArray|The category of the video.|'."\n" + .'|classifications.score|double|The score for the confidence level.|'."\n" + .'|classifications.category1|String|The level-1 category, such as daily life activity, animation, and automobile.|'."\n" + .'|classifications.category2|String|The level-2 category, such as health and home under the level-1 category daily life activity.|'."\n" + ."\n" + .'Examples of video tags'."\n" + ."\n" + .'|mainTagName|subTagName|'."\n" + .'|---|---|'."\n" + .'|Program|Examples: Dad Where Are We Going and Top Funny Comedian.|'."\n" + .'|Figure role|Examples: doctor, nurse, and teacher.|'."\n" + .'|Object|Examples: piano, cup, table, scrambled eggs with tomatoes, car, and cosmetics.|'."\n" + .'|TV channel logo|Examples: CCTV-1, CCTV-2, YOUKU, and Dragon TV.|'."\n" + .'|Action|Examples: dancing, kissing, hugging, meeting, singing, telephoning, horseback riding, and fighting.|'."\n" + .'|Location|Examples: Tian\'anmen Square, the Statue of Liberty, Leshan Giant Buddha, China, and America.|'."\n" + .'|Scene|Examples: bedroom, subway station, terraced field, beach, and desert.|'."\n" + ."\n" + .'Parameters of **ImageLabel**'."\n" + ."\n" + .'|Parameter|Type|Description|'."\n" + .'|---|---|---|'."\n" + .'|persons|JSONArray|The information of figures identified by the smart tagging job.|'."\n" + .'|persons.name|String|The name of the identified figure.|'."\n" + .'|persons.category|String|The type of the identified figure. Valid values: celebrity, politician, and sensitive.|'."\n" + .'|persons.score|double|The score for the confidence level of the identified figure.|'."\n" + .'|persons.position|JSONObject|The face coordinates of the figure.|'."\n" + .'|persons.position.leftTop|int\\[\\]|The x and y coordinates of the upper-left corner.|'."\n" + .'|persons.position.rightBottom|int\\[\\]|The x and y coordinates of the lower-right corner.|'."\n" + .'|persons.scene|String|The camera shot of the figure. Valid values: closeUp, medium-closeUp, medium, and medium-long.|'."\n" + .'|tags|JSONArray|The tags of the detected objects. For more information, see the following table.|'."\n" + .'|tags.mainTagName|String|The main tag.|'."\n" + .'|tags.subTagName|String|The subtag.|'."\n" + .'|tags.score|double|The score for the confidence level.|'."\n" + ."\n" + .'Examples of image tags'."\n" + ."\n" + .'|mainTagName|subTagName|'."\n" + .'|---|---|'."\n" + .'|Figure role|Examples: doctor, nurse, and teacher.|'."\n" + .'|Location|Examples: Tian\'anmen Square, the Statue of Liberty, Leshan Giant Buddha, China, and America.|'."\n" + .'|Action|Example: talking.|'."\n" + .'|TV channel logo|Examples: CCTV-1, CCTV-2, YOUKU, and Dragon TV.|'."\n" + .'|Action|Examples: dancing, kissing, hugging, meeting, singing, telephoning, horseback riding, and fighting.|'."\n" + .'|Object|Examples: piano, cup, table, scrambled eggs with tomatoes, car, and cosmetics.|'."\n" + .'|Scene|Examples: bedroom, subway station, terraced field, beach, and desert.|'."\n" + ."\n" + .'Parameters of TextLabel (from ASR and OCR)'."\n" + ."\n" + .'|Parameter|Type|Description|'."\n" + .'|---|---|---|'."\n" + .'|tags|JSONArray|The text tags. For more information, see the following table.|'."\n" + .'|tags.name|String|The type of the tag.|'."\n" + .'|tags.value|String|The values of the tag. Multiple tag values are separated by commas (,).|'."\n" + ."\n" + .'Examples of text tags'."\n" + ."\n" + .'|name|value|'."\n" + .'|---|---|'."\n" + .'|Location|Examples: Tian\'anmen Square, the Statue of Liberty, Leshan Giant Buddha, China, and America.|'."\n" + .'|Organization|Examples: China Wildlife Conservation Association and China Media Group (CMG).|'."\n" + .'|Brand name|Examples: Nike and Li-Ning.|'."\n" + .'|Keyword|Example: backbone force.|'."\n" + ."\n" + .'Parameters of **CPVLabel**'."\n" + ."\n" + .'* cates: the tagging category, including level-1 category, level-2 category, and level-3 category.'."\n" + .'* entities: the properties of the tagging category, including the knowledge graph information.'."\n" + .'* hotwords: the hotwords to which you pay attention.'."\n" + .'* freeTags: keywords.'."\n" + ."\n" + .'|Parameter|Type|Example|Description|'."\n" + .'|---|---|---|---|'."\n" + .'|type|String|hmi|The type of the result. Valid values: hmi and autp. A value of hmi indicates the results of tagging by human and machine. A value of autp indicates the results of machine tagging.|'."\n" + .'|cates|JSONArray|\\-|The information about the category of the tagging result.|'."\n" + .'|cates.labelLevel1|String|Tourism|The level-1 tag.|'."\n" + .'|cates.labelLevel2|String|Tourist landscape|The level-2 tag.|'."\n" + .'|cates.label|String|""|The name of the tag. An empty value may be returned by the algorithm.|'."\n" + .'|cates.appearanceProbability|double|0.96|The appearance rate of the tag.|'."\n" + .'|cates.detailInfo|JSONArray|\\-|\\-|'."\n" + .'|cates.detailInfo.score|double|0.9|The score for the confidence level.|'."\n" + .'|cates.detailInfo.startTime|double|0.021|The point in time when the object appears in the video.|'."\n" + .'|cates.detailInfo.endTime|double|29.021|The point in time when the object disappears in the video.|'."\n" + .'|entities|JSONArray|\\-|\\-|'."\n" + .'|entities.labelLevel1|String|Location|The level-1 tag.|'."\n" + .'|entities.labelLevel2|String|Landmark|The level-2 tag.|'."\n" + .'|entities.label|String|Huangguoshu Waterfall|The name of the tag.|'."\n" + .'|entities.appearanceProbability|double|0.067|The appearance rate of the tag.|'."\n" + .'|entities.knowledgeInfo|String|{"name": "Huangguoshu Waterfall", "nameEn": "Huangguoshu Waterfall", "description": "One of the four largest waterfalls in Asia"}|The knowledge graph information. The fields contained in the knowledge graph information are provided in Appendix, such as fields related to the intellectual property (IP) that is featured in films and television shows, music, figures, landmarks, and objects.|'."\n" + .'|entities.detailInfo|JSONArray|\\-|\\-|'."\n" + .'|entities.detailInfo.score|double|0.33292606472969055|The score for the confidence level.|'."\n" + .'|entities.detailInfo.startTime|double|6.021|The point in time when the object appears in the video.|'."\n" + .'|entities.detailInfo.endTime|double|8.021|The point in time when the object disappears in the video.|'."\n" + .'|entities.detailInfo.trackData|JSONArray|\\-|The structured information about the tag of the object.|'."\n" + .'|entities.detailInfo.trackData.score|double|0.32|The score for the confidence level.|'."\n" + .'|entities.detailInfo.trackData.bbox|integer\\[\\]|23, 43, 45, 67|The coordinates of the object.|'."\n" + .'|entities.detailInfo.trackData.timestamp|double|7.9|The timestamp of the coordinates. Unit: seconds.|'."\n" + .'|hotwords|JSONArray|\\-|\\-|'."\n" + .'|hotwords.labelLevel1|String|The information about the hotword.|The level-1 tag.|'."\n" + .'|hotwords.labelLevel1|String|Hotword|The level-2 tag.|'."\n" + .'|hotwords.labelLevel2|String|""|The level-2 tag.|'."\n" + .'|hotwords.label|String|China Meteorological Administration|The content of the hotword.|'."\n" + .'|hotwords.appearanceProbability|double|0.96|The appearance rate of the hotword.|'."\n" + .'|hotwords.detailInfo|JSONArray|||'."\n" + .'|hotwords.detailInfo.score|double|1.0|The score for the confidence level.|'."\n" + .'|hotwords.detailInfo.startTime|double|0.021|The point in time when the hotword appears in the video.|'."\n" + .'|hotwords.detailInfo.endTime|double|29.021|The point in time when the hotword disappears in the video.|'."\n" + .'|freeTags|JSONArray|||'."\n" + .'|freeTags.labelLevel1|String|Keyword|The level-1 tag.|'."\n" + .'|freeTags.labelLevel2|String|""|The level-2 tag.|'."\n" + .'|freeTags.label|String|Central Meteorological Observatory|The content of the keyword.|'."\n" + .'|freeTags.appearanceProbability|double|0.96|The appearance rate of the keyword.|'."\n" + .'|freeTags.detailInfo|JSONArray|||'."\n" + .'|freeTags.detailInfo.score|double|0.9|The score for the confidence level.|'."\n" + .'|freeTags.detailInfo.startTime|double|0.021|The point in time when the keyword appears in the video.|'."\n" + .'|freeTags.detailInfo.endTime|double|29.021|The point in time when the keyword disappears in the video.|'."\n" + ."\n" + .'**Parameters of the ASR result**'."\n" + ."\n" + .'|Parameter|Type|Description|'."\n" + .'|---|---|---|'."\n" + .'|details|JSONArray|The details of the result.|'."\n" + .'|details.from|double|The start timestamp of the recognition. Unit: seconds.|'."\n" + .'|details.to|double|The end timestamp of the recognition. Unit: seconds.|'."\n" + .'|details.content|String|The recognized text.|'."\n" + ."\n" + .'**Parameters of the OCR result**'."\n" + ."\n" + .'|Parameter|Type|Description|'."\n" + .'|---|---|---|'."\n" + .'|details|JSONArray|The details of the result.|'."\n" + .'|details.timestamp|double|The timestamp information. Unit: seconds.|'."\n" + .'|details.info|JSONArray|The details of the recognized text at the specified timestamp.|'."\n" + .'|details.info.score|double|The score for the confidence level.|'."\n" + .'|details.info.position|JSONObject|The coordinates of the text.|'."\n" + .'|details.info.position.leftTop|int\\[\\]|The x and y coordinates of the upper-left corner.|'."\n" + .'|details.info.position.rightBottom|int\\[\\]|The x and y coordinates of the lower-right corner.|'."\n" + .'|details.info.content|String|The recognized text.|'."\n" + ."\n" + .'**Parameter of returned metadata**'."\n" + ."\n" + .'**Note** If you do not use tagging by human and machine and you specify the needMetaData parameter when you call the [SubmitSmarttagJob](~~478786~~) operation, the original title of the video is returned in the result.'."\n" + ."\n" + .'|Parameter|Type|Description|'."\n" + .'|---|---|---|'."\n" + .'|title|String|The title of the video.|'."\n" + ."\n" + .'**Parameters of the extracted caption**'."\n" + ."\n" + .'|Parameter|Type|Description|'."\n" + .'|---|---|---|'."\n" + .'|details|JSONArray|The details of the result.|'."\n" + .'|details.allResultUrl|String|The URL of the file that contains all captions. The URL is valid for half a year after the job is complete.|'."\n" + .'|details.chResultUrl|String|The URL of the file that contains only Chinese captions. The URL is valid for half a year after the job is complete.|'."\n" + .'|details.engResultUrl|String|The URL of the file that contains only English captions. The URL is valid for half a year after the job is complete.|'."\n" + ."\n" + .'**Note** The content of the caption file is in the `Serial number + Time range + Caption content` format. Each line in the file contains a sentence.'."\n" + ."\n" + .'**Parameters of the NLP-based result**'."\n" + ."\n" + .'|Parameter|Type|Description|'."\n" + .'|---|---|---|'."\n" + .'|transcription|object|The speech-to-text result.|'."\n" + .'|autoChapters|object|The chapter overview.|'."\n" + .'|summarization|object|The large model summary.|'."\n" + .'|meetingAssistance|object|The intelligent minutes.|'."\n" + .'|translation|object|The text translation result.|'."\n" + ."\n" + .'**Parameters of transcription**'."\n" + ."\n" + .'|Parameter|Type|Description|'."\n" + .'|---|---|---|'."\n" + .'|transcription|object|The speech-to-text result.|'."\n" + .'|transcription.paragraphs|list\\[\\]|A list of paragraphs that contain the speech-to-text result.|'."\n" + .'|transcription.paragraphs\\[i\\].paragraphId|string|The paragraph ID.|'."\n" + .'|transcription.paragraphs\\[i\\].speakerId|string|The speaker ID.|'."\n" + .'|transcription.paragraphs\\[i\\].words|list\\[\\]|The words contained in the paragraph.|'."\n" + .'|transcription.paragraphs\\[i\\].words\\[i\\].id|int|The word ID. You do not need to pay attention to it.|'."\n" + .'|transcription.paragraphs\\[i\\].words\\[i\\].sentenceId|int|The sentence ID. The words that have the same sentence ID can be assembled into a sentence.|'."\n" + .'|transcription.paragraphs\\[i\\].words\\[i\\].start|long|The start time of the word. The value is a timestamp representing the number of milliseconds that have elapsed since the audio starts.|'."\n" + .'|transcription.paragraphs\\[i\\].words\\[i\\].end|long|The end time of the word. The value is a timestamp representing the number of milliseconds that have elapsed since the audio starts.|'."\n" + .'|transcription.paragraphs\\[i\\].words\\[i\\].text|string|The word.|'."\n" + ."\n" + .'**Parameters of summarization**'."\n" + ."\n" + .'|Parameter|Type|Description|'."\n" + .'|---|---|---|'."\n" + .'|summarization|object|The summary results. The results may be empty or of different summary types.|'."\n" + .'|summarization.paragraphSummary|string|The summary of the full text.|'."\n" + .'|summarization.conversationalSummary|list\\[\\]|A list of summary results for a conversation.|'."\n" + .'|summarization.conversationalSummary\\[i\\].speakerId|string|The speaker ID.|'."\n" + .'|summarization.conversationalSummary\\[i\\].speakerName|string|The name of the speaker.|'."\n" + .'|summarization.conversationalSummary\\[i\\].summary|string|The summary corresponding to the speaker.|'."\n" + .'|summarization.questionsAnsweringSummary|list\\[\\]|A list of summary results for an Q&A.|'."\n" + .'|summarization.questionsAnsweringSummary\\[i\\].question|string|The question.|'."\n" + .'|summarization.questionsAnsweringSummary\\[i\\].sentenceIdsOfQuestion|list\\[\\]|A list of IDs of the sentences that are generated based on the original speech corresponding to the question.|'."\n" + .'|summarization.questionsAnsweringSummary\\[i\\].answer|string|The answer to the question.|'."\n" + .'|summarization.questionsAnsweringSummary\\[i\\].sentenceIdsOfAnswer|list\\[\\]|A list of IDs of the sentences that are generated based on the original speech corresponding to the answer.|'."\n" + .'|summarization.mindMapSummary|list\\[object\\]|The mind map of the summary results. The mind map may contain the summary of each topic and the relationship between topics.|'."\n" + .'|summarization.mindMapSummary\\[i\\].title|string|The title of the topic.|'."\n" + .'|summarization.mindMapSummary\\[i\\].topic|list\\[object\\]|An array that contains each topic and its subtopics.|'."\n" + .'|summarization.mindMapSummary\\[i\\].topic\\[i\\].title|string|The title of the topic.|'."\n" + .'|summarization.mindMapSummary\\[i\\].topic\\[i\\].topic|list\\[object\\]|An array that contains the subtopics of the topic. The array can be empty.|'."\n" + ."\n" + .'**Parameters of translation**'."\n" + ."\n" + .'|Parameter|Type|Description|'."\n" + .'|---|---|---|'."\n" + .'|translation|object|The translation result.|'."\n" + .'|translation.paragraphs|list\\[\\]|A list of paragraphs that contain the translation result, which corresponds to the ASR result.|'."\n" + .'|translation.paragraphs.paragraphId|string|The paragraph ID, which corresponds to the paragraph ID in the ASR result.|'."\n" + .'|translation.paragraphs.sentences|list\\[\\]|A list of translated text sentences.|'."\n" + .'|translation.paragraphs.sentences\\[i\\].sentenctId|long|The sentence ID.|'."\n" + .'|translation.paragraphs.sentences\\[i\\].start|long|The start time of the sentence. The value is a timestamp representing the number of milliseconds that have elapsed since the audio starts.|'."\n" + .'|translation.paragraphs.sentences\\[i\\].end|long|The end time of the sentence. The value is a timestamp representing the number of milliseconds that have elapsed since the audio starts.|'."\n" + .'|translation.paragraphs.sentences\\[i\\].text|string|The translated text, which corresponds to the ASR result.|'."\n" + ."\n" + .'**Parameters of autoChapters**'."\n" + ."\n" + .'|Parameter|Type|Description|'."\n" + .'|---|---|---|'."\n" + .'|autoChapters|list\\[\\]|The chapter overview result that may contain the overview of zero, one, or multiple chapters.|'."\n" + .'|autoChapters\\[i\\].id|int|The serial number of the chapter.|'."\n" + .'|autoChapters\\[i\\].start|long|The start time of the chapter. The value is a timestamp representing the number of milliseconds that have elapsed since the audio starts.|'."\n" + .'|autoChapters\\[i\\].end|long|The end time of the chapter. The value is a timestamp representing the number of milliseconds that have elapsed since the audio starts.|'."\n" + .'|autoChapters\\[i\\].headline|string|The headline of the chapter.|'."\n" + .'|autoChapters\\[i\\].summary|string|The chapter overview.|'."\n" + ."\n" + .'**Parameters of meetingAssistance**'."\n" + ."\n" + .'|Parameter|Type|Description|'."\n" + .'|---|---|---|'."\n" + .'|meetingAssistance|object|The result of the intelligent minutes, which may be empty or of different types.|'."\n" + .'|meetingAssistance.keywords|list\\[\\]|A list of extracted keywords.|'."\n" + .'|meetingAssistance.keySentences|list\\[\\]|A list of extracted key sentences.|'."\n" + .'|meetingAssistance.keySentences\\[i\\].id|long|The serial number of the key sentence.|'."\n" + .'|meetingAssistance.keySentences\\[i\\].sentenceId|long|The ID of the key sentence, which corresponds to the sentence ID in the original ASR result.|'."\n" + .'|meetingAssistance.keySentences\\[i\\].start|long|The start time of the key sentence. The value is a timestamp representing the number of milliseconds that have elapsed since the audio starts.|'."\n" + .'|meetingAssistance.keySentences\\[i\\].end|long|The end time of the key sentence. The value is a timestamp representing the number of milliseconds that have elapsed since the audio starts.|'."\n" + .'|meetingAssistance.keySentences\\[i\\].text|string|The key sentence information.|'."\n" + .'|meetingAssistance.actions|list\\[\\]|A list of to-do items.|'."\n" + .'|meetingAssistance.actions\\[i\\].id|long|The serial number of the to-do item.|'."\n" + .'|meetingAssistance.actions\\[i\\].sentenceId|long|The ID of the key sentence, which corresponds to the sentence ID in the original ASR result.|'."\n" + .'|meetingAssistance.actions\\[i\\].start|long|The start time of the key sentence. The value is a timestamp representing the number of milliseconds that have elapsed since the audio starts.|'."\n" + .'|meetingAssistance.actions\\[i\\].end|long|The end time of the key sentence. The value is a timestamp representing the number of milliseconds that have elapsed since the audio starts.|'."\n" + .'|meetingAssistance.actions\\[i\\].text|string|The content of the to-do item.|'."\n" + .'|meetingAssistance.classifications|object|The scenario type. Only three types of scenarios are supported.|'."\n" + .'|meetingAssistance.classifications.interview|float|The score for the confidence level of the interview scenario.|'."\n" + .'|meetingAssistance.classifications.lecture|float|The score for the confidence level of the presentation scenario.|'."\n" + .'|meetingAssistance.classifications.meeting|float|The score for the confidence level of the meeting scenario.|', + ], + 'SubmitSmarttagJob' => [ + 'summary' => 'Submits a smart tagging job.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'paid', + 'abilityTreeNodes' => [ + 'FEATUREiceVYUZ7L', + ], + ], + 'parameters' => [ + [ + 'name' => 'Title', + 'in' => 'query', + 'schema' => [ + 'description' => 'The video title. The title can contain letters, digits, and hyphens (-) and cannot start with a special character. The title can be up to 256 bytes in length.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => true, + 'example' => 'example-title-**** '."\n", + ], + ], + [ + 'name' => 'Content', + 'in' => 'query', + 'schema' => [ + 'description' => 'The video description. The description can contain letters, digits, and hyphens (-) and cannot start with a special character. The description can be up to 1 KB in length.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => false, + 'example' => 'example content **** '."\n", + ], + ], + [ + 'name' => 'ContentType', + 'in' => 'query', + 'schema' => [ + 'description' => 'This parameter is discontinued.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => false, + 'example' => 'application/zip '."\n", + ], + ], + [ + 'name' => 'ContentAddr', + 'in' => 'query', + 'schema' => [ + 'description' => 'This parameter is discontinued.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => false, + 'example' => 'http://123.com/testVideo.mp4', + ], + ], + [ + 'name' => 'Params', + 'in' => 'query', + 'schema' => [ + 'description' => 'The additional request parameters. The value is a JSON string. Example: {"needAsrData":true, "needOcrData":false}. The following parameters are supported:'."\n" + ."\n" + .'* needAsrData: specifies whether to query the automatic speech recognition (ASR) data. The value is of the BOOLEAN type. Default value: false. Valid values: true and false.'."\n" + .'* needOcrData: specifies whether to query the optical character recognition (OCR) data. The value is of the BOOLEAN type. Default value: false. Valid values: true and false.'."\n" + .'* needMetaData: specifies whether to query the metadata. The value is of the BOOLEAN type. Default value: false. Valid values: true and false.'."\n" + .'* nlpParams: the input parameters of the natural language processing (NLP) operator. The value is a JSON object. This parameter is empty by default, which indicates that the NLP operator is not used. For more information, see the "nlpParams" section of this topic.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{"needAsrData":true, "needOcrData":false}', + ], + ], + [ + 'name' => 'NotifyUrl', + 'in' => 'query', + 'schema' => [ + 'description' => 'The URL for receiving callbacks. Set the value to an HTTP URL or an HTTPS URL.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'https://example.com/endpoint/aliyun/ai?id=76401125000***', + ], + ], + [ + 'name' => 'UserData', + 'in' => 'query', + 'schema' => [ + 'description' => 'The data to be passed through Simple Message Queue (SMQ, formerly MNS) during callbacks. The data can be up to 1 KB in length. For more information about how to specify an SMQ queue for receiving callbacks, see UpdatePipeline.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{“a”:"test"}', + ], + ], + [ + 'name' => 'Input', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'title' => 'input', + 'description' => 'The job input.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The media type. Valid values:'."\n" + ."\n" + .'* OSS'."\n" + .'* Media'."\n" + .'* URL'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'Media', + ], + 'Media' => [ + 'description' => 'If Type is set to OSS, specify an OSS path. Example: OSS://test-bucket/video/202208/test.mp4.'."\n" + ."\n" + .'If Type is set to Media, specify a media asset ID. Example: c5c62d8f0361337cab312dce8e77dc6d.'."\n" + ."\n" + .'If Type is set to URL, specify an HTTP URL. Example: https://zc-test.oss-cn-shanghai.aliyuncs.com/test/unknowFace.mp4.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'c5c62d8f0361337cab312dce8e77dc6d', + ], + ], + 'required' => false, + 'docRequired' => true, + ], + ], + [ + 'name' => 'TemplateId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the template that specifies the analysis algorithms. For more information about template operations, see [Configure templates](~~445702~~).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '39f8e0bc005e4f309379701645f4'."\n", + ], + ], + [ + 'name' => 'ScheduleConfig', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'title' => 'scheduleConfig', + 'description' => 'The scheduling configurations.'."\n", + 'type' => 'object', + 'properties' => [ + 'PipelineId' => [ + 'description' => 'The ID of the ApsaraVideo Media Processing (MPS) queue to which you want to submit the smart tagging job. The MPS queue is bound to an SMQ queue. This parameter specifies the default MPS queue. By default, an MPS queue can process a maximum of two concurrent smart tagging jobs. To increase the limit, submit a ticket.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'acdbfe4323bcfdae', + ], + 'Priority' => [ + 'description' => 'The job priority. This parameter is not implemented. You can leave this parameter empty or enter a random value.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '4', + ], + ], + 'required' => false, + ], + ], + [ + 'name' => 'TemplateConfig', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'JobId' => [ + 'description' => 'The ID of the smart tagging job. We recommend that you save this ID for subsequent calls of other operations.'."\n", + 'type' => 'string', + 'example' => '****d80e4e4044975745c14b****', + ], + ], + 'description' => '', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"JobId\\": \\"****d80e4e4044975745c14b****\\"\\n}","type":"json"}]', + 'title' => 'SubmitSmarttagJob', + 'description' => 'Before you call this operation to submit a smart tagging job, you must add a smart tagging template and specify the analysis types that you want to use in the template. For more information, see CreateCustomTemplate. You can use the smart tagging feature only in the China (Beijing), China (Shanghai), and China (Hangzhou) regions. By default, an ApsaraVideo Media Processing (MPS) queue can process a maximum of two concurrent smart tagging jobs. If you need to process more concurrent smart tagging jobs, submit a ticket to contact Alibaba Cloud Technical Support for evaluation and configuration.'."\n", + 'requestParamsDescription' => '### nlpParams'."\n" + ."\n" + .'|Feature|Parameter|Type|Required|Description|Example|'."\n" + .'|---|---|---|---|---|---|'."\n" + .'||nlpParams|object|Yes|The parameters related to NLP. This parameter is required if NLP is specified in the template. Otherwise, the job fails.|{"sourceLanguage":"cn"}|'."\n" + .'|Transcription|sourceLanguage|string|Yes|The source language used for transcription. Valid values: cn (Chinese), en (English), yue (Cantonese), and fspk (Chinese and English).|"cn"|'."\n" + .'||diarizationEnabled|boolean|No|Specifies whether to enable the speaker diarization feature. Default value: false.|true|'."\n" + .'||speakerCount|integer|No|The speaker diarization parameter. If this parameter is not specified, the speakers are not recognized. 0: The number of speakers to be recognized is not limited. 2: The number of speakers to be recognized is limited to 2.|2|'."\n" + .'|Summarization|summarizationEnabled|boolean|No|Specifies whether to enable the summarization feature. After this feature is enabled, results such as the full-text summary and speaker summary can be generated.|true|'."\n" + .'||summarizationTypes|string|No|The expected summary type. Valid values: Paragraph (full-text summary), Conversational (speaker summary), QuestionsAnswering (Q&A summary), and MindMap (mind map).|"Paragraph,Conversational,QuestionsAnswering,MindMap"|'."\n" + .'|Translation|translationEnabled|boolean|No|Specifies whether to enable the translation feature.|true|'."\n" + .'||targetLanguages|string|No|The target language of translation. Valid values: cn (Chinese), en (English), yue (Cantonese), and fspk (Chinese and English).|"en,cn"|'."\n" + .'|Chapter identification|autoChaptersEnabled|boolean|No|Specifies whether to enable the chapter identification feature. The result includes the chapter title and chapter summary.|true|'."\n" + .'|AI minutes|meetingAssistanceEnabled|boolean|No|Specifies whether to enable the AI minutes feature. The results include categories, keywords, key sentences, and to-do items.|true|', + ], + 'CreateRecognitionEntity' => [ + 'summary' => 'Creates an entity to be recognized in a custom recognition library. The entity can be a landmark, object, logo, or person.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceVYUZ7L', + ], + ], + 'parameters' => [ + [ + 'name' => 'Algorithm', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of recognition algorithm. Valid values:'."\n" + ."\n" + .'* landmark'."\n" + .'* object'."\n" + .'* logo'."\n" + .'* face'."\n" + .'* label'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'landmark', + ], + ], + [ + 'name' => 'LibId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the recognition library.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => '*************24b47865c6**************', + ], + ], + [ + 'name' => 'EntityName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the custom entity. Max length: 64 bytes.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => '', + ], + ], + [ + 'name' => 'EntityInfo', + 'in' => 'query', + 'schema' => [ + 'description' => 'The extra information about the custom entity, provided as a JSON string. Max length: 256 bytes.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => false, + 'example' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'EntityId' => [ + 'description' => 'The ID of the created entity.'."\n", + 'type' => 'string', + 'example' => '**************544cb84754************', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => 'errorMsg:%s', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'errorMsg:%s', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"EntityId\\": \\"**************544cb84754************\\",\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\"\\n}","type":"json"}]', + 'title' => 'CreateRecognitionEntity', + 'description' => '* This operation is supported only in the China (Beijing), China (Shanghai), China (Hangzhou), and China (Shenzhen) regions.'."\n" + .'* You can call this operation up to 50 times per second per account. Requests that exceed this limit are dropped and you may experience service interruptions. For more information, see [QPS limits](https://help.aliyun.com/zh/mps/developer-reference/qps-limits?spm=a2c4g.11186623.0.0.647e1081YGcerb).'."\n", + ], + 'CreateRecognitionLib' => [ + 'summary' => 'Creates a custom library to store the entity information for recognition.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceVYUZ7L', + ], + ], + 'parameters' => [ + [ + 'name' => 'Algorithm', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of recognition algorithm. Valid values:'."\n" + ."\n" + .'* landmark'."\n" + .'* object'."\n" + .'* logo'."\n" + .'* face'."\n" + .'* label'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'landmark', + ], + ], + [ + 'name' => 'LibName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the recognition library. Max length: 64 bytes.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => '', + ], + ], + [ + 'name' => 'LibDescription', + 'in' => 'query', + 'schema' => [ + 'description' => 'The description of the recognition library. Max length: 128 bytes.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => false, + 'example' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'LibId' => [ + 'description' => 'The ID of the recognition library created.'."\n", + 'type' => 'string', + 'example' => '*************24b47865c6**************', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => 'errorMsg:%s', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'errorMsg:%s', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"LibId\\": \\"*************24b47865c6**************\\",\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\"\\n}","type":"json"}]', + 'title' => 'CreateRecognitionLib', + 'description' => '* This operation is supported only in the China (Beijing), China (Shanghai), China (Hangzhou), and China (Shenzhen) regions.'."\n" + .'* Workflow for using a custom recognition library: Create a library, create a custom object entity within the library, register sample images for the entity, create an analysis template that uses your custom library, and then submit an analysis task using the template.'."\n" + .'* You can call this operation up to 50 times per second per account. Requests that exceed this limit are dropped and you may experience service interruptions. For more information, see [QPS limits](https://help.aliyun.com/zh/mps/developer-reference/qps-limits?spm=a2c4g.11186623.0.0.647e1081YGcerb).'."\n", + ], + 'CreateRecognitionSample' => [ + 'summary' => 'Adds a sample image or a text label to a specific entity within a recognition library.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceVYUZ7L', + ], + ], + 'parameters' => [ + [ + 'name' => 'Algorithm', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of recognition this sample is for.'."\n" + ."\n" + .'* landmark'."\n" + .'* object'."\n" + .'* logo'."\n" + .'* face'."\n" + .'* label'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'landmark', + ], + ], + [ + 'name' => 'LibId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the recognition library.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => '*************24b47865c6**************', + ], + ], + [ + 'name' => 'EntityId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the specific entity within the library.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => '**************544cb84754************', + ], + ], + [ + 'name' => 'ImageUrl', + 'in' => 'query', + 'schema' => [ + 'description' => 'The URL of the sample image.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => false, + 'example' => 'https://example.com/sample.png', + ], + ], + [ + 'name' => 'LabelPrompt', + 'in' => 'query', + 'schema' => [ + 'description' => 'The custom text label.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'SampleId' => [ + 'description' => 'The ID of the sample.'."\n", + 'type' => 'string', + 'example' => '**************4d2ba728e2f**************', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => 'errorMsg:%s', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'errorMsg:%s', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"SampleId\\": \\"**************4d2ba728e2f**************\\",\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\"\\n}","type":"json"}]', + 'title' => 'CreateRecognitionSample', + 'description' => '* This operation is supported only in the China (Beijing), China (Shanghai), China (Hangzhou), and China (Shenzhen) regions.'."\n" + .'* You can call this operation up to 50 times per second per account. Requests that exceed this limit are dropped and you may experience service interruptions. For more information, see [QPS limits](https://help.aliyun.com/zh/mps/developer-reference/qps-limits?spm=a2c4g.11186623.0.0.647e1081YGcerb).'."\n", + ], + 'ListRecognitionSamples' => [ + 'summary' => 'Retrieves all samples of a custom entity. Pagination is supported.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceVYUZ7L', + ], + ], + 'parameters' => [ + [ + 'name' => 'Algorithm', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of recognition algorithm. Valid values:'."\n" + ."\n" + .'* landmark'."\n" + .'* object'."\n" + .'* logo'."\n" + .'* face'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'landmark', + ], + ], + [ + 'name' => 'LibId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the recognition library.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'xxxxxxxxxxx', + ], + ], + [ + 'name' => 'EntityId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the entity.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'e6b985c05174412dbc77c92496b7373b', + ], + ], + [ + 'name' => 'PageNumber', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'docRequired' => true, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'docRequired' => true, + 'example' => '10', + ], + ], + [ + 'name' => 'EntityName', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => 'xxx-xxxx-xxxxx-xxxx', + ], + 'PageNumber' => [ + 'description' => 'The page number.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'PageSize' => [ + 'description' => 'The number of entries per page.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '20', + ], + 'TotalCount' => [ + 'description' => 'The total number of samples.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '5', + ], + 'Samples' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'Sample' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'SampleId' => [ + 'type' => 'string', + ], + 'ImageUrl' => [ + 'type' => 'string', + ], + 'EntityId' => [ + 'type' => 'string', + ], + 'LibId' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'errorMsg:%s', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 20,\\n \\"TotalCount\\": 5,\\n \\"Samples\\": {\\n \\"Sample\\": [\\n {\\n \\"SampleId\\": \\"**************4d2ba728e2f**************\\",\\n \\"ImageUrl\\": \\"https://example.com/sample.png\\",\\n \\"EntityId\\": \\"*******49ff-9b15******\\",\\n \\"LibId\\": \\"**********23da4529998************\\"\\n }\\n ]\\n }\\n}","type":"json"}]', + 'title' => 'ListRecognitionSamples', + ], + 'DeleteRecognitionSample' => [ + 'summary' => 'Deletes a sample for a custom entity.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceVYUZ7L', + ], + ], + 'parameters' => [ + [ + 'name' => 'Algorithm', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of recognition algorithm. Valid values:'."\n" + ."\n" + .'* landmark'."\n" + .'* object'."\n" + .'* logo'."\n" + .'* face'."\n" + .'* label'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'landmark', + ], + ], + [ + 'name' => 'LibId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the recognition library.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => '*************24b47865c6**************', + ], + ], + [ + 'name' => 'EntityId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the entity.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => '**************544cb84754************', + ], + ], + [ + 'name' => 'SampleId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the sample that you want to delete.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => '**************4d2ba728e2f**************', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => 'errorMsg:%s', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'errorMsg:%s', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\"\\n}","type":"json"}]', + 'title' => 'DeleteRecognitionSample', + 'description' => '* This operation is supported only in the China (Beijing), China (Shanghai), China (Hangzhou), and China (Shenzhen) regions.'."\n" + .'* You can call this operation up to 50 times per second per account. Requests that exceed this limit are dropped and you may experience service interruptions. For more information, see [QPS limits](https://help.aliyun.com/zh/mps/developer-reference/qps-limits?spm=a2c4g.11186623.0.0.647e1081YGcerb).'."\n", + ], + 'ListRecognitionEntities' => [ + 'summary' => 'Retrieves all entities in a specified recognition library. Pagination is supported.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceVYUZ7L', + ], + ], + 'parameters' => [ + [ + 'name' => 'Algorithm', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of recognition algorithm associated with the entity. Valid values:'."\n" + ."\n" + .'* landmark'."\n" + .'* object'."\n" + .'* logo'."\n" + .'* face'."\n" + .'* label'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'landmark', + ], + ], + [ + 'name' => 'LibId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the recognition library.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => '1965304870001', + ], + ], + [ + 'name' => 'PageNumber', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'docRequired' => true, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page. Valid values: 1 to 50.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'docRequired' => true, + 'example' => '10', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '**Request ID**'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'PageNumber' => [ + 'description' => 'The page number.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'PageSize' => [ + 'description' => 'The number of entries per page.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + ], + 'TotalCount' => [ + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '100', + ], + 'Entities' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'Entity' => [ + 'description' => 'The entities.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The entity.'."\n", + 'type' => 'object', + 'properties' => [ + 'EntityId' => [ + 'description' => 'The ID of the entity.'."\n", + 'type' => 'string', + 'example' => '**************544cb84754************', + ], + 'EntityName' => [ + 'description' => 'The name of the entity.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'EntityInfo' => [ + 'description' => 'The additional information of the entity, in JSON format.'."\n", + 'type' => 'string', + 'example' => '{}', + ], + ], + ], + ], + ], + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'errorMsg:%s', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 100,\\n \\"Entities\\": {\\n \\"Entity\\": [\\n {\\n \\"EntityId\\": \\"**************544cb84754************\\",\\n \\"EntityName\\": \\"巴黎铁塔\\",\\n \\"EntityInfo\\": \\"{}\\"\\n }\\n ]\\n }\\n}","type":"json"}]', + 'title' => 'ListRecognitionEntities', + 'description' => '* This operation is supported only in the China (Beijing), China (Shanghai), China (Hangzhou), and China (Shenzhen) regions.'."\n" + .'* You can call this operation up to 50 times per second per account. Requests that exceed this limit are dropped and you may experience service interruptions. For more information, see [QPS limits](https://help.aliyun.com/zh/mps/developer-reference/qps-limits?spm=a2c4g.11186623.0.0.647e1081YGcerb).'."\n", + ], + 'ListRecognitionLibs' => [ + 'summary' => 'Retrieves all custom recognition libraries. Pagination is supported.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceVYUZ7L', + ], + ], + 'parameters' => [ + [ + 'name' => 'Algorithm', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of recognition algorithm. Valid values:'."\n" + ."\n" + .'* landmark'."\n" + .'* object'."\n" + .'* logo'."\n" + .'* face'."\n" + .'* label'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'landmark', + ], + ], + [ + 'name' => 'PageNumber', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'docRequired' => true, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page. Valid values: 1 to 50.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'docRequired' => true, + 'example' => '10', + ], + ], + [ + 'name' => 'LibId', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'PageNumber' => [ + 'description' => 'The page number.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'PageSize' => [ + 'description' => 'The number of entries per page.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + ], + 'TotalCount' => [ + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '180', + ], + 'Libs' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'Lib' => [ + 'description' => 'The recognition libraries.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'LibId' => [ + 'description' => 'The ID of the recognition library.'."\n", + 'type' => 'string', + 'example' => '*************24b47865c6**************', + ], + 'LibName' => [ + 'description' => 'The name of the recognition library.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'LibDescription' => [ + 'description' => 'The description of the recognition library.'."\n", + 'type' => 'string', + 'example' => '', + ], + ], + 'description' => '', + ], + ], + ], + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'errorMsg:%s', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 180,\\n \\"Libs\\": {\\n \\"Lib\\": [\\n {\\n \\"LibId\\": \\"*************24b47865c6**************\\",\\n \\"LibName\\": \\"大模型acp\\",\\n \\"LibDescription\\": \\"用于商品识别的库\\"\\n }\\n ]\\n }\\n}","type":"json"}]', + 'title' => 'ListRecognitionLibs', + 'description' => '* This operation is supported only in the China (Beijing), China (Shanghai), China (Hangzhou), and China (Shenzhen) regions.'."\n" + .'* You can call this operation up to 50 times per second per account. Requests that exceed this limit are dropped and you may experience service interruptions. For more information, see [QPS limits](https://help.aliyun.com/zh/mps/developer-reference/qps-limits?spm=a2c4g.11186623.0.0.647e1081YGcerb).'."\n", + ], + 'DeleteRecognitionLib' => [ + 'summary' => 'Deletes a custom recognition library, including all entities and samples within it.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceVYUZ7L', + ], + ], + 'parameters' => [ + [ + 'name' => 'Algorithm', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of recognition algorithm. Valid values:'."\n" + ."\n" + .'* landmark'."\n" + .'* object'."\n" + .'* logo'."\n" + .'* face'."\n" + .'* label'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'landmark', + ], + ], + [ + 'name' => 'LibId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the recognition library.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => '*************24b47865c6**************', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => 'errorMsg:%s', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'errorMsg:%s', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\"\\n}","type":"json"}]', + 'title' => 'DeleteRecognitionLib', + 'description' => '* This operation is supported only in the China (Beijing), China (Shanghai), China (Hangzhou), and China (Shenzhen) regions.'."\n" + .'* You can call this operation up to 50 times per second per account. Requests that exceed this limit are dropped and you may experience service interruptions. For more information, see [QPS limits](https://help.aliyun.com/zh/mps/developer-reference/qps-limits?spm=a2c4g.11186623.0.0.647e1081YGcerb).'."\n", + ], + 'DeleteRecognitionEntity' => [ + 'summary' => 'Deletes an entity from the specified custom recognition library.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceVYUZ7L', + ], + ], + 'parameters' => [ + [ + 'name' => 'Algorithm', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of recognition algorithm associated with the entity. Valid values:'."\n" + ."\n" + .'* landmark'."\n" + .'* object'."\n" + .'* logo'."\n" + .'* face'."\n" + .'* label'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'landmark', + ], + ], + [ + 'name' => 'LibId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the recognition library.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => '*************24b47865c6**************', + ], + ], + [ + 'name' => 'EntityId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the entity to be deleted.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => '**************544cb84754************', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => 'errorMsg:%s', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'errorMsg:%s', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\"\\n}","type":"json"}]', + 'title' => 'DeleteRecognitionEntity', + 'description' => '* This operation is supported only in the China (Beijing), China (Shanghai), China (Hangzhou), and China (Shenzhen) regions.'."\n" + .'* You can call this operation up to 50 times per second per account. Requests that exceed this limit are dropped and you may experience service interruptions. For more information, see [QPS limits](https://help.aliyun.com/zh/mps/developer-reference/qps-limits?spm=a2c4g.11186623.0.0.647e1081YGcerb).'."\n", + ], + 'SubmitIProductionJob' => [ + 'summary' => 'Submits an intelligent production job.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'paid', + 'abilityTreeNodes' => [ + 'FEATUREiceVYUZ7L', + ], + ], + 'parameters' => [ + [ + 'name' => 'Name', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the intelligent production job. The name can be up to 100 characters in length.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '', + ], + ], + [ + 'name' => 'FunctionName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the algorithm that you want to use for the job. Valid values:'."\n" + ."\n" + .'* **Cover**: This algorithm intelligently generates a thumbnail image for a video.'."\n" + .'* **VideoClip**: This algorithm intelligently generates a summary for a video.'."\n" + .'* **VideoDelogo**: This algorithm removes logos from a video.'."\n" + .'* **VideoDetext**: This algorithm removes captions from a video.'."\n" + .'* **CaptionExtraction**: This algorithm extracts captions from a video and generates the caption file.'."\n" + .'* **VideoGreenScreenMatting**: This algorithm performs green-screen image matting on a video and generates a new video.'."\n" + .'* **FaceBeauty**: This algorithm performs video retouching.'."\n" + .'* **VideoH2V**: This algorithm transforms a video from the landscape mode to the portrait mode.'."\n" + .'* **MusicSegmentDetect**: This algorithm detects the chorus of a song.'."\n" + .'* **AudioBeatDetection**: This algorithm detects rhythms.'."\n" + .'* **AudioQualityAssessment**: This algorithm assesses the audio quality.'."\n" + .'* **SpeechDenoise**: This algorithm performs noise reduction.'."\n" + .'* **AudioMixing**: This algorithm mixes audio streams.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'Cover', + ], + ], + [ + 'name' => 'Input', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The input file. The file can be an Object Storage Service (OSS) object or a media asset.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The media type. Valid values:'."\n" + ."\n" + .'* OSS: OSS object'."\n" + .'* Media: media asset'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'OSS', + ], + 'Media' => [ + 'description' => 'The input file. The file can be an OSS object or a media asset. You can specify the path of an OSS object in one of the following formats:'."\n" + ."\n" + .'1. oss://bucket/object'."\n" + .'2. http(s)://bucket.oss-\\[regionId].aliyuncs.com/object bucket in the path specifies an OSS bucket that resides in the same region as the intelligent production job. object in the path specifies the object path in OSS.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'oss://bucket/object', + ], + ], + 'required' => true, + ], + ], + [ + 'name' => 'Output', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The output file. The file can be an OSS object or a media asset.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The media type. Valid values:'."\n" + ."\n" + .'* OSS: OSS object'."\n" + .'* Media: media asset'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'OSS', + ], + 'Biz' => [ + 'type' => 'string', + 'required' => false, + 'enum' => [ + 'IMS', + 'VOD', + ], + ], + 'Media' => [ + 'description' => 'The output file. If Type is set to OSS, set this parameter to the path of an OSS object. If Type is set to Media, set this parameter to the ID of a media asset. You can specify the path of an OSS object in one of the following formats:'."\n" + ."\n" + .'1. oss://bucket/object'."\n" + .'2. http(s)://bucket.oss-\\[RegionId].aliyuncs.com/object bucket in the path specifies an OSS bucket that resides in the same region as the intelligent production job. object in the path specifies the object path in OSS.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'oss://bucket/object', + ], + 'OutputUrl' => [ + 'type' => 'string', + 'required' => false, + ], + ], + 'required' => true, + ], + ], + [ + 'name' => 'TemplateId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + ], + [ + 'name' => 'JobParams', + 'in' => 'query', + 'schema' => [ + 'description' => 'The algorithm-specific parameters. The parameters are specified as JSON objects and vary based on the algorithm. For more information, see the "Parameters of JobParams" section of this topic.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{"Model":"gif"}', + ], + ], + [ + 'name' => 'ScheduleConfig', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The scheduling configuration.'."\n", + 'type' => 'object', + 'properties' => [ + 'PipelineId' => [ + 'description' => 'The ID of the ApsaraVideo Media Processing (MPS) queue.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '5246b8d12a62433ab77845074039c3dc', + ], + 'Priority' => [ + 'description' => 'The priority of the job. Valid values: 1 to 10. A smaller value indicates a higher priority.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '6', + ], + ], + 'required' => false, + ], + ], + [ + 'name' => 'UserData', + 'in' => 'query', + 'schema' => [ + 'description' => 'The user-defined data that is returned in the response. The value can be up to 1,024 bytes in length.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{"test":1}', + ], + ], + [ + 'name' => 'ModelId', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'C1849434-FC47-5DC1-92B6-F7EAAFE3851E', + ], + 'JobId' => [ + 'description' => 'The ID of the intelligent production job.'."\n", + 'type' => 'string', + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"C1849434-FC47-5DC1-92B6-F7EAAFE3851E\\",\\n \\"JobId\\": \\"****20b48fb04483915d4f2cd8ac****\\"\\n}","type":"json"}]', + 'title' => 'SubmitIProductionJob', + 'requestParamsDescription' => '### [](#jobparams--json-)Parameters of JobParams'."\n" + ."\n" + .'#### [](#cover)Cover'."\n" + ."\n" + .'* Model: specifies the intelligent thumbnail model. The value is of the STRING type. If you leave this parameter empty, a still thumbnail is generated. If you set this parameter to gif, an animated thumbnail is generated.'."\n" + ."\n" + .'#### [](#videodelogo)VideoDelogo'."\n" + ."\n" + .'* LogoModel: specifies the type of a logo that you want to remove. The value is of the STRING type. Valid values: tv and internet. You can select multiple logo types and separate them with commas (,).'."\n" + .'* Boxes: specifies the position of a logo that you want to remove. The value is of the STRING type and is the normalized coordinate of the upper-left corner. You can set the value in the format of \\[xmin, ymin, width, height]. You can remove up to two logos at a time. Example: \\[\\[0, 0, 0.3, 0.3], \\[0.7, 0, 0.3, 0.3]].'."\n" + ."\n" + .'#### [](#videodetext)VideoDetext'."\n" + ."\n" + .'* LimitRegion: specifies the area within which you want to detect captions. The value is of the LIST type and is the normalized coordinate of the upper-left corner. You can set the value in the format of \\[xmin, ymin, width, height]. You can specify multiple coordinates at a time. Example: \\[\\[0, 0, 0.3, 0.3], \\[0.7, 0, 0.3, 0.3]]. **Note: If you do not specify this parameter, the system detects the captions within the bottom 30% of the video image by default.**'."\n" + .'* Time: specifies the time range within which captions are removed. The value is of the LIST type. You can set the value in the format of \\[start_time, end_time]. For example, a value of \\[5, 20] indicates that only the captions between the 5th and 20th seconds of the video are removed.'."\n" + ."\n" + .'#### [](#captionextraction)CaptionExtraction'."\n" + ."\n" + .'* fps: specifies the sampling frame rate. This parameter is optional. The value is an integer. Valid values: \\[2,10]. Default value: 5.'."\n" + .'* roi: specifies the area of interest. If you specify this parameter, only the captions within the specified area are extracted. You can set the normalized value in the following format: \\[\\[top, bottom], \\[left, right]]. Example: \\[\\[0.5, 1], \\[0, 1]]. By default, if you do not specify this parameter, the captions within the bottom quarter of the video image are extracted.'."\n" + .'* lang: specifies the language to be detected. Valid values: ch, en, and ch_ml. Default value: ch.'."\n" + .'* track: specifies the captions that you want to extract. If you set this parameter to main, only the captions of the main track are extracted. If you do not specify this parameter, all captions in the specified area are extracted by default.'."\n" + ."\n" + .'#### [](#videogreenscreenmatting)VideoGreenScreenMatting'."\n" + ."\n" + .'* bgimage: specifies the background image for replacement. Example: http://example-image-\\*\\*\\*\\*.example-location.aliyuncs.com/example/example.jpg. If you do not specify this parameter, a WebM video with alpha channels is returned.'."\n" + ."\n" + .'#### [](#facebeauty)FaceBeauty'."\n" + ."\n" + .'* beauty_params: the parameters of the FaceBeauty operation. Example: "whiten=20,smooth=50,face_thin=50". For more information, see the "FaceBeauty" section of the [Parameters for intelligent production API operations](~~352026~~) topic.'."\n" + ."\n" + .'#### [](#videoh2v)VideoH2V'."\n" + ."\n" + .'None'."\n" + ."\n" + .'#### [](#musicsegmentdetect)MusicSegmentDetect'."\n" + ."\n" + .'None'."\n" + ."\n" + .'#### [](#audiobeatdetection)AudioBeatDetection'."\n" + ."\n" + .'None'."\n" + ."\n" + .'#### [](#audioqualityassessment)AudioQualityAssessment'."\n" + ."\n" + .'None'."\n" + ."\n" + .'#### [](#speechdenoise)SpeechDenoise'."\n" + ."\n" + .'The input audio file must be in the WAV format with a sampling rate of 16,000 Hz or 48,000 Hz.'."\n" + ."\n" + .'#### [](#audiomixing)AudioMixing'."\n" + ."\n" + .'* inputs: specifies the list of URLs of the audio track files to be mixed. You can specify only one URL. Example: {"file":"http://example-bucket-\\*\\*\\*\\*.oss-cn-shanghai.aliyuncs.com/2.mp4"}.', + ], + 'QueryIProductionJob' => [ + 'summary' => 'Queries the status and result of an intelligent production job.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceVYUZ7L', + ], + ], + 'parameters' => [ + [ + 'name' => 'ClientToken', + 'in' => 'query', + 'allowEmptyValue' => false, + 'schema' => [ + 'title' => '幂等参数', + 'description' => 'The client token that is used to ensure the idempotence of the request.'."\n", + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'JobId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the intelligent production job.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The schema of the response.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + ], + 'JobId' => [ + 'description' => 'The ID of the intelligent production job.'."\n", + 'type' => 'string', + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + 'Name' => [ + 'description' => 'The name of the intelligent production job.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'FunctionName' => [ + 'description' => 'The name of the algorithm that you want to use for the job. Valid values:'."\n" + ."\n" + .'* **Cover**: This algorithm intelligently generates a thumbnail image for a video.'."\n" + .'* **VideoClip**: This algorithm intelligently generates a summary for a video.'."\n" + .'* **VideoDelogo**: This algorithm removes logos from a video.'."\n" + .'* **VideoDetext**: This algorithm removes captions from a video.'."\n", + 'type' => 'string', + 'example' => 'Cover', + ], + 'Input' => [ + 'description' => 'The input file.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The media type. Valid values:'."\n" + ."\n" + .'1. OSS: Object Storage Service (OSS) object'."\n" + .'2. Media: media asset'."\n", + 'type' => 'string', + 'enumValueTitles' => [], + 'example' => 'OSS', + ], + 'Media' => [ + 'description' => 'The input file. If Type is set to OSS, set this parameter to the path of an OSS object. If Type is set to Media, set this parameter to the ID of a media asset. You can specify the path of an OSS object in one of the following formats:'."\n" + ."\n" + .'1. oss://bucket/object'."\n" + .'2. http(s)://bucket.oss-\\[RegionId].aliyuncs.com/object bucket in the path specifies an OSS bucket that resides in the same region as the intelligent production job. object in the path specifies the object path in OSS.'."\n", + 'type' => 'string', + 'example' => 'oss://bucket/object', + ], + ], + ], + 'Output' => [ + 'description' => 'The output file.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The media type. Valid values:'."\n" + ."\n" + .'* OSS: OSS object'."\n" + .'* Media: media asset'."\n", + 'type' => 'string', + 'example' => 'OSS', + ], + 'Biz' => [ + 'type' => 'string', + ], + 'Media' => [ + 'description' => 'The output file. If Type is set to OSS, set this parameter to the path of an OSS object. If Type is set to Media, set this parameter to the ID of a media asset. You can specify the path of an OSS object in one of the following formats:'."\n" + ."\n" + .'1. oss://bucket/object'."\n" + .'2. http(s)://bucket.oss-\\[RegionId].aliyuncs.com/object bucket in the path specifies an OSS bucket that resides in the same region as the intelligent production job. object in the path specifies the object path in OSS.'."\n", + 'type' => 'string', + 'example' => 'oss://bucket/object', + ], + 'OutputUrl' => [ + 'type' => 'string', + ], + ], + ], + 'TemplateId' => [ + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'example' => '****96e8864746a0b6f3****', + ], + 'JobParams' => [ + 'description' => 'The algorithm-specific parameters. The parameters are specified as JSON objects and vary based on the algorithm.'."\n", + 'type' => 'string', + 'example' => '{"Model":"gif"}', + ], + 'ScheduleConfig' => [ + 'description' => 'The scheduling configuration.'."\n", + 'type' => 'object', + 'properties' => [ + 'PipelineId' => [ + 'description' => 'The ID of the ApsaraVideo Media Processing (MPS) queue.'."\n", + 'type' => 'string', + 'example' => 'a54fdc9c9aab413caef0d1150f565e86', + ], + 'Priority' => [ + 'description' => 'The priority of the job in the MPS queue to which the job is added.'."\n" + ."\n" + .'* A value of 10 indicates the highest priority.'."\n" + .'* Default value: **6**.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '6', + ], + ], + ], + 'UserData' => [ + 'description' => 'The user-defined data that is returned in the response.'."\n", + 'type' => 'string', + 'example' => '{"test":1}', + ], + 'Result' => [ + 'description' => 'The output of the algorithm. The output is in JSON format and varies based on the algorithm. For more information, see the "Parameters of Result" section of this topic.'."\n", + 'type' => 'string', + 'example' => '{}', + ], + 'CreateTime' => [ + 'description' => 'The time when the job was created.'."\n", + 'type' => 'string', + 'example' => '2022-07-07T07:16:11Z', + ], + 'FinishTime' => [ + 'description' => 'The time when the job was complete.'."\n", + 'type' => 'string', + 'example' => '2021-11-26T14:50:25Z', + ], + 'Status' => [ + 'description' => 'The status of the job. Valid values:'."\n" + ."\n" + .'* Queuing: The job is waiting in the queue.'."\n" + .'* Analysing: The job is in progress.'."\n" + .'* Fail: The job failed.'."\n" + .'* Success: The job was successful.'."\n", + 'type' => 'string', + 'example' => 'Success', + ], + 'OutputFiles' => [ + 'description' => 'The output files.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The path and name of the output file.'."\n", + 'type' => 'string', + 'example' => 'output/xxx.mp4', + ], + ], + 'OutputMediaIds' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'string', + ], + ], + 'OutputUrls' => [ + 'description' => 'The URLs of the output files.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The URL of the output file.'."\n", + 'type' => 'string', + 'example' => 'http://xxx', + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'IdempotentParameterMismatch', + 'errorMessage' => 'The request uses the same client token as a previous, but non-identical request. Do not reuse a client token with different requests, unless the requests are identical.', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"\\",\\n \\"JobId\\": \\"****20b48fb04483915d4f2cd8ac****\\",\\n \\"Name\\": \\"测试任务\\",\\n \\"FunctionName\\": \\"Cover\\",\\n \\"Input\\": {\\n \\"Type\\": \\"OSS\\",\\n \\"Media\\": \\"oss://bucket/object\\"\\n },\\n \\"Output\\": {\\n \\"Type\\": \\"OSS\\",\\n \\"Biz\\": \\"IMS\\",\\n \\"Media\\": \\"oss://bucket/object\\",\\n \\"OutputUrl\\": \\"http(s)://bucket.oss-[RegionId].aliyuncs.com/object \\"\\n },\\n \\"TemplateId\\": \\"****96e8864746a0b6f3****\\",\\n \\"JobParams\\": \\"{\\\\\\"Model\\\\\\":\\\\\\"gif\\\\\\"}\\",\\n \\"ScheduleConfig\\": {\\n \\"PipelineId\\": \\"a54fdc9c9aab413caef0d1150f565e86\\",\\n \\"Priority\\": 6\\n },\\n \\"UserData\\": \\"{\\\\\\"test\\\\\\":1}\\",\\n \\"Result\\": \\"{}\\",\\n \\"CreateTime\\": \\"2022-07-07T07:16:11Z\\",\\n \\"FinishTime\\": \\"2021-11-26T14:50:25Z\\",\\n \\"Status\\": \\"Success\\",\\n \\"OutputFiles\\": [\\n \\"output/xxx.mp4\\"\\n ],\\n \\"OutputMediaIds\\": [\\n \\"\\"\\n ],\\n \\"OutputUrls\\": [\\n \\"http://xxx\\"\\n ]\\n}","type":"json"}]', + 'title' => 'QueryIProductionJob', + 'responseParamsDescription' => '### [](#result-)Parameters of Result'."\n" + ."\n" + .'#### [](#cover)Cover'."\n" + ."\n" + .'Example: \\[{"Score":8.270855992569906,"Time":"28278.25","Url":"cover/test-00001.jpg"},{"Score":7.474117489692728,"Time":"25942.583333333332","Url":"cover/test-00002.jpg"}]'."\n" + ."\n" + .'The Score parameter indicates the confidence score of the thumbnail image. The Time parameter indicates the timestamp of the thumbnail frame. The Url parameter indicates the path of the thumbnail image.'."\n" + ."\n" + .'#### [](#videoclip)VideoClip'."\n" + ."\n" + .'Example: {"VideoSummaryList":\\[{"EndTime":"5.28","StartTime":"0.28"}]}'."\n" + ."\n" + .'The VideoSummaryList parameter indicates a list of the time ranges that are captured from the original video. Unit: seconds.'."\n" + ."\n" + .'#### [](#videodelogo)VideoDelogo'."\n" + ."\n" + .'Example: {}'."\n" + ."\n" + .'This algorithm does not return additional information.'."\n" + ."\n" + .'#### [](#videodetext)VideoDetext'."\n" + ."\n" + .'Example: {}'."\n" + ."\n" + .'This algorithm does not return additional information.'."\n" + ."\n" + .'#### [](#captionextraction)CaptionExtraction'."\n" + ."\n" + .'Example: {}'."\n" + ."\n" + .'This algorithm does not return additional information.'."\n" + ."\n" + .'#### [](#videogreenscreenmatting)VideoGreenScreenMatting'."\n" + ."\n" + .'Example: {}'."\n" + ."\n" + .'This algorithm does not return additional information.'."\n" + ."\n" + .'#### [](#facebeauty)FaceBeauty'."\n" + ."\n" + .'Example: {}'."\n" + ."\n" + .'This algorithm does not return additional information.'."\n" + ."\n" + .'#### [](#videoh2v)VideoH2V'."\n" + ."\n" + .'Example: {}'."\n" + ."\n" + .'This algorithm does not return additional information.'."\n" + ."\n" + .'#### [](#musicsegmentdetect)MusicSegmentDetect'."\n" + ."\n" + .'Example: \\[{"start":39.32,"end":63.85,"title":"chorus"},{"start":86.69,"end":114.45,"title":"chorus"},{"start":135.75,"end":160.27,"title":"chorus"}]'."\n" + ."\n" + .'#### [](#audiobeatdetection)AudioBeatDetection'."\n" + ."\n" + .'Example: {}'."\n" + ."\n" + .'This algorithm does not return additional information.'."\n" + ."\n" + .'#### [](#audioqualityassessment)AudioQualityAssessment'."\n" + ."\n" + .'Example: \\[{ "Discontinuity":"Good", "Loudness":"Excellent", "Worst MOS(0-5)":"0.38", "Discontinuity(0-5)":"3.52", "Speech Ratio":"48.55", "Loudness(0-5)":"4.91", "Worst Discontinuity(0-5)":"0.88", "Worst Coloration(0-5)":"0.42", "Channel":"1", "Coloration(0-5)":"0.99", "Bad Mute Ratio(%)":"0.0", "Time":"2022-12-02 16:14:06", "Noisiness(0-5)":"3.28", "MOS":"Poor", "Worst Noisiness(0-5)":"0.91", "Double Talk Ratio(%)":"19.23", "Input":"/home/admin/algo/quality\\*\\*\\*\\*/example.wav", "Total Duration":"42.78", "Noisiness":"Good", "Tag":"Valid", "MOS(0-5)":"1.01", "Loudness(-90dB-0dB)":"-0.59", "Coloration":"Bad", "Saturated Ratio(%)":"37.55" }, { "Discontinuity":"Fair", "Loudness":"Excellent", "Worst MOS(0-5)":"0.65", "Discontinuity(0-5)":"2.45", "Speech Ratio":"41.68", "Loudness(0-5)":"4.52", "Worst Discontinuity(0-5)":"0.66", "Worst Coloration(0-5)":"0.72", "Channel":"2", "Coloration(0-5)":"2.34", "Bad Mute Ratio(%)":"0.0", "Time":"2022-12-02 16:14:06", "Noisiness(0-5)":"2.53", "MOS":"Poor", "Worst Noisiness(0-5)":"0.67", "Double Talk Ratio(%)":"25.93", "Input":"/home/admin/algo/quality\\*\\*\\*\\*/example.wav", "Total Duration":"42.78", "Noisiness":"Fair", "Tag":"Valid", "MOS(0-5)":"1.69", "Loudness(-90dB-0dB)":"-4.82", "Coloration":"Fair", "Saturated Ratio(%)":"0.0" }]'."\n" + ."\n" + .'For more information, see the "AudioQualityAssessment" section of the [Parameters for intelligent production API operations](~~352026~~) topic.'."\n" + ."\n" + .'#### [](#speechdenoise)SpeechDenoise'."\n" + ."\n" + .'Example: {}'."\n" + ."\n" + .'This algorithm does not return additional information.'."\n" + ."\n" + .'#### [](#audiomixing)AudioMixing'."\n" + ."\n" + .'Example: {}'."\n" + ."\n" + .'This algorithm does not return additional information.', + ], + 'CreateDNADB' => [ + 'summary' => 'Creates media fingerprint libraries.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'Name', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the media fingerprint library.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'example name', + ], + ], + [ + 'name' => 'Model', + 'in' => 'query', + 'schema' => [ + 'description' => 'The model of the media fingerprint library. Valid values:'."\n" + ."\n" + .'* **Video**'."\n" + .'* **Audio**'."\n" + .'* **Image**'."\n" + .'* **Text** (supported only in the China (Shanghai) region)'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'Video', + 'default' => '1', + ], + ], + [ + 'name' => 'Description', + 'in' => 'query', + 'schema' => [ + 'description' => 'The description of the media fingerprint library.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '25818875-5F78-4A13-BEF6-D7393642CA58', + ], + 'DBInfo' => [ + 'description' => 'The details of the media fingerprint library.'."\n", + 'type' => 'object', + 'properties' => [ + 'Description' => [ + 'description' => 'The description of the media fingerprint library.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'Name' => [ + 'description' => 'The name of the media fingerprint library.'."\n", + 'type' => 'string', + 'example' => 'example name', + ], + 'Status' => [ + 'description' => 'The state of the media fingerprint library. After a media fingerprint library is created, it enters the offline state. After the media fingerprint library is processed at the backend, it enters the active state.'."\n", + 'type' => 'string', + 'example' => 'offline', + ], + 'DBId' => [ + 'description' => 'The ID of the media fingerprint library. We recommend that you save this ID for subsequent calls of other operations.'."\n", + 'type' => 'string', + 'example' => '88c6ca184c0e47098a5b665e2a12****', + ], + 'Model' => [ + 'description' => 'The model of the media fingerprint library.'."\n", + 'type' => 'string', + 'example' => 'Video', + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"25818875-5F78-4A13-BEF6-D7393642CA58\\",\\n \\"DBInfo\\": {\\n \\"Description\\": \\"这是一个视频DNA库。\\",\\n \\"Name\\": \\"example name\\",\\n \\"Status\\": \\"offline\\",\\n \\"DBId\\": \\"88c6ca184c0e47098a5b665e2a12****\\",\\n \\"Model\\": \\"Video\\"\\n }\\n}","type":"json"}]', + 'title' => 'CreateDNADB', + 'description' => '* You can create up to five media fingerprint libraries within an account. To increase the quota, submit a ticket. You can call the DeleteDNADB operation to delete the fingerprint libraries that you no longer need.'."\n", + ], + 'DeleteDNADB' => [ + 'summary' => 'Deletes a media fingerprint library.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'DBId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the media fingerprint library that you want to delete.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'fb712a6890464059b1b2ea7c8647****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '25818875-5F78-4A13-BEF6-D7393642CA58', + ], + ], + 'description' => '', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"25818875-5F78-4A13-BEF6-D7393642CA58\\"\\n}","type":"json"}]', + 'title' => 'DeleteDNADB', + ], + 'ListDNADB' => [ + 'summary' => 'Queries a list of media fingerprint libraries.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'abilityTreeCode' => '146937', + 'abilityTreeNodes' => [ + 'FEATUREiceVYUZ7L', + ], + ], + 'parameters' => [ + [ + 'name' => 'DBIds', + 'in' => 'query', + 'schema' => [ + 'description' => 'The IDs of the media fingerprint libraries. We recommend that you query at most 10 libraries at a time. Separate multiple library IDs with commas (,).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2288c6ca184c0e47098a5b665e2a12****,78dc866518b843259669df58ed30****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'DBList' => [ + 'description' => 'The queried media fingerprint libraries.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The queried media fingerprint library.'."\n", + 'type' => 'object', + 'properties' => [ + 'Status' => [ + 'description' => 'The state of the media fingerprint library. Default value: **offline**. ****Valid values:'."\n" + ."\n" + .'* **offline**: The media fingerprint library is offline.'."\n" + .'* **active**: The media fingerprint library is online.'."\n" + .'* **deleted**: The media fingerprint library is deleted.'."\n", + 'type' => 'string', + 'example' => 'active', + ], + 'Description' => [ + 'description' => 'The description of the media fingerprint library.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'Name' => [ + 'description' => 'The name of the media fingerprint library.'."\n", + 'type' => 'string', + 'example' => 'example-name', + ], + 'Model' => [ + 'description' => 'The model of the media fingerprint library. Valid values:'."\n" + ."\n" + .'* **Video**'."\n" + .'* **Audio**'."\n" + .'* **Image**'."\n" + .'* **Text** (supported only in the China (Shanghai) region)'."\n", + 'type' => 'string', + 'example' => 'Video', + ], + 'DBId' => [ + 'description' => 'The ID of the media fingerprint library.'."\n", + 'type' => 'string', + 'example' => '88c6ca184c0e47098a5b665e2a12****', + ], + ], + ], + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '25818875-5F78-4A13-BEF6-D7393642CA58', + ], + ], + 'description' => '', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"DBList\\": [\\n {\\n \\"Status\\": \\"active\\",\\n \\"Description\\": \\"这是一个视频DNA库。\\",\\n \\"Name\\": \\"example-name\\",\\n \\"Model\\": \\"Video\\",\\n \\"DBId\\": \\"88c6ca184c0e47098a5b665e2a12****\\"\\n }\\n ],\\n \\"RequestId\\": \\"25818875-5F78-4A13-BEF6-D7393642CA58\\"\\n}","type":"json"}]', + 'title' => 'ListDNADB', + ], + 'SubmitDNAJob' => [ + 'summary' => 'Submits a media fingerprint analysis job.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'Input', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The input file for media fingerprint analysis.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The type of the input file. Valid values:'."\n" + ."\n" + .'1. OSS: Object Storage Service (OSS) object.'."\n" + .'2. Media: media asset.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'Media', + ], + 'Media' => [ + 'description' => 'The input file. The file can be an OSS object or a media asset. You can specify the path of an OSS object in one of the following formats:'."\n" + ."\n" + .'1\\. oss://bucket/object'."\n" + ."\n" + .'2\\. http(s)://bucket.oss-\\[regionId].aliyuncs.com/object'."\n" + ."\n" + .'In the preceding paths, bucket indicates an OSS bucket that resides in the same region as the current project, and object indicates the path of the object in the bucket.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '1b1b9cd148034739af413150fded****', + ], + ], + 'required' => true, + ], + ], + [ + 'name' => 'PipelineId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the ApsaraVideo Media Processing (MPS) queue to which the media fingerprint analysis job is submitted.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '5246b8d12a62433ab77845074039****', + ], + ], + [ + 'name' => 'Config', + 'in' => 'query', + 'schema' => [ + 'description' => 'The configurations of the media fingerprint analysis job. The value is a JSON object. If you specify this parameter, the template parameters are overwritten.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{"SaveType": "save","MediaType"":"video"}', + ], + ], + [ + 'name' => 'TemplateId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The template ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'S00000101-100060', + ], + ], + [ + 'name' => 'UserData', + 'in' => 'query', + 'schema' => [ + 'description' => 'The user-defined data. The data can be up to 128 bytes in length.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'userData', + ], + ], + [ + 'name' => 'PrimaryKey', + 'in' => 'query', + 'schema' => [ + 'description' => 'The primary key of the video. You must make sure that each primary key is unique.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '3ca84a39a9024f19853b21be9cf9****', + ], + ], + [ + 'name' => 'DBId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the media fingerprint library. If you do not specify this parameter, the default media fingerprint library is used. For more information about how to create a media fingerprint library, see [CreateDNADB](~~479275~~).'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '2288c6ca184c0e47098a5b665e2a12****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '25818875-5F78-4A13-BEF6-D7393642CA58', + ], + 'JobId' => [ + 'description' => 'The ID of the media fingerprint analysis job. We recommend that you save this ID for subsequent calls of other operations.'."\n", + 'type' => 'string', + 'example' => '88c6ca184c0e47098a5b665e2****', + ], + ], + 'description' => '', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"25818875-5F78-4A13-BEF6-D7393642CA58\\",\\n \\"JobId\\": \\"88c6ca184c0e47098a5b665e2****\\"\\n}","type":"json"}]', + 'title' => 'SubmitDNAJob', + 'description' => '* SubmitDNAJob is an asynchronous operation. After a request is sent, the system returns a request ID and a job ID and runs the task in the background.'."\n" + .'* You can call this operation only in the China (Beijing), China (Hangzhou), and China (Shanghai) regions.'."\n" + .'* You can submit a text fingerprint analysis job only in the China (Shanghai) region.'."\n", + 'requestParamsDescription' => 'The Config parameter of the media fingerprint analysis job contains the SaveType and MediaType fields.'."\n" + ."\n" + .'SaveType specifies the storage type. Valid values:'."\n" + ."\n" + .'* **nosave**: The fingerprints of the job input are searched but not saved to the media fingerprint library.'."\n" + .'* **save**: The fingerprints of the job input are saved to the media fingerprint library only if the fingerprints are not duplicated with content in the media fingerprint library.'."\n" + .'* **forcesave**: The fingerprints of the job input are forcibly saved to the media fingerprint library.'."\n" + .'* **onlysave**: The fingerprints of the job input are saved to the media fingerprint library but not searched.'."\n" + ."\n" + .'MediaType specifies the media type of the input file. Valid values:'."\n" + ."\n" + .'* **video**'."\n" + .'* **audio**'."\n" + .'* **image**'."\n" + .'* **text**'."\n" + .'* **asr**'."\n", + ], + 'CancelDNAJob' => [ + 'summary' => 'Cancels a media fingerprint analysis job.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'JobId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the media fingerprint analysis job that you want to cancel.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '2288c6ca184c0e47098a5b665e2a12****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '25818875-5F78-4A13-BEF6-D7393642CA58', + ], + 'JobId' => [ + 'description' => 'The job ID.'."\n", + 'type' => 'string', + 'example' => '2288c6ca184c0e47098a5b665e2a12****', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"25818875-5F78-4A13-BEF6-D7393642CA58\\",\\n \\"JobId\\": \\"2288c6ca184c0e47098a5b665e2a12****\\"\\n}","type":"json"}]', + 'title' => 'CancelDNAJob', + 'description' => '* You can cancel a media fingerprint analysis job only if the job is in the Queuing state.'."\n" + .'* We recommend that you call the **UpdatePipeline** operation to set the status of the ApsaraVideo Media Processing (MPS) queue to Paused before you cancel a job. This suspends job scheduling in the MPS queue. After the job is canceled, you must set the status of the MPS queue back to Active so that the other jobs in the MPS queue can be scheduled.'."\n", + ], + 'DeleteDNAFiles' => [ + 'summary' => 'Deletes files from a media fingerprint library.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'DBId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the media fingerprint library from which you want to delete files.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'fb712a6890464059b1b2ea7c8647****', + ], + ], + [ + 'name' => 'PrimaryKeys', + 'in' => 'query', + 'schema' => [ + 'description' => 'The primary key values of the files that you want to delete. Separate multiple values with commas (,). You can delete up to 50 files at a time.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => '41e6536e4f2250e2e9bf26cdea19****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '31E30781-9495-5E2D-A84D-759B0A01E262', + ], + ], + 'description' => '', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"31E30781-9495-5E2D-A84D-759B0A01E262\\"\\n}","type":"json"}]', + 'title' => 'DeleteDNAFiles', + ], + 'ListDNAFiles' => [ + 'summary' => 'Queries a list of files in a media fingerprint library.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'NextPageToken', + 'in' => 'query', + 'schema' => [ + 'description' => 'The pagination token that is used in the next request to retrieve a new page of results. You do not need to specify this parameter for the first request. You must specify the token that is obtained from the previous query as the value of NextToken.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'ae0fd49c0840e14daf0d66a75b83****', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page. Default value: 20. Valid values: 1 to 100.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '100', + 'minimum' => '1', + 'example' => '10', + 'default' => '20', + ], + ], + [ + 'name' => 'DBId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the media fingerprint library.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => '2288c6ca184c0e47098a5b665e2a12****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '2AE89FA5-E620-56C7-9B80-75D09757385A', + ], + 'NextPageToken' => [ + 'description' => 'A pagination token. It can be used in the next request to retrieve a new page of results.'."\n", + 'type' => 'string', + 'example' => 'ae0fd49c0840e14daf0d66a75b83****', + ], + 'FileList' => [ + 'description' => 'The queried files.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The queried file.'."\n", + 'type' => 'object', + 'properties' => [ + 'PrimaryKey' => [ + 'description' => 'The primary key of the file.'."\n", + 'type' => 'string', + 'example' => 'ae0fd49c0840e14daf0d66a75b83****', + ], + 'InputFile' => [ + 'description' => 'The Object Storage Service (OSS) information about the input file.'."\n", + 'type' => 'object', + 'properties' => [ + 'Object' => [ + 'description' => 'The name of the OSS object that is used as the input file.'."\n", + 'type' => 'string', + 'example' => 'example-****.mp4', + ], + 'Location' => [ + 'description' => 'The OSS region in which the input file resides.'."\n", + 'type' => 'string', + 'example' => 'oss-cn-beijing', + ], + 'Bucket' => [ + 'description' => 'The name of the OSS bucket in which the input file is stored.'."\n", + 'type' => 'string', + 'example' => 'example-bucket', + ], + ], + ], + ], + ], + ], + ], + 'description' => '', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"2AE89FA5-E620-56C7-9B80-75D09757385A\\",\\n \\"NextPageToken\\": \\"ae0fd49c0840e14daf0d66a75b83****\\",\\n \\"FileList\\": [\\n {\\n \\"PrimaryKey\\": \\"ae0fd49c0840e14daf0d66a75b83****\\",\\n \\"InputFile\\": {\\n \\"Object\\": \\"example-****.mp4\\",\\n \\"Location\\": \\"oss-cn-beijing\\",\\n \\"Bucket\\": \\"example-bucket\\"\\n }\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'ListDNAFiles', + 'description' => 'You can call this operation to query files in a media fingerprint library based on the library ID. The queried results can be paginated.'."\n", + ], + 'QueryDNAJobList' => [ + 'summary' => 'Queries a list of media fingerprint analysis jobs.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'JobIds', + 'in' => 'query', + 'schema' => [ + 'description' => 'The IDs of the media fingerprint analysis jobs that you want to query. We recommend that you query at most 10 jobs at a time. Separate multiple job IDs with commas (,).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '88c6ca184c0e47098a5b665e2a12****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '25818875-5F78-4A13-BEF6-D7393642CA58', + ], + 'JobList' => [ + 'description' => 'The queried media fingerprint analysis jobs.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The queried media fingerprint analysis job.'."\n", + 'type' => 'object', + 'properties' => [ + 'DNAResult' => [ + 'description' => 'The URL of the media fingerprint analysis result.'."\n", + 'type' => 'string', + 'example' => 'http://test_bucket.oss-cn-shanghai.aliyuncs.com/fingerprint/video/search_result/5/5.txt', + ], + 'PrimaryKey' => [ + 'description' => 'The primary key of the video. You must make sure that each primary key is unique.'."\n", + 'type' => 'string', + 'example' => '3ca84a39a9024f19853b21be9cf9****', + ], + 'DBId' => [ + 'description' => 'The ID of the media fingerprint library.'."\n", + 'type' => 'string', + 'example' => '2288c6ca184c0e47098a5b665e2a12****', + ], + 'CreationTime' => [ + 'description' => 'The time when the job was created.'."\n", + 'type' => 'string', + 'example' => '2022-12-28T03:21:37Z', + ], + 'FinishTime' => [ + 'description' => 'The time when the job was complete.'."\n", + 'type' => 'string', + 'example' => '2022-12-28T03:21:44Z', + ], + 'Status' => [ + 'description' => 'The job state. Valid values:'."\n" + ."\n" + .'* **Queuing**: The job is waiting in the queue.'."\n" + .'* **Analysing**: The job is in progress.'."\n" + .'* **Success**: The job is successful.'."\n" + .'* **Fail**: The job failed.'."\n", + 'type' => 'string', + 'example' => 'Queuing', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => '"The resource operated \\"a887d0b***d805ef6f7f6786302\\" cannot be found"', + ], + 'Config' => [ + 'description' => 'The configurations of the media fingerprint analysis job.'."\n", + 'type' => 'string', + 'example' => '{"SaveType": "save","MediaType"":"video"}', + ], + 'UserData' => [ + 'description' => 'The user-defined data.'."\n", + 'type' => 'string', + 'example' => 'testdna', + ], + 'Code' => [ + 'description' => 'The response code.'."\n", + 'type' => 'string', + 'example' => '"InvalidParameter.ResourceNotFound"', + ], + 'Input' => [ + 'description' => 'The details of the input file.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The type of the input file. Valid values:'."\n" + ."\n" + .'1. OSS: Object Storage Service (OSS) object.'."\n" + .'2. Media: media asset.'."\n", + 'type' => 'string', + 'example' => 'Media', + ], + 'Media' => [ + 'description' => 'The input file. The file can be an OSS object or a media asset. The path of an OSS object can be in one of the following formats:'."\n" + ."\n" + .'1\\. oss://bucket/object'."\n" + ."\n" + .'2\\. http(s)://bucket.oss-\\[regionId].aliyuncs.com/object'."\n" + ."\n" + .'In the preceding paths, bucket indicates an OSS bucket that resides in the same region as the current project, and object indicates the path of the object in the bucket.'."\n", + 'type' => 'string', + 'example' => '1b1b9cd148034739af413150fded****', + ], + ], + ], + 'Id' => [ + 'description' => 'The job ID.'."\n", + 'type' => 'string', + 'example' => '88c6ca184c0e47098a5b665e2a12****', + ], + ], + ], + ], + ], + 'description' => '', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"25818875-5F78-4A13-BEF6-D7393642CA58\\",\\n \\"JobList\\": [\\n {\\n \\"DNAResult\\": \\"http://test_bucket.oss-cn-shanghai.aliyuncs.com/fingerprint/video/search_result/5/5.txt\\",\\n \\"PrimaryKey\\": \\"3ca84a39a9024f19853b21be9cf9****\\",\\n \\"DBId\\": \\"2288c6ca184c0e47098a5b665e2a12****\\",\\n \\"CreationTime\\": \\"2022-12-28T03:21:37Z\\",\\n \\"FinishTime\\": \\"2022-12-28T03:21:44Z\\",\\n \\"Status\\": \\"Queuing\\",\\n \\"Message\\": \\"\\\\\\"The resource operated \\\\\\\\\\\\\\"a887d0b***d805ef6f7f6786302\\\\\\\\\\\\\\" cannot be found\\\\\\"\\",\\n \\"Config\\": \\"{\\\\\\"SaveType\\\\\\": \\\\\\"save\\\\\\",\\\\\\"MediaType\\\\\\"\\\\\\":\\\\\\"video\\\\\\"}\\",\\n \\"UserData\\": \\"testdna\\",\\n \\"Code\\": \\"\\\\\\"InvalidParameter.ResourceNotFound\\\\\\"\\",\\n \\"Input\\": {\\n \\"Type\\": \\"Media\\",\\n \\"Media\\": \\"1b1b9cd148034739af413150fded****\\"\\n },\\n \\"Id\\": \\"88c6ca184c0e47098a5b665e2a12****\\"\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'QueryDNAJobList', + 'responseParamsDescription' => 'The value of DNAResult is an array of VideoMatchInfo.'."\n" + ."\n" + .'**VideoMatchInfo**'."\n" + ."\n" + .'|Parameter|Type|Description|'."\n" + .'|---|---|---|'."\n" + .'|PrimaryKey|String|The unique primary key of the file.|'."\n" + .'|GlobalSimilarity|Double|The overall similarity.|'."\n" + .'|VideoMatchSegments|Array of VideoMatchSegment|The video segments that match based on video search or video search by image.|'."\n" + .'|AudioMatchSegments|Array of AudioMatchSegment|The audio segments that match based on audio search.|'."\n" + .'|TextMatchSegments|Array of TextMatchSegment|The text segments that match based on text search.|'."\n" + ."\n" + .'**VideoMatchSegment or AudioMatchSegment**'."\n" + ."\n" + .'|Parameter|Type|Description|'."\n" + .'|---|---|---|'."\n" + .'|StartTime|Double|The start time of the input video or audio.|'."\n" + .'|EndTime|Double|The end time of the input video or audio.|'."\n" + .'|MasterStartTime|Double|The start time of the matching video or audio in the media fingerprint library.|'."\n" + .'|MasterEndTime|Double|The end time of the matching video or audio in the media fingerprint library.|'."\n" + .'|Similarity|Double|The similarity of the input segment against the matching segments that have similar fingerprints to the input segment in the media fingerprint library.|'."\n" + ."\n" + .'**TextMatchSegment**'."\n" + ."\n" + .'|Parameter|Type|Description|'."\n" + .'|---|---|---|'."\n" + .'|Start|Double|The start time of the input segment.|'."\n" + .'|End|Double|The end time of the input segment.|'."\n" + .'|QueryText|String|The input text for text fingerprint analysis.|'."\n" + .'|MasterText|String|The text segment that has similar fingerprints to the input text in the text fingerprint library.|'."\n" + .'|Similarity|Double|The similarity of the input segment against the matching segments that have similar fingerprints to the input segment in the media fingerprint library.|', + ], + 'SubmitCopyrightJob' => [ + 'summary' => 'Submits a job for adding a copyright watermark to a video.', + 'path' => '', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'paid', + 'abilityTreeNodes' => [ + 'FEATUREiceVYUZ7L', + ], + ], + 'parameters' => [ + [ + 'name' => 'Input', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The source video file that you want to add a watermark to.'."\n" + ."\n" + .'> The OSS object or media asset must reside in the same region as the IMS service region.', + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The type of the source file. Valid values:'."\n" + ."\n" + .'1. OSS: an OSS object.'."\n" + .'2. Media: a media asset.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'OSS', + ], + 'Media' => [ + 'description' => 'The URL of the source file. You can specify the path of an OSS object in one of the following formats:'."\n" + ."\n" + .'1\\. oss://bucket/object'."\n" + ."\n" + .'2\\. http(s)://bucket.oss-\\[regionId].aliyuncs.com/object'."\n" + ."\n" + .'where bucket specifies an OSS bucket that resides in the same region as the job, and object specifies the object path in OSS.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'oss://bucket/object', + ], + ], + 'required' => true, + 'example' => '{"Bucket":"example-bucket","Location":"oss-cn-shanghai","Object":"example.mp4"}', + ], + ], + [ + 'name' => 'Output', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The URL of the output file.'."\n" + ."\n" + .'> The OSS bucket must reside in the same region as the IMS service region.', + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The type of the output file. Valid value:'."\n" + ."\n" + .'1. OSS: an OSS object.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'OSS', + ], + 'Media' => [ + 'description' => 'The OSS path where the output file is saved. You can specify the path in one of the following formats:'."\n" + ."\n" + .'1\\. oss://bucket/object'."\n" + ."\n" + .'2\\. http(s)://bucket.oss-\\[regionId].aliyuncs.com/object where bucket specifies an OSS bucket that resides in the same region as the job, and object specifies the object path in OSS.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'oss://test-bucket/output.mp4', + ], + ], + 'required' => true, + 'example' => '{"Bucket":"example-bucket","Location":"oss-cn-shanghai","Object":"example_result.mp4"}', + ], + ], + [ + 'name' => 'Message', + 'in' => 'query', + 'schema' => [ + 'title' => '水印信息', + 'description' => 'The information about the watermark to be added.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'Test', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The start time of the watermark. Unit: seconds. If you do not specify this parameter, the default value 0 is used.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '0', + ], + ], + [ + 'name' => 'TotalTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end time of the watermark. Unit: seconds. If you do not specify this parameter, the default value is the video duration.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '10', + ], + ], + [ + 'name' => 'Level', + 'in' => 'query', + 'schema' => [ + 'description' => 'The watermark level, which specifies the channel to embed watermarks. Valid values: 0 specifies the 0u channel, 1 specifies the 1uv channel, and 2 specifies the 2yuv channel.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '0', + ], + ], + [ + 'name' => 'Description', + 'in' => 'query', + 'schema' => [ + 'description' => 'The description of the watermark.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'Description', + ], + ], + [ + 'name' => 'UserData', + 'in' => 'query', + 'schema' => [ + 'description' => 'The custom data, which can be up to 1,024 bytes in size.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '123', + ], + ], + [ + 'name' => 'Params', + 'in' => 'query', + 'schema' => [ + 'description' => 'The parameters related to watermark jobs. The value is a JSON string. Supported parameter:'."\n" + ."\n" + .'* algoType: the algorithm type. Default value: v1.'."\n" + ."\n" + .' * v1: watermarking for long videos that last at least 3 minutes.'."\n" + .' * v2: watermarking for videos shorter than 3 minutes.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{"algoType":"v2"}', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'Data' => [ + 'title' => '返回数据', + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'JobId' => [ + 'title' => '任务id', + 'description' => 'The job ID.'."\n", + 'type' => 'string', + 'example' => 'bfb786c63****f4d80648792021eff90', + ], + ], + ], + 'Message' => [ + 'title' => '返回信息', + 'description' => 'The message returned.'."\n", + 'type' => 'string', + 'example' => 'ok', + ], + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => 'FA258E67-09B8-4EAA-8F33-BA567834A2C3'."\n", + ], + 'StatusCode' => [ + 'title' => '状态码', + 'description' => 'The status code.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": {\\n \\"JobId\\": \\"bfb786c63****f4d80648792021eff90\\"\\n },\\n \\"Message\\": \\"ok\\",\\n \\"RequestId\\": \\"FA258E67-09B8-4EAA-8F33-BA567834A2C3\\\\n\\",\\n \\"StatusCode\\": 200\\n}","type":"json"}]', + 'title' => 'SubmitCopyrightJob', + 'description' => '* You can call this operation to add a copyright watermark to a video that lasts at least 3 minutes. If the video is too short, the call may fail, or no output may be returned. To add a copyright watermark to a video shorter than 3 minutes, specify the Params parameter to change the algorithm.'."\n" + .'* Each API call supports processing only one video.'."\n" + .'* This API is supported only in the China (Shanghai) and China (Beijing) regions.'."\n", + ], + 'QueryCopyrightJobList' => [ + 'summary' => 'Queries copyright watermarking jobs.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceVYUZ7L', + ], + ], + 'parameters' => [ + [ + 'name' => 'CreateTimeStart', + 'in' => 'query', + 'schema' => [ + 'description' => 'The start of the creation time range for the query, in UNIX timestamp format.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1627357322', + ], + ], + [ + 'name' => 'CreateTimeEnd', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end of the creation time range for the query, in UNIX timestamp format.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1627357325', + ], + ], + [ + 'name' => 'JobId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The job ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '****cdb3e74639973036bc84****', + ], + ], + [ + 'name' => 'Level', + 'in' => 'query', + 'schema' => [ + 'description' => 'The watermark level, indicating the color channel for embedding. 0: U. 1: UV. 2: YUV.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '0', + ], + ], + [ + 'name' => 'PageNumber', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '0', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries to return on each page.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '10', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'Data' => [ + 'description' => 'The data returned.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'GmtCreate' => [ + 'title' => '创建时间', + 'description' => 'The creation time of the job.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1627357322', + ], + 'GmtModified' => [ + 'title' => '修改时间', + 'description' => 'The last modification time of the job.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1627357322', + ], + 'Input' => [ + 'description' => 'Information about the input video for watermarking.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The type of the input file. Valid values:'."\n" + ."\n" + .'1. OSS: an Object Storage Service (OSS) object.'."\n" + .'2. Media: a media asset.'."\n", + 'type' => 'string', + 'example' => 'OSS', + ], + 'Media' => [ + 'description' => 'The specific input information.'."\n", + 'type' => 'string', + 'example' => 'oss://bucket/object', + ], + ], + ], + 'Output' => [ + 'description' => 'Information about the watermarked output video.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The type of the output file. Valid values:'."\n" + ."\n" + .'* OSS: an OSS object.'."\n" + .'* Media: a media asset.'."\n", + 'type' => 'string', + 'example' => 'OSS', + ], + 'Media' => [ + 'description' => 'The specific output information.'."\n", + 'type' => 'string', + 'example' => 'oss://bucket/object', + ], + ], + ], + 'JobId' => [ + 'title' => '任务id', + 'description' => 'The job ID.'."\n", + 'type' => 'string', + 'example' => 'bfb786c639894f4d80648792021****', + ], + 'Level' => [ + 'title' => '水印强度', + 'description' => 'The watermark level.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2', + ], + 'Message' => [ + 'title' => '水印信息', + 'description' => 'The content of the embedded watermark.'."\n", + 'type' => 'string', + 'example' => 'test', + ], + 'Result' => [ + 'title' => '任务结果', + 'description' => 'The job result.'."\n", + 'type' => 'string', + 'example' => '{"Code":"success","Message":"ok"}', + ], + 'Status' => [ + 'title' => '状态', + 'description' => 'The status of the job.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'UserData' => [ + 'title' => '用户数据', + 'description' => 'The user-defined data.'."\n", + 'type' => 'string', + 'example' => '123', + ], + 'UserId' => [ + 'title' => '用户ID', + 'description' => 'The ID of the user who initiated the job.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1346693***'."\n", + ], + ], + ], + ], + 'Message' => [ + 'title' => '返回信息', + 'description' => 'The message returned.'."\n", + 'type' => 'string', + 'example' => 'ok', + ], + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '******36-3C1E-4417-BDB2-1E034F******', + ], + 'StatusCode' => [ + 'title' => '状态码', + 'description' => 'The status code.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": [\\n {\\n \\"GmtCreate\\": 1627357322,\\n \\"GmtModified\\": 1627357322,\\n \\"Input\\": {\\n \\"Type\\": \\"OSS\\",\\n \\"Media\\": \\"oss://bucket/object\\"\\n },\\n \\"Output\\": {\\n \\"Type\\": \\"OSS\\",\\n \\"Media\\": \\"oss://bucket/object\\"\\n },\\n \\"JobId\\": \\"bfb786c639894f4d80648792021****\\",\\n \\"Level\\": 2,\\n \\"Message\\": \\"test\\",\\n \\"Result\\": \\"{\\\\\\"Code\\\\\\":\\\\\\"success\\\\\\",\\\\\\"Message\\\\\\":\\\\\\"ok\\\\\\"}\\",\\n \\"Status\\": \\"success\\",\\n \\"UserData\\": \\"123\\",\\n \\"UserId\\": 0\\n }\\n ],\\n \\"Message\\": \\"ok\\",\\n \\"RequestId\\": \\"******36-3C1E-4417-BDB2-1E034F******\\",\\n \\"StatusCode\\": 200\\n}","type":"json"}]', + 'title' => 'QueryCopyrightJobList', + 'description' => '* This operation is supported only in the China (Shanghai) and China (Beijing) regions.'."\n", + ], + 'SubmitCopyrightExtractJob' => [ + 'summary' => 'Submits a job that extracts a copyright watermark.', + 'path' => '', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'paid', + 'abilityTreeNodes' => [ + 'FEATUREiceVYUZ7L', + ], + ], + 'parameters' => [ + [ + 'name' => 'Input', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The source video file from which to extract the watermark.'."\n" + ."\n" + .'> The OSS object or media asset must reside in the same region as the IMS service region.', + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The type of the source file. Valid values:'."\n" + ."\n" + .'1. OSS: an OSS object.'."\n" + .'2. Media: a media asset.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'OSS', + ], + 'Media' => [ + 'description' => 'The specific information for the input file, which can be an OSS URL or a media asset ID. OSS URL formats:'."\n" + ."\n" + .'1\\. oss://bucket/object'."\n" + ."\n" + .'2\\. http(s)://bucket.oss-\\[regionId].aliyuncs.com/object'."\n" + ."\n" + .'where bucket specifies an OSS bucket that resides in the same region as the job, and object specifies the object path in OSS.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'oss://bucket/object', + ], + ], + 'required' => true, + ], + ], + [ + 'name' => 'UserData', + 'in' => 'query', + 'schema' => [ + 'description' => 'The custom data, which can be up to 1,024 bytes in size.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '123', + ], + ], + [ + 'name' => 'Params', + 'in' => 'query', + 'schema' => [ + 'description' => 'Additional parameters for the watermark job, provided as a JSON string. Supported parameter:'."\n" + ."\n" + .'* algoType: The algorithm type. Defaults to v1. The extraction algorithm must match the one used for embedding.'."\n" + ."\n" + .' * v1: Copyright watermark extraction algorithm for long videos.'."\n" + .' * v2: Copyright watermark extraction algorithm for short videos.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{"algoType":"v2"}', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'Data' => [ + 'title' => '返回数据', + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'JobId' => [ + 'title' => '任务id', + 'description' => 'The job ID.'."\n", + 'type' => 'string', + 'example' => 'bfb786c63****4d80648792021eff90', + ], + ], + ], + 'Message' => [ + 'title' => '返回信息', + 'description' => 'The message returned.'."\n", + 'type' => 'string', + 'example' => 'ok', + ], + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '****2876-6263-4B75-8F2C-CD0F7FCF****', + ], + 'StatusCode' => [ + 'title' => '状态码', + 'description' => 'The status code.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": {\\n \\"JobId\\": \\"bfb786c63****4d80648792021eff90\\"\\n },\\n \\"Message\\": \\"ok\\",\\n \\"RequestId\\": \\"****2876-6263-4B75-8F2C-CD0F7FCF****\\",\\n \\"StatusCode\\": 200\\n}","type":"json"}]', + 'title' => 'SubmitCopyrightExtractJob', + 'description' => '* This operation is supported only in the China (Shanghai) and China (Beijing) regions.'."\n", + ], + 'QueryCopyrightExtractJob' => [ + 'summary' => 'Queries a job for extracting a copyright watermark.', + 'path' => '', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceVYUZ7L', + ], + ], + 'parameters' => [ + [ + 'name' => 'JobId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The job ID. You can obtain the value of this parameter from the response of the SubmitCopyrightExtractJob operation.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '2288c6ca184c0e47098a5b665e2a12****'."\n", + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'Data' => [ + 'title' => '返回数据', + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'Message' => [ + 'title' => '版权水印信息', + 'description' => 'The copyright watermark information.'."\n", + 'type' => 'string', + 'example' => '', + ], + ], + ], + 'Message' => [ + 'title' => '返回信息', + 'description' => 'The message returned.'."\n", + 'type' => 'string', + 'example' => 'ok', + ], + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '*****ACB-44F2-5F2D-88D7-1283E70*****', + ], + 'StatusCode' => [ + 'title' => '状态码', + 'description' => 'The status code.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": {\\n \\"Message\\": \\"版权水印测试\\"\\n },\\n \\"Message\\": \\"ok\\",\\n \\"RequestId\\": \\"*****ACB-44F2-5F2D-88D7-1283E70*****\\",\\n \\"StatusCode\\": 200\\n}","type":"json"}]', + 'title' => 'QueryCopyrightExtractJob', + ], + 'SubmitTraceAbJob' => [ + 'summary' => 'Submits an A/B watermarking job.', + 'path' => '', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'paid', + 'abilityTreeNodes' => [ + 'FEATUREiceVYUZ7L', + ], + ], + 'parameters' => [ + [ + 'name' => 'Input', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The source video file for A/B watermarking.'."\n" + ."\n" + .'> OSS object or media asset must reside in the same region as the IMS service region. This API supports only videos that last at least 3 minutes. If the video is too short, the call may fail, or no output may be returned.', + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The type of the source file. Valid values:'."\n" + ."\n" + .'1. OSS: an OSS object.'."\n" + .'2. Media: a media asset.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'OSS', + ], + 'Media' => [ + 'description' => 'The source file. The file can be an OSS object or a media asset. You can specify the path of an OSS object in one of the following formats:'."\n" + ."\n" + .'1\\. oss://bucket/object'."\n" + ."\n" + .'2\\. http(s)://bucket.oss-\\[regionId].aliyuncs.com/object'."\n" + ."\n" + .'where bucket specifies an OSS bucket that resides in the same region as the job, and object specifies the object path in OSS.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'oss://bucket/object', + ], + ], + 'required' => true, + ], + ], + [ + 'name' => 'Output', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The output directory path.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The type of the output file. Valid values:'."\n" + ."\n" + .'* OSS: an OSS object.'."\n" + .'* Media: a media asset.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'OSS', + ], + 'Media' => [ + 'description' => 'The output file. The file can be an OSS object or a media asset. OSS URL formats:'."\n" + ."\n" + .'1\\. oss://bucket/dir/'."\n" + ."\n" + .'2\\. http(s)://bucket.oss-\\[regionId].aliyuncs.com/dir/'."\n" + ."\n" + .'In the URL, bucket specifies an OSS bucket that resides in the same region as the job, and dir specifies the object path in OSS.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'oss://bucket/dir/', + ], + ], + 'required' => true, + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The start point of watermark embedding. Unit: seconds.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '0', + ], + ], + [ + 'name' => 'TotalTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The duration of the watermark embedding. Unit: seconds.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '360', + ], + ], + [ + 'name' => 'Level', + 'in' => 'query', + 'schema' => [ + 'description' => 'The watermark level, which specifies the channel to embed watermarks. Valid values: 0 specifies the 0u channel, 1 specifies the 1uv channel, and 2 specifies the 2yuv channel.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '0', + ], + ], + [ + 'name' => 'UserData', + 'in' => 'query', + 'schema' => [ + 'description' => 'The custom data, which can be up to 1,024 bytes in size.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '123', + ], + ], + [ + 'name' => 'CipherBase64ed', + 'in' => 'query', + 'schema' => [ + 'description' => 'The key that is encoded by using the Base64 algorithm.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'Qh6OdgIMcliQSI1fReOw****'."\n", + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'Data' => [ + 'title' => '返回数据', + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'JobId' => [ + 'title' => '任务Id', + 'description' => 'The job ID.'."\n", + 'type' => 'string', + 'example' => 'bfb786c639894f4d80648792021e****', + ], + 'TraceMediaId' => [ + 'title' => '媒体Id', + 'description' => 'The media ID.'."\n", + 'type' => 'string', + 'example' => 'bf53333264f4d80648792021e****', + ], + ], + ], + 'Message' => [ + 'title' => '返回信息', + 'description' => 'The message returned.'."\n", + 'type' => 'string', + 'example' => 'ok', + ], + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '******36-3C1E-4417-BDB2-1E034F******', + ], + 'StatusCode' => [ + 'title' => '状态码', + 'description' => 'The status code.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": {\\n \\"JobId\\": \\"bfb786c639894f4d80648792021e****\\",\\n \\"TraceMediaId\\": \\"bf53333264f4d80648792021e****\\"\\n },\\n \\"Message\\": \\"ok\\",\\n \\"RequestId\\": \\"******36-3C1E-4417-BDB2-1E034F******\\",\\n \\"StatusCode\\": 200\\n}","type":"json"}]', + 'title' => 'SubmitTraceAbJob', + 'description' => '* This API supports only videos that last at least 3 minutes. If the video is too short, the call may fail, or no output may be returned.'."\n", + ], + 'QueryTraceAbJobList' => [ + 'summary' => 'Queries A/B watermarking jobs.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceVYUZ7L', + ], + ], + 'parameters' => [ + [ + 'name' => 'JobId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The job ID. You can obtain the value of this parameter from the response of the SubmitTraceAbJob operation.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '****d80e4e4044975745c14b****', + ], + ], + [ + 'name' => 'TraceMediaId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The media ID for the trace watermark. You can obtain this from the response of the SubmitTraceAbJob operation.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '****437bd2b51105d07b12a9****', + ], + ], + [ + 'name' => 'CreateTimeStart', + 'in' => 'query', + 'schema' => [ + 'description' => 'The start of the creation time range for the query, in UNIX timestamp format.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1627357322', + ], + ], + [ + 'name' => 'CreateTimeEnd', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end of the creation time range for the query, in UNIX timestamp format.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1627357325', + ], + ], + [ + 'name' => 'PageNumber', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '0', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries to return on each page.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '10', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'Data' => [ + 'description' => 'The data returned.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'GmtCreate' => [ + 'title' => '创建时间', + 'description' => 'The creation time of the job.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1627357322', + ], + 'GmtModified' => [ + 'title' => '修改时间', + 'description' => 'The last modification time of the job.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1627357322', + ], + 'Input' => [ + 'description' => 'Information about the input video for watermarking.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The type of the input file. Valid values:'."\n" + ."\n" + .'1. OSS: an Object Storage Service (OSS) object.'."\n" + .'2. Media: a media asset.'."\n", + 'type' => 'string', + 'example' => 'OSS', + ], + 'Media' => [ + 'description' => 'The specific input file information.'."\n", + 'type' => 'string', + 'example' => 'oss://bucket/object', + ], + ], + ], + 'Output' => [ + 'description' => 'Information about the output path for the A/B stream.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The type of the output file. Valid values:'."\n" + ."\n" + .'1. OSS: an OSS object.'."\n" + .'2. Media: a media asset.'."\n", + 'type' => 'string', + 'example' => 'OSS', + ], + 'Media' => [ + 'description' => 'The output directory.'."\n", + 'type' => 'string', + 'example' => 'oss://bucket/dir/', + ], + ], + ], + 'JobId' => [ + 'title' => '任务id', + 'description' => 'The job ID.'."\n", + 'type' => 'string', + 'example' => 'bfb786c639894f4d80648792021eff90', + ], + 'Level' => [ + 'title' => '水印强度', + 'description' => 'The watermark level.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2', + ], + 'TraceMediaId' => [ + 'title' => '媒体id', + 'description' => 'The media ID for the trace watermark.'."\n", + 'type' => 'string', + 'example' => '****437bd2b51105d07b12a9****', + ], + 'Result' => [ + 'title' => '任务结果', + 'description' => 'The job result.'."\n", + 'type' => 'string', + 'example' => '{"Code":"success","Message":"ok"}', + ], + 'Status' => [ + 'title' => '状态', + 'description' => 'The status of the job.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'UserData' => [ + 'title' => '用户数据', + 'description' => 'The user-defined data.'."\n", + 'type' => 'string', + 'example' => '123', + ], + 'UserId' => [ + 'title' => '用户ID', + 'description' => 'The ID of the user who initiated the job.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '13466932****', + ], + ], + ], + ], + 'Message' => [ + 'title' => '返回信息', + 'description' => 'The message returned.'."\n", + 'type' => 'string', + 'example' => 'ok', + ], + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'StatusCode' => [ + 'title' => '状态码', + 'description' => 'The status code.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": [\\n {\\n \\"GmtCreate\\": 1627357322,\\n \\"GmtModified\\": 1627357322,\\n \\"Input\\": {\\n \\"Type\\": \\"OSS\\",\\n \\"Media\\": \\"oss://bucket/object\\"\\n },\\n \\"Output\\": {\\n \\"Type\\": \\"OSS\\",\\n \\"Media\\": \\"oss://bucket/dir/\\"\\n },\\n \\"JobId\\": \\"bfb786c639894f4d80648792021eff90\\",\\n \\"Level\\": 2,\\n \\"TraceMediaId\\": \\"****437bd2b51105d07b12a9****\\",\\n \\"Result\\": \\"{\\\\\\"Code\\\\\\":\\\\\\"success\\\\\\",\\\\\\"Message\\\\\\":\\\\\\"ok\\\\\\"}\\",\\n \\"Status\\": \\"success\\",\\n \\"UserData\\": \\"123\\",\\n \\"UserId\\": 0\\n }\\n ],\\n \\"Message\\": \\"ok\\",\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"StatusCode\\": 200\\n}","type":"json"}]', + 'title' => 'QueryTraceAbJobList', + 'description' => '* This operation is supported only in the China (Shanghai) and China (Beijing) regions.'."\n", + ], + 'SubmitTraceM3u8Job' => [ + 'summary' => 'Submits a job that generates an M3U8 file containing specific trace watermark information.', + 'path' => '', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'paid', + 'abilityTreeNodes' => [ + 'FEATUREiceVYUZ7L', + ], + ], + 'parameters' => [ + [ + 'name' => 'TraceMediaId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The media ID for the trace watermark. You can obtain this from the response of the SubmitTraceAbJob operation.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => '437bd2b516ffda105d07b12a9a82****', + ], + ], + [ + 'name' => 'Output', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The OSS URL of the output M3U8 file.'."\n" + ."\n" + .'> The OSS bucket must reside in the same region as the service region.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The type of the output file. Valid value:'."\n" + ."\n" + .'1. OSS: an OSS object.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'OSS', + ], + 'Media' => [ + 'description' => 'The OSS path where the output file is saved. You can specify the path in one of the following formats:'."\n" + ."\n" + .'1\\. oss://bucket/object'."\n" + ."\n" + .'2\\. http(s)://bucket.oss-\\[regionId].aliyuncs.com/object where bucket specifies an OSS bucket that resides in the same region as the job, and object specifies the object path in OSS.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'oss://bucket/object', + ], + ], + 'required' => true, + ], + ], + [ + 'name' => 'Trace', + 'in' => 'query', + 'schema' => [ + 'description' => 'The specific trace watermark information.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => '', + ], + ], + [ + 'name' => 'KeyUri', + 'in' => 'query', + 'schema' => [ + 'description' => 'The URI of the key server.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'https://cipher.abc.com', + ], + ], + [ + 'name' => 'Params', + 'in' => 'query', + 'schema' => [ + 'description' => 'Additional parameters for the watermark job, provided as a JSON string. Supported parameter:'."\n" + ."\n" + .'* m3u8Type: The type of M3U8 to generate. Defaults to v1.'."\n" + ."\n" + .' * v1: Generates an M3U8 with absolute paths, playable directly. The signed URL for access is valid for 24 hours. If you need to use it after expiration, you must call this API again.'."\n" + .' * v2: Generates an M3U8 with relative paths. It must be placed in the same directory as the TS segment files to be playable.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{"m3u8Type":"v1"}'."\n", + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'Data' => [ + 'title' => '返回数据', + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'JobId' => [ + 'title' => '任务id', + 'description' => 'The job ID.'."\n", + 'type' => 'string', + 'example' => 'bfb786c639894f4d8064879202****', + ], + ], + ], + 'Message' => [ + 'title' => '返回信息', + 'description' => 'The response message.'."\n", + 'type' => 'string', + 'example' => 'ok', + ], + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'Id of the request'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": {\\n \\"JobId\\": \\"bfb786c639894f4d8064879202****\\"\\n },\\n \\"Message\\": \\"ok\\",\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\"\\n}","type":"json"}]', + 'title' => 'SubmitTraceM3u8Job', + 'description' => '* Before you call this operation, you must call SubmitTraceAbJob to get the TraceMediaId from its response.'."\n" + .'* This operation is supported only in the China (Shanghai) and China (Beijing) regions.'."\n" + .'* The M3U8 file generated by this job has a signed URL with an authentication validity period of 24 hours, starting from the moment the job is completed. Once the signature expires, you will no longer be able to trace the watermark information using that specific M3U8 file. If you need to use it after expiration, you must call this API again to generate a new M3U8 file.'."\n", + ], + 'QueryTraceM3u8JobList' => [ + 'summary' => 'Queries jobs for generating M3U8 files containing specific trace watermark information.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceVYUZ7L', + ], + ], + 'parameters' => [ + [ + 'name' => 'CreateTimeStart', + 'in' => 'query', + 'schema' => [ + 'description' => 'The start of the creation time range for the query, in UNIX timestamp format.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1627357322', + ], + ], + [ + 'name' => 'CreateTimeEnd', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end of the creation time range for the query, in UNIX timestamp format.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1627357325', + ], + ], + [ + 'name' => 'JobId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The job ID. You can obtain the value of this parameter from the response of the SubmitTraceM3u8Job operation.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + ], + [ + 'name' => 'PageNumber', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '0', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries to return on each page.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '10', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'Data' => [ + 'description' => 'The data returned.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'GmtCreate' => [ + 'title' => '创建时间', + 'description' => 'The creation time of the job.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1627357322', + ], + 'GmtModified' => [ + 'title' => '修改时间', + 'description' => 'The last modification time of the job.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1627357322', + ], + 'JobId' => [ + 'title' => '任务id', + 'description' => 'The job ID.'."\n", + 'type' => 'string', + 'example' => '****d718e2ff4f018ccf419a7b71****', + ], + 'TraceMediaId' => [ + 'description' => 'The media ID for the trace watermark.'."\n", + 'type' => 'string', + 'example' => '****437bd2b105d07b12a9a82****', + ], + 'Output' => [ + 'description' => 'The output video.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The type of the output file. Valid values:'."\n" + ."\n" + .'* OSS: an OSS object.'."\n" + .'* Media: a media asset.'."\n", + 'type' => 'string', + 'example' => 'OSS', + ], + 'Media' => [ + 'description' => 'The specific output information.'."\n", + 'type' => 'string', + 'example' => 'oss://bucket/object', + ], + ], + ], + 'Status' => [ + 'title' => '状态', + 'description' => 'The current status of the job.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'Trace' => [ + 'title' => '水印信息', + 'description' => 'The watermark information.'."\n", + 'type' => 'string', + 'example' => 'test', + ], + 'UserData' => [ + 'title' => '用户数据', + 'description' => 'The user-defined data.'."\n", + 'type' => 'string', + 'example' => '112', + ], + 'UserId' => [ + 'title' => '用户ID', + 'description' => 'The ID of the user who initiated the job.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1346693276****', + ], + ], + ], + ], + 'Message' => [ + 'title' => '返回信息', + 'description' => 'The message returned.'."\n", + 'type' => 'string', + 'example' => 'ok', + ], + 'StatusCode' => [ + 'title' => '状态码', + 'description' => 'The status code.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": [\\n {\\n \\"GmtCreate\\": 1627357322,\\n \\"GmtModified\\": 1627357322,\\n \\"JobId\\": \\"****d718e2ff4f018ccf419a7b71****\\",\\n \\"TraceMediaId\\": \\"****437bd2b105d07b12a9a82****\\",\\n \\"Output\\": {\\n \\"Type\\": \\"OSS\\",\\n \\"Media\\": \\"oss://bucket/object\\"\\n },\\n \\"Status\\": \\"success\\",\\n \\"Trace\\": \\"test\\",\\n \\"UserData\\": \\"112\\",\\n \\"UserId\\": 0\\n }\\n ],\\n \\"Message\\": \\"ok\\",\\n \\"StatusCode\\": 200,\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\"\\n}","type":"json"}]', + 'title' => 'QueryTraceM3u8JobList', + 'description' => '* This operation is supported only in the China (Shanghai) and China (Beijing) regions.'."\n" + .'* The M3U8 file with absolute paths generated by the SubmitTraceM3u8Job API has a signed URL with an authentication validity period of 24 hours, starting from the moment the job is completed. After the signature expires, the M3U8 file will become inaccessible. You must submit a new M3U8 generation job.'."\n", + ], + 'SubmitTraceExtractJob' => [ + 'summary' => 'Submits a job to extract the trace watermark.', + 'path' => '', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'paid', + 'abilityTreeNodes' => [ + 'FEATUREiceVYUZ7L', + ], + ], + 'parameters' => [ + [ + 'name' => 'Input', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The source video file from which to extract the watermark.'."\n" + ."\n" + .'> The OSS object or media asset must reside in the same region as the IMS service region.', + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The type of the source file. Valid values:'."\n" + ."\n" + .'* OSS: an OSS object.'."\n" + .'* Media: a media asset.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'OSS', + ], + 'Media' => [ + 'description' => 'The specific information for the source file, which can be an OSS URL or a media asset ID. OSS URL formats:'."\n" + ."\n" + .'1\\. oss://bucket/object'."\n" + ."\n" + .'2\\. http(s)://bucket.oss-\\[regionId].aliyuncs.com/object'."\n" + ."\n" + .'where bucket specifies an OSS bucket that resides in the same region as the job, and object specifies the object path in OSS.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'oss://bucket/object', + ], + ], + 'required' => true, + ], + ], + [ + 'name' => 'UserData', + 'in' => 'query', + 'schema' => [ + 'description' => 'The custom data, which can be up to 1,024 bytes in size.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '123', + ], + ], + [ + 'name' => 'Params', + 'in' => 'query', + 'schema' => [ + 'description' => 'Additional parameters for the watermark job, provided as a JSON string. Supported parameter:'."\n" + ."\n" + .'* m3u8Type: The extraction algorithm type. Defaults to v1.'."\n" + ."\n" + .' * v1: Extracts from an M3U8 with absolute paths.'."\n" + .' * v2: Extracts from an M3U8 with relative paths.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{"m3u8Type":"v1"}'."\n", + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'Data' => [ + 'title' => '返回数据', + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'JobId' => [ + 'title' => '任务id', + 'description' => 'The job ID.'."\n", + 'type' => 'string', + 'example' => 'bfb786c639894f4d80648792021e****', + ], + ], + ], + 'Message' => [ + 'title' => '返回信息', + 'description' => 'The message returned.'."\n", + 'type' => 'string', + 'example' => 'ok', + ], + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '****63E8B7C7-4812-46AD-0FA56029AC86****', + ], + 'StatusCode' => [ + 'title' => '状态码', + 'description' => 'The status code.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": {\\n \\"JobId\\": \\"bfb786c639894f4d80648792021e****\\"\\n },\\n \\"Message\\": \\"ok\\",\\n \\"RequestId\\": \\"****63E8B7C7-4812-46AD-0FA56029AC86****\\",\\n \\"StatusCode\\": 200\\n}","type":"json"}]', + 'title' => 'SubmitTraceExtractJob', + 'description' => '* This operation is supported only in the China (Shanghai) and China (Beijing) regions.'."\n" + .'* The input video must be 3 minutes or longer. Jobs submitted with shorter videos will fail.'."\n", + ], + 'QueryTraceExtractJob' => [ + 'summary' => 'Queries a job for extracting a trace watermark.', + 'path' => '', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceVYUZ7L', + ], + ], + 'parameters' => [ + [ + 'name' => 'JobId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The job ID. You can obtain the value of this parameter from the response of the SubmitTraceExtractJob operation.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '31fa3c9ca8134fb4b0b0f7878301****'."\n", + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'Data' => [ + 'title' => '返回数据', + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'Trace' => [ + 'title' => '溯源水印信息', + 'description' => 'The trace watermark information.'."\n", + 'type' => 'string', + 'example' => '', + ], + ], + ], + 'Message' => [ + 'title' => '返回信息', + 'description' => 'The message returned.'."\n", + 'type' => 'string', + 'example' => 'ok', + ], + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '*****ACB-44F2-5F2D-88D7-1283E70*****', + ], + 'StatusCode' => [ + 'title' => '状态码', + 'description' => 'The status code.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": {\\n \\"Trace\\": \\"测试溯源水印\\"\\n },\\n \\"Message\\": \\"ok\\",\\n \\"RequestId\\": \\"*****ACB-44F2-5F2D-88D7-1283E70*****\\",\\n \\"StatusCode\\": 200\\n}","type":"json"}]', + 'title' => 'QueryTraceExtractJob', + 'description' => 'This operation is supported only in the China (Shanghai) and China (Beijing) regions.'."\n", + ], + 'DescribeMeterImsMediaConvertUHDUsage' => [ + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'abilityTreeCode' => '146742', + 'abilityTreeNodes' => [ + 'FEATUREiceM55707', + ], + ], + 'parameters' => [ + [ + 'name' => 'StartTs', + 'in' => 'query', + 'schema' => [ + 'description' => 'The beginning of the time range to query. The value is a 10-digit timestamp.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1654403036', + ], + ], + [ + 'name' => 'EndTs', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end of the time range to query. The value is a 10-digit timestamp.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1656995036', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'This parameter does not take effect. By default, the usage data of all regions is returned.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-shanghai', + ], + ], + [ + 'name' => 'Interval', + 'in' => 'query', + 'schema' => [ + 'description' => 'The time granularity of the query. Valid values: 3600 (hour) and 86400 (day).'."\n", + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [], + 'example' => '3600'."\n", + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'BEA98A0C-7870-15FE-B96F-8880BB600A2C', + ], + 'Data' => [ + 'description' => 'The usage statistics of IMS on UHD transcoding of MPS.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Time' => [ + 'description' => 'The beginning time of usage. The value is a 10-digit timestamp.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1656950400', + ], + 'Specification' => [ + 'description' => 'The transcoding specifications.'."\n", + 'type' => 'string', + 'example' => 'SuperResolution.Standard.1080P'."\n", + ], + 'Duration' => [ + 'description' => 'The usage duration, in minutes.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '308028', + ], + ], + 'description' => '', + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'Meter.ParamError', + 'errorMessage' => 'Param Error:%s,Please Check Again.', + ], + ], + 403 => [ + [ + 'errorCode' => 'Meter.AuthError', + 'errorMessage' => 'Authentication Failed,Please Try Again.', + ], + ], + 500 => [ + [ + 'errorCode' => 'Meter.ServerInternalError', + 'errorMessage' => 'The Request Processing Has Failed Due To Some Unknown Error.', + ], + [ + 'errorCode' => 'Meter.DataSourceQueryError', + 'errorMessage' => 'Data Source Error:%s,Please Try Again.', + ], + ], + 502 => [ + [ + 'errorCode' => 'Meter.ReadyTsError', + 'errorMessage' => 'Get ReadyTs Failed,Please Try Again.', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"BEA98A0C-7870-15FE-B96F-8880BB600A2C\\",\\n \\"Data\\": [\\n {\\n \\"Time\\": 1656950400,\\n \\"Specification\\": \\"SuperResolution.Standard.1080P\\\\n\\",\\n \\"Duration\\": 308028\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'DescribeMeterImsMediaConvertUHDUsage', + 'summary' => 'Queries the usage statistics of Intelligent Media Services (IMS) on ultra high definition (UHD) transcoding of ApsaraVideo Media Processing (MPS). The maximum query range is 31 days. You can query data within the last 90 days.', + ], + 'DescribeMeterImsMediaConvertUsage' => [ + 'summary' => 'Queries the usage statistics of Intelligent Media Services (IMS) on video-on-demand (VOD) transcoding. The maximum query range is 31 days. You can query data within the last 90 days.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'abilityTreeCode' => '146741', + 'abilityTreeNodes' => [ + 'FEATUREiceM55707', + ], + ], + 'parameters' => [ + [ + 'name' => 'StartTs', + 'in' => 'query', + 'schema' => [ + 'description' => 'The beginning of the time range to query. The value is a 10-digit timestamp. You can query data within the last 90 days.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1654403036', + ], + ], + [ + 'name' => 'EndTs', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end of the time range to query. The value is a 10-digit timestamp. The maximum query range is 31 days. The duration between StartTs and EndTs cannot exceed 31 days.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1656995036', + ], + ], + [ + 'name' => 'Region', + 'in' => 'query', + 'schema' => [ + 'description' => 'This parameter does not take effect. By default, the usage data of all regions is returned.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-shanghai'."\n", + ], + ], + [ + 'name' => 'Interval', + 'in' => 'query', + 'schema' => [ + 'description' => 'The time granularity of the query. Valid values: 3600 (hour) and 86400 (day).'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '86400', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'FBBB5210-2B78-58FB-A6FE-9DD887BB2C61', + ], + 'Data' => [ + 'description' => 'The usage statistics of IMS on VOD transcoding.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Time' => [ + 'description' => 'The beginning time of usage. The value is a 10-digit timestamp.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1656950400', + ], + 'Specification' => [ + 'description' => 'The transcoding specifications.'."\n", + 'type' => 'string', + 'example' => 'H264.HD'."\n", + ], + 'Duration' => [ + 'description' => 'The usage duration, in minutes.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '20', + ], + ], + 'description' => '', + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'Meter.ParamError', + 'errorMessage' => 'Param Error:%s,Please Check Again.', + ], + ], + 403 => [ + [ + 'errorCode' => 'Meter.AuthError', + 'errorMessage' => 'Authentication Failed,Please Try Again.', + ], + ], + 500 => [ + [ + 'errorCode' => 'Meter.ServerInternalError', + 'errorMessage' => 'The Request Processing Has Failed Due To Some Unknown Error.', + ], + [ + 'errorCode' => 'Meter.DataSourceQueryError', + 'errorMessage' => 'Data Source Error:%s,Please Try Again.', + ], + ], + 502 => [ + [ + 'errorCode' => 'Meter.ReadyTsError', + 'errorMessage' => 'Get ReadyTs Failed,Please Try Again.', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"FBBB5210-2B78-58FB-A6FE-9DD887BB2C61\\",\\n \\"Data\\": [\\n {\\n \\"Time\\": 1656950400,\\n \\"Specification\\": \\"H264.HD\\\\n\\",\\n \\"Duration\\": 20\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'DescribeMeterImsMediaConvertUsage', + ], + 'DescribeMeterImsEditUsage' => [ + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'abilityTreeCode' => '146735', + 'abilityTreeNodes' => [ + 'FEATUREiceM55707', + ], + ], + 'parameters' => [ + [ + 'name' => 'StartTs', + 'in' => 'query', + 'schema' => [ + 'description' => 'The beginning of the time range to query. The value is a 10-digit timestamp.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1654403036', + ], + ], + [ + 'name' => 'EndTs', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end of the time range to query. The value is a 10-digit timestamp.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1656995036', + ], + ], + [ + 'name' => 'Interval', + 'in' => 'query', + 'schema' => [ + 'description' => 'The time granularity of the query. Valid values: 3600 (hour) and 86400 (day).'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '86400', + ], + ], + [ + 'name' => 'Region', + 'in' => 'query', + 'schema' => [ + 'description' => 'This parameter does not take effect. By default, the usage data of all regions is returned.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-shanghai', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '7F3AE2C6-5CC6-5712-BAC5-5A735A157687', + ], + 'Data' => [ + 'description' => 'The usage statistics of IMS on VOD editing.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Time' => [ + 'description' => 'The beginning time of usage. The value is a 10-digit timestamp.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1656950400', + ], + 'Duration' => [ + 'description' => 'The usage duration, in minutes.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1.23', + ], + 'Profile' => [ + 'description' => 'The video profile.'."\n", + 'type' => 'string', + 'example' => '1080P', + ], + ], + 'description' => '', + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'Meter.ParamError', + 'errorMessage' => 'Param Error:%s,Please Check Again.', + ], + ], + 403 => [ + [ + 'errorCode' => 'Meter.AuthError', + 'errorMessage' => 'Authentication Failed,Please Try Again.', + ], + ], + 500 => [ + [ + 'errorCode' => 'Meter.ServerInternalError', + 'errorMessage' => 'The Request Processing Has Failed Due To Some Unknown Error.', + ], + [ + 'errorCode' => 'Meter.DataSourceQueryError', + 'errorMessage' => 'Data Source Error:%s,Please Try Again.', + ], + ], + 502 => [ + [ + 'errorCode' => 'Meter.ReadyTsError', + 'errorMessage' => 'Get ReadyTs Failed,Please Try Again.', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"7F3AE2C6-5CC6-5712-BAC5-5A735A157687\\",\\n \\"Data\\": [\\n {\\n \\"Time\\": 1656950400,\\n \\"Duration\\": 1.23,\\n \\"Profile\\": \\"1080P\\"\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'DescribeMeterImsEditUsage', + 'summary' => 'Queries the usage statistics of Intelligent Media Services (IMS) on video-on-demand (VOD) editing. The maximum query range is 31 days. You can query data within the last 90 days.', + ], + 'DescribeMeterImsSummary' => [ + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'abilityTreeCode' => '146724', + 'abilityTreeNodes' => [ + 'FEATUREiceM55707', + ], + ], + 'parameters' => [ + [ + 'name' => 'StartTs', + 'in' => 'query', + 'schema' => [ + 'description' => 'The beginning of the time range to query. The value is a 10-digit timestamp.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1654403036', + ], + ], + [ + 'name' => 'EndTs', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end of the time range to query. The value is a 10-digit timestamp.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1656995036', + ], + ], + [ + 'name' => 'Region', + 'in' => 'query', + 'schema' => [ + 'description' => 'This parameter does not take effect. By default, the usage data of all regions is returned.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-shanghai', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'BEA98A0C-7870-15FE-B96F-8880BB600A2C', + ], + 'Data' => [ + 'description' => 'The usage statistics of IMS.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'MpsTranscodeDuration' => [ + 'description' => 'The duration of video-on-demand (VOD) transcoding.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '17337', + ], + 'MpsTranscodeUHDDuration' => [ + 'description' => 'The duration of audio and video enhancement.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '300', + ], + 'LiveTranscodeDuration' => [ + 'description' => 'The duration of live stream transcoding.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '12356', + ], + 'EditingDuration' => [ + 'description' => 'The duration of video editing.'."\n", + 'type' => 'string', + 'example' => '8722', + ], + 'MpsAiDuration' => [ + 'description' => 'The duration of AI processing.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'LiveRecordDuration' => [ + 'description' => 'The duration of live stream recording.'."\n", + 'type' => 'string', + 'example' => '100', + ], + 'LiveEditDuration' => [ + 'description' => 'The duration of live editing.'."\n", + 'type' => 'string', + 'example' => '2000', + ], + 'LiveSnapshotCount' => [ + 'description' => 'The number of live stream snapshots.'."\n", + 'type' => 'string', + 'example' => '100', + ], + ], + 'description' => '', + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'Meter.ParamError', + 'errorMessage' => 'Param Error:%s,Please Check Again.', + ], + ], + 403 => [ + [ + 'errorCode' => 'Meter.AuthError', + 'errorMessage' => 'Authentication Failed,Please Try Again.', + ], + ], + 500 => [ + [ + 'errorCode' => 'Meter.ServerInternalError', + 'errorMessage' => 'The Request Processing Has Failed Due To Some Unknown Error.', + ], + [ + 'errorCode' => 'Meter.DataSourceQueryError', + 'errorMessage' => 'Data Source Error:%s,Please Try Again.', + ], + ], + 502 => [ + [ + 'errorCode' => 'Meter.ReadyTsError', + 'errorMessage' => 'Get ReadyTs Failed,Please Try Again.', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"BEA98A0C-7870-15FE-B96F-8880BB600A2C\\",\\n \\"Data\\": [\\n {\\n \\"MpsTranscodeDuration\\": 17337,\\n \\"MpsTranscodeUHDDuration\\": 300,\\n \\"LiveTranscodeDuration\\": 12356,\\n \\"EditingDuration\\": \\"8722\\",\\n \\"MpsAiDuration\\": 0,\\n \\"LiveRecordDuration\\": \\"100\\",\\n \\"LiveEditDuration\\": \\"2000\\",\\n \\"LiveSnapshotCount\\": \\"100\\"\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'DescribeMeterImsSummary', + 'summary' => 'Queries the usage statistics of Intelligent Media Services (IMS). The maximum query range is 31 days. You can query data within the last 90 days.', + ], + 'DescribeMeterImsMpsAiUsage' => [ + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'abilityTreeCode' => '146716', + 'abilityTreeNodes' => [ + 'FEATUREiceM55707', + ], + ], + 'parameters' => [ + [ + 'name' => 'StartTs', + 'in' => 'query', + 'schema' => [ + 'description' => 'The beginning of the time range to query. The value is a 10-digit timestamp. You can query data within the last 90 days.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1654403036', + ], + ], + [ + 'name' => 'EndTs', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end of the time range to query. The value is a 10-digit timestamp. The maximum query range is 31 days. The duration between StartTs and EndTs cannot exceed 31 days.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1656995036', + ], + ], + [ + 'name' => 'Interval', + 'in' => 'query', + 'schema' => [ + 'description' => 'The time granularity of the query. Valid values: 3600 (hour) and 86400 (day).'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '86400', + ], + ], + [ + 'name' => 'Region', + 'in' => 'query', + 'schema' => [ + 'description' => 'This parameter does not take effect. By default, the usage data of all regions is returned.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-shanghai', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '0622C702-41BE-467E-AF2E-883D4517962E', + ], + 'Data' => [ + 'description' => 'The usage statistics of IMS on AI processing of MPS.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Time' => [ + 'description' => 'The beginning time of usage. The value is a 10-digit timestamp.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1656950400', + ], + 'Type' => [ + 'description' => 'The AI type. Valid values:'."\n", + 'type' => 'string', + 'example' => '', + ], + 'Duration' => [ + 'description' => 'The usage duration, in minutes.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '644', + ], + ], + 'description' => '', + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'Meter.ParamError', + 'errorMessage' => 'Param Error:%s,Please Check Again.', + ], + ], + 403 => [ + [ + 'errorCode' => 'Meter.AuthError', + 'errorMessage' => 'Authentication Failed,Please Try Again.', + ], + ], + 500 => [ + [ + 'errorCode' => 'Meter.ServerInternalError', + 'errorMessage' => 'The Request Processing Has Failed Due To Some Unknown Error.', + ], + [ + 'errorCode' => 'Meter.DataSourceQueryError', + 'errorMessage' => 'Data Source Error:%s,Please Try Again.', + ], + ], + 502 => [ + [ + 'errorCode' => 'Meter.ReadyTsError', + 'errorMessage' => 'Get ReadyTs Failed,Please Try Again.', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"0622C702-41BE-467E-AF2E-883D4517962E\\",\\n \\"Data\\": [\\n {\\n \\"Time\\": 1656950400,\\n \\"Type\\": \\"Censor:审核类型\\\\nProduct:生产类型\\",\\n \\"Duration\\": 644\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'DescribeMeterImsMpsAiUsage', + 'summary' => 'Queries the usage statistics of Intelligent Media Services (IMS) on AI processing of ApsaraVideo Media Processing (MPS). The maximum query range is 31 days. You can query data within the last 90 days.', + ], + 'SetEventCallback' => [ + 'summary' => 'Configures a callback method for one or more events.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + ], + 'parameters' => [ + [ + 'name' => 'CallbackType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The callback method. Valid values:'."\n" + ."\n" + .'* **HTTP**'."\n" + .'* **MNS**'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'MNS' => 'MNS', + 'HTTP' => 'HTTP', + ], + 'example' => 'HTTP', + ], + ], + [ + 'name' => 'CallbackQueueName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the Simple Message Queue (SMQ) queue in the region. The name must start with ice-callback-.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'ice-callback-queue', + ], + ], + [ + 'name' => 'CallbackURL', + 'in' => 'query', + 'schema' => [ + 'description' => 'The callback URL. This parameter is required if you set CallbackType to **HTTP**. The callback URL cannot exceed 256 bytes in length. You can specify only one callback URL.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'http://xxx.yyy/callback', + ], + ], + [ + 'name' => 'EventTypeList', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of the callback event. You can specify multiple values separated with commas (,). ProduceMediaComplete: indicates that the editing and production task is complete.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'ProduceMediaComplete', + ], + ], + [ + 'name' => 'AuthSwitch', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to enable callback authentication. This parameter takes effect only if you set CallbackType to **HTTP**. Valid values:'."\n" + ."\n" + .'* **on**'."\n" + .'* **off**'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'off' => 'off', + 'on' => 'on', + ], + 'example' => 'on', + ], + ], + [ + 'name' => 'AuthKey', + 'in' => 'query', + 'schema' => [ + 'description' => 'The authentication key. The key can be up to 32 characters in length and must contain uppercase letters, lowercase letters, and digits. This parameter takes effect only if you set CallbackType to **HTTP**.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'TestKey001', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'Success' => [ + 'title' => '是否设置成功', + 'description' => 'Indicates whether the configuration was successful. Valid values: true and false.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<SetEventCallbackResponse>\\n <RequestId>******11-DB8D-4A9A-875B-275798******</RequestId>\\n <Success>true</Success>\\n</SetEventCallbackResponse>","errorExample":""}]', + 'title' => 'SetEventCallback', + ], + 'GetEventCallback' => [ + 'summary' => 'Queries event callback configurations.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'CallbackType' => [ + 'description' => 'The callback method. Valid values:'."\n" + ."\n" + .'* **HTTP**'."\n" + .'* **MNS**'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'MNS' => 'MNS', + 'HTTP' => 'HTTP', + ], + 'example' => 'HTTP', + ], + 'CallbackQueueName' => [ + 'description' => 'The name of the Simple Message Queue (SMQ) queue to which callback messages are sent.'."\n", + 'type' => 'string', + 'example' => 'ice-callback-queue', + ], + 'CallbackURL' => [ + 'description' => 'The callback URL to which event notifications are sent.'."\n", + 'type' => 'string', + 'example' => 'http://xxx.yyy/callback', + ], + 'EventTypeList' => [ + 'description' => 'The type of the callback event. Multiple values are separated with commas (,). For more information about callback event types, see [Event notification content](~~610204~~).', + 'type' => 'string', + 'example' => 'ProduceMediaComplete,TranscodeComplete', + ], + 'AuthSwitch' => [ + 'description' => 'Specifies whether callback authentication is enabled. This parameter is returned only for **HTTP** callbacks. Valid values:'."\n" + ."\n" + .'* **on**'."\n" + .'* **off**'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'off' => 'off', + 'on' => 'on', + ], + 'example' => 'on', + ], + 'AuthKey' => [ + 'description' => 'The authentication key. This parameter is returned only for HTTP callbacks.'."\n", + 'type' => 'string', + 'example' => 'TestKey001', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"CallbackType\\": \\"HTTP\\",\\n \\"CallbackQueueName\\": \\"ice-callback-queue\\",\\n \\"CallbackURL\\": \\"http://xxx.yyy/callback\\",\\n \\"EventTypeList\\": \\"ProduceMediaComplete,TranscodeComplete\\",\\n \\"AuthSwitch\\": \\"on\\",\\n \\"AuthKey\\": \\"TestKey001\\"\\n}","errorExample":""},{"type":"xml","example":"<GetEventCallbackResponse>\\n <RequestId>******11-DB8D-4A9A-875B-275798******</RequestId>\\n <CallbackQueueName>ice-callback-queue</CallbackQueueName>\\n <EventTypeList>ProduceMediaComplete</EventTypeList>\\n</GetEventCallbackResponse>","errorExample":""}]', + 'title' => 'GetEventCallback', + ], + 'StartWorkflow' => [ + 'summary' => 'Submits a workflow task. You can submit a workflow task to implement automated media processing based on a workflow template.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'paid', + 'abilityTreeNodes' => [ + 'FEATUREiceVYUZ7L', + ], + ], + 'parameters' => [ + [ + 'name' => 'WorkflowId', + 'in' => 'query', + 'schema' => [ + 'title' => '模板ID', + 'description' => 'The ID of the workflow template. To view the template ID, log on to the [IMS console](https://ims.console.aliyun.com/settings/workflow/list) and choose Configurations > Workflow Template.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => '******f0e54971ecbffd472190******', + ], + ], + [ + 'name' => 'TaskInput', + 'in' => 'query', + 'schema' => [ + 'title' => '模板名称', + 'description' => 'The workflow input. Only media assets are supported.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{'."\n" + .' "Type": "Media",'."\n" + .' "Media": "******30706071edbfe290b488******"'."\n" + .'}', + ], + ], + [ + 'name' => 'UserData', + 'in' => 'query', + 'schema' => [ + 'description' => 'The user-defined data in the JSON format, which cannot be up to 512 bytes in length. You can specify a custom callback URL. For more information, see [Configure a callback upon editing completion](~~451631~~).', + 'type' => 'string', + 'required' => false, + 'example' => '', + ], + ], + [ + 'name' => 'SkipInputVerification', + 'in' => 'query', + 'schema' => [ + 'type' => 'boolean', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******42-E8E1-4FBB-8E52-F4225C******', + ], + 'TaskId' => [ + 'description' => 'The ID of the workflow task.'."\n", + 'type' => 'string', + 'example' => '******22dad741d086a50325f9******', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******42-E8E1-4FBB-8E52-F4225C******\\",\\n \\"TaskId\\": \\"******22dad741d086a50325f9******\\"\\n}","type":"json"}]', + 'title' => 'StartWorkflow', + 'description' => '* Only media assets from Intelligent Media Services (IMS) or ApsaraVideo VOD can be used as the input of a workflow.'."\n" + .'* When you submit a workflow task, you must specify a workflow template. You can create a workflow template in the [IMS console](https://ims.console.aliyun.com/settings/workflow/list) or use a preset workflow template.'."\n", + ], + 'GetWorkflowTask' => [ + 'summary' => 'Queries the information about a workflow task by task ID, including the workflow ID and the status and result of the task. You can query only the workflow task data of the last year.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceVYUZ7L', + ], + ], + 'parameters' => [ + [ + 'name' => 'TaskId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the workflow task.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '******4215e042b3966ca5441e******', + ], + ], + ], + 'responses' => [ + 200 => [ + 'headers' => [], + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******0C-7870-15FE-B96F-8880BB******', + ], + 'WorkflowTask' => [ + 'description' => 'The information about the workflow task.'."\n", + 'type' => 'object', + 'properties' => [ + 'TaskId' => [ + 'description' => 'The ID of the workflow task.'."\n", + 'type' => 'string', + 'example' => '******4215e042b3966ca5441e******', + ], + 'Status' => [ + 'description' => 'The task state.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* Init: The task is being initialized.'."\n" + .'* Failed: The task failed.'."\n" + .'* Canceled: The task is canceled.'."\n" + .'* Processing: The task is in progress.'."\n" + .'* Succeed: The task is successful.'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'Init' => '', + 'Failed' => '', + 'Canceled' => '', + 'Processing' => '', + 'Succeed' => '', + ], + 'example' => 'Succeed', + ], + 'TaskInput' => [ + 'description' => 'The input of the workflow task.'."\n", + 'type' => 'string', + 'example' => '{'."\n" + .' "Type": "Media",'."\n" + .' "Media": "******30706071edbfe290b488******"'."\n" + .'}', + ], + 'CreateTime' => [ + 'description' => 'The time when the task was created. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2023-01-04T02:05:17Z', + ], + 'FinishTime' => [ + 'description' => 'The time when the task was complete. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2023-01-04T02:06:19Z', + ], + 'Workflow' => [ + 'description' => 'The workflow Information.'."\n", + 'type' => 'object', + 'properties' => [ + 'WorkflowId' => [ + 'description' => 'The workflow ID.'."\n", + 'type' => 'string', + 'example' => '******63dca94c609de02ac0d1******', + ], + 'Name' => [ + 'description' => 'The workflow name.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'Status' => [ + 'description' => 'The workflow state.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* Active'."\n" + .'* Inactive'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'Active' => '', + 'Inactive' => '', + ], + 'example' => 'Active', + ], + 'Type' => [ + 'description' => 'The workflow type.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* Customize: custom workflow.'."\n" + .'* System: system workflow.'."\n" + .'* Common: user-created workflow.'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'Customize' => '', + 'System' => '', + 'Common' => '', + ], + 'example' => 'Common', + ], + 'CreateTime' => [ + 'description' => 'The time when the workflow was created.'."\n", + 'type' => 'string', + 'example' => '2022-11-27T10:02:12Z', + ], + 'ModifiedTime' => [ + 'description' => 'The time when the workflow was last modified.'."\n", + 'type' => 'string', + 'example' => '2022-11-29T02:06:19Z'."\n", + ], + ], + ], + 'ActivityResults' => [ + 'description' => 'The results for all nodes of the workflow task.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'UserData' => [ + 'description' => 'The user-defined field that was specified when the workflow task was submitted.'."\n", + 'type' => 'string', + 'example' => '{"NotifyAddress":"http://xx.xx.xxx"}', + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******0C-7870-15FE-B96F-8880BB******\\",\\n \\"WorkflowTask\\": {\\n \\"TaskId\\": \\"******4215e042b3966ca5441e******\\",\\n \\"Status\\": \\"Succeed\\",\\n \\"TaskInput\\": \\"{\\\\n \\\\\\"Type\\\\\\": \\\\\\"Media\\\\\\",\\\\n \\\\\\"Media\\\\\\": \\\\\\"******30706071edbfe290b488******\\\\\\"\\\\n}\\",\\n \\"CreateTime\\": \\"2023-01-04T02:05:17Z\\",\\n \\"FinishTime\\": \\"2023-01-04T02:06:19Z\\",\\n \\"Workflow\\": {\\n \\"WorkflowId\\": \\"******63dca94c609de02ac0d1******\\",\\n \\"Name\\": \\"超分转码工作流\\",\\n \\"Status\\": \\"Active\\",\\n \\"Type\\": \\"Common\\",\\n \\"CreateTime\\": \\"2022-11-27T10:02:12Z\\",\\n \\"ModifiedTime\\": \\"2022-11-29T02:06:19Z\\\\n\\"\\n },\\n \\"ActivityResults\\": \\"Json格式,内容根据工作流配置有变化。\\",\\n \\"UserData\\": \\"{\\\\\\"NotifyAddress\\\\\\":\\\\\\"http://xx.xx.xxx\\\\\\"}\\"\\n }\\n}","type":"json"}]', + 'title' => 'GetWorkflowTask', + ], + 'ListWorkflowTasks' => [ + 'summary' => 'Retrieves workflow tasks.', + 'path' => '', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceVYUZ7L', + ], + 'autoTest' => true, + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'WorkflowId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the workflow template.[](https://ims.console.aliyun.com/settings/workflow/list)'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '******b4fb044839815d4f2cd8******', + ], + ], + [ + 'name' => 'WorkflowName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the workflow template.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'example-workflow-****', + ], + ], + [ + 'name' => 'KeyText', + 'in' => 'query', + 'schema' => [ + 'description' => 'A keyword for fuzzy matching against the TaskInput, such as a file name or Media ID. Max length: 32 characters.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '', + ], + ], + [ + 'name' => 'StartOfCreateTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The start of the time range for filtering tasks by their creation time. Supports querying data from the last 90 days only.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2025-07-12T00:00:00Z', + ], + ], + [ + 'name' => 'EndOfCreateTime', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => [ + 'title' => '标记当前开始读取的位置,置空表示从头开始', + 'description' => 'The end of the time range for filtering tasks by their creation time. Supports querying data from the last 90 days only.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2025-07-15T00:00:00Z', + ], + ], + [ + 'name' => 'MaxResults', + 'in' => 'query', + 'schema' => [ + 'description' => 'The maximum number of media workflow instances to return. Valid values: 1 to 100. Default value: 10.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '10', + ], + ], + [ + 'name' => 'NextToken', + 'in' => 'query', + 'schema' => [ + 'description' => 'The pagination token that is used in the next request to retrieve a new page of results. You do not need to specify this parameter for the first request.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '**************VRpbWUQARgBIpcBCgkA1bUtaAAAAAAKiQEDhAAAADFTMzg2NTY2NjU2MzM3NjU2NjYyMzkzMTYyMzI2MjYzNjY2**********', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'TotalCount' => [ + 'title' => 'TotalCount本次请求条件下的数据总量,此参数为可选参数,默认可不返回', + 'description' => 'The total number of entries returned. By default, this parameter is not returned.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '4', + ], + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => 'C0C02296-113C-5838-8FE9-8F3A32998DDC', + ], + 'NextToken' => [ + 'title' => '表示当前调用返回读取到的位置,空代表数据已经读取完毕', + 'description' => 'A pagination token.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '****8EqYpQbZ6Eh7+Zz8DxVYoQ==', + ], + 'TaskList' => [ + 'description' => 'The media workflow tasks.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The details of a workflow task.'."\n", + 'type' => 'object', + 'properties' => [ + 'TaskId' => [ + 'description' => 'The ID of the workflow task.'."\n", + 'type' => 'string', + 'example' => '*****4c93d2f404f8345b16a965*****', + ], + 'TaskInput' => [ + 'description' => 'The input data for the workflow task.'."\n", + 'type' => 'string', + 'example' => '{\\"Type\\":\\"Media\\",\\"Media\\":\\"****8b40884171efb0d9e7f7f458****\\"}', + ], + 'Status' => [ + 'description' => 'The task state.'."\n" + ."\n" + .'**Valid values**:'."\n" + ."\n" + .'* Init: Initializing'."\n" + .'* Failed'."\n" + .'* Canceled'."\n" + .'* Processing'."\n" + .'* Succeed'."\n", + 'type' => 'string', + 'example' => 'Succeed', + ], + 'CreateTime' => [ + 'description' => 'The time the task was created. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2024-07-15T09:45:48Z', + ], + 'FinishTime' => [ + 'description' => 'The time the task was completed. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2024-12-07T10:53:45Z', + ], + 'Workflow' => [ + 'description' => 'The information about the workflow template.'."\n", + 'type' => 'object', + 'properties' => [ + 'WorkflowId' => [ + 'description' => 'The workflow ID.'."\n", + 'type' => 'string', + 'example' => '******2491c84dce913da9fe65******', + ], + 'Name' => [ + 'description' => 'The name of the workflow template.'."\n", + 'type' => 'string', + 'example' => 'example-workflow-***', + ], + 'Status' => [ + 'description' => 'The status of the workflow template.'."\n", + 'type' => 'string', + 'example' => 'Active', + ], + 'Type' => [ + 'description' => 'The type of the workflow template.'."\n", + 'type' => 'string', + 'example' => 'Common', + ], + 'CreateTime' => [ + 'description' => 'The creation time of the workflow template.'."\n", + 'type' => 'string', + 'example' => '2025-03-21T01:48:49Z', + ], + 'ModifiedTime' => [ + 'description' => 'The last modification time of the workflow template.'."\n", + 'type' => 'string', + 'example' => '2025-02-23 10:19:37 +0800', + ], + 'MediaType' => [ + 'description' => 'The source of the media file. Valid values:'."\n" + ."\n" + .'* OSS: an OSS object.'."\n" + .'* Media: a media asset.'."\n", + 'type' => 'string', + 'example' => 'OSS', + ], + ], + ], + 'UserData' => [ + 'description' => 'The custom data that was passed when the task was submitted.'."\n", + 'type' => 'string', + 'example' => '{"NotifyAddress":"http://xx.xx.xxx"}', + ], + ], + ], + ], + 'MaxResults' => [ + 'description' => 'The maximum number of entries returned in this response.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"TotalCount\\": 4,\\n \\"RequestId\\": \\"C0C02296-113C-5838-8FE9-8F3A32998DDC\\",\\n \\"NextToken\\": \\"****8EqYpQbZ6Eh7+Zz8DxVYoQ==\\",\\n \\"TaskList\\": [\\n {\\n \\"TaskId\\": \\"*****4c93d2f404f8345b16a965*****\\",\\n \\"TaskInput\\": \\"{\\\\\\\\\\\\\\"Type\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"Media\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"Media\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"****8b40884171efb0d9e7f7f458****\\\\\\\\\\\\\\"}\\",\\n \\"Status\\": \\"Succeed\\",\\n \\"CreateTime\\": \\"2024-07-15T09:45:48Z\\",\\n \\"FinishTime\\": \\"2024-12-07T10:53:45Z\\",\\n \\"Workflow\\": {\\n \\"WorkflowId\\": \\"******2491c84dce913da9fe65******\\",\\n \\"Name\\": \\"example-workflow-***\\",\\n \\"Status\\": \\"Active\\",\\n \\"Type\\": \\"Common\\",\\n \\"CreateTime\\": \\"2025-03-21T01:48:49Z\\",\\n \\"ModifiedTime\\": \\"2025-02-23 10:19:37 +0800\\",\\n \\"MediaType\\": \\"OSS\\"\\n },\\n \\"UserData\\": \\"{\\\\\\"NotifyAddress\\\\\\":\\\\\\"http://xx.xx.xxx\\\\\\"}\\"\\n }\\n ],\\n \\"MaxResults\\": 10\\n}","type":"json"}]', + 'title' => 'ListWorkflowTasks', + 'description' => 'This API only returns data from the last 90 days.'."\n", + ], + 'StartAIWorkflow' => [ + 'summary' => 'Initiates a workflow task for automated media processing based on a workflow template.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'paid', + 'abilityTreeNodes' => [ + 'FEATUREiceVYUZ7L', + ], + ], + 'parameters' => [ + [ + 'name' => 'WorkflowId', + 'in' => 'query', + 'schema' => [ + 'title' => '模板ID', + 'description' => 'The ID of the workflow template.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => '****3f44-f1f6-477e-9364-c5e6c49e****', + ], + ], + [ + 'name' => 'Inputs', + 'in' => 'query', + 'schema' => [ + 'title' => '模板名称', + 'description' => 'A JSON string containing the specific input parameters, such as information about the media assets, standard live streams, or RTC streams.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{'."\n" + .' "live_url": {'."\n" + .' "Url": "rtmp://test.com/test_app/test_stream?auth_key=test",'."\n" + .' "MaxIdleTime": 20'."\n" + .' },'."\n" + .' "source_language_id": "es"'."\n" + .'}', + ], + ], + [ + 'name' => 'UserData', + 'in' => 'query', + 'schema' => [ + 'description' => 'A user-defined parameter for passing custom metadata.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{'."\n" + .'"url":"https://test.com"'."\n" + .'}', + ], + ], + [ + 'name' => 'DispatchTag', + 'in' => 'query', + 'schema' => [ + 'description' => 'The tag for the task.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'default', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'TaskId' => [ + 'description' => 'The ID of the workflow task.'."\n", + 'type' => 'string', + 'example' => "\n" + .'********-266c-4bb8-b20c-6faa********', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"TaskId\\": \\"\\\\n********-266c-4bb8-b20c-6faa********\\"\\n}","type":"json"}]', + 'title' => 'StartAIWorkflow', + 'description' => '* You must specify a workflow template. To create one, go to the [Intelligent Media Services (IMS)](https://ims.console.aliyun.com/ai-workflow/template) console.'."\n", + 'requestParamsDescription' => 'The structure and required fields for the Inputs parameter are dynamically configured within the start node of the specific workflow template being used. Examples of common use cases:'."\n" + ."\n" + .'* Live translation:'."\n" + ."\n" + .'<!---->'."\n" + ."\n" + .' {'."\n" + .' "live_url": {'."\n" + .' "Url": "rtmp://test.com/test_app/test_stream?auth_key=test",'."\n" + .' "MaxIdleTime": 20'."\n" + .' },'."\n" + .' "source_language_id": "es"'."\n" + .' }'."\n" + ."\n" + .'* RTC subtitle translation:'."\n" + ."\n" + .'<!---->'."\n" + ."\n" + .' {'."\n" + .' "rtc": {'."\n" + .' "AppId": "xxx",'."\n" + .' "ChannelId": "rtcaitest1",'."\n" + .' "UserId": "userA"'."\n" + .' },'."\n" + .' "source_language_id": "zh",'."\n" + .' "push_app_id": "app_id",'."\n" + .' "push_channel_id": "channel_id",'."\n" + .' "push_uid": "user_id"'."\n" + .' }'."\n" + ."\n" + .'* Media processing:'."\n" + ."\n" + .'<!---->'."\n" + ."\n" + .' {'."\n" + .' "TaskInput":{'."\n" + .' "Type":"OSS",'."\n" + .' "Media": "oss://sashimi-cn-shanghai/test/test.flv"'."\n" + .' }'."\n" + .' }'."\n", + ], + 'StopAIWorkflowTask' => [ + 'summary' => 'Manually stops a workflow task.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceL4UDD6', + ], + ], + 'parameters' => [ + [ + 'name' => 'TaskId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the workflow task.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '********-266c-4bb8-b20c-6faa********', + ], + ], + ], + 'responses' => [ + 200 => [ + 'headers' => [], + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'TaskId' => [ + 'description' => 'The ID of the workflow task.'."\n", + 'type' => 'string', + 'example' => '********-266c-4bb8-b20c-6faa********', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"TaskId\\": \\"********-266c-4bb8-b20c-6faa********\\"\\n}","type":"json"}]', + 'title' => 'StopAIWorkflowTask', + 'description' => 'This operation is only used to stop workflow tasks in real-time scenarios such as live streaming and RTC. It cannot be used to stop tasks in offline scenarios.'."\n", + ], + 'GetAIWorkflowTask' => [ + 'summary' => 'Retrieves the details of a workflow task.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceVYUZ7L', + ], + ], + 'parameters' => [ + [ + 'name' => 'TaskId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the workflow task.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '********-266c-4bb8-b20c-6faa********', + ], + ], + ], + 'responses' => [ + 200 => [ + 'headers' => [], + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'WorkflowTask' => [ + 'description' => 'The information about the workflow task.'."\n", + 'type' => 'object', + 'properties' => [ + 'TaskId' => [ + 'description' => 'The ID of the workflow task.'."\n", + 'type' => 'string', + 'example' => '********-67fd-43aa-9cc1-3e7f********', + ], + 'Status' => [ + 'description' => 'The task state.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* running'."\n" + .'* stopped'."\n" + .'* failed'."\n" + .'* partial-succeeded'."\n" + .'* succeeded'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'running' => '', + 'stopped' => '', + 'failed' => '', + 'partial-succeeded' => '', + 'succeeded' => '', + ], + 'example' => 'succeeded', + ], + 'Inputs' => [ + 'description' => 'The input parameters of the workflow task.'."\n", + 'type' => 'string', + 'example' => '{\\"source_language_id\\":\\"en\\",\\"live_id\\":123,\\"live_url\\":{\\"url\\":\\"rtmp://test.com.cn/video/638d9088fe4f15ce\\"}}', + ], + 'CreateTime' => [ + 'description' => 'The time when the task was created. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2025-07-28T02:17:26Z', + ], + 'FinishTime' => [ + 'description' => 'The time when the task was complete. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2025-08-19T02:28:22Z', + ], + 'Workflow' => [ + 'description' => 'The workflow template information.'."\n", + 'type' => 'object', + 'properties' => [ + 'WorkflowId' => [ + 'description' => 'The ID of the workflow template.'."\n", + 'type' => 'string', + 'example' => '****3f44-f1f6-477e-9364-c5e6c49e****', + ], + 'Name' => [ + 'description' => 'The name of the workflow template.'."\n", + 'type' => 'string', + 'example' => 'RealtimeTranslation', + ], + 'Status' => [ + 'description' => 'Workflow template status. Valid values:'."\n" + ."\n" + .'* Draft'."\n" + .'* Published'."\n" + .'* Editing'."\n", + 'type' => 'string', + 'example' => 'Draft', + ], + 'Type' => [ + 'description' => 'The scenario type of the template.'."\n", + 'type' => 'string', + 'example' => 'Live', + ], + 'CreateTime' => [ + 'description' => 'The time when the template was created. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2025-08-20T01:35:04Z', + ], + 'ModifiedTime' => [ + 'description' => 'The time when the template was last modified. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2025-08-20T01:35:04Z', + ], + 'Version' => [ + 'description' => 'The template version.'."\n", + 'type' => 'string', + 'example' => '****ec0a-e3b9-40b1-abf2-6549d00e****', + ], + 'Graph' => [ + 'description' => 'The workflow\'s topological structure.'."\n", + 'type' => 'string', + 'example' => '{'."\n" + .'"nodes":[...],'."\n" + .'"edges":[...]'."\n" + .'}', + ], + ], + ], + 'NodeResults' => [ + 'description' => 'The results of the workflow nodes. The structure of this JSON varies based on the workflow\'s configuration.'."\n", + 'type' => 'string', + 'example' => '{...}', + ], + 'UserData' => [ + 'description' => 'The user-defined data.'."\n", + 'type' => 'string', + 'example' => '{"NotifyAddress":"http://xx.xx.xxx"}', + ], + 'Outputs' => [ + 'description' => 'The node output.'."\n", + 'type' => 'string', + 'example' => '{'."\n" + .'"result":"test"'."\n" + .'}', + ], + 'Version' => [ + 'description' => 'The version of the workflow template that was executed.'."\n", + 'type' => 'string', + 'example' => '****ec0a-e3b9-40b1-abf2-6549d00e****', + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"WorkflowTask\\": {\\n \\"TaskId\\": \\"********-67fd-43aa-9cc1-3e7f********\\",\\n \\"Status\\": \\"succeeded\\",\\n \\"Inputs\\": \\"{\\\\\\\\\\\\\\"source_language_id\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"en\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"live_id\\\\\\\\\\\\\\":123,\\\\\\\\\\\\\\"live_url\\\\\\\\\\\\\\":{\\\\\\\\\\\\\\"url\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"rtmp://test.com.cn/video/638d9088fe4f15ce\\\\\\\\\\\\\\"}}\\",\\n \\"CreateTime\\": \\"2025-07-28T02:17:26Z\\",\\n \\"FinishTime\\": \\"2025-08-19T02:28:22Z\\",\\n \\"Workflow\\": {\\n \\"WorkflowId\\": \\"****3f44-f1f6-477e-9364-c5e6c49e****\\",\\n \\"Name\\": \\"RealtimeTranslation\\",\\n \\"Status\\": \\"Draft\\",\\n \\"Type\\": \\"Live\\",\\n \\"CreateTime\\": \\"2025-08-20T01:35:04Z\\",\\n \\"ModifiedTime\\": \\"2025-08-20T01:35:04Z\\",\\n \\"Version\\": \\"****ec0a-e3b9-40b1-abf2-6549d00e****\\",\\n \\"Graph\\": \\"{\\\\n\\\\\\"nodes\\\\\\":[...],\\\\n\\\\\\"edges\\\\\\":[...]\\\\n}\\"\\n },\\n \\"NodeResults\\": \\"{...}\\",\\n \\"UserData\\": \\"{\\\\\\"NotifyAddress\\\\\\":\\\\\\"http://xx.xx.xxx\\\\\\"}\\",\\n \\"Outputs\\": \\"{\\\\n\\\\\\"result\\\\\\":\\\\\\"test\\\\\\"\\\\n}\\",\\n \\"Version\\": \\"****ec0a-e3b9-40b1-abf2-6549d00e****\\"\\n }\\n}","type":"json"}]', + 'title' => 'GetAIWorkflowTask', + ], + 'CreateMediaLiveInputSecurityGroup' => [ + 'summary' => 'Creates a security group in MediaLive.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '239700', + 'abilityTreeNodes' => [ + 'FEATUREiceQU6W9M', + ], + ], + 'parameters' => [ + [ + 'name' => 'Name', + 'in' => 'formData', + 'schema' => [ + 'title' => '安全组名称', + 'description' => 'The name of the security group. Letters, digits, hyphens (-), and underscores (\\_) are supported. The maximum length is 64 characters.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'mysg', + ], + ], + [ + 'name' => 'WhitelistRules', + 'in' => 'formData', + 'style' => 'json', + 'schema' => [ + 'title' => '安全组规则列表', + 'description' => 'The security group rules.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The IPv4 addresses that are allowed to push content to MediaLive. Specify IP addresses as CIDR blocks.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '10.1.1.0/24', + ], + 'required' => true, + 'example' => '["10.1.1.0/24", "11.11.11.11/0"]', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'SecurityGroupId' => [ + 'title' => '安全组ID', + 'description' => 'The ID of the security group.'."\n", + 'type' => 'string', + 'example' => 'SEGK5KA6KYKAWQQH', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"SecurityGroupId\\": \\"SEGK5KA6KYKAWQQH\\"\\n}","type":"json"}]', + 'title' => 'CreateMediaLiveInputSecurityGroup', + 'description' => '## QPS limit'."\n" + ."\n" + .'This operation can be called up to 50 times per second for each Alibaba Cloud account. Requests that exceed this limit are dropped and you may experience service interruptions. We recommend that you take note of this limit when you call this operation.', + ], + 'UpdateMediaLiveInputSecurityGroup' => [ + 'summary' => 'Modifies a security group created in MediaLive.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '239700', + 'abilityTreeNodes' => [ + 'FEATUREiceQU6W9M', + ], + ], + 'parameters' => [ + [ + 'name' => 'SecurityGroupId', + 'in' => 'formData', + 'schema' => [ + 'title' => '安全组ID', + 'description' => 'The ID of the security group.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'SEGK5KA6KYKAWQQH ', + ], + ], + [ + 'name' => 'Name', + 'in' => 'formData', + 'schema' => [ + 'title' => '安全组名称', + 'description' => 'The name of the security group. Letters, digits, hyphens (-), and underscores (\\_) are supported. It can be up to 64 characters in length.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'mysg', + ], + ], + [ + 'name' => 'WhitelistRules', + 'in' => 'formData', + 'style' => 'json', + 'schema' => [ + 'title' => '安全组规则列表', + 'description' => 'The security group rules.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The IPv4 addresses that are allowed to push content to MediaLive. Specify IP addresses as CIDR blocks.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '10.1.1.0/24', + ], + 'required' => true, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\"\\n}","type":"json"}]', + 'title' => 'UpdateMediaLiveInputSecurityGroup', + 'description' => '* You can modify a security group only when it is not associated with a MediaLive input.'."\n" + ."\n" + .'## QPS limit'."\n" + ."\n" + .'This operation can be called up to 50 times per second for each Alibaba Cloud account. Requests that exceed this limit are dropped and you may experience service interruptions. We recommend that you take note of this limit when you call this operation.', + ], + 'GetMediaLiveInputSecurityGroup' => [ + 'summary' => 'Queries the details of a security group in MediaLive.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '239700', + 'abilityTreeNodes' => [ + 'FEATUREiceQU6W9M', + ], + ], + 'parameters' => [ + [ + 'name' => 'SecurityGroupId', + 'in' => 'formData', + 'schema' => [ + 'title' => '安全组ID', + 'description' => 'The ID of the security group.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'SEGK5KA6KYKAWQQH', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '****63E8B7C7-4812-46AD-0FA56029AC86****', + ], + 'SecurityGroup' => [ + 'description' => 'The security group information.'."\n", + 'type' => 'object', + 'properties' => [ + 'SecurityGroupId' => [ + 'description' => 'The ID of the security group.'."\n", + 'type' => 'string', + 'example' => 'SEGK5KA6KYKAWQQH', + ], + 'Name' => [ + 'description' => 'The name of the security group.'."\n", + 'type' => 'string', + 'example' => 'mysg', + ], + 'WhitelistRules' => [ + 'description' => 'The security group rules.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The security group rule.'."\n", + 'type' => 'string', + 'example' => '10.1.1.0/24', + ], + ], + 'CreateTime' => [ + 'description' => 'The time when the security group was created. It follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2024-06-13T08:31:56Z', + ], + 'InputIds' => [ + 'description' => 'The IDs of the inputs associated with the security group.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The input ID.'."\n", + 'type' => 'string', + 'example' => 'SEGK5KA6KYKAWQQH', + ], + ], + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"****63E8B7C7-4812-46AD-0FA56029AC86****\\",\\n \\"SecurityGroup\\": {\\n \\"SecurityGroupId\\": \\"SEGK5KA6KYKAWQQH\\",\\n \\"Name\\": \\"mysg\\",\\n \\"WhitelistRules\\": [\\n \\"10.1.1.0/24\\"\\n ],\\n \\"CreateTime\\": \\"2024-06-13T08:31:56Z\\",\\n \\"InputIds\\": [\\n \\"SEGK5KA6KYKAWQQH\\"\\n ]\\n }\\n}","type":"json"}]', + 'title' => 'GetMediaLiveInputSecurityGroup', + 'description' => '## QPS limit'."\n" + ."\n" + .'This operation can be called up to 50 times per second for each Alibaba Cloud account. Requests that exceed this limit are dropped and you may experience service interruptions. We recommend that you take note of this limit when you call this operation.', + ], + 'ListMediaLiveInputSecurityGroups' => [ + 'summary' => 'Queries the security groups in MediaLive.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '239700', + 'abilityTreeNodes' => [ + 'FEATUREiceQU6W9M', + ], + ], + 'parameters' => [ + [ + 'name' => 'MaxResults', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The number of entries per page. Valid values: 1 to 100. Default value: If you do not specify this parameter or if you set a value smaller than 10, the default value is 10. If you set a value greater than 100, the default value is 100.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '10', + ], + ], + [ + 'name' => 'Skip', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The number of entries to be skipped in the query. If the number of entries you attempt to skip exceeds the number of entries that meet the condition, an empty list is returned.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '20', + ], + ], + [ + 'name' => 'NextToken', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The pagination token that is used in the next request to retrieve a new page of results. You do not need to specify this parameter for the first request. You must specify the token that is obtained from the previous query as the value of NextToken.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'caeba0bbb2be03f84eb48b699f0a4883', + ], + ], + [ + 'name' => 'SortOrder', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The sorting order of the security groups by creation time. Default value: asc. Valid values: desc and asc. asc indicates the ascending order, and desc indicates the descending order.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'desc', + ], + ], + [ + 'name' => 'Keyword', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The keyword of the query. You can perform a fuzzy search on security group ID or name.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '123', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '123e4567-e89b-12d3-a456-426614174000', + ], + 'SecurityGroups' => [ + 'title' => '安全组配置列表', + 'description' => 'The security groups.'."\n", + 'type' => 'array', + 'items' => [ + 'title' => '安全组配置', + 'description' => 'The information about a security group.'."\n", + 'type' => 'object', + 'properties' => [ + 'SecurityGroupId' => [ + 'title' => '安全组ID', + 'description' => 'The ID of the security group.'."\n", + 'type' => 'string', + 'example' => 'SEGK5KA6KYKAWQQH', + ], + 'Name' => [ + 'title' => '安全组名称', + 'description' => 'The security group name.'."\n", + 'type' => 'string', + 'example' => 'mysg', + ], + 'WhitelistRules' => [ + 'title' => '安全组规则列表', + 'description' => 'The security group rules.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The IPv4 addresses that are allowed to push content to MediaLive.'."\n", + 'type' => 'string', + 'example' => '10.1.1.0/24"', + ], + ], + 'CreateTime' => [ + 'description' => 'The time when the security group was created. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2024-12-03T06:56:42Z', + ], + 'InputIds' => [ + 'description' => 'The IDs of the inputs associated with the security group.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The input ID associated with the security group.'."\n", + 'type' => 'string', + 'example' => 'SEGK5KA6KYKAWQQH', + ], + ], + ], + ], + ], + 'NextToken' => [ + 'description' => 'A pagination token. It can be used in the next request to retrieve a new page of results.'."\n", + 'type' => 'string', + 'example' => 'caeba0bbb2be03f84eb48b699f0a4883', + ], + 'MaxResults' => [ + 'description' => 'The number of entries returned per page.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + ], + 'TotalCount' => [ + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '100', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"123e4567-e89b-12d3-a456-426614174000\\",\\n \\"SecurityGroups\\": [\\n {\\n \\"SecurityGroupId\\": \\"SEGK5KA6KYKAWQQH\\",\\n \\"Name\\": \\"mysg\\",\\n \\"WhitelistRules\\": [\\n \\"10.1.1.0/24\\\\\\"\\"\\n ],\\n \\"CreateTime\\": \\"2024-12-03T06:56:42Z\\",\\n \\"InputIds\\": [\\n \\"SEGK5KA6KYKAWQQH\\"\\n ]\\n }\\n ],\\n \\"NextToken\\": \\"caeba0bbb2be03f84eb48b699f0a4883\\",\\n \\"MaxResults\\": 10,\\n \\"TotalCount\\": 100\\n}","type":"json"}]', + 'title' => 'ListMediaLiveInputSecurityGroups', + 'description' => '## QPS limit'."\n" + ."\n" + .'This operation can be called up to 50 times per second for each Alibaba Cloud account. Requests that exceed this limit are dropped and you may experience service interruptions. We recommend that you take note of this limit when you call this operation.', + ], + 'DeleteMediaLiveInputSecurityGroup' => [ + 'summary' => 'Deletes a security group in MediaLive.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '239700', + 'abilityTreeNodes' => [ + 'FEATUREiceQU6W9M', + ], + ], + 'parameters' => [ + [ + 'name' => 'SecurityGroupId', + 'in' => 'formData', + 'schema' => [ + 'title' => '安全组ID', + 'description' => 'The ID of the security group.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'SEGK5KA6KYKAWQQH', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\"\\n}","type":"json"}]', + 'title' => 'DeleteMediaLiveInputSecurityGroup', + 'description' => '* You can only delete a security group not associated with an input.'."\n" + ."\n" + .'## QPS limit'."\n" + ."\n" + .'This operation can be called up to 50 times per second for each Alibaba Cloud account. Requests that exceed this limit are dropped and you may experience service interruptions. We recommend that you take note of this limit when you call this operation.', + ], + 'CreateMediaLiveInput' => [ + 'summary' => 'Creates a MediaLive input.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '239700', + 'abilityTreeNodes' => [ + 'FEATUREiceQU6W9M', + ], + ], + 'parameters' => [ + [ + 'name' => 'Name', + 'in' => 'formData', + 'schema' => [ + 'title' => '输入名称', + 'description' => 'The name of the input. Letters, digits, hyphens (-), and underscores (\\_) are supported. It can be up to 64 characters in length.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'myinput', + ], + ], + [ + 'name' => 'Type', + 'in' => 'formData', + 'schema' => [ + 'title' => '输入类型', + 'description' => 'The input type. Valid values: RTMP_PUSH, RTMP_PULL, SRT_PUSH, SRT_PULL, and MEDIA_CONNECT.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'RTMP_PUSH', + ], + ], + [ + 'name' => 'SecurityGroupIds', + 'in' => 'formData', + 'style' => 'json', + 'schema' => [ + 'title' => '绑定的安全组ID列表', + 'description' => 'The IDs of the security groups to be associated with the input. This parameter is required for PUSH inputs.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The ID of the security group.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'G6G4X5T4SZYPSTT5', + ], + 'required' => false, + 'example' => '["G6G4X5T4SZYPSTT5"]', + ], + ], + [ + 'name' => 'InputSettings', + 'in' => 'formData', + 'style' => 'json', + 'schema' => [ + 'title' => '输入设置', + 'description' => 'The input settings. An input can have up to two sources: primary and backup sources.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'StreamName' => [ + 'description' => 'The name of the pushed stream. This parameter is required for PUSH inputs. It can be up to 255 characters in length.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'mystream', + ], + 'SourceUrl' => [ + 'description' => 'The source URL from which the stream is pulled. This parameter is required for PULL inputs.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'rtmp://domain/app/stream', + ], + 'FlowId' => [ + 'description' => 'The ID of the flow from MediaConnect. This parameter is required when Type is set to MEDIA_CONNECT.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '******81-9693-40dc-bbab-db5e49******', + ], + 'FlowOutputName' => [ + 'description' => 'The output name of the MediaConnect flow. This parameter is required when Type is set to MEDIA_CONNECT.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'myFlowOutputName', + ], + 'SrtMaxBitrate' => [ + 'title' => 'SRT输入的最大码率', + 'type' => 'integer', + 'format' => 'int32', + ], + 'SrtLatency' => [ + 'title' => 'SRT输入的延迟', + 'type' => 'integer', + 'format' => 'int32', + ], + 'SrtPassphrase' => [ + 'title' => 'SRT输入的连接密码', + 'type' => 'string', + ], + 'SrtPbKeyLen' => [ + 'title' => 'SRT输入的密钥长度', + 'type' => 'integer', + 'format' => 'int32', + ], + ], + 'required' => false, + 'description' => '', + ], + 'required' => true, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'InputId' => [ + 'title' => '输入ID', + 'description' => 'The ID of the input.'."\n", + 'type' => 'string', + 'example' => 'SEGK5KA6KYKAWQQH', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"InputId\\": \\"SEGK5KA6KYKAWQQH\\"\\n}","type":"json"}]', + 'title' => 'CreateMediaLiveInput', + 'description' => '## QPS limit'."\n" + ."\n" + .'This operation can be called up to 50 times per second for each Alibaba Cloud account. Requests that exceed this limit are dropped and you may experience service interruptions. We recommend that you take note of this limit when you call this operation.', + ], + 'UpdateMediaLiveInput' => [ + 'summary' => 'Modifies an input of MediaLive.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '239700', + 'abilityTreeNodes' => [ + 'FEATUREiceQU6W9M', + ], + ], + 'parameters' => [ + [ + 'name' => 'InputId', + 'in' => 'formData', + 'schema' => [ + 'title' => '输入ID', + 'description' => 'The ID of the input.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'SEGK5KA6KYKAWQQH', + ], + ], + [ + 'name' => 'Name', + 'in' => 'formData', + 'schema' => [ + 'title' => '输入实例名称', + 'description' => 'The name of the input. Letters, digits, hyphens (-), and underscores (\\_) are supported. It can be up to 64 characters in length.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'myinput', + ], + ], + [ + 'name' => 'SecurityGroupIds', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'title' => '绑定的安全组ID列表', + 'description' => 'The IDs of the security groups to be associated with the input. This parameter is required for PUSH inputs.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The ID of the security group to be associated.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'G6G4X5T4SZYPSTT5', + ], + 'required' => false, + 'example' => '["G6G4X5T4SZYPSTT5"]', + ], + ], + [ + 'name' => 'InputSettings', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'title' => '输入配置', + 'description' => 'The input settings. An input can have up to two sources: primary and backup sources.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'FlowId' => [ + 'description' => 'The ID of the flow from MediaConnect. This parameter is required when Type is set to MEDIA_CONNECT.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '******81-9693-40dc-bbab-db5e49******', + ], + 'SourceUrl' => [ + 'description' => 'The source URL from which the stream is pulled. This parameter is required for PULL inputs.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'rtmp://domain/app/stream', + ], + 'StreamName' => [ + 'description' => 'The name of the pushed stream. This parameter is required for PUSH inputs. It can be up to 255 characters in length.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'mystream', + ], + 'SrtPassphrase' => [ + 'title' => 'SRT输入的连接密码', + 'type' => 'string', + ], + 'SrtMaxBitrate' => [ + 'title' => 'SRT输入的最大码率', + 'type' => 'integer', + 'format' => 'int32', + ], + 'FlowOutputName' => [ + 'description' => 'The output name of the MediaConnect flow. This parameter is required when Type is set to MEDIA_CONNECT.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'myFlowOutputName', + ], + 'SrtLatency' => [ + 'title' => 'SRT输入的延迟', + 'type' => 'integer', + 'format' => 'int32', + ], + 'SrtPbKeyLen' => [ + 'title' => 'SRT输入的密钥长度', + 'type' => 'integer', + 'format' => 'int32', + ], + ], + 'required' => false, + 'description' => '', + ], + 'required' => true, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '******3B-0E1A-586A-AC29-742247******', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******3B-0E1A-586A-AC29-742247******\\"\\n}","type":"json"}]', + 'title' => 'UpdateMediaLiveInput', + 'description' => '* You can modify an input only when it is not associated with a MediaLive channel.'."\n" + ."\n" + .'## QPS limit'."\n" + ."\n" + .'This operation can be called up to 50 times per second for each Alibaba Cloud account. Requests that exceed this limit are dropped and you may experience service interruptions. We recommend that you take note of this limit when you call this operation.', + ], + 'GetMediaLiveInput' => [ + 'summary' => 'Queries the details of a MediaLive input.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '239700', + 'abilityTreeNodes' => [ + 'FEATUREiceQU6W9M', + ], + ], + 'parameters' => [ + [ + 'name' => 'InputId', + 'in' => 'formData', + 'schema' => [ + 'title' => '输入ID', + 'description' => 'The ID of the input.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'SEGK5KA6KYKAWQQH', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'Input' => [ + 'title' => '输入配置', + 'description' => 'The input information.'."\n", + 'type' => 'object', + 'properties' => [ + 'InputId' => [ + 'title' => '输入ID', + 'description' => 'The ID of the input.'."\n", + 'type' => 'string', + 'example' => 'SEGK5KA6KYKAWQQH', + ], + 'Name' => [ + 'title' => '输入实例名称', + 'description' => 'The name of the input.'."\n", + 'type' => 'string', + 'example' => 'myinput', + ], + 'Type' => [ + 'title' => '输入类型', + 'description' => 'The input type.'."\n", + 'type' => 'string', + 'example' => 'RTMP_PUSH', + ], + 'InputInfos' => [ + 'title' => '输入信息列表', + 'description' => 'The input configurations.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'DestHost' => [ + 'title' => 'PUSH类型推流地址', + 'description' => 'The endpoint that the stream is pushed to. This parameter is returned for PUSH inputs.'."\n", + 'type' => 'string', + 'example' => 'rtmp://domain/app/stream', + ], + 'StreamName' => [ + 'title' => '流名称', + 'description' => 'The name of the pushed stream. This parameter is returned for PUSH inputs.'."\n", + 'type' => 'string', + 'example' => 'mystream', + ], + 'SourceUrl' => [ + 'title' => 'PULL类型拉流地址', + 'description' => 'The source URL where the stream is pulled from. This parameter is returned for PULL inputs.'."\n", + 'type' => 'string', + 'example' => 'rtmp://domain/app/stream', + ], + 'MonitorUrl' => [ + 'description' => 'The URL for input monitoring.'."\n", + 'type' => 'string', + 'example' => 'rtmp://domain/app/stream_for_monitor', + ], + 'FlowId' => [ + 'description' => 'The ID of the flow from MediaConnect.'."\n", + 'type' => 'string', + 'example' => '******81-9693-40dc-bbab-db5e49******', + ], + 'FlowOutputName' => [ + 'description' => 'The output name of the MediaConnect flow.'."\n", + 'type' => 'string', + 'example' => 'myFlowOutputName', + ], + 'SrtMaxBitrate' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'SrtLatency' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'SrtPassphrase' => [ + 'type' => 'string', + ], + 'SrtPbKeyLen' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + ], + 'description' => '', + ], + ], + 'CreateTime' => [ + 'description' => 'The time when the input was created. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2024-12-03T06:56:42Z', + ], + 'ChannelIds' => [ + 'description' => 'The IDs of the channels associated with the input.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The ID of the channel.'."\n", + 'type' => 'string', + 'example' => 'SEGK5KA6KYKAWQQH', + ], + ], + 'SecurityGroupIds' => [ + 'title' => '关联的安全组ID', + 'description' => 'The IDs of the security groups associated with the input.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The ID of the security group.'."\n", + 'type' => 'string', + 'example' => 'SEGK5KA6KYKAWQQH', + ], + ], + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"Input\\": {\\n \\"InputId\\": \\"SEGK5KA6KYKAWQQH\\",\\n \\"Name\\": \\"myinput\\",\\n \\"Type\\": \\"RTMP_PUSH\\",\\n \\"InputInfos\\": [\\n {\\n \\"DestHost\\": \\"rtmp://domain/app/stream\\",\\n \\"StreamName\\": \\"mystream\\",\\n \\"SourceUrl\\": \\"rtmp://domain/app/stream\\",\\n \\"MonitorUrl\\": \\"rtmp://domain/app/stream_for_monitor\\",\\n \\"FlowId\\": \\"******81-9693-40dc-bbab-db5e49******\\",\\n \\"FlowOutputName\\": \\"myFlowOutputName\\",\\n \\"SrtMaxBitrate\\": 3000000,\\n \\"SrtLatency\\": 1000,\\n \\"SrtPassphrase\\": \\"srtencryption\\",\\n \\"SrtPbKeyLen\\": 16\\n }\\n ],\\n \\"CreateTime\\": \\"2024-12-03T06:56:42Z\\",\\n \\"ChannelIds\\": [\\n \\"SEGK5KA6KYKAWQQH\\"\\n ],\\n \\"SecurityGroupIds\\": [\\n \\"SEGK5KA6KYKAWQQH\\"\\n ]\\n }\\n}","type":"json"}]', + 'title' => 'GetMediaLiveInput', + 'description' => '## QPS limit'."\n" + ."\n" + .'This operation can be called up to 50 times per second for each Alibaba Cloud account. Requests that exceed this limit are dropped and you may experience service interruptions. We recommend that you take note of this limit when you call this operation.', + ], + 'ListMediaLiveInputs' => [ + 'summary' => 'Queries MediaLive inputs.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '239700', + 'abilityTreeNodes' => [ + 'FEATUREiceQU6W9M', + ], + ], + 'parameters' => [ + [ + 'name' => 'MaxResults', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The number of entries per page. Valid values: 1 to 100. Default value: If you do not specify this parameter or if you set a value smaller than 10, the default value is 10. If you set a value greater than 100, the default value is 100.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '10', + ], + ], + [ + 'name' => 'Skip', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The number of entries to be skipped in the query. If the number of entries you attempt to skip exceeds the number of entries that meet the condition, an empty list is returned.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '20', + ], + ], + [ + 'name' => 'NextToken', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The pagination token that is used in the next request to retrieve a new page of results. You do not need to specify this parameter for the first request. You must specify the token that is obtained from the previous query as the value of NextToken.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'caeba0bbb2be03f84eb48b699f0a4883', + ], + ], + [ + 'name' => 'SortOrder', + 'in' => 'formData', + 'schema' => [ + 'title' => '', + 'description' => 'The sorting order of the inputs by creation time. Default value: asc. Valid values: desc and asc. asc indicates the ascending order, and desc indicates the descending order.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'desc', + ], + ], + [ + 'name' => 'Keyword', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The keyword of the query. You can perform a fuzzy search on input ID or name.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '123', + ], + ], + [ + 'name' => 'Types', + 'in' => 'formData', + 'schema' => [ + 'title' => '', + 'description' => 'The type of inputs you want to query. You can separate multiple input types with commas (,) in a JSON array.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '["RTMP_PUSH","SRT_PULL"]', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'Inputs' => [ + 'title' => '输入配置列表', + 'description' => 'The inputs.'."\n", + 'type' => 'array', + 'items' => [ + 'title' => '输入配置', + 'description' => 'The input configurations.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'title' => '输入类型', + 'description' => 'The input type.'."\n", + 'type' => 'string', + 'example' => 'RTMP_PUSH', + ], + 'CreateTime' => [ + 'description' => 'The time when the input was created. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2024-12-03T06:56:42Z', + ], + 'InputId' => [ + 'title' => '输入ID', + 'description' => 'The ID of the input.'."\n", + 'type' => 'string', + 'example' => 'SEGK5KA6KYKAWQQH', + ], + 'InputInfos' => [ + 'title' => '输入信息列表', + 'description' => 'The input configurations.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'FlowId' => [ + 'description' => 'The ID of the flow from MediaConnect.'."\n", + 'type' => 'string', + 'example' => '******81-9693-40dc-bbab-db5e49******', + ], + 'SourceUrl' => [ + 'title' => 'PULL类型拉流地址', + 'description' => 'The source URL where the stream is pulled from. This parameter is returned for PULL inputs.'."\n", + 'type' => 'string', + 'example' => 'rtmp://domain/app/stream', + ], + 'StreamName' => [ + 'title' => '流名称', + 'description' => 'The name of the pushed stream. This parameter is returned for PUSH inputs.'."\n", + 'type' => 'string', + 'example' => 'mystream', + ], + 'MonitorUrl' => [ + 'description' => 'The URL for input monitoring.'."\n", + 'type' => 'string', + 'example' => 'rtmp://domain/app/stream_for_monitor', + ], + 'SrtPassphrase' => [ + 'type' => 'string', + ], + 'SrtMaxBitrate' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'FlowOutputName' => [ + 'description' => 'The output name of the MediaConnect flow.'."\n", + 'type' => 'string', + 'example' => 'myFlowOutputName', + ], + 'SrtLatency' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'DestHost' => [ + 'title' => 'PUSH类型推流地址', + 'description' => 'The endpoint that the stream is pushed to. This parameter is returned for PUSH inputs.'."\n", + 'type' => 'string', + 'example' => 'rtmp://domain/app/stream', + ], + 'SrtPbKeyLen' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + ], + 'description' => '', + ], + ], + 'SecurityGroupIds' => [ + 'title' => '关联的安全组ID', + 'description' => 'The IDs of the security groups associated with the input.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The ID of the security group.'."\n", + 'type' => 'string', + 'example' => 'SEGK5KA6KYKAWQQH', + ], + ], + 'ChannelIds' => [ + 'description' => 'The IDs of the channels associated with the input.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The ID of the channel.'."\n", + 'type' => 'string', + 'example' => 'SEGK5KA6KYKAWQQH', + ], + ], + 'Name' => [ + 'title' => '输入实例名称', + 'description' => 'The name of the input.'."\n", + 'type' => 'string', + 'example' => 'myinput', + ], + ], + ], + ], + 'MaxResults' => [ + 'description' => 'The number of entries returned per page.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + ], + 'NextToken' => [ + 'description' => 'A pagination token. It can be used in the next request to retrieve a new page of results.'."\n", + 'type' => 'string', + 'example' => 'caeba0bbb2be03f84eb48b699f0a4883', + ], + 'TotalCount' => [ + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"Inputs\\": [\\n {\\n \\"Type\\": \\"RTMP_PUSH\\",\\n \\"CreateTime\\": \\"2024-12-03T06:56:42Z\\",\\n \\"InputId\\": \\"SEGK5KA6KYKAWQQH\\",\\n \\"InputInfos\\": [\\n {\\n \\"FlowId\\": \\"******81-9693-40dc-bbab-db5e49******\\",\\n \\"SourceUrl\\": \\"rtmp://domain/app/stream\\",\\n \\"StreamName\\": \\"mystream\\",\\n \\"MonitorUrl\\": \\"rtmp://domain/app/stream_for_monitor\\",\\n \\"SrtPassphrase\\": \\"srtencryption\\",\\n \\"SrtMaxBitrate\\": 3000000,\\n \\"FlowOutputName\\": \\"myFlowOutputName\\",\\n \\"SrtLatency\\": 1000,\\n \\"DestHost\\": \\"rtmp://domain/app/stream\\",\\n \\"SrtPbKeyLen\\": 16\\n }\\n ],\\n \\"SecurityGroupIds\\": [\\n \\"SEGK5KA6KYKAWQQH\\"\\n ],\\n \\"ChannelIds\\": [\\n \\"SEGK5KA6KYKAWQQH\\"\\n ],\\n \\"Name\\": \\"myinput\\"\\n }\\n ],\\n \\"MaxResults\\": 10,\\n \\"NextToken\\": \\"caeba0bbb2be03f84eb48b699f0a4883\\",\\n \\"TotalCount\\": 200\\n}","type":"json"}]', + 'title' => 'ListMediaLiveInputs', + 'description' => '## QPS limit'."\n" + ."\n" + .'This operation can be called up to 50 times per second for each Alibaba Cloud account. Requests that exceed this limit are dropped and you may experience service interruptions. We recommend that you take note of this limit when you call this operation.', + ], + 'DeleteMediaLiveInput' => [ + 'summary' => 'Deletes a MediaLive input.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '239700', + 'abilityTreeNodes' => [ + 'FEATUREiceQU6W9M', + ], + ], + 'parameters' => [ + [ + 'name' => 'InputId', + 'in' => 'formData', + 'schema' => [ + 'title' => '输入ID', + 'description' => 'The ID of the input.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'SEGK5KA6KYKAWQQH', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\"\\n}","type":"json"}]', + 'title' => 'DeleteMediaLiveInput', + 'description' => '* You can delete an input only when it is not associated with a MediaLive channel.'."\n" + ."\n" + .'## QPS limit'."\n" + ."\n" + .'This operation can be called up to 50 times per second for each Alibaba Cloud account. Requests that exceed this limit are dropped and you may experience service interruptions. We recommend that you take note of this limit when you call this operation.', + ], + 'CreateMediaLiveChannel' => [ + 'summary' => 'Creates a MediaLive channel.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '239700', + 'abilityTreeNodes' => [ + 'FEATUREiceQU6W9M', + ], + ], + 'parameters' => [ + [ + 'name' => 'Name', + 'in' => 'formData', + 'schema' => [ + 'title' => '安全组名称', + 'description' => 'The name of the channel. Letters, digits, hyphens (-), and underscores (\\_) are supported. It can be up to 64 characters in length.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'mych', + ], + ], + [ + 'name' => 'InputAttachments', + 'in' => 'formData', + 'style' => 'json', + 'schema' => [ + 'title' => '输入绑定设置', + 'description' => 'The associated inputs.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'InputId' => [ + 'title' => '绑定的输入ID', + 'description' => 'The ID of the associated input.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'myinput', + ], + 'LanguageName' => [ + 'description' => 'The tag that identifies the language of the RTMP input. It can be referenced by the output. The maximum length is 32 characters. Supported characters:'."\n" + ."\n" + .'* Unicode letters'."\n" + .'* Digits (0-9)'."\n" + .'* Underscore (\\_)'."\n" + .'* Hyphen (-)'."\n" + .'* Space (a space cannot be at the beginning or end)'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'English', + ], + 'AudioSelectors' => [ + 'title' => '音频选择器列表', + 'description' => 'The audio selectors.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Name' => [ + 'title' => '音频选择器名称', + 'description' => 'The name of the audio selector. Letters, digits, hyphens (-), and underscores (\\_) are supported. It can be up to 64 characters in length.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'myselector', + ], + 'AudioLanguageSelection' => [ + 'title' => '语言选择器', + 'description' => 'The audio language selection.'."\n", + 'type' => 'object', + 'properties' => [ + 'LanguageCode' => [ + 'title' => '语言代码', + 'description' => 'Enter a three-letter ISO 639-2 language code from within an audio source.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'eng', + ], + ], + 'required' => false, + ], + 'AudioPidSelection' => [ + 'title' => 'PID选择器', + 'description' => 'The audio PID selection.'."\n", + 'type' => 'object', + 'properties' => [ + 'Pid' => [ + 'title' => 'PID', + 'description' => 'Enter a specific PID from within a source.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '123', + ], + ], + 'required' => false, + ], + 'AudioTrackSelection' => [ + 'title' => '音轨选择器', + 'description' => 'The audio track selection.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'TrackId' => [ + 'title' => '音轨ID', + 'description' => 'Specify one or more audio tracks from within a source using Track ID.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1', + ], + ], + 'required' => false, + 'description' => '', + ], + 'required' => false, + ], + ], + 'required' => false, + 'description' => '', + ], + 'required' => false, + ], + ], + 'required' => false, + 'description' => '', + ], + 'required' => true, + ], + ], + [ + 'name' => 'OutputGroups', + 'in' => 'formData', + 'style' => 'json', + 'schema' => [ + 'title' => '输出组详细配置', + 'description' => 'The output groups.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Name' => [ + 'title' => '输出组名称', + 'description' => 'The name of the output group. Letters, digits, hyphens (-), and underscores (\\_) are supported. It can be up to 64 characters in length.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'group1', + ], + 'Type' => [ + 'title' => '输出组类型', + 'description' => 'The output group type. Only MediaPackage is supported.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'MediaPackage', + ], + 'Outputs' => [ + 'title' => '输出列表设置', + 'description' => 'The outputs in the output group.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Name' => [ + 'title' => '输出名称', + 'description' => 'The name of the output. Letters, digits, hyphens (-), and underscores (\\_) are supported. It can be up to 64 characters in length.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'output1', + ], + 'MediaType' => [ + 'title' => '输出的媒体类型。0:音视频,1:纯音频,2:纯视频。', + 'description' => 'The media type of the output. Valid values:'."\n" + ."\n" + .'* 0: Audio and Video.'."\n" + .'* 1: Audio. If you set the value to 1, you cannot reference VideoSettings.'."\n" + .'* 2: Video. If you set the value to 2, you cannot reference AudioSettings.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '0', + ], + 'MediaPackageOutputSetting' => [ + 'title' => '输出组类型为MediaPackage时的设置', + 'description' => 'The settings of the output delivered to MediaPackage.'."\n", + 'type' => 'object', + 'properties' => [ + 'NameModifier' => [ + 'title' => 'manifest后缀', + 'description' => 'The manifest name modifier. The child manifests include this modifier in their M3U8 file names. Letters, digits, hyphens (-), and underscores (\\_) are supported. The maximum length is 40 characters.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '480p', + ], + 'AudioGroupId' => [ + 'title' => 'manifest音频组id设置', + 'description' => 'The manifest audio group ID. To associate several audio tracks into one group, assign the same audio group ID. Viewers can select a track as needed. Letters, digits, hyphens (-), and underscores (\\_) are supported. It can be up to 40 characters in length.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'audiogroup', + ], + ], + 'required' => false, + ], + 'VideoSettingName' => [ + 'title' => '引用的视频设置名称', + 'description' => 'The name of the referenced VideoSettings.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'myVideo1', + ], + 'AudioSettingNames' => [ + 'title' => '引用的音频设置名称', + 'description' => 'The referenced AudioSettings.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The name of the referenced AudioSettings.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'myAudio1', + 'title' => '', + ], + 'required' => false, + ], + ], + 'required' => false, + 'description' => '', + ], + 'required' => true, + ], + 'MediaPackageGroupSetting' => [ + 'title' => 'MediaPackage输出组设置', + 'description' => 'The MediaPackage destination.'."\n", + 'type' => 'object', + 'properties' => [ + 'GroupName' => [ + 'title' => 'MediaPackage的GroupName', + 'description' => 'GroupName in MediaPackage.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'myPackageGroup', + ], + 'ChannelName' => [ + 'title' => 'MediaPackage的ChannelName', + 'description' => 'ChannelName in MediaPackage.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'myPackageChannel', + ], + ], + 'required' => false, + ], + ], + 'required' => false, + 'description' => '', + ], + 'required' => true, + ], + ], + [ + 'name' => 'AudioSettings', + 'in' => 'formData', + 'style' => 'json', + 'schema' => [ + 'title' => '音频设置', + 'description' => 'The audio settings.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Name' => [ + 'title' => '音频设置名称', + 'description' => 'The name of the audio settings. Letters, digits, hyphens (-), and underscores (\\_) are supported. It can be up to 64 characters in length.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'audio1', + ], + 'AudioSelectorName' => [ + 'title' => '音频选择器名称', + 'description' => 'The name of the audio selector.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'a1', + ], + 'LanguageCode' => [ + 'title' => '语言代码', + 'description' => 'Enter a three-letter ISO 639-2 language code. If the audio track selected by the audio selector has a language code, the language code specified in the audio selector is used. If the selected audio track does not have a language code, or if the audio selector cannot find a track that matches its criteria, this language code is used.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'eng', + ], + 'LanguageName' => [ + 'title' => 'audio类型m3u8切片的名称', + 'description' => 'The tag that identifies the language of the RTMP input. It can be referenced by the output. The maximum length is 32 characters. Supported characters:'."\n" + ."\n" + .'* Unicode letters'."\n" + .'* Digits (0-9)'."\n" + .'* Underscore (\\_)'."\n" + .'* Hyphen (-)'."\n" + .'* Space (a space cannot be at the beginning or end)'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'English', + ], + 'AudioCodec' => [ + 'title' => '音频编码类型', + 'description' => 'The audio codec. If it is not specified, the source specification is used. Valid values: aac and libfdk_aac.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'libfdk_aac', + ], + 'AudioCodecSetting' => [ + 'title' => '音频编码设置', + 'description' => 'The audio encoding settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'Profile' => [ + 'title' => '音频编码级别', + 'description' => 'The audio codec profile. When AudioCodec is set to aac, AAC-LOW and AAC-MAIN are supported. When AudioCodec is set to libfdk_aac, AAC-LOW, AAC-HE, and AAC-HEV2 are supported.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'AAC-LOW', + ], + 'Bitrate' => [ + 'title' => '音频比特率', + 'description' => 'The audio bitrate. Unit: bit/s. Valid values: 8000 to 1000000. The value must be divisible by 1000.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '200000', + ], + 'SampleRate' => [ + 'title' => '音频采样率', + 'description' => 'The audio sample rate. Unit: Hz. Valid values: 22050, 32000, 44100, 48000, and 96000.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '44100', + ], + ], + 'required' => false, + ], + ], + 'required' => false, + 'description' => '', + ], + 'required' => false, + ], + ], + [ + 'name' => 'VideoSettings', + 'in' => 'formData', + 'style' => 'json', + 'schema' => [ + 'title' => '视频设置', + 'description' => 'The video settings.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Name' => [ + 'title' => '视频设置名称', + 'description' => 'The name of the video settings. Letters, digits, hyphens (-), and underscores (\\_) are supported. It can be up to 64 characters in length.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'video1', + ], + 'Width' => [ + 'title' => '分辨率宽', + 'description' => 'The width of the output. If you set it to 0 or leave it empty, the width automatically adapts to the specified height to maintain the original aspect ratio.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* For regular transcoding, the larger dimension cannot exceed 3840 px, and the smaller one cannot exceed 2160 px.'."\n" + .'* For Narrowband HD™ transcoding, the larger dimension cannot exceed 1920 px, and the smaller one cannot exceed 1080 px.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1280', + ], + 'Height' => [ + 'title' => '分辨率高', + 'description' => 'The height of the output. If you set it to 0 or leave it empty, the height automatically adapts to the specified width to maintain the original aspect ratio.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* For regular transcoding, the larger dimension cannot exceed 3840 px, and the smaller one cannot exceed 2160 px.'."\n" + .'* For Narrowband HD™ transcoding, the larger dimension cannot exceed 1920 px, and the smaller one cannot exceed 1080 px.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '720', + ], + 'VideoCodec' => [ + 'title' => '视频编码类型', + 'description' => 'The video codec. Valid values: H264 and H265.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'H264', + ], + 'VideoCodecSetting' => [ + 'title' => '视频编码设置', + 'description' => 'The video encoding settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'Rate' => [ + 'title' => '视频编码速率设置', + 'description' => 'The video encoding rate. If it is not specified, the source specification is used.'."\n", + 'type' => 'object', + 'properties' => [ + 'Bitrate' => [ + 'title' => '视频比特率', + 'description' => 'The video bitrate. Unit: bit/s. If you set it to 0 or leave it empty, the source specification is used. Valid values: 50000 to 6000000. The value must be divisible by 1000.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '2500000', + ], + 'RateControlMode' => [ + 'title' => '视频编码码控规则', + 'description' => 'The bitrate control mode. Valid values: CBR, ABR, and VBR.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'ABR', + ], + 'MaxBitrate' => [ + 'title' => '视频编码最大比特率', + 'description' => 'The maximum bitrate. Unit: bit/s. Valid values: 100000 to 6000000. The value must be divisible by 1000.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '6000000', + ], + 'BufferSize' => [ + 'title' => '视频编码缓冲区大小', + 'description' => 'The video buffer size. Unit: bit/s. Valid values: 100000 to 6000000. The value must be divisible by 1000.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '6000000', + ], + ], + 'required' => false, + ], + 'Framerate' => [ + 'title' => '视频帧率设置', + 'description' => 'The frame rate. If it is not specified, the source specification is used.'."\n", + 'type' => 'object', + 'properties' => [ + 'FramerateControl' => [ + 'title' => '视频帧率设置模式', + 'description' => 'The frame rate mode. Valid values: SPECIFIED (fixed frame rate) and FROM_SOURCE (use source specification).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'SPECIFIED', + ], + 'FramerateNumerator' => [ + 'title' => '视频帧率分子', + 'description' => 'The numerator of the fixed frame rate. The parameter is required when FramerateControl is set to SPECIFIED. Valid values: 1 to 60. The numerator must be divisible by the denominator.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '25', + ], + 'FramerateDenominator' => [ + 'title' => '视频帧率分母', + 'description' => 'The denominator of the fixed frame rate. The parameter is required when FramerateControl is set to SPECIFIED. Valid values: 1 to 60. The numerator must be divisible by the denominator.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + 'required' => false, + ], + 'Gop' => [ + 'title' => '视频GOP设置', + 'description' => 'The GOP setting. If it is not specified, the source specification is used.'."\n", + 'type' => 'object', + 'properties' => [ + 'GopSizeUnits' => [ + 'title' => '视频GOP长度单位', + 'description' => 'The GOP size unit. Valid values: FRAMES and SECONDS.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'FRAMES', + ], + 'GopSize' => [ + 'title' => '视频GOP大小', + 'description' => 'The GOP size. When GopSizeUnits is set to SECONDS, the value range is from 1 to 20. When GopSizeUnits is set to FRAMES, the value range is from 1 to 3000.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '90', + ], + 'BframesNum' => [ + 'title' => 'B帧数', + 'description' => 'The number of B frames. Valid values: 1 to 3.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '3', + ], + ], + 'required' => false, + ], + 'CodecDetail' => [ + 'title' => '视频编码详情设置', + 'description' => 'The video encoding settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'Profile' => [ + 'title' => '视频编码配置', + 'description' => 'The H.264 profile. Valid values: BASELINE, HIGH, and MAIN. Default value: MAIN. The parameter takes effect only when the codec is H.264.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'MAIN', + ], + 'Level' => [ + 'title' => '视频编码级别', + 'description' => 'The video encoding level. It is not supported yet.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'H264_LEVEL_AUTO', + ], + ], + 'required' => false, + ], + ], + 'required' => false, + ], + 'VideoCodecType' => [ + 'title' => '视频转码方式(普通转码、窄带高清转码等)', + 'description' => 'The video transcoding method. Valid values:'."\n" + ."\n" + .'* NORMAL: regular transcoding'."\n" + .'* NBHD: Narrowband HD™ transcoding'."\n" + ."\n" + .'If not specified, regular transcoding is used by default.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'NORMAL', + ], + ], + 'required' => false, + 'description' => '', + ], + 'required' => false, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'ChannelId' => [ + 'title' => '频道ID', + 'description' => 'The ID of the channel.'."\n", + 'type' => 'string', + 'example' => 'SEGK5KA6KYKAWQQH', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"ChannelId\\": \\"SEGK5KA6KYKAWQQH\\"\\n}","type":"json"}]', + 'title' => 'CreateMediaLiveChannel', + 'description' => '## QPS limit'."\n" + ."\n" + .'This operation can be called up to 50 times per second for each Alibaba Cloud account. Requests that exceed this limit are dropped and you may experience service interruptions. We recommend that you take note of this limit when you call this operation.', + ], + 'UpdateMediaLiveChannel' => [ + 'summary' => 'Modifies a MediaLive channel.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '239700', + 'abilityTreeNodes' => [ + 'FEATUREiceQU6W9M', + ], + ], + 'parameters' => [ + [ + 'name' => 'ChannelId', + 'in' => 'formData', + 'schema' => [ + 'title' => '频道ID', + 'description' => 'The ID of the channel.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'SEGK5KA6KYKAWQQH', + ], + ], + [ + 'name' => 'Name', + 'in' => 'formData', + 'schema' => [ + 'title' => '安全组名称', + 'description' => 'The name of the channel. Letters, digits, hyphens (-), and underscores (\\_) are supported. It can be up to 64 characters in length.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'mych', + ], + ], + [ + 'name' => 'InputAttachments', + 'in' => 'formData', + 'style' => 'json', + 'schema' => [ + 'title' => '输入绑定设置', + 'description' => 'The inputs associated with the channel.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'InputId' => [ + 'title' => '绑定的输入ID', + 'description' => 'The ID of the associated input.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'myinput', + ], + 'LanguageName' => [ + 'description' => 'The tag that identifies the language of the RTMP input. It can be referenced by the output. The maximum length is 32 characters. Supported characters:'."\n" + ."\n" + .'* Unicode letters'."\n" + .'* Digits (0-9)'."\n" + .'* Underscore (\\_)'."\n" + .'* Hyphen (-)'."\n" + .'* Space (a space cannot be at the beginning or end)'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'English', + ], + 'AudioSelectors' => [ + 'title' => '音频选择器列表', + 'description' => 'The audio selectors.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Name' => [ + 'title' => '音频选择器名称', + 'description' => 'The name of the audio selector. Letters, digits, hyphens (-), and underscores (\\_) are supported. It can be up to 64 characters in length.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'myselector', + ], + 'AudioLanguageSelection' => [ + 'title' => '语言选择器', + 'description' => 'The audio language selection.'."\n", + 'type' => 'object', + 'properties' => [ + 'LanguageCode' => [ + 'title' => '语言代码', + 'description' => 'Enter a three-letter ISO 639-2 language code from within an audio source.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'eng', + ], + ], + 'required' => false, + ], + 'AudioPidSelection' => [ + 'title' => 'PID选择器', + 'description' => 'The audio PID selection.'."\n", + 'type' => 'object', + 'properties' => [ + 'Pid' => [ + 'title' => 'PID', + 'description' => 'Enter a specific PID from within a source.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '123', + ], + ], + 'required' => false, + ], + 'AudioTrackSelection' => [ + 'title' => '音轨选择器', + 'description' => 'The audio track selection.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'TrackId' => [ + 'title' => '音轨ID', + 'description' => 'Specify one or more audio tracks from within a source using Track ID.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1', + ], + ], + 'required' => false, + 'description' => '', + ], + 'required' => false, + ], + ], + 'required' => false, + 'description' => '', + ], + 'required' => false, + ], + ], + 'required' => false, + 'description' => '', + ], + 'required' => true, + ], + ], + [ + 'name' => 'OutputGroups', + 'in' => 'formData', + 'style' => 'json', + 'schema' => [ + 'title' => '输出组详细配置', + 'description' => 'The output groups.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Name' => [ + 'title' => '输出组名称', + 'description' => 'The name of the output group. Letters, digits, hyphens (-), and underscores (\\_) are supported. It can be up to 64 characters in length.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'group1', + ], + 'Type' => [ + 'title' => '输出组类型', + 'description' => 'The output group type. Only MediaPackage is supported.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'MediaPackage', + ], + 'Outputs' => [ + 'title' => '输出列表设置', + 'description' => 'The outputs in the output group.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Name' => [ + 'title' => '输出名称', + 'description' => 'The name of the output. Letters, digits, hyphens (-), and underscores (\\_) are supported. It can be up to 64 characters in length.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'output1', + ], + 'MediaType' => [ + 'title' => '输出的媒体类型。0:音视频,1:纯音频,2:纯视频。', + 'description' => 'The media type of the output. Valid values:'."\n" + ."\n" + .'* 0: Audio and Video'."\n" + .'* 1: Audio If you set the value to 1, you cannot reference VideoSettings.'."\n" + .'* 2: Video. If you set the value to 2, you cannot reference AudioSettings.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '0', + ], + 'MediaPackageOutputSetting' => [ + 'title' => '输出组类型为MediaPackage时的设置', + 'description' => 'The settings of the output delivered to MediaPackage.'."\n", + 'type' => 'object', + 'properties' => [ + 'NameModifier' => [ + 'title' => 'manifest后缀', + 'description' => 'The manifest name modifier. The child manifests include this modifier in their M3U8 file names. Letters, digits, hyphens (-), and underscores (\\_) are supported. The maximum length is 40 characters.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '480p', + ], + 'AudioGroupId' => [ + 'title' => 'manifest音频组id设置', + 'description' => 'The manifest audio group ID. To associate several audio tracks into one group, assign the same audio group ID. Viewers can select a track as needed. Letters, digits, hyphens (-), and underscores (\\_) are supported. It can be up to 40 characters in length.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'audiogroup', + ], + ], + 'required' => false, + ], + 'VideoSettingName' => [ + 'title' => '引用的视频设置名称', + 'description' => 'The name of the referenced VideoSettings.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'myVideo1', + ], + 'AudioSettingNames' => [ + 'title' => '引用的音频设置名称', + 'description' => 'The referenced AudioSettings.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The name of the referenced AudioSettings.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'myAudio1', + ], + 'required' => false, + ], + ], + 'required' => false, + 'description' => '', + ], + 'required' => true, + ], + 'MediaPackageGroupSetting' => [ + 'title' => 'MediaPackage输出组设置', + 'description' => 'The MediaPackage destination.'."\n", + 'type' => 'object', + 'properties' => [ + 'GroupName' => [ + 'title' => 'MediaPackage的GroupName', + 'description' => 'GroupName in MediaPackage.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'myPackageGroup', + ], + 'ChannelName' => [ + 'title' => 'MediaPackage的ChannelName', + 'description' => 'ChannelName in MediaPackage.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'myPackageChannel', + ], + ], + 'required' => false, + ], + ], + 'required' => false, + 'description' => '', + ], + 'required' => true, + ], + ], + [ + 'name' => 'AudioSettings', + 'in' => 'formData', + 'style' => 'json', + 'schema' => [ + 'title' => '音频设置', + 'description' => 'The audio settings.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Name' => [ + 'title' => '音频设置名称', + 'description' => 'The name of the audio settings. Letters, digits, hyphens (-), and underscores (\\_) are supported. It can be up to 64 characters in length.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'audio1', + ], + 'AudioSelectorName' => [ + 'title' => '音频选择器名称', + 'description' => 'The name of the audio selector.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'a1', + ], + 'LanguageCode' => [ + 'title' => '语言代码', + 'description' => 'Enter a three-letter ISO 639-2 language code. If the audio track selected by the audio selector has a language code, the language code specified in the audio selector is used. If the selected audio track does not have a language code, or if the audio selector cannot find a track that matches its criteria, this language code is used.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'eng', + ], + 'LanguageName' => [ + 'title' => 'audio类型m3u8切片的名称', + 'description' => 'The tag that identifies the language of the RTMP input. It can be referenced by the output. The maximum length is 32 characters. Supported characters:'."\n" + ."\n" + .'* Unicode letters'."\n" + .'* Digits (0-9)'."\n" + .'* Underscore (\\_)'."\n" + .'* Hyphen (-)'."\n" + .'* Space (a space cannot be at the beginning or end)'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'English', + ], + 'AudioCodec' => [ + 'title' => '音频编码类型', + 'description' => 'The audio codec. If it is not specified, the source specification is used. Valid values: aac and libfdk_aac.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'libfdk_aac', + ], + 'AudioCodecSetting' => [ + 'title' => '音频编码设置', + 'description' => 'The audio encoding settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'Profile' => [ + 'title' => '音频编码级别', + 'description' => 'The audio codec profile. When AudioCodec is set to aac, AAC-LOW and AAC-MAIN are supported. When AudioCodec is set to libfdk_aac, AAC-LOW, AAC-HE, and AAC-HEV2 are supported.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'AAC-LOW', + ], + 'Bitrate' => [ + 'title' => '音频比特率', + 'description' => 'The audio bitrate. Unit: bit/s. Valid values: 8000 to 1000000. The value must be divisible by 1000.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '200000', + ], + 'SampleRate' => [ + 'title' => '音频采样率', + 'description' => 'The audio sample rate. Unit: Hz. Valid values: 22050, 32000, 44100, 48000, and 96000.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '44100', + ], + ], + 'required' => false, + ], + ], + 'required' => false, + 'description' => '', + ], + 'required' => false, + ], + ], + [ + 'name' => 'VideoSettings', + 'in' => 'formData', + 'style' => 'json', + 'schema' => [ + 'title' => '视频设置', + 'description' => 'The video settings.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Name' => [ + 'title' => '视频设置名称', + 'description' => 'The name of the video settings. Letters, digits, hyphens (-), and underscores (\\_) are supported. It can be up to 64 characters in length.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'video1', + ], + 'Width' => [ + 'title' => '分辨率宽', + 'description' => 'The width of the output. If you set it to 0 or leave it empty, the width automatically adapts to the specified height to maintain the original aspect ratio.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* For regular transcoding, the larger dimension cannot exceed 3840 px, and the smaller one cannot exceed 2160 px.'."\n" + .'* For Narrowband HD™ transcoding, the larger dimension cannot exceed 1920 px, and the smaller one cannot exceed 1080 px.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1280', + ], + 'Height' => [ + 'title' => '分辨率高', + 'description' => 'The height of the output. If you set it to 0 or leave it empty, the height automatically adapts to the specified width to maintain the original aspect ratio.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* For regular transcoding, the larger dimension cannot exceed 3840 px, and the smaller one cannot exceed 2160 px.'."\n" + .'* For Narrowband HD™ transcoding, the larger dimension cannot exceed 1920 px, and the smaller one cannot exceed 1080 px.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '720', + ], + 'VideoCodec' => [ + 'title' => '视频编码类型', + 'description' => 'The video codec. Valid values: H264 and H265.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'H264', + ], + 'VideoCodecSetting' => [ + 'title' => '视频编码设置', + 'description' => 'The video encoding settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'Rate' => [ + 'title' => '视频编码速率设置', + 'description' => 'The video encoding rate. If it is not specified, the source specification is used.'."\n", + 'type' => 'object', + 'properties' => [ + 'Bitrate' => [ + 'title' => '视频比特率', + 'description' => 'The video bitrate. Unit: bit/s. If you set it to 0 or leave it empty, the source specification is used. Valid values: 50000 to 6000000. The value must be divisible by 1000.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '2500000', + ], + 'RateControlMode' => [ + 'title' => '视频编码码控规则', + 'description' => 'The bitrate control mode. Valid values: CBR, ABR, and VBR.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'ABR', + ], + 'MaxBitrate' => [ + 'title' => '视频编码最大比特率', + 'description' => 'The maximum bitrate. Unit: bit/s. Valid values: 100000 to 6000000. The value must be divisible by 1000.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '6000000', + ], + 'BufferSize' => [ + 'title' => '视频编码缓冲区大小', + 'description' => 'The video buffer size. Unit: bit/s. Valid values: 100000 to 6000000. The value must be divisible by 1000.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '6000000', + ], + ], + 'required' => false, + ], + 'Framerate' => [ + 'title' => '视频帧率设置', + 'description' => 'The frame rate. If it is not specified, the source specification is used.'."\n", + 'type' => 'object', + 'properties' => [ + 'FramerateControl' => [ + 'title' => '视频帧率设置模式', + 'description' => 'The frame rate mode. Valid values: SPECIFIED (fixed frame rate) and FROM_SOURCE (use source specification).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'SPECIFIED', + ], + 'FramerateNumerator' => [ + 'title' => '视频帧率分子', + 'description' => 'The numerator of the fixed frame rate. The parameter is required when FramerateControl is set to SPECIFIED. Valid values: 1 to 60. The numerator must be divisible by the denominator.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '25', + ], + 'FramerateDenominator' => [ + 'title' => '视频帧率分母', + 'description' => 'The denominator of the fixed frame rate. The parameter is required when FramerateControl is set to SPECIFIED. Valid values: 1 to 60. The numerator must be divisible by the denominator.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + 'required' => false, + ], + 'Gop' => [ + 'title' => '视频GOP设置', + 'description' => 'The GOP setting. If it is not specified, the source specification is used.'."\n", + 'type' => 'object', + 'properties' => [ + 'GopSizeUnits' => [ + 'title' => '视频GOP长度单位', + 'description' => 'The GOP size unit. Valid values: FRAMES and SECONDS.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'FRAMES', + ], + 'GopSize' => [ + 'title' => '视频GOP大小', + 'description' => 'The GOP size. When GopSizeUnits is set to SECONDS, the value range is from 1 to 20. When GopSizeUnits is set to FRAMES, the value range is from 1 to 3000.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '90', + ], + 'BframesNum' => [ + 'title' => 'B帧数', + 'description' => 'The number of B frames. Valid values: 1 to 3.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '3', + ], + ], + 'required' => false, + ], + 'CodecDetail' => [ + 'title' => '视频编码详情设置', + 'description' => 'The video encoding settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'Profile' => [ + 'title' => '视频编码配置', + 'description' => 'The H.264 profile. Valid values: BASELINE, HIGH, and MAIN. Default value: MAIN. The parameter takes effect only when the codec is H.264.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'MAIN', + ], + 'Level' => [ + 'title' => '视频编码级别', + 'description' => 'The video encoding level. It is not supported yet.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'H264_LEVEL_AUTO', + ], + ], + 'required' => false, + ], + ], + 'required' => false, + ], + 'VideoCodecType' => [ + 'title' => '视频转码方式(普通转码、窄带高清转码等)', + 'description' => 'The video transcoding method. Valid values:'."\n" + ."\n" + .'* NORMAL: regular transcoding'."\n" + .'* NBHD: Narrowband HD™ transcoding'."\n" + ."\n" + .'If not specified, regular transcoding is used by default.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'NORMAL', + ], + ], + 'required' => false, + 'description' => '', + ], + 'required' => false, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\"\\n}","type":"json"}]', + 'title' => 'UpdateMediaLiveChannel', + 'description' => '* You can modify a MediaLive channel only when it is not running.'."\n" + ."\n" + .'## QPS limit'."\n" + ."\n" + .'This operation can be called up to 50 times per second for each Alibaba Cloud account. Requests that exceed this limit are dropped and you may experience service interruptions. We recommend that you take note of this limit when you call this operation.', + ], + 'GetMediaLiveChannel' => [ + 'summary' => 'Queries a MediaLive channel.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '239700', + 'abilityTreeNodes' => [ + 'FEATUREiceQU6W9M', + ], + ], + 'parameters' => [ + [ + 'name' => 'ChannelId', + 'in' => 'formData', + 'schema' => [ + 'title' => '频道ID', + 'description' => 'The ID of the channel.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'SEGK5KA6KYKAWQQH', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'Channel' => [ + 'title' => '频道配置', + 'description' => 'The channel information.'."\n", + 'type' => 'object', + 'properties' => [ + 'ChannelId' => [ + 'title' => '频道ID', + 'description' => 'The ID of the channel.'."\n", + 'type' => 'string', + 'example' => 'SEGK5KA6KYKAWQQH', + ], + 'Name' => [ + 'title' => '频道名称', + 'description' => 'The channel name.'."\n", + 'type' => 'string', + 'example' => 'mych', + ], + 'State' => [ + 'title' => '频道状态', + 'description' => 'The state of the channel. Valid values: IDLE, STARTING, RUNNING, RECOVERING, and STOPPING.'."\n", + 'type' => 'string', + 'example' => 'IDLE', + ], + 'InputAttachments' => [ + 'title' => '输入绑定设置', + 'description' => 'The inputs associated with the channel.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'InputId' => [ + 'title' => '绑定的输入ID', + 'description' => 'The ID of the associated input.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'SEGK5KA6KYKAWQQH', + ], + 'InputName' => [ + 'title' => '输入名称', + 'description' => 'The name of the input.'."\n", + 'type' => 'string', + 'example' => 'myinput', + ], + 'LanguageName' => [ + 'title' => '仅rtmp类型输入有效,表示output使用的Name标签', + 'description' => 'The language name.'."\n", + 'type' => 'string', + 'example' => 'eng', + ], + 'AudioSelectors' => [ + 'title' => '音频选择器列表', + 'description' => 'The audio selectors.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Name' => [ + 'title' => '音频选择器名称', + 'description' => 'The name of the audio selector.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'myselector', + ], + 'AudioLanguageSelection' => [ + 'title' => '语言选择器', + 'description' => 'The audio language selection.'."\n", + 'type' => 'object', + 'properties' => [ + 'LanguageCode' => [ + 'title' => '语言代码', + 'description' => 'A three-letter ISO 639-2 language code from within an audio source.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'eng', + ], + ], + ], + 'AudioPidSelection' => [ + 'title' => 'PID选择器', + 'description' => 'The audio PID selection.'."\n", + 'type' => 'object', + 'properties' => [ + 'Pid' => [ + 'title' => 'PID', + 'description' => 'A PID from within a source.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '123', + ], + ], + ], + 'AudioTrackSelection' => [ + 'title' => '音轨选择器', + 'description' => 'The audio track selection.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'TrackId' => [ + 'title' => '音轨ID', + 'description' => 'The track ID from within a source.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1', + ], + ], + 'required' => false, + 'description' => '', + ], + ], + ], + 'description' => '', + ], + ], + ], + 'description' => '', + ], + ], + 'OutputGroups' => [ + 'title' => '输出组详细设置', + 'description' => 'The output groups.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Name' => [ + 'title' => '输出组名称', + 'description' => 'The name of the output group.'."\n", + 'type' => 'string', + 'example' => 'group1', + ], + 'Type' => [ + 'title' => '输出组类型', + 'description' => 'The output group type.'."\n", + 'type' => 'string', + 'example' => 'MediaPackage', + ], + 'Outputs' => [ + 'title' => '输出列表设置', + 'description' => 'The outputs in the output group.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Name' => [ + 'title' => '输出名称', + 'description' => 'The name of the output.'."\n", + 'type' => 'string', + 'example' => 'output1', + ], + 'MediaType' => [ + 'title' => '输出的媒体类型', + 'description' => 'The media type of the output.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'MediaPackageOutputSetting' => [ + 'title' => '输出组类型为MediaPackage时的设置', + 'description' => 'The settings of the output delivered to MediaPackage.'."\n", + 'type' => 'object', + 'properties' => [ + 'NameModifier' => [ + 'title' => 'manifest后缀', + 'description' => 'The manifest name modifier. The child manifests include this modifier in their M3U8 file names.'."\n", + 'type' => 'string', + 'example' => '480p', + ], + 'AudioGroupId' => [ + 'title' => 'manifest音频组id设置', + 'description' => 'The manifest audio group ID.'."\n", + 'type' => 'string', + 'example' => 'audiogroup', + ], + ], + ], + 'VideoSettingName' => [ + 'title' => '引用的视频设置名称', + 'description' => 'The name of the referenced VideoSettings.'."\n", + 'type' => 'string', + 'example' => 'myVideo1', + ], + 'AudioSettingNames' => [ + 'title' => '引用的音频设置名称', + 'description' => 'The referenced AudioSettings.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The name of the referenced AudioSettings.'."\n", + 'type' => 'string', + 'example' => 'myAudio1', + ], + ], + ], + 'description' => '', + ], + ], + 'MediaPackageGroupSetting' => [ + 'title' => 'MediaPackage输出组设置', + 'description' => 'The MediaPackage destination.'."\n", + 'type' => 'object', + 'properties' => [ + 'GroupName' => [ + 'title' => 'MediaPackage的GroupName', + 'description' => 'GroupName in MediaPackage.'."\n", + 'type' => 'string', + 'example' => 'myPackageGroup', + ], + 'ChannelName' => [ + 'title' => 'MediaPackage的ChannelName', + 'description' => 'ChannelName in MediaPackage.'."\n", + 'type' => 'string', + 'example' => 'myPackageChannel', + ], + ], + ], + 'MonitorUrl' => [ + 'title' => '输出监看地址', + 'description' => 'The URL for monitoring the output group. The parameter is returned only when the output gourp type is MediaPackage.'."\n", + 'type' => 'string', + 'example' => 'rtmp://xxx', + ], + ], + 'description' => '', + ], + ], + 'AudioSettings' => [ + 'title' => '音频设置', + 'description' => 'The audio settings.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Name' => [ + 'title' => '音频设置名称', + 'description' => 'The name of the audio settings.'."\n", + 'type' => 'string', + 'example' => 'zhuanfengzhuang', + ], + 'AudioSelectorName' => [ + 'title' => '音频选择器名称', + 'description' => 'The name of the audio selector.'."\n", + 'type' => 'string', + 'example' => 'myselector', + ], + 'LanguageCode' => [ + 'title' => '语言代码', + 'description' => 'A three-letter ISO 639-2 language code.'."\n", + 'type' => 'string', + 'example' => 'eng', + ], + 'LanguageName' => [ + 'title' => 'audio类型m3u8切片的名称', + 'description' => 'The name of the language.'."\n", + 'type' => 'string', + 'example' => 'English', + ], + 'AudioCodec' => [ + 'title' => '音频编码类型', + 'description' => 'The audio codec.'."\n", + 'type' => 'string', + 'example' => 'aac', + ], + 'AudioCodecSetting' => [ + 'title' => '音频编码设置', + 'description' => 'The audio encoding settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'Profile' => [ + 'title' => '音频编码级别', + 'description' => 'The audio codec profile.'."\n", + 'type' => 'string', + 'example' => 'AAC-LOW', + ], + 'Bitrate' => [ + 'title' => '音频比特率', + 'description' => 'The audio bitrate. Unit: bit/s.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200000', + ], + 'SampleRate' => [ + 'title' => '音频采样率', + 'description' => 'The audio sample rate. Unit: Hz.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '44100', + ], + ], + ], + ], + 'description' => '', + ], + ], + 'VideoSettings' => [ + 'title' => '视频设置', + 'description' => 'The video settings.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Name' => [ + 'title' => '视频设置名称', + 'description' => 'The name of the video settings.'."\n", + 'type' => 'string', + 'example' => 'video1', + ], + 'Width' => [ + 'title' => '分辨率宽', + 'description' => 'The width of the video in pixels.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1280', + ], + 'Height' => [ + 'title' => '分辨率高', + 'description' => 'The height of the video in pixels.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '720', + ], + 'VideoCodec' => [ + 'title' => '视频编码类型', + 'description' => 'The video codec.'."\n", + 'type' => 'string', + 'example' => 'H264', + ], + 'VideoCodecSetting' => [ + 'title' => '视频编码设置', + 'description' => 'The video encoding settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'Rate' => [ + 'title' => '视频编码速率设置', + 'description' => 'The video encoding rate.'."\n", + 'type' => 'object', + 'properties' => [ + 'Bitrate' => [ + 'title' => '视频比特率', + 'description' => 'The video bitrate. Unit: bit/s.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '2500000', + ], + 'RateControlMode' => [ + 'title' => '视频编码码控规则', + 'description' => 'The bitrate control mode.'."\n", + 'type' => 'string', + 'example' => 'ABR', + ], + 'MaxBitrate' => [ + 'title' => '视频编码最大比特率', + 'description' => 'The maximum bitrate. Unit: bit/s.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '6000000', + ], + 'BufferSize' => [ + 'title' => '视频编码缓冲区大小', + 'description' => 'The video buffer size. Unit: bit/s.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '6000000', + ], + ], + ], + 'Framerate' => [ + 'title' => '视频帧率设置', + 'description' => 'The frame rate.'."\n", + 'type' => 'object', + 'properties' => [ + 'FramerateControl' => [ + 'title' => '视频帧率设置模式', + 'description' => 'The frame rate mode.'."\n", + 'type' => 'string', + 'example' => 'SPECIFIED', + ], + 'FramerateNumerator' => [ + 'title' => '视频帧率分子', + 'description' => 'The numerator of the fixed frame rate.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '25', + ], + 'FramerateDenominator' => [ + 'title' => '视频帧率分母', + 'description' => 'The denominator of the fixed frame rate.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + ], + ], + 'Gop' => [ + 'title' => '视频GOP设置', + 'description' => 'The GOP setting.'."\n", + 'type' => 'object', + 'properties' => [ + 'GopSizeUnits' => [ + 'title' => '视频GOP长度单位', + 'description' => 'The GOP size unit.'."\n", + 'type' => 'string', + 'example' => 'FRAMES', + ], + 'GopSize' => [ + 'title' => '视频GOP大小', + 'description' => 'The GOP size.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '90', + ], + 'BframesNum' => [ + 'title' => 'B帧数', + 'description' => 'The number of B frames.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '3', + ], + ], + ], + 'CodecDetail' => [ + 'title' => '视频编码详情设置', + 'description' => 'The video encoding settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'Profile' => [ + 'title' => '视频编码配置', + 'description' => 'The H.264 profile.'."\n", + 'type' => 'string', + 'example' => 'MAIN', + ], + 'Level' => [ + 'title' => '视频编码级别', + 'description' => 'The video encoding level. It is not supported yet.'."\n", + 'type' => 'string', + 'example' => 'H264_LEVEL_AUTO', + ], + ], + ], + ], + ], + 'VideoCodecType' => [ + 'title' => '视频转码方式(普通转码、窄带高清转码等)', + 'description' => 'The video transcoding method. Valid values: NORMAL (regular transcoding) and NBHD (Narrowband HD™ transcoding).'."\n", + 'type' => 'string', + 'example' => 'NORMAL', + ], + ], + 'description' => '', + ], + ], + 'CreateTime' => [ + 'title' => '频道创建时间', + 'description' => 'The time when the channel was created. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2024-12-03T06:56:42Z', + ], + 'LastStartTime' => [ + 'title' => '频道上一次启动时间', + 'description' => 'The time when the channel was last started. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC. If the channel has never been started since it was created, an empty string is returned.'."\n", + 'type' => 'string', + 'example' => '2024-12-03T06:56:42Z', + ], + 'LastStopTime' => [ + 'title' => '频道上一次停止时间', + 'description' => 'The time when the channel was last stopped. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC. If the channel has never stopped since it was created, an empty string is returned.'."\n", + 'type' => 'string', + 'example' => '2024-12-03T06:56:42Z', + ], + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"Channel\\": {\\n \\"ChannelId\\": \\"SEGK5KA6KYKAWQQH\\",\\n \\"Name\\": \\"mych\\",\\n \\"State\\": \\"IDLE\\",\\n \\"InputAttachments\\": [\\n {\\n \\"InputId\\": \\"SEGK5KA6KYKAWQQH\\",\\n \\"InputName\\": \\"myinput\\",\\n \\"LanguageName\\": \\"eng\\",\\n \\"AudioSelectors\\": [\\n {\\n \\"Name\\": \\"myselector\\",\\n \\"AudioLanguageSelection\\": {\\n \\"LanguageCode\\": \\"eng\\"\\n },\\n \\"AudioPidSelection\\": {\\n \\"Pid\\": 123\\n },\\n \\"AudioTrackSelection\\": [\\n {\\n \\"TrackId\\": 1\\n }\\n ]\\n }\\n ]\\n }\\n ],\\n \\"OutputGroups\\": [\\n {\\n \\"Name\\": \\"group1\\",\\n \\"Type\\": \\"MediaPackage\\",\\n \\"Outputs\\": [\\n {\\n \\"Name\\": \\"output1\\",\\n \\"MediaType\\": 0,\\n \\"MediaPackageOutputSetting\\": {\\n \\"NameModifier\\": \\"480p\\",\\n \\"AudioGroupId\\": \\"audiogroup\\"\\n },\\n \\"VideoSettingName\\": \\"myVideo1\\",\\n \\"AudioSettingNames\\": [\\n \\"myAudio1\\"\\n ]\\n }\\n ],\\n \\"MediaPackageGroupSetting\\": {\\n \\"GroupName\\": \\"myPackageGroup\\",\\n \\"ChannelName\\": \\"myPackageChannel\\"\\n },\\n \\"MonitorUrl\\": \\"rtmp://xxx\\"\\n }\\n ],\\n \\"AudioSettings\\": [\\n {\\n \\"Name\\": \\"zhuanfengzhuang\\",\\n \\"AudioSelectorName\\": \\"myselector\\",\\n \\"LanguageCode\\": \\"eng\\",\\n \\"LanguageName\\": \\"English\\",\\n \\"AudioCodec\\": \\"aac\\",\\n \\"AudioCodecSetting\\": {\\n \\"Profile\\": \\"AAC-LOW\\",\\n \\"Bitrate\\": 200000,\\n \\"SampleRate\\": 44100\\n }\\n }\\n ],\\n \\"VideoSettings\\": [\\n {\\n \\"Name\\": \\"video1\\",\\n \\"Width\\": 1280,\\n \\"Height\\": 720,\\n \\"VideoCodec\\": \\"H264\\",\\n \\"VideoCodecSetting\\": {\\n \\"Rate\\": {\\n \\"Bitrate\\": 2500000,\\n \\"RateControlMode\\": \\"ABR\\",\\n \\"MaxBitrate\\": 6000000,\\n \\"BufferSize\\": 6000000\\n },\\n \\"Framerate\\": {\\n \\"FramerateControl\\": \\"SPECIFIED\\",\\n \\"FramerateNumerator\\": 25,\\n \\"FramerateDenominator\\": 1\\n },\\n \\"Gop\\": {\\n \\"GopSizeUnits\\": \\"FRAMES\\",\\n \\"GopSize\\": 90,\\n \\"BframesNum\\": 3\\n },\\n \\"CodecDetail\\": {\\n \\"Profile\\": \\"MAIN\\",\\n \\"Level\\": \\"H264_LEVEL_AUTO\\"\\n }\\n },\\n \\"VideoCodecType\\": \\"NORMAL\\"\\n }\\n ],\\n \\"CreateTime\\": \\"2024-12-03T06:56:42Z\\",\\n \\"LastStartTime\\": \\"2024-12-03T06:56:42Z\\",\\n \\"LastStopTime\\": \\"2024-12-03T06:56:42Z\\"\\n }\\n}","type":"json"}]', + 'title' => 'GetMediaLiveChannel', + 'description' => '## QPS limit'."\n" + ."\n" + .'This operation can be called up to 50 times per second for each Alibaba Cloud account. Requests that exceed this limit are dropped and you may experience service interruptions. We recommend that you take note of this limit when you call this operation.', + ], + 'ListMediaLiveChannels' => [ + 'summary' => 'Queries MediaLive channels.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '239700', + 'abilityTreeNodes' => [ + 'FEATUREiceQU6W9M', + ], + ], + 'parameters' => [ + [ + 'name' => 'MaxResults', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The number of entries per page. Valid values: 1 to 100. Default value:'."\n" + ."\n" + .'* If you do not specify this parameter or if you set a value smaller than 10, the default value is 10.'."\n" + .'* If you set a value greater than 100, the default value is 100.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '10', + ], + ], + [ + 'name' => 'Skip', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The number of entries to be skipped in the query. If the number of entries you attempt to skip exceeds the number of entries that meet the condition, an empty list is returned.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '20', + ], + ], + [ + 'name' => 'NextToken', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The pagination token that is used in the next request to retrieve a new page of results. You do not need to specify this parameter for the first request. You must specify the token that is obtained from the previous query as the value of NextToken.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'caeba0bbb2be03f84eb48b699f0a4883', + ], + ], + [ + 'name' => 'SortOrder', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The sorting order of the channels by creation time. Default value: asc. Valid values: desc and asc. asc indicates the ascending order, and desc indicates the descending order.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'desc', + ], + ], + [ + 'name' => 'Keyword', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The keyword of the query. You can perform a fuzzy search on channel ID or name.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '123', + ], + ], + [ + 'name' => 'States', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The state of channels you want to query. You can separate multiple states with commas (,) in a JSON array.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '["IDLE","RUNNING"]', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'Channels' => [ + 'title' => '频道配置列表', + 'description' => 'The channels.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'ChannelId' => [ + 'title' => '频道ID', + 'description' => 'The ID of the channel.'."\n", + 'type' => 'string', + 'example' => 'SEGK5KA6KYKAWQQH', + ], + 'Name' => [ + 'title' => '频道名称', + 'description' => 'The name of the channel.'."\n", + 'type' => 'string', + 'example' => 'mych', + ], + 'State' => [ + 'title' => '频道状态', + 'description' => 'The state of the channel. Valid values: IDLE, STARTING, RUNNING, RECOVERING, and STOPPING.'."\n", + 'type' => 'string', + 'example' => 'IDLE', + ], + 'InputAttachments' => [ + 'title' => '输入绑定设置', + 'description' => 'The inputs associated with the channel.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'InputId' => [ + 'title' => '绑定的输入ID', + 'description' => 'The ID of the input.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'SEGK5KA6KYKAWQQH', + ], + 'InputName' => [ + 'title' => '输入名称', + 'description' => 'The name of the input.'."\n", + 'type' => 'string', + 'example' => 'myinput', + ], + 'LanguageName' => [ + 'title' => '仅rtmp类型输入有效,表示output使用的Name标签', + 'description' => 'The name of the language.'."\n", + 'type' => 'string', + 'example' => 'eng', + ], + 'AudioSelectors' => [ + 'title' => '音频选择器列表', + 'description' => 'The audio selectors.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Name' => [ + 'title' => '音频选择器名称', + 'description' => 'The name of the audio selector.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'myselector', + ], + 'AudioLanguageSelection' => [ + 'title' => '语言选择器', + 'description' => 'The audio language selection.'."\n", + 'type' => 'object', + 'properties' => [ + 'LanguageCode' => [ + 'title' => '语言代码', + 'description' => 'A three-letter ISO 639-2 language code from within an audio source.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'eng', + ], + ], + ], + 'AudioPidSelection' => [ + 'title' => 'PID选择器', + 'description' => 'The audio PID selection.'."\n", + 'type' => 'object', + 'properties' => [ + 'Pid' => [ + 'title' => 'PID', + 'description' => 'A PID from within a source.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '123', + ], + ], + ], + 'AudioTrackSelection' => [ + 'title' => '音轨选择器', + 'description' => 'The audio track selection.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'TrackId' => [ + 'title' => '音轨ID', + 'description' => 'The track ID from within a source.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1', + ], + ], + 'required' => false, + 'description' => '', + ], + ], + ], + 'description' => '', + ], + ], + ], + 'description' => '', + ], + ], + 'OutputGroups' => [ + 'title' => '输出组详细设置', + 'description' => 'The output groups.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Name' => [ + 'title' => '输出组名称', + 'description' => 'The name of the output group.'."\n", + 'type' => 'string', + 'example' => 'group1', + ], + 'Type' => [ + 'title' => '输出组类型', + 'description' => 'The output group type.'."\n", + 'type' => 'string', + 'example' => 'MediaPackage', + ], + 'Outputs' => [ + 'title' => '输出列表设置', + 'description' => 'The outputs in the output group.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Name' => [ + 'title' => '输出名称', + 'description' => 'The name of the output.'."\n", + 'type' => 'string', + 'example' => 'output1', + ], + 'MediaType' => [ + 'title' => '输出的媒体类型', + 'description' => 'The media type of the output.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'MediaPackageOutputSetting' => [ + 'title' => '输出组类型为MediaPackage时的设置', + 'description' => 'The settings of the output delivered to MediaPackage.'."\n", + 'type' => 'object', + 'properties' => [ + 'NameModifier' => [ + 'title' => 'manifest后缀', + 'description' => 'The manifest name modifier. The child manifests include this modifier in their M3U8 file names.'."\n", + 'type' => 'string', + 'example' => '480p', + ], + 'AudioGroupId' => [ + 'title' => 'manifest音频组id设置', + 'description' => 'The manifest audio group ID.'."\n", + 'type' => 'string', + 'example' => 'audiogroup', + ], + ], + ], + 'VideoSettingName' => [ + 'title' => '引用的视频设置名称', + 'description' => 'The name of the referenced VideoSettings.'."\n", + 'type' => 'string', + 'example' => 'myVideo1', + ], + 'AudioSettingNames' => [ + 'title' => '引用的音频设置名称', + 'description' => 'The referenced AudioSettings.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The name of the referenced AudioSettings.'."\n", + 'type' => 'string', + 'example' => 'myAudio1', + ], + ], + ], + 'description' => '', + ], + ], + 'MediaPackageGroupSetting' => [ + 'title' => 'MediaPackage输出组设置', + 'description' => 'The MediaPackage destination.'."\n", + 'type' => 'object', + 'properties' => [ + 'GroupName' => [ + 'title' => 'MediaPackage的GroupName', + 'description' => 'GroupName in MediaPackage.'."\n", + 'type' => 'string', + 'example' => 'myPackageGroup', + ], + 'ChannelName' => [ + 'title' => 'MediaPackage的ChannelName', + 'description' => 'ChannelName in MediaPackage.'."\n", + 'type' => 'string', + 'example' => 'myPackageChannel', + ], + ], + ], + 'MonitorUrl' => [ + 'title' => '输出监看地址', + 'description' => 'The URL for monitoring the output group. The parameter is returned only when the output gourp type is MediaPackage.'."\n", + 'type' => 'string', + 'example' => 'rtmp://xxx', + ], + ], + 'description' => '', + ], + ], + 'AudioSettings' => [ + 'title' => '音频设置', + 'description' => 'The audio settings.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Name' => [ + 'title' => '音频设置名称', + 'description' => 'The name of the audio settings.'."\n", + 'type' => 'string', + 'example' => 'zhuanfengzhuang', + ], + 'AudioSelectorName' => [ + 'title' => '音频选择器名称', + 'description' => 'The name of the audio selector.'."\n", + 'type' => 'string', + 'example' => 'myselector', + ], + 'LanguageCode' => [ + 'title' => '语言代码', + 'description' => 'A three-letter ISO 639-2 language code.'."\n", + 'type' => 'string', + 'example' => 'eng', + ], + 'LanguageName' => [ + 'title' => 'audio类型m3u8切片的名称', + 'description' => 'The name of the language.'."\n", + 'type' => 'string', + 'example' => 'English', + ], + 'AudioCodec' => [ + 'title' => '音频编码类型', + 'description' => 'The audio codec.'."\n", + 'type' => 'string', + 'example' => 'aac', + ], + 'AudioCodecSetting' => [ + 'title' => '音频编码设置', + 'description' => 'The audio encoding settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'Profile' => [ + 'title' => '音频编码级别', + 'description' => 'The audio codec profile.'."\n", + 'type' => 'string', + 'example' => 'AAC-LOW', + ], + 'Bitrate' => [ + 'title' => '音频比特率', + 'description' => 'The audio bitrate. Unit: bit/s.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200000', + ], + 'SampleRate' => [ + 'title' => '音频采样率', + 'description' => 'The audio sample rate. Unit: Hz.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '44100', + ], + ], + ], + ], + 'description' => '', + ], + ], + 'VideoSettings' => [ + 'title' => '视频设置', + 'description' => 'The video settings.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Name' => [ + 'title' => '视频设置名称', + 'description' => 'The name of the video settings.'."\n", + 'type' => 'string', + 'example' => 'video1', + ], + 'Width' => [ + 'title' => '分辨率宽', + 'description' => 'The width of the video in pixels.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1280', + ], + 'Height' => [ + 'title' => '分辨率高', + 'description' => 'The height of the video in pixels.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '720', + ], + 'VideoCodec' => [ + 'title' => '视频编码类型', + 'description' => 'The video codec.'."\n", + 'type' => 'string', + 'example' => 'H264', + ], + 'VideoCodecSetting' => [ + 'title' => '视频编码设置', + 'description' => 'The video encoding settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'Rate' => [ + 'title' => '视频编码速率设置', + 'description' => 'The video encoding rate.'."\n", + 'type' => 'object', + 'properties' => [ + 'Bitrate' => [ + 'title' => '视频比特率', + 'description' => 'The video bitrate. Unit: bit/s.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '2500000', + ], + 'RateControlMode' => [ + 'title' => '视频编码码控规则', + 'description' => 'The bitrate control mode.'."\n", + 'type' => 'string', + 'example' => 'ABR', + ], + 'MaxBitrate' => [ + 'title' => '视频编码最大比特率', + 'description' => 'The maximum bitrate. Unit: bit/s.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '6000000', + ], + 'BufferSize' => [ + 'title' => '视频编码缓冲区大小', + 'description' => 'The video buffer size. Unit: bit/s.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '6000000', + ], + ], + ], + 'Framerate' => [ + 'title' => '视频帧率设置', + 'description' => 'The frame rate.'."\n", + 'type' => 'object', + 'properties' => [ + 'FramerateControl' => [ + 'title' => '视频帧率设置模式', + 'description' => 'The frame rate mode.'."\n", + 'type' => 'string', + 'example' => 'SPECIFIED', + ], + 'FramerateNumerator' => [ + 'title' => '视频帧率分子', + 'description' => 'The numerator of the fixed frame rate.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '25', + ], + 'FramerateDenominator' => [ + 'title' => '视频帧率分母', + 'description' => 'The denominator of the fixed frame rate.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + ], + ], + 'Gop' => [ + 'title' => '视频GOP设置', + 'description' => 'The GOP setting.'."\n", + 'type' => 'object', + 'properties' => [ + 'GopSizeUnits' => [ + 'title' => '视频GOP长度单位', + 'description' => 'The GOP size unit.'."\n", + 'type' => 'string', + 'example' => 'FRAMES', + ], + 'GopSize' => [ + 'title' => '视频GOP大小', + 'description' => 'The GOP size.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '90', + ], + 'BframesNum' => [ + 'title' => 'B帧数', + 'description' => 'The number of B frames.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '3', + ], + ], + ], + 'CodecDetail' => [ + 'title' => '视频编码详情设置', + 'description' => 'The video encoding settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'Profile' => [ + 'title' => '视频编码配置', + 'description' => 'The H.264 profile.'."\n", + 'type' => 'string', + 'example' => 'MAIN', + ], + 'Level' => [ + 'title' => '视频编码级别', + 'description' => 'The video encoding level. It is not supported yet.'."\n", + 'type' => 'string', + 'example' => 'H264_LEVEL_AUTO', + ], + ], + ], + ], + ], + 'VideoCodecType' => [ + 'title' => '视频转码方式(普通转码、窄带高清转码等)', + 'description' => 'The video transcoding method. Valid values: NORMAL (regular transcoding) and NBHD (Narrowband HD™ transcoding).'."\n", + 'type' => 'string', + 'example' => 'NORMAL', + ], + ], + 'description' => '', + ], + ], + 'CreateTime' => [ + 'title' => '频道创建时间', + 'description' => 'The time when the channel was created. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2024-12-03T06:56:42Z', + ], + 'LastStartTime' => [ + 'title' => '频道上一次启动时间', + 'description' => 'The time when the channel was last started. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC. If the channel has never been started since it was created, an empty string is returned.'."\n", + 'type' => 'string', + 'example' => '2024-12-03T06:56:42Z', + ], + 'LastStopTime' => [ + 'title' => '频道上一次停止时间', + 'description' => 'The time when the channel was last stopped. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC. If the channel has never stopped since it was created, an empty string is returned.'."\n", + 'type' => 'string', + 'example' => '2024-12-03T06:56:42Z', + ], + ], + 'description' => '', + ], + ], + 'MaxResults' => [ + 'description' => 'The number of entries returned per page.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + ], + 'NextToken' => [ + 'description' => 'A pagination token. It can be used in the next request to retrieve a new page of results.'."\n", + 'type' => 'string', + 'example' => 'caeba0bbb2be03f84eb48b699f0a4883', + ], + 'TotalCount' => [ + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '100', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"Channels\\": [\\n {\\n \\"ChannelId\\": \\"SEGK5KA6KYKAWQQH\\",\\n \\"Name\\": \\"mych\\",\\n \\"State\\": \\"IDLE\\",\\n \\"InputAttachments\\": [\\n {\\n \\"InputId\\": \\"SEGK5KA6KYKAWQQH\\",\\n \\"InputName\\": \\"myinput\\",\\n \\"LanguageName\\": \\"eng\\",\\n \\"AudioSelectors\\": [\\n {\\n \\"Name\\": \\"myselector\\",\\n \\"AudioLanguageSelection\\": {\\n \\"LanguageCode\\": \\"eng\\"\\n },\\n \\"AudioPidSelection\\": {\\n \\"Pid\\": 123\\n },\\n \\"AudioTrackSelection\\": [\\n {\\n \\"TrackId\\": 1\\n }\\n ]\\n }\\n ]\\n }\\n ],\\n \\"OutputGroups\\": [\\n {\\n \\"Name\\": \\"group1\\",\\n \\"Type\\": \\"MediaPackage\\",\\n \\"Outputs\\": [\\n {\\n \\"Name\\": \\"output1\\",\\n \\"MediaType\\": 0,\\n \\"MediaPackageOutputSetting\\": {\\n \\"NameModifier\\": \\"480p\\",\\n \\"AudioGroupId\\": \\"audiogroup\\"\\n },\\n \\"VideoSettingName\\": \\"myVideo1\\",\\n \\"AudioSettingNames\\": [\\n \\"myAudio1\\"\\n ]\\n }\\n ],\\n \\"MediaPackageGroupSetting\\": {\\n \\"GroupName\\": \\"myPackageGroup\\",\\n \\"ChannelName\\": \\"myPackageChannel\\"\\n },\\n \\"MonitorUrl\\": \\"rtmp://xxx\\"\\n }\\n ],\\n \\"AudioSettings\\": [\\n {\\n \\"Name\\": \\"zhuanfengzhuang\\",\\n \\"AudioSelectorName\\": \\"myselector\\",\\n \\"LanguageCode\\": \\"eng\\",\\n \\"LanguageName\\": \\"English\\",\\n \\"AudioCodec\\": \\"aac\\",\\n \\"AudioCodecSetting\\": {\\n \\"Profile\\": \\"AAC-LOW\\",\\n \\"Bitrate\\": 200000,\\n \\"SampleRate\\": 44100\\n }\\n }\\n ],\\n \\"VideoSettings\\": [\\n {\\n \\"Name\\": \\"video1\\",\\n \\"Width\\": 1280,\\n \\"Height\\": 720,\\n \\"VideoCodec\\": \\"H264\\",\\n \\"VideoCodecSetting\\": {\\n \\"Rate\\": {\\n \\"Bitrate\\": 2500000,\\n \\"RateControlMode\\": \\"ABR\\",\\n \\"MaxBitrate\\": 6000000,\\n \\"BufferSize\\": 6000000\\n },\\n \\"Framerate\\": {\\n \\"FramerateControl\\": \\"SPECIFIED\\",\\n \\"FramerateNumerator\\": 25,\\n \\"FramerateDenominator\\": 1\\n },\\n \\"Gop\\": {\\n \\"GopSizeUnits\\": \\"FRAMES\\",\\n \\"GopSize\\": 90,\\n \\"BframesNum\\": 3\\n },\\n \\"CodecDetail\\": {\\n \\"Profile\\": \\"MAIN\\",\\n \\"Level\\": \\"H264_LEVEL_AUTO\\"\\n }\\n },\\n \\"VideoCodecType\\": \\"NORMAL\\"\\n }\\n ],\\n \\"CreateTime\\": \\"2024-12-03T06:56:42Z\\",\\n \\"LastStartTime\\": \\"2024-12-03T06:56:42Z\\",\\n \\"LastStopTime\\": \\"2024-12-03T06:56:42Z\\"\\n }\\n ],\\n \\"MaxResults\\": 10,\\n \\"NextToken\\": \\"caeba0bbb2be03f84eb48b699f0a4883\\",\\n \\"TotalCount\\": 100\\n}","type":"json"}]', + 'title' => 'ListMediaLiveChannels', + 'description' => '## QPS limit'."\n" + ."\n" + .'This operation can be called up to 50 times per second for each Alibaba Cloud account. Requests that exceed this limit are dropped and you may experience service interruptions. We recommend that you take note of this limit when you call this operation.', + ], + 'DeleteMediaLiveChannel' => [ + 'summary' => 'Deletes a MediaLive channel.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '239700', + 'abilityTreeNodes' => [ + 'FEATUREiceQU6W9M', + ], + ], + 'parameters' => [ + [ + 'name' => 'ChannelId', + 'in' => 'formData', + 'schema' => [ + 'title' => '频道ID', + 'description' => 'The ID of the channel.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'SEGK5KA6KYKAWQQH', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\"\\n}","type":"json"}]', + 'title' => 'DeleteMediaLiveChannel', + 'description' => '* You can only delete a channel that is not running.'."\n" + ."\n" + .'## QPS limit'."\n" + ."\n" + .'This operation can be called up to 50 times per second for each Alibaba Cloud account. Requests that exceed this limit are dropped and you may experience service interruptions. We recommend that you take note of this limit when you call this operation.', + ], + 'StartMediaLiveChannel' => [ + 'summary' => 'Starts a MediaLive channel.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '239700', + 'abilityTreeNodes' => [ + 'FEATUREiceQU6W9M', + ], + ], + 'parameters' => [ + [ + 'name' => 'ChannelId', + 'in' => 'formData', + 'schema' => [ + 'title' => '频道ID', + 'description' => 'The ID of the channel.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'SEGK5KA6KYKAWQQH', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\"\\n}","type":"json"}]', + 'title' => 'StartMediaLiveChannel', + 'description' => '* You can call this operation only when the channel is idle. You cannot start a channel repeatedly.'."\n" + ."\n" + .'## QPS limit'."\n" + ."\n" + .'This operation can be called up to 50 times per second for each Alibaba Cloud account. Requests that exceed this limit are dropped and you will experience service interruptions. We recommend that you take note of this limit when you call this operation.', + ], + 'StopMediaLiveChannel' => [ + 'summary' => 'Stops a MediaLive channel.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '239700', + 'abilityTreeNodes' => [ + 'FEATUREiceQU6W9M', + ], + ], + 'parameters' => [ + [ + 'name' => 'ChannelId', + 'in' => 'formData', + 'schema' => [ + 'title' => '频道ID', + 'description' => 'The ID of the channel.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'SEGK5KA6KYKAWQQH', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\"\\n}","type":"json"}]', + 'title' => 'StopMediaLiveChannel', + 'description' => '## QPS limit'."\n" + ."\n" + .'This operation can be called up to 50 times per second for each Alibaba Cloud account. Requests that exceed this limit are dropped and you may experience service interruptions. We recommend that you take note of this limit when you call this operation.', + ], + 'SubmitMediaConvertJob' => [ + 'summary' => 'Submits a transcoding task.', + 'path' => '', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'high', + 'chargeType' => 'paid', + 'abilityTreeNodes' => [ + 'FEATUREiceEO4QPO', + ], + ], + 'parameters' => [ + [ + 'name' => 'ClientToken', + 'in' => 'query', + 'schema' => [ + 'description' => 'The idempotency key that is used to ensure repeated requests have the same effect as a single request.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '86f8e525-9d73-4dac-88aa-7aa4e950c00a', + ], + ], + [ + 'name' => 'Config', + 'in' => 'query', + 'allowEmptyValue' => false, + 'schema' => [ + 'description' => 'The configurations of the transcoding task.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '{'."\n" + .' "Inputs": [{'."\n" + .' "InputFile": {'."\n" + .' "Type": "OSS",'."\n" + .' "Media": "http://**.oss-cn-shanghai.aliyuncs.com/input/**/60min.mp4"'."\n" + .' }'."\n" + .' }],'."\n" + .' "Outputs": [{'."\n" + .' "OutputFile": {'."\n" + .' "Type": "OSS",'."\n" + .' "Media": "http://**.oss-cn-shanghai.aliyuncs.com/output/**/360p.mp4"'."\n" + .' },'."\n" + .' "TemplateId": "S00000001-200000"'."\n" + .' }, {'."\n" + .' "OutputFile": {'."\n" + .' "Type": "OSS",'."\n" + .' "Media": "http://**.oss-cn-shanghai.aliyuncs.com/output/**/720p.mp4"'."\n" + .' },'."\n" + .' "TemplateId": "S00000001-200000"'."\n" + .' }]'."\n" + .'}', + ], + ], + [ + 'name' => 'UserData', + 'in' => 'query', + 'schema' => [ + 'description' => 'The user data.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{"videoId":"abcd"}', + ], + ], + [ + 'name' => 'PipelineId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the queue.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'e197ecfb103e4849922b054d3032f954', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The result of transcoding task submission.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'Job' => [ + 'title' => '转码作业', + 'description' => 'The transcoding task.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求 ID', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => 'A2129C9F-CE95-58B5-B8C1-07758FF6C86F', + ], + 'ClientToken' => [ + 'title' => '创建转码作业请求的幂等参数', + 'description' => 'The idempotency key of the request for creating the transcoding task.'."\n", + 'type' => 'string', + 'example' => 'FB7F25E9-AD9B-1603-8AF6-F1E42DF2E706', + ], + 'JobId' => [ + 'title' => '转码作业 ID', + 'description' => 'The ID of the transcoding task.'."\n", + 'type' => 'string', + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + 'Config' => [ + 'title' => '转码作业配置', + 'description' => 'The configurations of the transcoding task.'."\n", + 'type' => 'object', + 'properties' => [ + 'Inputs' => [ + 'title' => '转码作业输入列表', + 'description' => 'The inputs of the transcoding task.'."\n", + 'type' => 'array', + 'items' => [ + 'title' => '转码作业输入', + 'description' => 'The input of the transcoding task.'."\n", + 'example' => '[{\\"Src\\":{\\"Type\\":\\"MAP_SERVICE\\",\\"DataId\\":\\"479f6c63f66dcc1a9a09420fee32cbdf\\",\\"ZoomLevel\\":18},\\"Idx\\":1}]', + '$ref' => '#/components/schemas/MediaConvertInput', + ], + ], + 'Outputs' => [ + 'title' => '转码输出配置列表', + 'description' => 'The output configurations.'."\n", + 'type' => 'array', + 'items' => [ + 'title' => '转码作业输出配置', + 'description' => 'The output configuration.'."\n", + 'example' => '[]', + '$ref' => '#/components/schemas/MediaConvertOutput', + ], + ], + 'OutputGroups' => [ + 'title' => '转码输出组配置列表', + 'description' => 'The output group configurations.'."\n", + 'type' => 'array', + 'items' => [ + 'title' => '转码输出组配置', + 'description' => 'The output group configuration.'."\n", + '$ref' => '#/components/schemas/MediaConvertOutputGroup', + ], + ], + 'JobName' => [ + 'description' => 'The name of the job.'."\n", + 'type' => 'string', + 'example' => 'insx6-1310', + ], + ], + ], + 'PipelineId' => [ + 'title' => '管道ID。', + 'description' => 'The ID of the queue.'."\n", + 'type' => 'string', + 'example' => '3780049', + ], + 'UserData' => [ + 'title' => '用户数据', + 'description' => 'The user data.'."\n", + 'type' => 'string', + 'example' => '{"videoId":"abcd"}', + ], + 'Code' => [ + 'title' => '作业失败时错误码。执行成功时此参数不返回。', + 'description' => 'The error code returned when the transcoding task failed.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Message' => [ + 'title' => '待添加的水印信息。', + 'description' => 'The error message returned when the transcoding task failed.'."\n", + 'type' => 'string', + 'example' => 'ok', + ], + 'State' => [ + 'title' => '转码作业状态。'."\n" + .'● Inited : 初始化;'."\n" + .'● Running : 运行中;'."\n" + .'● Success : 转码成功;'."\n" + .'● Failed : 转码失败;'."\n" + .'● Cancelled : 已取消', + 'description' => 'The status of the transcoding task. Valid values:'."\n" + ."\n" + .'* Inited: The task is initialized.'."\n" + .'* Running'."\n" + .'* Complete'."\n" + .'* Error'."\n" + .'* Cancelled', + 'type' => 'string', + 'example' => 'Inited', + ], + 'OutputDetails' => [ + 'title' => '转码输出结果列表', + 'description' => 'The details of the transcoded outputs.'."\n", + 'type' => 'array', + 'items' => [ + 'title' => '转码输出结果', + 'description' => 'The details of the transcoded output.'."\n", + '$ref' => '#/components/schemas/MediaConvertOutputDetail', + ], + ], + 'OutputGroupDetails' => [ + 'title' => '转码输出组结果列表', + 'description' => 'The details of the output groups.'."\n", + 'type' => 'array', + 'items' => [ + 'title' => '转码输出组结果', + 'description' => 'The details of the output group.'."\n", + '$ref' => '#/components/schemas/MediaConvertOutputGroupDetail', + ], + ], + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"Job\\": {\\n \\"RequestId\\": \\"A2129C9F-CE95-58B5-B8C1-07758FF6C86F\\",\\n \\"ClientToken\\": \\"FB7F25E9-AD9B-1603-8AF6-F1E42DF2E706\\",\\n \\"JobId\\": \\"****20b48fb04483915d4f2cd8ac****\\",\\n \\"Config\\": {\\n \\"Inputs\\": [\\n {\\n \\"Name\\": \\"\\",\\n \\"InputFile\\": {\\n \\"Type\\": \\"\\",\\n \\"Media\\": \\"\\",\\n \\"Url\\": \\"\\"\\n }\\n }\\n ],\\n \\"Outputs\\": [\\n {\\n \\"OutputFile\\": {\\n \\"Type\\": \\"\\",\\n \\"Media\\": \\"\\",\\n \\"Url\\": \\"\\"\\n },\\n \\"Priority\\": 0,\\n \\"OverrideParams\\": \\"\\",\\n \\"Features\\": \\"\\",\\n \\"TemplateId\\": \\"\\",\\n \\"Name\\": \\"\\"\\n }\\n ],\\n \\"OutputGroups\\": [\\n {\\n \\"GroupConfig\\": {\\n \\"OutputFileBase\\": {\\n \\"Type\\": \\"\\",\\n \\"Media\\": \\"\\",\\n \\"Url\\": \\"\\"\\n },\\n \\"ManifestName\\": \\"\\",\\n \\"Type\\": \\"\\"\\n },\\n \\"Outputs\\": [\\n {\\n \\"Priority\\": 0,\\n \\"OverrideParams\\": \\"\\",\\n \\"Features\\": \\"\\",\\n \\"OutputFileName\\": \\"\\",\\n \\"TemplateId\\": \\"\\",\\n \\"Name\\": \\"\\"\\n }\\n ],\\n \\"Name\\": \\"\\"\\n }\\n ],\\n \\"JobName\\": \\"Name\\"\\n },\\n \\"PipelineId\\": \\"***48a4edf410b908aecd91fc3b***\\",\\n \\"UserData\\": \\"{\\\\\\"videoId\\\\\\":\\\\\\"abcd\\\\\\"}\\",\\n \\"Code\\": \\"InvalidParameter.ResourceContentBad\\",\\n \\"Message\\": \\"The resource operated InputFile is bad\\",\\n \\"State\\": \\"Success\\",\\n \\"OutputDetails\\": [\\n {\\n \\"Status\\": \\"\\",\\n \\"TaskId\\": \\"\\",\\n \\"Message\\": \\"\\",\\n \\"FinishTime\\": \\"\\",\\n \\"CreateTime\\": \\"\\",\\n \\"Code\\": \\"\\",\\n \\"Name\\": \\"\\",\\n \\"Result\\": {\\n \\"OutputFile\\": {\\n \\"Type\\": \\"\\",\\n \\"Media\\": \\"\\",\\n \\"Url\\": \\"\\"\\n },\\n \\"OutFileMeta\\": {\\n \\"VideoStreamInfoList\\": [\\n {\\n \\"Rotate\\": \\"0\\",\\n \\"Codec_tag\\": \\"0x001b\\",\\n \\"Sar\\": \\"478:477\\",\\n \\"Start_time\\": \\"1.473556\\",\\n \\"Fps\\": \\"25.0\\",\\n \\"Index\\": \\"0\\",\\n \\"Duration\\": \\"403.039989\\",\\n \\"Lang\\": \\"cn\\",\\n \\"Codec_long_name\\": \\"H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10\\",\\n \\"PixFmt\\": \\"yuv420p\\",\\n \\"Bit_rate\\": \\"888.563\\",\\n \\"Profile\\": \\"High\\",\\n \\"Has_b_frames\\": \\"2\\",\\n \\"Codec_time_base\\": \\"\\",\\n \\"Dar\\": \\"16:9\\",\\n \\"Avg_fps\\": \\"25.0\\",\\n \\"Codec_tag_string\\": \\"[27][0][0][0]\\",\\n \\"Codec_name\\": \\"h264\\",\\n \\"Height\\": \\"478\\",\\n \\"Level\\": \\"31\\",\\n \\"Time_base\\": \\"1/90000\\",\\n \\"Width\\": \\"848\\",\\n \\"NumFrames\\": \\"10040\\"\\n }\\n ],\\n \\"AudioStreamInfoList\\": [\\n {\\n \\"CodecTag\\": \\"0x000f\\",\\n \\"CodecTimeBase\\": \\"1/44100\\",\\n \\"ChannelLayout\\": \\"stereo\\",\\n \\"StartTime\\": \\"1.473556\\",\\n \\"Index\\": \\"1\\",\\n \\"Duration\\": \\"403.039989\\",\\n \\"Lang\\": \\"cn\\",\\n \\"SampleFmt\\": \\"fltp\\",\\n \\"CodecName\\": \\"aac\\",\\n \\"Bitrate\\": \\"0.f\\",\\n \\"Channels\\": \\"2\\",\\n \\"Timebase\\": \\"1/90000\\",\\n \\"CodecTagString\\": \\"[15][0][0][0]\\",\\n \\"SampleRate\\": \\"44100\\",\\n \\"CodecLongName\\": \\"AAC (Advanced Audio Coding)\\"\\n }\\n ],\\n \\"FileBasicInfo\\": {\\n \\"FileUrl\\": \\"http://bucket.oss-cn-shanghai.aliyuncs.com/path/to/file.m3u8\\",\\n \\"FileStatus\\": \\"Normal\\",\\n \\"MediaId\\": \\"\\",\\n \\"FileType\\": \\"source_file\\",\\n \\"FileName\\": \\"file.m3u8\\",\\n \\"Region\\": \\"cn-shanghai\\",\\n \\"FormatName\\": \\"hls,applehttp\\",\\n \\"Duration\\": \\"403.039999\\",\\n \\"Height\\": \\"478\\",\\n \\"Bitrate\\": \\"888.563\\",\\n \\"Width\\": \\"848\\",\\n \\"FileSize\\": \\"31737\\"\\n }\\n }\\n }\\n }\\n ],\\n \\"OutputGroupDetails\\": [\\n {\\n \\"Status\\": \\"\\",\\n \\"TaskId\\": \\"\\",\\n \\"Message\\": \\"\\",\\n \\"FinishTime\\": \\"\\",\\n \\"CreateTime\\": \\"\\",\\n \\"Outputs\\": [\\n {\\n \\"Status\\": \\"\\",\\n \\"TaskId\\": \\"\\",\\n \\"Message\\": \\"\\",\\n \\"FinishTime\\": \\"\\",\\n \\"CreateTime\\": \\"\\",\\n \\"Code\\": \\"\\",\\n \\"Name\\": \\"\\",\\n \\"Result\\": {\\n \\"OutputFile\\": {\\n \\"Type\\": \\"\\",\\n \\"Media\\": \\"\\",\\n \\"Url\\": \\"\\"\\n },\\n \\"OutFileMeta\\": {\\n \\"VideoStreamInfoList\\": [\\n {\\n \\"Rotate\\": \\"0\\",\\n \\"Codec_tag\\": \\"0x001b\\",\\n \\"Sar\\": \\"478:477\\",\\n \\"Start_time\\": \\"1.473556\\",\\n \\"Fps\\": \\"25.0\\",\\n \\"Index\\": \\"0\\",\\n \\"Duration\\": \\"403.039989\\",\\n \\"Lang\\": \\"cn\\",\\n \\"Codec_long_name\\": \\"H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10\\",\\n \\"PixFmt\\": \\"yuv420p\\",\\n \\"Bit_rate\\": \\"888.563\\",\\n \\"Profile\\": \\"High\\",\\n \\"Has_b_frames\\": \\"2\\",\\n \\"Codec_time_base\\": \\"\\",\\n \\"Dar\\": \\"16:9\\",\\n \\"Avg_fps\\": \\"25.0\\",\\n \\"Codec_tag_string\\": \\"[27][0][0][0]\\",\\n \\"Codec_name\\": \\"h264\\",\\n \\"Height\\": \\"478\\",\\n \\"Level\\": \\"31\\",\\n \\"Time_base\\": \\"1/90000\\",\\n \\"Width\\": \\"848\\",\\n \\"NumFrames\\": \\"10040\\"\\n }\\n ],\\n \\"AudioStreamInfoList\\": [\\n {\\n \\"CodecTag\\": \\"0x000f\\",\\n \\"CodecTimeBase\\": \\"1/44100\\",\\n \\"ChannelLayout\\": \\"stereo\\",\\n \\"StartTime\\": \\"1.473556\\",\\n \\"Index\\": \\"1\\",\\n \\"Duration\\": \\"403.039989\\",\\n \\"Lang\\": \\"cn\\",\\n \\"SampleFmt\\": \\"fltp\\",\\n \\"CodecName\\": \\"aac\\",\\n \\"Bitrate\\": \\"0.f\\",\\n \\"Channels\\": \\"2\\",\\n \\"Timebase\\": \\"1/90000\\",\\n \\"CodecTagString\\": \\"[15][0][0][0]\\",\\n \\"SampleRate\\": \\"44100\\",\\n \\"CodecLongName\\": \\"AAC (Advanced Audio Coding)\\"\\n }\\n ],\\n \\"FileBasicInfo\\": {\\n \\"FileUrl\\": \\"http://bucket.oss-cn-shanghai.aliyuncs.com/path/to/file.m3u8\\",\\n \\"FileStatus\\": \\"Normal\\",\\n \\"MediaId\\": \\"\\",\\n \\"FileType\\": \\"source_file\\",\\n \\"FileName\\": \\"file.m3u8\\",\\n \\"Region\\": \\"cn-shanghai\\",\\n \\"FormatName\\": \\"hls,applehttp\\",\\n \\"Duration\\": \\"403.039999\\",\\n \\"Height\\": \\"478\\",\\n \\"Bitrate\\": \\"888.563\\",\\n \\"Width\\": \\"848\\",\\n \\"FileSize\\": \\"31737\\"\\n }\\n }\\n }\\n }\\n ],\\n \\"Code\\": \\"\\",\\n \\"Name\\": \\"\\"\\n }\\n ]\\n }\\n}","type":"json"}]', + 'title' => 'SubmitMediaConvertJob', + 'translator' => 'machine', + ], + 'GetMediaConvertJob' => [ + 'summary' => 'Obtains the details of a transcoding task.', + 'path' => '', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceEO4QPO', + ], + ], + 'parameters' => [ + [ + 'name' => 'JobId', + 'in' => 'query', + 'schema' => [ + 'title' => '作业ID。', + 'description' => 'The ID of the transcoding task.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '****d80e4e4044975745c14b****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => '查询转码作业返回结果', + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '4BAEA8E8-1C16-5CD3-AC50-CCBA81A53402', + ], + 'Job' => [ + 'title' => '转码作业', + 'description' => 'The transcoding task.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '创建转码作业的请求ID', + 'description' => 'The ID of the request for creating the transcoding task.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'ClientToken' => [ + 'title' => '创建转码作业请求的幂等参数', + 'description' => 'The idempotency key of the request for creating the transcoding task.'."\n", + 'type' => 'string', + 'example' => '780018cb-55ba-466d-8acc-946c0c319a0e ', + ], + 'JobId' => [ + 'title' => '转码作业 ID', + 'description' => 'The ID of the transcoding task, which is a 32-bit string.'."\n", + 'type' => 'string', + 'example' => '******4579b5e748b99a27f6d6******', + ], + 'Config' => [ + 'title' => '转码作业配置', + 'description' => 'The configurations of the transcoding task.'."\n", + 'type' => 'object', + 'properties' => [ + 'Inputs' => [ + 'title' => '转码作业输入列表', + 'description' => 'The inputs of the transcoding task.'."\n", + 'type' => 'array', + 'items' => [ + 'title' => '转码作业输入', + 'description' => 'The input of the transcoding task.'."\n", + '$ref' => '#/components/schemas/MediaConvertInput', + ], + ], + 'Outputs' => [ + 'title' => '转码作业输出配置列表', + 'description' => 'The output configurations.'."\n", + 'type' => 'array', + 'items' => [ + 'title' => '转码作业输出配置', + 'description' => 'The output configuration.'."\n", + '$ref' => '#/components/schemas/MediaConvertOutput', + ], + ], + 'OutputGroups' => [ + 'title' => '转码作业输出组列表', + 'description' => 'The output group configurations.'."\n", + 'type' => 'array', + 'items' => [ + 'title' => '转码作业输出组配置', + 'description' => 'The output group configuration.'."\n", + '$ref' => '#/components/schemas/MediaConvertOutputGroup', + ], + ], + 'JobName' => [ + 'type' => 'string', + ], + ], + ], + 'PipelineId' => [ + 'title' => '管道ID', + 'description' => 'The ID of the queue.'."\n", + 'type' => 'string', + 'example' => '83500cb2a3b94fabb0956e38d64bd16d', + ], + 'UserData' => [ + 'title' => '用户数据', + 'description' => 'The user data.'."\n", + 'type' => 'string', + 'example' => '{"videoId":"ddd333"}', + ], + 'Code' => [ + 'title' => '作业失败码', + 'description' => 'The error code returned when the transcoding task failed.'."\n", + 'type' => 'string', + 'example' => 'InvalidParameter.ResourceContentBad', + ], + 'Message' => [ + 'title' => '作业失败详细信息', + 'description' => 'The error message returned when the transcoding task failed.'."\n", + 'type' => 'string', + 'example' => 'The resource operated InputFile is bad', + ], + 'State' => [ + 'title' => '转码作业状态。'."\n" + .'● Inited : 初始化;'."\n" + .'● Running : 运行中;'."\n" + .'● Success : 转码成功;'."\n" + .'● Failed : 转码失败;'."\n" + .'● Cancelled : 已取消'."\n", + 'description' => 'The status of the transcoding task. Valid values:'."\n" + ."\n" + .'* Inited: The task is initialized.'."\n" + .'* Running'."\n" + .'* Success'."\n" + .'* Failed'."\n" + .'* Cancelled'."\n", + 'type' => 'string', + 'example' => 'Success', + ], + 'OutputDetails' => [ + 'title' => '转码输出结果详情', + 'description' => 'The details of the transcoded outputs, each corresponding to an output configuration.'."\n", + 'type' => 'array', + 'items' => [ + 'title' => '转码输出结果', + 'description' => 'The details of the transcoded output.'."\n", + '$ref' => '#/components/schemas/MediaConvertOutputDetail', + ], + ], + 'OutputGroupDetails' => [ + 'title' => '转码输出组结果列表', + 'description' => 'The details of the output groups, each corresponding to an output group configuration.'."\n", + 'type' => 'array', + 'items' => [ + 'title' => '转码输出组结果', + 'description' => 'The details of the output group.'."\n", + '$ref' => '#/components/schemas/MediaConvertOutputGroupDetail', + ], + ], + 'Percent' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'CreateTime' => [ + 'type' => 'string', + ], + 'FinishTime' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"4BAEA8E8-1C16-5CD3-AC50-CCBA81A53402\\",\\n \\"Job\\": {\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"ClientToken\\": \\"780018cb-55ba-466d-8acc-946c0c319a0e \\",\\n \\"JobId\\": \\"******4579b5e748b99a27f6d6******\\",\\n \\"Config\\": {\\n \\"Inputs\\": [\\n {\\n \\"Name\\": \\"\\",\\n \\"InputFile\\": {\\n \\"Type\\": \\"\\",\\n \\"Media\\": \\"\\",\\n \\"Url\\": \\"\\"\\n }\\n }\\n ],\\n \\"Outputs\\": [\\n {\\n \\"OutputFile\\": {\\n \\"Type\\": \\"\\",\\n \\"Media\\": \\"\\",\\n \\"Url\\": \\"\\"\\n },\\n \\"Priority\\": 0,\\n \\"OverrideParams\\": \\"\\",\\n \\"Features\\": \\"\\",\\n \\"TemplateId\\": \\"\\",\\n \\"Name\\": \\"\\"\\n }\\n ],\\n \\"OutputGroups\\": [\\n {\\n \\"GroupConfig\\": {\\n \\"OutputFileBase\\": {\\n \\"Type\\": \\"\\",\\n \\"Media\\": \\"\\",\\n \\"Url\\": \\"\\"\\n },\\n \\"ManifestName\\": \\"\\",\\n \\"Type\\": \\"\\"\\n },\\n \\"Outputs\\": [\\n {\\n \\"Priority\\": 0,\\n \\"OverrideParams\\": \\"\\",\\n \\"Features\\": \\"\\",\\n \\"OutputFileName\\": \\"\\",\\n \\"TemplateId\\": \\"\\",\\n \\"Name\\": \\"\\"\\n }\\n ],\\n \\"Name\\": \\"\\"\\n }\\n ],\\n \\"JobName\\": \\"job-1-20241205-102045\\"\\n },\\n \\"PipelineId\\": \\"83500cb2a3b94fabb0956e38d64bd16d\\",\\n \\"UserData\\": \\"{\\\\\\"videoId\\\\\\":\\\\\\"ddd333\\\\\\"}\\",\\n \\"Code\\": \\"InvalidParameter.ResourceContentBad\\",\\n \\"Message\\": \\"The resource operated InputFile is bad\\",\\n \\"State\\": \\"Complete\\",\\n \\"OutputDetails\\": [\\n {\\n \\"Status\\": \\"\\",\\n \\"TaskId\\": \\"\\",\\n \\"Message\\": \\"\\",\\n \\"FinishTime\\": \\"\\",\\n \\"CreateTime\\": \\"\\",\\n \\"Code\\": \\"\\",\\n \\"Name\\": \\"\\",\\n \\"Result\\": {\\n \\"OutputFile\\": {\\n \\"Type\\": \\"\\",\\n \\"Media\\": \\"\\",\\n \\"Url\\": \\"\\"\\n },\\n \\"OutFileMeta\\": {\\n \\"VideoStreamInfoList\\": [\\n {\\n \\"Rotate\\": \\"0\\",\\n \\"Codec_tag\\": \\"0x001b\\",\\n \\"Sar\\": \\"478:477\\",\\n \\"Start_time\\": \\"1.473556\\",\\n \\"Fps\\": \\"25.0\\",\\n \\"Index\\": \\"0\\",\\n \\"Duration\\": \\"403.039989\\",\\n \\"Lang\\": \\"cn\\",\\n \\"Codec_long_name\\": \\"H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10\\",\\n \\"PixFmt\\": \\"yuv420p\\",\\n \\"Bit_rate\\": \\"888.563\\",\\n \\"Profile\\": \\"High\\",\\n \\"Has_b_frames\\": \\"2\\",\\n \\"Codec_time_base\\": \\"\\",\\n \\"Dar\\": \\"16:9\\",\\n \\"Avg_fps\\": \\"25.0\\",\\n \\"Codec_tag_string\\": \\"[27][0][0][0]\\",\\n \\"Codec_name\\": \\"h264\\",\\n \\"Height\\": \\"478\\",\\n \\"Level\\": \\"31\\",\\n \\"Time_base\\": \\"1/90000\\",\\n \\"Width\\": \\"848\\",\\n \\"NumFrames\\": \\"10040\\"\\n }\\n ],\\n \\"AudioStreamInfoList\\": [\\n {\\n \\"CodecTag\\": \\"0x000f\\",\\n \\"CodecTimeBase\\": \\"1/44100\\",\\n \\"ChannelLayout\\": \\"stereo\\",\\n \\"StartTime\\": \\"1.473556\\",\\n \\"Index\\": \\"1\\",\\n \\"Duration\\": \\"403.039989\\",\\n \\"Lang\\": \\"cn\\",\\n \\"SampleFmt\\": \\"fltp\\",\\n \\"CodecName\\": \\"aac\\",\\n \\"Bitrate\\": \\"0.f\\",\\n \\"Channels\\": \\"2\\",\\n \\"Timebase\\": \\"1/90000\\",\\n \\"CodecTagString\\": \\"[15][0][0][0]\\",\\n \\"SampleRate\\": \\"44100\\",\\n \\"CodecLongName\\": \\"AAC (Advanced Audio Coding)\\"\\n }\\n ],\\n \\"FileBasicInfo\\": {\\n \\"FileUrl\\": \\"http://bucket.oss-cn-shanghai.aliyuncs.com/path/to/file.m3u8\\",\\n \\"FileStatus\\": \\"Normal\\",\\n \\"MediaId\\": \\"\\",\\n \\"FileType\\": \\"source_file\\",\\n \\"FileName\\": \\"file.m3u8\\",\\n \\"Region\\": \\"cn-shanghai\\",\\n \\"FormatName\\": \\"hls,applehttp\\",\\n \\"Duration\\": \\"403.039999\\",\\n \\"Height\\": \\"478\\",\\n \\"Bitrate\\": \\"888.563\\",\\n \\"Width\\": \\"848\\",\\n \\"FileSize\\": \\"31737\\"\\n }\\n }\\n }\\n }\\n ],\\n \\"OutputGroupDetails\\": [\\n {\\n \\"Status\\": \\"\\",\\n \\"TaskId\\": \\"\\",\\n \\"Message\\": \\"\\",\\n \\"FinishTime\\": \\"\\",\\n \\"CreateTime\\": \\"\\",\\n \\"Outputs\\": [\\n {\\n \\"Status\\": \\"\\",\\n \\"TaskId\\": \\"\\",\\n \\"Message\\": \\"\\",\\n \\"FinishTime\\": \\"\\",\\n \\"CreateTime\\": \\"\\",\\n \\"Code\\": \\"\\",\\n \\"Name\\": \\"\\",\\n \\"Result\\": {\\n \\"OutputFile\\": {\\n \\"Type\\": \\"\\",\\n \\"Media\\": \\"\\",\\n \\"Url\\": \\"\\"\\n },\\n \\"OutFileMeta\\": {\\n \\"VideoStreamInfoList\\": [\\n {\\n \\"Rotate\\": \\"0\\",\\n \\"Codec_tag\\": \\"0x001b\\",\\n \\"Sar\\": \\"478:477\\",\\n \\"Start_time\\": \\"1.473556\\",\\n \\"Fps\\": \\"25.0\\",\\n \\"Index\\": \\"0\\",\\n \\"Duration\\": \\"403.039989\\",\\n \\"Lang\\": \\"cn\\",\\n \\"Codec_long_name\\": \\"H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10\\",\\n \\"PixFmt\\": \\"yuv420p\\",\\n \\"Bit_rate\\": \\"888.563\\",\\n \\"Profile\\": \\"High\\",\\n \\"Has_b_frames\\": \\"2\\",\\n \\"Codec_time_base\\": \\"\\",\\n \\"Dar\\": \\"16:9\\",\\n \\"Avg_fps\\": \\"25.0\\",\\n \\"Codec_tag_string\\": \\"[27][0][0][0]\\",\\n \\"Codec_name\\": \\"h264\\",\\n \\"Height\\": \\"478\\",\\n \\"Level\\": \\"31\\",\\n \\"Time_base\\": \\"1/90000\\",\\n \\"Width\\": \\"848\\",\\n \\"NumFrames\\": \\"10040\\"\\n }\\n ],\\n \\"AudioStreamInfoList\\": [\\n {\\n \\"CodecTag\\": \\"0x000f\\",\\n \\"CodecTimeBase\\": \\"1/44100\\",\\n \\"ChannelLayout\\": \\"stereo\\",\\n \\"StartTime\\": \\"1.473556\\",\\n \\"Index\\": \\"1\\",\\n \\"Duration\\": \\"403.039989\\",\\n \\"Lang\\": \\"cn\\",\\n \\"SampleFmt\\": \\"fltp\\",\\n \\"CodecName\\": \\"aac\\",\\n \\"Bitrate\\": \\"0.f\\",\\n \\"Channels\\": \\"2\\",\\n \\"Timebase\\": \\"1/90000\\",\\n \\"CodecTagString\\": \\"[15][0][0][0]\\",\\n \\"SampleRate\\": \\"44100\\",\\n \\"CodecLongName\\": \\"AAC (Advanced Audio Coding)\\"\\n }\\n ],\\n \\"FileBasicInfo\\": {\\n \\"FileUrl\\": \\"http://bucket.oss-cn-shanghai.aliyuncs.com/path/to/file.m3u8\\",\\n \\"FileStatus\\": \\"Normal\\",\\n \\"MediaId\\": \\"\\",\\n \\"FileType\\": \\"source_file\\",\\n \\"FileName\\": \\"file.m3u8\\",\\n \\"Region\\": \\"cn-shanghai\\",\\n \\"FormatName\\": \\"hls,applehttp\\",\\n \\"Duration\\": \\"403.039999\\",\\n \\"Height\\": \\"478\\",\\n \\"Bitrate\\": \\"888.563\\",\\n \\"Width\\": \\"848\\",\\n \\"FileSize\\": \\"31737\\"\\n }\\n }\\n }\\n }\\n ],\\n \\"Code\\": \\"\\",\\n \\"Name\\": \\"\\"\\n }\\n ],\\n \\"Percent\\": 0,\\n \\"CreateTime\\": \\"2024-12-07T13:01:07Z\\\\n\\",\\n \\"FinishTime\\": \\"2024-12-07T13:01:07Z\\\\n\\"\\n }\\n}","type":"json"}]', + 'title' => 'GetMediaConvertJob', + ], + 'ListMediaConvertJobs' => [ + 'summary' => 'Retrieves MediaConvert tasks.', + 'path' => '', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceHPAMBQ', + 'FEATUREice5MI8QL', + 'FEATUREiceCJ90B2', + 'FEATUREice6MQPM7', + ], + ], + 'parameters' => [ + [ + 'name' => 'JobId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The task ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '88c6ca184c0e47098a5b665e2****', + ], + ], + [ + 'name' => 'StartOfCreateTime', + 'in' => 'query', + 'schema' => [ + 'title' => '任务创建时间筛选条件的起始时间。格式为: yyyy-MM-ddTHH:mm:ssZ。', + 'description' => 'The beginning of the time range to query. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2022-07-01T00:00:00Z', + ], + ], + [ + 'name' => 'EndOfCreateTime', + 'in' => 'query', + 'schema' => [ + 'title' => '任务创建时间筛选条件的结束时间。格式为: yyyy-MM-ddTHH:mm:ssZ。', + 'description' => 'The end of the time range to query. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2022-07-15T00:00:00Z', + ], + ], + [ + 'name' => 'Status', + 'in' => 'query', + 'schema' => [ + 'title' => '任务状态 - Init: 已提交, Success: 成功, Fail: 失败', + 'description' => 'The task status.'."\n" + ."\n" + .'* Inited: submitted'."\n" + .'* Running'."\n" + .'* Complete'."\n" + .'* Error'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'Success', + ], + ], + [ + 'name' => 'OrderBy', + 'in' => 'query', + 'schema' => [ + 'title' => '排序顺序。目前只支持两种:CreateTimeDesc: 按创建时间降序 和 CreateTimeAsc: 按创建时间升序', + 'description' => 'The sorting order. Valid values: CreateTimeDesc: sorts by create time in descending order. CreateTimeAsc: sorts by create time in ascending order.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'CreateTimeDesc', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'title' => '分页大小。范围: 0~100,默认值:20。', + 'description' => 'The number of entries per page. Valid values: 0 to 100. Default value: 20.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '10', + ], + ], + [ + 'name' => 'NextPageToken', + 'in' => 'query', + 'schema' => [ + 'title' => '连续分页查询时下一页的标记 (第一页没有)。', + 'description' => 'The pagination token that is used in the next request to retrieve a new page of results. You do not need to specify this parameter for the first request.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'ab4802364a2e49208c99efab82dfa8e8', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'NextPageToken' => [ + 'title' => '表示当前调用返回读取到的位置,空代表数据已经读取完毕', + 'description' => 'Indicates the read position returned by the current call. An empty value means all data has been read.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '****cdb3e74639973036bc84****'."\n", + ], + 'Jobs' => [ + 'description' => 'The tasks.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The task information without details.'."\n", + '$ref' => '#/components/schemas/MediaConvertJobWithoutDetail', + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"NextPageToken\\": \\"****cdb3e74639973036bc84****\\\\n\\",\\n \\"Jobs\\": [\\n {\\n \\"RequestId\\": \\"\\",\\n \\"Message\\": \\"\\",\\n \\"FinishTime\\": \\"\\",\\n \\"UserData\\": \\"\\",\\n \\"Config\\": {\\n \\"Outputs\\": [\\n {\\n \\"OutputFile\\": {\\n \\"Type\\": \\"\\",\\n \\"Media\\": \\"\\",\\n \\"Url\\": \\"\\"\\n },\\n \\"Priority\\": 0,\\n \\"OverrideParams\\": \\"\\",\\n \\"Features\\": \\"\\",\\n \\"TemplateId\\": \\"\\",\\n \\"Name\\": \\"\\"\\n }\\n ],\\n \\"JobName\\": \\"\\",\\n \\"OutputGroups\\": [\\n {\\n \\"GroupConfig\\": {\\n \\"OutputFileBase\\": {\\n \\"Type\\": \\"\\",\\n \\"Media\\": \\"\\",\\n \\"Url\\": \\"\\"\\n },\\n \\"ManifestName\\": \\"\\",\\n \\"Type\\": \\"\\"\\n },\\n \\"Outputs\\": [\\n {\\n \\"Priority\\": 0,\\n \\"OverrideParams\\": \\"\\",\\n \\"Features\\": \\"\\",\\n \\"OutputFileName\\": \\"\\",\\n \\"TemplateId\\": \\"\\",\\n \\"Name\\": \\"\\"\\n }\\n ],\\n \\"Name\\": \\"\\"\\n }\\n ],\\n \\"Inputs\\": [\\n {\\n \\"Name\\": \\"\\",\\n \\"InputFile\\": {\\n \\"Type\\": \\"\\",\\n \\"Media\\": \\"\\",\\n \\"Url\\": \\"\\"\\n }\\n }\\n ]\\n },\\n \\"State\\": \\"\\",\\n \\"CreateTime\\": \\"\\",\\n \\"PipelineId\\": \\"\\",\\n \\"ClientToken\\": \\"\\",\\n \\"TriggerSource\\": \\"\\",\\n \\"Code\\": \\"\\",\\n \\"JobId\\": \\"\\"\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'ListMediaConvertJobs', + ], + 'GetMediaConnectAvailableRegion' => [ + 'summary' => 'Retrieves all regions where MediaConnect is available.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceQU6W9M', + ], + ], + 'parameters' => [], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response content.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '41CB9D4C-4650-5723-BA89-D6824F706ACB', + ], + 'RetCode' => [ + 'description' => 'The returned error code. A value of 0 indicates the call is successful.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'Description' => [ + 'description' => 'The call description.'."\n", + 'type' => 'string', + 'example' => 'OK', + ], + 'Content' => [ + 'description' => 'The rsponse body.'."\n", + 'type' => 'object', + 'properties' => [ + 'RegionList' => [ + 'description' => 'The supported regions.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The region name.'."\n", + 'type' => 'string', + 'example' => '[\'cn-shanghai\', \'cn-qingdao\']', + ], + ], + 'DefaultRegion' => [ + 'description' => 'The default region. You can ignore the parameter.'."\n", + 'type' => 'string', + 'example' => 'cn-shanghai', + ], + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"41CB9D4C-4650-5723-BA89-D6824F706ACB\\",\\n \\"RetCode\\": 0,\\n \\"Description\\": \\"OK\\",\\n \\"Content\\": {\\n \\"RegionList\\": [\\n \\"[\'cn-shanghai\', \'cn-qingdao\']\\"\\n ],\\n \\"DefaultRegion\\": \\"cn-shanghai\\"\\n }\\n}","type":"json"}]', + 'title' => 'GetMediaConnectAvailableRegion', + ], + 'ForbidMediaConnectFlowOutput' => [ + 'summary' => 'Disables an output of a MediaConnect flow. When disabled, the output retains its configuration, but no live stream is delivered to the destination.', + 'path' => '', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceFFXT3K', + ], + ], + 'parameters' => [ + [ + 'name' => 'FlowId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the MediaConnect flow.', + 'type' => 'string', + 'required' => false, + 'example' => '34900dc6-90ec-4968-af3c-fcd87f231a5f', + ], + ], + [ + 'name' => 'OutputName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the output.', + 'type' => 'string', + 'required' => false, + 'example' => 'AliTestOutput', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response.', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.', + 'type' => 'string', + 'example' => '1BCA0CFC-CBD4-5656-9D04-21B1FADBB92A', + ], + 'Description' => [ + 'description' => 'The call description.', + 'type' => 'string', + 'example' => 'OK', + ], + 'RetCode' => [ + 'description' => 'The returned error code. A value of 0 indicates the call is successful.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'Content' => [ + 'description' => 'The response body.', + 'type' => 'string', + 'example' => '""', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1BCA0CFC-CBD4-5656-9D04-21B1FADBB92A\\",\\n \\"Description\\": \\"OK\\",\\n \\"RetCode\\": 0,\\n \\"Content\\": \\"\\\\\\"\\\\\\"\\"\\n}","type":"json"}]', + 'title' => 'ForbidMediaConnectFlowOutput', + ], + 'ResumeMediaConnectFlowOutput' => [ + 'summary' => 'Resumes an output of a MediaConnect flow. When resumed, the output can deliver the live stream to the destination.', + 'path' => '', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceFFXT3K', + ], + ], + 'parameters' => [ + [ + 'name' => 'FlowId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the MediaConnect flow.', + 'type' => 'string', + 'required' => false, + 'example' => '34900dc6-90ec-4968-af3c-fcd87f231a5f', + ], + ], + [ + 'name' => 'OutputName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the output.', + 'type' => 'string', + 'required' => false, + 'example' => 'AliTestOutput', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response.', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.', + 'type' => 'string', + 'example' => '31E30781-9495-5E2D-A84D-759B0A01E262', + ], + 'Description' => [ + 'description' => 'The call description.', + 'type' => 'string', + 'example' => 'OK', + ], + 'RetCode' => [ + 'description' => 'The returned error code. A value of 0 indicates the call is successful.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'Content' => [ + 'description' => 'The response body.', + 'type' => 'string', + 'example' => '""', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"31E30781-9495-5E2D-A84D-759B0A01E262\\",\\n \\"Description\\": \\"OK\\",\\n \\"RetCode\\": 0,\\n \\"Content\\": \\"\\\\\\"\\\\\\"\\"\\n}","type":"json"}]', + 'title' => 'ResumeMediaConnectFlowOutput', + ], + 'GetMediaConnectFlowAllOutputName' => [ + 'summary' => 'Retrieves the names of all outputs for a MediaConnect flow.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceQU6W9M', + ], + ], + 'parameters' => [ + [ + 'name' => 'FlowId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the MediaConnect flow.', + 'type' => 'string', + 'required' => true, + 'example' => '0381f478-7d53-4076-9d5f-27680a6f73e7', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response.', + 'type' => 'object', + 'properties' => [ + 'Description' => [ + 'title' => 'Id of the request', + 'description' => 'The call description.', + 'type' => 'string', + 'example' => 'OK', + ], + 'Content' => [ + 'description' => 'The response body, as an array of strings.', + 'type' => 'array', + 'items' => [ + 'description' => 'The name of an output.', + 'type' => 'string', + 'example' => '[\'output1\',\'output2\']', + ], + ], + 'RetCode' => [ + 'description' => 'The returned error code. A value of 0 indicates the call is successful.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '559E9828-245D-5CBA-9C7A-4E01453F091F', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Description\\": \\"OK\\",\\n \\"Content\\": [\\n \\"[\'output1\',\'output2\']\\"\\n ],\\n \\"RetCode\\": 0,\\n \\"RequestId\\": \\"559E9828-245D-5CBA-9C7A-4E01453F091F\\"\\n}","type":"json"}]', + 'title' => 'GetMediaConnectFlowAllOutputName', + ], + 'CloseMediaConnectFlowFailover' => [ + 'summary' => 'Disables Source Failover for a MediaConnect flow.', + 'path' => '', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceFFXT3K', + ], + ], + 'parameters' => [ + [ + 'name' => 'FlowId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the MediaConnect flow.', + 'type' => 'string', + 'required' => false, + 'example' => '34900dc6-90ec-4968-af3c-fcd87f231a5f', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response.', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '391DDF25-705C-5B38-9DB9-7A6B00D6065A', + ], + 'Description' => [ + 'description' => 'The call description.'."\n", + 'type' => 'string', + 'example' => 'OK', + ], + 'RetCode' => [ + 'description' => 'The returned error code. A value of 0 indicates the call is successful.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'Content' => [ + 'description' => 'The response body.'."\n", + 'type' => 'string', + 'example' => '""', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"391DDF25-705C-5B38-9DB9-7A6B00D6065A\\",\\n \\"Description\\": \\"OK\\",\\n \\"RetCode\\": 0,\\n \\"Content\\": \\"\\\\\\"\\\\\\"\\"\\n}","type":"json"}]', + 'title' => 'CloseMediaConnectFlowFailover', + 'description' => '* If a flow has two sources, you cannot disable Source Failover. Delete one of them before this operation.'."\n", + ], + 'OpenMediaConnectFlowFailover' => [ + 'summary' => 'Enables Source Failover for a MediaConnect flow.', + 'path' => '', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceFFXT3K', + ], + ], + 'parameters' => [ + [ + 'name' => 'FlowId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the MediaConnect flow.', + 'type' => 'string', + 'required' => false, + 'example' => '34900dc6-90ec-4968-af3c-fcd87f231a5f'."\n", + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response.', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.', + 'type' => 'string', + 'example' => '11357BE8-4C54-58EA-890A-5AB646EDE4B2', + ], + 'Description' => [ + 'description' => 'The call description.', + 'type' => 'string', + 'example' => 'OK', + ], + 'RetCode' => [ + 'description' => 'The returned error code. A value of 0 indicates the call is successful.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'Content' => [ + 'description' => 'The response body.', + 'type' => 'string', + 'example' => '""', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"11357BE8-4C54-58EA-890A-5AB646EDE4B2\\",\\n \\"Description\\": \\"OK\\",\\n \\"RetCode\\": 0,\\n \\"Content\\": \\"\\\\\\"\\\\\\"\\"\\n}","type":"json"}]', + 'title' => 'OpenMediaConnectFlowFailover', + 'description' => '* Before this operation, you must add a source to the flow.'."\n" + .'* After Source Failover is enabled, you can add an additional source. The input type of the two sources must be identical.'."\n", + ], + 'UpdateMediaConnectFlowOutput' => [ + 'summary' => 'Modifies an output of a MediaConnect flow.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceQU6W9M', + ], + ], + 'parameters' => [ + [ + 'name' => 'FlowId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The flow ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '34900dc6-90ec-4968-af3c-fcd87f231a5f', + ], + ], + [ + 'name' => 'OutputName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The output name.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'AliTestOutput', + ], + ], + [ + 'name' => 'Cidrs', + 'in' => 'query', + 'schema' => [ + 'description' => 'The IP address whitelist.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '19.168.1.1/32,18.168.1.1/16', + ], + ], + [ + 'name' => 'SrtLatency', + 'in' => 'query', + 'schema' => [ + 'description' => 'The latency for the SRT stream. You can modify this parameter only when the source type is SRT-Listener or SRT-Caller.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '1000', + ], + ], + [ + 'name' => 'SrtPassphrase', + 'in' => 'query', + 'schema' => [ + 'description' => 'The SRT key. You can modify this parameter only when the source type is SRT-Listener or SRT-Caller.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'FICUBPX4Q77DYHRF', + ], + ], + [ + 'name' => 'SrtPbkeyLen', + 'in' => 'query', + 'schema' => [ + 'description' => 'The encryption key length. You can modify this parameter only when the source type is SRT-Listener or SRT-Caller.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '32', + ], + ], + [ + 'name' => 'OutputToUrl', + 'in' => 'query', + 'schema' => [ + 'description' => 'The output URL. You can modify this parameter only when the output type is RTMP-PUSH or SRT-Caller.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'rtmp://push.test.alivecdn.com/live/alitest', + ], + ], + [ + 'name' => 'PlayerLimit', + 'in' => 'query', + 'schema' => [ + 'description' => 'The maximum number of viewers.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '5', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response content.'."\n", + 'type' => 'object', + 'properties' => [ + 'Content' => [ + 'title' => 'Id of the request', + 'description' => 'The response body.'."\n", + 'type' => 'string', + 'example' => '""', + ], + 'Description' => [ + 'description' => 'The call description.'."\n", + 'type' => 'string', + 'example' => 'OK', + ], + 'RetCode' => [ + 'description' => 'The returned error code. A value of 0 indicates the call is successful.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => 'D737D0BC-4CB5-55AA-8119-B540C95DFE6A', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Content\\": \\"\\\\\\"\\\\\\"\\",\\n \\"Description\\": \\"OK\\",\\n \\"RetCode\\": 0,\\n \\"RequestId\\": \\"D737D0BC-4CB5-55AA-8119-B540C95DFE6A\\"\\n}","type":"json"}]', + 'title' => 'UpdateMediaConnectFlowOutput', + 'description' => '* You can modify an output only when the flow is in the offline state.'."\n" + .'* The output type cannot be modified.'."\n", + ], + 'GetMediaConnectFlowOutput' => [ + 'summary' => 'Obtains information about an output of a MediaConnect flow.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceQU6W9M', + ], + ], + 'parameters' => [ + [ + 'name' => 'FlowId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The flow ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '0381f478-7d53-4076-9d5f-27680a6f73e7', + ], + ], + [ + 'name' => 'OutputName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the output that you want to query.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'AliTestOutput', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response content.'."\n", + 'type' => 'object', + 'properties' => [ + 'Content' => [ + 'description' => 'The response body.'."\n", + 'type' => 'object', + 'properties' => [ + 'OutputName' => [ + 'description' => 'The output name.'."\n", + 'type' => 'string', + 'example' => 'AliTestInput', + ], + 'OutputProtocol' => [ + 'description' => 'The output type.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* RTMP-PUSH'."\n" + .'* SRT-Caller'."\n" + .'* RTMP-PULL'."\n" + .'* SRT-Listener'."\n" + .'* Flow'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'RTMP-PUSH' => 'RTMP-PUSH', + 'SRT-Caller' => 'SRT-Caller', + 'RTMP-PULL' => 'RTMP-PULL', + 'SRT-Listener' => 'SRT-Listener', + 'Flow' => 'Flow', + ], + 'example' => 'SRT-PULL', + ], + 'Cidrs' => [ + 'description' => 'The IP address whitelist in CIDR format. CIDR blocks are separated with commas (,).'."\n", + 'type' => 'string', + 'example' => '10.211.0.0/17', + ], + 'OutputUrl' => [ + 'description' => 'The output URL.'."\n", + 'type' => 'string', + 'example' => 'srt://1.2.3.4:1025', + ], + 'SrtLatency' => [ + 'description' => 'The latency for the SRT stream. Unit: milliseconds. This parameter is returned when the source type is SRT-Listener or SRT-Caller.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1000', + ], + 'SrtPassphrase' => [ + 'description' => 'The SRT key. This parameter is returned when the source type is SRT-Listener or SRT-Caller.'."\n", + 'type' => 'string', + 'example' => 'FICUBPX4Q77DYHRF', + ], + 'SrtPbkeyLen' => [ + 'description' => 'The encryption key length. This parameter is returned when the source type is SRT-Listener or SRT-Caller.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* 0'."\n" + .'* 16'."\n" + .'* 24'."\n" + .'* 32'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'enumValueTitles' => [ + '0', + 16 => '16', + 24 => '24', + 32 => '32', + ], + 'example' => '32', + ], + 'PairFlowId' => [ + 'description' => 'The ID of the destination flow. This parameter is returned when the output type is Flow.'."\n", + 'type' => 'string', + 'example' => '805fbdd0-575e-4146-b35d-ec7f63937b20', + ], + 'PairInputName' => [ + 'description' => 'The source name of the destination flow. This parameter is returned when the output type is Flow.'."\n", + 'type' => 'string', + 'example' => 'AliTestInput', + ], + 'PlayerLimit' => [ + 'description' => 'The maximum number of viewers.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '5', + ], + 'CreateTime' => [ + 'description' => 'The time when the flow was created.'."\n", + 'type' => 'string', + 'example' => '2024-07-18T01:29:24Z', + ], + 'Forbid' => [ + 'type' => 'string', + ], + ], + ], + 'Description' => [ + 'description' => 'The call description.'."\n", + 'type' => 'string', + 'example' => 'OK', + ], + 'RetCode' => [ + 'description' => 'The returned error code. A value of 0 indicates the call is successful.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '0DB23DCE-0D69-598B-AA7C-7268D55E2F89', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Content\\": {\\n \\"OutputName\\": \\"AliTestInput\\",\\n \\"OutputProtocol\\": \\"SRT-PULL\\",\\n \\"Cidrs\\": \\"10.211.0.0/17\\",\\n \\"OutputUrl\\": \\"srt://1.2.3.4:1025\\",\\n \\"SrtLatency\\": 1000,\\n \\"SrtPassphrase\\": \\"FICUBPX4Q77DYHRF\\",\\n \\"SrtPbkeyLen\\": 32,\\n \\"PairFlowId\\": \\"805fbdd0-575e-4146-b35d-ec7f63937b20\\",\\n \\"PairInputName\\": \\"AliTestInput\\",\\n \\"PlayerLimit\\": 5,\\n \\"CreateTime\\": \\"2024-07-18T01:29:24Z\\",\\n \\"Forbid\\": \\"no\\"\\n },\\n \\"Description\\": \\"OK\\",\\n \\"RetCode\\": 0,\\n \\"RequestId\\": \\"0DB23DCE-0D69-598B-AA7C-7268D55E2F89\\"\\n}","type":"json"}]', + 'title' => 'GetMediaConnectFlowOutput', + 'description' => '* When the specified flow ID is not available, an error code is returned.'."\n", + ], + 'DeleteMediaConnectFlowOutput' => [ + 'summary' => 'Deletes an output of a MediaConnect flow.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceQU6W9M', + ], + ], + 'parameters' => [ + [ + 'name' => 'FlowId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The flow ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '34900dc6-90ec-4968-af3c-fcd87f231a5f', + ], + ], + [ + 'name' => 'OutputName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the output that you want to delete.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'AliTestOutput', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response content.'."\n", + 'type' => 'object', + 'properties' => [ + 'Content' => [ + 'title' => 'Id of the request', + 'description' => 'The response body.'."\n", + 'type' => 'string', + 'example' => '""', + ], + 'Description' => [ + 'description' => 'The call description.'."\n", + 'type' => 'string', + 'example' => 'OK', + ], + 'RetCode' => [ + 'description' => 'The returned error code. A value of 0 indicates the call is successful.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => 'DF73E08E-F807-50F5-A2BD-B76391EAE8FF', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Content\\": \\"\\\\\\"\\\\\\"\\",\\n \\"Description\\": \\"OK\\",\\n \\"RetCode\\": 0,\\n \\"RequestId\\": \\"DF73E08E-F807-50F5-A2BD-B76391EAE8FF\\"\\n}","type":"json"}]', + 'title' => 'DeleteMediaConnectFlowOutput', + 'description' => '* When the specified flow ID is not available, an error code is returned.'."\n" + .'* When a flow is in the online state, its outputs cannot be deleted.'."\n", + ], + 'AddMediaConnectFlowOutput' => [ + 'summary' => 'Creates an output for a MediaConnect flow.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceQU6W9M', + ], + ], + 'parameters' => [ + [ + 'name' => 'FlowId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The flow ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '34900dc6-90ec-4968-af3c-fcd87f231a5f'."\n", + ], + ], + [ + 'name' => 'OutputProtocol', + 'in' => 'query', + 'schema' => [ + 'description' => 'The output type.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* RTMP-PUSH'."\n" + .'* SRT-Caller'."\n" + .'* RTMP-PULL'."\n" + .'* SRT-Listener'."\n" + .'* Flow'."\n", + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'RTMP-PUSH' => 'RTMP-PUSH', + 'SRT-Caller' => 'SRT-Caller', + 'RTMP-PULL' => 'RTMP-PULL', + 'SRT-Listener' => 'SRT-Listener', + 'Flow' => 'Flow', + ], + 'example' => 'RTMP-PULL', + ], + ], + [ + 'name' => 'OutputToUrl', + 'in' => 'query', + 'schema' => [ + 'description' => 'The output URL. This parameter is required when OutputProtocol is set to RTMP-PUSH or SRT-Caller.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'rtmp://push.test.alivecdn.com/live/alitest', + ], + ], + [ + 'name' => 'OutputName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The output name.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'AliTestOutput', + ], + ], + [ + 'name' => 'Cidrs', + 'in' => 'query', + 'schema' => [ + 'description' => 'The IP address whitelist in CIDR format. Separate multiple CIDR blocks with commas (,).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '83.17.231.31/32', + ], + ], + [ + 'name' => 'PlayerLimit', + 'in' => 'query', + 'schema' => [ + 'description' => 'The maximum number of viewers.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '5', + ], + ], + [ + 'name' => 'PairInputName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The source name of the destination flow. This parameter is required when OutputProtocol is set to Flow.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'AliTestInput', + ], + ], + [ + 'name' => 'SrtLatency', + 'in' => 'query', + 'schema' => [ + 'description' => 'The latency for the SRT stream. This parameter is required when the source type is SRT-Listener or SRT-Caller.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1000', + ], + ], + [ + 'name' => 'SrtPbkeyLen', + 'in' => 'query', + 'schema' => [ + 'description' => 'The encryption key length. This parameter is required when the source type is SRT-Listener or SRT-Caller.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '32', + ], + ], + [ + 'name' => 'SrtPassphrase', + 'in' => 'query', + 'schema' => [ + 'description' => 'The SRT key. This parameter is required when the source type is SRT-Listener or SRT-Caller.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'BETTERG08S01', + ], + ], + [ + 'name' => 'PairFlowId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the destination flow. This parameter is required when OutputProtocol is set to Flow.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '8666ec062190f00e263012666319a5be', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'Content' => [ + 'description' => 'The response body.'."\n", + 'type' => 'object', + 'properties' => [ + 'OutputUrl' => [ + 'description' => 'The output URL.'."\n", + 'type' => 'string', + 'example' => 'srt://1.2.3.4:1025', + ], + ], + ], + 'Description' => [ + 'description' => 'The call description.'."\n", + 'type' => 'string', + 'example' => 'ok', + ], + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '11AA9E73-FBA0-58DC-97BA-D606D847BCB6', + ], + 'RetCode' => [ + 'description' => 'The returned error code. A value of 0 indicates that the call is successful.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Content\\": {\\n \\"OutputUrl\\": \\"srt://1.2.3.4:1025\\"\\n },\\n \\"Description\\": \\"ok\\",\\n \\"RequestId\\": \\"11AA9E73-FBA0-58DC-97BA-D606D847BCB6\\",\\n \\"RetCode\\": 0\\n}","type":"json"}]', + 'title' => 'AddMediaConnectFlowOutput', + 'description' => '* When the specified flow ID is not available, an error code is returned.'."\n" + .'* A flow can have a maximum of four outputs.'."\n" + .'* The output names in the same flow cannot be duplicated.'."\n" + .'* You can set an upper limit on the number of concurrent viewers for each output. If this limit is exceeded, any new playback requests will fail. Each output supports up to five streams.'."\n" + ."\n" + .'### [](#)Output types'."\n" + ."\n" + .'* RTMP-PUSH: An output that the MediaConnect flow pushes to the server you specified over the RTMP protocol.'."\n" + .'* RTMP-PULL: An output that you can pull using the returned streaming URL over the RTMP protocol.'."\n" + .'* SRT-Caller: An output that the MediaConnect flow pushes to the server you specified over the SRT protocol.'."\n" + .'* SRT-Listener: An output that you can pull using the returned streaming URL over the SRT protocol.'."\n" + .'* Flow: An output that is pushed to the source URL of another MediaConnect flow. The source type of the destination flow must be SRT-Listener or RTMP-PUSH. By default, a dedicated line is used when flows are cascaded. This allows for cross-region distribution among multiple flows.'."\n", + ], + 'DeleteMediaConnectFlowInput' => [ + 'summary' => 'Deletes the source of a MediaConnect flow.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceQU6W9M', + ], + ], + 'parameters' => [ + [ + 'name' => 'FlowId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The flow ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '0381f478-7d53-4076-9d5f-27680a6f73e7', + ], + ], + [ + 'name' => 'InputName', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response content.'."\n", + 'type' => 'object', + 'properties' => [ + 'Description' => [ + 'title' => 'Id of the request', + 'description' => 'The call description.'."\n", + 'type' => 'string', + 'example' => 'OK', + ], + 'RetCode' => [ + 'description' => 'The returned error code. A value of 0 indicates the call is successful.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'Content' => [ + 'description' => 'The response body.'."\n", + 'type' => 'string', + 'example' => '""', + ], + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => 'C0C02296-113C-5838-8FE9-8F3A32998DDC', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Description\\": \\"OK\\",\\n \\"RetCode\\": 0,\\n \\"Content\\": \\"\\\\\\"\\\\\\"\\",\\n \\"RequestId\\": \\"C0C02296-113C-5838-8FE9-8F3A32998DDC\\"\\n}","type":"json"}]', + 'title' => 'DeleteMediaConnectFlowInput', + 'description' => '* When the specified flow ID is not available, an error code is returned.'."\n" + .'* When a flow is in the online state, its source cannot be deleted.'."\n" + .'* You can delete the source only after all outputs of the flow have been deleted.'."\n", + ], + 'UpdateMediaConnectFlowInput' => [ + 'summary' => 'Modifies the source of a MediaConnect flow.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceQU6W9M', + ], + ], + 'parameters' => [ + [ + 'name' => 'FlowId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The flow ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '34900dc6-90ec-4968-af3c-fcd87f231a5f', + ], + ], + [ + 'name' => 'Cidrs', + 'in' => 'query', + 'schema' => [ + 'description' => 'The IP address whitelist.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '19.168.1.1/32,18.168.1.1/16', + ], + ], + [ + 'name' => 'SrtLatency', + 'in' => 'query', + 'schema' => [ + 'description' => 'The latency for the SRT stream. You can modify this parameter only when the source type is SRT-Listener or SRT-Caller.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1000', + ], + ], + [ + 'name' => 'SrtPassphrase', + 'in' => 'query', + 'schema' => [ + 'description' => 'The SRT key. You can modify this parameter only when the source type is SRT-Listener or SRT-Caller.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'FICUBPX4Q77DYHRF', + ], + ], + [ + 'name' => 'SrtPbkeyLen', + 'in' => 'query', + 'schema' => [ + 'description' => 'The encryption key length. You can modify this parameter only when the source type is SRT-Listener or SRT-Caller.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '32', + ], + ], + [ + 'name' => 'InputFromUrl', + 'in' => 'query', + 'schema' => [ + 'description' => 'The source URL. You can modify this parameter only when the source type is RTMP-PULL or SRT-Listener.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'rtmp://pull.test.alivecdn.com/live/alitest', + ], + ], + [ + 'name' => 'MaxBitrate', + 'in' => 'query', + 'schema' => [ + 'description' => 'The maximum bitrate. Unit: bit/s.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '2000000', + ], + ], + [ + 'name' => 'InputName', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response content.'."\n", + 'type' => 'object', + 'properties' => [ + 'Description' => [ + 'title' => 'Id of the request', + 'description' => 'The call description.'."\n", + 'type' => 'string', + 'example' => 'OK', + ], + 'RetCode' => [ + 'description' => 'The returned error code. A value of 0 indicates the call is successful.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'Content' => [ + 'description' => 'The response body.'."\n", + 'type' => 'string', + 'example' => '""', + ], + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '52451256-FFEA-5D2E-AA60-EE7053000F22', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Description\\": \\"OK\\",\\n \\"RetCode\\": 0,\\n \\"Content\\": \\"\\\\\\"\\\\\\"\\",\\n \\"RequestId\\": \\"52451256-FFEA-5D2E-AA60-EE7053000F22\\"\\n}","type":"json"}]', + 'title' => 'UpdateMediaConnectFlowInput', + 'description' => '* You can modify the source only when the flow is in the offline state.'."\n" + .'* The source type cannot be modified.'."\n", + ], + 'GetMediaConnectFlowInput' => [ + 'summary' => 'Obtains information about the source of a MediaConnect flow.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceQU6W9M', + ], + ], + 'parameters' => [ + [ + 'name' => 'FlowId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The flow ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '34900dc6-90ec-4968-af3c-fcd87f231a5f', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response content.'."\n", + 'type' => 'object', + 'properties' => [ + 'Content' => [ + 'description' => 'The response body.'."\n", + 'type' => 'object', + 'properties' => [ + 'InputName' => [ + 'description' => 'The source name.'."\n", + 'type' => 'string', + 'example' => 'AliTestInput', + ], + 'InputProtocol' => [ + 'description' => 'The source type.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* RTMP-PUSH'."\n" + .'* SRT-Caller'."\n" + .'* RTMP-PULL'."\n" + .'* SRT-Listener'."\n" + .'* Flow'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'RTMP-PUSH' => 'RTMP-PUSH', + 'SRT-Caller' => 'SRT-Caller', + 'RTMP-PULL' => 'RTMP-PULL', + 'SRT-Listener' => 'SRT-Listener', + 'Flow' => 'Flow', + ], + 'example' => 'RTMP-PUSH', + ], + 'MaxBitrate' => [ + 'description' => 'The maximum bitrate. Unit: bit/s.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '2000000', + ], + 'Cidrs' => [ + 'description' => 'The IP address whitelist in CIDR format. CIDR blocks are separated with commas (,).'."\n", + 'type' => 'string', + 'example' => '10.211.0.0/17', + ], + 'InputUrl' => [ + 'description' => 'The source URL.'."\n", + 'type' => 'string', + 'example' => 'rtmp://1.2.3.4:1935/live/AliTestInput_8666ec062190f00e263012666319a5be', + ], + 'SrtLatency' => [ + 'description' => 'The latency for the SRT stream. Unit: milliseconds. This parameter is returned when the source type is SRT-Listener or SRT-Caller.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1000', + ], + 'SrtPassphrase' => [ + 'description' => 'The SRT key. This parameter is returned when the source type is SRT-Listener or SRT-Caller.'."\n", + 'type' => 'string', + 'example' => 'FICUBPX4Q77DYHRF', + ], + 'SrtPbkeyLen' => [ + 'description' => 'The encryption key length. This parameter is returned when the source type is SRT-Listener or SRT-Caller.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* 0'."\n" + .'* 16'."\n" + .'* 24'."\n" + .'* 32'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'enumValueTitles' => [ + '0', + 16 => '16', + 24 => '24', + 32 => '32', + ], + 'example' => '32', + ], + 'PairOutputName' => [ + 'description' => 'The output of the source flow. This parameter is returned when the source type is Flow.'."\n", + 'type' => 'string', + 'example' => 'AliTestOutput', + ], + 'PairFlowId' => [ + 'description' => 'The ID of the source flow. This parameter is returned when the source type is Flow.'."\n", + 'type' => 'string', + 'example' => '05c3adf4-aa0e-421d-a991-48ceae3e642e', + ], + 'CreateTime' => [ + 'description' => 'The time when the flow was created.'."\n", + 'type' => 'string', + 'example' => '2024-07-18T01:29:24Z', + ], + 'BackupInputName' => [ + 'type' => 'string', + ], + 'BackupCidrs' => [ + 'type' => 'string', + ], + 'BackupInputUrl' => [ + 'type' => 'string', + ], + 'BackupSrtLatency' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'BackupSrtPassphrase' => [ + 'type' => 'string', + ], + 'BackupSrtPbkeyLen' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'BackupCreateTime' => [ + 'type' => 'string', + ], + 'BackupMaxBitrate' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'InputStatus' => [ + 'type' => 'string', + ], + 'BackupInputStatus' => [ + 'type' => 'string', + ], + ], + ], + 'Description' => [ + 'description' => 'The call description.'."\n", + 'type' => 'string', + 'example' => 'OK', + ], + 'RetCode' => [ + 'description' => 'The returned error code. A value of 0 indicates the call is successful.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => 'D4C231DF-103A-55FF-8D09-E699552457DE', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Content\\": {\\n \\"InputName\\": \\"AliTestInput\\",\\n \\"InputProtocol\\": \\"RTMP-PUSH\\",\\n \\"MaxBitrate\\": 2000000,\\n \\"Cidrs\\": \\"10.211.0.0/17\\",\\n \\"InputUrl\\": \\"rtmp://1.2.3.4:1935/live/AliTestInput_8666ec062190f00e263012666319a5be\\",\\n \\"SrtLatency\\": 1000,\\n \\"SrtPassphrase\\": \\"FICUBPX4Q77DYHRF\\",\\n \\"SrtPbkeyLen\\": 32,\\n \\"PairOutputName\\": \\"AliTestOutput\\",\\n \\"PairFlowId\\": \\"05c3adf4-aa0e-421d-a991-48ceae3e642e\\",\\n \\"CreateTime\\": \\"2024-07-18T01:29:24Z\\",\\n \\"BackupInputName\\": \\"\\",\\n \\"BackupCidrs\\": \\"\\",\\n \\"BackupInputUrl\\": \\"\\",\\n \\"BackupSrtLatency\\": 0,\\n \\"BackupSrtPassphrase\\": \\"\\",\\n \\"BackupSrtPbkeyLen\\": 0,\\n \\"BackupCreateTime\\": \\"\\",\\n \\"BackupMaxBitrate\\": 0,\\n \\"InputStatus\\": \\"\\",\\n \\"BackupInputStatus\\": \\"\\"\\n },\\n \\"Description\\": \\"OK\\",\\n \\"RetCode\\": 0,\\n \\"RequestId\\": \\"D4C231DF-103A-55FF-8D09-E699552457DE\\"\\n}","type":"json"}]', + 'title' => 'GetMediaConnectFlowInput', + 'description' => '* When the specified flow ID is not available, an error code is returned.'."\n", + ], + 'AddMediaConnectFlowInput' => [ + 'summary' => 'Creates a source for a MediaConnect flow.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceQU6W9M', + ], + ], + 'parameters' => [ + [ + 'name' => 'FlowId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The flow ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '34900dc6-90ec-4968-af3c-fcd87f231a5f', + ], + ], + [ + 'name' => 'InputProtocol', + 'in' => 'query', + 'schema' => [ + 'description' => 'The source type.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* RTMP-PUSH'."\n" + .'* SRT-Caller'."\n" + .'* RTMP-PULL'."\n" + .'* SRT-Listener'."\n" + .'* Flow'."\n", + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'RTMP-PUSH' => 'RTMP-PUSH', + 'SRT-Caller' => 'SRT-Caller', + 'RTMP-PULL' => 'RTMP-PULL', + 'SRT-Listener' => 'SRT-Listener', + 'Flow' => 'Flow', + ], + 'example' => 'RTMP-PUSH', + ], + ], + [ + 'name' => 'InputName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The source name.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'AliTestInput', + ], + ], + [ + 'name' => 'MaxBitrate', + 'in' => 'query', + 'schema' => [ + 'description' => 'The maximum bitrate. Unit: bit/s.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '2000000', + ], + ], + [ + 'name' => 'Cidrs', + 'in' => 'query', + 'schema' => [ + 'description' => 'The IP address whitelist in CIDR format. Separate multiple CIDR blocks with commas (,).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '19.168.1.1/32,18.168.1.1/16', + ], + ], + [ + 'name' => 'InputFromUrl', + 'in' => 'query', + 'schema' => [ + 'description' => 'The source URL. This parameter is required when the source type is RTMP-PULL or SRT-Listener.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'rtmp://pull.test.alivecdn.com/live/alitest', + ], + ], + [ + 'name' => 'PairFlowId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the source flow. This parameter is required when the source type is Flow.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '805fbdd0-575e-4146-b35d-ec7f63937b20', + ], + ], + [ + 'name' => 'PairOutputName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The output of the source flow. This parameter is required when the source type is Flow.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'AliTestOutput', + ], + ], + [ + 'name' => 'SrtLatency', + 'in' => 'query', + 'schema' => [ + 'description' => 'The latency for the SRT stream. This parameter is required the source type is SRT-Listener or SRT-Caller.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1000', + ], + ], + [ + 'name' => 'SrtPassphrase', + 'in' => 'query', + 'schema' => [ + 'description' => 'The SRT key. This parameter is required when the source type is SRT-Listener or SRT-Caller.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'BETTERG08S01', + ], + ], + [ + 'name' => 'SrtPbkeyLen', + 'in' => 'query', + 'schema' => [ + 'description' => 'The encryption key length. This parameter is required when the source type is SRT-Listener or SRT-Caller.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* 0'."\n" + .'* 16'."\n" + .'* 24'."\n" + .'* 32'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + '0', + 16 => '16', + 24 => '24', + 32 => '32', + ], + 'example' => '32', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response content.'."\n", + 'type' => 'object', + 'properties' => [ + 'Content' => [ + 'description' => 'The response body.'."\n", + 'type' => 'object', + 'properties' => [ + 'InputUrl' => [ + 'description' => 'The source URL.'."\n", + 'type' => 'string', + 'example' => 'rtmp://1.2.3.4:1935/live/AliTestInput_8666ec062190f00e263012666319a5be', + ], + ], + ], + 'Description' => [ + 'description' => 'The call description.'."\n", + 'type' => 'string', + 'example' => 'OK', + ], + 'RetCode' => [ + 'description' => 'The returned error code. A value of 0 indicates the call is successful.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '11357BE8-4C54-58EA-890A-5AB646EDE4B2', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Content\\": {\\n \\"InputUrl\\": \\"rtmp://1.2.3.4:1935/live/AliTestInput_8666ec062190f00e263012666319a5be\\"\\n },\\n \\"Description\\": \\"OK\\",\\n \\"RetCode\\": 0,\\n \\"RequestId\\": \\"11357BE8-4C54-58EA-890A-5AB646EDE4B2\\"\\n}","type":"json"}]', + 'title' => 'AddMediaConnectFlowInput', + 'description' => '* When the specified flow ID is not available, an error code is returned.'."\n" + .'* A flow can have only one source.'."\n" + ."\n" + .'### [](#)Source type'."\n" + ."\n" + .'* RTMP-PUSH: An input that you can push to the returned URL over the RTMP protocol.'."\n" + .'* RTMP-PULL: An input that the MediaConnect flow pulls from the specified server over the RTMP protocol.'."\n" + .'* SRT-Listener: An input that you can push to the returned URL over the SRT protocol.'."\n" + .'* SRT-Caller: An input that the MediaConnect flow pulls from the specified server over the SRT protocol.'."\n" + .'* Flow: An input that uses the output of another upstream flow. You must specify an upstream flow and its output. The output type of the upstream flow must be SRT-Listener or RTMP-PULL. By default, a dedicated line is used when flows are cascaded. This allows for cross-region distribution among multiple flows.'."\n", + ], + 'DeleteMediaConnectFlow' => [ + 'summary' => 'Deletes a MediaConnect flow.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceQU6W9M', + ], + ], + 'parameters' => [ + [ + 'name' => 'FlowId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The flow ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '0381f478-7d53-4076-9d5f-27680a6f73e7', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response content.'."\n", + 'type' => 'object', + 'properties' => [ + 'Description' => [ + 'title' => 'Id of the request', + 'description' => 'The call description.'."\n", + 'type' => 'string', + 'example' => 'OK', + ], + 'RetCode' => [ + 'description' => 'The returned error code. A value of `0` indicates the call is successful.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'Content' => [ + 'description' => 'The response body.'."\n", + 'type' => 'string', + 'example' => '""', + ], + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '5AEC17BD-D80B-5F78-BE1B-F07DFA0C8622', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Description\\": \\"OK\\",\\n \\"RetCode\\": 0,\\n \\"Content\\": \\"\\\\\\"\\\\\\"\\",\\n \\"RequestId\\": \\"5AEC17BD-D80B-5F78-BE1B-F07DFA0C8622\\"\\n}","type":"json"}]', + 'title' => 'DeleteMediaConnectFlow', + 'description' => '* When the specified flow ID is not available, an error code is returned.'."\n" + .'* When a flow is deleted, its source and outputs are also deleted.'."\n" + .'* When a flow is in the online state, it cannot be deleted.'."\n", + ], + 'UpdateMediaConnectFlowStatus' => [ + 'summary' => 'Modifies the state of a MediaConnect flow.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceQU6W9M', + ], + ], + 'parameters' => [ + [ + 'name' => 'FlowId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The flow ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '34900dc6-90ec-4968-af3c-fcd87f231a5f', + ], + ], + [ + 'name' => 'Status', + 'in' => 'query', + 'schema' => [ + 'description' => 'The flow state. Valid values:'."\n" + ."\n" + .'* online: starts the flow.'."\n" + .'* offline: stops the flow.'."\n", + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'offline' => 'offline', + 'online' => 'online', + ], + 'example' => 'online', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '20B3A1B6-4BD2-5DE6-BCBC-098C9B4F4E91', + ], + 'Content' => [ + 'description' => 'The response body.'."\n", + 'type' => 'string', + 'example' => '""', + ], + 'Description' => [ + 'description' => 'The call description.'."\n", + 'type' => 'string', + 'example' => 'ok', + ], + 'RetCode' => [ + 'description' => 'The returned error code. A value of 0 indicates that the call is successful.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"20B3A1B6-4BD2-5DE6-BCBC-098C9B4F4E91\\",\\n \\"Content\\": \\"\\\\\\"\\\\\\"\\",\\n \\"Description\\": \\"ok\\",\\n \\"RetCode\\": 0\\n}","type":"json"}]', + 'title' => 'UpdateMediaConnectFlowStatus', + ], + 'GetMediaConnectFlow' => [ + 'summary' => 'Obtains information about a specific MediaConnect flow.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceQU6W9M', + ], + ], + 'parameters' => [ + [ + 'name' => 'FlowId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The flow ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '34900dc6-90ec-4968-af3c-fcd87f231a5f', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response content.'."\n", + 'type' => 'object', + 'properties' => [ + 'Content' => [ + 'description' => 'The response body.'."\n", + 'type' => 'object', + 'properties' => [ + 'FlowId' => [ + 'description' => 'The flow ID.'."\n", + 'type' => 'string', + 'example' => '34900dc6-90ec-4968-af3c-fcd87f231a5f', + ], + 'FlowName' => [ + 'description' => 'The flow name.'."\n", + 'type' => 'string', + 'example' => 'AliTestFlow', + ], + 'FlowStatus' => [ + 'description' => 'The state of the flow.'."\n", + 'type' => 'string', + 'example' => 'online', + ], + 'CreateTime' => [ + 'description' => 'The time when the flow was created.'."\n", + 'type' => 'string', + 'example' => '2024-07-18T01:29:24Z', + ], + 'StartTime' => [ + 'description' => 'The time when the flow is started.'."\n", + 'type' => 'string', + 'example' => '2024-07-18T01:39:24Z', + ], + 'FlowFailover' => [ + 'type' => 'string', + ], + 'FlowRegion' => [ + 'type' => 'string', + ], + ], + ], + 'Description' => [ + 'description' => 'The call description.'."\n", + 'type' => 'string', + 'example' => 'OK', + ], + 'Retcode' => [ + 'description' => 'The returned code. A value of 0 indicates the call is successful.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => 'FB503AEF-118E-1516-89E2-7B227EA1AC20', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Content\\": {\\n \\"FlowId\\": \\"34900dc6-90ec-4968-af3c-fcd87f231a5f\\",\\n \\"FlowName\\": \\"AliTestFlow\\",\\n \\"FlowStatus\\": \\"online\\",\\n \\"CreateTime\\": \\"2024-07-18T01:29:24Z\\",\\n \\"StartTime\\": \\"2024-07-18T01:39:24Z\\",\\n \\"FlowFailover\\": \\"yes\\",\\n \\"FlowRegion\\": \\"\\"\\n },\\n \\"Description\\": \\"OK\\",\\n \\"Retcode\\": 0,\\n \\"RequestId\\": \\"FB503AEF-118E-1516-89E2-7B227EA1AC20\\"\\n}","type":"json"}]', + 'title' => 'GetMediaConnectFlow', + 'description' => '* When the specified flow ID is not available, an error code is returned.'."\n" + .'* The returned StartTime is valid only when the flow is in the online state.'."\n", + ], + 'CreateMediaConnectFlow' => [ + 'summary' => 'Creates a MediaConnect flow.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceQU6W9M', + ], + ], + 'parameters' => [ + [ + 'name' => 'FlowName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The flow name.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'AliTestFlow', + ], + ], + [ + 'name' => 'FlowRegion', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region in which the flow resides.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'ap-southeast-1', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response content.'."\n", + 'type' => 'object', + 'properties' => [ + 'Content' => [ + 'description' => 'The response body.'."\n", + 'type' => 'object', + 'properties' => [ + 'FlowId' => [ + 'description' => 'The flow ID.'."\n", + 'type' => 'string', + 'example' => '34900dc6-90ec-4968-af3c-fcd87f231a5f', + ], + ], + ], + 'Description' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'OK', + ], + 'RetCode' => [ + 'description' => 'The returned error code. A value of 0 indicates the call is successful.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '86D92F9D-65E8-58A2-85D1-9DEEECC172E8', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Content\\": {\\n \\"FlowId\\": \\"34900dc6-90ec-4968-af3c-fcd87f231a5f\\"\\n },\\n \\"Description\\": \\"OK\\",\\n \\"RetCode\\": 0,\\n \\"RequestId\\": \\"86D92F9D-65E8-58A2-85D1-9DEEECC172E8\\"\\n}","type":"json"}]', + 'title' => 'CreateMediaConnectFlow', + 'description' => '* The flow names cannot be duplicated in the same region.'."\n" + .'* Take note of the returned flow ID. You may reference it in other API operations.'."\n", + ], + 'AddAdInsertion' => [ + 'summary' => 'Adds an ad insertion configuration.', + 'path' => '', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '238117', + 'abilityTreeNodes' => [ + 'FEATUREiceN57D5I', + ], + ], + 'parameters' => [ + [ + 'name' => 'Name', + 'in' => 'formData', + 'schema' => [ + 'title' => '资源一级ID', + 'description' => 'The name of the configuration. The name must be unique and can be up to 128 characters in length. Letters, digits, underscores (\\_), and hyphens (-) are supported.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'my_ad', + ], + ], + [ + 'name' => 'ClientToken', + 'in' => 'formData', + 'allowEmptyValue' => false, + 'schema' => [ + 'title' => '幂等参数', + 'description' => 'The idempotency key that is used to avoid repeated submission. The value can be up to 200 characters in length.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '****0311a423d11a5f7dee713535****', + ], + ], + [ + 'name' => 'ContentUrlPrefix', + 'in' => 'formData', + 'schema' => [ + 'title' => '内容URL前缀', + 'description' => 'The URL prefix for the source content. HTTP and HTTPS are supported. The maximum length is 512 characters.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'https://source.com/', + ], + ], + [ + 'name' => 'SlateAdUrl', + 'in' => 'formData', + 'schema' => [ + 'title' => 'slate广告URL', + 'description' => 'The HTTP or HTTPS URL of the slate ad. Only MP4 format is supported. The maximum length is 2,048 characters.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'http://storage.com/slate1.mp4', + ], + ], + [ + 'name' => 'ConfigAliases', + 'in' => 'formData', + 'schema' => [ + 'title' => '动态配置别名', + 'description' => 'A JSON string that specifies the player parameter variables and aliases. You can add up to 20 player_params.{name} entries. The name field can be up to 150 characters in length. Each player parameter can include up to 50 key-value pairs. A key can be up to 150 characters long, and a value can be up to 500 characters. Example: { "player_params.{name}": { "{key}": "{value}" } }'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{ "player_params.p1": { "1": "abc" } }', + ], + ], + [ + 'name' => 'CdnContentSegmentUrlPrefix', + 'in' => 'formData', + 'schema' => [ + 'title' => '视频内容分片的CDN前缀', + 'description' => 'The CDN prefix for content segments. HTTP and HTTPS are supported. The maximum length is 512 characters.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'http://cdn.com/', + ], + ], + [ + 'name' => 'CdnAdSegmentUrlPrefix', + 'in' => 'formData', + 'schema' => [ + 'title' => '广告分片的CDN前缀', + 'description' => 'The CDN prefix for ad segments. HTTP and HTTPS are supported. The maximum length is 512 characters.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'http://cdn.com/', + ], + ], + [ + 'name' => 'AdMarkerPassthrough', + 'in' => 'formData', + 'schema' => [ + 'title' => '内容URL前缀', + 'description' => 'Specifies whether to enable ad marker passthrough. Default value: OFF.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* OFF: Disable.'."\n" + .'* ON: Enable.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'OFF' => '', + 'ON' => '', + ], + 'example' => 'ON', + ], + ], + [ + 'name' => 'PersonalizationThreshold', + 'in' => 'formData', + 'schema' => [ + 'title' => '个性化配置阈值', + 'description' => 'Specifies the maximum duration of underfilled time allowed in an ad break. Unit: seconds. Default value: 8 seconds.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '5', + ], + ], + [ + 'name' => 'AdsUrl', + 'in' => 'formData', + 'schema' => [ + 'title' => '广告策略服务器URL', + 'description' => 'The request URL of the ad decision server (ADS). HTTP and HTTPS are supported. The maximum length is 2,048 characters.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'http://ads.com/ad1?param1=[palyer_params.p1]', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'Config' => [ + 'description' => 'The ad insertion configuration.'."\n", + 'type' => 'object', + 'properties' => [ + 'CreateTime' => [ + 'title' => '创建时间', + 'description' => 'The time when the configuration was created.'."\n", + 'type' => 'string', + 'example' => '2024-06-13T08:26:09Z', + ], + 'LastModified' => [ + 'title' => '修改时间', + 'description' => 'The time when the configuration was last modified.'."\n", + 'type' => 'string', + 'example' => '2024-06-13T08:26:09Z'."\n", + ], + 'Name' => [ + 'title' => '广告插入配置名称', + 'description' => 'The name of the ad insertion configuration.'."\n", + 'type' => 'string', + 'example' => 'my_ad', + ], + 'ContentUrlPrefix' => [ + 'title' => '内容URL前缀', + 'description' => 'The URL prefix for the source content.'."\n", + 'type' => 'string', + 'example' => 'https://source.com/'."\n", + ], + 'AdsUrl' => [ + 'title' => '广告策略服务器URL', + 'description' => 'The request URL of ADS.'."\n", + 'type' => 'string', + 'example' => 'http://ads.com/ad1?param1=[palyer_params.p1]'."\n", + ], + 'ConfigAliases' => [ + 'title' => '动态配置别名', + 'description' => 'The player parameter variables and aliases.'."\n", + 'type' => 'string', + 'example' => '{ "player_params.p1": { "1": "abc" } }'."\n", + ], + 'PersonalizationThreshold' => [ + 'title' => '个性化配置阈值', + 'description' => 'The personalization threshold.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '5', + ], + 'SlateAdUrl' => [ + 'title' => 'slate广告URL', + 'description' => 'The URL of the slate ad.'."\n", + 'type' => 'string', + 'example' => 'http://storage.com/slate1.mp4'."\n", + ], + 'CdnConfig' => [ + 'title' => 'CDN配置', + 'description' => 'The CDN configurations.'."\n", + 'type' => 'object', + 'properties' => [ + 'ContentSegmentUrlPrefix' => [ + 'title' => '视频内容分片的CDN前缀', + 'description' => 'The CDN prefix for content segments.'."\n", + 'type' => 'string', + 'example' => 'http://cdn.com/'."\n", + ], + 'AdSegmentUrlPrefix' => [ + 'title' => '广告分片的CDN前缀', + 'description' => 'The CDN prefix for ad segments.'."\n", + 'type' => 'string', + 'example' => 'http://cdn.com/'."\n", + ], + ], + ], + 'AdMarkerPassthrough' => [ + 'title' => '广告标记透传', + 'description' => 'Indicates whether ad marker passthrough is enabled.'."\n", + 'type' => 'string', + 'example' => 'ON', + ], + 'ManifestEndpointConfig' => [ + 'title' => '清单播放端点配置', + 'description' => 'The playback endpoint configuration.'."\n", + 'type' => 'object', + 'properties' => [ + 'HlsPrefix' => [ + 'title' => 'HLS清单播放端点前缀', + 'description' => 'The prefix of the playback endpoint for HLS manifests.'."\n", + 'type' => 'string', + 'example' => 'https://****0311a423d11a5f7dee713535****.weaverpull-ssai.ap-southeast-1.ice.alibabacloudcs.com/v1/master/****4fda5b1a8e0d46c9bf6262a7****/my_ad/'."\n", + ], + 'DashPrefix' => [ + 'title' => 'DASH清单播放端点前缀', + 'description' => 'DASH清单播放端点前缀', + 'type' => 'string', + ], + ], + ], + ], + ], + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '******3B-0E1A-586A-AC29-742247******', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Config\\": {\\n \\"CreateTime\\": \\"2024-06-13T08:26:09Z\\",\\n \\"LastModified\\": \\"2024-06-13T08:26:09Z\\\\n\\",\\n \\"Name\\": \\"my_ad\\",\\n \\"ContentUrlPrefix\\": \\"https://source.com/\\\\n\\",\\n \\"AdsUrl\\": \\"http://ads.com/ad1?param1=[palyer_params.p1]\\\\n\\",\\n \\"ConfigAliases\\": \\"{ \\\\\\"player_params.p1\\\\\\": { \\\\\\"1\\\\\\": \\\\\\"abc\\\\\\" } }\\\\n\\",\\n \\"PersonalizationThreshold\\": 5,\\n \\"SlateAdUrl\\": \\"http://storage.com/slate1.mp4\\\\n\\",\\n \\"CdnConfig\\": {\\n \\"ContentSegmentUrlPrefix\\": \\"http://cdn.com/\\\\n\\",\\n \\"AdSegmentUrlPrefix\\": \\"http://cdn.com/\\\\n\\"\\n },\\n \\"AdMarkerPassthrough\\": \\"ON\\",\\n \\"ManifestEndpointConfig\\": {\\n \\"HlsPrefix\\": \\"https://****0311a423d11a5f7dee713535****.weaverpull-ssai.ap-southeast-1.ice.alibabacloudcs.com/v1/master/****4fda5b1a8e0d46c9bf6262a7****/my_ad/\\\\n\\",\\n \\"DashPrefix\\": \\"https://****0311a423d11a5f7dee713535****.weaverpull-ssai.ap-southeast-1.ice.alibabacloudcs.com/v1/dash/****4fda5b1a8e0d46c9bf6262a7****/my_ad/\\"\\n }\\n },\\n \\"RequestId\\": \\"******3B-0E1A-586A-AC29-742247******\\"\\n}","type":"json"}]', + 'title' => 'AddAdInsertion', + ], + 'UpdateAdInsertion' => [ + 'summary' => 'Modifies an ad insertion configuration.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '238117', + 'abilityTreeNodes' => [ + 'FEATUREiceN57D5I', + ], + ], + 'parameters' => [ + [ + 'name' => 'Name', + 'in' => 'formData', + 'schema' => [ + 'title' => '资源一级ID', + 'description' => 'The configuration name, which cannot be modified.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'my_ad', + ], + ], + [ + 'name' => 'ContentUrlPrefix', + 'in' => 'formData', + 'schema' => [ + 'title' => '内容URL前缀', + 'description' => 'The URL prefix for the source content. HTTP and HTTPS are supported. The maximum length is 512 characters.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'https://source.com/', + ], + ], + [ + 'name' => 'SlateAdUrl', + 'in' => 'formData', + 'schema' => [ + 'title' => 'slate广告URL', + 'description' => 'The HTTP or HTTPS URL of the slate ad. Only MP4 format is supported. The maximum length is 2,048 characters.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'http://storage.com/slate1.mp4', + ], + ], + [ + 'name' => 'ConfigAliases', + 'in' => 'formData', + 'schema' => [ + 'title' => '动态配置别名', + 'description' => 'A JSON string that specifies the player parameter variables and aliases. Format: { "player_params.{name}": { "{key}": "{value}" } }. You can add up to 20 player_params.{name} entries. The name field can be up to 150 characters in length. Each player parameter can include up to 50 key-value pairs. A key can be up to 150 characters long, and a value can be up to 500 characters.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{ "player_params.p1": { "1": "abc" } }', + ], + ], + [ + 'name' => 'CdnContentSegmentUrlPrefix', + 'in' => 'formData', + 'schema' => [ + 'title' => '视频内容分片的CDN前缀', + 'description' => 'The CDN prefix for content segments. HTTP and HTTPS are supported. The maximum length is 512 characters.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'http://cdn.com/', + ], + ], + [ + 'name' => 'CdnAdSegmentUrlPrefix', + 'in' => 'formData', + 'schema' => [ + 'title' => '广告分片的CDN前缀', + 'description' => 'The CDN prefix for ad segments. HTTP and HTTPS are supported. The maximum length is 512 characters.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'http://cdn.com/', + ], + ], + [ + 'name' => 'AdMarkerPassthrough', + 'in' => 'formData', + 'schema' => [ + 'title' => '内容URL前缀', + 'description' => 'Specifies whether to enable ad marker passthrough. Default value: OFF.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* OFF: Disable.'."\n" + .'* ON: Enable.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'OFF' => '', + 'ON' => '', + ], + 'example' => 'ON', + ], + ], + [ + 'name' => 'PersonalizationThreshold', + 'in' => 'formData', + 'schema' => [ + 'title' => '个性化配置阈值', + 'description' => 'Specifies the maximum duration of underfilled time allowed in an ad break. Unit: seconds. Default value: 8 seconds.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '5', + ], + ], + [ + 'name' => 'AdsUrl', + 'in' => 'formData', + 'schema' => [ + 'title' => '广告策略服务器URL', + 'description' => 'The request URL of the ad decision server (ADS). HTTP and HTTPS are supported. The maximum length is 2,048 characters.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'http://ads.com/ad1?param1=[palyer_params.p1]'."\n", + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'Config' => [ + 'description' => 'The ad insertion configuration.'."\n", + 'type' => 'object', + 'properties' => [ + 'CreateTime' => [ + 'title' => '创建时间', + 'description' => 'The time when the configuration was created.'."\n", + 'type' => 'string', + 'example' => '2024-06-13T08:26:09Z', + ], + 'LastModified' => [ + 'title' => '修改时间', + 'description' => 'The time when the configuration was last modified.'."\n", + 'type' => 'string', + 'example' => '2024-06-13T08:26:09Z', + ], + 'Name' => [ + 'title' => '广告插入配置名称', + 'description' => 'The name of the ad insertion configuration.'."\n", + 'type' => 'string', + 'example' => 'my_ad', + ], + 'ContentUrlPrefix' => [ + 'title' => '内容URL前缀', + 'description' => 'The URL prefix for the source content.'."\n", + 'type' => 'string', + 'example' => 'https://source.com/', + ], + 'AdsUrl' => [ + 'title' => '广告策略服务器URL', + 'description' => 'The request URL of ADS.'."\n", + 'type' => 'string', + 'example' => 'http://ads.com/ad1?param1=[palyer_params.p1]', + ], + 'ConfigAliases' => [ + 'title' => '动态配置别名', + 'description' => 'The player parameter variables and aliases.'."\n", + 'type' => 'string', + 'example' => '{ "player_params.p1": { "1": "abc" } }'."\n", + ], + 'PersonalizationThreshold' => [ + 'title' => '个性化配置阈值', + 'description' => 'The personalization threshold.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '5', + ], + 'SlateAdUrl' => [ + 'title' => 'slate广告URL', + 'description' => 'The URL of the slate ad.'."\n", + 'type' => 'string', + 'example' => 'http://storage.com/slate1.mp4', + ], + 'CdnConfig' => [ + 'title' => 'CDN配置', + 'description' => 'The CDN configurations.'."\n", + 'type' => 'object', + 'properties' => [ + 'ContentSegmentUrlPrefix' => [ + 'title' => '视频内容分片的CDN前缀', + 'description' => 'The CDN prefix for content segments.'."\n", + 'type' => 'string', + 'example' => 'http://cdn.com/', + ], + 'AdSegmentUrlPrefix' => [ + 'title' => '广告分片的CDN前缀', + 'description' => 'The CDN prefix for ad segments.'."\n", + 'type' => 'string', + 'example' => 'http://cdn.com/', + ], + ], + ], + 'AdMarkerPassthrough' => [ + 'title' => '广告标记透传', + 'description' => 'Indicates whether ad marker passthrough is enabled.'."\n", + 'type' => 'string', + 'example' => 'ON', + ], + 'ManifestEndpointConfig' => [ + 'title' => '清单播放端点配置', + 'description' => 'The playback endpoint configuration.'."\n", + 'type' => 'object', + 'properties' => [ + 'HlsPrefix' => [ + 'title' => 'HLS清单播放端点前缀', + 'description' => 'The prefix of the playback endpoint for HLS manifests.'."\n", + 'type' => 'string', + 'example' => 'https://****0311a423d11a5f7dee713535****.weaverpull-ssai.ap-southeast-1.ice.alibabacloudcs.com/v1/master/****4fda5b1a8e0d46c9bf6262a7****/my_ad/', + ], + 'DashPrefix' => [ + 'title' => 'DASH清单播放端点前缀', + 'description' => 'DASH清单播放端点前缀', + 'type' => 'string', + ], + ], + ], + ], + ], + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '****63E8B7C7-4812-46AD-0FA56029AC86****', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Config\\": {\\n \\"CreateTime\\": \\"2024-06-13T08:26:09Z\\",\\n \\"LastModified\\": \\"2024-06-13T08:26:09Z\\",\\n \\"Name\\": \\"my_ad\\",\\n \\"ContentUrlPrefix\\": \\"https://source.com/\\",\\n \\"AdsUrl\\": \\"http://ads.com/ad1?param1=[palyer_params.p1]\\",\\n \\"ConfigAliases\\": \\"{ \\\\\\"player_params.p1\\\\\\": { \\\\\\"1\\\\\\": \\\\\\"abc\\\\\\" } }\\\\n\\",\\n \\"PersonalizationThreshold\\": 5,\\n \\"SlateAdUrl\\": \\"http://storage.com/slate1.mp4\\",\\n \\"CdnConfig\\": {\\n \\"ContentSegmentUrlPrefix\\": \\"http://cdn.com/\\",\\n \\"AdSegmentUrlPrefix\\": \\"http://cdn.com/\\"\\n },\\n \\"AdMarkerPassthrough\\": \\"ON\\",\\n \\"ManifestEndpointConfig\\": {\\n \\"HlsPrefix\\": \\"https://****0311a423d11a5f7dee713535****.weaverpull-ssai.ap-southeast-1.ice.alibabacloudcs.com/v1/master/****4fda5b1a8e0d46c9bf6262a7****/my_ad/\\",\\n \\"DashPrefix\\": \\"https://****0311a423d11a5f7dee713535****.weaverpull-ssai.ap-southeast-1.ice.alibabacloudcs.com/v1/dash/****4fda5b1a8e0d46c9bf6262a7****/my_ad/\\"\\n }\\n },\\n \\"RequestId\\": \\"****63E8B7C7-4812-46AD-0FA56029AC86****\\"\\n}","type":"json"}]', + 'title' => 'UpdateAdInsertion', + ], + 'GetAdInsertion' => [ + 'summary' => 'Obtains details of an ad insertion configuration.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '238117', + 'abilityTreeNodes' => [ + 'FEATUREiceN57D5I', + ], + ], + 'parameters' => [ + [ + 'name' => 'Name', + 'in' => 'query', + 'schema' => [ + 'title' => '资源一级ID', + 'description' => 'The name of the ad insertion configuration that you want to query.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'my_ad', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'Config' => [ + 'description' => 'The ad insertion configuration.'."\n", + 'type' => 'object', + 'properties' => [ + 'CreateTime' => [ + 'title' => '创建时间', + 'description' => 'The time when the configuration was created.'."\n", + 'type' => 'string', + 'example' => '2024-06-13T08:26:09Z ', + ], + 'LastModified' => [ + 'title' => '修改时间', + 'description' => 'The time when the configuration was last modified.'."\n", + 'type' => 'string', + 'example' => '2024-06-13T08:26:09Z ', + ], + 'Name' => [ + 'title' => '广告插入配置名称', + 'description' => 'The name of the configuration.'."\n", + 'type' => 'string', + 'example' => 'my_ad', + ], + 'ContentUrlPrefix' => [ + 'title' => '内容URL前缀', + 'description' => 'The prefix of the source URL.'."\n", + 'type' => 'string', + 'example' => 'https://source.com/'."\n", + ], + 'AdsUrl' => [ + 'title' => '广告策略服务器URL', + 'description' => 'The URL of the ad decision server (ADS).'."\n", + 'type' => 'string', + 'example' => 'http://ads.com/ad1?param1=[palyer_params.p1]', + ], + 'ConfigAliases' => [ + 'title' => '动态配置别名', + 'description' => 'The aliases for dynamic variable replacement.'."\n", + 'type' => 'string', + 'example' => '{'."\n" + .' "player_params.p1": {'."\n" + .' "1": "abc"'."\n" + .' }'."\n" + .'}', + ], + 'PersonalizationThreshold' => [ + 'title' => '个性化配置阈值', + 'description' => 'The personalization threshold.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '5', + ], + 'SlateAdUrl' => [ + 'title' => 'slate广告URL', + 'description' => 'The URL of the slate ad.'."\n", + 'type' => 'string', + 'example' => 'http://storage.com/slate1.mp4', + ], + 'CdnConfig' => [ + 'title' => 'CDN配置', + 'description' => 'The CDN configurations.'."\n", + 'type' => 'object', + 'properties' => [ + 'ContentSegmentUrlPrefix' => [ + 'title' => '视频内容分片的CDN前缀', + 'description' => 'The CDN prefix for accessing content segments.'."\n", + 'type' => 'string', + 'example' => 'http://cdn.com/', + ], + 'AdSegmentUrlPrefix' => [ + 'title' => '广告分片的CDN前缀', + 'description' => 'The CDN prefix for accessing ad segments.'."\n", + 'type' => 'string', + 'example' => 'http://cdn.com/', + ], + ], + ], + 'AdMarkerPassthrough' => [ + 'title' => '广告标记透传', + 'description' => 'Indicates whether ad marker passthrough is enabled.'."\n", + 'type' => 'string', + 'example' => 'ON', + ], + 'ManifestEndpointConfig' => [ + 'title' => '清单播放端点配置', + 'description' => 'The playback endpoint prefix for accessing manifests.'."\n", + 'type' => 'object', + 'properties' => [ + 'HlsPrefix' => [ + 'title' => 'HLS清单播放端点前缀', + 'description' => 'The playback endpoint prefix for accessing HLS manifests.'."\n", + 'type' => 'string', + 'example' => 'https://****0311a423d11a5f7dee713535****.weaverpull-ssai.ap-southeast-1.ice.alibabacloudcs.com/v1/master/****4fda5b1a8e0d46c9bf6262a7****/my_ad/', + ], + 'DashPrefix' => [ + 'title' => 'DASH清单播放端点前缀', + 'description' => 'DASH清单播放端点前缀', + 'type' => 'string', + ], + ], + ], + ], + ], + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '******3B-0E1A-586A-AC29-742247******', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Config\\": {\\n \\"CreateTime\\": \\"2024-06-13T08:26:09Z\\\\t\\",\\n \\"LastModified\\": \\"2024-06-13T08:26:09Z\\\\t\\",\\n \\"Name\\": \\"my_ad\\",\\n \\"ContentUrlPrefix\\": \\"https://source.com/\\\\n\\",\\n \\"AdsUrl\\": \\"http://ads.com/ad1?param1=[palyer_params.p1]\\",\\n \\"ConfigAliases\\": \\"{\\\\n \\\\\\"player_params.p1\\\\\\": {\\\\n \\\\\\"1\\\\\\": \\\\\\"abc\\\\\\"\\\\n }\\\\n}\\",\\n \\"PersonalizationThreshold\\": 5,\\n \\"SlateAdUrl\\": \\"http://storage.com/slate1.mp4\\",\\n \\"CdnConfig\\": {\\n \\"ContentSegmentUrlPrefix\\": \\"http://cdn.com/\\",\\n \\"AdSegmentUrlPrefix\\": \\"http://cdn.com/\\"\\n },\\n \\"AdMarkerPassthrough\\": \\"ON\\",\\n \\"ManifestEndpointConfig\\": {\\n \\"HlsPrefix\\": \\"https://****0311a423d11a5f7dee713535****.weaverpull-ssai.ap-southeast-1.ice.alibabacloudcs.com/v1/master/****4fda5b1a8e0d46c9bf6262a7****/my_ad/\\",\\n \\"DashPrefix\\": \\"https://****0311a423d11a5f7dee713535****.weaverpull-ssai.ap-southeast-1.ice.alibabacloudcs.com/v1/dash/****4fda5b1a8e0d46c9bf6262a7****/my_ad/\\"\\n }\\n },\\n \\"RequestId\\": \\"******3B-0E1A-586A-AC29-742247******\\"\\n}","type":"json"}]', + 'title' => 'GetAdInsertion', + ], + 'ListAdInsertions' => [ + 'summary' => 'Obtains ad insertion configurations.', + 'path' => '', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '238120', + 'abilityTreeNodes' => [ + 'FEATUREiceN57D5I', + ], + ], + 'parameters' => [ + [ + 'name' => 'Keyword', + 'in' => 'query', + 'schema' => [ + 'title' => '按广告名称查询,支持模糊匹配', + 'description' => 'The configuration name. Fuzzy match is supported.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'ad', + ], + ], + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'title' => '分页参数,页码', + 'description' => 'The page number. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'title' => '分页参数,页宽', + 'description' => 'The number of entries per page. Default value: 10.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '10', + ], + ], + [ + 'name' => 'SortBy', + 'in' => 'query', + 'schema' => [ + 'title' => '分页参数,排序方式,asc:按创建时间升序,desc:按创建时间降序', + 'description' => 'The sorting order of the configurations by creation time. asc: ascending. desc: descending.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'asc' => '', + 'desc' => '', + ], + 'example' => 'asc', + ], + ], + [ + 'name' => 'NextToken', + 'in' => 'query', + 'schema' => [ + 'title' => '数据抓取参数,获取后续数据的token,使用此方式获取数据时分页参数将无效', + 'description' => 'The token that is used in the next request to retrieve a new page of results. If this parameter is used, the pagination parameters become invalid.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '******8EqYpQbZ6Eh7+Zz8DxVYoQ*****', + ], + ], + [ + 'name' => 'MaxResults', + 'in' => 'query', + 'schema' => [ + 'title' => '数据抓取参数,获取后续数据的最大记录数,使用此方式获取数据时分页参数将无效', + 'description' => 'The maximum number of entries to retrieve in a subsequent request. If this parameter is used, the pagination parameters become invalid. Default value: 10.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'minimum' => '0', + 'example' => '10', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'Configs' => [ + 'title' => '数组', + 'description' => 'Array'."\n", + 'type' => 'array', + 'items' => [ + 'title' => 'AdInsertionConifgItemType', + 'description' => 'AdInsertionConifgItemType'."\n", + 'type' => 'object', + 'properties' => [ + 'CreateTime' => [ + 'title' => '创建时间', + 'description' => 'The time when the configuration was created.'."\n", + 'type' => 'string', + 'example' => '2024-06-13T08:26:09Z', + ], + 'LastModified' => [ + 'title' => '修改时间', + 'description' => 'The time when the configuration was last modified.'."\n", + 'type' => 'string', + 'example' => '2024-06-13T08:26:09Z'."\n", + ], + 'Name' => [ + 'title' => '广告插入配置名称', + 'description' => 'The name of the ad insertion configuration.'."\n", + 'type' => 'string', + 'example' => 'my_ad', + ], + 'ContentUrlPrefix' => [ + 'title' => '内容URL前缀', + 'description' => 'The URL prefix for the source content.'."\n", + 'type' => 'string', + 'example' => 'https://source.com/', + ], + 'AdsUrl' => [ + 'title' => '广告策略服务器URL', + 'description' => 'The request URL of the ad decision server (ADS).'."\n", + 'type' => 'string', + 'example' => 'http://ads.com/ad1?param1=[palyer_params.p1]', + ], + 'ConfigAliases' => [ + 'title' => '动态配置别名', + 'description' => 'The player parameter variables and aliases.'."\n", + 'type' => 'string', + 'example' => '{'."\n" + .' "player_params.p1": {'."\n" + .' "1": "abc"'."\n" + .' }'."\n" + .'}', + ], + 'PersonalizationThreshold' => [ + 'title' => '个性化配置阈值', + 'description' => 'The personalization threshold that defines the maximum duration of underfilled time allowed in an ad break.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '5', + ], + 'SlateAdUrl' => [ + 'title' => 'slate广告URL', + 'description' => 'The URL of the slate ad.'."\n", + 'type' => 'string', + 'example' => 'http://storage.com/slate1.mp4', + ], + 'CdnConfig' => [ + 'title' => 'CDN配置', + 'description' => 'The CDN configurations.'."\n", + 'type' => 'object', + 'properties' => [ + 'ContentSegmentUrlPrefix' => [ + 'title' => '视频内容分片的CDN前缀', + 'description' => 'The CDN prefix for content segments.'."\n", + 'type' => 'string', + 'example' => 'http://cdn.com/', + ], + 'AdSegmentUrlPrefix' => [ + 'title' => '广告分片的CDN前缀', + 'description' => 'The CDN prefix for ad segments.'."\n", + 'type' => 'string', + 'example' => 'http://cdn.com/', + ], + ], + ], + 'AdMarkerPassthrough' => [ + 'title' => '广告标记透传', + 'description' => 'Indicates whether ad marker passthrough is enabled.'."\n", + 'type' => 'string', + 'example' => 'ON', + ], + 'ManifestEndpointConfig' => [ + 'title' => '清单播放端点配置', + 'description' => 'The playback endpoint configuration.'."\n", + 'type' => 'object', + 'properties' => [ + 'HlsPrefix' => [ + 'title' => 'HLS清单播放端点前缀', + 'description' => 'The prefix of the playback endpoint for HLS manifests.'."\n", + 'type' => 'string', + 'example' => 'https://****0311a423d11a5f7dee713535****.weaverpull-ssai.ap-southeast-1.ice.alibabacloudcs.com/v1/master/****4fda5b1a8e0d46c9bf6262a7****/my_ad/', + ], + 'DashPrefix' => [ + 'title' => 'DASH清单播放端点前缀', + 'description' => 'DASH清单播放端点前缀', + 'type' => 'string', + ], + ], + ], + ], + ], + ], + 'PageNo' => [ + 'title' => '分页参数,页码', + 'description' => 'The page number.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'PageSize' => [ + 'title' => '分页参数,页宽', + 'description' => 'The number of entries per page.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10', + ], + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'SortBy' => [ + 'title' => '分页参数,排序方式,asc:按创建时间升序,desc:按创建时间降序', + 'description' => 'The sorting order of the configurations by creation time. asc: ascending. desc: descending.'."\n", + 'type' => 'string', + 'example' => 'asc', + ], + 'TotalCount' => [ + 'title' => '总记录数', + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10', + ], + 'NextToken' => [ + 'title' => '数据抓取参数,获取后续数据的token,使用此方式获取数据时分页参数将无效', + 'description' => 'The token that is used in the next request to retrieve a new page of results. If this parameter is used, the pagination parameters become invalid.'."\n", + 'type' => 'string', + 'example' => '******8EqYpQbZ6Eh7+Zz8DxVYoQ*****', + ], + 'MaxResults' => [ + 'title' => '数据抓取参数,获取后续数据的最大记录数,使用此方式获取数据时分页参数将无效', + 'description' => 'The maximum number of entries to retrieve in a subsequent request. If this parameter is used, the pagination parameters become invalid.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Configs\\": [\\n {\\n \\"CreateTime\\": \\"2024-06-13T08:26:09Z\\",\\n \\"LastModified\\": \\"2024-06-13T08:26:09Z\\\\n\\",\\n \\"Name\\": \\"my_ad\\",\\n \\"ContentUrlPrefix\\": \\"https://source.com/\\",\\n \\"AdsUrl\\": \\"http://ads.com/ad1?param1=[palyer_params.p1]\\",\\n \\"ConfigAliases\\": \\"{\\\\n \\\\\\"player_params.p1\\\\\\": {\\\\n \\\\\\"1\\\\\\": \\\\\\"abc\\\\\\"\\\\n }\\\\n}\\",\\n \\"PersonalizationThreshold\\": 5,\\n \\"SlateAdUrl\\": \\"http://storage.com/slate1.mp4\\",\\n \\"CdnConfig\\": {\\n \\"ContentSegmentUrlPrefix\\": \\"http://cdn.com/\\",\\n \\"AdSegmentUrlPrefix\\": \\"http://cdn.com/\\"\\n },\\n \\"AdMarkerPassthrough\\": \\"ON\\",\\n \\"ManifestEndpointConfig\\": {\\n \\"HlsPrefix\\": \\"https://****0311a423d11a5f7dee713535****.weaverpull-ssai.ap-southeast-1.ice.alibabacloudcs.com/v1/master/****4fda5b1a8e0d46c9bf6262a7****/my_ad/\\",\\n \\"DashPrefix\\": \\"https://****0311a423d11a5f7dee713535****.weaverpull-ssai.ap-southeast-1.ice.alibabacloudcs.com/v1/dash/****4fda5b1a8e0d46c9bf6262a7****/my_ad/\\"\\n }\\n }\\n ],\\n \\"PageNo\\": 1,\\n \\"PageSize\\": 10,\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"SortBy\\": \\"asc\\",\\n \\"TotalCount\\": 10,\\n \\"NextToken\\": \\"******8EqYpQbZ6Eh7+Zz8DxVYoQ*****\\",\\n \\"MaxResults\\": 10\\n}","type":"json"}]', + 'title' => 'ListAdInsertions', + ], + 'DeleteAdInsertion' => [ + 'summary' => 'Deletes an ad insertion configuration.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '238117', + 'abilityTreeNodes' => [ + 'FEATUREiceN57D5I', + ], + ], + 'parameters' => [ + [ + 'name' => 'Name', + 'in' => 'formData', + 'schema' => [ + 'title' => '资源一级ID', + 'description' => 'The name of the configuration that you want to delete.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'my_ad', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\"\\n}","type":"json"}]', + 'title' => 'DeleteAdInsertion', + ], + 'GetSourceLocation' => [ + 'summary' => 'Queries a source location.', + 'description' => '', + 'path' => '/', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceFEJXOS', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'SourceLocationName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the source location.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'MySourceLocation', + ], + ], + ], + 'responses' => [ + 200 => [ + 'description' => '创建成功', + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '**请求ID**'."\n", + 'description' => '**Request ID**'."\n", + 'type' => 'string', + 'example' => 'xxx-xxxx-xxxxx-xxxx', + ], + 'SourceLocation' => [ + 'description' => 'The source location information.'."\n", + '$ref' => '#/components/schemas/ChannelAssemblySourceLocation', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"xxx-xxxx-xxxxx-xxxx\\",\\n \\"SourceLocation\\": {\\n \\"GmtCreate\\": \\"\\",\\n \\"SourceLocationName\\": \\"\\",\\n \\"State\\": 0,\\n \\"GmtModified\\": \\"\\",\\n \\"SegmentDeliveryConfigurations\\": \\"\\",\\n \\"BaseUrl\\": \\"\\",\\n \\"Arn\\": \\"\\"\\n }\\n}","type":"json"}]', + 'title' => 'GetSourceLocation', + ], + 'UpdateSourceLocation' => [ + 'summary' => 'Modifies a source location.', + 'description' => '', + 'path' => '/', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceFEJXOS', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'SourceLocationName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the source location.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'MySourceLocation', + ], + ], + [ + 'name' => 'BaseUrl', + 'in' => 'query', + 'schema' => [ + 'description' => 'The protocol and hostname of the source location.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'http://xxx.com', + ], + ], + [ + 'name' => 'EnableSegmentDelivery', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to use an independent domain name to access the segments.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + [ + 'name' => 'SegmentDeliveryUrl', + 'in' => 'query', + 'schema' => [ + 'description' => 'The domain name used to access the segments.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'http://xxxx.com', + ], + ], + ], + 'responses' => [ + 200 => [ + 'description' => '创建成功', + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '**请求ID**'."\n", + 'description' => '**Request ID**'."\n", + 'type' => 'string', + 'example' => 'xxx-xxxx-xxxxx-xxxx', + ], + 'SourceLocation' => [ + 'description' => 'The source location information.'."\n", + '$ref' => '#/components/schemas/ChannelAssemblySourceLocation', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"xxx-xxxx-xxxxx-xxxx\\",\\n \\"SourceLocation\\": {\\n \\"GmtCreate\\": \\"\\",\\n \\"SourceLocationName\\": \\"\\",\\n \\"State\\": 0,\\n \\"GmtModified\\": \\"\\",\\n \\"SegmentDeliveryConfigurations\\": \\"\\",\\n \\"BaseUrl\\": \\"\\",\\n \\"Arn\\": \\"\\"\\n }\\n}","type":"json"}]', + 'title' => 'UpdateSourceLocation', + ], + 'DeleteSourceLocation' => [ + 'summary' => 'Deletes a source location.', + 'description' => '', + 'path' => '/', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceFEJXOS', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'SourceLocationName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the source location.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'MySourceLocation', + ], + ], + [ + 'name' => 'SoftDelete', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to use delete markers.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + ], + 'responses' => [ + 200 => [ + 'description' => '创建成功', + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '**请求ID**'."\n", + 'description' => '**Request ID**'."\n", + 'type' => 'string', + 'example' => 'xxx-xxxx-xxxxx-xxxx', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid value:'."\n" + ."\n" + .'* true: The request succeeded.'."\n" + .'* false: The request failed.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"xxx-xxxx-xxxxx-xxxx\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => 'DeleteSourceLocation', + ], + 'ListSourceLocations' => [ + 'summary' => 'Lists source locations.', + 'description' => '', + 'path' => '/', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceFEJXOS', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'SourceLocationName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the source location.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'MySourceLocation', + ], + ], + [ + 'name' => 'FilterState', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to ignore source locations marked as deleted. A value of true means ignoring source locations marked as deleted.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'description' => '* The page number.'."\n" + .'* Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page. Default value: 20. Valid values: 1 to 100.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '10', + ], + ], + [ + 'name' => 'SortByModifiedTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The sorting order of the source locations based on the time when they were last modified.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'desc', + ], + ], + [ + 'name' => 'SortBy', + 'in' => 'query', + 'schema' => [ + 'description' => 'The sorting order. By default, the query results are sorted by creation time in descending order.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'desc', + ], + ], + ], + 'responses' => [ + 200 => [ + 'description' => '创建成功', + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '**请求ID**'."\n", + 'description' => '**Request ID**'."\n", + 'type' => 'string', + 'example' => 'xxx-xxxx-xxxxx-xxxx', + ], + 'TotalCount' => [ + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '100', + ], + 'PageNo' => [ + 'description' => 'The page number. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'PageSize' => [ + 'description' => 'The number of entries per page. Default value: 20. Valid values: 1 to 100.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + ], + 'SourceLocationList' => [ + 'description' => 'The source locations.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The source location information.'."\n", + '$ref' => '#/components/schemas/ChannelAssemblySourceLocation', + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"xxx-xxxx-xxxxx-xxxx\\",\\n \\"TotalCount\\": 100,\\n \\"PageNo\\": 1,\\n \\"PageSize\\": 10,\\n \\"SourceLocationList\\": [\\n {\\n \\"GmtCreate\\": \\"\\",\\n \\"SourceLocationName\\": \\"\\",\\n \\"State\\": 0,\\n \\"GmtModified\\": \\"\\",\\n \\"SegmentDeliveryConfigurations\\": \\"\\",\\n \\"BaseUrl\\": \\"\\",\\n \\"Arn\\": \\"\\"\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'ListSourceLocations', + ], + 'CreateSourceLocation' => [ + 'summary' => 'Creates a source location.', + 'description' => '', + 'path' => '/', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceFEJXOS', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'SourceLocationName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the source location.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'MySourcelocation', + ], + ], + [ + 'name' => 'BaseUrl', + 'in' => 'query', + 'schema' => [ + 'description' => 'The protocol and hostname of the source location.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'http://xxx.com', + ], + ], + [ + 'name' => 'EnableSegmentDelivery', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to use an independent domain name to access the segments.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + [ + 'name' => 'SegmentDeliveryUrl', + 'in' => 'query', + 'schema' => [ + 'description' => 'The domain name used to access the segments.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'http://xxxxx.com', + ], + ], + ], + 'responses' => [ + 200 => [ + 'description' => '创建成功', + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '**请求ID**'."\n", + 'description' => '**Request ID**'."\n", + 'type' => 'string', + 'example' => 'xxx-xxxx-xxxxx-xxxx', + ], + 'SourceLocation' => [ + 'description' => 'The source location information.'."\n", + '$ref' => '#/components/schemas/ChannelAssemblySourceLocation', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"xxx-xxxx-xxxxx-xxxx\\",\\n \\"SourceLocation\\": {\\n \\"GmtCreate\\": \\"\\",\\n \\"SourceLocationName\\": \\"\\",\\n \\"State\\": 0,\\n \\"GmtModified\\": \\"\\",\\n \\"SegmentDeliveryConfigurations\\": \\"\\",\\n \\"BaseUrl\\": \\"\\",\\n \\"Arn\\": \\"\\"\\n }\\n}","type":"json"}]', + 'title' => 'CreateSourceLocation', + ], + 'UpdateProgram' => [ + 'summary' => 'Modifies a program in a MediaWeaver channel.', + 'description' => '', + 'path' => '/', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceFEJXOS', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'ProgramName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the program.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'program1', + ], + ], + [ + 'name' => 'ChannelName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the channel.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'MyChannel', + ], + ], + [ + 'name' => 'ClipRange', + 'in' => 'query', + 'schema' => [ + 'description' => 'Extracts a clip from the source.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{StartOffsetMillis: 213123, EndOffsetMillis: 213134}', + ], + ], + [ + 'name' => 'AdBreaks', + 'in' => 'query', + 'schema' => [ + 'description' => 'The information about ad breaks.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '[{"MessageType":"SPLICE_INSERT","OffsetMillis":1000,"SourceLocationName":"MySourceLocation","SourceName":"MyAdSource","SpliceInsertSettings":{"AvailNumber":0,"AvailExpected":0,"SpliceEventID":1,"UniqueProgramID":0}}]', + ], + ], + [ + 'name' => 'SourceLocationName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the source location.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'MySourceLcation', + ], + ], + [ + 'name' => 'SourceName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the source.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'MySource', + ], + ], + [ + 'name' => 'SourceType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The source type of the program. Valid values: vodSource and liveSource.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'vodSource', + ], + ], + [ + 'name' => 'Transition', + 'in' => 'query', + 'schema' => [ + 'description' => 'The program transition method.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{"Type": "RELATIVE", "RelativePosition": "AFTER_PROGRAM", "RelativeProgram": "program2"}', + ], + ], + ], + 'responses' => [ + 200 => [ + 'description' => '创建成功', + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '**请求ID**'."\n", + 'description' => '**Request ID**'."\n", + 'type' => 'string', + 'example' => 'xxx-xxxx-xxxxx-xxxx', + ], + 'Program' => [ + 'description' => 'The information about the program.'."\n", + '$ref' => '#/components/schemas/ChannelAssemblyProgram', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"xxx-xxxx-xxxxx-xxxx\\",\\n \\"Program\\": {\\n \\"GmtCreate\\": \\"\\",\\n \\"ChannelName\\": \\"\\",\\n \\"SourceLocationName\\": \\"\\",\\n \\"AdBreaks\\": [\\n {\\n \\"TimeSignalSettings\\": \\"\\",\\n \\"OffsetMillis\\": 0,\\n \\"ChannelName\\": \\"\\",\\n \\"SourceLocationName\\": \\"\\",\\n \\"SpliceInsertSettings\\": \\"\\",\\n \\"SourceName\\": \\"\\",\\n \\"ProgramName\\": \\"\\",\\n \\"MessageType\\": \\"\\"\\n }\\n ],\\n \\"SourceType\\": \\"\\",\\n \\"Transition\\": \\"\\",\\n \\"GmtModified\\": \\"\\",\\n \\"SourceName\\": \\"\\",\\n \\"ClipRange\\": \\"\\",\\n \\"Arn\\": \\"\\",\\n \\"ProgramName\\": \\"\\"\\n }\\n}","type":"json"}]', + 'title' => 'UpdateProgram', + ], + 'GetProgram' => [ + 'summary' => 'Queries a program.', + 'description' => '', + 'path' => '/', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceFEJXOS', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'ProgramName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the program.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'program1', + ], + ], + [ + 'name' => 'ChannelName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the channel.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'MyChannel', + ], + ], + ], + 'responses' => [ + 200 => [ + 'description' => '创建成功', + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '**请求ID**'."\n", + 'description' => '**Request ID**'."\n", + 'type' => 'string', + 'example' => 'xxx-xxxx-xxxxx-xxxx', + ], + 'Program' => [ + 'description' => 'The information about the program.'."\n", + '$ref' => '#/components/schemas/ChannelAssemblyProgram', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"xxx-xxxx-xxxxx-xxxx\\",\\n \\"Program\\": {\\n \\"GmtCreate\\": \\"\\",\\n \\"ChannelName\\": \\"\\",\\n \\"SourceLocationName\\": \\"\\",\\n \\"AdBreaks\\": [\\n {\\n \\"TimeSignalSettings\\": \\"\\",\\n \\"OffsetMillis\\": 0,\\n \\"ChannelName\\": \\"\\",\\n \\"SourceLocationName\\": \\"\\",\\n \\"SpliceInsertSettings\\": \\"\\",\\n \\"SourceName\\": \\"\\",\\n \\"ProgramName\\": \\"\\",\\n \\"MessageType\\": \\"\\"\\n }\\n ],\\n \\"SourceType\\": \\"\\",\\n \\"Transition\\": \\"\\",\\n \\"GmtModified\\": \\"\\",\\n \\"SourceName\\": \\"\\",\\n \\"ClipRange\\": \\"\\",\\n \\"Arn\\": \\"\\",\\n \\"ProgramName\\": \\"\\"\\n }\\n}","type":"json"}]', + 'title' => 'GetProgram', + ], + 'DeleteChannel' => [ + 'summary' => 'Deletes a channel.', + 'description' => '', + 'path' => '/', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceFEJXOS', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'ChannelName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the channel.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'MyChannel', + ], + ], + ], + 'responses' => [ + 200 => [ + 'description' => '创建成功', + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '**请求ID**'."\n", + 'description' => '**Request ID**'."\n", + 'type' => 'string', + 'example' => 'xxx-xxxx-xxxxx-xxxx', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"xxx-xxxx-xxxxx-xxxx\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => 'DeleteChannel', + ], + 'UpdateSource' => [ + 'summary' => 'Modifies a source.', + 'description' => '', + 'path' => '/', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceFEJXOS', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'SourceLocationName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the source location.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'MySourcelocation', + ], + ], + [ + 'name' => 'SourceType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The source type. Valid values: vodSource and liveSource.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'vodSource', + ], + ], + [ + 'name' => 'SourceName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the source.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'MySource', + ], + ], + [ + 'name' => 'HttpPackageConfigurations', + 'in' => 'query', + 'schema' => [ + 'description' => 'The source configurations.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '[{'."\n" + .' "sourceGroupName": "mySourceGroup-1",'."\n" + .' "relativePath": "group1/hls.m3u8",'."\n" + .' "packageType": "hls"'."\n" + .'}]', + ], + ], + ], + 'responses' => [ + 200 => [ + 'description' => '创建成功', + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '**请求ID**'."\n", + 'description' => '**Request ID**'."\n", + 'type' => 'string', + 'example' => 'xxx-xxxx-xxxxx-xxxx', + ], + 'Source' => [ + 'description' => 'The source information.'."\n", + '$ref' => '#/components/schemas/ChannelAssemblySource', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"xxx-xxxx-xxxxx-xxxx\\",\\n \\"Source\\": {\\n \\"GmtCreate\\": \\"\\",\\n \\"SourceLocationName\\": \\"\\",\\n \\"State\\": 0,\\n \\"SourceType\\": \\"\\",\\n \\"GmtModified\\": \\"\\",\\n \\"SourceName\\": \\"\\",\\n \\"HttpPackageConfigurations\\": \\"\\",\\n \\"Arn\\": \\"\\"\\n }\\n}","type":"json"}]', + 'title' => 'UpdateSource', + ], + 'StartChannel' => [ + 'summary' => 'Starts a channel.', + 'description' => '', + 'path' => '/', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceFEJXOS', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'ChannelName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the channel.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'MyChannel', + ], + ], + ], + 'responses' => [ + 200 => [ + 'description' => '创建成功', + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '**请求ID**'."\n", + 'description' => '**Request ID**'."\n", + 'type' => 'string', + 'example' => 'xxx-xxxx-xxxxx-xxxx', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"xxx-xxxx-xxxxx-xxxx\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => 'StartChannel', + ], + 'DeleteProgram' => [ + 'summary' => 'Deletes a program from a channel.', + 'description' => '', + 'path' => '/', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceFEJXOS', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'ProgramName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the program.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'program_name', + ], + ], + [ + 'name' => 'ChannelName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the channel.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'MyChannel', + ], + ], + ], + 'responses' => [ + 200 => [ + 'description' => '创建成功', + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '**请求ID**'."\n", + 'description' => '**Request ID**'."\n", + 'type' => 'string', + 'example' => 'xxx-xxxx-xxxxx-xxxx', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"xxx-xxxx-xxxxx-xxxx\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => 'DeleteProgram', + ], + 'DeleteSource' => [ + 'summary' => 'Deletes a source from MediaWeaver.', + 'description' => '', + 'path' => '/', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceFEJXOS', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'SourceLocationName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the source location.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'MySourceLocation', + ], + ], + [ + 'name' => 'SourceType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The source type. Valid values: vodSource and liveSource.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'vodSource', + ], + ], + [ + 'name' => 'SourceName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the source.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'MyVodSource', + ], + ], + [ + 'name' => 'SoftDelete', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to use delete markers.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + ], + 'responses' => [ + 200 => [ + 'description' => '创建成功', + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '**请求ID**'."\n", + 'description' => '**Request ID**'."\n", + 'type' => 'string', + 'example' => 'xxx-xxxx-xxxxx-xxxx', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"xxx-xxxx-xxxxx-xxxx\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => 'DeleteSource', + ], + 'StopChannel' => [ + 'summary' => 'Stops a MediaWeaver channel.', + 'description' => '', + 'path' => '/', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceFEJXOS', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'ChannelName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the channel.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'MyChannel', + ], + ], + ], + 'responses' => [ + 200 => [ + 'description' => '创建成功', + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '**请求ID**'."\n", + 'description' => '**Request ID**'."\n", + 'type' => 'string', + 'example' => 'xxx-xxxx-xxxxx-xxxx', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"xxx-xxxx-xxxxx-xxxx\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => 'StopChannel', + ], + 'ListChannels' => [ + 'summary' => 'Lists MediaWeaver channels.', + 'description' => '', + 'path' => '/', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceFEJXOS', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'ChannelName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the channel.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'MyChannel', + ], + ], + [ + 'name' => 'ChannelTier', + 'in' => 'query', + 'schema' => [ + 'description' => 'The tier of the channel. Valid values: basic and standard.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'basic', + ], + ], + [ + 'name' => 'PlaybackMode', + 'in' => 'query', + 'schema' => [ + 'description' => 'The playback mode. Valid values: loop and linear.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'loop', + ], + ], + [ + 'name' => 'State', + 'in' => 'query', + 'schema' => [ + 'description' => 'The channel status. A value of 0 specifies stopped. A value of 1 specifies started.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '0', + ], + ], + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page. Valid values: 1 to 100. Default value: 10.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '20', + ], + ], + [ + 'name' => 'SortByModifiedTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The sorting order by modification time. Valid values: asc and desc.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'desc', + ], + ], + [ + 'name' => 'SortBy', + 'in' => 'query', + 'schema' => [ + 'description' => 'The sorting order by creation time. Valid values: asc and desc.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'asc', + ], + ], + ], + 'responses' => [ + 200 => [ + 'description' => '创建成功', + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '**请求ID**'."\n", + 'description' => '**Request ID**'."\n", + 'type' => 'string', + 'example' => 'xxx-xxxx-xxxxx-xxxx', + ], + 'TotalCount' => [ + 'description' => 'The total number of channels returned.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '180', + ], + 'PageSize' => [ + 'description' => 'The number of entries per page. Valid values: 1 to 100. Default value: 10.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + ], + 'PageNo' => [ + 'description' => 'The page number. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'ChannelList' => [ + 'description' => 'The channels.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The channel information.'."\n", + '$ref' => '#/components/schemas/ChannelAssemblyChannel', + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"xxx-xxxx-xxxxx-xxxx\\",\\n \\"TotalCount\\": 180,\\n \\"PageSize\\": 10,\\n \\"PageNo\\": 1,\\n \\"ChannelList\\": [\\n {\\n \\"FillerSourceName\\": \\"\\",\\n \\"FillerSourceLocationName\\": \\"\\",\\n \\"GmtCreate\\": \\"\\",\\n \\"ChannelName\\": \\"\\",\\n \\"ChannelTier\\": \\"\\",\\n \\"AccessToken\\": \\"\\",\\n \\"State\\": 0,\\n \\"GmtModified\\": \\"\\",\\n \\"Arn\\": \\"\\",\\n \\"PlaybackMode\\": \\"\\",\\n \\"OutPutConfigList\\": [\\n {\\n \\"ManifestName\\": \\"\\",\\n \\"ChannelName\\": \\"\\",\\n \\"Format\\": \\"\\",\\n \\"PlaybackUrl\\": \\"\\",\\n \\"ManifestSettings\\": \\"\\",\\n \\"SourceGroupName\\": \\"\\"\\n }\\n ],\\n \\"AccessPolicy\\": true\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'ListChannels', + ], + 'ListPrograms' => [ + 'summary' => 'Lists programs.', + 'description' => '', + 'path' => '/', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceFEJXOS', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'ProgramName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the program.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'program1', + ], + ], + [ + 'name' => 'ChannelName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the channel.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'MyChannel', + ], + ], + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number. Default value: 1.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page. Default value: 20. Valid values: 1 to 100.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '10', + ], + ], + [ + 'name' => 'SortBy', + 'in' => 'query', + 'schema' => [ + 'description' => 'The sorting order. By default, the query results are sorted by creation time in descending order. Valid values:'."\n" + ."\n" + .'* asc: ascending order.'."\n" + .'* desc: descending order.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'desc', + ], + ], + ], + 'responses' => [ + 200 => [ + 'description' => '创建成功', + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '**请求ID**'."\n", + 'description' => '**Request ID**'."\n", + 'type' => 'string', + 'example' => 'xxx-xxxx-xxxxx-xxxx', + ], + 'TotalCount' => [ + 'description' => 'The total number of programs returned.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '100', + ], + 'Programs' => [ + 'description' => 'The programs.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The information about the program.'."\n", + '$ref' => '#/components/schemas/ChannelAssemblyProgram', + ], + ], + 'PageNo' => [ + 'description' => 'The page number. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'PageSize' => [ + 'description' => 'The number of entries per page. Default value: 20. Valid values: 1 to 100.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"xxx-xxxx-xxxxx-xxxx\\",\\n \\"TotalCount\\": 100,\\n \\"Programs\\": [\\n {\\n \\"GmtCreate\\": \\"\\",\\n \\"ChannelName\\": \\"\\",\\n \\"SourceLocationName\\": \\"\\",\\n \\"AdBreaks\\": [\\n {\\n \\"TimeSignalSettings\\": \\"\\",\\n \\"OffsetMillis\\": 0,\\n \\"ChannelName\\": \\"\\",\\n \\"SourceLocationName\\": \\"\\",\\n \\"SpliceInsertSettings\\": \\"\\",\\n \\"SourceName\\": \\"\\",\\n \\"ProgramName\\": \\"\\",\\n \\"MessageType\\": \\"\\"\\n }\\n ],\\n \\"SourceType\\": \\"\\",\\n \\"Transition\\": \\"\\",\\n \\"GmtModified\\": \\"\\",\\n \\"SourceName\\": \\"\\",\\n \\"ClipRange\\": \\"\\",\\n \\"Arn\\": \\"\\",\\n \\"ProgramName\\": \\"\\"\\n }\\n ],\\n \\"PageNo\\": 1,\\n \\"PageSize\\": 10\\n}","type":"json"}]', + 'title' => 'ListPrograms', + ], + 'GetSource' => [ + 'summary' => 'Queries a source.', + 'description' => '', + 'path' => '/', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceFEJXOS', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'SourceLocationName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The source location.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'MySourceLocation', + ], + ], + [ + 'name' => 'SourceType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The source type. Valid values: vodSource and liveSource.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'vodSource', + ], + ], + [ + 'name' => 'SourceName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the source.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'MyVodSource', + ], + ], + ], + 'responses' => [ + 200 => [ + 'description' => '创建成功', + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '**请求ID**'."\n", + 'description' => '**Request ID**'."\n", + 'type' => 'string', + 'example' => 'xxx-xxxx-xxxxx-xxxx', + ], + 'Source' => [ + 'description' => 'The source information.'."\n", + '$ref' => '#/components/schemas/ChannelAssemblySource', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"xxx-xxxx-xxxxx-xxxx\\",\\n \\"Source\\": {\\n \\"GmtCreate\\": \\"\\",\\n \\"SourceLocationName\\": \\"\\",\\n \\"State\\": 0,\\n \\"SourceType\\": \\"\\",\\n \\"GmtModified\\": \\"\\",\\n \\"SourceName\\": \\"\\",\\n \\"HttpPackageConfigurations\\": \\"\\",\\n \\"Arn\\": \\"\\"\\n }\\n}","type":"json"}]', + 'title' => 'GetSource', + ], + 'CreateChannel' => [ + 'summary' => 'Creates a channel in MediaWeaver.', + 'description' => '', + 'path' => '/', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceFEJXOS', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'ChannelName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the channel.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'MyChannel', + ], + ], + [ + 'name' => 'ChannelTier', + 'in' => 'query', + 'schema' => [ + 'description' => 'The tier of the channel. Valid values: basic and standard.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'basic', + ], + ], + [ + 'name' => 'PlaybackMode', + 'in' => 'query', + 'schema' => [ + 'description' => 'The playback mode. Valid values: loop and linear.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'loop', + ], + ], + [ + 'name' => 'AccessPolicy', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to enable access control.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'false', + ], + ], + [ + 'name' => 'AccessToken', + 'in' => 'query', + 'schema' => [ + 'description' => 'The token for accessing the channel.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'xxxxx', + ], + ], + [ + 'name' => 'FillerSourceLocationName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The source location of the filler slate.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'MySourceLocation', + ], + ], + [ + 'name' => 'FillerSourceName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the filler slate.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'FillerSource', + ], + ], + [ + 'name' => 'OutPutConfigList', + 'in' => 'query', + 'schema' => [ + 'description' => 'The channel output configurations.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '[{'."\n" + .' "ManifestName": "manifest-1",'."\n" + .' "Format": "HLS",'."\n" + .' "SourceGroupName": "source-group-1",'."\n" + .' "ManifestSettings": {'."\n" + .' "WindowDuration": 60,'."\n" + .' "AdMarkType": "Daterange"'."\n" + .' }'."\n" + .'}]', + ], + ], + ], + 'responses' => [ + 200 => [ + 'description' => '创建成功', + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '**请求ID**'."\n", + 'description' => '**Request ID**'."\n", + 'type' => 'string', + 'example' => 'xxx-xxxx-xxxxx-xxxx', + ], + 'Channel' => [ + 'description' => 'The channel information.'."\n", + '$ref' => '#/components/schemas/ChannelAssemblyChannel', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"xxx-xxxx-xxxxx-xxxx\\",\\n \\"Channel\\": {\\n \\"FillerSourceName\\": \\"\\",\\n \\"FillerSourceLocationName\\": \\"\\",\\n \\"GmtCreate\\": \\"\\",\\n \\"ChannelName\\": \\"\\",\\n \\"ChannelTier\\": \\"\\",\\n \\"AccessToken\\": \\"\\",\\n \\"State\\": 0,\\n \\"GmtModified\\": \\"\\",\\n \\"Arn\\": \\"\\",\\n \\"PlaybackMode\\": \\"\\",\\n \\"OutPutConfigList\\": [\\n {\\n \\"ManifestName\\": \\"\\",\\n \\"ChannelName\\": \\"\\",\\n \\"Format\\": \\"\\",\\n \\"PlaybackUrl\\": \\"\\",\\n \\"ManifestSettings\\": \\"\\",\\n \\"SourceGroupName\\": \\"\\"\\n }\\n ],\\n \\"AccessPolicy\\": true\\n }\\n}","type":"json"}]', + 'title' => 'CreateChannel', + ], + 'ListSchedules' => [ + 'summary' => 'Lists the program schedule of a MediaWeaver channel.', + 'description' => '', + 'path' => '/', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceFEJXOS', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'ChannelName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the channel.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'MyChannel', + ], + ], + [ + 'name' => 'WindowDurationSeconds', + 'in' => 'query', + 'schema' => [ + 'description' => 'The time window of the program schedule.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '14400', + ], + ], + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page. Default value: 10.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '10', + ], + ], + ], + 'responses' => [ + 200 => [ + 'description' => '创建成功', + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '**请求ID**'."\n", + 'description' => '**Request ID**'."\n", + 'type' => 'string', + 'example' => 'xxx-xxxx-xxxxx-xxxx', + ], + 'TotalCount' => [ + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '5', + ], + 'Programs' => [ + 'description' => 'The program schedule.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The schedule information.'."\n", + '$ref' => '#/components/schemas/ChannelAssemblyScheduleData', + ], + ], + 'PageNo' => [ + 'description' => 'The page number. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'PageSize' => [ + 'description' => 'The number of entries per page. Default value: 20. Valid values: 1 to 100.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"xxx-xxxx-xxxxx-xxxx\\",\\n \\"TotalCount\\": 5,\\n \\"Programs\\": [\\n {\\n \\"EntryType\\": \\"\\",\\n \\"SourceLocationName\\": \\"\\",\\n \\"AdBreaks\\": [\\n {\\n \\"OffsetMillis\\": \\"\\",\\n \\"TimeSignalSettings\\": \\"\\",\\n \\"SourceLocationName\\": \\"\\",\\n \\"SpliceInsertSettings\\": \\"\\",\\n \\"SourceName\\": \\"\\",\\n \\"MessageType\\": \\"\\"\\n }\\n ],\\n \\"SourceType\\": \\"\\",\\n \\"SourceName\\": \\"\\",\\n \\"ApproximateDurationSeconds\\": 0,\\n \\"ApproximateStartTime\\": \\"\\",\\n \\"ProgramName\\": \\"\\"\\n }\\n ],\\n \\"PageNo\\": 1,\\n \\"PageSize\\": 10\\n}","type":"json"}]', + 'title' => 'ListSchedules', + ], + 'ListSources' => [ + 'summary' => 'Lists sources in MediaWeaver.', + 'description' => '', + 'path' => '/', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceFEJXOS', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'SourceLocationName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the source location.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'MySourceLocation', + ], + ], + [ + 'name' => 'SourceType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The source type. Valid values: vodSource and liveSource.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'vodSource', + ], + ], + [ + 'name' => 'SourceName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the source.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'MyVodSource', + ], + ], + [ + 'name' => 'FilterState', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to ignore sources marked as deleted.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number. Default value: 1.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '10', + ], + ], + [ + 'name' => 'SortByModifiedTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The sorting order by modification time. Valid values: asc and desc.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'desc', + ], + ], + [ + 'name' => 'SortBy', + 'in' => 'query', + 'schema' => [ + 'description' => 'The sorting order. By default, the query results are sorted by creation time in descending order. Valid values: asc and desc.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'asc', + ], + ], + ], + 'responses' => [ + 200 => [ + 'description' => '创建成功', + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '**请求ID**'."\n", + 'description' => '**Request ID**'."\n", + 'type' => 'string', + 'example' => 'xxx-xxxx-xxxxx-xxxx', + ], + 'TotalCount' => [ + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '100', + ], + 'PageNo' => [ + 'description' => 'The page number. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'PageSize' => [ + 'description' => 'The number of entries per page. Default value: 20. Valid values: 1 to 100.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '20', + ], + 'SourceList' => [ + 'description' => 'The sources.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The source information.'."\n", + '$ref' => '#/components/schemas/ChannelAssemblySource', + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"xxx-xxxx-xxxxx-xxxx\\",\\n \\"TotalCount\\": 100,\\n \\"PageNo\\": 1,\\n \\"PageSize\\": 20,\\n \\"SourceList\\": [\\n {\\n \\"GmtCreate\\": \\"\\",\\n \\"SourceLocationName\\": \\"\\",\\n \\"State\\": 0,\\n \\"SourceType\\": \\"\\",\\n \\"GmtModified\\": \\"\\",\\n \\"SourceName\\": \\"\\",\\n \\"HttpPackageConfigurations\\": \\"\\",\\n \\"Arn\\": \\"\\"\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'ListSources', + ], + 'ListAlerts' => [ + 'summary' => 'Lists alerts received in MediaWeaver.', + 'description' => '', + 'path' => '/', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceFEJXOS', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '20', + ], + ], + [ + 'name' => 'ResourceArn', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ARN of the source or program.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'acs:ims:mediaweaver:<regionId>:<userId>:vodSource/mySourceLocation/MySource', + ], + ], + [ + 'name' => 'Category', + 'in' => 'query', + 'schema' => [ + 'description' => 'The alert type.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '', + ], + ], + [ + 'name' => 'SortBy', + 'in' => 'query', + 'schema' => [ + 'description' => 'The sorting order. By default, the query results are sorted by creation time in descending order. Valid values: asc and desc.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'asc', + ], + ], + [ + 'name' => 'SortByModifiedTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The sorting order by modification time. Valid values: asc and desc.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'asc', + ], + ], + [ + 'name' => 'GmtStart', + 'in' => 'query', + 'schema' => [ + 'description' => 'The beginning of the time range to query.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2024-11-21T16:10:45Z', + ], + ], + [ + 'name' => 'GmtEnd', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end of the time range to query.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2024-11-22T16:10:45Z', + ], + ], + ], + 'responses' => [ + 200 => [ + 'description' => '创建成功', + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '**请求ID**'."\n", + 'description' => '**Request ID**'."\n", + 'type' => 'string', + 'example' => 'xxx-xxxx-xxxxx-xxxx', + ], + 'TotalCount' => [ + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '100', + ], + 'PageNo' => [ + 'description' => 'The page number. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'PageSize' => [ + 'description' => 'The number of entries per page. Default value: 10. Valid values: 1 to 100.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + ], + 'Alerts' => [ + 'description' => 'The alerts.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The alert information.'."\n", + 'type' => 'object', + 'properties' => [ + 'ResourceArn' => [ + 'description' => 'The ARN of the resource.'."\n", + 'type' => 'string', + 'example' => 'acs:ims:mediaweaver:<regionId>:<userId>:vodSource/mySourceLocation/MySource', + ], + 'Code' => [ + 'description' => 'The error code.'."\n", + 'type' => 'string', + 'example' => 'ScheduleError', + ], + 'Message' => [ + 'description' => 'The error message.'."\n", + 'type' => 'string', + 'example' => 'xxxxx', + ], + 'Category' => [ + 'description' => 'The alert type.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'RelatedResourceArns' => [ + 'description' => 'The ARN of the related resource.'."\n", + 'type' => 'string', + 'example' => 'acs:ims:mediaweaver:<regionId>:<userId>:vodSource/mySourceLocation/MySource', + ], + 'GmtCreate' => [ + 'description' => 'The time when the alert was received in UTC.'."\n", + 'type' => 'string', + 'example' => '2024-07-16T10:03Z', + ], + 'GmtModified' => [ + 'description' => 'The time when the alert was modified in UTC.'."\n", + 'type' => 'string', + 'example' => '2024-07-16T10:03Z', + ], + ], + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"xxx-xxxx-xxxxx-xxxx\\",\\n \\"TotalCount\\": 100,\\n \\"PageNo\\": 1,\\n \\"PageSize\\": 10,\\n \\"Alerts\\": [\\n {\\n \\"ResourceArn\\": \\"acs:ims:mediaweaver:<regionId>:<userId>:vodSource/mySourceLocation/MySource\\",\\n \\"Code\\": \\"ScheduleError\\",\\n \\"Message\\": \\"xxxxx\\",\\n \\"Category\\": \\"Scheduling Error:构建日程时出错。\\\\nPlayBack Warning:添加source时地址拉取异常。\\\\ninfo:信息。\\",\\n \\"RelatedResourceArns\\": \\"acs:ims:mediaweaver:<regionId>:<userId>:vodSource/mySourceLocation/MySource\\",\\n \\"GmtCreate\\": \\"2024-07-16T10:03Z\\",\\n \\"GmtModified\\": \\"2024-07-16T10:03Z\\"\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'ListAlerts', + ], + 'GetChannel' => [ + 'summary' => 'Queries information about a channel in MediaWeaver.', + 'description' => '', + 'path' => '/', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceFEJXOS', + ], + ], + 'parameters' => [ + [ + 'name' => 'ChannelName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the channel.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'MyChannel', + ], + ], + ], + 'responses' => [ + 200 => [ + 'description' => '创建成功', + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '**请求ID**'."\n", + 'description' => '**Request ID**'."\n", + 'type' => 'string', + 'example' => 'xxx-xxxx-xxxxx-xxxx', + ], + 'Channel' => [ + 'description' => 'The channel information.'."\n", + '$ref' => '#/components/schemas/ChannelAssemblyChannel', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"xxx-xxxx-xxxxx-xxxx\\",\\n \\"Channel\\": {\\n \\"FillerSourceName\\": \\"\\",\\n \\"FillerSourceLocationName\\": \\"\\",\\n \\"GmtCreate\\": \\"\\",\\n \\"ChannelName\\": \\"\\",\\n \\"ChannelTier\\": \\"\\",\\n \\"AccessToken\\": \\"\\",\\n \\"State\\": 0,\\n \\"GmtModified\\": \\"\\",\\n \\"Arn\\": \\"\\",\\n \\"PlaybackMode\\": \\"\\",\\n \\"OutPutConfigList\\": [\\n {\\n \\"ManifestName\\": \\"\\",\\n \\"ChannelName\\": \\"\\",\\n \\"Format\\": \\"\\",\\n \\"PlaybackUrl\\": \\"\\",\\n \\"ManifestSettings\\": \\"\\",\\n \\"SourceGroupName\\": \\"\\"\\n }\\n ],\\n \\"AccessPolicy\\": true\\n }\\n}","type":"json"}]', + 'title' => 'GetChannel', + ], + 'CreateProgram' => [ + 'summary' => 'Creates a program in a MediaWeaver channel.', + 'description' => '', + 'path' => '/', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceFEJXOS', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'ProgramName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the program.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'program1', + ], + ], + [ + 'name' => 'ChannelName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the channel.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'MyChannel', + ], + ], + [ + 'name' => 'SourceType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The source type of the program.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'vodSource', + ], + ], + [ + 'name' => 'SourceLocationName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The source location.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'MySourceLcation', + ], + ], + [ + 'name' => 'SourceName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the source.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'MySource', + ], + ], + [ + 'name' => 'Transition', + 'in' => 'query', + 'schema' => [ + 'description' => 'The program transition method.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '{"Type": "RELATIVE", "RelativePosition": "AFTER_PROGRAM", "RelativeProgram": "program2"}', + ], + ], + [ + 'name' => 'ClipRange', + 'in' => 'query', + 'schema' => [ + 'description' => 'Extracts a clip from the source.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{StartOffsetMillis: 213123, EndOffsetMillis: 213134}', + ], + ], + [ + 'name' => 'AdBreaks', + 'in' => 'query', + 'schema' => [ + 'description' => 'The information about ad breaks.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '[{"MessageType":"SPLICE_INSERT","OffsetMillis":1000,"SourceLocationName":"MySourceLocation","SourceName":"MyAdSource","SpliceInsertSettings":{"AvailNumber":0,"AvailExpected":0,"SpliceEventID":1,"UniqueProgramID":0}}]', + ], + ], + ], + 'responses' => [ + 200 => [ + 'description' => '创建成功', + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '**请求ID**'."\n", + 'description' => '**Request ID**'."\n", + 'type' => 'string', + 'example' => 'xxx-xxxx-xxxxx-xxxx', + ], + 'Program' => [ + 'description' => 'The information about the program.'."\n", + '$ref' => '#/components/schemas/ChannelAssemblyProgram', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"xxx-xxxx-xxxxx-xxxx\\",\\n \\"Program\\": {\\n \\"GmtCreate\\": \\"\\",\\n \\"ChannelName\\": \\"\\",\\n \\"SourceLocationName\\": \\"\\",\\n \\"AdBreaks\\": [\\n {\\n \\"TimeSignalSettings\\": \\"\\",\\n \\"OffsetMillis\\": 0,\\n \\"ChannelName\\": \\"\\",\\n \\"SourceLocationName\\": \\"\\",\\n \\"SpliceInsertSettings\\": \\"\\",\\n \\"SourceName\\": \\"\\",\\n \\"ProgramName\\": \\"\\",\\n \\"MessageType\\": \\"\\"\\n }\\n ],\\n \\"SourceType\\": \\"\\",\\n \\"Transition\\": \\"\\",\\n \\"GmtModified\\": \\"\\",\\n \\"SourceName\\": \\"\\",\\n \\"ClipRange\\": \\"\\",\\n \\"Arn\\": \\"\\",\\n \\"ProgramName\\": \\"\\"\\n }\\n}","type":"json"}]', + 'title' => 'CreateProgram', + ], + 'ListChannelAlerts' => [ + 'summary' => 'Lists alerts for resources in a MediaWeaver channel.', + 'description' => '', + 'path' => '/', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceFEJXOS', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '10', + ], + ], + [ + 'name' => 'ResourceArn', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ARN of the channel.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'acs:ims:mediaweaver:<regionId>:<userId>:channel/myChannel', + ], + ], + [ + 'name' => 'Category', + 'in' => 'query', + 'schema' => [ + 'description' => 'The alert type.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '', + ], + ], + [ + 'name' => 'SortByModifiedTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The sorting order by modification time. Valid values: asc and desc.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'desc', + ], + ], + [ + 'name' => 'GmtStart', + 'in' => 'query', + 'schema' => [ + 'description' => 'The beginning of the time range to query.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2024-11-21T16:10:45Z', + ], + ], + [ + 'name' => 'GmtEnd', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end of the time range to query.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2024-11-21T16:10:45Z', + ], + ], + ], + 'responses' => [ + 200 => [ + 'description' => '创建成功', + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '**请求ID**'."\n", + 'description' => '**Request ID**'."\n", + 'type' => 'string', + 'example' => 'xxx-xxxx-xxxxx-xxxx', + ], + 'TotalCount' => [ + 'description' => 'The total number of alerts returned.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '4', + ], + 'ProgramAlerts' => [ + 'description' => 'The alerts.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Arn' => [ + 'description' => 'The ARN of the program.'."\n", + 'type' => 'string', + 'example' => 'acs:ims:mediaweaver:<regionId>:<userId>:program/myChannel/MyProgram', + ], + 'ProgramName' => [ + 'description' => 'The name of the program.'."\n", + 'type' => 'string', + 'example' => 'program_name', + ], + 'Category' => [ + 'description' => 'The alert type.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'Count' => [ + 'description' => 'The number of alerts.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '4', + ], + 'GmtModified' => [ + 'description' => 'The time when the alert was last modified in UTC.'."\n", + 'type' => 'string', + 'example' => '2024-07-16T10:03Z', + ], + ], + 'description' => '', + ], + ], + 'PageNo' => [ + 'description' => 'The page number. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'PageSize' => [ + 'description' => 'The number of entries per page.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"xxx-xxxx-xxxxx-xxxx\\",\\n \\"TotalCount\\": 4,\\n \\"ProgramAlerts\\": [\\n {\\n \\"Arn\\": \\"acs:ims:mediaweaver:<regionId>:<userId>:program/myChannel/MyProgram\\",\\n \\"ProgramName\\": \\"program_name\\",\\n \\"Category\\": \\"Scheduling Error:构建日程时出错。\\\\nPlayBack Warning:添加source时地址拉取异常。\\\\ninfo:信息。\\",\\n \\"Count\\": 4,\\n \\"GmtModified\\": \\"2024-07-16T10:03Z\\"\\n }\\n ],\\n \\"PageNo\\": 1,\\n \\"PageSize\\": 10\\n}","type":"json"}]', + 'title' => 'ListChannelAlerts', + ], + 'CreateSource' => [ + 'summary' => 'Creates a source in MediaWeaver.', + 'description' => '', + 'path' => '/', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceFEJXOS', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'SourceLocationName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the source location.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'MySourceLocation', + ], + ], + [ + 'name' => 'SourceType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The source type. Valid values: vodSource and liveSource.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'vodSource', + ], + ], + [ + 'name' => 'SourceName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the source.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'MyVodSource', + ], + ], + [ + 'name' => 'HttpPackageConfigurations', + 'in' => 'query', + 'schema' => [ + 'description' => 'The source configurations.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '“[{'."\n" + .' "sourceGroupName": "mySourceGroup-1",'."\n" + .' "relativePath": "group1/hls.m3u8",'."\n" + .' "type": "hls"'."\n" + .'}]”', + ], + ], + ], + 'responses' => [ + 200 => [ + 'description' => '创建成功', + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '**请求ID**'."\n", + 'description' => '**Request ID**'."\n", + 'type' => 'string', + 'example' => 'xxx-xxxx-xxxxx-xxxx', + ], + 'Source' => [ + 'description' => 'The source information.'."\n", + '$ref' => '#/components/schemas/ChannelAssemblySource', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"xxx-xxxx-xxxxx-xxxx\\",\\n \\"Source\\": {\\n \\"GmtCreate\\": \\"\\",\\n \\"SourceLocationName\\": \\"\\",\\n \\"State\\": 0,\\n \\"SourceType\\": \\"\\",\\n \\"GmtModified\\": \\"\\",\\n \\"SourceName\\": \\"\\",\\n \\"HttpPackageConfigurations\\": \\"\\",\\n \\"Arn\\": \\"\\"\\n }\\n}","type":"json"}]', + 'title' => 'CreateSource', + ], + 'UpdateChannel' => [ + 'summary' => 'Modifies a MediaWeaver channel.', + 'description' => '', + 'path' => '/', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREiceFEJXOS', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'ChannelName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the channel.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'MyChannel', + ], + ], + [ + 'name' => 'AccessPolicy', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to enable access control.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + [ + 'name' => 'AccessToken', + 'in' => 'query', + 'schema' => [ + 'description' => 'The token for accessing the channel.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'xxxxx', + ], + ], + [ + 'name' => 'FillerSourceLocationName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The source location of the filler slate.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'MySourceLocation', + ], + ], + [ + 'name' => 'FillerSourceName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the filler slate.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'MySource', + ], + ], + [ + 'name' => 'OutPutConfigList', + 'in' => 'query', + 'schema' => [ + 'description' => 'The channel output configurations.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '[{'."\n" + .' "ManifestName": "manifest-1",'."\n" + .' "Format": "HLS",'."\n" + .' "SourceGroupName": "source-group-1",'."\n" + .' "ManifestSettings": {'."\n" + .' "WindowDuration": 60,'."\n" + .' "AdMarkType": "Daterange"'."\n" + .' }'."\n" + .'}]', + ], + ], + ], + 'responses' => [ + 200 => [ + 'description' => '创建成功', + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '**请求ID**'."\n", + 'description' => '**Request ID**'."\n", + 'type' => 'string', + 'example' => 'xxx-xxxx-xxxxx-xxxx', + ], + 'Channel' => [ + 'description' => 'The channel information.'."\n", + '$ref' => '#/components/schemas/ChannelAssemblyChannel', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"xxx-xxxx-xxxxx-xxxx\\",\\n \\"Channel\\": {\\n \\"FillerSourceName\\": \\"\\",\\n \\"FillerSourceLocationName\\": \\"\\",\\n \\"GmtCreate\\": \\"\\",\\n \\"ChannelName\\": \\"\\",\\n \\"ChannelTier\\": \\"\\",\\n \\"AccessToken\\": \\"\\",\\n \\"State\\": 0,\\n \\"GmtModified\\": \\"\\",\\n \\"Arn\\": \\"\\",\\n \\"PlaybackMode\\": \\"\\",\\n \\"OutPutConfigList\\": [\\n {\\n \\"ManifestName\\": \\"\\",\\n \\"ChannelName\\": \\"\\",\\n \\"Format\\": \\"\\",\\n \\"PlaybackUrl\\": \\"\\",\\n \\"ManifestSettings\\": \\"\\",\\n \\"SourceGroupName\\": \\"\\"\\n }\\n ],\\n \\"AccessPolicy\\": true\\n }\\n}","type":"json"}]', + 'title' => 'UpdateChannel', + ], + 'CreateVodPackagingGroup' => [ + 'summary' => 'Creates a VOD packaging group.', + 'path' => '', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREice20UKYV', + ], + ], + 'parameters' => [ + [ + 'name' => 'GroupName', + 'in' => 'query', + 'schema' => [ + 'title' => '打包组名称,用户维度唯一,长度128字符,格式:[A-Za-z0-9_-]+。', + 'description' => 'The name of the packaging group. The name must be unique in an account and can be up to 128 characters in length. Letters, digits, underscores (\\_), and hyphens (-) are supported.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'vod_hls', + ], + ], + [ + 'name' => 'Description', + 'in' => 'query', + 'schema' => [ + 'title' => '打包组描述信息。', + 'description' => 'The packaging group description.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'vod hls packaging', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The result of creating the packaging group.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'PackagingGroup' => [ + 'description' => 'The packaging group information.'."\n", + '$ref' => '#/components/schemas/VodPackagingGroup', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"PackagingGroup\\": {\\n \\"GroupName\\": \\"\\",\\n \\"Description\\": \\"\\",\\n \\"DomainName\\": \\"\\",\\n \\"CreateTime\\": \\"\\",\\n \\"ApproximateAssetCount\\": 0,\\n \\"ConfigurationCount\\": 0\\n }\\n}","type":"json"}]', + 'title' => 'CreateVodPackagingGroup', + ], + 'GetVodPackagingGroup' => [ + 'summary' => 'Queries a VOD packaging group.', + 'path' => '', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREice20UKYV', + ], + ], + 'parameters' => [ + [ + 'name' => 'GroupName', + 'in' => 'query', + 'schema' => [ + 'title' => '打包组名称,用户维度唯一,长度128字符,格式:[A-Za-z0-9_-]+。', + 'description' => 'The name of the packaging group. The name must be unique and can be up to 128 characters in length. Letters, digits, underscores (\\_), and hyphens (-) are supported.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'vod_hls', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The query result.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '****36-3C1E-4417-BDB2-1E034F****', + ], + 'PackagingGroup' => [ + 'description' => 'The information about the packaging group.'."\n", + '$ref' => '#/components/schemas/VodPackagingGroup', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"****36-3C1E-4417-BDB2-1E034F****\\",\\n \\"PackagingGroup\\": {\\n \\"GroupName\\": \\"\\",\\n \\"Description\\": \\"\\",\\n \\"DomainName\\": \\"\\",\\n \\"CreateTime\\": \\"\\",\\n \\"ApproximateAssetCount\\": 0,\\n \\"ConfigurationCount\\": 0\\n }\\n}","type":"json"}]', + 'title' => 'GetVodPackagingGroup', + ], + 'ListVodPackagingGroups' => [ + 'summary' => 'Lists VOD packaging groups.', + 'path' => '', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREice20UKYV', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'title' => '分页查询页号,默认1。', + 'description' => 'The page number. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'title' => '分页查询每页大小,默认10。', + 'description' => 'The number of entries per page. Default value: 10.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '10', + ], + ], + [ + 'name' => 'SortBy', + 'in' => 'query', + 'schema' => [ + 'title' => '排序规则,默认desc,可选:'."\n" + .'- desc:按创建时间倒序排序;'."\n" + .'- asc:按创建时间正序排序。', + 'description' => 'The sorting order of the packaging groups based on the time when they were created. Valid values:'."\n" + ."\n" + .'* desc (default): descending order.'."\n" + .'* asc: ascending order.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'desc', + ], + ], + [ + 'name' => 'Keyword', + 'in' => 'query', + 'schema' => [ + 'title' => '搜索关键词,指定查询过滤GroupName 包含Keyword的打包组。', + 'description' => 'The search keyword. The names of the returned packaging groups contain the keyword.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'hls', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The query results.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'SortBy' => [ + 'title' => '排序规则,默认desc,可选:'."\n" + .'- desc:按创建时间倒序排序;'."\n" + .'- asc:按创建时间正序排序。', + 'description' => 'The sorting order of the packaging groups based on the time when they were created. Valid values:'."\n" + ."\n" + .'* desc: descending order.'."\n" + .'* asc: ascending order.'."\n", + 'type' => 'string', + 'example' => 'desc', + ], + 'PageNo' => [ + 'title' => '分页查询页号,默认1。', + 'description' => 'The page number. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'PageSize' => [ + 'title' => '分页查询每页大小,默认10。', + 'description' => 'The number of entries per page. Default value: 10.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + ], + 'PackagingGroups' => [ + 'title' => '打包组列表。', + 'description' => 'The packaging groups.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The information about packaging groups.'."\n", + '$ref' => '#/components/schemas/VodPackagingGroup', + ], + ], + 'TotalCount' => [ + 'title' => '总数。', + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '5', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"SortBy\\": \\"desc\\",\\n \\"PageNo\\": 1,\\n \\"PageSize\\": 10,\\n \\"PackagingGroups\\": [\\n {\\n \\"GroupName\\": \\"\\",\\n \\"Description\\": \\"\\",\\n \\"DomainName\\": \\"\\",\\n \\"CreateTime\\": \\"\\",\\n \\"ApproximateAssetCount\\": 0,\\n \\"ConfigurationCount\\": 0\\n }\\n ],\\n \\"TotalCount\\": 5\\n}","type":"json"}]', + 'title' => 'ListVodPackagingGroups', + ], + 'DeleteVodPackagingGroup' => [ + 'summary' => 'Deletes a VOD packaging group.', + 'path' => '', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREice20UKYV', + ], + ], + 'parameters' => [ + [ + 'name' => 'GroupName', + 'in' => 'query', + 'schema' => [ + 'title' => '打包组名称。', + 'description' => 'The name of the packaging group.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'vod_hls', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The result of deletion.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '13cbb83e-043c-4728-ac35-*****', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"13cbb83e-043c-4728-ac35-*****\\"\\n}","type":"json"}]', + 'title' => 'DeleteVodPackagingGroup', + ], + 'CreateVodPackagingConfiguration' => [ + 'summary' => 'Creates a VOD packaging configuration.', + 'path' => '', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREice20UKYV', + ], + ], + 'parameters' => [ + [ + 'name' => 'GroupName', + 'in' => 'query', + 'schema' => [ + 'title' => '打包组名称,长度128个字符,格式:[A-Za-z0-9_-]+。', + 'description' => 'The name of the packaging group. The name can be up to 128 characters in length. Letters, digits, underscores (\\_), and hyphens (-) are supported.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'vod_hls', + ], + ], + [ + 'name' => 'ConfigurationName', + 'in' => 'query', + 'schema' => [ + 'title' => '打包配置名称,长度128个字符,格式:[A-Za-z0-9_-]+,用户维度唯一。', + 'description' => 'The name of the packaging configuration. The name must be unique in an account and can be up to 128 characters in length. Letters, digits, underscores (\\_), and hyphens (-) are supported.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'hls_3s', + ], + ], + [ + 'name' => 'Protocol', + 'in' => 'query', + 'schema' => [ + 'title' => '打包类型,支持:'."\n" + .'- HLS: HLC协议播放格式;'."\n" + .'- HLS_CMAF: HLS协议的CMAF播放格式;'."\n" + .'- DASH: DASH协议播放格式。', + 'description' => 'The package type.'."\n" + ."\n" + .'* HLS: packages content into TS segments for delivery over the HLS protocol.'."\n" + .'* HLS_CMAF: packages content into CMAF segments for delivery over the HLS protocol.'."\n" + .'* DASH: packages content for delivery over the DASH protocol.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'HLS', + ], + ], + [ + 'name' => 'Description', + 'in' => 'query', + 'schema' => [ + 'title' => '打包配置描述信息。', + 'description' => 'The description of the packaging configuration.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'HLS 3s vod packaging', + ], + ], + [ + 'name' => 'PackageConfig', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'title' => '打包配置。', + 'description' => 'The packaging configuration.'."\n", + 'type' => 'object', + 'properties' => [ + 'ManifestName' => [ + 'title' => 'manifest名称,[A-Za-z0-9_]+,长度不超过128。', + 'description' => 'The manifest name. The name can be up to 128 characters in length. Letters, digits, underscores (\\_), and hyphens (-) are supported.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'index', + ], + 'SegmentDuration' => [ + 'title' => '每个片段的时长(以秒为单位)。实际片段将会被四舍五入到最接近的源片段时长的倍数。取值范围【1,30】。', + 'description' => 'The duration of each segment in a packaged stream. Unit: seconds. MediaPackage rounds segments to the nearest multiple of the input segment duration. Valid values: 1 to 30.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '6', + ], + 'StreamSelection' => [ + 'title' => '打包输出流选择配置。', + 'description' => 'The settings of stream selection.'."\n", + 'type' => 'object', + 'properties' => [ + 'MinVideoBitsPerSecond' => [ + 'title' => '最小视频流码率,单位bps。', + 'description' => 'The minimum bitrate of the video stream. Unit: bit/s.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '100000', + ], + 'MaxVideoBitsPerSecond' => [ + 'title' => '最大视频流码率,单位bps。', + 'description' => 'The maximum bitrate of the video stream. Unit: bit/s.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1000000000', + ], + 'StreamOrder' => [ + 'title' => '流排序规则,支持值:'."\n" + .'- ORIGINAL:保持输入序号;'."\n" + .'- VIDEO_BITRATE_ASCENDING:按视频流码率递增;'."\n" + .'- VIDEO_BITRATE_DESCENDING:按视频流码率递减。', + 'description' => 'The order of manifest files in the master playlist. Valid values:'."\n" + ."\n" + .'* ORIGINAL: sorts the manifest files in the same order as the source.'."\n" + .'* VIDEO_BITRATE_ASCENDING: sorts the manifest files in ascending order of bitrates, from lowest to highest.'."\n" + .'* VIDEO_BITRATE_DESCENDING: sorts the manifest files in descending order of bitrates, from highest to lowest.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'ORIGINAL', + ], + ], + 'required' => false, + ], + 'DrmProvider' => [ + 'title' => 'DRM加密提供商配置。', + 'description' => 'The settings of digital rights management (DRM) encryption.'."\n", + 'type' => 'object', + 'properties' => [ + 'EncryptionMethod' => [ + 'title' => '加密算法,支持值:'."\n" + .'- AES_128'."\n" + .'- SAMPLE_AES', + 'description' => 'The encryption method. Valid values:'."\n" + ."\n" + .'* AES\\_128: Advanced Encryption Standard (AES) with 128-bit key length.'."\n" + .'* SAMPLE_AES: an encryption method that encrypts individual media samples.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'AES_128', + ], + 'IV' => [ + 'title' => '一个可选的128位(16字节)十六进制值,由32个字符的字符串表示,与密钥一起用于加密数据块。如果您不指定该值,则MediaPackage将创建一个常量初始化向量(IV)。默认值:空,如果填写,则透传到供应商Constant initialization vector。', + 'description' => 'A 128-bit, 16-byte hex value represented by a 32-character string that is used with the key for encrypting data blocks. If you leave this parameter empty, MediaPackage creates a constant initialization vector (IV). If it is specified, the value is passed to the DRM service.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '00001111222233334444555566667777', + ], + 'SystemIds' => [ + 'title' => 'drm 系统id,system id数量由使用的协议类型决定。'."\n" + .'- DASH -- 最多两个'."\n" + .'- HLS -- 提供一个'."\n" + .'- HLS_CMAF-- 最多提供两个。'."\n" + .'只支持 Apple FairPlay、Google Widevine、Microsoft PlayReady 三个DRM System,对应SystemId分别为 :'."\n" + .'Apple FairPlay:'."\n" + .'94ce86fb-07ff-4f43-adb8-93d2fa968ca2'."\n" + .'Google Widevine:'."\n" + .'edef8ba9-79d6-4ace-a3c8-27dcd51d21ed'."\n" + .'Microsoft PlayReady:'."\n" + .'9a04f079-9840-4286-ab92-e65be0885f95。', + 'description' => 'The ID of the DRM system. The maximum number of system IDs allowed is determined by the protocol type. Limits:'."\n" + ."\n" + .'* DASH: 2'."\n" + .'* HLS: 1'."\n" + .'* HLS_CMAF: 2'."\n" + ."\n" + .'Apple FairPlay, Google Widevine, and Microsoft PlayReady are supported. Their system IDs are as follows:'."\n" + ."\n" + .'* Apple FairPlay: 94ce86fb-07ff-4f43-adb8-93d2fa968ca2'."\n" + .'* Google Widevine: edef8ba9-79d6-4ace-a3c8-27dcd51d21e'."\n" + .'* Microsoft PlayReady: 9a04f079-9840-4286-ab92-e65be0885f95'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The ID of the DRM system.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '94ce86fb-07ff-4f43-adb8-93d2fa968ca2', + ], + 'required' => false, + ], + 'Url' => [ + 'title' => 'DRM key提供商url。', + 'description' => 'The URL of the DRM key provider.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'https://***drm***/getcontent', + ], + ], + 'required' => false, + ], + ], + 'required' => false, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID。', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'PackagingConfiguration' => [ + 'title' => '打包配置。', + 'description' => 'The packaging configuration.'."\n", + '$ref' => '#/components/schemas/VodPackagingConfiguration', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"PackagingConfiguration\\": {\\n \\"GroupName\\": \\"\\",\\n \\"Description\\": \\"\\",\\n \\"CreateTime\\": \\"\\",\\n \\"ConfigurationName\\": \\"\\",\\n \\"Protocol\\": \\"\\",\\n \\"PackageConfig\\": {\\n \\"ManifestName\\": \\"\\",\\n \\"StreamSelection\\": {\\n \\"MinVideoBitsPerSecond\\": 0,\\n \\"StreamOrder\\": \\"\\",\\n \\"MaxVideoBitsPerSecond\\": 0\\n },\\n \\"DrmProvider\\": {\\n \\"SystemIds\\": [\\n \\"\\"\\n ],\\n \\"EncryptionMethod\\": \\"\\",\\n \\"IV\\": \\"\\",\\n \\"Url\\": \\"\\"\\n },\\n \\"SegmentDuration\\": 0\\n }\\n }\\n}","type":"json"}]', + 'title' => 'CreateVodPackagingConfiguration', + ], + 'GetVodPackagingConfiguration' => [ + 'summary' => 'Queries a packaging configuration.', + 'path' => '', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREice20UKYV', + ], + ], + 'parameters' => [ + [ + 'name' => 'ConfigurationName', + 'in' => 'query', + 'schema' => [ + 'title' => '打包配置名称。', + 'description' => 'The name of the packaging configuration.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'hls_3s', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The query result.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'PackagingConfiguration' => [ + 'description' => 'The information about the packaging configuration.'."\n", + '$ref' => '#/components/schemas/VodPackagingConfiguration', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"PackagingConfiguration\\": {\\n \\"GroupName\\": \\"\\",\\n \\"Description\\": \\"\\",\\n \\"CreateTime\\": \\"\\",\\n \\"ConfigurationName\\": \\"\\",\\n \\"Protocol\\": \\"\\",\\n \\"PackageConfig\\": {\\n \\"ManifestName\\": \\"\\",\\n \\"StreamSelection\\": {\\n \\"MinVideoBitsPerSecond\\": 0,\\n \\"StreamOrder\\": \\"\\",\\n \\"MaxVideoBitsPerSecond\\": 0\\n },\\n \\"DrmProvider\\": {\\n \\"SystemIds\\": [\\n \\"\\"\\n ],\\n \\"EncryptionMethod\\": \\"\\",\\n \\"IV\\": \\"\\",\\n \\"Url\\": \\"\\"\\n },\\n \\"SegmentDuration\\": 0\\n }\\n }\\n}","type":"json"}]', + 'title' => 'GetVodPackagingConfiguration', + ], + 'ListVodPackagingConfigurations' => [ + 'summary' => 'Lists VOD packaging configurations.', + 'path' => '', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREice20UKYV', + ], + ], + 'parameters' => [ + [ + 'name' => 'GroupName', + 'in' => 'query', + 'schema' => [ + 'title' => '打包组名称。', + 'description' => 'The name of the packaging group.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'vod_hls', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'title' => '分压查询每页大小,默认10。', + 'description' => 'The number of entries per page. Default value: 10.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '10', + ], + ], + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'title' => '分压查询当前页,默认1。', + 'description' => 'The page number. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'SortBy', + 'in' => 'query', + 'schema' => [ + 'title' => '列表排序,默认 desc:'."\n" + .'- desc:按创建时间倒序排序;'."\n" + .'- asc:按创建时间正序排序。', + 'description' => 'The sorting order of the packaging configurations based on the time when they were created. Valid values:'."\n" + ."\n" + .'* desc (default): descending order.'."\n" + .'* asc: ascending order.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'desc', + ], + ], + [ + 'name' => 'Keyword', + 'in' => 'query', + 'schema' => [ + 'description' => 'The search keyword. The names of the returned packaging configurations contain the keyword.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'hls', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID。', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'SortBy' => [ + 'title' => '列表排序,默认 desc:'."\n" + .'- desc:按创建时间倒序排序;'."\n" + .'- asc:按创建时间正序排序。', + 'description' => 'The sorting order of the packaging configurations based on the time when they were created. Valid values:'."\n" + ."\n" + .'* desc: descending order.'."\n" + .'* asc: ascending order.'."\n", + 'type' => 'string', + 'example' => 'desc', + ], + 'PageSize' => [ + 'title' => '分压查询每页大小,默认10。', + 'description' => 'The number of entries per page. Default value: 10.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10', + ], + 'PageNo' => [ + 'title' => '分压查询当前页,默认1。', + 'description' => 'The page number. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'PackagingConfigurations' => [ + 'title' => '打包配置列表。', + 'description' => 'The packaging configurations.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The information about packaging configurations.'."\n", + '$ref' => '#/components/schemas/VodPackagingConfiguration', + ], + ], + 'TotalCount' => [ + 'title' => '总数。', + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '5', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"SortBy\\": \\"desc\\",\\n \\"PageSize\\": 10,\\n \\"PageNo\\": 1,\\n \\"PackagingConfigurations\\": [\\n {\\n \\"GroupName\\": \\"\\",\\n \\"Description\\": \\"\\",\\n \\"CreateTime\\": \\"\\",\\n \\"ConfigurationName\\": \\"\\",\\n \\"Protocol\\": \\"\\",\\n \\"PackageConfig\\": {\\n \\"ManifestName\\": \\"\\",\\n \\"StreamSelection\\": {\\n \\"MinVideoBitsPerSecond\\": 0,\\n \\"StreamOrder\\": \\"\\",\\n \\"MaxVideoBitsPerSecond\\": 0\\n },\\n \\"DrmProvider\\": {\\n \\"SystemIds\\": [\\n \\"\\"\\n ],\\n \\"EncryptionMethod\\": \\"\\",\\n \\"IV\\": \\"\\",\\n \\"Url\\": \\"\\"\\n },\\n \\"SegmentDuration\\": 0\\n }\\n }\\n ],\\n \\"TotalCount\\": 5\\n}","type":"json"}]', + 'title' => 'ListVodPackagingConfigurations', + ], + 'DeleteVodPackagingConfiguration' => [ + 'summary' => 'Deletes a VOD packaging configuration.', + 'path' => '', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREice20UKYV', + ], + ], + 'parameters' => [ + [ + 'name' => 'ConfigurationName', + 'in' => 'query', + 'schema' => [ + 'title' => '打包配置名称。', + 'description' => 'The name of the packaging configuration.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'hls_3s', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The result of deletion.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID。', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\"\\n}","type":"json"}]', + 'title' => 'DeleteVodPackagingConfiguration', + ], + 'CreateVodPackagingAsset' => [ + 'summary' => 'Ingests an asset for VOD packaging.', + 'path' => '', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREice20UKYV', + ], + ], + 'parameters' => [ + [ + 'name' => 'GroupName', + 'in' => 'query', + 'schema' => [ + 'title' => '打包组名称。', + 'description' => 'The name of the packaging group.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'vod_hls', + ], + ], + [ + 'name' => 'AssetName', + 'in' => 'query', + 'schema' => [ + 'title' => '打包资产名称,用户维度唯一,长度128字符,格式:[A-Za-z0-9_-]+。', + 'description' => 'The name of the asset. The name must be unique and can be up to 128 characters in length. Letters, digits, underscores (\\_), and hyphens (-) are supported.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'hls_3s', + ], + ], + [ + 'name' => 'Description', + 'in' => 'query', + 'schema' => [ + 'title' => '打包资产描述信息。', + 'description' => 'The asset description.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'HLS 3 second packaging', + ], + ], + [ + 'name' => 'Input', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'title' => '资产输入配置。', + 'description' => 'The asset input configurations.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'title' => '输入类型,暂支持OSS。', + 'description' => 'The input type. Only Object Storage Service (OSS) is supported.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'OSS', + ], + 'Media' => [ + 'title' => '输入媒资,目前只支持OSS路径,如 OSS://test-bucket/video/202208/test.m3u8。只支持后缀为.m3u8的输入。', + 'description' => 'The URL of the media file. Only M3U8 files stored in OSS are supported.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'OSS://***test-bucket***/***video/input.m3u8', + ], + ], + 'required' => false, + ], + ], + [ + 'name' => 'ContentId', + 'in' => 'query', + 'schema' => [ + 'title' => 'DRM系统中的内容id,格式:[A-Za-z0-9_-]+,长度最多256。', + 'description' => 'The content ID in the digital rights management (DRM) system. The maximum length is 256 characters. Letters, digits, underscores (\\_), and hyphens (-) are supported.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'movie', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '25818875-5F78-4A13-BEF6-D7393642CA58', + ], + 'Asset' => [ + 'description' => 'The information about the asset.'."\n", + '$ref' => '#/components/schemas/VodPackagingAsset', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"25818875-5F78-4A13-BEF6-D7393642CA58\\",\\n \\"Asset\\": {\\n \\"GroupName\\": \\"\\",\\n \\"Input\\": {\\n \\"Type\\": \\"\\",\\n \\"Media\\": \\"\\"\\n },\\n \\"Description\\": \\"\\",\\n \\"CreateTime\\": \\"\\",\\n \\"ContentId\\": \\"\\",\\n \\"AssetName\\": \\"\\"\\n }\\n}","type":"json"}]', + 'title' => 'CreateVodPackagingAsset', + ], + 'BatchCreateVodPackagingAsset' => [ + 'summary' => 'Ingests multiple assets for VOD packaging.', + 'path' => '', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREice20UKYV', + ], + ], + 'parameters' => [ + [ + 'name' => 'Assets', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'title' => '资产输入配置', + 'description' => 'The assets that you want to ingest.'."\n", + 'type' => 'array', + 'items' => [ + 'title' => '资产输入配置。', + 'description' => 'An asset that you want to ingest.'."\n", + 'type' => 'object', + 'properties' => [ + 'AssetName' => [ + 'title' => '打包资产名称,用户维度唯一,长度128字符,格式:[A-Za-z0-9_-]+。', + 'description' => 'The name of the asset. The name must be unique and can be up to 128 characters in length. Letters, digits, underscores (\\_), and hyphens (-) are supported.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '30min_movie', + ], + 'ContentId' => [ + 'title' => 'DRM系统中的内容id,格式:[A-Za-z0-9_-]+,长度最多256。', + 'description' => 'The content ID in the digital rights management (DRM) system. The maximum length is 256 characters. Letters, digits, underscores (\\_), and hyphens (-) are supported.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'movie', + ], + 'Input' => [ + 'title' => '资产输入配置。', + 'description' => 'The asset input configurations.'."\n", + 'type' => 'object', + 'properties' => [ + 'Media' => [ + 'title' => '输入媒资,目前只支持OSS路径,如 OSS://test-bucket/video/202208/test.m3u8。只支持后缀为.m3u8的输入。', + 'description' => 'The URL of the media file. You can only specify a M3U8 file stored in Object Storage Service (OSS).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'OSS://***test-bucket***/***video/input.m3u8', + ], + 'Type' => [ + 'title' => '输入类型,暂支持OSS。', + 'description' => 'The input type. Only OSS is supported.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'OSS', + ], + ], + 'required' => false, + ], + ], + 'required' => false, + ], + 'required' => false, + ], + ], + [ + 'name' => 'GroupName', + 'in' => 'query', + 'schema' => [ + 'title' => '打包组名称。', + 'description' => 'The name of the packaging group.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'vod_hls', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The results of asset ingestion.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID。', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '******3B-0E1A-586A-AC29-742247******', + ], + 'GroupName' => [ + 'title' => '打包组名称。', + 'description' => 'The name of the packaging group.'."\n", + 'type' => 'string', + 'example' => 'vod_hls', + ], + 'ResultList' => [ + 'title' => '结果列表。', + 'description' => 'The results of asset ingestion.'."\n", + 'type' => 'array', + 'items' => [ + 'title' => '创建结果。', + 'description' => 'The result of ingesting an asset.'."\n", + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'title' => '创建失败码。', + 'description' => 'The error code for failed ingestion.'."\n", + 'type' => 'string', + 'example' => 'InvalidParameter.PackagingAssetAlreadyExists', + ], + 'Message' => [ + 'title' => '创建失败详细信息。', + 'description' => 'The error message for failed ingestion.'."\n", + 'type' => 'string', + 'example' => 'The specified packagingAsset "inputMovie" already exists', + ], + 'Asset' => [ + 'title' => '创建成功资产信息。', + 'description' => 'The information about the ingested asset.'."\n", + '$ref' => '#/components/schemas/VodPackagingAsset', + ], + ], + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******3B-0E1A-586A-AC29-742247******\\",\\n \\"GroupName\\": \\"vod_hls\\",\\n \\"ResultList\\": [\\n {\\n \\"Code\\": \\"InvalidParameter.PackagingAssetAlreadyExists\\",\\n \\"Message\\": \\"The specified packagingAsset \\\\\\"inputMovie\\\\\\" already exists\\",\\n \\"Asset\\": {\\n \\"GroupName\\": \\"\\",\\n \\"Input\\": {\\n \\"Type\\": \\"\\",\\n \\"Media\\": \\"\\"\\n },\\n \\"Description\\": \\"\\",\\n \\"CreateTime\\": \\"\\",\\n \\"ContentId\\": \\"\\",\\n \\"AssetName\\": \\"\\"\\n }\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'BatchCreateVodPackagingAsset', + ], + 'GetVodPackagingAsset' => [ + 'summary' => 'Queries a VOD packaging asset.', + 'path' => '', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREice20UKYV', + ], + ], + 'parameters' => [ + [ + 'name' => 'AssetName', + 'in' => 'query', + 'schema' => [ + 'title' => '打包资产名称。', + 'description' => 'The name of the VOD packaging asset.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '30min_movie', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The result of asset query.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID。', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '0622C702-41BE-467E-AF2E-883D4517962E', + ], + 'Asset' => [ + 'title' => '打包资产信息。', + 'description' => 'The information about the asset.'."\n", + 'type' => 'object', + 'properties' => [ + 'AssetName' => [ + 'title' => '打包资产名称。', + 'description' => 'The name of the asset.'."\n", + 'type' => 'string', + 'example' => '30min_movie', + ], + 'GroupName' => [ + 'title' => '打包组名称。', + 'description' => 'The name of the packaging group.'."\n", + 'type' => 'string', + 'example' => 'vod_hls', + ], + 'Input' => [ + 'title' => '打包资产输入。', + 'description' => 'The asset input configurations.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'title' => '输入类型,暂支持OSS。', + 'description' => 'The input type. Only Object Storage Service (OSS) is supported.'."\n", + 'type' => 'string', + 'example' => 'OSS', + ], + 'Media' => [ + 'title' => '输入媒资,目前只支持OSS路径,如 OSS://test-bucket/video/202208/test.m3u8。只支持后缀为.m3u8的输入。', + 'description' => 'The URL of the media file. Only M3U8 files stored in OSS are supported.'."\n", + 'type' => 'string', + 'example' => 'OSS://***test-bucket***/***video/input.m3u8', + ], + ], + ], + 'CreateTime' => [ + 'title' => '资产创建时间,格式 2024-11-21T06:45:32Z表示北京时间 2024-11-21 14:45:32', + 'description' => 'The time when the asset was created. It follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2024-11-21T06:45:32Z', + ], + 'EgressEndpoints' => [ + 'title' => '资产打包播放输出端点列表,一个打包配置对应一个打包播放端点。', + 'description' => 'The egress endpoints, each corresponding to a packaging configuration.'."\n", + 'type' => 'array', + 'items' => [ + 'title' => '资产打包播放端点。', + 'description' => 'The egress endpoint.'."\n", + 'type' => 'object', + 'properties' => [ + 'Url' => [ + 'title' => '播放URL,当资产打包失败时不返回对应的播放URL。', + 'description' => 'The playback URL. If the asset fails to be packaged, no playback URL is returned.'."\n", + 'type' => 'string', + 'example' => 'https://y92kpc.**/v1/sy9gtc0w00i0bw2q33q2a4y71oydkofm/cvtcqv3lvrftd68k7f5avfjznvv0tje4/o3cfzi6c3qxo18ascgvnz7974qy3c02o/index.m3u8', + ], + 'Status' => [ + 'title' => '状态,支持值:'."\n" + .'- Queuing:排队处理中;'."\n" + .'- Playable: 可以播放;'."\n" + .'- Failed:打包失败,无法播放。', + 'description' => 'The asset status. Valid values:'."\n" + ."\n" + .'* Queuing: The asset is waiting for packaging.'."\n" + .'* Playable: The asset is packaged and playable.'."\n" + .'* Failed: The asset fails to be packaged.'."\n", + 'type' => 'string', + 'example' => 'Playable', + ], + 'ConfigurationName' => [ + 'title' => '打包配置名称。', + 'description' => 'The name of the packaging configuration.'."\n", + 'type' => 'string', + 'example' => 'hls_3s', + ], + ], + ], + ], + 'ContentId' => [ + 'title' => 'DRM系统中的内容id,格式:[A-Za-z0-9_-]+,长度最多256。', + 'description' => 'The content ID in the DRM system. The maximum length is 256 characters. Letters, digits, underscores (\\_), and hyphens (-) are supported.'."\n", + 'type' => 'string', + 'example' => 'movie', + ], + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"0622C702-41BE-467E-AF2E-883D4517962E\\",\\n \\"Asset\\": {\\n \\"AssetName\\": \\"30min_movie\\",\\n \\"GroupName\\": \\"vod_hls\\",\\n \\"Input\\": {\\n \\"Type\\": \\"OSS\\",\\n \\"Media\\": \\"OSS://***test-bucket***/***video/input.m3u8\\"\\n },\\n \\"CreateTime\\": \\"2024-11-21T06:45:32Z\\",\\n \\"EgressEndpoints\\": [\\n {\\n \\"Url\\": \\"https://y92kpc.**/v1/sy9gtc0w00i0bw2q33q2a4y71oydkofm/cvtcqv3lvrftd68k7f5avfjznvv0tje4/o3cfzi6c3qxo18ascgvnz7974qy3c02o/index.m3u8\\",\\n \\"Status\\": \\"Playable\\",\\n \\"ConfigurationName\\": \\"hls_3s\\"\\n }\\n ],\\n \\"ContentId\\": \\"movie\\"\\n }\\n}","type":"json"}]', + 'title' => 'GetVodPackagingAsset', + ], + 'ListVodPackagingAssets' => [ + 'summary' => 'Lists VOD packaging assets.', + 'path' => '', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREice20UKYV', + ], + ], + 'parameters' => [ + [ + 'name' => 'PageNo', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => [ + 'title' => '分页查询当前页,默认1。', + 'description' => 'The page number. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => [ + 'title' => '分页查询每页大小,默认10。', + 'description' => 'The number of entries per page. Default value: 10.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '100', + 'minimum' => '1', + 'example' => '10', + 'default' => '10', + ], + ], + [ + 'name' => 'SortBy', + 'in' => 'query', + 'schema' => [ + 'title' => '列表排序规则,默认 desc,可选:'."\n" + .'- desc: 按创建时间倒序排列;'."\n" + .'- asc:按创建时间正序排列。', + 'description' => 'The sorting order of the assets based on the time when they were ingested. Valid values:'."\n" + ."\n" + .'* desc (default): descending order.'."\n" + .'* asc: ascending order.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'desc', + ], + ], + [ + 'name' => 'Keyword', + 'in' => 'query', + 'schema' => [ + 'title' => '搜索关键词,指定查询过滤AssetName 以Keyword为前缀的资产列表。', + 'description' => 'The search keyword. The names of the returned assets are prefixed with this keyword.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'movie', + ], + ], + [ + 'name' => 'GroupName', + 'in' => 'query', + 'schema' => [ + 'title' => '打包组名称。', + 'description' => 'The name of the packaging group.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'vod_hls', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'Assets' => [ + 'description' => 'The VOD packaging assets.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The information about a VOD packaging asset.'."\n", + 'type' => 'object', + 'properties' => [ + 'AssetName' => [ + 'description' => 'The name of the VOD packaging asset.'."\n", + 'type' => 'string', + 'example' => '30min_movie', + ], + 'GroupName' => [ + 'description' => 'The name of the packaging group.'."\n", + 'type' => 'string', + 'example' => 'vod_hls', + ], + 'Description' => [ + 'description' => 'The asset description.'."\n", + 'type' => 'string', + 'example' => 'movie 30min', + ], + 'Input' => [ + 'description' => 'The asset input configurations.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The input type. Only Object Storage Service (OSS) is supported.'."\n", + 'type' => 'string', + 'example' => 'OSS', + ], + 'Media' => [ + 'description' => 'The URL of the media file. Only M3U8 files stored in OSS are supported.'."\n", + 'type' => 'string', + 'example' => 'OSS://***test-bucket***/***video/input.m3u8', + ], + ], + ], + 'CreateTime' => [ + 'description' => 'The time when the asset was ingested. It follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2024-11-21T06:45:32Z', + ], + ], + ], + ], + 'TotalCount' => [ + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '100', + ], + 'PageSize' => [ + 'description' => 'The number of entries per page. Default value: 10.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + ], + 'PageNo' => [ + 'description' => 'The page number. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'SortBy' => [ + 'description' => 'The sorting order of the assets based on the time when they were ingested. Valid values:'."\n" + ."\n" + .'* desc: descending order.'."\n" + .'* asc: ascending order.'."\n", + 'type' => 'string', + 'example' => 'desc', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"Assets\\": [\\n {\\n \\"AssetName\\": \\"30min_movie\\",\\n \\"GroupName\\": \\"vod_hls\\",\\n \\"Description\\": \\"movie 30min\\",\\n \\"Input\\": {\\n \\"Type\\": \\"OSS\\",\\n \\"Media\\": \\"OSS://***test-bucket***/***video/input.m3u8\\"\\n },\\n \\"CreateTime\\": \\"2024-11-21T06:45:32Z\\"\\n }\\n ],\\n \\"TotalCount\\": 100,\\n \\"PageSize\\": 10,\\n \\"PageNo\\": 1,\\n \\"SortBy\\": \\"desc\\"\\n}","type":"json"}]', + 'title' => 'ListVodPackagingAssets', + ], + 'DeleteVodPackagingAsset' => [ + 'summary' => 'Deletes a VOD packaging asset.', + 'path' => '', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREice20UKYV', + ], + ], + 'parameters' => [ + [ + 'name' => 'AssetName', + 'in' => 'query', + 'schema' => [ + 'title' => '打包资产名称。', + 'description' => 'The name of the VOD packaging asset.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '30min_movie', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The result of asset deletion.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID。', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\"\\n}","type":"json"}]', + 'title' => 'DeleteVodPackagingAsset', + ], + 'CreateLivePackageChannelGroup' => [ + 'summary' => 'Creates a live package channel group with a custom name and description.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '238117', + 'abilityTreeNodes' => [ + 'FEATUREiceQU6W9M', + ], + ], + 'parameters' => [ + [ + 'name' => 'GroupName', + 'in' => 'formData', + 'schema' => [ + 'title' => '资源一级ID', + 'description' => 'The channel group name. It can contain letters, digits, hyphens (-), and underscores (\\_). The name must be 1 to 200 characters in length. Format: \\[A-Za-z0-9\\_-]+'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'channel-group-01', + ], + ], + [ + 'name' => 'ClientToken', + 'in' => 'query', + 'allowEmptyValue' => false, + 'schema' => [ + 'title' => '幂等参数', + 'description' => 'The client token that is used to ensure the idempotence of the request.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '****12e8864746a0a398****', + ], + ], + [ + 'name' => 'Description', + 'in' => 'query', + 'schema' => [ + 'description' => 'The channel group description. It can be up to 1,000 characters in length.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'LivePackageChannelGroup' => [ + 'description' => 'The information about the channel group.'."\n", + 'type' => 'object', + 'properties' => [ + 'CreateTime' => [ + 'title' => '创建时间', + 'description' => 'The time when the channel group was created. It is in the yyyy-MM-ddTHH:mm:ssZ format and displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2023-04-01T12:00:00Z', + ], + 'Description' => [ + 'title' => '描述', + 'description' => 'The channel group description.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'GroupName' => [ + 'title' => '频道组名称', + 'description' => 'The channel group name.'."\n", + 'type' => 'string', + 'example' => 'example-group', + ], + 'LastModified' => [ + 'title' => '修改时间', + 'description' => 'The time when the channel group was last modified. It is in the yyyy-MM-ddTHH:mm:ssZ format and displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2023-04-01T12:00:00Z', + ], + 'OriginDomain' => [ + 'title' => '源站域名', + 'description' => 'The origin domain.'."\n", + 'type' => 'string', + 'example' => 'example.com', + ], + ], + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '123e4567-e89b-12d3-a456-426614174000', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"LivePackageChannelGroup\\": {\\n \\"CreateTime\\": \\"2023-04-01T12:00:00Z\\",\\n \\"Description\\": \\"这是一个示例描述\\",\\n \\"GroupName\\": \\"example-group\\",\\n \\"LastModified\\": \\"2023-04-01T12:00:00Z\\",\\n \\"OriginDomain\\": \\"example.com\\"\\n },\\n \\"RequestId\\": \\"123e4567-e89b-12d3-a456-426614174000\\"\\n}","type":"json"}]', + 'title' => 'CreateLivePackageChannelGroup', + 'description' => 'After you create a channel group, the assigned origin domain is returned.'."\n", + ], + 'UpdateLivePackageChannelGroup' => [ + 'summary' => 'Updates the information about a live package channel group including its description.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '238119', + 'abilityTreeNodes' => [ + 'FEATUREiceQU6W9M', + ], + ], + 'parameters' => [ + [ + 'name' => 'GroupName', + 'in' => 'formData', + 'schema' => [ + 'title' => '资源一级ID', + 'description' => 'The channel group name. It can contain letters, digits, hyphens (-), and underscores (\\_). The name must be 1 to 200 characters in length. Format: \\[A-Za-z0-9\\_-]+'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'channel-group-1', + ], + ], + [ + 'name' => 'Description', + 'in' => 'formData', + 'schema' => [ + 'title' => '频道组描述', + 'description' => 'The channel group description. It can be up to 1,000 characters in length.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'LivePackageChannelGroup' => [ + 'description' => 'The information about the channel group.'."\n", + 'type' => 'object', + 'properties' => [ + 'CreateTime' => [ + 'title' => '创建时间', + 'description' => 'The time when the channel group was created. It is in the yyyy-MM-ddTHH:mm:ssZ format and displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2023-04-01T12:00:00Z', + ], + 'Description' => [ + 'title' => '描述', + 'description' => 'The channel group description.'."\n", + 'type' => 'string', + 'example' => 'Updated description of the channel group.', + ], + 'GroupName' => [ + 'title' => '频道组名称', + 'description' => 'The channel group name.'."\n", + 'type' => 'string', + 'example' => 'example-group-name', + ], + 'LastModified' => [ + 'title' => '修改时间', + 'description' => 'The time when the channel group was last modified. It is in the yyyy-MM-ddTHH:mm:ssZ format and displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2023-04-01T12:00:00Z', + ], + 'OriginDomain' => [ + 'title' => '源站域名', + 'description' => 'The origin domain.'."\n", + 'type' => 'string', + 'example' => 'example-origin.com', + ], + ], + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'request-1234567890', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"LivePackageChannelGroup\\": {\\n \\"CreateTime\\": \\"2023-04-01T12:00:00Z\\",\\n \\"Description\\": \\"Updated description of the channel group.\\",\\n \\"GroupName\\": \\"example-group-name\\",\\n \\"LastModified\\": \\"2023-04-01T12:00:00Z\\",\\n \\"OriginDomain\\": \\"example-origin.com\\"\\n },\\n \\"RequestId\\": \\"5D87B753-0250-5D9D-B248-D40C3271F864\\\\n\\"\\n}","type":"json"}]', + 'title' => 'UpdateLivePackageChannelGroup', + 'description' => '## [](#)Usage notes'."\n" + ."\n" + .'This API operation allows you to modify the name and description of a live package channel group. The channel group name must conform to the naming conventions and can be up to 1,000 characters. The API response includes the updated channel group details and unique identifier of the request.'."\n", + ], + 'GetLivePackageChannelGroup' => [ + 'summary' => 'Queries the details of a live package channel group by name.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '238116', + 'abilityTreeNodes' => [ + 'FEATUREiceQU6W9M', + ], + ], + 'parameters' => [ + [ + 'name' => 'GroupName', + 'in' => 'query', + 'schema' => [ + 'title' => '频道组名称', + 'description' => 'The channel group name.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'channel-group-1', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'LivePackageChannelGroup' => [ + 'description' => 'Details of the channel group.'."\n", + 'type' => 'object', + 'properties' => [ + 'CreateTime' => [ + 'title' => '创建时间', + 'description' => 'The time when the channel group was created. It is in the yyyy-MM-ddTHH:mm:ssZ format and displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2023-04-01T12:00:00Z', + ], + 'Description' => [ + 'title' => '描述', + 'description' => 'The channel group description.'."\n", + 'type' => 'string', + 'example' => 'Updated description of the channel group.', + ], + 'GroupName' => [ + 'title' => '频道组名称', + 'description' => 'The channel group name.'."\n", + 'type' => 'string', + 'example' => 'channel-group-1', + ], + 'LastModified' => [ + 'title' => '修改时间', + 'description' => 'The time when the channel group was last modified. It is in the yyyy-MM-ddTHH:mm:ssZ format and displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2023-04-01T12:00:00Z', + ], + 'OriginDomain' => [ + 'title' => '源站域名', + 'description' => 'The origin domain.'."\n", + 'type' => 'string', + 'example' => 'example.com', + ], + ], + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'req-abcdefg123456', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"LivePackageChannelGroup\\": {\\n \\"CreateTime\\": \\"2023-04-01T12:00:00Z\\",\\n \\"Description\\": \\"Updated description of the channel group.\\",\\n \\"GroupName\\": \\"channel-group-1\\",\\n \\"LastModified\\": \\"2023-04-01T12:00:00Z\\",\\n \\"OriginDomain\\": \\"example.com\\"\\n },\\n \\"RequestId\\": \\"5D87B753-0250-5D9D-B248-D40C3271F864\\"\\n}","type":"json"}]', + 'title' => 'GetLivePackageChannelGroup', + 'description' => '## [](#)Usage notes'."\n" + ."\n" + .'You can call this API operation to query the details of a specific channel group, including its name, description, origin domain, and creation and last modification timestamps.'."\n", + ], + 'ListLivePackageChannelGroups' => [ + 'summary' => 'Queries live package channel groups by page. Fuzzy search by name or description and sorting are supported.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '238120', + 'abilityTreeNodes' => [ + 'FEATUREiceQU6W9M', + ], + ], + 'parameters' => [ + [ + 'name' => 'Keyword', + 'in' => 'query', + 'schema' => [ + 'title' => '描述', + 'description' => 'The channel group name or description. Fuzzy match is supported.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'channel-group', + ], + ], + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number. Pages start from page 1. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page. Valid values: 1 to 100. Default value: 10.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '10', + ], + ], + [ + 'name' => 'SortBy', + 'in' => 'query', + 'schema' => [ + 'description' => 'The sort order by creation time. Default value: desc.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'desc', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'LivePackageChannelGroups' => [ + 'title' => '数组,返回示例目录。', + 'description' => 'The channel groups returned.'."\n", + 'type' => 'array', + 'items' => [ + 'title' => 'LivePackageChannelGroupItemType', + 'description' => 'LivePackageChannelGroupItemType'."\n", + 'type' => 'object', + 'properties' => [ + 'CreateTime' => [ + 'title' => '创建时间', + 'description' => 'The time when the channel group was created. It is in the `yyyy-MM-ddTHH:mm:ssZ` format and displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2023-04-01T12:00:00Z', + ], + 'Description' => [ + 'title' => '描述', + 'description' => 'The channel group description.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'GroupName' => [ + 'title' => '资源一级ID', + 'description' => 'The channel group name.'."\n", + 'type' => 'string', + 'example' => 'testChannelGroup', + ], + 'LastModified' => [ + 'title' => '修改时间', + 'description' => 'The time when the channel group was last modified. It is in the `yyyy-MM-ddTHH:mm:ssZ` format and displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2023-04-02T12:00:00Z', + ], + 'OriginDomain' => [ + 'title' => '源站域名', + 'description' => 'The origin domain.'."\n", + 'type' => 'string', + 'example' => 'origin.example.com', + ], + ], + ], + ], + 'PageNo' => [ + 'title' => '当总结果个数大于MaxResults时,用于翻页的token。', + 'description' => 'The page number.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'PageSize' => [ + 'description' => 'The number of entries per page.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10', + ], + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '5D87B753-0250-5D9D-B248-D40C3271F864', + ], + 'SortBy' => [ + 'description' => 'The sort order.'."\n", + 'type' => 'string', + 'example' => 'desc', + ], + 'TotalCount' => [ + 'title' => '总记录数。', + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '100', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"LivePackageChannelGroups\\": [\\n {\\n \\"CreateTime\\": \\"2023-04-01T12:00:00Z\\",\\n \\"Description\\": \\"这是频道组的描述信息。\\",\\n \\"GroupName\\": \\"testChannelGroup\\",\\n \\"LastModified\\": \\"2023-04-02T12:00:00Z\\",\\n \\"OriginDomain\\": \\"origin.example.com\\"\\n }\\n ],\\n \\"PageNo\\": 1,\\n \\"PageSize\\": 10,\\n \\"RequestId\\": \\"5D87B753-0250-5D9D-B248-D40C3271F864\\",\\n \\"SortBy\\": \\"desc\\",\\n \\"TotalCount\\": 100\\n}","type":"json"}]', + 'title' => 'ListLivePackageChannelGroups', + 'description' => '## [](#)Usage notes'."\n", + ], + 'DeleteLivePackageChannelGroup' => [ + 'summary' => 'Deletes a live package channel group by name.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '238118', + 'abilityTreeNodes' => [ + 'FEATUREiceQU6W9M', + ], + ], + 'parameters' => [ + [ + 'name' => 'GroupName', + 'in' => 'query', + 'schema' => [ + 'title' => '资源一级ID', + 'description' => 'The channel group name.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'group1', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '资源一级ID', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '5D87B753-0250-5D9D-B248-D40C3271F864', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"5D87B753-0250-5D9D-B248-D40C3271F864\\"\\n}","type":"json"}]', + 'title' => 'DeleteLivePackageChannelGroup', + 'description' => '## [](#)Usage notes'."\n" + ."\n" + .'Make sure that no channels are included in the channel group before you delete it.'."\n", + ], + 'CreateLivePackageChannel' => [ + 'summary' => 'Creates a live package channel.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '239700', + 'abilityTreeNodes' => [ + 'FEATUREiceQU6W9M', + ], + ], + 'parameters' => [ + [ + 'name' => 'GroupName', + 'in' => 'formData', + 'schema' => [ + 'title' => '频道组名称', + 'description' => 'The channel group name. It can contain letters, digits, hyphens (-), and underscores (\\_). The name must be 1 to 200 characters in length. Format: \\[A-Za-z0-9\\_-]+'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'channel-group-1', + ], + ], + [ + 'name' => 'SegmentCount', + 'in' => 'formData', + 'schema' => [ + 'title' => '切片个数', + 'description' => 'The number of M3U8 segments. Valid values: 2 to 100.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'example' => '3', + ], + ], + [ + 'name' => 'Description', + 'in' => 'formData', + 'schema' => [ + 'title' => '频道描述', + 'description' => 'The channel description. It can be up to 1,000 characters in length.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '', + ], + ], + [ + 'name' => 'SegmentDuration', + 'in' => 'formData', + 'schema' => [ + 'title' => '切片时长', + 'description' => 'The segment duration. Valid values: 1 to 30.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'example' => '6', + ], + ], + [ + 'name' => 'ChannelName', + 'in' => 'formData', + 'schema' => [ + 'title' => '频道名称', + 'description' => 'The channel name. It can contain letters, digits, hyphens (-), and underscores (\\_). The name must be 1 to 200 characters in length. Format: \\[A-Za-z0-9\\_-]+'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'channel-1', + ], + ], + [ + 'name' => 'ClientToken', + 'in' => 'query', + 'allowEmptyValue' => false, + 'schema' => [ + 'title' => '幂等参数', + 'description' => 'The client token that is used to ensure the idempotence of the request.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '****12e8864746a0a398****', + ], + ], + [ + 'name' => 'Protocol', + 'in' => 'formData', + 'schema' => [ + 'title' => '协议', + 'description' => 'The ingest protocol. Only HLS is supported.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'HLS', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'LivePackageChannel' => [ + 'description' => 'The information about the live package channel.'."\n", + 'type' => 'object', + 'properties' => [ + 'ChannelName' => [ + 'title' => '频道名称', + 'description' => 'The channel name.'."\n", + 'type' => 'string', + 'example' => 'example-channel', + ], + 'CreateTime' => [ + 'title' => '创建时间', + 'description' => 'The time when the channel was created. It is in the yyyy-MM-ddTHH:mm:ssZ format and displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2023-04-01T12:00:00Z', + ], + 'Description' => [ + 'title' => '频道描述', + 'description' => 'The channel description.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'GroupName' => [ + 'title' => '频道组名称', + 'description' => 'The channel group name.'."\n", + 'type' => 'string', + 'example' => 'channel-group-1', + ], + 'IngestEndpoints' => [ + 'description' => 'The ingest endpoints.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The information about the ingest endpoint.'."\n", + 'type' => 'object', + 'properties' => [ + 'Id' => [ + 'description' => 'The ingest endpoint ID.'."\n", + 'type' => 'string', + 'example' => 'ingest1', + ], + 'Password' => [ + 'description' => 'The password.'."\n", + 'type' => 'string', + 'example' => '2F9e******b569c8', + ], + 'Url' => [ + 'description' => 'The ingest endpoint URL.'."\n", + 'type' => 'string', + 'example' => 'http://xxx-1.packagepush-abcxxx.ap-southeast-1.aliyuncsiceintl.com/v1/group01/1/ch01/manifest', + ], + 'Username' => [ + 'description' => 'The username.'."\n", + 'type' => 'string', + 'example' => 'us12******das', + ], + ], + ], + ], + 'LastModified' => [ + 'title' => '最后修改时间', + 'description' => 'The time when the channel was last modified. It is in the yyyy-MM-ddTHH:mm:ssZ format and displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2023-04-01T12:00:00Z', + ], + 'Protocol' => [ + 'title' => '协议', + 'description' => 'The ingest protocol. Only HLS is supported.'."\n", + 'type' => 'string', + 'example' => 'HLS', + ], + 'SegmentCount' => [ + 'title' => '切片个数', + 'description' => 'The number of M3U8 segments.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '3', + ], + 'SegmentDuration' => [ + 'title' => '切片时长', + 'description' => 'The segment duration.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '5', + ], + ], + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******3B-0E1A-586A-AC29-742247******', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"LivePackageChannel\\": {\\n \\"ChannelName\\": \\"example-channel\\",\\n \\"CreateTime\\": \\"2023-04-01T12:00:00Z\\",\\n \\"Description\\": \\"这是一个测试频道\\",\\n \\"GroupName\\": \\"channel-group-1\\",\\n \\"IngestEndpoints\\": [\\n {\\n \\"Id\\": \\"ingest1\\",\\n \\"Password\\": \\"2F9e******b569c8\\",\\n \\"Url\\": \\"http://xxx-1.packagepush-abcxxx.ap-southeast-1.aliyuncsiceintl.com/v1/group01/1/ch01/manifest\\",\\n \\"Username\\": \\"us12******das\\"\\n }\\n ],\\n \\"LastModified\\": \\"2023-04-01T12:00:00Z\\",\\n \\"Protocol\\": \\"HLS\\",\\n \\"SegmentCount\\": 3,\\n \\"SegmentDuration\\": 5\\n },\\n \\"RequestId\\": \\"******3B-0E1A-586A-AC29-742247******\\"\\n}","type":"json"}]', + 'title' => 'CreateLivePackageChannel', + 'description' => '## [](#)Usage notes'."\n" + ."\n" + .'After you call this operation to create a live package channel, the system will automatically generate the ingest endpoint URL, and username and password required for authentication.'."\n" + ."\n" + .'### [](#)Precautions'."\n" + ."\n" + .'* Channel group names and channel names can contain only letters, digits, underscores (\\_), and hyphens (-).'."\n" + .'* Only `HLS` is supported.'."\n" + .'* The segment duration must be from 1 to 30 seconds.'."\n" + .'* The number of M3U8 segments must be from 2 to 100.'."\n" + ."\n" + .'If the request succeeds, the system will return the details of the newly created channel, including the channel name, creation time, modification time, and ingest endpoint details.'."\n", + ], + 'UpdateLivePackageChannel' => [ + 'summary' => 'Updates the configuration of a live package channel, including the protocol, segment duration, and number of segments.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '239702', + 'abilityTreeNodes' => [ + 'FEATUREiceQU6W9M', + ], + ], + 'parameters' => [ + [ + 'name' => 'GroupName', + 'in' => 'formData', + 'schema' => [ + 'title' => '频道组名称', + 'description' => 'The channel group name. It can contain letters, digits, hyphens (-), and underscores (\\_). The name must be 1 to 200 characters in length. Format: \\[A-Za-z0-9\\_-]+'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'channel-group-1', + ], + ], + [ + 'name' => 'Description', + 'in' => 'formData', + 'schema' => [ + 'title' => '频道描述', + 'description' => 'The channel description. It can be up to 1,000 characters in length.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '', + ], + ], + [ + 'name' => 'Protocol', + 'in' => 'formData', + 'schema' => [ + 'title' => '协议', + 'description' => 'The ingest protocol. Only HLS is supported.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'HLS', + ], + ], + [ + 'name' => 'SegmentCount', + 'in' => 'formData', + 'schema' => [ + 'title' => '切片个数', + 'description' => 'The number of M3U8 segments. Valid values: 2 to 100.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'example' => '3', + ], + ], + [ + 'name' => 'SegmentDuration', + 'in' => 'formData', + 'schema' => [ + 'title' => '切片时长', + 'description' => 'The segment duration. Valid values: 1 to 30.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'example' => '6', + ], + ], + [ + 'name' => 'ChannelName', + 'in' => 'formData', + 'schema' => [ + 'title' => '频道名称', + 'description' => 'The channel name. It can contain letters, digits, hyphens (-), and underscores (\\_). The name must be 1 to 200 characters in length. Format: \\[A-Za-z0-9\\_-]+'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'channel-1', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The returned data including the updated channel information and request ID.'."\n", + 'type' => 'object', + 'properties' => [ + 'LivePackageChannel' => [ + 'description' => 'The information about the live package channel.'."\n", + 'type' => 'object', + 'properties' => [ + 'ChannelName' => [ + 'title' => '频道名称', + 'description' => 'The channel name.'."\n", + 'type' => 'string', + 'example' => 'channel-1', + ], + 'CreateTime' => [ + 'title' => '创建时间', + 'description' => 'The time when the channel was created.'."\n", + 'type' => 'string', + 'example' => '2024-07-16T02:24:42Z', + ], + 'Description' => [ + 'title' => '频道描述', + 'description' => 'The channel description. It can be up to 1,000 characters in length.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'GroupName' => [ + 'title' => '频道组名称', + 'description' => 'The channel group name.'."\n", + 'type' => 'string', + 'example' => 'channel-group-1', + ], + 'IngestEndpoints' => [ + 'description' => 'The ingest endpoints.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The information about the ingest endpoint.'."\n", + 'type' => 'object', + 'properties' => [ + 'Id' => [ + 'description' => 'The ingest endpoint ID.'."\n", + 'type' => 'string', + 'example' => 'ingest1', + ], + 'Password' => [ + 'description' => 'The password.'."\n", + 'type' => 'string', + 'example' => '2F9e******b569c8', + ], + 'Url' => [ + 'description' => 'The ingest endpoint URL.'."\n", + 'type' => 'string', + 'example' => 'http://xxx-1.packagepush-abcxxx.ap-southeast-1.aliyuncsiceintl.com/v1/group01/1/ch01/manifest', + ], + 'Username' => [ + 'description' => 'The username.'."\n", + 'type' => 'string', + 'example' => 'us12******das', + ], + ], + ], + ], + 'LastModified' => [ + 'title' => '最后修改时间', + 'description' => 'The time when the channel was last modified.'."\n", + 'type' => 'string', + 'example' => '2024-07-16T02:24:42Z', + ], + 'Protocol' => [ + 'title' => '协议', + 'description' => 'The ingest protocol. Only HLS is supported.'."\n", + 'type' => 'string', + 'example' => 'HLS', + ], + 'SegmentCount' => [ + 'title' => '切片个数', + 'description' => 'The number of segments.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '3', + ], + 'SegmentDuration' => [ + 'title' => '切片时长', + 'description' => 'The segment duration.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '5', + ], + ], + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '771A1414-27BF-53E6-AB73-EFCB*****ACF', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"LivePackageChannel\\": {\\n \\"ChannelName\\": \\"channel-1\\",\\n \\"CreateTime\\": \\"2024-07-16T02:24:42Z\\",\\n \\"Description\\": \\"这是一个测试频道\\",\\n \\"GroupName\\": \\"channel-group-1\\",\\n \\"IngestEndpoints\\": [\\n {\\n \\"Id\\": \\"ingest1\\",\\n \\"Password\\": \\"2F9e******b569c8\\",\\n \\"Url\\": \\"http://xxx-1.packagepush-abcxxx.ap-southeast-1.aliyuncsiceintl.com/v1/group01/1/ch01/manifest\\",\\n \\"Username\\": \\"us12******das\\"\\n }\\n ],\\n \\"LastModified\\": \\"2024-07-16T02:24:42Z\\",\\n \\"Protocol\\": \\"HLS\\",\\n \\"SegmentCount\\": 3,\\n \\"SegmentDuration\\": 5\\n },\\n \\"RequestId\\": \\"771A1414-27BF-53E6-AB73-EFCB*****ACF\\"\\n}","type":"json"}]', + 'title' => 'UpdateLivePackageChannel', + 'description' => '## [](#)Usage notes'."\n" + ."\n" + .'You need to provide the name of the channel group to which the channel belongs, channel name, protocol, segment duration, and number of segments to update. In addition, you can choose to add or modify the description of the channel. Make sure that the provided channel group name and channel name conform to the naming conventions.'."\n", + ], + 'UpdateLivePackageChannelCredentials' => [ + 'summary' => 'Updates the credentials of ingest endpoints associated with a live package channel.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '240167', + 'abilityTreeNodes' => [ + 'FEATUREiceQU6W9M', + ], + ], + 'parameters' => [ + [ + 'name' => 'GroupName', + 'in' => 'formData', + 'schema' => [ + 'title' => '频道组名称', + 'description' => 'The channel group name.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'group-1', + ], + ], + [ + 'name' => 'ChannelName', + 'in' => 'formData', + 'schema' => [ + 'title' => '频道名称', + 'description' => 'The channel name.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'channel-1', + ], + ], + [ + 'name' => 'RotateCredentials', + 'in' => 'formData', + 'schema' => [ + 'title' => '刷新密钥选项', + 'description' => 'Specifies whether to update the credentials. 1: updates the credentials of endpoint 1. 2: updates the credentials of endpoint 2. 3: updates the credentials of endpoints 1 and 2.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'example' => '3', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'IngestEndpoints' => [ + 'description' => 'The information about the ingest endpoint.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The username.'."\n", + 'type' => 'object', + 'properties' => [ + 'Id' => [ + 'description' => 'The ingest endpoint ID. `input1` indicates primary and `input2` indicates secondary.'."\n", + 'type' => 'string', + 'example' => 'input1', + ], + 'Password' => [ + 'description' => 'The password.'."\n", + 'type' => 'string', + 'example' => 'examplePassword123', + ], + 'Url' => [ + 'description' => 'The ingest endpoint URL.'."\n", + 'type' => 'string', + 'example' => 'rtmp://example.com/live/input1', + ], + 'Username' => [ + 'description' => 'The username.'."\n", + 'type' => 'string', + 'example' => 'user1', + ], + ], + ], + ], + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '771A1414-27BF-53E6-AB73-EFCB*****ACF', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"IngestEndpoints\\": [\\n {\\n \\"Id\\": \\"input1\\",\\n \\"Password\\": \\"examplePassword123\\",\\n \\"Url\\": \\"rtmp://example.com/live/input1\\",\\n \\"Username\\": \\"user1\\"\\n }\\n ],\\n \\"RequestId\\": \\"771A1414-27BF-53E6-AB73-EFCB*****ACF\\"\\n}","type":"json"}]', + 'title' => 'UpdateLivePackageChannelCredentials', + 'description' => '## [](#)Usage notes'."\n" + ."\n" + .'You can choose to update the primary endpoint, secondary endpoint, or both. The response includes the updated ingest endpoint URL, username, and password for the ingest device to reconfigure.'."\n", + ], + 'GetLivePackageChannel' => [ + 'summary' => 'Queries the details of a live package channel.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '239699', + 'abilityTreeNodes' => [ + 'FEATUREiceQU6W9M', + ], + ], + 'parameters' => [ + [ + 'name' => 'GroupName', + 'in' => 'query', + 'schema' => [ + 'title' => '频道组名称', + 'description' => 'The channel group name.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'channel-group-1', + ], + ], + [ + 'name' => 'ChannelName', + 'in' => 'query', + 'schema' => [ + 'title' => '频道名称', + 'description' => 'The channel name.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'channel-1', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'LivePackageChannel' => [ + 'description' => 'Details of the live package channel.'."\n", + 'type' => 'object', + 'properties' => [ + 'ChannelName' => [ + 'title' => '频道名称', + 'description' => 'The channel name.'."\n", + 'type' => 'string', + 'example' => 'ch4', + ], + 'CreateTime' => [ + 'title' => '创建时间', + 'description' => 'The time when the channel was created.'."\n", + 'type' => 'string', + 'example' => '2023-04-01T12:00:00Z', + ], + 'Description' => [ + 'title' => '频道描述', + 'description' => 'The channel description.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'GroupName' => [ + 'title' => '频道组名称', + 'description' => 'The channel group name.'."\n", + 'type' => 'string', + 'example' => 'channel-group-1', + ], + 'IngestEndpoints' => [ + 'description' => 'The ingest endpoints.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The information about the ingest endpoint.'."\n", + 'type' => 'object', + 'properties' => [ + 'Id' => [ + 'description' => 'The ingest endpoint ID.'."\n", + 'type' => 'string', + 'example' => 'ingest1', + ], + 'Password' => [ + 'description' => 'The password.'."\n", + 'type' => 'string', + 'example' => '2F9e******b569c8', + ], + 'Url' => [ + 'description' => 'The ingest endpoint URL.'."\n", + 'type' => 'string', + 'example' => 'http://xxx-1.packagepush-abcxxx.ap-southeast-1.aliyuncsiceintl.com/v1/group01/1/ch01/manifest'."\n", + ], + 'Username' => [ + 'description' => 'The username.'."\n", + 'type' => 'string', + 'example' => 'us12******das', + ], + ], + ], + ], + 'LastModified' => [ + 'title' => '最后修改时间', + 'description' => 'The time when the endpoint was last modified.'."\n", + 'type' => 'string', + 'example' => '2023-04-01T12:00:00Z', + ], + 'Protocol' => [ + 'title' => '协议', + 'description' => 'The ingest protocol. Only HLS is supported.'."\n", + 'type' => 'string', + 'example' => 'HLS', + ], + 'SegmentCount' => [ + 'title' => '切片个数', + 'description' => 'The number of M3U8 segments.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '3', + ], + 'SegmentDuration' => [ + 'title' => '切片时长', + 'description' => 'The segment duration.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '5', + ], + ], + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'RequestId-12345678', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"LivePackageChannel\\": {\\n \\"ChannelName\\": \\"ch4\\",\\n \\"CreateTime\\": \\"2023-04-01T12:00:00Z\\",\\n \\"Description\\": \\"测试频道\\",\\n \\"GroupName\\": \\"channel-group-1\\",\\n \\"IngestEndpoints\\": [\\n {\\n \\"Id\\": \\"ingest1\\",\\n \\"Password\\": \\"2F9e******b569c8\\",\\n \\"Url\\": \\"http://xxx-1.packagepush-abcxxx.ap-southeast-1.aliyuncsiceintl.com/v1/group01/1/ch01/manifest\\\\n\\",\\n \\"Username\\": \\"us12******das\\"\\n }\\n ],\\n \\"LastModified\\": \\"2023-04-01T12:00:00Z\\",\\n \\"Protocol\\": \\"HLS\\",\\n \\"SegmentCount\\": 3,\\n \\"SegmentDuration\\": 5\\n },\\n \\"RequestId\\": \\"RequestId-12345678\\"\\n}","type":"json"}]', + 'title' => 'GetLivePackageChannel', + 'description' => '## [](#)Usage notes'."\n" + ."\n" + .'This API operation allows you to query the details of a live package channel, including the creation time, description, ingest endpoint, protocol, number of segments, and segment duration.'."\n", + ], + 'ListLivePackageChannels' => [ + 'summary' => 'Queries live package channels by channel group and keyword. Paging and sorting are supported.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '239703', + 'abilityTreeNodes' => [ + 'FEATUREiceQU6W9M', + ], + ], + 'parameters' => [ + [ + 'name' => 'GroupName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The channel group name.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'channel-group-1', + ], + ], + [ + 'name' => 'Keyword', + 'in' => 'query', + 'schema' => [ + 'title' => '列表过滤参数', + 'description' => 'The channel name or description. Fuzzy match is supported.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'group-1', + ], + ], + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page. Default value: 10.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '10', + ], + ], + [ + 'name' => 'SortBy', + 'in' => 'query', + 'schema' => [ + 'description' => 'The sort order by creation time. Default value: desc.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* asc'."\n" + .'* desc'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'asc' => 'asc', + 'desc' => 'desc', + ], + 'example' => 'desc', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'LivePackageChannels' => [ + 'title' => '数组,返回示例目录。', + 'description' => 'The live package channels.'."\n", + 'type' => 'array', + 'items' => [ + 'title' => 'LivePackageChannelItemType', + 'description' => 'LivePackageChannelItemType'."\n", + 'type' => 'object', + 'properties' => [ + 'ChannelName' => [ + 'title' => '频道名称', + 'description' => 'The channel name.'."\n", + 'type' => 'string', + 'example' => 'ch3', + ], + 'CreateTime' => [ + 'title' => '创建时间', + 'description' => 'The time when the channel was created.'."\n", + 'type' => 'string', + 'example' => '2023-04-01T12:00:00Z'."\n", + ], + 'Description' => [ + 'title' => '频道描述', + 'description' => 'The channel description.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'GroupName' => [ + 'title' => '频道组名称', + 'description' => 'The channel group name.'."\n", + 'type' => 'string', + 'example' => 'channel-group-1', + ], + 'IngestEndpoints' => [ + 'description' => 'The ingest endpoints.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The information about the ingest endpoint.'."\n", + 'type' => 'object', + 'properties' => [ + 'Id' => [ + 'description' => 'The ingest endpoint ID.'."\n", + 'type' => 'string', + 'example' => 'ingest1', + ], + 'Password' => [ + 'description' => 'The password.'."\n", + 'type' => 'string', + 'example' => '2F9e9******18b569c8', + ], + 'Url' => [ + 'description' => 'The ingest endpoint URL.'."\n", + 'type' => 'string', + 'example' => 'http://xxx-1.packagepush-abcxxx.ap-southeast-1.aliyuncsiceintl.com/v1/group01/1/ch01/manifest', + ], + 'Username' => [ + 'description' => 'The username.'."\n", + 'type' => 'string', + 'example' => 'us12******das', + ], + ], + ], + ], + 'LastModified' => [ + 'title' => '最后修改时间', + 'description' => 'The time when the channel was last modified.'."\n", + 'type' => 'string', + 'example' => '2023-04-01T12:00:00Z', + ], + 'Protocol' => [ + 'title' => '协议', + 'description' => 'The ingest protocol. Only HLS is supported.'."\n", + 'type' => 'string', + 'example' => 'HLS', + ], + 'SegmentCount' => [ + 'title' => '切片个数', + 'description' => 'The number of M3U8 segments.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '3', + ], + 'SegmentDuration' => [ + 'title' => '切片时长', + 'description' => 'The segment duration.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '5', + ], + ], + ], + ], + 'PageNo' => [ + 'title' => '页码。', + 'description' => 'The page number.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'PageSize' => [ + 'title' => '分页记录数。', + 'description' => 'The number of entries per page. Valid values: 1 to 100. Default value: 10.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10', + ], + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'SortBy' => [ + 'description' => 'The sort order. Valid values: asc and desc (default).'."\n", + 'type' => 'string', + 'example' => 'asc/desc', + ], + 'TotalCount' => [ + 'title' => '总记录数。', + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '15', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"LivePackageChannels\\": [\\n {\\n \\"ChannelName\\": \\"ch3\\",\\n \\"CreateTime\\": \\"2023-04-01T12:00:00Z\\\\n\\",\\n \\"Description\\": \\"测试频道\\",\\n \\"GroupName\\": \\"channel-group-1\\",\\n \\"IngestEndpoints\\": [\\n {\\n \\"Id\\": \\"ingest1\\",\\n \\"Password\\": \\"2F9e9******18b569c8\\",\\n \\"Url\\": \\"http://xxx-1.packagepush-abcxxx.ap-southeast-1.aliyuncsiceintl.com/v1/group01/1/ch01/manifest\\",\\n \\"Username\\": \\"us12******das\\"\\n }\\n ],\\n \\"LastModified\\": \\"2023-04-01T12:00:00Z\\",\\n \\"Protocol\\": \\"HLS\\",\\n \\"SegmentCount\\": 3,\\n \\"SegmentDuration\\": 5\\n }\\n ],\\n \\"PageNo\\": 1,\\n \\"PageSize\\": 10,\\n \\"RequestId\\": \\"RequestId的示例值\\",\\n \\"SortBy\\": \\"asc/desc\\",\\n \\"TotalCount\\": 15\\n}","type":"json"}]', + 'title' => 'ListLivePackageChannels', + 'description' => '## [](#)Usage notes'."\n" + ."\n" + .'This API operation allows you to query live package channels by **GroupName** and **Keyword**. Keyword is optional. You can sort the channels by creation time in ascending or descending order and paginate the results. This facilitates the management of channels and retrieval of channel information.'."\n" + ."\n" + .'* **GroupName** is required to specify the channel group to which the channel belongs.'."\n" + .'* **Keyword** supports fuzzy match of channel names or descriptions, which helps quickly filter desired channels.'."\n" + .'* **PageNo** and **PageSize** can help control the paging of returned results to facilitate batch processing of data.'."\n" + .'* **SortBy** allows you to customize how the results are sorted. By default, the results are sorted in descending order.'."\n" + ."\n" + .'**RequestId** in the response is used for subsequent troubleshooting. **TotalCount** indicates the total number of channels that meet the conditions.'."\n", + ], + 'DeleteLivePackageChannel' => [ + 'summary' => 'Deletes a live package channel by GroupName and ChannelName.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '239701', + 'abilityTreeNodes' => [ + 'FEATUREiceQU6W9M', + ], + ], + 'parameters' => [ + [ + 'name' => 'GroupName', + 'in' => 'query', + 'schema' => [ + 'title' => '频道组名称', + 'description' => 'The channel group name.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'channel-group-1', + ], + ], + [ + 'name' => 'ChannelName', + 'in' => 'query', + 'schema' => [ + 'title' => '频道名称', + 'description' => 'The channel name.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'channel-1', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '20B3A1B6-4BD2-5DE6-BCBC-098C9B4F4E91', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"20B3A1B6-4BD2-5DE6-BCBC-098C9B4F4E91\\"\\n}","type":"json"}]', + 'title' => 'DeleteLivePackageChannel', + 'description' => '## [](#)Usage notes'."\n" + ."\n" + .'You need to provide GroupName and ChannelName as parameters to specify exactly which channel to delete. Before you delete a channel, you must delete the origin endpoints associated with the channel.'."\n", + ], + 'CreateLivePackageOriginEndpoint' => [ + 'summary' => 'Creates an origin endpoint for a live package channel to deliver live streams in HLS format.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '239771', + 'abilityTreeNodes' => [ + 'FEATUREiceQU6W9M', + ], + ], + 'parameters' => [ + [ + 'name' => 'GroupName', + 'in' => 'formData', + 'schema' => [ + 'title' => '频道组名称', + 'description' => 'The channel group name.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'channel-group-1', + ], + ], + [ + 'name' => 'ChannelName', + 'in' => 'formData', + 'schema' => [ + 'title' => '频道名称', + 'description' => 'The channel name.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'channel-1', + ], + ], + [ + 'name' => 'EndpointName', + 'in' => 'formData', + 'schema' => [ + 'title' => '端点名称', + 'description' => 'The origin endpoint name. It can contain letters, digits, hyphens (-), and underscores (\\_). The name must be 1 to 200 characters in length. Format: \\[A-Za-z0-9\\_-]+'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'endpoint-1', + ], + ], + [ + 'name' => 'Protocol', + 'in' => 'formData', + 'schema' => [ + 'title' => '分发协议', + 'description' => 'The distribution protocol.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'HLS', + ], + ], + [ + 'name' => 'ManifestName', + 'in' => 'formData', + 'schema' => [ + 'title' => '清单名称', + 'description' => 'The playlist name. Default value: manifest.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'manifest', + ], + ], + [ + 'name' => 'Description', + 'in' => 'formData', + 'schema' => [ + 'title' => '端点描述', + 'description' => 'The endpoint description.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '', + ], + ], + [ + 'name' => 'TimeshiftVision', + 'in' => 'formData', + 'schema' => [ + 'title' => '时移天数', + 'description' => 'The number of days that time-shifted content is available. Maximum value: 30. Default value: 0, which indicates that time shifting is not supported.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'AuthorizationCode', + 'in' => 'formData', + 'schema' => [ + 'title' => '回源授权码', + 'description' => 'The authorization code. It can be up to 200 characters in length. You must configure AuthorizationCode, IpWhitelist, or both. Format: \\[A-Za-z0-9-\\_.]+'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'AbcDef123', + ], + ], + [ + 'name' => 'IpWhitelist', + 'in' => 'formData', + 'schema' => [ + 'title' => 'IP白名单', + 'description' => 'The IP address whitelist. It supports subnet masks. 0.0.0.0/0 is not allowed. It can be up to 1,000 characters in length. Separate multiple IP addresses with commas (,). You must configure AuthorizationCode, IpWhitelist, or both.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '192.168.1.0/24,10.0.0.1/24', + ], + ], + [ + 'name' => 'IpBlacklist', + 'in' => 'formData', + 'schema' => [ + 'title' => 'IP黑名单', + 'description' => 'The IP address blacklist. It supports subnet masks. 0.0.0.0/0 is not allowed. It can be up to 1,000 characters in length. Separate multiple IP addresses with commas (,).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '103.21.222.1/32,192.168.100.0/24', + ], + ], + [ + 'name' => 'ClientToken', + 'in' => 'query', + 'allowEmptyValue' => false, + 'schema' => [ + 'title' => '幂等参数', + 'description' => 'The client token that is used to ensure the idempotence of the request.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '****0311a423d11a5f7dee713535****', + ], + ], + [ + 'name' => 'LivePackagingConfig', + 'in' => 'formData', + 'style' => 'json', + 'schema' => [ + '$ref' => '#/components/schemas/LivePackagingConfig', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'LivePackageOriginEndpoint' => [ + 'description' => 'The information about the origin endpoint.'."\n", + 'type' => 'object', + 'properties' => [ + 'AuthorizationCode' => [ + 'title' => '回源授权码', + 'description' => 'The authorization code.'."\n", + 'type' => 'string', + 'example' => 'Abcded123', + ], + 'ChannelName' => [ + 'title' => '频道名称', + 'description' => 'The channel name.'."\n", + 'type' => 'string', + 'example' => 'channel-1', + ], + 'CreateTime' => [ + 'title' => '创建时间', + 'description' => 'The time when the endpoint was created.'."\n", + 'type' => 'string', + 'example' => '2023-04-01T12:00:00Z', + ], + 'Description' => [ + 'title' => '端点描述', + 'description' => 'The endpoint description.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'EndpointName' => [ + 'title' => '端点名称', + 'description' => 'The endpoint name.'."\n", + 'type' => 'string', + 'example' => 'endpoint-1', + ], + 'EndpointUrl' => [ + 'title' => '端点URL', + 'description' => 'The endpoint URL.'."\n", + 'type' => 'string', + 'example' => 'https://xxx.packagepull-abcxxx.ap-southeast-1.aliyuncsiceintl.com/v1/group01/1/ch01/manifest', + ], + 'GroupName' => [ + 'title' => '频道组名称', + 'description' => 'The channel group name.'."\n", + 'type' => 'string', + 'example' => 'channel-group-1', + ], + 'IpBlacklist' => [ + 'title' => 'IP黑名单', + 'description' => 'The IP address blacklist.'."\n", + 'type' => 'string', + 'example' => '103.21.222.1/32,192.168.100.0/24', + ], + 'IpWhitelist' => [ + 'title' => 'IP白名单', + 'description' => 'The IP address whitelist.'."\n", + 'type' => 'string', + 'example' => '192.168.1.0/24,10.0.0.1/24', + ], + 'LastModified' => [ + 'title' => '最后修改时间', + 'description' => 'The time when the endpoint was last modified.'."\n", + 'type' => 'string', + 'example' => '2023-04-01T12:00:00Z', + ], + 'ManifestName' => [ + 'title' => '清单名称', + 'description' => 'The playlist name.'."\n", + 'type' => 'string', + 'example' => 'manifest', + ], + 'Protocol' => [ + 'title' => '分发协议', + 'description' => 'The protocol. Only HLS is supported.'."\n", + 'type' => 'string', + 'example' => 'HLS', + ], + 'TimeshiftVision' => [ + 'title' => '时移天数', + 'description' => 'The number of days that time-shifted content is available. Maximum value: 30.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'LivePackagingConfig' => [ + '$ref' => '#/components/schemas/LivePackagingConfig', + ], + ], + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"LivePackageOriginEndpoint\\": {\\n \\"AuthorizationCode\\": \\"Abcded123\\",\\n \\"ChannelName\\": \\"channel-1\\",\\n \\"CreateTime\\": \\"2023-04-01T12:00:00Z\\",\\n \\"Description\\": \\"这是一个源站端点\\",\\n \\"EndpointName\\": \\"endpoint-1\\",\\n \\"EndpointUrl\\": \\"https://xxx.packagepull-abcxxx.ap-southeast-1.aliyuncsiceintl.com/v1/group01/1/ch01/manifest\\",\\n \\"GroupName\\": \\"channel-group-1\\",\\n \\"IpBlacklist\\": \\"103.21.222.1/32,192.168.100.0/24\\",\\n \\"IpWhitelist\\": \\"192.168.1.0/24,10.0.0.1/24\\",\\n \\"LastModified\\": \\"2023-04-01T12:00:00Z\\",\\n \\"ManifestName\\": \\"manifest\\",\\n \\"Protocol\\": \\"HLS\\",\\n \\"TimeshiftVision\\": 1,\\n \\"LivePackagingConfig\\": {\\n \\"LiveManifestConfigs\\": [\\n {\\n \\"SegmentCount\\": 0,\\n \\"AdMarkers\\": \\"\\",\\n \\"MinVideoBitrate\\": 0,\\n \\"MinBufferTime\\": 0,\\n \\"PresentationDelay\\": 0,\\n \\"StreamOrder\\": \\"\\",\\n \\"MaxVideoBitrate\\": 0,\\n \\"DateTimeInterval\\": 0,\\n \\"SegmentTemplateFormat\\": \\"\\",\\n \\"MinUpdatePeriod\\": 0,\\n \\"ManifestDuration\\": 0\\n }\\n ],\\n \\"UseAudioRenditionGroups\\": true,\\n \\"DrmConfig\\": {\\n \\"SystemIds\\": [\\n \\"\\"\\n ],\\n \\"RotatePeriod\\": 0,\\n \\"ContentId\\": \\"\\",\\n \\"EncryptionMethod\\": \\"\\",\\n \\"IV\\": \\"\\",\\n \\"Url\\": \\"\\"\\n },\\n \\"SegmentDuration\\": 0\\n }\\n },\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\"\\n}","type":"json"}]', + 'title' => 'CreateLivePackageOriginEndpoint', + 'description' => '## [](#)Usage notes'."\n" + ."\n" + .'This API operation is mainly used to configure origin settings, security policies including the IP address blacklist and whitelist and authorization code, and time shifting settings for channels. Before you create an origin endpoint, you must create a live package channel group and channel. After you create the endpoint, the endpoint URL and other configuration details are returned.'."\n", + ], + 'UpdateLivePackageOriginEndpoint' => [ + 'summary' => 'Updates the origin endpoint settings including the protocol, time shifting, and access control settings.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '239773', + 'abilityTreeNodes' => [ + 'FEATUREiceQU6W9M', + ], + ], + 'parameters' => [ + [ + 'name' => 'GroupName', + 'in' => 'formData', + 'schema' => [ + 'title' => '频道组名称', + 'description' => 'The channel group name.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'channel-group-1', + ], + ], + [ + 'name' => 'ChannelName', + 'in' => 'formData', + 'schema' => [ + 'title' => '频道名称', + 'description' => 'The channel name.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'channel-1', + ], + ], + [ + 'name' => 'EndpointName', + 'in' => 'formData', + 'schema' => [ + 'title' => '端点名称', + 'description' => 'The origin endpoint name. It can contain letters, digits, hyphens (-), and underscores (\\_). The name must be 1 to 200 characters in length. Format: \\[A-Za-z0-9\\_-]+'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'endpoint-1', + ], + ], + [ + 'name' => 'Protocol', + 'in' => 'formData', + 'schema' => [ + 'title' => '分发协议', + 'description' => 'The protocol. Only HLS is supported.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'HLS', + ], + ], + [ + 'name' => 'ManifestName', + 'in' => 'formData', + 'schema' => [ + 'title' => '清单名称', + 'description' => 'The playlist name. Default value: manifest.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'manifest', + ], + ], + [ + 'name' => 'Description', + 'in' => 'formData', + 'schema' => [ + 'title' => '端点描述', + 'description' => 'The endpoint description.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '', + ], + ], + [ + 'name' => 'TimeshiftVision', + 'in' => 'formData', + 'schema' => [ + 'title' => '时移天数', + 'description' => 'The number of days that time-shifted content is available. Maximum value: 30.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '5', + ], + ], + [ + 'name' => 'AuthorizationCode', + 'in' => 'formData', + 'schema' => [ + 'title' => '回源授权码', + 'description' => 'The authorization code. It can be up to 200 characters in length. You must configure AuthorizationCode, IpWhitelist, or both. Format: \\[A-Za-z0-9-\\_.]+'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'Abc123Def456', + ], + ], + [ + 'name' => 'IpWhitelist', + 'in' => 'formData', + 'schema' => [ + 'title' => 'IP白名单', + 'description' => 'The IP address whitelist. It supports subnet masks. 0.0.0.0/0 is not allowed. It can be up to 1,000 characters in length. Separate multiple IP addresses with commas (,). You must configure AuthorizationCode, IpWhitelist, or both.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '192.168.1.0/24,10.0.0.1', + ], + ], + [ + 'name' => 'IpBlacklist', + 'in' => 'formData', + 'schema' => [ + 'title' => 'IP黑名单', + 'description' => 'The IP address blacklist. It supports subnet masks. Separate multiple IP addresses with commas (,).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '103.0.0.0/8', + ], + ], + [ + 'name' => 'LivePackagingConfig', + 'in' => 'formData', + 'style' => 'json', + 'schema' => [ + '$ref' => '#/components/schemas/LivePackagingConfig', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'LivePackageOriginEndpoint' => [ + 'description' => 'The information about the origin endpoint.'."\n", + 'type' => 'object', + 'properties' => [ + 'AuthorizationCode' => [ + 'title' => '回源授权码', + 'description' => 'The authorization code.'."\n", + 'type' => 'string', + 'example' => 'Abc123Def456', + ], + 'ChannelName' => [ + 'title' => '频道名称', + 'description' => 'The channel name.'."\n", + 'type' => 'string', + 'example' => 'channel-1', + ], + 'CreateTime' => [ + 'title' => '创建时间', + 'description' => 'The time when the endpoint was created.'."\n", + 'type' => 'string', + 'example' => '2023-04-01T12:00:00Z', + ], + 'Description' => [ + 'title' => '端点描述', + 'description' => 'The endpoint description.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'EndpointName' => [ + 'title' => '端点名称', + 'description' => 'The endpoint name.'."\n", + 'type' => 'string', + 'example' => 'endpoint-1', + ], + 'EndpointUrl' => [ + 'title' => '端点URL', + 'description' => 'The endpoint URL.'."\n", + 'type' => 'string', + 'example' => 'https://xxx.packagepull-abcxxx.ap-southeast-1.aliyuncsiceintl.com/v1/group01/1/ch01/manifest', + ], + 'GroupName' => [ + 'title' => '频道组名称', + 'description' => 'The channel group name.'."\n", + 'type' => 'string', + 'example' => 'channel-group-1', + ], + 'IpBlacklist' => [ + 'title' => 'IP黑名单', + 'description' => 'The IP address blacklist. It supports subnet masks. Multiple IP addresses are separated by commas (,).'."\n", + 'type' => 'string', + 'example' => '10.21.222.1/32,192.168.100.0/24', + ], + 'IpWhitelist' => [ + 'title' => 'IP白名单', + 'description' => 'The IP address whitelist. It supports subnet masks. Multiple IP addresses are separated by commas (,).'."\n", + 'type' => 'string', + 'example' => '192.168.1.0/24,10.0.0.1/24', + ], + 'LastModified' => [ + 'title' => '最后修改时间', + 'description' => 'The time when the endpoint was last modified.'."\n", + 'type' => 'string', + 'example' => '2023-04-01T12:00:00Z', + ], + 'ManifestName' => [ + 'title' => '清单名称', + 'description' => 'The playlist name. Default value: manifest.'."\n", + 'type' => 'string', + 'example' => 'manifest', + ], + 'Protocol' => [ + 'title' => '分发协议', + 'description' => 'The protocol. Only HLS is supported.'."\n", + 'type' => 'string', + 'example' => 'HLS', + ], + 'TimeshiftVision' => [ + 'title' => '时移天数', + 'description' => 'The number of days that time-shifted content is available. Maximum value: 30.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '5', + ], + 'LivePackagingConfig' => [ + '$ref' => '#/components/schemas/LivePackagingConfig', + ], + ], + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'b1f8d6c4-a123-4cd5-9e88-d0819e3bfa70', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"LivePackageOriginEndpoint\\": {\\n \\"AuthorizationCode\\": \\"Abc123Def456\\",\\n \\"ChannelName\\": \\"channel-1\\",\\n \\"CreateTime\\": \\"2023-04-01T12:00:00Z\\",\\n \\"Description\\": \\"这是一个源站端点\\",\\n \\"EndpointName\\": \\"endpoint-1\\",\\n \\"EndpointUrl\\": \\"https://xxx.packagepull-abcxxx.ap-southeast-1.aliyuncsiceintl.com/v1/group01/1/ch01/manifest\\",\\n \\"GroupName\\": \\"channel-group-1\\",\\n \\"IpBlacklist\\": \\"10.21.222.1/32,192.168.100.0/24\\",\\n \\"IpWhitelist\\": \\"192.168.1.0/24,10.0.0.1/24\\",\\n \\"LastModified\\": \\"2023-04-01T12:00:00Z\\",\\n \\"ManifestName\\": \\"manifest\\",\\n \\"Protocol\\": \\"HLS\\",\\n \\"TimeshiftVision\\": 5,\\n \\"LivePackagingConfig\\": {\\n \\"LiveManifestConfigs\\": [\\n {\\n \\"SegmentCount\\": 0,\\n \\"AdMarkers\\": \\"\\",\\n \\"MinVideoBitrate\\": 0,\\n \\"MinBufferTime\\": 0,\\n \\"PresentationDelay\\": 0,\\n \\"StreamOrder\\": \\"\\",\\n \\"MaxVideoBitrate\\": 0,\\n \\"DateTimeInterval\\": 0,\\n \\"SegmentTemplateFormat\\": \\"\\",\\n \\"MinUpdatePeriod\\": 0,\\n \\"ManifestDuration\\": 0\\n }\\n ],\\n \\"UseAudioRenditionGroups\\": true,\\n \\"DrmConfig\\": {\\n \\"SystemIds\\": [\\n \\"\\"\\n ],\\n \\"RotatePeriod\\": 0,\\n \\"ContentId\\": \\"\\",\\n \\"EncryptionMethod\\": \\"\\",\\n \\"IV\\": \\"\\",\\n \\"Url\\": \\"\\"\\n },\\n \\"SegmentDuration\\": 0\\n }\\n },\\n \\"RequestId\\": \\"5D87B753-0250-5D9D-B248-D40C3271F864\\"\\n}","type":"json"}]', + 'title' => 'UpdateLivePackageOriginEndpoint', + 'description' => '## [](#)Usage notes'."\n" + ."\n" + .'You can call this operation to modify the origin protocol, set the number of days that time-shifted content is available, define playlist names, and configure the IP address blacklist and whitelist, allowing for fine-grained control over streaming media distribution. Some parameters are required. You must configure IpWhitelist, AuthorizationCode, or both.'."\n", + ], + 'GetLivePackageOriginEndpoint' => [ + 'summary' => 'Queries origin endpoints associated with a live package channel.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '239770', + 'abilityTreeNodes' => [ + 'FEATUREiceQU6W9M', + ], + ], + 'parameters' => [ + [ + 'name' => 'GroupName', + 'in' => 'query', + 'schema' => [ + 'title' => '频道组名称', + 'description' => 'The channel group name.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'channel-group-1', + ], + ], + [ + 'name' => 'ChannelName', + 'in' => 'query', + 'schema' => [ + 'title' => '频道名称', + 'description' => 'The channel name.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'channel-1', + ], + ], + [ + 'name' => 'EndpointName', + 'in' => 'query', + 'schema' => [ + 'title' => '端点名称', + 'description' => 'The endpoint name.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'endpoint-1', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'LivePackageOriginEndpoint' => [ + 'description' => 'The information about the origin endpoints.'."\n", + 'type' => 'object', + 'properties' => [ + 'AuthorizationCode' => [ + 'title' => '回源授权码', + 'description' => 'The authorization code.'."\n", + 'type' => 'string', + 'example' => 'Abc123Def456', + ], + 'ChannelName' => [ + 'title' => '频道名称', + 'description' => 'The channel name.'."\n", + 'type' => 'string', + 'example' => 'channel-1', + ], + 'CreateTime' => [ + 'title' => '创建时间', + 'description' => 'The time when the endpoint was created.'."\n", + 'type' => 'string', + 'example' => '2023-04-01T12:00:00Z', + ], + 'Description' => [ + 'title' => '端点描述', + 'description' => 'The endpoint description.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'EndpointName' => [ + 'title' => '端点名称', + 'description' => 'The endpoint name.'."\n", + 'type' => 'string', + 'example' => 'endpoint-1', + ], + 'EndpointUrl' => [ + 'title' => '端点URL', + 'description' => 'The endpoint URL.'."\n", + 'type' => 'string', + 'example' => 'https://xxx.packagepull-abcxxx.ap-southeast-1.aliyuncsiceintl.com/v1/group01/1/ch01/manifest', + ], + 'GroupName' => [ + 'title' => '频道组名称', + 'description' => 'The channel group name.'."\n", + 'type' => 'string', + 'example' => 'channel-group-1', + ], + 'IpBlacklist' => [ + 'title' => 'IP黑名单', + 'description' => 'The IP address blacklist.'."\n", + 'type' => 'string', + 'example' => '10.21.222.1/32', + ], + 'IpWhitelist' => [ + 'title' => 'IP白名单', + 'description' => 'The IP address whitelist.'."\n", + 'type' => 'string', + 'example' => '192.168.1.0/24,10.0.0.1/24', + ], + 'LastModified' => [ + 'title' => '最后修改时间', + 'description' => 'The time when the endpoint was last modified.'."\n", + 'type' => 'string', + 'example' => '2023-04-01T12:00:00Z', + ], + 'ManifestName' => [ + 'title' => '清单名称', + 'description' => 'The playlist name.'."\n", + 'type' => 'string', + 'example' => 'manifest', + ], + 'Protocol' => [ + 'title' => '分发协议', + 'description' => 'The distribution protocol.'."\n", + 'type' => 'string', + 'example' => 'HLS', + ], + 'TimeshiftVision' => [ + 'title' => '时移天数', + 'description' => 'The number of days that time-shifted content is available.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '5', + ], + 'LivePackagingConfig' => [ + '$ref' => '#/components/schemas/LivePackagingConfig', + ], + ], + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'requestIdExample123', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"LivePackageOriginEndpoint\\": {\\n \\"AuthorizationCode\\": \\"Abc123Def456\\",\\n \\"ChannelName\\": \\"channel-1\\",\\n \\"CreateTime\\": \\"2023-04-01T12:00:00Z\\",\\n \\"Description\\": \\"这是一个源站端点\\",\\n \\"EndpointName\\": \\"endpoint-1\\",\\n \\"EndpointUrl\\": \\"https://xxx.packagepull-abcxxx.ap-southeast-1.aliyuncsiceintl.com/v1/group01/1/ch01/manifest\\",\\n \\"GroupName\\": \\"channel-group-1\\",\\n \\"IpBlacklist\\": \\"10.21.222.1/32\\",\\n \\"IpWhitelist\\": \\"192.168.1.0/24,10.0.0.1/24\\",\\n \\"LastModified\\": \\"2023-04-01T12:00:00Z\\",\\n \\"ManifestName\\": \\"manifest\\",\\n \\"Protocol\\": \\"HLS\\",\\n \\"TimeshiftVision\\": 5,\\n \\"LivePackagingConfig\\": {\\n \\"LiveManifestConfigs\\": [\\n {\\n \\"SegmentCount\\": 0,\\n \\"AdMarkers\\": \\"\\",\\n \\"MinVideoBitrate\\": 0,\\n \\"MinBufferTime\\": 0,\\n \\"PresentationDelay\\": 0,\\n \\"StreamOrder\\": \\"\\",\\n \\"MaxVideoBitrate\\": 0,\\n \\"DateTimeInterval\\": 0,\\n \\"SegmentTemplateFormat\\": \\"\\",\\n \\"MinUpdatePeriod\\": 0,\\n \\"ManifestDuration\\": 0\\n }\\n ],\\n \\"UseAudioRenditionGroups\\": true,\\n \\"DrmConfig\\": {\\n \\"SystemIds\\": [\\n \\"\\"\\n ],\\n \\"RotatePeriod\\": 0,\\n \\"ContentId\\": \\"\\",\\n \\"EncryptionMethod\\": \\"\\",\\n \\"IV\\": \\"\\",\\n \\"Url\\": \\"\\"\\n },\\n \\"SegmentDuration\\": 0\\n }\\n },\\n \\"RequestId\\": \\"5D87B753-0250-5D9D-B248-D40C3271F864\\"\\n}","type":"json"}]', + 'title' => 'GetLivePackageOriginEndpoint', + 'description' => '## [](#)Usage notes'."\n", + ], + 'ListLivePackageOriginEndpoints' => [ + 'summary' => 'Queries origin endpoints by channel group and channel name. Paging and sorting are supported.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '239774', + 'abilityTreeNodes' => [ + 'FEATUREiceQU6W9M', + ], + ], + 'parameters' => [ + [ + 'name' => 'GroupName', + 'in' => 'query', + 'schema' => [ + 'title' => '频道组名称', + 'description' => 'The channel group name.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'channel-group-1', + ], + ], + [ + 'name' => 'ChannelName', + 'in' => 'query', + 'schema' => [ + 'title' => '频道名称', + 'description' => 'The channel name.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'channel-1', + ], + ], + [ + 'name' => 'Keyword', + 'in' => 'query', + 'schema' => [ + 'description' => 'The endpoint name or description. Fuzzy match is supported.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'endpoint-', + ], + ], + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '10', + ], + ], + [ + 'name' => 'SortBy', + 'in' => 'query', + 'schema' => [ + 'description' => 'The sort order by creation time. Valid values: asc and desc (default).'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'asc' => 'asc', + 'desc' => 'desc', + ], + 'example' => 'desc', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'LivePackageOriginEndpoints' => [ + 'title' => '数组,返回示例目录。', + 'description' => 'The origin endpoints returned.'."\n", + 'type' => 'array', + 'items' => [ + 'title' => 'LivePackageOriginEndpointItemType', + 'description' => 'LivePackageOriginEndpointItemType'."\n", + 'type' => 'object', + 'properties' => [ + 'AuthorizationCode' => [ + 'title' => '回源授权码', + 'description' => 'The authorization code.'."\n", + 'type' => 'string', + 'example' => 'Abc123Def456', + ], + 'ChannelName' => [ + 'title' => '频道名称', + 'description' => 'The channel name.'."\n", + 'type' => 'string', + 'example' => 'channel-1', + ], + 'CreateTime' => [ + 'title' => '创建时间', + 'description' => 'The time when the endpoint was created.'."\n", + 'type' => 'string', + 'example' => '2023-04-01T12:00:00Z', + ], + 'Description' => [ + 'title' => '端点描述', + 'description' => 'The endpoint description.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'EndpointName' => [ + 'title' => '端点名称', + 'description' => 'The endpoint name.'."\n", + 'type' => 'string', + 'example' => 'endpoint-1', + ], + 'EndpointUrl' => [ + 'title' => '端点URL', + 'description' => 'The endpoint URL.'."\n", + 'type' => 'string', + 'example' => 'https://xxx.packagepull-abcxxx.ap-southeast-1.aliyuncsiceintl.com/v1/group01/1/ch01/manifest.m3u8', + ], + 'GroupName' => [ + 'title' => '频道组名称', + 'description' => 'The channel group name.'."\n", + 'type' => 'string', + 'example' => 'channel-group-1', + ], + 'IpBlacklist' => [ + 'title' => 'IP黑名单', + 'description' => 'The IP address blacklist.'."\n", + 'type' => 'string', + 'example' => '10.21.222.1/32,192.168.100.0/24', + ], + 'IpWhitelist' => [ + 'title' => 'IP白名单', + 'description' => 'The IP address whitelist.'."\n", + 'type' => 'string', + 'example' => '192.168.1.0/24,10.0.0.1/24', + ], + 'LastModified' => [ + 'title' => '最后修改时间', + 'description' => 'The time when the endpoint was last modified.'."\n", + 'type' => 'string', + 'example' => '2023-04-01T12:00:00Z', + ], + 'ManifestName' => [ + 'title' => '清单名称', + 'description' => 'The playlist name.'."\n", + 'type' => 'string', + 'example' => 'manifest', + ], + 'Protocol' => [ + 'title' => '分发协议', + 'description' => 'The distribution protocol.'."\n", + 'type' => 'string', + 'example' => 'HLS', + ], + 'TimeshiftVision' => [ + 'title' => '时移天数', + 'description' => 'The number of days that time-shifted content is available.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + ], + ], + ], + 'PageNo' => [ + 'title' => '页码。', + 'description' => 'The page number.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'PageSize' => [ + 'title' => '分页记录数。', + 'description' => 'The number of entries per page.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10', + ], + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'b9f90a7ac8904db28dc18e0c2a72c75d', + ], + 'SortBy' => [ + 'description' => 'The sort order. Valid values: `asc` and `desc` (default).'."\n", + 'type' => 'string', + 'example' => 'desc', + ], + 'TotalCount' => [ + 'title' => '总记录数。', + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"LivePackageOriginEndpoints\\": [\\n {\\n \\"AuthorizationCode\\": \\"Abc123Def456\\",\\n \\"ChannelName\\": \\"channel-1\\",\\n \\"CreateTime\\": \\"2023-04-01T12:00:00Z\\",\\n \\"Description\\": \\"这是一个源站端点\\",\\n \\"EndpointName\\": \\"endpoint-1\\",\\n \\"EndpointUrl\\": \\"https://xxx.packagepull-abcxxx.ap-southeast-1.aliyuncsiceintl.com/v1/group01/1/ch01/manifest.m3u8\\",\\n \\"GroupName\\": \\"channel-group-1\\",\\n \\"IpBlacklist\\": \\"10.21.222.1/32,192.168.100.0/24\\",\\n \\"IpWhitelist\\": \\"192.168.1.0/24,10.0.0.1/24\\",\\n \\"LastModified\\": \\"2023-04-01T12:00:00Z\\",\\n \\"ManifestName\\": \\"manifest\\",\\n \\"Protocol\\": \\"HLS\\",\\n \\"TimeshiftVision\\": 1\\n }\\n ],\\n \\"PageNo\\": 1,\\n \\"PageSize\\": 10,\\n \\"RequestId\\": \\"b9f90a7ac8904db28dc18e0c2a72c75d\\",\\n \\"SortBy\\": \\"desc\\",\\n \\"TotalCount\\": 10\\n}","type":"json"}]', + 'title' => 'ListLivePackageOriginEndpoints', + 'description' => '## [](#)Usage notes'."\n" + ."\n" + .'This API operation allows you to query origin endpoints associated with a live package channel. The results include detailed configurations about the origin endpoints, such as access URL, protocol, and security policies. Paging and sorting by creation time are supported.'."\n", + ], + 'DeleteLivePackageOriginEndpoint' => [ + 'summary' => 'Deletes an origin endpoint associated with a live package channel.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '239772', + 'abilityTreeNodes' => [ + 'FEATUREiceQU6W9M', + ], + ], + 'parameters' => [ + [ + 'name' => 'GroupName', + 'in' => 'query', + 'schema' => [ + 'title' => '频道组名称', + 'description' => 'The channel group name.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'channel-group-1', + ], + ], + [ + 'name' => 'ChannelName', + 'in' => 'query', + 'schema' => [ + 'title' => '频道名称', + 'description' => 'The channel name.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'channel-1', + ], + ], + [ + 'name' => 'EndpointName', + 'in' => 'query', + 'schema' => [ + 'title' => '端点名称', + 'description' => 'The endpoint name.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'endpoint-1', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '5D87B753-0250-5D9D-B248-D40C3271F864', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"5D87B753-0250-5D9D-B248-D40C3271F864\\"\\n}","type":"json"}]', + 'title' => 'DeleteLivePackageOriginEndpoint', + 'description' => '## [](#)Usage notes'."\n" + ."\n" + .'This API operation is used to delete an origin endpoint associated with a live package channel by specifying `GroupName`, `ChannelName`, and `EndpointName`. This operation will permanently delete the relevant configurations. Exercise caution when you perform this operation.'."\n", + ], + 'SetContentAnalyzeConfig' => [ + 'summary' => '设置内容分析搜索配置', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + ], + 'parameters' => [ + [ + 'name' => 'Auto', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + [ + 'name' => 'SaveType', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => 'TEXT,FACE', + ], + ], + [ + 'name' => 'TemplateId', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => 'S00000101-100070', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => '', + 'type' => 'string', + 'example' => '953CFD27-4A2C-54AD-857F-B79EF3A338E0', + ], + 'Success' => [ + 'title' => '是否设置成功', + 'description' => '', + 'type' => 'boolean', + 'example' => 'true', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"953CFD27-4A2C-54AD-857F-B79EF3A338E0\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => 'SetContentAnalyzeConfig', + ], + 'GetContentAnalyzeConfig' => [ + 'summary' => '获取内容分析搜索配置', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => '', + 'type' => 'string', + 'example' => '31FEC819-2344-5771-9366-9172DB0D26C9', + ], + 'ContentAnalyzeConfig' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'Auto' => [ + 'description' => '', + 'type' => 'boolean', + 'example' => 'true', + ], + 'SaveType' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'TEXT,FACE', + ], + 'TemplateId' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'S00000101-100070', + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"31FEC819-2344-5771-9366-9172DB0D26C9\\",\\n \\"ContentAnalyzeConfig\\": {\\n \\"Auto\\": true,\\n \\"SaveType\\": \\"TEXT,FACE\\",\\n \\"TemplateId\\": \\"S00000101-100070\\"\\n }\\n}","type":"json"}]', + 'title' => 'GetContentAnalyzeConfig', + ], + 'SetDefaultStorageLocation' => [ + 'summary' => '设置默认存储路径', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + ], + 'parameters' => [ + [ + 'name' => 'StorageType', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'user_oss_bucket' => '', + 'vod_oss_bucket' => '', + ], + 'example' => 'user_oss_bucket', + ], + ], + [ + 'name' => 'Bucket', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => 'oss-test-bucket', + ], + ], + [ + 'name' => 'Path', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => 'ims/dir', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => '', + 'type' => 'string', + 'example' => '******5A-CAAC-4850-A3AF-B74606******', + ], + 'Success' => [ + 'description' => '', + 'type' => 'boolean', + 'example' => 'true', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"******5A-CAAC-4850-A3AF-B74606******\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<SetDefaultStorageLocationResponse>\\n <RequestId>******5A-CAAC-4850-A3AF-B74606******</RequestId>\\n <Success>true</Success>\\n</SetDefaultStorageLocationResponse>","errorExample":""}]', + 'title' => 'SetDefaultStorageLocation', + ], + 'GetDefaultStorageLocation' => [ + 'summary' => '获取用户默认存储地址', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => '', + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'StorageType' => [ + 'title' => '存储类型', + 'description' => '', + 'type' => 'string', + 'example' => 'user_oss_bucket', + ], + 'Bucket' => [ + 'title' => 'oss bucket 名称', + 'description' => '', + 'type' => 'string', + 'example' => 'oss-test-bucket', + ], + 'Path' => [ + 'title' => '路径', + 'description' => '', + 'type' => 'string', + 'example' => 'ice/dir', + ], + 'Status' => [ + 'title' => '状态', + 'description' => '', + 'type' => 'string', + 'example' => 'normal', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"StorageType\\": \\"user_oss_bucket\\",\\n \\"Bucket\\": \\"oss-test-bucket\\",\\n \\"Path\\": \\"ice/dir\\",\\n \\"Status\\": \\"normal\\"\\n}","errorExample":""},{"type":"xml","example":"<GetDefaultStorageLocationResponse>\\n <RequestId>******11-DB8D-4A9A-875B-275798******</RequestId>\\n <StorageType>user_oss_bucket</StorageType>\\n <Bucket>oss-test-bucket</Bucket>\\n <Path>ice/dir</Path>\\n <Status>normal</Status>\\n</GetDefaultStorageLocationResponse>","errorExample":""}]', + 'title' => 'GetDefaultStorageLocation', + ], + 'DescribePlayList' => [ + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'abilityTreeCode' => '146436', + 'abilityTreeNodes' => [ + 'FEATUREiceM55707', + ], + ], + 'parameters' => [ + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number. Default value: 1.', + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page.', + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'example' => '10', + ], + ], + [ + 'name' => 'TraceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The TraceId of the player.', + 'type' => 'string', + 'required' => false, + 'example' => '0bc5e70516766285805381012d271e', + ], + ], + [ + 'name' => 'BeginTs', + 'in' => 'query', + 'schema' => [ + 'description' => 'The beginning of the time range to query. By default, the system queries data of the current day.', + 'type' => 'string', + 'required' => true, + 'example' => '1676170500011', + ], + ], + [ + 'name' => 'EndTs', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end of the time range to query. The time range cannot exceed 24 hours.', + 'type' => 'string', + 'required' => true, + 'example' => '1682474405173', + ], + ], + [ + 'name' => 'OrderType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The sort order. Valid values:'."\n" + ."\n" + .'- DESC: descending order.'."\n" + .'- ASC: ascending order.', + 'type' => 'string', + 'required' => false, + 'example' => 'DESC', + ], + ], + [ + 'name' => 'OrderName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The criteria by which the sorting is performed. Valid values:'."\n" + ."\n" + .'- FirstFrameDuration'."\n" + .'- PlayDuration'."\n" + .'- VideoDuration'."\n" + .'- StuckDuration', + 'type' => 'string', + 'required' => false, + 'example' => 'FirstFrameDuration', + ], + ], + [ + 'name' => 'PlayType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The playback type. Valid value: '."\n" + ."\n" + .'- vod', + 'type' => 'string', + 'required' => false, + 'example' => 'vod', + ], + ], + [ + 'name' => 'Status', + 'in' => 'query', + 'schema' => [ + 'description' => 'The playback status. Valid values:'."\n" + ."\n" + .'- complete'."\n" + .'- playing'."\n" + .'- unusual: A playback error occurs.', + 'type' => 'string', + 'required' => false, + 'example' => 'complete', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', + 'type' => 'object', + 'properties' => [ + 'TotalNum' => [ + 'description' => 'The total playback count.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '49', + ], + 'RequestId' => [ + 'title' => 'Id', + 'description' => 'The ID of the request.', + 'type' => 'string', + 'example' => 'B960580D-26FA-5547-8AFC-3CDC812DBF27', + ], + 'PageNum' => [ + 'description' => 'The page number.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'PageSize' => [ + 'description' => 'The number of entries per page. Default value: 20. Valid values: 1 to 100.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10', + ], + 'PlayList' => [ + 'description' => 'The playback records.', + 'type' => 'array', + 'items' => [ + 'description' => 'The playback record.', + 'type' => 'object', + 'properties' => [ + 'Status' => [ + 'description' => 'The playback status.', + 'type' => 'string', + 'example' => 'complete', + ], + 'VideoId' => [ + 'description' => 'The ID of the video.', + 'type' => 'string', + 'example' => '250314203f0171eebff17035d0b20102', + ], + 'StuckDuration' => [ + 'description' => 'The stuttering duration.', + 'type' => 'string', + 'example' => '20', + ], + 'PlayDuration' => [ + 'description' => 'The playback duration.', + 'type' => 'string', + 'example' => '1000', + ], + 'FirstFrameDuration' => [ + 'description' => 'Time to first frame.', + 'type' => 'string', + 'example' => '200', + ], + 'TraceId' => [ + 'description' => 'The TraceId of the player.', + 'type' => 'string', + 'example' => '0b736abf16724820210842673d9543', + ], + 'PlayType' => [ + 'description' => 'The playback type.', + 'type' => 'string', + 'example' => 'vod', + ], + 'SessionId' => [ + 'description' => 'The ID of the player session.', + 'type' => 'string', + 'example' => '91488be2-8381-40c9-8494-e8afe22c4a2d', + ], + 'VideoDuration' => [ + 'description' => 'The duration of the video.', + 'type' => 'string', + 'example' => '2000', + ], + 'PlayTs' => [ + 'description' => 'The timestamp when the playback started.', + 'type' => 'string', + 'example' => '1675922209572', + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'Meter.ParamError', + 'errorMessage' => 'Param Error:%s,Please Check Again.', + ], + ], + 403 => [ + [ + 'errorCode' => 'Meter.AuthError', + 'errorMessage' => 'Authentication Failed,Please Try Again.', + ], + ], + 500 => [ + [ + 'errorCode' => 'Meter.ServerInternalError', + 'errorMessage' => 'The Request Processing Has Failed Due To Some Unknown Error.', + ], + [ + 'errorCode' => 'Meter.DataSourceQueryError', + 'errorMessage' => 'Data Source Error:%s,Please Try Again.', + ], + ], + 502 => [ + [ + 'errorCode' => 'Meter.ReadyTsError', + 'errorMessage' => 'Get ReadyTs Failed,Please Try Again.', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"TotalNum\\": 49,\\n \\"RequestId\\": \\"B960580D-26FA-5547-8AFC-3CDC812DBF27\\",\\n \\"PageNum\\": 1,\\n \\"PageSize\\": 10,\\n \\"PlayList\\": [\\n {\\n \\"Status\\": \\"complete\\",\\n \\"VideoId\\": \\"250314203f0171eebff17035d0b20102\\",\\n \\"StuckDuration\\": \\"20\\",\\n \\"PlayDuration\\": \\"1000\\",\\n \\"FirstFrameDuration\\": \\"200\\",\\n \\"TraceId\\": \\"0b736abf16724820210842673d9543\\",\\n \\"PlayType\\": \\"vod\\",\\n \\"SessionId\\": \\"91488be2-8381-40c9-8494-e8afe22c4a2d\\",\\n \\"VideoDuration\\": \\"2000\\",\\n \\"PlayTs\\": \\"1675922209572\\"\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'DescribePlayList', + 'summary' => 'Retrieves playback records based on the player\'s TraceId. This API supports pagination.', + 'responseParamsDescription' => '{'."\n" + .' "code":"200",'."\n" + .' "data":{'."\n" + .' "PlayList":['."\n" + .' {'."\n" + .' "Status":"unusual",'."\n" + .' "PlayTs":1700533661526,'."\n" + .' "PlayDuration":0.0000,'."\n" + .' "VideoId":"11222223333",'."\n" + .' "VideoDuration":227285.0000,'."\n" + .' "PlayType":"vod",'."\n" + .' "TraceId":"1840527851",'."\n" + .' "SessionId":"c031504c-c43c-5628-a1b7-3cddddjhd34370",'."\n" + .' "FirstFrameDuration":220,'."\n" + .' "StuckDuration":0.0000'."\n" + .' }'."\n" + .' ],'."\n" + .' "TotalNum":1,'."\n" + .' "RequestId":"54D95240-6BE7-1BCB-B8FB-27141AE6A5E6",'."\n" + .' "PageNum":1,'."\n" + .' "PageSize":1'."\n" + .' },'."\n" + .' "httpStatusCode":"200",'."\n" + .' "requestId":"54D95240-6BE7-1BCB-B8FB-27141AE6A5E6",'."\n" + .' "successResponse":true'."\n" + .'}', + ], + 'AddFavoritePublicMedia' => [ + 'summary' => '收藏公共媒资', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'MediaIds', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => 'icepublic-****7213c6050cbc66750b469701****,icepublic-****0b4697017213c6050cbc6675****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => '', + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'IgnoredList' => [ + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'icepublic-****7213c6050cbc66750b469701****', + ], + ], + ], + ], + ], + ], + 'staticInfo' => [], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"IgnoredList\\": [\\n \\"icepublic-****7213c6050cbc66750b469701****\\"\\n ]\\n}","errorExample":""},{"type":"xml","example":"<AddFavoritePublicMediaResponse>\\n <RequestId>******11-DB8D-4A9A-875B-275798******</RequestId>\\n <IgnoredList>icepublic-****7213c6050cbc66750b469701****</IgnoredList>\\n</AddFavoritePublicMediaResponse>","errorExample":""}]', + 'title' => 'AddFavoritePublicMedia', + ], + 'CancelFavoritePublicMedia' => [ + 'summary' => '取消收藏公共媒资', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'MediaIds', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => 'icepublic-****7213c6050cbc66750b469701****,icepublic-****0b4697017213c6050cbc6675****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => '', + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'IgnoredList' => [ + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'icepublic-****7213c6050cbc66750b469701****', + ], + ], + ], + ], + ], + ], + 'staticInfo' => [], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"IgnoredList\\": [\\n \\"icepublic-****7213c6050cbc66750b469701****\\"\\n ]\\n}","errorExample":""},{"type":"xml","example":"<CancelFavoritePublicMediaResponse>\\n <RequestId>******11-DB8D-4A9A-875B-275798******</RequestId>\\n <IgnoredList>icepublic-****7213c6050cbc66750b469701****</IgnoredList>\\n</CancelFavoritePublicMediaResponse>","errorExample":""}]', + 'title' => 'CancelFavoritePublicMedia', + ], + 'GetPublicMediaInfo' => [ + 'summary' => '获取公共媒资内容信息', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'Anonymous' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '104901', + 'abilityTreeNodes' => [ + 'FEATUREiceFEJXOS', + ], + ], + 'parameters' => [ + [ + 'name' => 'MediaId', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'example' => 'icepublic-****14e501538aeef0a3140176f6****', + 'required' => false, + 'type' => 'string', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'description' => 'Schema of Response', + 'properties' => [ + 'RequestId' => [ + 'description' => 'RequestId', + 'example' => '******11-DB8D-4A9A-875B-275798******', + 'title' => 'RequestId', + 'type' => 'string', + ], + 'MediaInfo' => [ + 'description' => '', + 'properties' => [ + 'MediaId' => [ + 'description' => '', + 'example' => 'icepublic-****14e501538aeef0a3140176f6****', + 'title' => '媒资ID', + 'type' => 'string', + ], + 'MediaBasicInfo' => [ + 'description' => 'BasicInfo', + 'properties' => [ + 'MediaId' => [ + 'description' => 'MediaId', + 'example' => 'icepublic-****14e501538aeef0a3140176f6****', + 'title' => 'MediaId', + 'type' => 'string', + ], + 'MediaType' => [ + 'description' => '', + 'example' => 'video', + 'title' => '媒资媒体类型', + 'type' => 'string', + ], + 'BusinessType' => [ + 'description' => '', + 'example' => 'general', + 'title' => '媒资业务类型', + 'type' => 'string', + ], + 'Source' => [ + 'description' => '', + 'example' => 'oss', + 'title' => '来源', + 'type' => 'string', + ], + 'Title' => [ + 'description' => '', + 'example' => 'title', + 'title' => '标题', + 'type' => 'string', + ], + 'Description' => [ + 'description' => '', + 'example' => 'description', + 'title' => '内容描述', + 'type' => 'string', + ], + 'Category' => [ + 'description' => '', + 'example' => 'category', + 'title' => '分类', + 'type' => 'string', + ], + 'MediaTags' => [ + 'description' => '', + 'example' => '', + 'title' => '标签', + 'type' => 'string', + ], + 'CoverURL' => [ + 'description' => '', + 'example' => 'http://example-bucket.oss-cn-shanghai.aliyuncs.com/example.png?Expires=<ExpireTime>&OSSAccessKeyId=<OSSAccessKeyId>&Signature=<Signature>&security-token=<SecurityToken>', + 'title' => '封面地址', + 'type' => 'string', + ], + 'UserData' => [ + 'description' => '', + 'example' => '{"key":"value"}', + 'title' => '用户数据', + 'type' => 'string', + ], + 'Status' => [ + 'description' => '', + 'example' => 'Normal', + 'title' => '资源状态', + 'type' => 'string', + ], + 'CreateTime' => [ + 'description' => '', + 'example' => '2020-12-26T04:11:08Z', + 'title' => '媒资创建时间', + 'type' => 'string', + ], + 'ModifiedTime' => [ + 'description' => '', + 'example' => '2020-12-26T04:11:10Z', + 'title' => '媒资修改时间', + 'type' => 'string', + ], + 'DeletedTime' => [ + 'description' => '', + 'example' => '2020-12-26T04:11:15Z', + 'title' => '媒资删除时间', + 'type' => 'string', + ], + 'SpriteImages' => [ + 'description' => '', + 'example' => '[{"bucket":"example-bucket","count":"32","iceJobId":"******83ec44d58b2069def2e******","location":"oss-cn-shanghai","snapshotRegular":"example/example-{Count}.jpg","spriteRegular":"example/example-{TileCount}.jpg","templateId":"******e438b14ff39293eaec25******","tileCount":"1"}]', + 'title' => '雪碧图', + 'type' => 'string', + ], + ], + 'title' => 'BasicInfo', + 'type' => 'object', + ], + 'DynamicMetaData' => [ + 'description' => '', + 'properties' => [ + 'Type' => [ + 'description' => '', + 'example' => 'system', + 'title' => '类型', + 'type' => 'string', + ], + 'Data' => [ + 'description' => '', + 'example' => '{"AuditionUrl": "http://example-bucket.cdn.domain.com/example.mp4", "AuditionCount": 3}', + 'title' => '元数据json', + 'type' => 'string', + ], + ], + 'title' => '公共媒资动态元数据', + 'type' => 'object', + ], + 'FileInfoList' => [ + 'description' => 'FileInfos', + 'items' => [ + 'properties' => [ + 'FileBasicInfo' => [ + 'description' => '', + 'properties' => [ + 'FileName' => [ + 'description' => '', + 'example' => 'example.mp4', + 'title' => '文件名', + 'type' => 'string', + ], + 'FileStatus' => [ + 'description' => '', + 'example' => 'Normal', + 'title' => '文件状态', + 'type' => 'string', + ], + 'FileType' => [ + 'description' => '', + 'example' => 'source_file', + 'title' => '文件类型', + 'type' => 'string', + ], + 'FileSize' => [ + 'description' => '', + 'example' => '27007', + 'title' => '文件大小(字节)', + 'type' => 'string', + ], + 'FileUrl' => [ + 'description' => '', + 'example' => 'http://example-bucket.cdn.domain.com/example.mp4', + 'title' => '文件oss地址', + 'type' => 'string', + ], + 'Region' => [ + 'description' => '', + 'example' => 'cn-shanghai', + 'title' => '文件存储区域', + 'type' => 'string', + ], + 'FormatName' => [ + 'description' => '', + 'example' => 'mp4', + 'title' => '封装格式', + 'type' => 'string', + ], + 'Duration' => [ + 'description' => '', + 'example' => '16.2', + 'title' => '时长', + 'type' => 'string', + ], + 'Bitrate' => [ + 'description' => '', + 'example' => '192.0', + 'title' => '码率', + 'type' => 'string', + ], + 'Width' => [ + 'description' => '', + 'example' => '0', + 'title' => '宽', + 'type' => 'string', + ], + 'Height' => [ + 'description' => '', + 'example' => '0', + 'title' => '高', + 'type' => 'string', + ], + ], + 'title' => '文件基础信息,包含时长,大小等', + 'type' => 'object', + ], + 'AudioStreamInfoList' => [ + 'description' => '', + 'items' => [ + 'properties' => [ + 'Index' => [ + 'description' => '', + 'example' => '1', + 'title' => '音频流序号', + 'type' => 'string', + ], + 'CodecName' => [ + 'description' => '', + 'example' => 'aac', + 'title' => '编码格式简述名', + 'type' => 'string', + ], + 'CodecLongName' => [ + 'description' => '', + 'example' => 'AAC (Advanced Audio Coding)', + 'title' => '编码格式长述名', + 'type' => 'string', + ], + 'CodecTimeBase' => [ + 'description' => '', + 'example' => '1/44100', + 'title' => '编码时基', + 'type' => 'string', + ], + 'CodecTagString' => [ + 'description' => '', + 'example' => 'mp4a', + 'title' => '编码格式标记文本', + 'type' => 'string', + ], + 'CodecTag' => [ + 'description' => '', + 'example' => '0x6134706d', + 'title' => '编码格式标记', + 'type' => 'string', + ], + 'Profile' => [ + 'description' => '', + 'example' => 'High', + 'title' => '编码预置', + 'type' => 'string', + ], + 'SampleFmt' => [ + 'description' => '', + 'example' => 'fltp', + 'title' => '采样格式', + 'type' => 'string', + ], + 'SampleRate' => [ + 'description' => '', + 'example' => '44100', + 'title' => '采样率', + 'type' => 'string', + ], + 'Channels' => [ + 'description' => '', + 'example' => '2', + 'title' => '声道数', + 'type' => 'string', + ], + 'ChannelLayout' => [ + 'description' => '', + 'example' => 'stereo', + 'title' => '声道输出样式', + 'type' => 'string', + ], + 'Timebase' => [ + 'description' => '', + 'example' => '1/44100', + 'title' => '时基', + 'type' => 'string', + ], + 'StartTime' => [ + 'description' => '', + 'example' => '0.000000', + 'title' => '起始时间', + 'type' => 'string', + ], + 'Duration' => [ + 'description' => '', + 'example' => '16.2', + 'title' => '时长', + 'type' => 'string', + ], + 'Bitrate' => [ + 'description' => '', + 'example' => '192.0', + 'title' => '码率', + 'type' => 'string', + ], + 'Fps' => [ + 'description' => '', + 'example' => '10', + 'title' => '音频帧率', + 'type' => 'string', + ], + 'NumFrames' => [ + 'description' => '', + 'example' => '162', + 'title' => '总帧数', + 'type' => 'string', + ], + 'Lang' => [ + 'description' => '', + 'example' => 'und', + 'title' => '语言', + 'type' => 'string', + ], + ], + 'type' => 'object', + ], + 'title' => '音频流信息,一个媒资可能有多条音频流', + 'type' => 'array', + ], + 'VideoStreamInfoList' => [ + 'description' => '', + 'items' => [ + 'properties' => [ + 'Index' => [ + 'description' => '', + 'example' => '0', + 'title' => '视频流序号', + 'type' => 'string', + ], + 'CodecName' => [ + 'description' => '', + 'example' => 'h264', + 'title' => '编码格式简述名', + 'type' => 'string', + ], + 'CodecLongName' => [ + 'description' => '', + 'example' => 'H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10', + 'title' => '编码格式长述名', + 'type' => 'string', + ], + 'Profile' => [ + 'description' => '', + 'example' => 'High', + 'title' => '编码预置', + 'type' => 'string', + ], + 'CodecTimeBase' => [ + 'description' => '', + 'example' => '1/48', + 'title' => '编码时基', + 'type' => 'string', + ], + 'CodecTagString' => [ + 'description' => '', + 'example' => '[0][0][0][0]', + 'title' => '编码格式标记文本', + 'type' => 'string', + ], + 'CodecTag' => [ + 'description' => '', + 'example' => '0x0000', + 'title' => '编码格式标记', + 'type' => 'string', + ], + 'Width' => [ + 'description' => '', + 'example' => '960', + 'title' => '宽', + 'type' => 'string', + ], + 'Height' => [ + 'description' => '', + 'example' => '540', + 'title' => '高', + 'type' => 'string', + ], + 'HasBFrames' => [ + 'description' => '', + 'example' => '2', + 'title' => '是否有B帧', + 'type' => 'string', + ], + 'Sar' => [ + 'description' => '', + 'example' => '0:1', + 'title' => '编码信号分辨率比', + 'type' => 'string', + ], + 'Dar' => [ + 'description' => '', + 'example' => '0:1', + 'title' => '编码显示分辨率比', + 'type' => 'string', + ], + 'PixFmt' => [ + 'description' => '', + 'example' => 'yuv420p', + 'title' => '像素格式', + 'type' => 'string', + ], + 'Level' => [ + 'description' => '', + 'example' => '30', + 'title' => '编码等级', + 'type' => 'string', + ], + 'Fps' => [ + 'description' => '', + 'example' => '24.0', + 'title' => '视频帧率', + 'type' => 'string', + ], + 'AvgFPS' => [ + 'description' => '', + 'example' => '24.0', + 'title' => '平均帧率', + 'type' => 'string', + ], + 'Timebase' => [ + 'description' => '', + 'example' => '1/12288', + 'title' => '时基', + 'type' => 'string', + ], + 'StartTime' => [ + 'description' => '', + 'example' => '0.081706', + 'title' => '起始时间', + 'type' => 'string', + ], + 'Duration' => [ + 'description' => '', + 'example' => '216.206706', + 'title' => '时长', + 'type' => 'string', + ], + 'Bitrate' => [ + 'description' => '', + 'example' => '1001.594', + 'title' => '码率', + 'type' => 'string', + ], + 'NumFrames' => [ + 'description' => '', + 'example' => '5184', + 'title' => '总帧数', + 'type' => 'string', + ], + 'Lang' => [ + 'description' => '', + 'example' => 'und', + 'title' => '语言', + 'type' => 'string', + ], + 'Rotate' => [ + 'description' => '', + 'example' => '0', + 'title' => '旋转', + 'type' => 'string', + ], + 'Nb_frames' => [ + 'description' => '', + 'example' => '5184', + 'title' => '总帧数', + 'type' => 'string', + ], + ], + 'type' => 'object', + ], + 'title' => '视频流信息,一个媒资可能有多条视频流', + 'type' => 'array', + ], + 'SubtitleStreamInfoList' => [ + 'description' => '', + 'items' => [ + 'properties' => [ + 'Index' => [ + 'description' => '', + 'example' => '1', + 'title' => '音频流序号', + 'type' => 'string', + ], + 'CodecName' => [ + 'description' => '', + 'example' => 'srt', + 'title' => '编码格式简述名', + 'type' => 'string', + ], + 'CodecLongName' => [ + 'description' => '', + 'example' => 'SubRip Text', + 'title' => '编码格式长述名', + 'type' => 'string', + ], + 'CodecTimeBase' => [ + 'description' => '', + 'example' => '29.97', + 'title' => '编码时基', + 'type' => 'string', + ], + 'CodecTagString' => [ + 'description' => '', + 'example' => 'unicode', + 'title' => '编码格式标记文本', + 'type' => 'string', + ], + 'CodecTag' => [ + 'description' => '', + 'example' => 'unicode', + 'title' => '编码格式标记', + 'type' => 'string', + ], + 'Timebase' => [ + 'description' => '', + 'example' => '30', + 'title' => '时基', + 'type' => 'string', + ], + 'StartTime' => [ + 'description' => '', + 'example' => '0', + 'title' => '起始时间', + 'type' => 'string', + ], + 'Duration' => [ + 'description' => '', + 'example' => '1', + 'title' => '时长', + 'type' => 'string', + ], + 'Lang' => [ + 'description' => '', + 'example' => 'und', + 'title' => '语言', + 'type' => 'string', + ], + ], + 'type' => 'object', + ], + 'title' => '字幕流信息,一个媒资可能有多条字幕流', + 'type' => 'array', + ], + ], + 'type' => 'object', + ], + 'title' => 'FileInfos', + 'type' => 'array', + ], + ], + 'type' => 'object', + ], + ], + 'title' => 'Schema of Response', + 'type' => 'object', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"MediaInfo\\": {\\n \\"MediaId\\": \\"icepublic-****14e501538aeef0a3140176f6****\\",\\n \\"MediaBasicInfo\\": {\\n \\"MediaId\\": \\"icepublic-****14e501538aeef0a3140176f6****\\",\\n \\"MediaType\\": \\"video\\",\\n \\"BusinessType\\": \\"general\\",\\n \\"Source\\": \\"oss\\",\\n \\"Title\\": \\"title\\",\\n \\"Description\\": \\"description\\",\\n \\"Category\\": \\"category\\",\\n \\"MediaTags\\": \\"标签,tag1\\",\\n \\"CoverURL\\": \\"http://example-bucket.oss-cn-shanghai.aliyuncs.com/example.png?Expires=<ExpireTime>&OSSAccessKeyId=<OSSAccessKeyId>&Signature=<Signature>&security-token=<SecurityToken>\\",\\n \\"UserData\\": \\"{\\\\\\"key\\\\\\":\\\\\\"value\\\\\\"}\\",\\n \\"Status\\": \\"Normal\\",\\n \\"CreateTime\\": \\"2020-12-26T04:11:08Z\\",\\n \\"ModifiedTime\\": \\"2020-12-26T04:11:10Z\\",\\n \\"DeletedTime\\": \\"2020-12-26T04:11:15Z\\",\\n \\"SpriteImages\\": \\"[{\\\\\\"bucket\\\\\\":\\\\\\"example-bucket\\\\\\",\\\\\\"count\\\\\\":\\\\\\"32\\\\\\",\\\\\\"iceJobId\\\\\\":\\\\\\"******83ec44d58b2069def2e******\\\\\\",\\\\\\"location\\\\\\":\\\\\\"oss-cn-shanghai\\\\\\",\\\\\\"snapshotRegular\\\\\\":\\\\\\"example/example-{Count}.jpg\\\\\\",\\\\\\"spriteRegular\\\\\\":\\\\\\"example/example-{TileCount}.jpg\\\\\\",\\\\\\"templateId\\\\\\":\\\\\\"******e438b14ff39293eaec25******\\\\\\",\\\\\\"tileCount\\\\\\":\\\\\\"1\\\\\\"}]\\"\\n },\\n \\"DynamicMetaData\\": {\\n \\"Type\\": \\"system\\",\\n \\"Data\\": \\"{\\\\\\"AuditionUrl\\\\\\": \\\\\\"http://example-bucket.cdn.domain.com/example.mp4\\\\\\", \\\\\\"AuditionCount\\\\\\": 3}\\"\\n },\\n \\"FileInfoList\\": [\\n {\\n \\"FileBasicInfo\\": {\\n \\"FileName\\": \\"example.mp4\\",\\n \\"FileStatus\\": \\"Normal\\",\\n \\"FileType\\": \\"source_file\\",\\n \\"FileSize\\": \\"27007\\",\\n \\"FileUrl\\": \\"http://example-bucket.cdn.domain.com/example.mp4\\",\\n \\"Region\\": \\"cn-shanghai\\",\\n \\"FormatName\\": \\"mp4\\",\\n \\"Duration\\": \\"16.2\\",\\n \\"Bitrate\\": \\"192.0\\",\\n \\"Width\\": \\"0\\",\\n \\"Height\\": \\"0\\"\\n },\\n \\"AudioStreamInfoList\\": [\\n {\\n \\"Index\\": \\"1\\",\\n \\"CodecName\\": \\"aac\\",\\n \\"CodecLongName\\": \\"AAC (Advanced Audio Coding)\\",\\n \\"CodecTimeBase\\": \\"1/44100\\",\\n \\"CodecTagString\\": \\"mp4a\\",\\n \\"CodecTag\\": \\"0x6134706d\\",\\n \\"Profile\\": \\"High\\",\\n \\"SampleFmt\\": \\"fltp\\",\\n \\"SampleRate\\": \\"44100\\",\\n \\"Channels\\": \\"2\\",\\n \\"ChannelLayout\\": \\"stereo\\",\\n \\"Timebase\\": \\"1/44100\\",\\n \\"StartTime\\": \\"0.000000\\",\\n \\"Duration\\": \\"16.2\\",\\n \\"Bitrate\\": \\"192.0\\",\\n \\"Fps\\": \\"10\\",\\n \\"NumFrames\\": \\"162\\",\\n \\"Lang\\": \\"und\\"\\n }\\n ],\\n \\"VideoStreamInfoList\\": [\\n {\\n \\"Index\\": \\"0\\",\\n \\"CodecName\\": \\"h264\\",\\n \\"CodecLongName\\": \\"H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10\\",\\n \\"Profile\\": \\"High\\",\\n \\"CodecTimeBase\\": \\"1/48\\",\\n \\"CodecTagString\\": \\"[0][0][0][0]\\",\\n \\"CodecTag\\": \\"0x0000\\",\\n \\"Width\\": \\"960\\",\\n \\"Height\\": \\"540\\",\\n \\"HasBFrames\\": \\"2\\",\\n \\"Sar\\": \\"0:1\\",\\n \\"Dar\\": \\"0:1\\",\\n \\"PixFmt\\": \\"yuv420p\\",\\n \\"Level\\": \\"30\\",\\n \\"Fps\\": \\"24.0\\",\\n \\"AvgFPS\\": \\"24.0\\",\\n \\"Timebase\\": \\"1/12288\\",\\n \\"StartTime\\": \\"0.081706\\",\\n \\"Duration\\": \\"216.206706\\",\\n \\"Bitrate\\": \\"1001.594\\",\\n \\"NumFrames\\": \\"5184\\",\\n \\"Lang\\": \\"und\\",\\n \\"Rotate\\": \\"0\\",\\n \\"Nb_frames\\": \\"5184\\"\\n }\\n ],\\n \\"SubtitleStreamInfoList\\": [\\n {\\n \\"Index\\": \\"1\\",\\n \\"CodecName\\": \\"srt\\",\\n \\"CodecLongName\\": \\"SubRip Text\\",\\n \\"CodecTimeBase\\": \\"29.97\\",\\n \\"CodecTagString\\": \\"unicode\\",\\n \\"CodecTag\\": \\"unicode\\",\\n \\"Timebase\\": \\"30\\",\\n \\"StartTime\\": \\"0\\",\\n \\"Duration\\": \\"1\\",\\n \\"Lang\\": \\"und\\"\\n }\\n ]\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<GetPublicMediaInfoResponse>\\n <RequestId>******11-DB8D-4A9A-875B-275798******</RequestId>\\n <MediaInfo>\\n <MediaId>icepublic-****14e501538aeef0a3140176f6****</MediaId>\\n <MediaBasicInfo>\\n <MediaId>icepublic-****14e501538aeef0a3140176f6****</MediaId>\\n <MediaType>video</MediaType>\\n <BusinessType>general</BusinessType>\\n <Source>oss</Source>\\n <Title>title</Title>\\n <Description>description</Description>\\n <Category>category</Category>\\n <MediaTags>标签,tag1</MediaTags>\\n <CoverURL>http://example-bucket.oss-cn-shanghai.aliyuncs.com/example.png?Expires=<ExpireTime>&OSSAccessKeyId=<OSSAccessKeyId>&Signature=<Signature>&security-token=<SecurityToken></CoverURL>\\n <UserData>{\\"key\\":\\"value\\"}</UserData>\\n <Status>Normal</Status>\\n <CreateTime>2020-12-26T04:11:08Z</CreateTime>\\n <ModifiedTime>2020-12-26T04:11:10Z</ModifiedTime>\\n <DeletedTime>2020-12-26T04:11:15Z</DeletedTime>\\n <SpriteImages>[{\\"bucket\\":\\"example-bucket\\",\\"count\\":\\"32\\",\\"iceJobId\\":\\"******83ec44d58b2069def2e******\\",\\"location\\":\\"oss-cn-shanghai\\",\\"snapshotRegular\\":\\"example/example-{Count}.jpg\\",\\"spriteRegular\\":\\"example/example-{TileCount}.jpg\\",\\"templateId\\":\\"******e438b14ff39293eaec25******\\",\\"tileCount\\":\\"1\\"}]</SpriteImages>\\n </MediaBasicInfo>\\n <DynamicMetaData>\\n <Type>system</Type>\\n <Data>{\\"AuditionUrl\\": \\"http://example-bucket.cdn.domain.com/example.mp4\\", \\"AuditionCount\\": 3}</Data>\\n </DynamicMetaData>\\n <FileInfoList>\\n <FileBasicInfo>\\n <FileName>example.mp4</FileName>\\n <FileStatus>Normal</FileStatus>\\n <FileType>source_file</FileType>\\n <FileSize>27007</FileSize>\\n <FileUrl>http://example-bucket.cdn.domain.com/example.mp4</FileUrl>\\n <Region>cn-shanghai</Region>\\n <FormatName>mp4</FormatName>\\n <Duration>16.2</Duration>\\n <Bitrate>192.0</Bitrate>\\n <Width>0</Width>\\n <Height>0</Height>\\n </FileBasicInfo>\\n <AudioStreamInfoList>\\n <Index>1</Index>\\n <CodecName>aac</CodecName>\\n <CodecLongName>AAC (Advanced Audio Coding)</CodecLongName>\\n <CodecTimeBase>1/44100</CodecTimeBase>\\n <CodecTagString>mp4a</CodecTagString>\\n <CodecTag>0x6134706d</CodecTag>\\n <Profile>High</Profile>\\n <SampleFmt>fltp</SampleFmt>\\n <SampleRate>44100</SampleRate>\\n <Channels>2</Channels>\\n <ChannelLayout>stereo</ChannelLayout>\\n <Timebase>1/44100</Timebase>\\n <StartTime>0.000000</StartTime>\\n <Duration>16.2</Duration>\\n <Bitrate>192.0</Bitrate>\\n <Fps>10</Fps>\\n <NumFrames>162</NumFrames>\\n <Lang>und</Lang>\\n </AudioStreamInfoList>\\n <VideoStreamInfoList>\\n <Index>0</Index>\\n <CodecName>h264</CodecName>\\n <CodecLongName>H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10</CodecLongName>\\n <Profile>High</Profile>\\n <CodecTimeBase>1/48</CodecTimeBase>\\n <CodecTagString>[0][0][0][0]</CodecTagString>\\n <CodecTag>0x0000</CodecTag>\\n <Width>960</Width>\\n <Height>540</Height>\\n <HasBFrames>2</HasBFrames>\\n <Sar>0:1</Sar>\\n <Dar>0:1</Dar>\\n <PixFmt>yuv420p</PixFmt>\\n <Level>30</Level>\\n <Fps>24.0</Fps>\\n <AvgFPS>24.0</AvgFPS>\\n <Timebase>1/12288</Timebase>\\n <StartTime>0.081706</StartTime>\\n <Duration>216.206706</Duration>\\n <Bitrate>1001.594</Bitrate>\\n <NumFrames>5184</NumFrames>\\n <Lang>und</Lang>\\n <Rotate>0</Rotate>\\n <Nb_frames>5184</Nb_frames>\\n </VideoStreamInfoList>\\n <SubtitleStreamInfoList>\\n <Index>1</Index>\\n <CodecName>srt</CodecName>\\n <CodecLongName>SubRip Text</CodecLongName>\\n <CodecTimeBase>29.97</CodecTimeBase>\\n <CodecTagString>unicode</CodecTagString>\\n <CodecTag>unicode</CodecTag>\\n <Timebase>30</Timebase>\\n <StartTime>0</StartTime>\\n <Duration>1</Duration>\\n <Lang>und</Lang>\\n </SubtitleStreamInfoList>\\n </FileInfoList>\\n </MediaInfo>\\n</GetPublicMediaInfoResponse>","errorExample":""}]', + 'title' => 'GetPublicMediaInfo', + ], + 'SearchPublicMediaInfo' => [ + 'summary' => '搜索公共媒资信息', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'MediaIds', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => '****20b48fb04483915d4f2cd8ac****,****15d4a4b0448391508f2cb486****', + ], + ], + [ + 'name' => 'DynamicMetaDataMatchFields', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => '"ApprovalStatus=\'Available\'&MaterialBags=\'boutiquemusic\'&Mood=\'Nervous\'"', + ], + ], + [ + 'name' => 'Favorite', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + [ + 'name' => 'Authorized', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + [ + 'name' => 'SortBy', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => 'UsageCount:Desc,UnitPrice:Asc', + ], + ], + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '10', + ], + ], + [ + 'name' => 'EntityId', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => 'Copyright_Music', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => '', + 'type' => 'string', + 'example' => '****3CFB-2767-54FD-B311-BD15A4C1****', + ], + 'TotalCount' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '100', + ], + 'PublicMediaInfos' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Authorized' => [ + 'description' => '', + 'type' => 'boolean', + 'example' => 'true', + ], + 'Favorite' => [ + 'description' => '', + 'type' => 'boolean', + 'example' => 'true', + ], + 'RemainingAuthTime' => [ + 'description' => '', + 'type' => 'string', + 'example' => '100', + ], + 'MediaInfo' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'MediaId' => [ + 'title' => '媒资ID', + 'description' => '', + 'type' => 'string', + 'example' => 'icepublic-****87b921bb4a55908a72a0537e****', + ], + 'MediaBasicInfo' => [ + 'title' => 'BasicInfo', + 'description' => 'BasicInfo', + 'type' => 'object', + 'properties' => [ + 'MediaId' => [ + 'title' => 'MediaId', + 'description' => 'MediaId', + 'type' => 'string', + 'example' => 'icepublic-****87b921bb4a55908a72a0537e****', + ], + 'MediaType' => [ + 'title' => '媒资媒体类型', + 'description' => '', + 'type' => 'string', + 'example' => 'audio', + ], + 'BusinessType' => [ + 'title' => '媒资业务类型', + 'description' => '', + 'type' => 'string', + 'example' => 'general', + ], + 'Source' => [ + 'title' => '来源', + 'description' => '', + 'type' => 'string', + 'example' => 'oss', + ], + 'Title' => [ + 'title' => '标题', + 'description' => '', + 'type' => 'string', + 'example' => 'title', + ], + 'Description' => [ + 'title' => '内容描述', + 'description' => '', + 'type' => 'string', + 'example' => 'description', + ], + 'Category' => [ + 'title' => '分类', + 'description' => '', + 'type' => 'string', + 'example' => 'category', + ], + 'MediaTags' => [ + 'title' => '标签', + 'description' => '', + 'type' => 'string', + 'example' => '', + ], + 'CoverURL' => [ + 'title' => '封面地址', + 'description' => '', + 'type' => 'string', + 'example' => 'http://example-bucket.oss-cn-shanghai.aliyuncs.com/example.png?Expires=<ExpireTime>&OSSAccessKeyId=<OSSAccessKeyId>&Signature=<Signature>&security-token=<SecurityToken>', + ], + 'UserData' => [ + 'title' => '用户数据', + 'description' => '', + 'type' => 'string', + 'example' => 'userDataTest', + ], + 'Status' => [ + 'title' => '资源状态', + 'description' => '', + 'type' => 'string', + 'example' => 'Normal', + ], + 'CreateTime' => [ + 'title' => '媒资创建时间', + 'description' => '', + 'type' => 'string', + 'example' => '2020-12-26T06:04:49Z', + ], + 'ModifiedTime' => [ + 'title' => '媒资修改时间', + 'description' => '', + 'type' => 'string', + 'example' => '2020-12-26T06:04:50Z', + ], + 'DeletedTime' => [ + 'title' => '媒资删除时间', + 'description' => '', + 'type' => 'string', + 'example' => '2020-12-29T06:04:49Z', + ], + 'SpriteImages' => [ + 'title' => '雪碧图', + 'description' => '', + 'type' => 'string', + 'example' => '[{"bucket":"example-bucket","count":"32","iceJobId":"******83ec44d58b2069def2e******","location":"oss-cn-shanghai","snapshotRegular":"example/example-{Count}.jpg","spriteRegular":"example/example-{TileCount}.jpg","templateId":"******e438b14ff39293eaec25******","tileCount":"1"}]', + ], + ], + ], + 'DynamicMetaData' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'Data' => [ + 'description' => '', + 'type' => 'string', + 'example' => '"{\\"AuditionUrl\\": \\"http://xxx\\", \\"AuditionCount\\": 3...}"', + ], + 'Type' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'system', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'staticInfo' => [], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"****3CFB-2767-54FD-B311-BD15A4C1****\\",\\n \\"TotalCount\\": 100,\\n \\"PublicMediaInfos\\": [\\n {\\n \\"Authorized\\": true,\\n \\"Favorite\\": true,\\n \\"RemainingAuthTime\\": \\"100\\",\\n \\"MediaInfo\\": {\\n \\"MediaId\\": \\"icepublic-****87b921bb4a55908a72a0537e****\\",\\n \\"MediaBasicInfo\\": {\\n \\"MediaId\\": \\"icepublic-****87b921bb4a55908a72a0537e****\\",\\n \\"MediaType\\": \\"audio\\",\\n \\"BusinessType\\": \\"general\\",\\n \\"Source\\": \\"oss\\",\\n \\"Title\\": \\"title\\",\\n \\"Description\\": \\"description\\",\\n \\"Category\\": \\"category\\",\\n \\"MediaTags\\": \\"标签,tag1\\",\\n \\"CoverURL\\": \\"http://example-bucket.oss-cn-shanghai.aliyuncs.com/example.png?Expires=<ExpireTime>&OSSAccessKeyId=<OSSAccessKeyId>&Signature=<Signature>&security-token=<SecurityToken>\\",\\n \\"UserData\\": \\"userDataTest\\",\\n \\"Status\\": \\"Normal\\",\\n \\"CreateTime\\": \\"2020-12-26T06:04:49Z\\",\\n \\"ModifiedTime\\": \\"2020-12-26T06:04:50Z\\",\\n \\"DeletedTime\\": \\"2020-12-29T06:04:49Z\\",\\n \\"SpriteImages\\": \\"[{\\\\\\"bucket\\\\\\":\\\\\\"example-bucket\\\\\\",\\\\\\"count\\\\\\":\\\\\\"32\\\\\\",\\\\\\"iceJobId\\\\\\":\\\\\\"******83ec44d58b2069def2e******\\\\\\",\\\\\\"location\\\\\\":\\\\\\"oss-cn-shanghai\\\\\\",\\\\\\"snapshotRegular\\\\\\":\\\\\\"example/example-{Count}.jpg\\\\\\",\\\\\\"spriteRegular\\\\\\":\\\\\\"example/example-{TileCount}.jpg\\\\\\",\\\\\\"templateId\\\\\\":\\\\\\"******e438b14ff39293eaec25******\\\\\\",\\\\\\"tileCount\\\\\\":\\\\\\"1\\\\\\"}]\\"\\n },\\n \\"DynamicMetaData\\": {\\n \\"Data\\": \\"\\\\\\"{\\\\\\\\\\\\\\"AuditionUrl\\\\\\\\\\\\\\": \\\\\\\\\\\\\\"http://xxx\\\\\\\\\\\\\\", \\\\\\\\\\\\\\"AuditionCount\\\\\\\\\\\\\\": 3...}\\\\\\"\\",\\n \\"Type\\": \\"system\\"\\n }\\n }\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<SearchPublicMediaInfoResponse>\\n <RequestId>****3CFB-2767-54FD-B311-BD15A4C1****</RequestId>\\n <TotalCount>100</TotalCount>\\n <PublicMediaInfos>\\n <Authorized>true</Authorized>\\n <Favorite>true</Favorite>\\n <RemainingAuthTime>100</RemainingAuthTime>\\n <MediaInfo>\\n <MediaId>icepublic-****87b921bb4a55908a72a0537e****</MediaId>\\n <MediaBasicInfo>\\n <MediaId>icepublic-****87b921bb4a55908a72a0537e****</MediaId>\\n <MediaType>audio</MediaType>\\n <BusinessType>general</BusinessType>\\n <Source>oss</Source>\\n <Title>title</Title>\\n <Description>description</Description>\\n <Category>category</Category>\\n <MediaTags>标签,tag1</MediaTags>\\n <CoverURL>http://example-bucket.oss-cn-shanghai.aliyuncs.com/example.png?Expires=<ExpireTime>&OSSAccessKeyId=<OSSAccessKeyId>&Signature=<Signature>&security-token=<SecurityToken></CoverURL>\\n <UserData>userDataTest</UserData>\\n <Status>Normal</Status>\\n <CreateTime>2020-12-26T06:04:49Z</CreateTime>\\n <ModifiedTime>2020-12-26T06:04:50Z</ModifiedTime>\\n <DeletedTime>2020-12-29T06:04:49Z</DeletedTime>\\n <SpriteImages>[{\\"bucket\\":\\"example-bucket\\",\\"count\\":\\"32\\",\\"iceJobId\\":\\"******83ec44d58b2069def2e******\\",\\"location\\":\\"oss-cn-shanghai\\",\\"snapshotRegular\\":\\"example/example-{Count}.jpg\\",\\"spriteRegular\\":\\"example/example-{TileCount}.jpg\\",\\"templateId\\":\\"******e438b14ff39293eaec25******\\",\\"tileCount\\":\\"1\\"}]</SpriteImages>\\n </MediaBasicInfo>\\n <DynamicMetaData>\\n <Data>\\"{\\\\\\"AuditionUrl\\\\\\": \\\\\\"http://xxx\\\\\\", \\\\\\"AuditionCount\\\\\\": 3...}\\"</Data>\\n <Type>system</Type>\\n </DynamicMetaData>\\n </MediaInfo>\\n </PublicMediaInfos>\\n</SearchPublicMediaInfoResponse>","errorExample":""}]', + 'title' => 'SearchPublicMediaInfo', + ], + 'GetStorageList' => [ + 'summary' => 'Obtains storage configurations.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'AppId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The application ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'app-****', + ], + ], + [ + 'name' => 'StorageType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The storage type.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'vod_oss_bucket', + ], + ], + [ + 'name' => 'Status', + 'in' => 'query', + 'schema' => [ + 'description' => 'The OSS storage status.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'Normal', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '******73-8B78-5D86-A50C-49B96C******', + ], + 'StorageInfoList' => [ + 'description' => 'The storage configurations.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'AppId' => [ + 'description' => 'The application ID.'."\n", + 'type' => 'string', + 'example' => 'app-****', + ], + 'StorageLocation' => [ + 'description' => 'The bucket.'."\n", + 'type' => 'string', + 'example' => 'your-bucket', + ], + 'Path' => [ + 'description' => 'The file path.'."\n", + 'type' => 'string', + 'example' => 'your-path/', + ], + 'StorageType' => [ + 'description' => 'The storage type.'."\n", + 'type' => 'string', + 'example' => 'vod_oss_bucket', + ], + 'Status' => [ + 'description' => 'The OSS storage status.'."\n", + 'type' => 'string', + 'example' => 'Normal', + ], + 'DefaultStorage' => [ + 'description' => 'Indicates whether it is the default storage location.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'EditingTempFileStorage' => [ + 'description' => 'Indicates whether temporary files created during editing processes are stored in this location.'."\n", + 'type' => 'boolean', + 'example' => 'false', + ], + 'CreationTime' => [ + 'description' => 'The time when the configuration was created.'."\n", + 'type' => 'string', + 'example' => '2024-06-06T01:55:07Z', + ], + 'ModifiedTime' => [ + 'description' => 'The time when the configuration was last modified.'."\n", + 'type' => 'string', + 'example' => '2024-06-06T03:07:07Z', + ], + ], + 'description' => '', + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******73-8B78-5D86-A50C-49B96C******\\",\\n \\"StorageInfoList\\": [\\n {\\n \\"AppId\\": \\"app-****\\",\\n \\"StorageLocation\\": \\"your-bucket\\",\\n \\"Path\\": \\"your-path/\\",\\n \\"StorageType\\": \\"vod_oss_bucket\\",\\n \\"Status\\": \\"Normal\\",\\n \\"DefaultStorage\\": true,\\n \\"EditingTempFileStorage\\": false,\\n \\"CreationTime\\": \\"2024-06-06T01:55:07Z\\",\\n \\"ModifiedTime\\": \\"2024-06-06T03:07:07Z\\"\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'GetStorageList', + ], + 'SearchEditingProject' => [ + 'summary' => 'Queries online editing projects by creation time and status.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'title' => 'CreateTime(创建时间)的开始时间', + 'description' => 'The beginning of the time range to query. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2017-01-11T12:00:00Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'title' => 'CreationTime(创建时间)的结束时间', + 'description' => 'The end of the time range to query. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2017-01-11T12:00:00Z', + ], + ], + [ + 'name' => 'Status', + 'in' => 'query', + 'schema' => [ + 'title' => '云剪辑工程状态。多个用逗号分隔', + 'description' => 'The status of the online editing project. Separate multiple values with commas (,). By default, all online editing projects are queried.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'\\-Draft'."\n" + ."\n" + .'\\-Producing'."\n" + ."\n" + .'\\-Produced'."\n" + ."\n" + .'\\-ProduceFailed'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'Draft' => '', + 'Produced' => '', + 'Producing' => '', + 'ProduceFailed' => '', + ], + 'example' => 'Producing', + ], + ], + [ + 'name' => 'SortBy', + 'in' => 'query', + 'schema' => [ + 'title' => '结果排序方式', + 'description' => 'The sorting rule of results. Valid values:'."\n" + ."\n" + .'\\- CreationTime:Desc (default): The results are sorted in reverse chronological order based on the creation time.'."\n" + ."\n" + .'\\- CreationTime:Asc: The results are sorted in chronological order based on the creation time.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'CreationTime:Asc' => '', + 'CreationTime:Desc' => '', + ], + 'example' => 'CreationTime:Desc', + ], + ], + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'title' => '分页参数', + 'description' => 'The page number. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'deprecated' => false, + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'title' => '分页参数', + 'description' => 'The number of entries per page. Default value: 10. Valid values: 1 to 100.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '10', + ], + ], + [ + 'name' => 'CreateSource', + 'in' => 'query', + 'schema' => [ + 'title' => '创建来源', + 'description' => 'The source of the project.'."\n" + ."\n" + .'\\-OpenAPI'."\n" + ."\n" + .'\\-AliyunConsole'."\n" + ."\n" + .'\\-WebSDK'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* AliyunConsole: The project is created in the Alibaba Cloud console.'."\n" + .'* WebSDK: The project is created by using the SDK for Web.'."\n" + .'* OpenAPI: The project is created by calling API operations.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'AliyunConsole' => '', + 'WebSDK' => '', + 'OpenAPI' => '', + ], + 'example' => 'WebSDK', + ], + ], + [ + 'name' => 'TemplateType', + 'in' => 'query', + 'schema' => [ + 'title' => '模板类型', + 'description' => 'The template type. Valid values:'."\n" + ."\n" + .'\\-Timeline'."\n" + ."\n" + .'\\-VETemplate'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* Timeline: regular template.'."\n" + .'* VETemplate: advanced template.'."\n" + .'* None: No template is used.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'Timeline' => '', + 'VETemplate' => '', + 'None' => '', + ], + 'example' => 'Timeline', + ], + ], + [ + 'name' => 'ProjectType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of the editing project. Default value: EditingProject. Valid values:'."\n" + ."\n" + .'* EditingProject: a regular editing project.'."\n" + .'* LiveEditingProject: a live stream editing project.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'LiveEditingProject' => '', + 'EditingProject' => '', + ], + 'example' => 'EditingProject', + ], + ], + ], + 'responses' => [ + 200 => [ + 'headers' => [], + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '****9262E3DA-07FA-4862-FCBB6BC61D08*****', + ], + 'ProjectList' => [ + 'title' => '云剪辑工程列表', + 'description' => 'The queried online editing projects.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'ProjectId' => [ + 'title' => '云剪辑工程ID', + 'description' => 'The ID of the online editing project.'."\n", + 'type' => 'string', + 'example' => '****fddd7748b58bf1d47e95****', + ], + 'Title' => [ + 'title' => '云剪辑工程标题', + 'description' => 'The title of the online editing project.'."\n", + 'type' => 'string', + 'example' => 'title', + ], + 'Timeline' => [ + 'title' => '云剪辑工程时间线', + 'description' => 'The timeline of the online editing project.'."\n", + 'type' => 'string', + 'example' => '{"VideoTracks":[{"VideoTrackClips":[{"MediaId":"****4d7cf14dc7b83b0e801c****"},{"MediaId":"****4d7cf14dc7b83b0e801c****"}]}]}', + ], + 'Description' => [ + 'title' => '云剪辑工程描述', + 'description' => 'The description of the online editing project.'."\n", + 'type' => 'string', + 'example' => 'sample description', + ], + 'CoverURL' => [ + 'title' => '云剪辑工程封面', + 'description' => 'The thumbnail URL of the online editing project.'."\n", + 'type' => 'string', + 'example' => 'http://example-bucket.oss-cn-shanghai.aliyuncs.com/example-cover.jpg', + ], + 'CreateTime' => [ + 'title' => '云剪辑工程创建时间', + 'description' => 'The time when the online editing project was created.'."\n", + 'type' => 'string', + 'example' => '2017-01-11T12:00:00Z', + ], + 'ModifiedTime' => [ + 'title' => '云剪辑工程最新修改时间', + 'description' => 'The time when the online editing project was last modified.'."\n", + 'type' => 'string', + 'example' => '2017-01-11T12:00:00Z', + ], + 'Duration' => [ + 'title' => '云剪辑工程总时长', + 'description' => 'The total length of the online editing project. Unit: seconds.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '30.100000', + ], + 'Status' => [ + 'title' => '云剪辑工程状态', + 'description' => 'The status of the online editing project. Valid values:'."\n" + ."\n" + .'\\-Draft'."\n" + ."\n" + .'\\-Editing'."\n" + ."\n" + .'\\-Producing'."\n" + ."\n" + .'\\-Produced'."\n" + ."\n" + .'\\-ProduceFailed'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* Draft'."\n" + .'* Produced'."\n" + .'* Editing'."\n" + .'* Producing'."\n" + .'* ProduceFailed'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'Draft' => '', + 'Produced' => '', + 'Editing' => '', + 'Producing' => '', + 'ProduceFailed' => '', + ], + 'example' => 'PRODUCE_FAILED', + ], + 'ErrorCode' => [ + 'title' => '云剪辑工程合成失败的错误码', + 'description' => 'The error code returned if the production of the online editing project failed.'."\n", + 'type' => 'string', + 'example' => 'InvalidParameter', + ], + 'ErrorMessage' => [ + 'title' => '云剪辑工程合成失败的消息', + 'description' => 'The error message returned if the production of the online editing project failed.'."\n", + 'type' => 'string', + 'example' => '"EventTime":"2021-08-12T10:04:15Z","ErrorCode":"InvalidParameter","ErrorMessage":"The specified parameter \\"LiveStreamConfig\\" is not valid. specified parameter example is not valid.', + ], + 'CreateSource' => [ + 'title' => '创建来源', + 'description' => 'The method for editing the online editing project.'."\n" + ."\n" + .'\\-OpenAPI'."\n" + ."\n" + .'\\-AliyunConsole'."\n" + ."\n" + .'\\-WebSDK'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* AliyunConsole: The project is created in the Alibaba Cloud console.'."\n" + .'* WebSDK: The project is created by using the SDK for Web.'."\n" + .'* OpenAPI: The project is created by calling API operations.'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'AliyunConsole' => '', + 'WebSDK' => '', + 'OpenAPI' => '', + ], + 'example' => 'OpenAPI', + ], + 'ModifiedSource' => [ + 'title' => '最后一次修改来源', + 'description' => 'The method used when the online editing project was last modified.'."\n", + 'type' => 'string', + 'example' => '2017-01-11T12:00:00Z', + ], + 'TemplateType' => [ + 'title' => '模板类型', + 'description' => 'The type of the template.'."\n", + 'type' => 'string', + 'example' => 'Timeline', + ], + 'ProjectType' => [ + 'description' => 'The type of the editing project.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* LiveEditingProject: a live stream editing project.'."\n" + .'* EditingProject: a regular editing project.'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'LiveEditingProject' => '', + 'EditingProject' => '', + ], + 'example' => 'EditingProject', + ], + 'BusinessConfig' => [ + 'description' => 'The business configuration of the project. This parameter can be ignored for general editing projects.'."\n", + 'type' => 'string', + 'example' => '{ "OutputMediaConfig" : { "StorageLocation": "test-bucket.oss-cn-shanghai.aliyuncs.com", "Path": "test-path" }, "OutputMediaTarget": "oss-object", "ReservationTime": "2021-06-21T08:05:00Z" }', + ], + 'BusinessStatus' => [ + 'description' => 'The business status of the project. This parameter can be ignored for general editing projects. Valid values:'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* BroadCasting:'."\n" + .'* ReservationCanceled'."\n" + .'* LiveFinished'."\n" + .'* LoadingFailed'."\n" + .'* Reserving'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'BroadCasting' => '', + 'ReservationCanceled' => '', + 'LiveFinished' => '', + 'LoadingFailed' => '', + 'Reserving' => '', + ], + 'example' => 'Reserving', + ], + ], + 'description' => '', + ], + ], + 'MaxResults' => [ + 'title' => '云剪辑工程总数', + 'description' => 'The maximum number of entries returned on a single page. The value is set to the maximum number of entries returned on each page except for the last page.'."\n" + ."\n" + .'Examples:'."\n" + ."\n" + .'Valid example: 10,10,5. Invalid example: 10,5,10.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10', + ], + 'TotalCount' => [ + 'description' => 'Optional. The total number of entries returned. By default, this parameter is not returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '110', + ], + 'NextToken' => [ + 'description' => 'A pagination token. It can be used in the next request to retrieve a new page of results. If NextToken is empty, no next page exists.'."\n", + 'type' => 'string', + 'example' => 'null', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"****9262E3DA-07FA-4862-FCBB6BC61D08*****\\",\\n \\"ProjectList\\": [\\n {\\n \\"ProjectId\\": \\"****fddd7748b58bf1d47e95****\\",\\n \\"Title\\": \\"title\\",\\n \\"Timeline\\": \\"{\\\\\\"VideoTracks\\\\\\":[{\\\\\\"VideoTrackClips\\\\\\":[{\\\\\\"MediaId\\\\\\":\\\\\\"****4d7cf14dc7b83b0e801c****\\\\\\"},{\\\\\\"MediaId\\\\\\":\\\\\\"****4d7cf14dc7b83b0e801c****\\\\\\"}]}]}\\",\\n \\"Description\\": \\"sample description\\",\\n \\"CoverURL\\": \\"http://example-bucket.oss-cn-shanghai.aliyuncs.com/example-cover.jpg\\",\\n \\"CreateTime\\": \\"2017-01-11T12:00:00Z\\",\\n \\"ModifiedTime\\": \\"2017-01-11T12:00:00Z\\",\\n \\"Duration\\": 30.1,\\n \\"Status\\": \\"PRODUCE_FAILED\\",\\n \\"ErrorCode\\": \\"InvalidParameter\\",\\n \\"ErrorMessage\\": \\"\\\\\\"EventTime\\\\\\":\\\\\\"2021-08-12T10:04:15Z\\\\\\",\\\\\\"ErrorCode\\\\\\":\\\\\\"InvalidParameter\\\\\\",\\\\\\"ErrorMessage\\\\\\":\\\\\\"The specified parameter \\\\\\\\\\\\\\"LiveStreamConfig\\\\\\\\\\\\\\" is not valid. specified parameter example is not valid.\\",\\n \\"CreateSource\\": \\"OpenAPI\\",\\n \\"ModifiedSource\\": \\"2017-01-11T12:00:00Z\\",\\n \\"TemplateType\\": \\"Timeline\\",\\n \\"ProjectType\\": \\"EditingProject\\",\\n \\"BusinessConfig\\": \\"{ \\\\\\"OutputMediaConfig\\\\\\" : { \\\\\\"StorageLocation\\\\\\": \\\\\\"test-bucket.oss-cn-shanghai.aliyuncs.com\\\\\\", \\\\\\"Path\\\\\\": \\\\\\"test-path\\\\\\" }, \\\\\\"OutputMediaTarget\\\\\\": \\\\\\"oss-object\\\\\\", \\\\\\"ReservationTime\\\\\\": \\\\\\"2021-06-21T08:05:00Z\\\\\\" }\\",\\n \\"BusinessStatus\\": \\"Reserving\\"\\n }\\n ],\\n \\"MaxResults\\": 10,\\n \\"TotalCount\\": 110,\\n \\"NextToken\\": \\"null\\"\\n}","errorExample":""},{"type":"xml","example":"<SearchEditingProjectResponse>\\n <RequestId>****9262E3DA-07FA-4862-FCBB6BC61D08*****</RequestId>\\n <ProjectList>\\n <ProjectId>****fddd7748b58bf1d47e95****</ProjectId>\\n <Title>title</Title>\\n <Timeline>{\\"VideoTracks\\":[{\\"VideoTrackClips\\":[{\\"MediaId\\":\\"****4d7cf14dc7b83b0e801c****\\"},{\\"MediaId\\":\\"****4d7cf14dc7b83b0e801c****\\"}]}]}</Timeline>\\n <Description>sample description</Description>\\n <CoverURL>http://example-bucket.oss-cn-shanghai.aliyuncs.com/example-cover.jpg</CoverURL>\\n <CreateTime>2017-01-11T12:00:00Z</CreateTime>\\n <ModifiedTime>2017-01-11T12:00:00Z</ModifiedTime>\\n <Status>PRODUCE_FAILED</Status>\\n <ErrorCode>InvalidParameter</ErrorCode>\\n <ErrorMessage>\\"EventTime\\":\\"2021-08-12T10:04:15Z\\",\\"ErrorCode\\":\\"InvalidParameter\\",\\"ErrorMessage\\":\\"The specified parameter \\\\\\"LiveStreamConfig\\\\\\" is not valid. specified parameter example is not valid.</ErrorMessage>\\n <CreateSource>OpenAPI</CreateSource>\\n <ModifiedSource>2017-01-11T12:00:00Z</ModifiedSource>\\n <TemplateType>Timeline</TemplateType>\\n <ProjectType>EditingProject</ProjectType>\\n </ProjectList>\\n <MaxResults>10</MaxResults>\\n <TotalCount>110</TotalCount>\\n <NextToken>null</NextToken>\\n</SearchEditingProjectResponse>","errorExample":""}]', + 'title' => 'SearchEditingProject', + ], + 'SubmitDynamicChartJob' => [ + 'summary' => 'Generates animated charts based on Excel datasheets, such as line, pie, and bar charts. You can modify the line color and font.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'ChartType', + 'in' => 'query', + 'schema' => [ + 'title' => '图表类型', + 'description' => 'The chart type.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* Line: line chart'."\n" + .'* Histogram: bar chart'."\n" + .'* Pie: pie chart'."\n", + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'Line' => 'Line', + 'Histogram' => 'Histogram', + 'Pie' => 'Pie', + ], + 'example' => 'Line', + ], + ], + [ + 'name' => 'Input', + 'in' => 'query', + 'schema' => [ + 'title' => '图表输入数据', + 'description' => 'The input data for the chart.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '{"XlsFile":"https://your-bucket.oss-cn-shanghai.aliyuncs.com/obj.xls"}', + ], + ], + [ + 'name' => 'OutputConfig', + 'in' => 'query', + 'schema' => [ + 'title' => '输出设置', + 'description' => 'The output configurations.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '{"MediaURL":"https://your-bucket.oss-cn-shanghai.aliyuncs.com/obj.mp4","Bitrate":2000,"Width":800,"Height":680}', + ], + ], + [ + 'name' => 'ChartConfig', + 'in' => 'query', + 'schema' => [ + 'title' => '图表配置', + 'description' => 'The chart configurations.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{"Style":"Normal","TitleStartTime":"3000","ChartStartTime":"3000","VideoDuration":"15000"}', + ], + ], + [ + 'name' => 'ChartTitle', + 'in' => 'query', + 'schema' => [ + 'title' => '主标题', + 'description' => 'The chart title.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '', + ], + ], + [ + 'name' => 'Subtitle', + 'in' => 'query', + 'schema' => [ + 'title' => '副标题', + 'description' => 'The subtitle.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '', + ], + ], + [ + 'name' => 'Unit', + 'in' => 'query', + 'schema' => [ + 'title' => '单位', + 'description' => 'Unit'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '', + ], + ], + [ + 'name' => 'DataSource', + 'in' => 'query', + 'schema' => [ + 'title' => '数据来源', + 'description' => 'The data source.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '', + ], + ], + [ + 'name' => 'Background', + 'in' => 'query', + 'schema' => [ + 'title' => '图表背景', + 'description' => 'The chart background.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{"Color":"#000000","ImageUrl":"http://your-bucket.oss-cn-shanghai.aliyuncs.com/obj.jpg"}', + ], + ], + [ + 'name' => 'AxisParams', + 'in' => 'query', + 'schema' => [ + 'title' => '坐标样式。XAxisFontInterval不传或为0则算法自动计算间距', + 'description' => 'The axis configurations. If XAxisFontInterval is set to 0 or left empty, the system automatically determines an optimal interval.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{"FontFile":"Microsoft YaHei","XAxisFontSize":"30","YAxisFontSize":"30","XAxisFontInterval":"30","AxisColor":"30"}', + ], + ], + [ + 'name' => 'Title', + 'in' => 'query', + 'schema' => [ + 'title' => '任务标题', + 'description' => 'The job title.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '', + ], + ], + [ + 'name' => 'Description', + 'in' => 'query', + 'schema' => [ + 'title' => '任务描述', + 'description' => 'The job description.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '', + ], + ], + [ + 'name' => 'UserData', + 'in' => 'query', + 'schema' => [ + 'title' => '自定义数据,JSON格式', + 'description' => 'The custom data in JSON format.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{"user":"data"}', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求Id', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'JobId' => [ + 'title' => '任务Id', + 'description' => 'The job ID.'."\n", + 'type' => 'string', + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"JobId\\": \\"****20b48fb04483915d4f2cd8ac****\\"\\n}","errorExample":""},{"type":"xml","example":"<SubmitDynamicChartJobResponse>\\n <RequestId>******11-DB8D-4A9A-875B-275798******</RequestId>\\n <JobId>****20b48fb04483915d4f2cd8ac****</JobId>\\n</SubmitDynamicChartJobResponse>","errorExample":""}]', + 'title' => 'SubmitDynamicChartJob', + 'description' => 'This feature is available only in the China (Shanghai) region.'."\n" + ."\n" + .'* You can add a title, subtitle, data source, and unit to a chart and specify the font and font size. For supported fonts, see [Fonts](~~449567~~).'."\n" + .'* This feature provides five styles of animated charts: normal, mystery, lively, business, and green.'."\n" + .'* You can set the background color or image.'."\n" + .'* You can set the animation duration, size, and bitrate.'."\n" + ."\n" + .'Examples'."\n" + ."\n" + .'* Line chart: [Sample datasheet](https://ice-public-media.oss-cn-shanghai.aliyuncs.com/smart/dynamicChart/line.xlsx), [Effect](https://ice-public-media.oss-cn-shanghai.aliyuncs.com/smart/dynamicChart/line.mp4)'."\n" + .'* Bar chart: [Sample datasheet](https://ice-public-media.oss-cn-shanghai.aliyuncs.com/smart/dynamicChart/histgram.xlsx), [Effect](https://ice-public-media.oss-cn-shanghai.aliyuncs.com/smart/dynamicChart/histgram.mp4)'."\n" + .'* Pie chart: [Sample datasheet](https://ice-public-media.oss-cn-shanghai.aliyuncs.com/smart/dynamicChart/pie.xlsx), [Effect](https://ice-public-media.oss-cn-shanghai.aliyuncs.com/smart/dynamicChart/pie.mp4)'."\n" + .'* Normal: [Effect](https://ice-public-media.oss-cn-shanghai.aliyuncs.com/smart/dynamicChart/Normal.mp4)'."\n" + .'* Mystery: [Effect](https://ice-public-media.oss-cn-shanghai.aliyuncs.com/smart/dynamicChart/Mystery.mp4)'."\n" + .'* Lively: [Effect](https://ice-public-media.oss-cn-shanghai.aliyuncs.com/smart/dynamicChart/Lively.mp4)'."\n" + .'* Business: [Effect](https://ice-public-media.oss-cn-shanghai.aliyuncs.com/smart/dynamicChart/Business.mp4)'."\n" + .'* Green: [Effect](https://ice-public-media.oss-cn-shanghai.aliyuncs.com/smart/dynamicChart/Green.mp4)'."\n", + 'responseParamsDescription' => 'You can call the [GetSmartHandleJob](~~441172~~) operation to query the execution details of an animated chart job based on the job ID. The following example shows the response returned by the [GetSmartHandleJob](~~441172~~) operation for a successful job.'."\n" + ."\n" + .' {'."\n" + .' "RequestId": "******2D-443C-5043-B0E4-867070******",'."\n" + .' "JobResult": {'."\n" + .' "MediaId": "******bf47c94e82b3b2014361******"'."\n" + .' },'."\n" + .' "State": "Finished",'."\n" + .' "JobId": "******042d5e4db6866f6289d1******",'."\n" + .' "SmartJobInfo": {'."\n" + .' "JobType": "DynamicChart",'."\n" + .' "ModifiedTime": "2022-01-21T07:02:02Z",'."\n" + .' "UserId": 1234562230123456,'."\n" + .' "CreateTime": "2022-01-21T07:02:02Z",'."\n" + .' "Title": "Sample chart 1",'."\n" + .' "EditingConfig": "null"'."\n" + .' }'."\n" + .' }', + ], + 'StopRtcRobotInstance' => [ + 'summary' => 'Stops an AI agent for real-time communication (RTC).', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '228874', + 'abilityTreeNodes' => [ + 'FEATUREice405U0J', + ], + ], + 'parameters' => [ + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => true, + 'example' => '727dc0e296014bb58670940a3da95592', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'Id of the request', + 'type' => 'string', + 'example' => 'AC84E5DD-AB56-56C0-A992-07ECB82008CA', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"AC84E5DD-AB56-56C0-A992-07ECB82008CA\\"\\n}","type":"json"}]', + 'title' => 'StopRtcRobotInstance', + ], + 'StartRtcRobotInstance' => [ + 'summary' => 'Starts an AI agent and joins a real-time communication (RTC) call.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '228630', + 'abilityTreeNodes' => [ + 'FEATUREice405U0J', + ], + ], + 'parameters' => [ + [ + 'name' => 'RobotId', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => true, + 'example' => 'ca28b08ad3464ebcb42e5c0f7c6d2e89', + ], + ], + [ + 'name' => 'ChannelId', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => true, + 'example' => 'testId', + ], + ], + [ + 'name' => 'UserId', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => true, + 'example' => 'my-robot', + ], + ], + [ + 'name' => 'UserData', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => '{}', + ], + ], + [ + 'name' => 'AuthToken', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => true, + 'example' => '**********', + ], + ], + [ + 'name' => 'Config', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'EnableVoiceInterrupt' => [ + 'description' => '', + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + 'Greeting' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => '', + ], + 'VoiceId' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => 'zhixiaoxia', + ], + 'AsrMaxSilence' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'UserOnlineTimeout' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'UserOfflineTimeout' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'VoiceprintId' => [ + 'type' => 'string', + ], + 'UseVoiceprint' => [ + 'type' => 'boolean', + ], + 'Volume' => [ + 'type' => 'integer', + 'format' => 'int64', + ], + ], + 'required' => false, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', + 'type' => 'object', + 'properties' => [ + 'InstanceId' => [ + 'description' => '', + 'type' => 'string', + 'example' => '727dc0e296014bb58670940a3da95592', + ], + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'Id of the request', + 'type' => 'string', + 'example' => '11DE0AB3-603B-5055-8A72-9C424854F983', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"InstanceId\\": \\"727dc0e296014bb58670940a3da95592\\",\\n \\"RequestId\\": \\"11DE0AB3-603B-5055-8A72-9C424854F983\\"\\n}","type":"json"}]', + 'title' => 'StartRtcRobotInstance', + ], + 'UpdateRtcRobotInstance' => [ + 'summary' => 'Modifies an AI agent for real-time communication (RTC), such as the tone and greeting.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '230669', + 'abilityTreeNodes' => [ + 'FEATUREice405U0J', + ], + ], + 'parameters' => [ + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => true, + 'example' => '727dc0e296014bb58670940a3da95592', + ], + ], + [ + 'name' => 'Config', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'EnableVoiceInterrupt' => [ + 'description' => '', + 'type' => 'boolean', + 'required' => false, + 'example' => 'false', + ], + 'Greeting' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => '', + ], + 'VoiceId' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => 'zhixiaoxia', + ], + ], + 'required' => false, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'Id of the request', + 'type' => 'string', + 'example' => '7707F0A2-C6FD-5959-87EB-7C4D02384FD4', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"7707F0A2-C6FD-5959-87EB-7C4D02384FD4\\"\\n}","type":"json"}]', + 'title' => 'UpdateRtcRobotInstance', + ], + 'DescribeRtcRobotInstance' => [ + 'summary' => 'Queries the information about an AI agent for real-time communication (RTC).', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '230670', + 'abilityTreeNodes' => [ + 'FEATUREice405U0J', + ], + ], + 'parameters' => [ + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => '727dc0e296014bb58670940a3da95592', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', + 'type' => 'object', + 'properties' => [ + 'AuthToken' => [ + 'description' => '', + 'type' => 'string', + 'example' => '**********', + ], + 'ChannelId' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'testId', + ], + 'Config' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'EnableVoiceInterrupt' => [ + 'description' => '', + 'type' => 'boolean', + 'example' => 'true', + ], + 'Greeting' => [ + 'description' => '', + 'type' => 'string', + 'example' => '', + ], + 'VoiceId' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'zhixiaoxia', + ], + ], + ], + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'Id of the request', + 'type' => 'string', + 'example' => '20B3A1B6-4BD2-5DE6-BCBC-098C9B4F4E91', + ], + 'Status' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'Executing', + ], + 'UserData' => [ + 'description' => '', + 'type' => 'string', + 'example' => '{}', + ], + 'UserId' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'my-robot', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"AuthToken\\": \\"**********\\",\\n \\"ChannelId\\": \\"testId\\",\\n \\"Config\\": {\\n \\"EnableVoiceInterrupt\\": true,\\n \\"Greeting\\": \\"你好\\",\\n \\"VoiceId\\": \\"zhixiaoxia\\"\\n },\\n \\"RequestId\\": \\"20B3A1B6-4BD2-5DE6-BCBC-098C9B4F4E91\\",\\n \\"Status\\": \\"Executing\\",\\n \\"UserData\\": \\"{}\\",\\n \\"UserId\\": \\"my-robot\\"\\n}","type":"json"}]', + 'title' => 'DescribeRtcRobotInstance', + ], + 'SetNotifyConfig' => [ + 'summary' => 'Enables or disables event notifications for an AI agent and configures the callback URL and event types.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '236010', + 'abilityTreeNodes' => [ + 'FEATUREice405U0J', + ], + ], + 'parameters' => [ + [ + 'name' => 'AIAgentId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the AI agent.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '39f8e0bc005e4f309379701645f4****', + ], + ], + [ + 'name' => 'EnableNotify', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to enable event notifications.'."\n", + 'type' => 'boolean', + 'required' => true, + 'example' => 'true', + ], + ], + [ + 'name' => 'CallbackUrl', + 'in' => 'query', + 'schema' => [ + 'description' => 'The URL for receiving callback notifications. By default, this parameter is left empty.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'http://customer.com/callback', + ], + ], + [ + 'name' => 'EventTypes', + 'in' => 'query', + 'schema' => [ + 'description' => 'The event types. If you do not specify this parameter, all event types are selected.'."\n" + ."\n" + .'* agent_start'."\n" + .'* agent_stop'."\n" + .'* error'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'agent_start' => 'agent_start', + 'error' => 'error', + 'agent_stop' => 'agent_stop', + ], + 'example' => 'agent_start,agent_stop,error', + ], + ], + [ + 'name' => 'Token', + 'in' => 'query', + 'schema' => [ + 'description' => 'The authentication token for callback. The token is carried in the Authorization header of a callback request. By default, this parameter is left empty.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'eyJhcHBpZCI6ICIxMjM0MTIzNxxxxx', + ], + ], + [ + 'name' => 'AudioOssPath', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + ], + ], + [ + 'name' => 'EnableAudioRecording', + 'in' => 'query', + 'schema' => [ + 'type' => 'boolean', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '771A1414-27BF-53E6-AB73-EFCB*****ACF', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"771A1414-27BF-53E6-AB73-EFCB*****ACF\\"\\n}","type":"json"}]', + 'title' => 'SetNotifyConfig', + 'description' => '## [](#)Request description'."\n" + ."\n" + .'You can call this operation to configure event notifications for an AI agent. You can configure `EnableNotify` to enable or disable event notifications, configure `CallbackUrl` to specify a callback URL, and configure `EventTypes` to specify event types. You can also configure `Token` to specify an authentication token for enhanced security. The system returns a unique `RequestId` for subsequent tracing after a successful request.'."\n", + ], + 'DescribeNotifyConfig' => [ + 'summary' => 'Queries the event callback configurations of an AI agent.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '236017', + 'abilityTreeNodes' => [ + 'FEATUREice405U0J', + ], + ], + 'parameters' => [ + [ + 'name' => 'AIAgentId', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => true, + 'example' => '39f8e0bc005e4f309379701645f4****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'CallbackUrl' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'http://customer.com/callback', + ], + 'EnableNotify' => [ + 'description' => '', + 'type' => 'boolean', + 'example' => 'true', + ], + 'EventTypes' => [ + 'description' => 'The event types. If this parameter is empty, all event types are selected.'."\n" + ."\n" + .'* agent_start: The agent is started.'."\n" + .'* agent_stop: The agent is stopped.'."\n" + .'* error: An error occurred.'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'agent_start' => 'agent_start', + 'error' => 'error', + 'agent_stop' => 'agent_stop', + ], + 'example' => 'agent_start,agent_stop,error', + ], + 'Token' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'eyJhcHBpZCI6ICIxMjM0MTIzNxxxxx', + ], + 'AudioOssPath' => [ + 'type' => 'string', + ], + 'EnableAudioRecording' => [ + 'type' => 'boolean', + ], + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => '', + 'type' => 'string', + 'example' => '7B117AF5-2A16-412C-B127-FA6175ED1AD0', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"CallbackUrl\\": \\"http://customer.com/callback\\",\\n \\"EnableNotify\\": true,\\n \\"EventTypes\\": \\"agent_start,agent_stop,error\\",\\n \\"Token\\": \\"eyJhcHBpZCI6ICIxMjM0MTIzNxxxxx\\",\\n \\"AudioOssPath\\": \\"\\",\\n \\"EnableAudioRecording\\": true,\\n \\"RequestId\\": \\"7B117AF5-2A16-412C-B127-FA6175ED1AD0\\"\\n}","type":"json"}]', + 'title' => 'DescribeNotifyConfig', + 'description' => 'You can call this operation to query the detailed callback configurations of an AI agent.'."\n", + ], + 'CancelIProductionJob' => [ + 'summary' => 'Cancels an intelligent production job.', + 'path' => '', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREice405U0J', + ], + ], + 'parameters' => [ + [ + 'name' => 'JobId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the intelligent production job.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + ], + [ + 'name' => 'ClientToken', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => '****12e8864746a0a398****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'Message' => [ + 'description' => 'The message returned.'."\n", + 'type' => 'string', + 'example' => 'Success', + ], + 'AccessDeniedDetail' => [ + 'description' => 'The details about the access denial. This parameter is returned only if Resource Access Management (RAM) permission verification failed.'."\n", + 'type' => 'object', + 'properties' => [ + 'AuthAction' => [ + 'description' => 'The operation that failed the permission check.'."\n", + 'type' => 'string', + 'example' => 'ice:CancelIProductionJob', + ], + 'AuthPrincipalDisplayName' => [ + 'description' => 'The identity. Values:'."\n" + ."\n" + .'* RAM user: a UID'."\n" + .'* RAM role: RoleName:RoleSessionName'."\n" + .'* Federated user: ProviderType/ProviderName'."\n", + 'type' => 'string', + 'example' => '****4522705967****', + ], + 'AuthPrincipalOwnerId' => [ + 'description' => 'The account to which the principal belongs.'."\n", + 'type' => 'string', + 'example' => '****82303720****', + ], + 'AuthPrincipalType' => [ + 'description' => 'The type of identity that made the request. Valid values:'."\n" + ."\n" + .'* SubUser: RAM user'."\n" + .'* AssumedRoleUser: RAM role'."\n" + .'* Federated: SSO federated user'."\n", + 'type' => 'string', + 'example' => 'SubUser', + ], + 'EncodedDiagnosticMessage' => [ + 'description' => 'The encoded diagnostic message.'."\n", + 'type' => 'string', + 'example' => '******AAZ/h8jzNEODc5QUUyLUZCOTAtNUQyQy1BMEFBLUUzODQxODUx******==', + ], + 'NoPermissionType' => [ + 'description' => 'The type of policy that resulted in the denial. Valid values:'."\n" + ."\n" + .'* **ImplicitDeny**: The resource holder has not configured a policy for the current user. By default, unauthorized operations are denied.'."\n" + .'* **ExplicitDeny**: The RAM policy configured by the resource holder explicitly denies the current user access to the corresponding resources.'."\n", + 'type' => 'string', + 'example' => 'ImplicitDeny', + ], + 'PolicyType' => [ + 'description' => 'The type of policy that triggered the permission failure.'."\n" + ."\n" + .'* **ControlPolicy**: control policy'."\n" + .'* **SessionPolicy**: an additional policy attached to a temporary token.'."\n" + .'* **AssumeRolePolicy**: the trust policy of a RAM role.'."\n" + .'* **AccountLevelIdentityBasedPolicy**: an identity-based policy at the account level (custom or system).'."\n" + .'* **ResourceGroupLevelIdentityBasedPolicy**: an identity-based policy scoped to a resource group.'."\n", + 'type' => 'string', + 'example' => 'AssumeRolePolicy', + ], + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"Message\\": \\"Success\\",\\n \\"AccessDeniedDetail\\": {\\n \\"AuthAction\\": \\"ice:CancelIProductionJob\\",\\n \\"AuthPrincipalDisplayName\\": \\"****4522705967****\\",\\n \\"AuthPrincipalOwnerId\\": \\"****82303720****\\",\\n \\"AuthPrincipalType\\": \\"SubUser\\",\\n \\"EncodedDiagnosticMessage\\": \\"******AAZ/h8jzNEODc5QUUyLUZCOTAtNUQyQy1BMEFBLUUzODQxODUx******==\\",\\n \\"NoPermissionType\\": \\"ImplicitDeny\\",\\n \\"PolicyType\\": \\"AssumeRolePolicy\\"\\n }\\n}","type":"json"}]', + 'title' => 'CancelIProductionJob', + ], + 'SubmitSceneMediaSelectionJob' => [ + 'summary' => 'Selects suitable clips based on the submitted videos, images, and voiceovers, and returns the selection results. Two scenarios are supported: image-text matching and highlight mashup.', + 'path' => '', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'paid', + 'abilityTreeNodes' => [ + 'FEATUREiceANRKXC', + ], + ], + 'parameters' => [ + [ + 'name' => 'InputConfig', + 'in' => 'formData', + 'schema' => [ + 'title' => '用户合成输出配置', + 'description' => 'The input configuration. Its structure and required fields depend on the value of JobType.'."\n" + ."\n" + .'* When JobType is set to Smart_Mix_Media_Select, see [Image-text matching](https://help.aliyun.com/zh/ims/use-cases/intelligent-graphic-matching-into-a-piece/?spm=a2c4g.11186623.help-menu-193643.d\\_3\\_2\\_0\\_1.7c3d6997qndkZj).'."\n" + .'* When JobType is set to Screen_Media_Highlights_Media_Select, see [Highlight mashup](https://help.aliyun.com/zh/ims/use-cases/create-highlight-videos?spm=a2c4g.11186623.help-menu-193643.d\\_3\\_2\\_0\\_3.84b5661bIcQULE).'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => '{'."\n" + .' "BackgroundMusic": "****75c3936f3a8743850f2da942****",'."\n" + .' "MediaArray": ['."\n" + .' "https://test-bucket.oss-cn-shanghai.aliyuncs.com/test.mp4"'."\n" + .' ],'."\n" + .' "SpeechTextArray": ['."\n" + .' "Grand opening! A Freshippo store opens today at the nearby mall.",'."\n" + .' "Great deals on snacks and drinks. Stop by!"'."\n" + .' ]'."\n" + .'}', + ], + ], + [ + 'name' => 'EditingConfig', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The editing configuration. Its structure depends on the value of JobType.'."\n" + ."\n" + .'* When JobType is set to Smart_Mix_Media_Select, see [Image-text matching](https://help.aliyun.com/zh/ims/use-cases/intelligent-graphic-matching-into-a-piece/?spm=a2c4g.11186623.help-menu-193643.d\\_3\\_2\\_0\\_1.7c3d6997qndkZj).'."\n" + .'* When JobType is set to Screen_Media_Highlights_Media_Select, see [Highlight mashup](https://help.aliyun.com/zh/ims/use-cases/create-highlight-videos?spm=a2c4g.11186623.help-menu-193643.d\\_3\\_2\\_0\\_3.84b5661bIcQULE).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{'."\n" + .' "MediaConfig": {'."\n" + .' "Volume": 0'."\n" + .' },'."\n" + .' "SpeechConfig": {'."\n" + .' "Volume": 1'."\n" + .' },'."\n" + .' "BackgroundMusicConfig": {'."\n" + .' "Volume": 0.3'."\n" + .' }'."\n" + .'}', + ], + ], + [ + 'name' => 'OutputConfig', + 'in' => 'query', + 'schema' => [ + 'title' => '任务来源', + 'description' => 'The output configuration. Its structure and required fields depend on the value of JobType.'."\n" + ."\n" + .'* When JobType is set to Smart_Mix_Media_Select, see [Image-text matching](https://help.aliyun.com/zh/ims/use-cases/intelligent-graphic-matching-into-a-piece/?spm=a2c4g.11186623.help-menu-193643.d\\_3\\_2\\_0\\_1.7c3d6997qndkZj).'."\n" + .'* When JobType is set to Screen_Media_Highlights_Media_Select, see [Highlight mashup](https://help.aliyun.com/zh/ims/use-cases/create-highlight-videos?spm=a2c4g.11186623.help-menu-193643.d\\_3\\_2\\_0\\_3.84b5661bIcQULE).'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '{'."\n" + .' "MediaURL": "http://test-bucket.oss-cn-shanghai.aliyuncs.com/xxx_{index}.mp4",'."\n" + .' "Count": 1,'."\n" + .' "Width": 1080,'."\n" + .' "Height": 1920'."\n" + .'}', + ], + ], + [ + 'name' => 'UserData', + 'in' => 'query', + 'schema' => [ + 'title' => '用户配置UserData', + 'description' => 'The user-defined data, including the business and callback configurations. For more information, see [UserData](~~357745#section-urj-v3f-0s1~~).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{"NotifyAddress":"http://xx.xx.xxx"} or {"NotifyAddress":"https://xx.xx.xxx"} or {"NotifyAddress":"ice-callback-demo"}', + ], + ], + [ + 'name' => 'JobType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The job type. Valid values:'."\n" + ."\n" + .'* Smart_Mix_Media_Select'."\n" + .'* Screen_Media_Highlights_Media_Select'."\n" + ."\n" + .'Differences:'."\n" + ."\n" + .'* Smart_Mix_Media_Select: Matches voiceover scripts with provided video/image materials to select the most relevant clips and returns the matching results. Two options are available: Common mode, which is suitable for general-purpose materials like lifestyle vlogs, travel videos, and marketing content; Movie collections, which is optimized for materials with a coherent plot and specific characters, such as TV series and movies.'."\n" + .'* Screen_Media_Highlights_Media_Select: Automatically identifies and selects clips that are exciting or represent key story points from longer video materials.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'Smart_Mix_Media_Select', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '*****ACB-44F2-5F2D-88D7-1283E70*****', + ], + 'JobId' => [ + 'description' => 'The job ID.'."\n", + 'type' => 'string', + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"*****ACB-44F2-5F2D-88D7-1283E70*****\\",\\n \\"JobId\\": \\"****20b48fb04483915d4f2cd8ac****\\"\\n}","type":"json"}]', + 'title' => 'SubmitSceneMediaSelectionJob', + 'description' => '* After a job is submitted, you can call [ListBatchMediaProducingJob](~~2803751~~) to query submitted jobs, or [GetBatchMediaProducingJob](~~2693269~~) to query the job status and results.'."\n" + .'- The feature is in public preview and charges no fees.', + ], + 'SubmitSceneBatchEditingJob' => [ + 'summary' => 'Submits a batch job to render multiple videos by providing a list of editing project IDs.', + 'path' => '', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'paid', + 'abilityTreeNodes' => [ + 'FEATUREiceANRKXC', + ], + ], + 'parameters' => [ + [ + 'name' => 'ProjectIds', + 'in' => 'query', + 'schema' => [ + 'description' => 'A comma-separated list of editing project IDs. The video is rendered based on the timeline from each project.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '****ae91539d46bb9000f74b40b80dd2,****ae91539000f74b40b80dd9d46bb', + ], + ], + [ + 'name' => 'OutputConfig', + 'in' => 'query', + 'schema' => [ + 'title' => '任务输出配置', + 'description' => 'The output configuration. The structure is the same as the [OutputConfig](https://help.aliyun.com/zh/ims/use-cases/create-highlight-videos?spm=a2c4g.11186623.help-menu-193643.d\\_3\\_2\\_0\\_3.3af86997GreVu9\\&scm=20140722.H\\_2863940.\\_.OR_help-T_cn~zh-V\\_1#4111a373d0xbz) for batch video generation, except that Count and GeneratePreviewOnly are not supported.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => '{'."\n" + .' "MediaURL": "http://test-bucket.oss-cn-shanghai.aliyuncs.com/xxx_{index}.mp4",'."\n" + .' "Width": 1080,'."\n" + .' "Height": 1920'."\n" + .'}', + ], + ], + [ + 'name' => 'UserData', + 'in' => 'query', + 'schema' => [ + 'title' => '用户配置UserData', + 'description' => 'Custom user data, including callback configurations. For more information, see [UserData](~~357745#section-urj-v3f-0s1~~).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '****C702-41BE-467E-AF2E-883D4517****', + ], + 'JobId' => [ + 'description' => 'The job ID.'."\n", + 'type' => 'string', + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"****C702-41BE-467E-AF2E-883D4517****\\",\\n \\"JobId\\": \\"****20b48fb04483915d4f2cd8ac****\\"\\n}","type":"json"}]', + 'title' => 'SubmitSceneBatchEditingJob', + 'description' => '* After submitting a job, you can call ListBatchMediaProducingJob to retrieve all matching jobs. To get detailed information for a specific job, including its status, output media asset IDs, and URLs, call GetBatchMediaProducingJob.'."\n", + ], + 'SubmitSceneTimelineOrganizationJob' => [ + 'summary' => 'Arranges media assets, including videos, images, background music, and voiceovers, into a complete timeline based on media selection results, and creates an editing project for preview. Two scenarios are supported: image-text matching and highlight mashup.', + 'path' => '', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'paid', + 'abilityTreeNodes' => [ + 'FEATUREiceANRKXC', + ], + ], + 'parameters' => [ + [ + 'name' => 'InputConfig', + 'in' => 'formData', + 'schema' => [ + 'title' => '用户合成输入配置', + 'description' => 'The input configuration. Its structure and required fields depend on the value of JobType.'."\n" + ."\n" + .'* When JobType is set to Smart_Mix_Timeline_Organize, see [Image-text matching](https://help.aliyun.com/zh/ims/use-cases/intelligent-graphic-matching-into-a-piece/?spm=a2c4g.11186623.help-menu-193643.d\\_3\\_2\\_0\\_1.7c3d6997qndkZj).'."\n" + .'* When JobType is set to Screen_Media_Highlights_Timeline_Organize, see [Highlight mashup](https://help.aliyun.com/zh/ims/use-cases/create-highlight-videos?spm=a2c4g.11186623.help-menu-193643.d\\_3\\_2\\_0\\_3.84b5661bIcQULE).'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '{'."\n" + .' "BackgroundMusic": "****75c3936f3a8743850f2da942****",'."\n" + .' "MediaArray": ['."\n" + .' "https://test-bucket.oss-cn-shanghai.aliyuncs.com/test.mp4"'."\n" + .' ],'."\n" + .' "SpeechTextArray": ['."\n" + .' "A new Freshippo store just opened in the nearby mall. Today is the grand opening."'."\n" + .' ]'."\n" + .'}', + ], + ], + [ + 'name' => 'EditingConfig', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The editing configuration. Its structure depends on the value of JobType.'."\n" + ."\n" + .'* When JobType is set to Smart_Mix_Timeline_Organize, see [Image-text matching](https://help.aliyun.com/zh/ims/use-cases/intelligent-graphic-matching-into-a-piece/?spm=a2c4g.11186623.help-menu-193643.d\\_3\\_2\\_0\\_1.7c3d6997qndkZj).'."\n" + .'* When JobType is set to Screen_Media_Highlights_Timeline_Organize, see [Highlight mashup](https://help.aliyun.com/zh/ims/use-cases/create-highlight-videos?spm=a2c4g.11186623.help-menu-193643.d\\_3\\_2\\_0\\_3.84b5661bIcQULE).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{'."\n" + .' "MediaConfig": {'."\n" + .' "Volume": 0'."\n" + .' },'."\n" + .' "SpeechConfig": {'."\n" + .' "Volume": 1'."\n" + .' },'."\n" + .' "BackgroundMusicConfig": {'."\n" + .' "Volume": 0.3'."\n" + .' }'."\n" + .'}', + ], + ], + [ + 'name' => 'OutputConfig', + 'in' => 'query', + 'schema' => [ + 'title' => '任务输出配置', + 'description' => 'The output configuration. Its structure and required fields depend on the value of JobType.'."\n" + ."\n" + .'* When JobType is set to Smart_Mix_Timeline_Organize, see [Image-text matching](https://help.aliyun.com/zh/ims/use-cases/intelligent-graphic-matching-into-a-piece/?spm=a2c4g.11186623.help-menu-193643.d\\_3\\_2\\_0\\_1.7c3d6997qndkZj).'."\n" + .'* When JobType is set to Screen_Media_Highlights_Timeline_Organize, see [Highlight mashup](https://help.aliyun.com/zh/ims/use-cases/create-highlight-videos?spm=a2c4g.11186623.help-menu-193643.d\\_3\\_2\\_0\\_3.84b5661bIcQULE).'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => '{'."\n" + .' "MediaURL": "http://test-bucket.oss-cn-shanghai.aliyuncs.com/xxx_{index}.mp4",'."\n" + .' "Count": 1,'."\n" + .' "Width": 1080,'."\n" + .' "Height": 1920'."\n" + .'}', + ], + ], + [ + 'name' => 'UserData', + 'in' => 'query', + 'schema' => [ + 'title' => '用户配置UserData', + 'description' => 'The user-defined data, including the business and callback configurations. For more information, see [UserData](~~357745#section-urj-v3f-0s1~~).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{"NotifyAddress":"http://xx.xx.xxx"} or {"NotifyAddress":"https://xx.xx.xxx"} or {"NotifyAddress":"ice-callback-demo"}', + ], + ], + [ + 'name' => 'JobType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The job type. Valid values:'."\n" + ."\n" + .'* Smart_Mix_Timeline_Organize: Image-text matching.'."\n" + .'* Screen_Media_Highlights_Timeline_Organize: Highlight mashup.'."\n" + ."\n" + .'Differences:'."\n" + ."\n" + .'* Image-text matching: Arranges a timeline based on the results of matching a voiceover script to media assets. Ideal for bulk marketing videos and general-purpose montages.'."\n" + .'* Highlight mashup: Arranges a timeline based on the results of highlight clip selection. Ideal for creating action-packed highlight reels from short-form dramas.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'Smart_Mix_Timeline_Organize', + ], + ], + [ + 'name' => 'MediaSelectResult', + 'in' => 'query', + 'schema' => [ + 'description' => 'The media selection results from a previously run SubmitSceneMediaSelectionJob. You can retrieve this result by calling GetBatchMediaProducingJob.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '{'."\n" + .' "textMatchMediaOutputList": [{'."\n" + .' "textMatchMediaSentenceOutputList": [{'."\n" + .' "duration": 3.366667,'."\n" + .' "matchClipList": [{'."\n" + .' "endTime": 11.16,'."\n" + .' "mediaId": "****a0900f5071efbf1ce7e6c66a****",'."\n" + .' "startTime": 8.04'."\n" + .' }],'."\n" + .' "text": "A new Freshippo store just opened in the nearby mall"'."\n" + .' },'."\n" + .' {'."\n" + .' "duration": 1.566667,'."\n" + .' "matchClipList": [{'."\n" + .' "endTime": 1.54,'."\n" + .' "mediaId": "****a0900f5071efbf1ce7e6c66a****",'."\n" + .' "startTime": 0'."\n" + .' }],'."\n" + .' "text": "Today is the grand opening"'."\n" + .' }'."\n" + .' ]'."\n" + .' }]'."\n" + .'}', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '******11-DB8D-4A9A-875B-275798******', + ], + 'JobId' => [ + 'description' => 'The job ID.'."\n", + 'type' => 'string', + 'example' => '****20b48fb04483915d4f2cd8ac****', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"******11-DB8D-4A9A-875B-275798******\\",\\n \\"JobId\\": \\"****20b48fb04483915d4f2cd8ac****\\"\\n}","type":"json"}]', + 'title' => 'SubmitSceneTimelineOrganizationJob', + 'description' => '* After submitting a job, you can call [ListBatchMediaProducingJob](~~2803751~~) to retrieve matching jobs. To get detailed information for a specific job, including its status, output media asset IDs, and URLs, call [GetBatchMediaProducingJob](~~2693269~~).'."\n" + ."\n" + .'- The feature is in public preview and does not charge fees.', + ], + ], + 'endpoints' => [ + [ + 'regionId' => 'cn-beijing', + 'endpoint' => 'ice.cn-beijing.aliyuncs.com', + ], + [ + 'regionId' => 'cn-hangzhou', + 'endpoint' => 'ice.cn-hangzhou.aliyuncs.com', + ], + [ + 'regionId' => 'cn-shanghai', + 'endpoint' => 'ice.cn-shanghai.aliyuncs.com', + ], + [ + 'regionId' => 'cn-shenzhen', + 'endpoint' => 'ice.cn-shenzhen.aliyuncs.com', + ], + [ + 'regionId' => 'ap-southeast-1', + 'endpoint' => 'ice.ap-southeast-1.aliyuncs.com', + ], + [ + 'regionId' => 'us-west-1', + 'endpoint' => 'ice.us-west-1.aliyuncs.com', + ], + ], +]; |
