
Recherche avancée
Autres articles (84)
-
Amélioration de la version de base
13 septembre 2013Jolie sélection multiple
Le plugin Chosen permet d’améliorer l’ergonomie des champs de sélection multiple. Voir les deux images suivantes pour comparer.
Il suffit pour cela d’activer le plugin Chosen (Configuration générale du site > Gestion des plugins), puis de configurer le plugin (Les squelettes > Chosen) en activant l’utilisation de Chosen dans le site public et en spécifiant les éléments de formulaires à améliorer, par exemple select[multiple] pour les listes à sélection multiple (...) -
Emballe médias : à quoi cela sert ?
4 février 2011, parCe plugin vise à gérer des sites de mise en ligne de documents de tous types.
Il crée des "médias", à savoir : un "média" est un article au sens SPIP créé automatiquement lors du téléversement d’un document qu’il soit audio, vidéo, image ou textuel ; un seul document ne peut être lié à un article dit "média" ; -
Menus personnalisés
14 novembre 2010, parMediaSPIP utilise le plugin Menus pour gérer plusieurs menus configurables pour la navigation.
Cela permet de laisser aux administrateurs de canaux la possibilité de configurer finement ces menus.
Menus créés à l’initialisation du site
Par défaut trois menus sont créés automatiquement à l’initialisation du site : Le menu principal ; Identifiant : barrenav ; Ce menu s’insère en général en haut de la page après le bloc d’entête, son identifiant le rend compatible avec les squelettes basés sur Zpip ; (...)
Sur d’autres sites (10568)
-
How to play video file with audio with DearPyGUI (Python) ?
1er mars 2023, par Vi TietI'm using DearPyGUI to make a simple media player that can play video file (mp4, etc.) together with it's audio. The pre-requisite is that DearPyGUI is a must, however video feature will not exist until v2.0, which is still far in the future.


Currently, I can only render the frames using OpenCV library for Python, however, the problem is how can I play the audio as well as play it in sync with the output video frames ?


For context, I'm quite new to Python, and I don't know much about video and audio streaming, but I've thought of some approaches to this problem by looking through help posts online (However, I still have no idea how I can implement any of these seamlessly) :


- 

-
OpenCV for video frames, and audio ??? some libraries like ffmpeg-python or miniaudio to play sound... (How...?)


-
Extract video frames and audio here and then use the raw data to play it (How...?)


-
This example here is pretty close to what I want excluding the playing video and audio part, but I have no idea where to go from there. The video stream and the audio stream are instances of ffmpeg.nodes.FilterableStream, and they appear to hold addresses to somewhere. (No idea...)


-
Another very close idea is using ffpyplayer I was able to get the video frame. However, the below code yields a blueish purple color tint to the video, and the frame rate is very slow compared to original (So close...)












import time
import numpy as np
import cv2 as cv
from ffpyplayer.player import MediaPlayer


# https://github.com/Kazuhito00/Image-Processing-Node-Editor/blob/main/node_editor/util.py 
def cv2dpg(frame): 

 data = cv.resize(frame, (VIDEO_WIDTH, VIDEO_HEIGHT))
 data = np.flip(frame, 2)
 data = data.ravel()
 data = np.asfarray(data, dtype=np.float32)

 return np.true_divide(data, 255.0)


# https://stackoverflow.com/questions/59611075/how-would-i-go-about-playing-a-video-stream-with-ffpyplayer
# https://matham.github.io/ffpyplayer/examples.html#examples
def play_video(loaded_file_path):

 global player, is_playing
 player = MediaPlayer(loaded_file_path)

 while is_playing:

 frame, val = player.get_frame()

 if val == 'eof':
 is_playing = False
 break

 elif not frame:
 time.sleep(0.01)

 elif val != 'eof' and frame is not None:
 img, t = frame
 w = img.get_size()[0]
 h = img.get_size()[1]
 cv_mat = np.uint8(np.asarray(list(img.to_bytearray()[0])).reshape((h, w, 3)))
 texture_data = cv2dpg(cv_mat)
 dpg.set_value(VIDEO_CANVAS_TAG, texture_data)

 dpg.set_value(VIDEO_CANVAS_TAG, DEFAULT_VIDEO_TEXTURE)



