Recherche avancée

Médias (9)

Mot : - Tags -/soundtrack

Autres articles (86)

  • Personnaliser en ajoutant son logo, sa bannière ou son image de fond

    5 septembre 2013, par

    Certains 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, par

    Pré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 ) (...)

  • Websites made ​​with MediaSPIP

    2 mai 2011, par

    This page lists some websites based on MediaSPIP.

Sur d’autres sites (15700)

  • xdotool to tab to a button on a web page and use the mouse to disable a drop down menu option

    25 juin 2023, par Mash

    I have a Bash script that open a Amazon chime meeting URL in firefox, uses XDOtool to enter a meetig participant name, and tab and mouse click functions. and next uses ffmpeg to stream the video and audio output of the Amazon chime meeting to an RTMP destination.

    


    When this is streamed, the Amazon chime web app has "More" drop down Menu. Within the Menu it has a option to disable the self view. I want to add xdotool commands to disable this self view option from the more drop down menu on the amazon chime web app page.

    


    the Amazon chime meeting URL is - https://app.chime.aws/meetings/

    


    Here is the Bash Script

    


    #!/bin/bash&#xA;BROWSER_URL=${MEETING_URL}&#xA;SCREEN_WIDTH=1920&#xA;SCREEN_HEIGHT=1080&#xA;SCREEN_RESOLUTION=${SCREEN_WIDTH}x${SCREEN_HEIGHT}&#xA;CAPTURE_SCREEN_RESOLUTION=1920x1080&#xA;COLOR_DEPTH=24&#xA;X_SERVER_NUM=2&#xA;VIDEO_BITRATE=6000&#xA;VIDEO_FRAMERATE=30&#xA;VIDEO_GOP=$((VIDEO_FRAMERATE * 2))&#xA;AUDIO_BITRATE=160k&#xA;AUDIO_SAMPLERATE=44100&#xA;AUDIO_CHANNELS=2&#xA;&#xA;# Start PulseAudio server so Firefox will have somewhere to which to send audio&#xA;pulseaudio -D --exit-idle-time=-1&#xA;pacmd load-module module-virtual-sink sink_name=v1  # Load a virtual sink as `v1`&#xA;pacmd set-default-sink v1  # Set the `v1` as the default sink device&#xA;pacmd set-default-source v1.monitor  # Set the monitor of the v1 sink to be the default source&#xA;&#xA;# Start X11 virtual framebuffer so Firefox will have somewhere to draw&#xA;Xvfb :${X_SERVER_NUM} -ac -screen 0 ${SCREEN_RESOLUTION}x${COLOR_DEPTH} > /dev/null 2>&amp;1 &amp;&#xA;export DISPLAY=:${X_SERVER_NUM}.0&#xA;sleep 0.5  # Ensure this has started before moving on&#xA;&#xA;# Create a new Firefox profile for capturing preferences for this&#xA;firefox --no-remote --new-instance --createprofile "foo4 /tmp/foo4"&#xA;&#xA;# Install the OpenH264 plugin for Firefox&#xA;mkdir -p /tmp/foo4/gmp-gmpopenh264/1.8.1.1/&#xA;pushd /tmp/foo4/gmp-gmpopenh264/1.8.1.1 >&amp; /dev/null&#xA;curl -s -O http://ciscobinary.openh264.org/openh264-linux64-2e1774ab6dc6c43debb0b5b628bdf122a391d521.zip&#xA;unzip openh264-linux64-2e1774ab6dc6c43debb0b5b628bdf122a391d521.zip&#xA;rm -f openh264-linux64-2e1774ab6dc6c43debb0b5b628bdf122a391d521.zip&#xA;popd >&amp; /dev/null&#xA;&#xA;# Set the Firefox preferences to enable automatic media playing with no user&#xA;# interaction and the use of the OpenH264 plugin.&#xA;cat &lt;<eof>> /tmp/foo4/prefs.js&#xA;user_pref("media.autoplay.default", 0);&#xA;user_pref("media.autoplay.enabled.user-gestures-needed", false);&#xA;user_pref("media.navigator.permission.disabled", true);&#xA;user_pref("media.gmp-gmpopenh264.abi", "x86_64-gcc3");&#xA;user_pref("media.gmp-gmpopenh264.lastUpdate", 1571534329);&#xA;user_pref("media.gmp-gmpopenh264.version", "1.8.1.1");&#xA;user_pref("doh-rollout.doorhanger-shown", true);&#xA;EOF&#xA;&#xA;# Start Firefox browser and point it at the URL we want to capture&#xA;#&#xA;# NB: The `--width` and `--height` arguments have to be very early in the&#xA;# argument list or else only a white screen will result in the capture for some&#xA;# reason.&#xA;firefox \&#xA;  -P foo4 \&#xA;  --width ${SCREEN_WIDTH} \&#xA;  --height ${SCREEN_HEIGHT} \&#xA;  --new-instance \&#xA;  --first-startup \&#xA;  --foreground \&#xA;  --kiosk \&#xA;  --ssb \&#xA;  "${BROWSER_URL}" \&#xA;  &amp;&#xA;sleep 10  # Ensure this has started before moving on, waiting for loading the Chime web app&#xA;xdotool key Return #Select yes for the pop-up window of "Would you like to open this link with Chime app?"&#xA;sleep 3&#xA;xdotool key Escape #Close the pop-up window&#xA;sleep 3&#xA;xdotool type Livestream #Type "Livestream" on the name input field&#xA;sleep 3&#xA;xdotool key Tab #Move to "join the meeting" button&#xA;sleep 3&#xA;xdotool key Return #Click "join the meeting" button&#xA;sleep 3&#xA;xdotool key Return #Close the pop-up window once again&#xA;sleep 3&#xA;xdotool key Escape #Close the pop-up window once again&#xA;sleep 3&#xA;xdotool key Return #Click "Use system audio" setting&#xA;sleep 3&#xA;xdotool key Escape #Close warning message&#xA;sleep 3&#xA;xdotool mousemove 1 1 click 1  # Move mouse out of the way so it doesn&#x27;t trigger the "pause" overlay on the video tile  &#xA;&#xA;# Start ffmpeg to transcode the capture from the X11 framebuffer and the&#xA;# PulseAudio virtual sound device we created earlier and send that to the RTMP&#xA;# endpoint in H.264/AAC format using a FLV container format.&#xA;#&#xA;# NB: These arguments have a very specific order. Seemingly inocuous changes in&#xA;# argument order can have pretty drastic effects, so be careful when&#xA;# adding/removing/reordering arguments here.&#xA;ffmpeg \&#xA;  -hide_banner -loglevel error \&#xA;  -nostdin \&#xA;  -s ${CAPTURE_SCREEN_RESOLUTION} \&#xA;  -r ${VIDEO_FRAMERATE} \&#xA;  -draw_mouse 0 \&#xA;  -f x11grab \&#xA;    -i ${DISPLAY} \&#xA;  -f pulse \&#xA;    -ac 2 \&#xA;    -i default \&#xA;    -vf "crop=1600:980:0:1080" \&#xA;  -c:v libx264 \&#xA;    -pix_fmt yuv420p \&#xA;    -profile:v main \&#xA;    -preset slow \&#xA;    -x264opts "nal-hrd=cbr:no-scenecut" \&#xA;    -minrate ${VIDEO_BITRATE} \&#xA;    -maxrate ${VIDEO_BITRATE} \&#xA;    -g ${VIDEO_GOP} \&#xA;  -filter_complex "aresample=async=1000:min_hard_comp=0.100000:first_pts=1" \&#xA;  -async 1 \&#xA;  -c:a aac \&#xA;    -b:a ${AUDIO_BITRATE} \&#xA;    -ac ${AUDIO_CHANNELS} \&#xA;    -ar ${AUDIO_SAMPLERATE} \&#xA;  -f flv ${RTMP_URL}``&#xA;&#xA;</eof>

    &#xA;

    what i have tried so far in in the bash script

    &#xA;

  • How to set the destination folder of a Node.js fluent-ffmpeg screenshot to your AWS S3 bucket using getSignedUrl() ?

    10 juillet 2017, par Madhavi Mohoni

    I’m writing a program to generate .png thumbnails (with the same name, in the same folder) for a set of .mp4 videos in my Amazon S3 bucket. For this example, I’m going to create a /folder/file.png for a /folder/file.mp4 in the bucket. I’ve managed to set the source URL using the s3 object and getSignedUrl as follows :

    var srcurl = s3.getSignedUrl('getObject', {
           Bucket: 'bucket-name',
           Key: '/folder/file.mp4'
         });

    and

    new ffmpeg({ source: srcurl })
        .screenshots({
           count: 1,
           filename: '%f'.substr(0, '%f'.indexOf('.')) + '.png',
           /* To shorten the long string that's returned */
           folder: desturl,
           size: MAX_WIDTH + 'x' + MAX_HEIGHT
         });

    The destination URL has to be the same folder as the source. So I set it as follows :

    var desturl = s3.getSignedUrl('putObject', {
           Bucket: 'bucket-name',
           Key: '/folder/file' + '.png'
         });

    This combination doesn’t work - is there a way to do this correctly ?

  • Video player scroll doesn't work after ffmpeg audio and video merge (NodeJS)

    1er novembre 2022, par Pietro Leto

    I made youtube downloader to download video from youtube using nodejs library ytdl-core. If I wanted to download video with best quality I had to download them without sound. So, in my script, I download audio and video separately and I merge them into an mp4 file.&#xA;What's the problem ? Video player scroll doesn't work. I can see the video but I can't going back or move on, and I can't see video duration.

    &#xA;

    const express = require("express");&#xA;const cors = require("cors");&#xA;const app = express();&#xA;const ffmpeg = require(&#x27;ffmpeg-static&#x27;);&#xA;const cp = require(&#x27;child_process&#x27;);&#xA;const ytdl = require("ytdl-core");&#xA;&#xA;app.use(cors());&#xA;&#xA;app.listen(3000, () => {&#xA;    console.log("Server is working at port 3000 !!");&#xA;});&#xA;&#xA;app.get(&#x27;/download&#x27;, (req,res) => {&#xA;    var url = req.query.URL;&#xA;    var formato = req.query.FORMAT;&#xA;&#xA;    try {&#xA;        let vid = ytdl(url,{filter:&#x27;videoonly&#x27;, quality:&#x27;highestvideo&#x27;})&#xA;        let aud = ytdl(url, {filter: &#x27;audioonly&#x27;, quality:&#x27;highestaudio&#x27;});&#xA;&#xA;        ytdl.getInfo(url).then(info => {&#xA;            titolo = info.videoDetails.title;&#xA;&#xA;            res.header("Content-Disposition", &#x27;attachment;  filename=&#x27; &#x2B; titolo &#x2B; &#x27;.mp4&#x27;);&#xA;&#xA;            const ffmpegProcess = cp.spawn(ffmpeg, [&#xA;                &#x27;-i&#x27;, `pipe:3`,&#xA;                &#x27;-i&#x27;, `pipe:4`,&#xA;                &#x27;-map&#x27;,&#x27;0:v:0&#x27;,&#xA;                &#x27;-map&#x27;,&#x27;1:a:0&#x27;,&#xA;                &#x27;-c:v&#x27;, &#x27;copy&#x27;,&#xA;                &#x27;-c:a&#x27;, &#x27;aac&#x27;,&#xA;                &#x27;-crf&#x27;,&#x27;27&#x27;,&#xA;                &#x27;-preset&#x27;,&#x27;veryfast&#x27;,&#xA;                &#x27;-movflags&#x27;,&#x27;frag_keyframe&#x2B;empty_moov&#x27;,&#xA;                &#x27;-f&#x27;,&#x27;mp4&#x27;,&#xA;                &#x27;-loglevel&#x27;,&#x27;error&#x27;,&#xA;                &#x27;-&#x27;&#xA;            ], {&#xA;                stdio: [&#xA;                &#x27;pipe&#x27;, &#x27;pipe&#x27;, &#x27;pipe&#x27;, &#x27;pipe&#x27;, &#x27;pipe&#x27;,&#xA;                ],&#xA;            });&#xA;              &#xA;            aud.pipe(ffmpegProcess.stdio[4]);&#xA;            vid.pipe(ffmpegProcess.stdio[3]);&#xA;            ffmpegProcess.stdio[1].pipe(res);&#xA;        });&#xA;    }&#xA;    catch(err) {&#xA;        console.log("Error with URL: " &#x2B; url &#x2B; "\nERROR: " &#x2B; err &#x2B; "\n\n");&#xA;    }&#xA;});&#xA;

    &#xA;

    I have not found alternatives to do this. I need a working script to download youtube videos with good quality.

    &#xA;