ฐานข้อมูลวิดีโอสำหรับแอปพลิเคชัน AI ของคุณ
สำรวจเอกสาร »
ดูการสาธิต · รายงานข้อผิดพลาด · คุณสมบัติคำขอ
VideoDB Python SDK ช่วยให้คุณสามารถโต้ตอบกับฐานข้อมูลแบบไร้เซิร์ฟเวอร์ VideoDB จัดการวิดีโอด้วยข้อมูลอัจฉริยะ ไม่ใช่ไฟล์ สามารถปรับขนาดได้ ประหยัดต้นทุน และปรับให้เหมาะสมสำหรับแอปพลิเคชัน AI และการรวม LLM
หากต้องการติดตั้งแพ็คเกจ ให้รันคำสั่งต่อไปนี้ในเทอร์มินัลของคุณ:
pip install videodb
รับคีย์ API จากคอนโซล VideoDB ฟรีสำหรับการอัปโหลด 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()
ส่งคืนรายการ Shot ที่ตรงกับคำค้นหาresult.play()
ส่งกลับ URL ที่สามารถเล่นได้สำหรับวิดีโอ (คล้ายกับ 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()
: ส่งคืนวัตถุคอลเลกชัน; คอลเลกชันเริ่มต้นcoll.get_videos()
: ส่งคืนรายการวัตถุวิดีโอ วิดีโอทั้งหมดในคอลเลกชัน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 ()
ผลลัพธ์ที่นี่มีบิตที่ตรงกันทั้งหมดในสตรีมเดียวจากคอลเลกชันของคุณ คุณสามารถใช้ผลลัพธ์เหล่านี้ในใบสมัครของคุณได้ทันที
มีหลายวิธีใน Video Object ที่อาจเป็นประโยชน์สำหรับกรณีการใช้งานของคุณ
รับใบรับรองผลการเรียน
# 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
)