ListVideoAudiosResult.cc 6.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144
  1. /*
  2. * Copyright 2009-2017 Alibaba Cloud All rights reserved.
  3. *
  4. * Licensed under the Apache License, Version 2.0 (the "License");
  5. * you may not use this file except in compliance with the License.
  6. * You may obtain a copy of the License at
  7. *
  8. * http://www.apache.org/licenses/LICENSE-2.0
  9. *
  10. * Unless required by applicable law or agreed to in writing, software
  11. * distributed under the License is distributed on an "AS IS" BASIS,
  12. * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  13. * See the License for the specific language governing permissions and
  14. * limitations under the License.
  15. */
  16. #include <alibabacloud/imm/model/ListVideoAudiosResult.h>
  17. #include <json/json.h>
  18. using namespace AlibabaCloud::Imm;
  19. using namespace AlibabaCloud::Imm::Model;
  20. ListVideoAudiosResult::ListVideoAudiosResult() :
  21. ServiceResult()
  22. {}
  23. ListVideoAudiosResult::ListVideoAudiosResult(const std::string &payload) :
  24. ServiceResult()
  25. {
  26. parse(payload);
  27. }
  28. ListVideoAudiosResult::~ListVideoAudiosResult()
  29. {}
  30. void ListVideoAudiosResult::parse(const std::string &payload)
  31. {
  32. Json::Reader reader;
  33. Json::Value value;
  34. reader.parse(payload, value);
  35. setRequestId(value["RequestId"].asString());
  36. auto allAudiosNode = value["Audios"]["AudiosItem"];
  37. for (auto valueAudiosAudiosItem : allAudiosNode)
  38. {
  39. AudiosItem audiosObject;
  40. if(!valueAudiosAudiosItem["AudioDuration"].isNull())
  41. audiosObject.audioDuration = std::stof(valueAudiosAudiosItem["AudioDuration"].asString());
  42. if(!valueAudiosAudiosItem["AudioUri"].isNull())
  43. audiosObject.audioUri = valueAudiosAudiosItem["AudioUri"].asString();
  44. if(!valueAudiosAudiosItem["AudioRate"].isNull())
  45. audiosObject.audioRate = std::stoi(valueAudiosAudiosItem["AudioRate"].asString());
  46. if(!valueAudiosAudiosItem["SourceType"].isNull())
  47. audiosObject.sourceType = valueAudiosAudiosItem["SourceType"].asString();
  48. if(!valueAudiosAudiosItem["ModifyTime"].isNull())
  49. audiosObject.modifyTime = valueAudiosAudiosItem["ModifyTime"].asString();
  50. if(!valueAudiosAudiosItem["FileSize"].isNull())
  51. audiosObject.fileSize = std::stoi(valueAudiosAudiosItem["FileSize"].asString());
  52. if(!valueAudiosAudiosItem["SourceUri"].isNull())
  53. audiosObject.sourceUri = valueAudiosAudiosItem["SourceUri"].asString();
  54. if(!valueAudiosAudiosItem["CreateTime"].isNull())
  55. audiosObject.createTime = valueAudiosAudiosItem["CreateTime"].asString();
  56. if(!valueAudiosAudiosItem["RemarksA"].isNull())
  57. audiosObject.remarksA = valueAudiosAudiosItem["RemarksA"].asString();
  58. if(!valueAudiosAudiosItem["RemarksB"].isNull())
  59. audiosObject.remarksB = valueAudiosAudiosItem["RemarksB"].asString();
  60. if(!valueAudiosAudiosItem["AudioTextsStatus"].isNull())
  61. audiosObject.audioTextsStatus = valueAudiosAudiosItem["AudioTextsStatus"].asString();
  62. if(!valueAudiosAudiosItem["AudioTextsModifyTime"].isNull())
  63. audiosObject.audioTextsModifyTime = valueAudiosAudiosItem["AudioTextsModifyTime"].asString();
  64. if(!valueAudiosAudiosItem["ProcessModifyTime"].isNull())
  65. audiosObject.processModifyTime = valueAudiosAudiosItem["ProcessModifyTime"].asString();
  66. if(!valueAudiosAudiosItem["ProcessStatus"].isNull())
  67. audiosObject.processStatus = valueAudiosAudiosItem["ProcessStatus"].asString();
  68. if(!valueAudiosAudiosItem["SourcePosition"].isNull())
  69. audiosObject.sourcePosition = valueAudiosAudiosItem["SourcePosition"].asString();
  70. if(!valueAudiosAudiosItem["AudioFormat"].isNull())
  71. audiosObject.audioFormat = valueAudiosAudiosItem["AudioFormat"].asString();
  72. if(!valueAudiosAudiosItem["AudioTextsFailReason"].isNull())
  73. audiosObject.audioTextsFailReason = valueAudiosAudiosItem["AudioTextsFailReason"].asString();
  74. if(!valueAudiosAudiosItem["ProcessFailReason"].isNull())
  75. audiosObject.processFailReason = valueAudiosAudiosItem["ProcessFailReason"].asString();
  76. if(!valueAudiosAudiosItem["RemarksC"].isNull())
  77. audiosObject.remarksC = valueAudiosAudiosItem["RemarksC"].asString();
  78. if(!valueAudiosAudiosItem["RemarksD"].isNull())
  79. audiosObject.remarksD = valueAudiosAudiosItem["RemarksD"].asString();
  80. if(!valueAudiosAudiosItem["ExternalId"].isNull())
  81. audiosObject.externalId = valueAudiosAudiosItem["ExternalId"].asString();
  82. auto allAudioTextsNode = valueAudiosAudiosItem["AudioTexts"]["AudioTextsItem"];
  83. for (auto valueAudiosAudiosItemAudioTextsAudioTextsItem : allAudioTextsNode)
  84. {
  85. AudiosItem::AudioTextsItem audioTextsObject;
  86. if(!valueAudiosAudiosItemAudioTextsAudioTextsItem["Text"].isNull())
  87. audioTextsObject.text = valueAudiosAudiosItemAudioTextsAudioTextsItem["Text"].asString();
  88. if(!valueAudiosAudiosItemAudioTextsAudioTextsItem["BeginTime"].isNull())
  89. audioTextsObject.beginTime = std::stof(valueAudiosAudiosItemAudioTextsAudioTextsItem["BeginTime"].asString());
  90. if(!valueAudiosAudiosItemAudioTextsAudioTextsItem["EndTime"].isNull())
  91. audioTextsObject.endTime = std::stof(valueAudiosAudiosItemAudioTextsAudioTextsItem["EndTime"].asString());
  92. if(!valueAudiosAudiosItemAudioTextsAudioTextsItem["SilenceDuration"].isNull())
  93. audioTextsObject.silenceDuration = std::stof(valueAudiosAudiosItemAudioTextsAudioTextsItem["SilenceDuration"].asString());
  94. if(!valueAudiosAudiosItemAudioTextsAudioTextsItem["EmotionValue"].isNull())
  95. audioTextsObject.emotionValue = std::stof(valueAudiosAudiosItemAudioTextsAudioTextsItem["EmotionValue"].asString());
  96. if(!valueAudiosAudiosItemAudioTextsAudioTextsItem["ChannelId"].isNull())
  97. audioTextsObject.channelId = std::stoi(valueAudiosAudiosItemAudioTextsAudioTextsItem["ChannelId"].asString());
  98. if(!valueAudiosAudiosItemAudioTextsAudioTextsItem["SpeechRate"].isNull())
  99. audioTextsObject.speechRate = std::stoi(valueAudiosAudiosItemAudioTextsAudioTextsItem["SpeechRate"].asString());
  100. if(!valueAudiosAudiosItemAudioTextsAudioTextsItem["Confidence"].isNull())
  101. audioTextsObject.confidence = std::stof(valueAudiosAudiosItemAudioTextsAudioTextsItem["Confidence"].asString());
  102. if(!valueAudiosAudiosItemAudioTextsAudioTextsItem["Person"].isNull())
  103. audioTextsObject.person = valueAudiosAudiosItemAudioTextsAudioTextsItem["Person"].asString();
  104. if(!valueAudiosAudiosItemAudioTextsAudioTextsItem["Library"].isNull())
  105. audioTextsObject.library = valueAudiosAudiosItemAudioTextsAudioTextsItem["Library"].asString();
  106. audiosObject.audioTexts.push_back(audioTextsObject);
  107. }
  108. audios_.push_back(audiosObject);
  109. }
  110. if(!value["SetId"].isNull())
  111. setId_ = value["SetId"].asString();
  112. if(!value["VideoUri"].isNull())
  113. videoUri_ = value["VideoUri"].asString();
  114. if(!value["NextMarker"].isNull())
  115. nextMarker_ = value["NextMarker"].asString();
  116. }
  117. std::vector<ListVideoAudiosResult::AudiosItem> ListVideoAudiosResult::getAudios()const
  118. {
  119. return audios_;
  120. }
  121. std::string ListVideoAudiosResult::getVideoUri()const
  122. {
  123. return videoUri_;
  124. }
  125. std::string ListVideoAudiosResult::getSetId()const
  126. {
  127. return setId_;
  128. }
  129. std::string ListVideoAudiosResult::getNextMarker()const
  130. {
  131. return nextMarker_;
  132. }