Recherche avancée

Médias (0)

Mot : - Tags -/logo

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

Autres articles (70)

  • Mise à jour de la version 0.1 vers 0.2

    24 juin 2013, par

    Explications 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, 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 ;

  • Les autorisations surchargées par les plugins

    27 avril 2010, par

    Mediaspip core
    autoriser_auteur_modifier() afin que les visiteurs soient capables de modifier leurs informations sur la page d’auteurs

Sur d’autres sites (8287)

  • Download m3u8 video from web page with authorization

    31 août 2024, par maya_soloveva

    I try download m3u8 video from webpage with access by authorization.

    


    I use ffmpeg command.
I get headers from network tab.

    


    ffmpeg -y -loglevel verbose -headers "$(cat headers.txt)" -i "https://apps.foxford.ru/webinar-foxford/storage/api/v2/backends/yandex/sets/hls.webinar.foxford.ru::420e27e1-1c7d-43e9-9195-fc8b99e6f50a/objects/long.v2.yandex.video.360p.master.m3u8" output2.mp4 -c copy -f mp4 file:foxford_01.mp4.part


    


    headers.txt content :

    


    Host: apps.foxford.ru
User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:129.0) Gecko/20100101 Firefox/129.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br, zstd
Referer: https://apps.foxford.ru/webinar/?audience=foxford.ru&brand=foxford&embedded_origin=https%3A%2F%2Ffoxford.ru&external_id=5aefae2d-e810-49ef-8344-d3807535fd9e&lesson_id=250799&scope=Z2lkOi8vc3RvZWdlL1VsbXM6OlJvb21zOjpXZWJpbmFyLzUwNDcwMA&utm_referrer=https%3A%2F%2Ffoxford.ru%2Fcourses%2F9193%2Flessons%2F250799&backurl=https%253A%252F%252Fapps%252Efoxford%252Eru%252Fapi%252Fv1%252Fredirs%252Faudiences%252Ffoxford%252Eru%252Fapps%252Fwebinar
DNT: 1
Sec-Fetch-Dest: empty
Sec-Fetch-Mode: cors
Sec-Fetch-Site: same-origin
authorization: Bearer eyJhbGciOiJFUzI1NiJ9.eyJleHAiOjE3MjUwODU1MzUsImlzcyI6InN2Yy5mb3hmb3JkLnJ1IiwiYXVkIjoidXNyLmZveGZvcmQucnUiLCJzdWIiOiJaMmxrT2k4dmMzUnZaV2RsTDFWelpYSTZPbEIxY0dsc0x6RXdPRFU0TXpJeSJ9.NE9IsraTHFKicr3lkjzTTEkGLoGP-bL74nlX1umcPjC62h9MGXjPUFXL53jsnixd7b-WPtIc8N2WhsC6Ipt8IQ
Connection: keep-alive
Cookie: _csrf_token=%2Ba0goi1UnpRzFxpPOIbnZBaxtY0YUlZyBnyGohC5NbfBaVzLvwpEtM0x%2BjEPvJqJrcvsy2qMZHTStvusdxeUmQ%3D%3D; advcake_trackid=4b724357-eb38-b2f0-6919-4a4363aef58a; _tm_lt_sid=1720871531732.305536; client_timezone=Europe/Moscow; _ga=GA1.2.506102438.1720871532; tmr_lvid=7b674da8235ea642c3bfacf244eeae53; tmr_lvidTS=1720871533984; _ym_uid=1720871534834198811; _ym_d=1720871534; _tt_enable_cookie=1; _ttp=El4ZowXxQWdsnA31_DDrCt_AT_4; popmechanic_sbjs_migrations=popmechanic_1418474375998%3D1%7C%7C%7C1471519752600%3D1%7C%7C%7C1471519752605%3D1; _foxford_cookie_consent=yes; advcake_session_id=2fb2830e-9b68-2529-f9e4-2dec39973ef9; adtech_uid=ba6ca4c8-055a-4f46-b06c-6df09c20e8a4%3Afoxford.ru; top100_id=t1.7729862.2001929594.1723667001899; t3_sid_7729862=s1.1788907302.1725084603508.1725085234295.9.11; _ym_isad=2; mindboxDeviceUUID=9d785862-f8db-4ba8-b7bc-ccd9dbba98e1; directCrm-session=%7B%22deviceGuid%22%3A%229d785862-f8db-4ba8-b7bc-ccd9dbba98e1%22%7D; qrator_jsid=1725084559.622.G14rJEU37yUAYfzF-0l4eiu40m3uudgv95tu3faluhe7up6nv; mindboxSessionIsOpen=true
Priority: u=4
Pragma: no-cache
Cache-Control: no-cache
TE: trailers


    


    ffmpeg returns HTTP error Server returned 401 Unauthorized (authorization failed) :

    


    enter image description here

    


    Headers from network tab :
