
Recherche avancée
Médias (1)
-
Bug de détection d’ogg
22 mars 2013, par
Mis à jour : Avril 2013
Langue : français
Type : Video
Autres articles (66)
-
Mise à jour de la version 0.1 vers 0.2
24 juin 2013, parExplications des différents changements notables lors du passage de la version 0.1 de MediaSPIP à la version 0.3. Quelles sont les nouveautés
Au niveau des dépendances logicielles Utilisation des dernières versions de FFMpeg (>= v1.2.1) ; Installation des dépendances pour Smush ; Installation de MediaInfo et FFprobe pour la récupération des métadonnées ; On n’utilise plus ffmpeg2theora ; On n’installe plus flvtool2 au profit de flvtool++ ; On n’installe plus ffmpeg-php qui n’est plus maintenu au (...) -
Personnaliser en ajoutant son logo, sa bannière ou son image de fond
5 septembre 2013, parCertains thèmes prennent en compte trois éléments de personnalisation : l’ajout d’un logo ; l’ajout d’une bannière l’ajout d’une image de fond ;
-
Ecrire une actualité
21 juin 2013, parPrésentez les changements dans votre MédiaSPIP ou les actualités de vos projets sur votre MédiaSPIP grâce à la rubrique actualités.
Dans le thème par défaut spipeo de MédiaSPIP, les actualités sont affichées en bas de la page principale sous les éditoriaux.
Vous pouvez personnaliser le formulaire de création d’une actualité.
Formulaire de création d’une actualité Dans le cas d’un document de type actualité, les champs proposés par défaut sont : Date de publication ( personnaliser la date de publication ) (...)
Sur d’autres sites (13681)
-
ffmpeg doesn't work when the script is launched by cron - No protocol specified, Cannot open display :0.0
14 janvier 2024, par a kffmpeg in my script doesn't work when the script is launched by cron of the root


Error : No protocol specified, Cannot open display :0.0


OS : Ubuntu 20.04


#!/bin/bash
log=/var/log/log2/log2.txt

