Commit ·
22e5b51
1
Parent(s): e20283b
Pexels: select first relevant video/photo instead of random for better accuracy
Browse files
modules/video_creator/services/libraries/pexels_client.py
CHANGED
|
@@ -144,12 +144,13 @@ class PexelsClient:
|
|
| 144 |
long_enough_videos = [v for v in suitable_videos if v["duration"] >= duration_threshold]
|
| 145 |
|
| 146 |
if long_enough_videos:
|
| 147 |
-
|
|
|
|
| 148 |
logger.info(f"Selected Pexels video ID {selected['id']} (duration: {selected['duration']}s) for query '{query}'")
|
| 149 |
return selected
|
| 150 |
|
| 151 |
-
# Fallback to
|
| 152 |
-
selected =
|
| 153 |
logger.info(f"Selected Pexels video ID {selected['id']} (duration: {selected['duration']}s) for query '{query}' (fallback)")
|
| 154 |
return selected
|
| 155 |
|
|
@@ -201,8 +202,8 @@ class PexelsClient:
|
|
| 201 |
logger.debug(f"No photos found for query: {query}")
|
| 202 |
return None
|
| 203 |
|
| 204 |
-
# Select
|
| 205 |
-
photo =
|
| 206 |
|
| 207 |
# Get URL (prefer original or large2x)
|
| 208 |
src = photo.get("src", {})
|
|
|
|
| 144 |
long_enough_videos = [v for v in suitable_videos if v["duration"] >= duration_threshold]
|
| 145 |
|
| 146 |
if long_enough_videos:
|
| 147 |
+
# Select FIRST (most relevant) video instead of random
|
| 148 |
+
selected = long_enough_videos[0]
|
| 149 |
logger.info(f"Selected Pexels video ID {selected['id']} (duration: {selected['duration']}s) for query '{query}'")
|
| 150 |
return selected
|
| 151 |
|
| 152 |
+
# Fallback to first suitable video
|
| 153 |
+
selected = suitable_videos[0]
|
| 154 |
logger.info(f"Selected Pexels video ID {selected['id']} (duration: {selected['duration']}s) for query '{query}' (fallback)")
|
| 155 |
return selected
|
| 156 |
|
|
|
|
| 202 |
logger.debug(f"No photos found for query: {query}")
|
| 203 |
return None
|
| 204 |
|
| 205 |
+
# Select FIRST (most relevant) photo instead of random
|
| 206 |
+
photo = photos[0]
|
| 207 |
|
| 208 |
# Get URL (prefer original or large2x)
|
| 209 |
src = photo.get("src", {})
|