Recherche avancée

Médias (91)

Autres articles (42)

  • La file d’attente de SPIPmotion

    28 novembre 2010, par

    Une file d’attente stockée dans la base de donnée
    Lors de son installation, SPIPmotion crée une nouvelle table dans la base de donnée intitulée spip_spipmotion_attentes.
    Cette nouvelle table est constituée des champs suivants : id_spipmotion_attente, l’identifiant numérique unique de la tâche à traiter ; id_document, l’identifiant numérique du document original à encoder ; id_objet l’identifiant unique de l’objet auquel le document encodé devra être attaché automatiquement ; objet, le type d’objet auquel (...)

  • La sauvegarde automatique de canaux SPIP

    1er avril 2010, par

    Dans le cadre de la mise en place d’une plateforme ouverte, il est important pour les hébergeurs de pouvoir disposer de sauvegardes assez régulières pour parer à tout problème éventuel.
    Pour réaliser cette tâche on se base sur deux plugins SPIP : Saveauto qui permet une sauvegarde régulière de la base de donnée sous la forme d’un dump mysql (utilisable dans phpmyadmin) mes_fichiers_2 qui permet de réaliser une archive au format zip des données importantes du site (les documents, les éléments (...)

  • MediaSPIP Core : La Configuration

    9 novembre 2010, par

    MediaSPIP Core fournit par défaut trois pages différentes de configuration (ces pages utilisent le plugin de configuration CFG pour fonctionner) : une page spécifique à la configuration générale du squelettes ; une page spécifique à la configuration de la page d’accueil du site ; une page spécifique à la configuration des secteurs ;
    Il fournit également une page supplémentaire qui n’apparait que lorsque certains plugins sont activés permettant de contrôler l’affichage et les fonctionnalités spécifiques (...)

Sur d’autres sites (4277)

  • ffmpeg doesn't work when the script is launched by cron - No protocol specified, Cannot open display :0.0

    14 janvier 2024, par a k

    ffmpeg 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"

    


  • Making a timelapse by drag and drop - A rebuild of an old script using ImageMagick

    14 août 2019, par cursor_major

    I have written an apple script previously to automate a task I do in my work many times.

    I shoot Raw + JPG in camera, copy to hard drive.

    I then drag named and dated folder eg. "2019_08_14_CAM_A_CARD_01" on to an automator app and it divides the files in to folders "NEF" and "JPG" respectively.

    I then drag the appropriate "JPG" folder onto my Timelapse app and it runs the image sequence process in QT7 and then saves the file with the parent folder name in the grandparent folder. This keeps things super organised for when I want to re link to the original RAW files.

    [code below]

    It is a 2 step process and works well for my needs, however, Apple are going to be resigning Quicktime 7 Pro so my app has a foreseeable end of life.

    I want to take this opportunity to refine and improve the process using terminal and ImageMagick.

    I have managed to work some code that runs well in terminal, but I have to navigate to the folder first then run a script. It doesn’t do the file renaming and doesn’t save in the right place.

    Also, when I try and run the simple script in an automator ’App’ it throws up errors even before trying to add anything clever with the file naming.

    Later, once I have recreated my timelapse. maker app I want to get clever with more of ImageMagicks commands and overlay a small super of the original frame name in the corner so I can expedite my reconnecting workflow.

    I’m sorry, I’m a photographer not a coder but I’ve been bashing my head trying to work this out and I’ve hit a brick wall.

    File Sorter

       repeat with d in dd
           do shell script "d=" & d's POSIX path's quoted form & "
    cd \"$d\" || exit

    mkdir -p {MOV,JPG,NEF,CR2}
    find . -type f -depth 1 -iname '*.mov' -print0 | xargs -0 -J % mv % MOV
    find . -type f -depth 1 -iname '*.cr2' -print0 | xargs -0 -J % mv % CR2
    find . -type f -depth 1 -iname '*.jpg' -print0 | xargs -0 -J % mv % JPG
    find . -type f -depth 1 -iname '*.nef' -print0 | xargs -0 -J % mv % NEF

    for folder in `ls`;
    do if [ `ls $folder | wc -l` == 0 ]; then
       rmdir $folder;
    fi; done;

    "
       end repeat
    end open```



    Timelapse Compiler

    ```on run {input, parameters}
       repeat with d in input
           set d to d's contents
           tell application "Finder"
               set seq1 to (d's file 1 as alias)
               set dparent to d's container as alias
               set mov to "" & dparent & (dparent's name) & ".mov"
           end tell
           tell application "QuickTime Player 7"
               activate
               open image sequence seq1 frames per second 25
               tell document 1
                   with timeout of 500 seconds
                       save self contained in file mov
                   end timeout
                   quit
               end tell
           end tell
       end repeat
       return input
    end run```


    Current code that runs from within Terminal after I have navigated to folder of JPGs

    ```ffmpeg -r 25 -f image2 -pattern_type glob -i '*.JPG' -codec:v prores_ks -profile:v 0 imagemagick_TL_Test_01.mov```
  • Having problems running my unix ffmpeg script on windows

    3 octobre 2020, par zero credibility

    im trying to run this script for converting between the two formats of VR on a windows machine

    


    ffmpeg -i input.mp4 \
-filter_complex "[0:v]crop=in_w/2:in_h:0:0 [top];
[0:v]crop=in_w/2:in_h:in_w/2:0[bottom];
[top][bottom]vstack,
scale=iw*min(2000/iw\,2000/ih):ih*min(2000/iw\,2000/ih),
pad=2000:2000:(ow-iw)/2:(oh-ih)/2[outv]"
-map "[outv]" -map 0:a -c:a copy output_3dv.mp4


    


    from what ive found i think the \ characters need to be swapped with ^ like this

    


    ffmpeg ^
-i input.mp4 ^
-filter_complex "[0:v]crop=in_w/2:in_h:0:0 [top]; [0:v]crop=in_w/2:in_h:in_w/2:0[bottom]; [top][bottom]vstack, scale=iw*min(2000/iw,2000/ih):ih*min(2000/iw,2000/ih), pad=2000:2000:(ow-iw)/2:(oh-ih)/2[outv]" ^
-map "[outv]" -map 0:a -c:a copy output_3dv.mp4



    


    but its still falling over . would anyone have any pointers one where im going wrong please ?
thanks in advance