enter image description here

    


  • Call for Speakers : Share Your Voice at MatomoCamp 2025 !

    10 juillet, par Alex Carmona

    MatomoCamp is back for its 2025 edition — and the Call for Speakers is now open until July 31st !

    As proud sponsors of this unique, community-driven event, we’re excited to invite experts, enthusiasts, and curious minds to contribute to MatomoCamp 2025, the annual online gathering dedicated to web analytics, open source, digital privacy, and of course — Matomo. MatomoCamp is the premier free online conference for the Matomo Analytics community in Europe, sponsored by Matomo Analytics. Taking place online on Wednesday 26 November 2025 from 9:30 AM to 5:30 PM CET, this event brings together professionals passionate about ethical analytics, data privacy, and building a better web.

    Whether you’re a long-time user, developer, marketer, researcher, or just someone with a fresh perspective on ethical analytics, your voice belongs at MatomoCamp. Last year, we welcomed over 1,000 attendees from around the world. This year, we’re aiming even higher with an expanded programme designed to serve everyone from analytics beginners to enterprise architects.

    What is MatomoCamp ?

    MatomoCamp is a free, fully online event bringing together the global Matomo community. Across two days of talks, panels, demos, and workshops, participants explore :

    • Web analytics & measurement
    • Digital marketing & SEO
    • Open source projects & collaboration
    • Privacy-first data strategies
    • Case studies, experiments, and more

    With sessions in English, French, German, and beyond, MatomoCamp aims to make digital analytics more accessible, ethical, and transparent for everyone.

    MatomoCamp returns this November 2025 with an exciting new vision. For the first time, we’re expanding beyond purely technical content to welcome speakers from all backgrounds who can contribute insights on analytics, privacy, marketing, and the ethical web. Whether you’re a developer, marketer, analyst, or privacy advocate, we want to hear from you.

    Who can apply ?

    Anyone ! We’re looking for people from all backgrounds who want to share :

    • A practical tip or use case with Matomo
    • Insights into digital analytics, privacy, or open source
    • A success (or failure !) story from your own journey
    • A workshop or hands-on demonstration
    • A bold opinion on the future of web data
    • A behind-the-scenes look at your work or research

    You don’t have to be a professional speaker. We welcome first-time speakers, underrepresented voices, and community members who want to share something valuable — no matter how niche or broad.

    What makes a great talk ?

    There’s no one right formula. But here’s what works well :

    • Real-world experience
    • Specific, actionable insights
    • A clear structure (15–45 minutes)
    • Something you care deeply about
    • A story only you can tell

    And remember — this isn’t just about Matomo. Topics that touch on ethical analytics, open source values, or digital sovereignty are more than welcome.

    Key info

    • Where : Online (free & open to all)
    • When : November 2025 (exact dates to be announced)
    • Languages : English, French, German (other languages welcome !)
    • Deadline to apply : July 31, 2025
    • Submit your talk here

    Why does this matter ?

    At Matomo, we believe that data should empower, not exploit. MatomoCamp is more than just an event — it’s a celebration of what’s possible when communities come together to build a better digital future.

    As sponsors, we’re proud to support this independent, open source event. But more importantly, we want to amplify your voice — because every perspective shared brings us closer to a more ethical, transparent, and inclusive analytics ecosystem.

    Have a story to share ?

    Don’t overthink it. If it matters to you, it will matter to someone else. Apply to speak before July 31st and join us at MatomoCamp 2025 !

    Submit your session here !

    Let’s build the future of analytics — together.

    call for speaker matomocamp 2025
  • Error : ENOENT : no such file or directory ( AWS Lambda function)

    29 janvier 2019, par Arun

    I am trying to convert the video file to audio using FFMPEG. But I keep getting this error while converting video to audio in AWS Lambda function. I searched a lot of googles but I can’t figure out a suitable solution.
    If anyone knows the answer please share your solution. I referred this video to audio convertion method from this post.

    Error :

    { Error: ENOENT: no such file or directory, lstat '/var/task/tmp/c82f117b7841f1c2a4c9cd86cd93aad9.mp3'
    at Error (native)
    at Object.fs.lstatSync (fs.js:994:11)
    at Object.byteLength (/var/task/node_modules/aws-sdk/lib/util.js:175:30)
    at Request.SET_CONTENT_LENGTH (/var/task/node_modules/aws-sdk/lib/event_listeners.js:161:40)
    at Request.callListeners (/var/task/node_modules/aws-sdk/lib/sequential_executor.js:106:20)
    at Request.emit (/var/task/node_modules/aws-sdk/lib/sequential_executor.js:78:10)
    at Request.emit (/var/task/node_modules/aws-sdk/lib/request.js:683:14)
    at Request.transition (/var/task/node_modules/aws-sdk/lib/request.js:22:10)
    at AcceptorStateMachine.runTo (/var/task/node_modules/aws-sdk/lib/state_machine.js:14:12)
    at /var/task/node_modules/aws-sdk/lib/state_machine.js:26:10

    message: 'ENOENT: no such file or directory, lstat
    \'/var/task/tmp/c82f117b7841f1c2a4c9cd86cd93aad9.mp3\'',
    errno: -2,
    code: 'ENOENT',
    syscall: 'lstat',
    path: '/var/task/tmp/c82f117b7841f1c2a4c9cd86cd932332.mp3'}

    Code

    const child_process = require('child_process');
    const fs = require('fs');
    const path = require('path');

    const AWS = require('aws-sdk');
    const request = require('request');
    const tempy = require('tempy');

    const s3 = new AWS.S3();


    exports.handler = (event, context, callback) => {
     // We're going to do the transcoding asynchronously, so we callback immediately.
     callback();

     // Extract the event parameters.
     const { mp3Key, url } = event;

     const filename = event.filename || path.basename(mp3Key);
     const logKey = event.logKey || `${mp3Key}.log`;
     const s3Bucket = event.s3Bucket || 'bucket-name;

     // Create temporary input/output filenames that we can clean up afterwards.
     const inputFilename = tempy.file();
     const mp3Filename = tempy.file({ extension: 'mp3' });

     // Download the source file.
     Promise.resolve().then(() => new Promise((resolve, revoke) => {
       const writeStream = fs.createWriteStream(inputFilename);
       writeStream.on('finish', resolve);
       writeStream.on('error', revoke);
       request(url).pipe(writeStream);
     }))
     // Perform the actual transcoding.
     .then(() => {
       // Use the Exodus ffmpeg bundled executable.
       const ffmpeg = path.resolve(__dirname, 'exodus', 'bin', 'ffmpeg');

       // Convert the FLV file to an MP3 file using FFmpeg.
       const ffmpegArgs = [
         '-i', inputFilename,
         '-vn', // Disable the video stream in the output.
         '-acodec', 'libmp3lame', // Use Lame for the mp3 encoding.
         '-ac', '2', // Set 2 audio channels.
         '-q:a', '6', // Set the quality to be roughly 128 kb/s.
         mp3Filename,
       ];
       const process = child_process.spawnSync(ffmpeg, ffmpegArgs);
       console.log("process ", process.stdout);
       // return process;
     // return process.stdout.toString() + process.stderr.toString();
     })
     // Upload the generated MP3 to S3.
     .then(logContent => new Promise((resolve, revoke) => {
       console.log("inside s3 upload", mp3Filename)
       s3.putObject({
         Body: fs.createReadStream(mp3Filename),
         Bucket: s3Bucket,
         Key: mp3Key,
         ContentDisposition: `attachment; filename="${filename.replace('"', '\'')}"`,
         ContentType: 'audio/mpeg',
       }, (error) => {
         if (error) {
           revoke(error);
         } else {
           // Update a log of the FFmpeg output.
           const logFilename = path.basename(logKey);
           console.log("log file upload")
           s3.putObject({
             Body: logContent,
             Bucket: s3Bucket,
             ContentType: 'text/plain',
             ContentDisposition: `inline; filename="${logFilename.replace('"', '\'')}"`,
             Key: logKey,
           }, resolve);
         }
       })
     }))
     .catch(console.error)
     // Delete the temporary files.
     .then(() => {
       [inputFilename, mp3Filename].forEach((filename) => {
         if (fs.existsSync(filename)) {
           fs.unlinkSync(filename);
         }
       });
     });
    };