U kunt deze techniek gebruiken om een ​​eenvoudige videospeler te bouwen of om een ​​speler te integreren in een meer gecompliceerde app.

Er zijn verschillende manieren waarop u video's op uw computer kunt afspelen, waaronder het gebruik van ingebouwde videospelers, andere mediaspelersoftware of browserplug-ins. U kunt ook een video afspelen met behulp van een eenvoudig Python-script dat u op de opdrachtregel kunt uitvoeren.

U kunt videobestanden afspelen in Python met behulp van de cv2-module. Deze module biedt tal van functies waarmee u videobestanden van verschillende formaten kunt weergeven. Dit omvat het laden van de video, het weergeven op het scherm en het regelen van het afspelen ervan.

Wat is de cv2-module in Python?

De cv2-module is een open-source Python-bibliotheek die u kunt gebruiken om afbeeldingen en video's te verwerken. Hiermee kunt u beeld- en videobestanden in verschillende formaten lezen, manipuleren en weergeven.

De cv2-module is ontwikkeld bovenop OpenCV (Open Source Computer Vision Library), dat eveneens open-source is. Het biedt vooraf gebouwde hulpmiddelen om te helpen bij objectdetectie en gezichtsherkenning.

instagram viewer

Als u niet bekend bent met Python, kunt u meer trucs leren voor betere Python-code schrijven. Je kunt ook andere verkennen Python GitHub-opslagplaatsen.

Een nieuw videospelervenster openen met behulp van cv2

U kunt een nieuw venster openen met behulp van dit Python-script. Het venster speelt uw geselecteerde video af.

Hiermee kunt u het voorbeeld bekijken GitHub-reproductie.

  1. Importeer in een nieuw Python-script genaamd videoPlayer.py de cv2-module bovenaan het bestand:
    importeren cv2
  2. Gebruik in een nieuwe functie genaamd playVideo() de cv2-module om een ​​nieuw leeg venster te openen:
    defvideo afspelen():
    cv2.namedWindow("Leeg raam", cv2.WINDOW_NORMAL)
  3. Verklein uw venster naar de gewenste breedte en hoogte:
     cv2.resizeWindow("Leeg raam", 270, 480)
  4. Gebruik de functie waitKey() van de module om voor onbepaalde tijd te wachten op gebruikersinvoer. Hierdoor kunt u op bepaalde knoppen drukken, zoals de Escape-toets terwijl het venster open is:
     cv2.waitKey(0)
  5. Wanneer de gebruiker toch op een toets drukt, gebruikt u de destroyAllWindows() om het venster te sluiten:
     cv2.destroyAllWindows()
  6. Roep de functie playVideo() op aan het einde van het script:
     video afspelen()
  7. Navigeer op een opdrachtregel naar de map waarin u uw Python-script hebt opgeslagen. Bijvoorbeeld:
    cd-bureaublad
  8. Gebruik de opdracht python om het Python-script uit te voeren en de vensterspeler te bekijken:
    python videoPlayer.py

Een gekozen lokaal bestand afspelen met behulp van het videospelervenster

Gebruik de lege vensterspeler om een ​​video af te spelen die is opgeslagen op uw lokale computer.

  1. Pas de functie playVideo() aan. Vraag de gebruiker aan het begin van de functie om het bestandspad naar een videobestand in te voeren:
     bestand = invoer("Voer het pad naar het MP4-videobestand in: ")
  2. Maak een nieuw video-opnameobject van het geselecteerde bestand. Dit object vertegenwoordigt de video zelf en u kunt het gebruiken om toegang te krijgen tot frames waaruit de video bestaat. Initialiseer en open de video-opname:
     cap = cv2.VideoCapture (bestand) 
  3. Nadat u het venster hebt gemaakt en de grootte ervan hebt gewijzigd, gebruikt u een lus om te controleren of het video-opnameobject is geïnitialiseerd en geopend:
     cv2.namedWindow("Video speler", cv2.WINDOW_NORMAL)
    cv2.resizeWindow("Video speler", 270, 480)

    terwijl(cap.isOpened()):
  4. Gebruik binnen de while-lus de functie read() om het volgende frame van de video te lezen. De functie retourneert de successtatus van het gelezen frame en de waarde van het daadwerkelijke frame:
     succes, frame = cap.read()
  5. Als het lezen van het frame is gelukt, gebruikt u de functie imshow() om het frame in het venster weer te geven:
    als succes:
    cv2.imshow('Video speler', kader)
  6. Vervang de waitKey() functie. Als de gebruiker op de Q op het toetsenbord, of drukt u op de X knop in de rechterbovenhoek van het venster, sluit de videospeler:
     quitButton = cv2.waitKey(25) & 0xFF == volgorde('Q')
    closeButton = cv2.getWindowProperty('Video speler', cv2.WND_PROP_VISIBLE) < 1

    als quitknop of closeButton:
    pauze

  7. Voeg een else-instructie toe om te controleren of het lezen van het frame niet is gelukt. Als het mislukt, onderbreek dan de while-lus om runtime-fouten te voorkomen:
    anders:
    pauze
  8. Stop na de while-lus de opname en video en sluit het venster:
     cap.release()
    cv2.destroyAllWindows()
  9. Navigeer op een opdrachtregel naar de map waarin u uw Python-script hebt opgeslagen. Bijvoorbeeld:
    cd-bureaublad
  10. Gebruik de python-opdracht om het Python-script uit te voeren:
    python videoPlayer.py
  11. Voer het pad naar je mp4-bestand in om de video af te spelen:
    C:\Users\Sharl\Desktop\script\DogWithDragons.mp4

Video's afspelen in Python

Het afspelen van een videobestand is slechts een van de vele nuttige en interessante dingen die u kunt bereiken met een Python-script. Om je vaardigheden te blijven verbeteren en je vaardigheden te verbeteren, is het belangrijk om te blijven oefenen met andere projecten die je kunt maken.