適用於您的 AI 應用程式的視訊資料庫
探索文件 »
查看示範·報告錯誤·請求功能
VideoDB Python SDK 允許您與 VideoDB 無伺服器資料庫互動。將視訊作為智慧數據而不是文件進行管理。它具有可擴展性、經濟高效且針對人工智慧應用程式和法學碩士整合進行了最佳化。
若要安裝軟體包,請在終端機中執行以下命令:
pip install videodb
從 VideoDB 控制台取得 API 金鑰。前 50 次上傳免費(無需信用卡) 。
import videodb
conn = videodb . connect ( api_key = "YOUR_API_KEY" )
現在您已經建立了與 VideoDB 的連接,您可以使用conn.upload()
上傳影片。您可以直接從youtube
、 any public url
、 S3 bucket
或local file path
上傳。當您建立第一個連線時,將建立預設集合。
upload
方法傳回一個Video
物件。
# Upload a video by url
video = conn . upload ( url = "https://www.youtube.com/watch?v=WDv4AWk0J3U" )
# Upload a video from file system
video_f = conn . upload ( file_path = "./my_video.mp4" )
上傳後,您的影片可以立即以 720p 解析度觀看。 ⚡️
video . generate_stream ()
video . play ()
您可以透過傳遞開始和結束時間戳記(以秒為單位)的時間軸作為參數來輕鬆剪輯影片的特定部分。例如,這將產生並播放前10 seconds
以及120th
和140th
秒之間的剪輯的剪輯。
stream_link = video . generate_stream ( timeline = [[ 0 , 10 ], [ 120 , 140 ]])
play_stream ( stream_link )
要搜尋影片中的位,您必須先為影片index
。這可以透過一個簡單的命令來完成。對於較長的視頻,PS 索引可能需要一些時間。
video . index_spoken_words ()
result = video . search ( "Morning Sunlight" )
result . play ()
video . get_transcript ()
Videodb
將在即將推出的版本中推出更多索引選項。現在您可以嘗試semantic
索引 - 按口語單字索引。
將來您將能夠使用以下方式索引影片:
video.search()
傳回一個SearchResults
對象,其中包含與您的搜尋查詢語意相符的影片片段或我們所說的影片shots
。
result.get_shots()
傳回與搜尋查詢相符的鏡頭清單。result.play()
返回影片的可播放網址(類似於 video.play();您可以在瀏覽器中開啟此鏈接,或使用 iframe 將其嵌入到您的網站中)。 VideoDB
可以輕鬆地在多個影片中儲存和搜尋。預設情況下,影片會上傳到您的預設收藏夾。
# Get the default collection
coll = conn . get_collection ()
# Upload Videos to a collection
coll . upload ( url = "https://www.youtube.com/watch?v=lsODSDmY4CY" )
coll . upload ( url = "https://www.youtube.com/watch?v=vZ4kOr38JhY" )
coll . upload ( url = "https://www.youtube.com/watch?v=uak_dXHh6s4" )
conn.get_collection()
:傳回一個 Collection 物件;預設集合。coll.get_videos()
:傳回 Video 物件清單;集合中的所有影片。coll.get_video(video_id)
:傳回一個 Video 對象,也就是提供的video_id
中對應的影片。coll.delete_video(video_id)
:從集合中刪除影片。您可以簡單地對集合中的所有影片進行索引,並使用搜尋方法來尋找相關結果。在這裡,我們對集合的口頭內容進行索引並執行語義搜尋。
# Index all videos in collection
for video in coll . get_videos ():
video . index_spoken_words ()
# search in the collection of videos
results = coll . search ( query = "What is Dopamine?" )
results . play ()
這裡的結果包含來自您集合的單一流中的所有匹配位。您可以立即在您的應用程式中使用這些結果。
視訊物件有多種可用方法,對您的用例很有幫助。
取得成績單
# words with timestamps
text_json = video . get_transcript ()
text = video . get_transcript_text ()
print ( text )
為影片添加字幕
它會立即返回一個新串流,並將字幕添加到影片中。
new_stream = video . add_subtitle ()
play_stream ( new_stream )
取得影片的縮圖:
video.generate_thumbnail()
:傳回影片的縮圖。
刪除影片:
video.delete()
:刪除影片。
查看更多範例和教學使用 VideoDB 構建,探索可以使用VideoDB
構建什麼。
Face
、 Scene
、 Security
、 Events
和Sports
貢獻使開源社群成為一個學習、啟發和創造的絕佳場所。我們非常感謝您所做的任何貢獻。
git checkout -b feature/AmazingFeature
)git commit -m 'Add some AmazingFeature'
)git push origin feature/AmazingFeature
)