Recherche avancée

Médias (0)

Mot : - Tags -/images

Aucun média correspondant à vos critères n’est disponible sur le site.

Autres articles (56)

  • (Dés)Activation de fonctionnalités (plugins)

    18 février 2011, par

    Pour gérer l’ajout et la suppression de fonctionnalités supplémentaires (ou plugins), MediaSPIP utilise à partir de la version 0.2 SVP.
    SVP permet l’activation facile de plugins depuis l’espace de configuration de MediaSPIP.
    Pour y accéder, il suffit de se rendre dans l’espace de configuration puis de se rendre sur la page "Gestion des plugins".
    MediaSPIP est fourni par défaut avec l’ensemble des plugins dits "compatibles", ils ont été testés et intégrés afin de fonctionner parfaitement avec chaque (...)

  • Installation en mode ferme

    4 février 2011, par

    Le mode ferme permet d’héberger plusieurs sites de type MediaSPIP en n’installant qu’une seule fois son noyau fonctionnel.
    C’est la méthode que nous utilisons sur cette même plateforme.
    L’utilisation en mode ferme nécessite de connaïtre un peu le mécanisme de SPIP contrairement à la version standalone qui ne nécessite pas réellement de connaissances spécifique puisque l’espace privé habituel de SPIP n’est plus utilisé.
    Dans un premier temps, vous devez avoir installé les mêmes fichiers que l’installation (...)

  • MediaSPIP v0.2

    21 juin 2013, par

    MediaSPIP 0.2 is the first MediaSPIP stable release.
    Its official release date is June 21, 2013 and is announced here.
    The zip file provided here only contains the sources of MediaSPIP in its standalone version.
    To get a working installation, you must manually install all-software dependencies on the server.
    If you want to use this archive for an installation in "farm mode", you will also need to proceed to other manual (...)