echo ______________ $(date) >> "$log"
echo "$""DISPLAY" "= " "$DISPLAY" >> "$log" ;
echo whoami ' ' $(whoami) >> "$log" 
echo pwd ' ' $(pwd) >> "$log" 
echo "$""USER" "=" ' ' "$USER" >> "$log"
echo PATH ' ' "$PATH" >> "$log"
echo which ffmpeg ' ' $(which ffmpeg)>> "$log" 
echo whereis ffmpeg ' ' $(whereis ffmpeg) >> "$log" 
echo "\nls -l /bin/* | grep ffmpeg" ' ' >> "$log"
ls -l /usr/bin/* | grep ffmpeg >> "$log"
echo "ls -l /var/log | grep log2" ' '>> "$log"
ls -l /var/log | grep log2 >> "$log"

ffmpeg -y -f x11grab -s 1366x768 -i :0.0 -r 25 /var/log/log2/test.mp4 -loglevel error 2>>"$log" &

echo "pid ffmpeg ""$""!"" = " "$!" >> "$log" 
sleep 5
kill "$!"
echo exit >> "$log"
exit



When Cron (Cron of the root) launches the script, ffmpeg shows the error "No protocol specified, Cannot open display :0.0"


/var/log/log2/log2.txt :


______________ ven. 05 mai 2023 04:10:01 CEST
$DISPLAY = 
whoami root
pwd /root
$USER = 
PATH /usr/bin:/bin
which ffmpeg /usr/bin/ffmpeg
whereis ffmpeg ffmpeg: /usr/bin/ffmpeg /usr/share/ffmpeg /usr/share/man/man1/ffmpeg.1.gz
ls -l /usr/bin/* | grep ffmpeg 
-rwxr-xr-x 1 root root 284976 mai 18 2022 /usr/bin/ffmpeg
ls -l /var/log | grep log2 
drwxrwxrwx 2 root root 4096 mai 5 04:09 log2
pid ffmpeg $! = 74590
No protocol specified
[x11grab @ 0x56244aa06740] Cannot open display :0.0, error 1.
:0.0: Input/output error
exit



When I launch the script manually as a not-root user (with sudo), everything work correctly :


______________ ven. 05 mai 2023 04:10:47 CEST
$DISPLAY = :0
whoami root
pwd /home/an
$USER = root
PATH /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin
which ffmpeg /usr/bin/ffmpeg
whereis ffmpeg ffmpeg: /usr/bin/ffmpeg /usr/share/ffmpeg /usr/share/man/man1/ffmpeg.1.gz
ls -l /usr/bin/* | grep ffmpeg 
-rwxr-xr-x 1 root root 284976 mai 18 2022 /usr/bin/ffmpeg
ls -l /var/log | grep log2 
drwxrwxrwx 2 root root 4096 mai 5 04:09 log2
pid ffmpeg $! = 74618
exit



When I launch the script manually as the root, everything works correctly :


______________ ven. 05 mai 2023 04:11:27 CEST
$DISPLAY = :0
whoami root
pwd /root
$USER = root
PATH /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin
which ffmpeg /usr/bin/ffmpeg
whereis ffmpeg ffmpeg: /usr/bin/ffmpeg /usr/share/ffmpeg /usr/share/man/man1/ffmpeg.1.gz
ls -l /usr/bin/* | grep ffmpeg 
-rwxr-xr-x 1 root root 284976 mai 18 2022 /usr/bin/ffmpeg
ls -l /var/log | grep log2 
drwxrwxrwx 2 root root 4096 mai 5 04:11 log2
pid ffmpeg $! = 74683
exit



When crontab of an ordinary user launches the script, it works correctly :


$DISPLAY = 
whoami an
pwd /home/an
$USER = 
PATH /usr/bin:/bin
which ffmpeg /usr/bin/ffmpeg
whereis ffmpeg ffmpeg: /usr/bin/ffmpeg /usr/share/ffmpeg /usr/share/man/man1/ffmpeg.1.gz
ls -l /usr/bin/* | grep ffmpeg 
-rwxr-xr-x 1 root root 284976 mai 18 2022 /usr/bin/ffmpeg
ls -l /var/log | grep log2 
drwxrwxrwx 2 root root 4096 mai 5 05:05 log2
pid ffmpeg $! = 77601
exit



I have tried to put into the script :


export DISPLAY=":0"


export DISPLAY=":0.0"


export DISPLAY=":1"


-
Gstreamer missing Decoder meta/x-gst-fourcc-mebx
27 juin 2024, par ZZakI'm currently working with GStreamer in a Linux environment and encountered an issue after upgrading from GStreamer 1.18 to 1.22. While trying to process a video file, I received the following error message :


[hevc @ 0x7f26101eba00] Skipping NAL unit 62 
[hevc @ 0x7f26100fcd40] Skipping NAL unit 62 
[hevc @ 0x7f2610113e00] Skipping NAL unit 62 
missing-plugin, type=(string)decoder, detail=(GstCaps)meta/x-gst-fourcc-mebx, name=(string)"meta/x-gst-fourcc-mebx\ decoder";




Also discoverer gives

Missing plugins (gstreamer|1.0|gst-discoverer-1.0|meta/x-gst-fourcc-mebx decoder|decoder-meta/x-gst-fourcc-mebx)


Source video is with .MOV video(made by iPhone) with I420_10LE format and not corrupted.
Also it's data (streams) :


Stream #0:0(und): Video: hevc (Main 10) (hvc1 / 0x31637668), yuv420p10le(tv, bt2020nc/bt2020/arib-std-b67), 1920x1080, 8455 kb/s, 29.97 fps, 29.97 tbr, 600 tbn, 600 tbc (default)
 Metadata:
 rotate : 90
 creation_time : 2022-02-12T07:53:40.000000Z
 handler_name : Core Media Video
 vendor_id : [0][0][0][0]
 encoder : HEVC
 Side data:
 DOVI configuration record: version: 1.0, profile: 8, level: 4, rpu flag: 1, el flag: 0, bl flag: 1, compatibility id: 4
 displaymatrix: rotation of -90.00 degrees
 Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 181 kb/s (default)
 Metadata:
 creation_time : 2022-02-12T07:53:40.000000Z
 handler_name : Core Media Audio
 vendor_id : [0][0][0][0]
 Stream #0:2(und): Data: none (mebx / 0x7862656D), 0 kb/s (default)
 Metadata:
 creation_time : 2022-02-12T07:53:40.000000Z
 handler_name : Core Media Metadata
 Stream #0:3(und): Data: none (mebx / 0x7862656D), 0 kb/s (default)
 Metadata:
 creation_time : 2022-02-12T07:53:40.000000Z
 handler_name : Core Media Metadata
 Stream #0:4(und): Data: none (mebx / 0x7862656D), 34 kb/s (default)
 Metadata:
 creation_time : 2022-02-12T07:53:40.000000Z




This suggests that a GStreamer plugin with a decoder for the MIME type meta/x-gst-fourcc-mebx is missing from my environment. I didn't face this issue with version 1.18, but it started occurring after the upgrade to 1.22.
I've tried searching for information about this specific decoder, but I haven't been able to find any relevant details.
Could you please provide any insights or guidance on how to handle this MIME type, or which plugin should be installed to provide the necessary decoder ? If this decoder is part of a proprietary plugin or requires a specific setup, any information on how to proceed would be greatly appreciated.
Thank you for your time and help !


-
a command in a script doesn't work when the script is launched by cron
5 mai 2023, par a kWhen I launch the script manually both as a not-root user (with sudo) and as the root, everything work correctly.
When Cron (Cron of the root) launches it, ffmpeg doesn't work (but the others lines of the script work correctly).


#!/bin/bash
log=/var/log/log2/log2.txt

echo ______________ $(date) >> "$log"
echo -n whoami ' ' >> "$log" ; whoami >> "$log"
echo -n pwd ' ' >> "$log" ; pwd >> "$log"
echo "$""USER" = ' ' "$USER" >> "$log"
echo PATH ' ' $PATH >> "$log"
echo -n which ffmpeg ' ' >> "$log" ; which ffmpeg >> "$log"
echo -n whereis ffmpeg ' ' >> "$log" ; whereis ffmpeg >> "$log"

echo "" >> "$log"
echo ls -l "/bin/* | grep ffmpeg" ' ' >> "$log"
ls -l /bin/* | grep ffmpeg >> "$log"

echo "" >> "$log"
echo ls -l "/usr/bin/* | grep ffmpeg" ' '>> "$log"
ls -l /usr/bin/* | grep ffmpeg >> "$log"

echo "" >> "$log"
echo ls -l "/var/log | grep log2" ' '>> "$log"
ls -l /var/log | grep log2 >> "$log"

echo "" >> "$log"
echo ls -l "/var | grep log" ' '>> "$log"
ls -l /var | grep log >> "$log"

ffmpeg -y -f x11grab -s 1366x768 -i :0.0 /var/log/log2/test.mp4 2>/dev/null &
echo "$!"
sleep 5
kill "$!"
exit



The script puts in the file /var/log/log2/log2.txt :


whoami root
pwd /root
$USER = 
PATH /usr/bin:/bin
which ffmpeg /usr/bin/ffmpeg
whereis ffmpeg ffmpeg: /usr/bin/ffmpeg /usr/share/ffmpeg /usr/share/man/man1/ffmpeg.1.gz

ls -l /bin/* | grep ffmpeg 
-rwxr-xr-x 1 root root 284976 mai 18 2022 /bin/ffmpeg

ls -l /usr/bin/* | grep ffmpeg 
-rwxr-xr-x 1 root root 284976 mai 18 2022 /usr/bin/ffmpeg

ls -l /var/log | grep log2 
drwxrwxrwx 2 root root 4096 mai 5 03:22 log2

ls -l /var | grep log 
drwxrwxr-x 16 root syslog 36864 mai 5 00:00 log



I have tried to verify :


- 

- the permissions of the file ffmpeg
- the permissions of the folder where ffmpeg writes to
- the $PATH
- the path of ffmpeg
- the path of the file where ffmpeg should write to