
Recherche avancée
Autres articles (41)
-
Gestion générale des documents
13 mai 2011, parMé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, parCette 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, parMediaSPIP 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 VoI'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 GhoshI'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 PrimoI'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