
Recherche avancée
Autres articles (60)
-
Ajouter notes et légendes aux images
7 février 2011, parPour pouvoir ajouter notes et légendes aux images, la première étape est d’installer le plugin "Légendes".
Une fois le plugin activé, vous pouvez le configurer dans l’espace de configuration afin de modifier les droits de création / modification et de suppression des notes. Par défaut seuls les administrateurs du site peuvent ajouter des notes aux images.
Modification lors de l’ajout d’un média
Lors de l’ajout d’un média de type "image" un nouveau bouton apparait au dessus de la prévisualisation (...) -
Configuration spécifique d’Apache
4 février 2011, parModules spécifiques
Pour la configuration d’Apache, il est conseillé d’activer certains modules non spécifiques à MediaSPIP, mais permettant d’améliorer les performances : mod_deflate et mod_headers pour compresser automatiquement via Apache les pages. Cf ce tutoriel ; mode_expires pour gérer correctement l’expiration des hits. Cf ce tutoriel ;
Il est également conseillé d’ajouter la prise en charge par apache du mime-type pour les fichiers WebM comme indiqué dans ce tutoriel.
Création d’un (...) -
HTML5 audio and video support
13 avril 2011, parMediaSPIP uses HTML5 video and audio tags to play multimedia files, taking advantage of the latest W3C innovations supported by modern browsers.
The MediaSPIP player used has been created specifically for MediaSPIP and can be easily adapted to fit in with a specific theme.
For older browsers the Flowplayer flash fallback is used.
MediaSPIP allows for media playback on major mobile platforms with the above (...)
Sur d’autres sites (8184)
-
avfilter/af_astats : fix msvc compile error
29 avril 2019, par Matthias Troffaes -
Popen ffmpeg process hang if run in shell and leaves a defunct process if run in background
12 janvier 2023, par dr__noobI have a script that runs the FFmpeg command. When I run the command in the background using the
&
operator it runs fine but leaves a zombie process. And when I remove the operator the process hangs and goes into thepipe_wait
state.

The code used to execute the FFmpeg command


def run_cmd(cmd:str,
 check:bool=False, 
 capture:bool=False,
 timeout:float=None,
 ) -> tuple[int,bytearray,bytearray]:
 import subprocess

 stdout_data,stderr_data = (bytearray(),bytearray()) if capture else (None,None)
 try:
 sp = subprocess.Popen(cmd, shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE, )
 while any(data:=(sp.stdout.readline(),sp.stderr.readline())):
 out,err = data
 if out: stdout_data += out
 if err: stderr_data += err
 sp.communicate(timeout=timeout)
 return sp.returncode,stdout_data,stderr_data
 except subprocess.CalledProcessError as e:
 print("Called process error")
 raise e
 except subprocess.TimeoutExpired as e:
 sp.kill()
 print(f"{sp.pid} killed")
 if check:
 raise e
 except PermissionError as e:
 print("Permission error")
 if check:
 raise e



The command which is causing the issue is


nice -n 10 ffmpeg -loglevel verbose -hide_banner -y -threads 0 -i "/dev/shm/480TEST-1999963.dfw.480_1673030704/SBS_Plus_Test_Feed.480TEST-1999963.480.eng.p.intermediate.mp4" -map 0:v:0? -q:v 1 -f rawvideo -pix_fmt "yuv420p" -an ./SBS_Plus_Test_Feed.480TEST-1999963.480.eng.p_fifo_video.yuv -map 0:a:0? -q:a 1 -ac 2 -af "aresample=async=1:first_pts=0" -vn ./SBS_Plus_Test_Feed.480TEST-1999963.480.eng.p_fifo_audio.wav > "./SBS_Plus_Test_Feed.480TEST-1999963.480.eng.p.ffmpeg.demux.log" 2>&1 &



However, other FFmpeg commands are running fine without the last
&
. But this command will block if I remove the&
. If I keep it as it is, the process will later become a zombie(defunct). Can it be because it is actually anice -n 10
causing the issue ?

Example of a command running fine


ffmpeg -loglevel verbose -hide_banner -y -threads 0 -i "./SBS_Plus_Test_Feed.480TEST-1999963.480.eng.p.ts" -r "59.94" -s:v "1280"x"720" -pix_fmt "yuv420p" -vcodec libx264 -x264-params qp="30" -af "aresample=async=1:first_pts=0" -crf 0 -q:a 1 -vf yadif=1 ./SBS_Plus_Test_Feed.480TEST-1999963.480.eng.p.intermediate.mp4 > "./p.intermediate.mp4.intermediate.ffmpeg.log" 2>&1



Till now I have tried other options like
-nostdin
andnull
suggested in ffmpeg hangs when run in background

Is there any other way run this without creating a zombie ?


-
libFLAC/fixed.c : Fix undefined behaviour
28 août 2015, par Erik de Castro LopolibFLAC/fixed.c : Fix undefined behaviour
Left shift if a negative integer such that the sign bit is affected is
(according to the C spec) undefined behaviour and the residual
calculations using the shift operator were hitting this.Fortunately these same calculations using plain multiplication do not
invoke UB and according to benchmarking (on x86_64 linux) have the same
performance as the bit shift version.