
Recherche avancée
Autres articles (99)
-
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" ; -
Configuration spécifique pour PHP5
4 février 2011, parPHP5 est obligatoire, vous pouvez l’installer en suivant ce tutoriel spécifique.
Il est recommandé dans un premier temps de désactiver le safe_mode, cependant, s’il est correctement configuré et que les binaires nécessaires sont accessibles, MediaSPIP devrait fonctionner correctement avec le safe_mode activé.
Modules spécifiques
Il est nécessaire d’installer certains modules PHP spécifiques, via le gestionnaire de paquet de votre distribution ou manuellement : php5-mysql pour la connectivité avec la (...)
Sur d’autres sites (13233)
-
Anomalie #2025 (Nouveau) : Surlignage intempestif
8 avril 2011, par r o m yLe surlignage des résultats de recherche tel qu’actuellement géré par SPIP, pose plusieurs soucis, dont des surlignements, souvent plus surprenants qu’utiles, lorsqu’on arrive sur un site après une requête en moteur de recherche Google.
le surlignage devrait être inactif par défaut (poser la class (...)
-
How to keep personally identifiable information safe
23 janvier 2020, par Joselyn Khor -
Decoding the h.264 stream from a serial port
18 mars, par PeterI would like to know if there is a reliable way to decode an H.264 NAL stream coming through a serial port using software.


So far, I have managed to decode a single frame using a python script. In this script, I first write the incoming data to a file, and when the end-of-frame marker 00_00_00_01 appears, I display the frame using ffplay.


import serial
import subprocess
import os
import time

ser = serial.Serial('COM3', 115200, timeout=1)
output_file = "output.264"

# Variable to store the ffplay process
ffplay_process = None

# Open the file for writing in binary mode
with open(output_file, "wb") as file:

 print("Writing bytes to output.264. Waiting for the end-of-frame marker 0x00000001.")

 buffer = bytearray()
 marker = b'\x00\x00\x00\x01'

 try:
 while True:
 if ser.in_waiting: # If there is data in the buffer
 data = ser.read(ser.in_waiting) # Read all available bytes
 buffer.extend(data)

 # Check if the end-of-frame marker is in the buffer
 while marker in buffer:
 index = buffer.index(marker) + len(marker) # Position after the marker
 frame = buffer[:index] # Extract the frame
 buffer = buffer[index:] # Keep the remaining data

 print(f"Frame recorded: {len(frame)} bytes")
 file.write(frame) # Write the frame to the file
 file.flush() # Force writing to disk

 # Close the ffplay window if it is already open
 if ffplay_process and ffplay_process.poll() is None:
 ffplay_process.terminate()
 ffplay_process.wait() # Wait for the process to terminate

 # Play the recorded frame, reopening the window
 ffplay_process = subprocess.Popen(["ffplay", "-f", "h264", "-i", output_file])

 except KeyboardInterrupt:
 print("\nRecording stopped.")
 finally:
 # Close the serial port and the ffplay process
 ser.close()



However, each time a new end-of-frame marker is detected, the ffplay window closes and reopens to show the next frame. It will flicker when transferring the video. Is there a way to display the frames in the same window for seamless playback when streaming video ?


Or is there a better approach or software that is more suited for this task ? I do not know where to start, so I will be glad for any hints.