{"version": 2, "width": 80, "height": 24, "timestamp": 1610481672, "env": {"SHELL": "/bin/sh", "TERM": "xterm-256color"}} [1.491292, "o", "\u001b[1;31mTo begin, let us instantiate an instance\u001b[0m\r\n\u001b[1;31m of the Media Insights on AWS API helper\u001b[0m\r\n\r\n"] [4.497831, "o", "mi_api = MI\u001b[1m(\u001b[0m\u001b[1m)\u001b[0m\r\n"] [6.504482, "o", "\r\n\u001b[1;31mNow we can create a video preprocessing stage\u001b[0m\r\n\u001b[1;31m for the start of our workflow\u001b[0m\r\n\r\n"] [10.510651, "o", "preprocess_video_stage = \u001b[1m{\u001b[0m\u001b[32m\"Name\"\u001b[0m: \u001b[32m\"PreprocessVideo\"\u001b[0m, \r\n\u001b[32m\"Operations\"\u001b[0m: \u001b[1m[\u001b[0m\u001b[32m\"Mediainfo\"\u001b[0m, \u001b[32m\"Thumbnail\"\u001b[0m\u001b[1m]\u001b[0m\u001b[1m}\u001b[0m\r\n"] [14.51222, "o", "mi_api.create_stage\u001b[1m(\u001b[0mpreprocess_video_stage\u001b[1m)\u001b[0m\r\n"] [16.519136, "o", "\r\n\u001b[1;31mAfter that, we can create a machine learning\u001b[0m\r\n\u001b[1;31m analysis stage\u001b[0m\r\n\r\n"] [19.521086, "o", "\r\nmachine_learning_stage = \u001b[1m{\u001b[0m\r\n \u001b[32m\"Name\"\u001b[0m: \u001b[32m\"MlVideo\"\u001b[0m, \r\n \u001b[32m\"Operations\"\u001b[0m: \u001b[1m[\u001b[0m\r\n \u001b[32m\"celebrityRecognition\"\u001b[0m, \r\n \u001b[32m\"contentModeration\"\u001b[0m,\r\n \u001b[32m\"faceDetection\"\u001b[0m,\r\n \u001b[32m\"labelDetection\"\u001b[0m, \r\n \u001b[32m\"shotDetection\"\u001b[0m, \r\n \u001b[32m\"textDetection\"\u001b[0m, \r\n \u001b[32m\"technicalCueDetection\"\u001b[0m\r\n \u001b[1m]\u001b[0m\r\n\u001b[1m}\u001b[0m\r\n\r\n"] [23.523908, "o", "mi_api.create_stage\u001b[1m(\u001b[0mmachine_learning_stage\u001b[1m)\u001b[0m\r\n"] [25.528178, "o", "\r\n\u001b[1;31mThen, we will combine both of these stages into a\u001b[0m\r\n\u001b[1;31m sequential workflow that can be executed \u001b[0m\r\n\r\n"] [29.530463, "o", "\r\nanalyze_video_workflow = \u001b[1m{\u001b[0m\r\n \u001b[32m\"Name\"\u001b[0m: \u001b[32m\"AnalyzeVideo\"\u001b[0m, \r\n \u001b[32m\"StartAt\"\u001b[0m: \u001b[32m\"PreprocessVideo\"\u001b[0m,\r\n \u001b[32m\"Stages\"\u001b[0m: \u001b[1m{\u001b[0m\r\n \u001b[32m\"PreprocessVideo\"\u001b[0m: \u001b[1m{\u001b[0m\u001b[32m\"Next\"\u001b[0m: \u001b[32m\"MlVideo\"\u001b[0m\u001b[1m}\u001b[0m, \r\n \u001b[32m\"MlVideo\"\u001b[0m: \u001b[1m{\u001b[0m\u001b[32m\"End\"\u001b[0m: \u001b[3;92mTrue\u001b[0m\u001b[1m}\u001b[0m\r\n \u001b[1m}\u001b[0m\r\n\u001b[1m}\u001b[0m\r\n\r\n"] [32.534783, "o", "\r\nmi_api.create_workflow\u001b[1m(\u001b[0manalyze_video_workflow\u001b[1m)\u001b[0m\r\n\r\n"] [35.538812, "o", "\r\n\r\n\u001b[1;31mAnd finally, we execute the workflow\u001b[0m\r\n\r\n\r\n"] [38.544457, "o", "\r\nworkflow_execution = \u001b[1m{\u001b[0m\r\n \u001b[32m\"Name\"\u001b[0m: \u001b[32m\"AnalyzeVideo\"\u001b[0m,\r\n \u001b[32m\"Input\"\u001b[0m: \u001b[1m{\u001b[0m\r\n \u001b[32m\"Media\"\u001b[0m: \u001b[1m{\u001b[0m\r\n \u001b[32m\"Video\"\u001b[0m: \u001b[1m{\u001b[0m\r\n \u001b[32m\"S3Bucket\"\u001b[0m: \u001b[32m\"mi-dataplane\"\u001b[0m,\r\n \u001b[32m\"S3Key\"\u001b[0m: \u001b[32m'upload/'\u001b[0m + \u001b[32m'video.mp4'\u001b[0m\r\n \u001b[1m}\u001b[0m\r\n \u001b[1m}\u001b[0m\r\n \u001b[1m}\u001b[0m\r\n\u001b[1m}\u001b[0m\r\n\r\n"] [41.548766, "o", "\r\nmi_api.start_workflow\u001b[1m(\u001b[0mworkflow_execution\u001b[1m)\u001b[0m\r\n\r\n"] [43.551643, "o", "\r\n\r\n"]