Du kan använda den här tekniken för att bygga en enkel videospelare eller för att integrera en spelare i en mer komplicerad app.
Det finns olika sätt du kan spela upp videor på din dator, inklusive att använda inbyggda videospelare, annan mediaspelare eller plugin-program för webbläsare. Du kan också spela upp en video med ett enkelt Python-skript som du kan köra på kommandoraden.
Du kan spela upp videofiler i Python med cv2-modulen. Denna modul erbjuder många funktioner som gör att du kan visa videofiler i olika format. Detta inkluderar att ladda videon, visa den på skärmen och styra uppspelningen.
Vad är cv2-modulen i Python?
cv2-modulen är ett Python-bibliotek med öppen källkod som du kan använda för att bearbeta bilder och videor. Det låter dig läsa, manipulera och visa bild- och videofiler i olika format.
cv2-modulen är utvecklad ovanpå OpenCV (Open Source Computer Vision Library), som också är öppen källkod. Den tillhandahåller förbyggda verktyg för att hjälpa till med objektdetektering och ansiktsigenkänning.
Om du inte är bekant med Python kan du lära dig fler knep för skriver bättre Python-kod. Du kan också utforska andra Python GitHub-förråd.
Hur man öppnar ett nytt videospelarefönster med cv2
Du kan öppna ett nytt fönster med detta Python-skript. Fönstret kommer att spela upp din valda video.
Du kan se exemplet med detta GitHub repro.
- I ett nytt Python-skript som heter videoPlayer.py, importera cv2-modulen överst i filen:
importera cv2
- Inuti en ny funktion som heter playVideo(), använd cv2-modulen för att öppna ett nytt tomt fönster:
defspela filmen():
cv2.namedWindow("Tömt fönster", cv2.WINDOW_NORMAL) - Ändra storlek på ditt fönster till önskad bredd och höjd:
cv2.resizeWindow("Tömt fönster", 270, 480)
- Använd modulens waitKey()-funktion för att vänta på användarinmatning på obestämd tid. Detta gör att du kan trycka på vissa knappar som Escape-tangenten medan fönstret är öppet:
cv2.waitKey(0)
- När användaren trycker på en tangent, använd destroyAllWindows() för att stänga fönstret:
cv2.destroyAllWindows()
- Anropa playVideo()-funktionen i slutet av skriptet:
spela filmen()
- På en kommandorad, navigera till mappen där du lagrade ditt Python-skript. Till exempel:
cd skrivbord
- Använd kommandot python för att köra Python-skriptet och visa fönsterspelaren:
python videoPlayer.py
Hur man spelar en vald lokal fil med hjälp av videospelarens fönster
Använd den tomma fönsterspelaren för att spela upp en video lagrad på din lokala dator.
- Ändra playVideo()-funktionen. I början av funktionen, be användaren att ange sökvägen till en videofil:
fil = input("Ange sökvägen till MP4-videofilen: ")
- Skapa ett nytt videoinspelningsobjekt från den valda filen. Det här objektet representerar själva videon och du kan använda den för att komma åt ramar som utgör videon. Initiera och öppna videoinspelningen:
cap = cv2.VideoCapture (fil)
- När du har skapat och ändrat storlek på fönstret använder du en loop för att kontrollera om videoinsamlingsobjektet är initierat och öppnat:
cv2.namedWindow("Videospelare", cv2.WINDOW_NORMAL)
cv2.resizeWindow("Videospelare", 270, 480)
medan(cap.isOpened()): - Inuti while-loopen använder du read()-funktionen för att läsa nästa bildruta i videon. Funktionen returnerar framgångsstatus för den lästa ramen och värdet för den faktiska ramen:
framgång, ram = cap.read()
- Om ramläsningen lyckades, använd imshow()-funktionen för att visa ramen i fönstret:
om Framgång:
cv2.imshow('Videospelare', ram) - Byt ut funktionen waitKey(). Om användaren trycker på q på tangentbordet eller trycker på X knappen uppe till höger i fönstret, stäng videospelaren:
quitButton = cv2.waitKey(25) & 0xFF == ord('q')
closeButton = cv2.getWindowProperty('Videospelare', cv2.WND_PROP_VISIBLE) < 1om quitButton eller closeButton:
ha sönder - Lägg till en else-sats för att kontrollera om ramläsningen inte lyckades. Om det misslyckades, bryt dig ur while-slingan för att förhindra eventuella körtidsfel:
annan:
ha sönder - Efter while-loopen stoppar du inspelningen och videon och stänger fönstret:
cap.release()
cv2.destroyAllWindows() - På en kommandorad, navigera till mappen där du lagrade ditt Python-skript. Till exempel:
cd skrivbord
- Använd kommandot python för att köra Python-skriptet:
python videoPlayer.py
- Ange sökvägen till din mp4-fil för att börja spela upp videon:
C:\Users\Sharl\Desktop\script\DogWithDragons.mp4
Spela upp videor i Python
Att spela upp en videofil är bara en av många användbara och intressanta saker du kan åstadkomma med ett Python-skript. För att fortsätta att förbättra dina färdigheter och utveckla dina förmågor är det viktigt att du fortsätter att öva på att använda andra projekt som du kan skapa.