Recherche avancée

Médias (91)

Autres articles (71)

  • Submit enhancements and plugins

    13 avril 2011

    If you have developed a new extension to add one or more useful features to MediaSPIP, let us know and its integration into the core MedisSPIP functionality will be considered.
    You can use the development discussion list to request for help with creating a plugin. As MediaSPIP is based on SPIP - or you can use the SPIP discussion list SPIP-Zone.

  • Script d’installation automatique de MediaSPIP

    25 avril 2011, par

    Afin de palier aux difficultés d’installation dues principalement aux dépendances logicielles coté serveur, un script d’installation "tout en un" en bash a été créé afin de faciliter cette étape sur un serveur doté d’une distribution Linux compatible.
    Vous devez bénéficier d’un accès SSH à votre serveur et d’un compte "root" afin de l’utiliser, ce qui permettra d’installer les dépendances. Contactez votre hébergeur si vous ne disposez pas de cela.
    La documentation de l’utilisation du script d’installation (...)

  • 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 (4348)

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

    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 starts 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