@@ -114,6 +114,24 @@ def get_workspace(args):
114114 print (json .dumps (workspace_json , indent = 2 ))
115115
116116
117+ def run_video_inference_api (args ):
118+ rf = roboflow .Roboflow (args .api_key )
119+ project = rf .workspace ().project (args .project )
120+ version = project .version (args .version_number )
121+ model = project .version (version ).model
122+
123+ # model = VideoInferenceModel(args.api_key, project.id, version.version, project.id) # Pass dataset_id
124+ # Pass model_id and version
125+ job_id , signed_url , expire_time = model .predict_video (
126+ args .video_file ,
127+ args .fps ,
128+ prediction_type = "batch-video" ,
129+ )
130+ results = model .poll_until_video_results (job_id )
131+ with open ("test_video.json" , "w" ) as f :
132+ json .dump (results , f )
133+
134+
117135def get_workspace_project_version (args ):
118136 # api_key = load_roboflow_api_key(args.workspaceId)
119137 rf = roboflow .Roboflow (args .api_key )
@@ -174,6 +192,7 @@ def _argparser():
174192 _add_workspaces_parser (subparsers )
175193 _add_upload_model_parser (subparsers )
176194 _add_get_workspace_project_version_parser (subparsers )
195+ _add_run_video_inference_api_parser (subparsers )
177196 deployment .add_deployment_parser (subparsers )
178197
179198 return parser
@@ -332,6 +351,43 @@ def _add_workspaces_parser(subparsers):
332351 workspaceget_parser .set_defaults (func = get_workspace )
333352
334353
354+ def _add_run_video_inference_api_parser (subparsers ):
355+ run_video_inference_api_parser = subparsers .add_parser (
356+ "run_video_inference_api" ,
357+ help = "run video inference api" ,
358+ )
359+
360+ run_video_inference_api_parser .add_argument (
361+ "-a" ,
362+ dest = "api_key" ,
363+ help = "api_key" ,
364+ )
365+ run_video_inference_api_parser .add_argument (
366+ "-p" ,
367+ dest = "project" ,
368+ help = "project_id to upload the image into" ,
369+ )
370+ run_video_inference_api_parser .add_argument (
371+ "-v" ,
372+ dest = "version_number" ,
373+ type = int ,
374+ help = "version number to upload the model to" ,
375+ )
376+ run_video_inference_api_parser .add_argument (
377+ "-f" ,
378+ dest = "video_file" ,
379+ help = "path to video file" ,
380+ )
381+ run_video_inference_api_parser .add_argument (
382+ "-fps" ,
383+ dest = "fps" ,
384+ type = int ,
385+ help = "fps" ,
386+ default = 5 ,
387+ )
388+ run_video_inference_api_parser .set_defaults (func = run_video_inference_api )
389+
390+
335391def _add_infer_parser (subparsers ):
336392 infer_parser = subparsers .add_parser (
337393 "infer" ,
0 commit comments