Recherche avancée

Médias (91)

Autres articles (41)

  • Gestion générale des documents

    13 mai 2011, par

    MédiaSPIP ne modifie jamais le document original mis en ligne.
    Pour chaque document mis en ligne il effectue deux opérations successives : la création d’une version supplémentaire qui peut être facilement consultée en ligne tout en laissant l’original téléchargeable dans le cas où le document original ne peut être lu dans un navigateur Internet ; la récupération des métadonnées du document original pour illustrer textuellement le fichier ;
    Les tableaux ci-dessous expliquent ce que peut faire MédiaSPIP (...)

  • Des sites réalisés avec MediaSPIP

    2 mai 2011, par

    Cette page présente quelques-uns des sites fonctionnant sous MediaSPIP.
    Vous pouvez bien entendu ajouter le votre grâce au formulaire en bas de page.

  • HTML5 audio and video support

    13 avril 2011, par

    MediaSPIP uses HTML5 video and audio tags to play multimedia files, taking advantage of the latest W3C innovations supported by modern browsers.
    The MediaSPIP player used has been created specifically for MediaSPIP and can be easily adapted to fit in with a specific theme.
    For older browsers the Flowplayer flash fallback is used.
    MediaSPIP allows for media playback on major mobile platforms with the above (...)

Sur d’autres sites (6591)

  • 🧵 [QUESTION][QUESTION] Reuse PlainTransport for new FFmpeg stream without full reinit

    29 mai, par Sang Vo

    I'm building a backend-driven streaming application using Mediasoup + FFmpeg + PlainTransport.
My goal is to switch between different media sources (e.g. welcome.mp4, waiting.mp4, streaming.ts) from backend, while keeping the same PlainTransport alive to avoid the overhead of tearing down and rebuilding the pipeline.

    


    ✅ Current Setup :
Backend : NestJS server with Mediasoup

    


    Media ingest : FFmpeg sends RTP stream to PlainTransport

    


    Producer : created after FFmpeg starts

    


    Frontend : React client that consumes via Consumer after signaling

    


    🔄 What I want :
When the backend Start streaming a file (e.g., welcome.mp4), I want to :

    


    Start FFmpeg again with welcome.mp4 using the same RTP ports (same PlainTransport)
After welcome is wailting.mp4. When has event streaming start play streaming, end event streaming play wailting

    


    Create a new Producer with the new stream

    


    Notify the frontend to create a new Consumer

    


    All this without having to destroy and recreate the PlainTransport for all event

    


    🧠 Questions :
Is this a valid and recommended workflow in Mediasoup ?

    


    If so, does Mediasoup allow reusing the same PlainTransport across multiple Producer instances (one at a time) ?

    


    Will RTP stream re-sync correctly if FFmpeg restarts and sends new RTP packets ?

    


    Is it necessary to explicitly configure SSRC and payloadType to match, or will Mediasoup auto-detect again per new producer ?

    


    Any insights or recommendations on best practices for this dynamic switching scenario would be very helpful !

    


    Thanks in advance 🙏

    


  • Real time HLS editing with FFmpeg filter_complex without re-encoding full stream

    28 mai, par Devdeep Ghosh

    I'm new to FFmpeg and working on a lightweight video editor for HLS streams that allows cutting and trimming without re-encoding the entire video. I'm using FFmpeg to only process the segments that intersect with "exclusion" ranges (timestamps to remove), while copying unmodified segments directly. The goal is speed and accuracy.

    


    The logic identifies which .ts segments overlap with exclusion windows, applies filter_complex to trim just those segments, and then programatically reassemble everything into a new .m3u8 playlist. However, the final output sometimes freezes or desynchronizes—audio gets out of sync or playback freezes where segments were excluded.

    


    Here's the FFmpeg logic I'm using to trim segments :

    


    const videoFilter = `[0:v]select='not(between(t,${start},${end}))'[vout]`;
const audioFilter = `[0:a]aselect='not(between(t,${start},${end}))'[aout]`;


const ffmpegArgs = [
  "-i", inputPath,
  "-filter_complex", `${videoFilter};${audioFilter};[vout]setpts='PTS-STARTPTS'[v];[aout]asetpts='PTS-STARTPTS'[a]`,
  "-map", "[v]",
  "-map", "[a]",
  "-c:v", "libx264",
  "-c:a", "aac",
  "-preset", "ultrafast",
  "-hls_flags", "independent_segments",
  "-avoid_negative_ts", "make_zero",
  "-y", outputPath,
];


    


    Is this approach actually viable for cutting .ts segments from an HLS stream without full re-encoding ?

    


    Am I misunderstanding how FFmpeg handles timestamps when trimming ?

    


    Is there a better or more reliable way to do this (e.g. concat, -ss/-to, GOP alignment, etc.) ?

    


  • Android FFmpegKit-Full dependencies missing

    9 mai, par Adrián Primo

    I've tried to compile the app on Android and now it won't run as it can't find these files. I knew the *FFmpegKit *project was going to remove its binaries so I downloaded the package locally but I totally forgot about Android's specific files.

    


    Launching lib\main.dart on sdk gphone64 x86 64 in debug mode...
Running Gradle task 'assembleDebug'...

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:checkDebugAarMetadata'.
> Could not resolve all files for configuration ':app:debugRuntimeClasspath'.
   > Could not find com.arthenica:ffmpeg-kit-full:6.0-2.
     Searched in the following locations:
       - https://dl.google.com/dl/android/maven2/com/arthenica/ffmpeg-kit-full/6.0-2/ffmpeg-kit-full-6.0-2.pom
       - https://repo.maven.apache.org/maven2/com/arthenica/ffmpeg-kit-full/6.0-2/ffmpeg-kit-full-6.0-2.pom
       - https://jcenter.bintray.com/com/arthenica/ffmpeg-kit-full/6.0-2/ffmpeg-kit-full-6.0-2.pom
       - https://storage.googleapis.com/download.flutter.io/com/arthenica/ffmpeg-kit-full/6.0-2/ffmpeg-kit-full-6.0-2.pom
     Required by:
         project :app > project :ffmpeg_kit_flutter_full


    


    I've tried to download the dependencies manually from the repository, but the owner has removed the files.

    


    Does anybody have the required files for the ffmpegkit-full package ? I found in a forked repository with the https package installed locally, but I need the full package.

    


    Dependency in Maven Repository

    


    Owner's files