I still need to do more research, but any pointer to somewhere good to start off (either handling raw data or using different libraries) would be greatly appreciated !


EDIT :
For more context, I'm using raw texture like this example of DearPyGUI official documentation to render the video frames that were extracted in the while loop.


-
-
Piwik Developer Guides : helping you make the most of the Piwik platform
At Piwik we are creating the leading open analytics platform that gives every user full control over their data. Today we are excited to announce the official launch of the Piwik Developer Guides at developer.piwik.org. The Developer Guides complement existing User Guides and more than 250 FAQs.
Piwik Developer Guides
The Developer guides will help you whenever you need to :
- Integrate Piwik analytics in your website or application — Integration guides explain (1) how to track users of your apps (with JavaScript Tracking or other Tracking API Clients) and (2) how to query Piwik’s reporting data to integrate it into your application (Accessing Piwik data).
- Develop a new Plugin for Piwik — Plugin development guides introduce the Piwik Platform and explain how to get started with creating a new plugin to extend and customise Piwik.
- Piwik API references — API References include the references for Tracking API, Analytics API, JavaScript Tracking API and the Database schema.
- See what’s changed in the platform — Changelog for Piwik platform developers lists all changes to our HTTP API’s, Plugins, Themes, etc.
Helping Developers innovate with Piwik
Piwik is an open platform – it is open because users control their data, users control the Piwik software (it is Free/libre software) and also because users can extend the platform via the powerful plugins architecture. Piwik users can already choose from 49 plugins available on the Marketplace ! (as of 2015 April 16th)
Now that developer guides are officially released, we are hopeful that even more talented developers will be able to create Plugins and distribute them on the Marketplace.
Share your feedback
We are committed to providing excellent Developer Guides and to achieve this, we need to hear your feedback and suggestions. To send us a message, click on the “Give Feedback” link in the footer of pages (we are listening !).
What’s coming next ?
- Platform Developer Changelog will continue to list all changes to the Piwik Platform and APIs.
- We will regularly update the guides when there are changes in the platform.
- We will improve existing guides based on users’ feedback and suggestions (tasks are tracked in this issue tracker on Github.)
We hope you find the guides useful, and thank you for being part of the Piwik community !
-
Piwik Developer Guides : helping you make the most of the Piwik platform
At Piwik we are creating the leading open analytics platform that gives every user full control over their data. Today we are excited to announce the official launch of the Piwik Developer Guides at developer.piwik.org. The Developer Guides complement existing User Guides and more than 250 FAQs.
Piwik Developer Guides
The Developer guides will help you whenever you need to :
- Integrate Piwik analytics in your website or application — Integration guides explain (1) how to track users of your apps (with JavaScript Tracking or other Tracking API Clients) and (2) how to query Piwik’s reporting data to integrate it into your application (Accessing Piwik data).
- Develop a new Plugin for Piwik — Plugin development guides introduce the Piwik Platform and explain how to get started with creating a new plugin to extend and customise Piwik.
- Piwik API references — API References include the references for Tracking API, Analytics API, JavaScript Tracking API and the Database schema.
- See what’s changed in the platform — Changelog for Piwik platform developers lists all changes to our HTTP API’s, Plugins, Themes, etc.
Helping Developers innovate with Piwik
Piwik is an open platform – it is open because users control their data, users control the Piwik software (it is Free/libre software) and also because users can extend the platform via the powerful plugins architecture. Piwik users can already choose from 49 plugins available on the Marketplace ! (as of 2015 April 16th)
Now that developer guides are officially released, we are hopeful that even more talented developers will be able to create Plugins and distribute them on the Marketplace.
Share your feedback
We are committed to providing excellent Developer Guides and to achieve this, we need to hear your feedback and suggestions. To send us a message, click on the “Give Feedback” link in the footer of pages (we are listening !).
What’s coming next ?
- Platform Developer Changelog will continue to list all changes to the Piwik Platform and APIs.
- We will regularly update the guides when there are changes in the platform.
- We will improve existing guides based on users’ feedback and suggestions (tasks are tracked in this issue tracker on Github.)
We hope you find the guides useful, and thank you for being part of the Piwik community !