Sur d’autres sites (11237)

  • How to download audio and video as separate files and specify the output format and filename for each ?

    14 novembre 2023, par Taako

    I'd like to download a video as separate files for both audio and video and have them named [video_id]-audio.wav and [video_id]-video.mp4

    


    How do i get yt-dlp to download the video and audio separately, then convert each to the specified output format and rename them as such ?

    


    Right now I can get them each downloaded separately but the naming isnt working out.

    


    I could also use ffmpeg separately to convert the video and audio formats after they are downloaded, so all i really need is to have the audio and video files downloaded and named

    


    Right now my args are

    


    YT_OPTIONS = {
    'format': 'bestvideo[height<=720]+bestaudio/best[height<=720]',
    'extractaudio': True,
    'keepvideo': True,
    'outtmpl': '%(id)s-%(format)s.%(ext)s',
    'restrictfilenames': True,
    'noplaylist': True
}


    


    but the format is just coming out as 247_-_1280x720_720p_+251_-_audio_only_medium and whats worse is it is the same for both the audio only and video only files just one has 251 and the other has 247.

    


  • Download youtube video as stream Readable object

    26 décembre 2023, par Abraam Emad

    in this function it download youtube video as a file out.mp4 on hard disk i need to download it as a Readable Object to upload it

    


    private async downloadVideo(videoId: string) {
// Buildin with nodejs
const cp = require('child_process');
const readline = require('readline');
// External modules
const ytdl = require('ytdl-core');
const ffmpeg = require('ffmpeg-static');
// Global constants
const ref = `https://www.youtube.com/watch?v=${videoId}`;
const tracker = {
  start: Date.now(),
  audio: { downloaded: 0, total: Infinity },
  video: { downloaded: 0, total: Infinity },
  merged: { frame: 0, speed: '0x', fps: 0 },
};

// Get audio and video streams
const audio = ytdl(ref, { quality: 'highestaudio' })
  .on('progress', (_, downloaded, total) => {
    tracker.audio = { downloaded, total };
  });
const video = ytdl(ref, { quality: 'highestvideo' })
  .on('progress', (_, downloaded, total) => {
    tracker.video = { downloaded, total };
  });

// Prepare the progress bar
let progressbarHandle = null;
const progressbarInterval = 1000;
const showProgress = () => {
  readline.cursorTo(process.stdout, 0);
  const toMB = i => (i / 1024 / 1024).toFixed(2);

  process.stdout.write(`Audio  | ${(tracker.audio.downloaded / tracker.audio.total * 100).toFixed(2)}% processed `);
  process.stdout.write(`(${toMB(tracker.audio.downloaded)}MB of ${toMB(tracker.audio.total)}MB).${' '.repeat(10)}\n`);

  process.stdout.write(`Video  | ${(tracker.video.downloaded / tracker.video.total * 100).toFixed(2)}% processed `);
  process.stdout.write(`(${toMB(tracker.video.downloaded)}MB of ${toMB(tracker.video.total)}MB).${' '.repeat(10)}\n`);

  process.stdout.write(`Merged | processing frame ${tracker.merged.frame} `);
  process.stdout.write(`(at ${tracker.merged.fps} fps => ${tracker.merged.speed}).${' '.repeat(10)}\n`);

  process.stdout.write(`running for: ${((Date.now() - tracker.start) / 1000 / 60).toFixed(2)} Minutes.`);
  readline.moveCursor(process.stdout, 0, -3);
};

// Start the ffmpeg child process
const ffmpegProcess = cp.spawn(ffmpeg, [
  // Remove ffmpeg's console spamming
  '-loglevel', '8', '-hide_banner',
  // Redirect/Enable progress messages
  '-progress', 'pipe:3',
  // Set inputs
  '-i', 'pipe:4',
  '-i', 'pipe:5',
  // Map audio & video from streams
  '-map', '0:a',
  '-map', '1:v',
  // Keep encoding
  '-c:v', 'copy',
  // Define output file
  '-f', 'mpegts', // Use MPEG-TS format for streaming
  'out.mp4'
], {
  windowsHide: true,
  stdio: [
    /* Standard: stdin, stdout, stderr */
    'inherit', 'inherit', 'inherit',
    /* Custom: pipe:3, pipe:4, pipe:5 */
    'pipe', 'pipe', 'pipe',
  ],
});
ffmpegProcess.on('close', () => {
  console.log('done');
  // Cleanup
  process.stdout.write('\n\n\n\n');
  clearInterval(progressbarHandle);
});
// Link streams
// FFmpeg creates the transformer streams and we just have to insert / read data
ffmpegProcess.stdio[3].on('data', chunk => {
  // Start the progress bar
  if (!progressbarHandle) progressbarHandle = setInterval(showProgress, progressbarInterval);
  // Parse the param=value list returned by ffmpeg
  const lines = chunk.toString().trim().split('\n');
  const args: any = {};
  for (const l of lines) {
    const [key, value] = l.split('=');
    args[key.trim()] = value.trim();
  }
  tracker.merged = args;
});
audio.pipe(ffmpegProcess.stdio[4]);
video.pipe(ffmpegProcess.stdio[5]);


    


    }`

    


  • Ffmpeg convert mp3u8 to mp3, how to skip read mp3u8 segment quick download ? [closed]

    16 janvier 2024, par Raag Jatt
    


    [hls,applehttp @ 0x21e3e80] Opening 'https://vodhlsgaana.akamaized.net/hls/98/6329098/47086991/320/hdntl=exp=1705512097~acl=%2f*~data=hdntl~hmac=766aac0bee539dc389ef0eef4979c2c982c341eaba85156b0264b1a26b3122f8/segment-86.ts' ; for reading
[hls,applehttp @ 0x21e3e80] Opening 'https://vodhlsgaana.akamaized.net/hls/98/6329098/47086991/320/hdntl=exp=1705512097~acl=%2f*~data=hdntl~hmac=766aac0bee539dc389ef0eef4979c2c982c341eaba85156b0264b1a26b3122f8/segment-87.ts' ; for reading
[hls,applehttp @ 0x21e3e80] Opening 'https://vodhlsgaana.akamaized.net/hls/98/6329098/47086991/320/hdntl=exp=1705512097~acl=%2f*~data=hdntl~hmac=766aac0bee539dc389ef0eef4979c2c982c341eaba85156b0264b1a26b3122f8/segment-88.ts' ; for reading
[hls,applehttp @ 0x21e3e80] Opening 'https://vodhlsgaana.akamaized.net/hls/98/6329098/47086991/320/hdntl=exp=1705512097~acl=%2f*~data=hdntl~hmac=766aac0bee539dc389ef0eef4979c2c982c341eaba85156b0264b1a26b3122f8/segment-89.ts' ; for reading
[hls,applehttp @ 0x21e3e80] Opening 'https://vodhlsgaana.akamaized.net/hls/98/6329098/47086991/320/hdntl=exp=1705512097~acl=%2f*~data=hdntl~hmac=766aac0bee539dc389ef0eef4979c2c982c341eaba85156b0264b1a26b3122f8/segment-90.ts' ; for reading
[hls,applehttp @ 0x21e3e80] Opening 'https://vodhlsgaana.akamaized.net/hls/98/6329098/47086991/320/hdntl=exp=1705512097~acl=%2f*~data=hdntl~hmac=766aac0bee539dc389ef0eef4979c2c982c341eaba85156b0264b1a26b3122f8/segment-91.ts' ; for reading
size= 8611kB time=00:09:11.08 bitrate= 128.0kbits/s speed=2.05x

    


    i want to save quickly in my server how can i ?