Demonstrate how to use a SceneManager to process a subset of the input video.
(test_video_file: str)
| 55 | |
| 56 | |
| 57 | def test_api_scene_manager_start_end_time(test_video_file: str): |
| 58 | """Demonstrate how to use a SceneManager to process a subset of the input video.""" |
| 59 | from scenedetect import ContentDetector, SceneManager, open_video |
| 60 | |
| 61 | video = open_video(test_video_file) |
| 62 | scene_manager = SceneManager() |
| 63 | scene_manager.add_detector(ContentDetector()) |
| 64 | # Times can be seconds (float), frames (int), or timecode 'HH:MM:SSS.nnn' (str). |
| 65 | # See test_api_timecode_types() for examples of each format. |
| 66 | start_time = 200 # Start at frame (int) 200 |
| 67 | end_time = 15.0 # End at 15 seconds (float) |
| 68 | video.seek(start_time) |
| 69 | scene_manager.detect_scenes(video=video, end_time=end_time) |
| 70 | scene_list = scene_manager.get_scene_list() |
| 71 | for i, scene in enumerate(scene_list): |
| 72 | print(f"Scene {i + 1}: {scene[0].get_timecode()} - {scene[1].get_timecode()}") |
| 73 | |
| 74 | |
| 75 | def test_api_open_video_framerate_legacy_alias(test_video_file: str): |
nothing calls this directly
no test coverage detected