Recherche avancée

Médias (1)

Mot : - Tags -/book

Autres articles (62)

  • Websites made ​​with MediaSPIP

    2 mai 2011, par

    This page lists some websites based on MediaSPIP.

  • Possibilité de déploiement en ferme

    12 avril 2011, par

    MediaSPIP peut être installé comme une ferme, avec un seul "noyau" hébergé sur un serveur dédié et utilisé par une multitude de sites différents.
    Cela permet, par exemple : de pouvoir partager les frais de mise en œuvre entre plusieurs projets / individus ; de pouvoir déployer rapidement une multitude de sites uniques ; d’éviter d’avoir à mettre l’ensemble des créations dans un fourre-tout numérique comme c’est le cas pour les grandes plate-formes tout public disséminées sur le (...)

  • Ajouter des informations spécifiques aux utilisateurs et autres modifications de comportement liées aux auteurs

    12 avril 2011, par

    La manière la plus simple d’ajouter des informations aux auteurs est d’installer le plugin Inscription3. Il permet également de modifier certains comportements liés aux utilisateurs (référez-vous à sa documentation pour plus d’informations).
    Il est également possible d’ajouter des champs aux auteurs en installant les plugins champs extras 2 et Interface pour champs extras.

Sur d’autres sites (8970)

  • FFMPEG audio not lining up

    31 août 2020, par Chris Kooken

    I am using OpenTok to build a live video platform. It generates webm files from each users stream.

    


    I am using FFMPEG to convert webm (WEBRTC) videos to MP4s to edit in my NLE. The problem I am having is my audio is drifting. I THINK it is because the user pauses the audio during the stream. This is the command i'm running

    


    ffmpeg -acodec libopus -i 65520df3-1033-480e-adde-1856d18e2352.webm  -max_muxing_queue_size 99999999 65520df3-1033-480e-adde-1856d18e2352.webm.new.mp4


    


    The problem is I think, whenever the user muted themselves, there are no frames. But the PTS is in tact.

    


    This is from the OpenTok documentation (my WebRTC platform)

    


    


    Audio and video frames may not arrive with monotonic timestamps ; frame rates are not always consistent. This is especially relevant if either the video or audio track is disabled for a time, using one of publishVideo or publishAudio publisher properties.

    


    


    


    Frame presentation timestamps (PTS) are written based on NTP
timestamps taken at the time of capture, offset by the timestamp of
the first received frame. Even if a track is muted and later unmuted,
the timestamp offset should remain consistent throughout the duration
of the entire stream. When decoding in post-processing, a gap in PTS
between consecutive frames will exist for the duration of the track
mute : there are no "silent" frames in the container.

    


    


    How can I convert these files and have them play in sync ? Note, when I play in QuickTime or VLC, the files are synced correctly.

    


    EDIT
I've gotten pretty close with this command :

    


     ffmpeg -acodec libopus -i $f -max_muxing_queue_size 99999999 -vsync 1 -af aresample=async=1 -r 30 $f.mp4


    


    But every once in a while, I get a video where the audio starts right away, and they wont actually be talking in the video until half-way thought the video. My guess is they muted themselves during the video conference... so in some cases audio is 5-10 mins ahead. Again, plays fine in quicktime, but pulled into my NLE, its way off.

    


  • FFMPEG OpenTok archive audio drift

    25 août 2020, par Chris Kooken

    I am using OpenTok to build a live video platform. It generates webm files from each users stream.

    


    I am using FFMPEG to convert webm (WEBRTC) videos to MP4s to edit in my NLE. The problem I am having is my audio is drifting. I THINK it is because the user pauses the audio during the stream. This is the command i'm running

    


    ffmpeg -acodec libopus -i 65520df3-1033-480e-adde-1856d18e2352.webm  -max_muxing_queue_size 99999999 65520df3-1033-480e-adde-1856d18e2352.webm.new.mp4


    


    The problem is I think, whenever the user muted themselves, there are no frames. But the PTS is in tact.

    


    This is from the OpenTok documentation (my WebRTC platform)

    


    


    Audio and video frames may not arrive with monotonic timestamps ; frame rates are not always consistent. This is especially relevant if either the video or audio track is disabled for a time, using one of publishVideo or publishAudio publisher properties.

    


    


    


    Frame presentation timestamps (PTS) are written based on NTP
timestamps taken at the time of capture, offset by the timestamp of
the first received frame. Even if a track is muted and later unmuted,
the timestamp offset should remain consistent throughout the duration
of the entire stream. When decoding in post-processing, a gap in PTS
between consecutive frames will exist for the duration of the track
mute : there are no "silent" frames in the container.

    


    


    How can I convert these files and have them play in sync ? Note, when I play in QuickTime or VLC, the files are synced correctly.

    


    EDIT
I've gotten pretty close with this command :

    


     ffmpeg -acodec libopus -i $f -max_muxing_queue_size 99999999 -vsync 1 -af aresample=async=1 -r 30 $f.mp4


    


    But every once in a while, I get a video where the audio starts right away, and they wont actually be talking in the video until half-way thought the video. My guess is they muted themselves during the video conference... so in some cases audio is 5-10 mins ahead. Again, plays fine in quicktime, but pulled into my NLE, its way off.

    


  • How to append dummy frames to FFmpeg pipe after EOF to prevent Shaka Packager from stopping (LL-HLS/LL-DASH) ? [closed]

    6 août, par Arjit

    I am working on a live streaming pipeline where I pipe FFmpeg into Shaka Packager to generate LL-HLS and LL-DASH output from an RTMP stream.

    


    Scenario :

    


      

    • FFmpeg receives the RTMP stream and pipes the output to Shaka Packager.
    • 


    • When the RTMP publisher stops streaming, FFmpeg naturally ends, sending an EOF (end-of-file) to the pipe.
    • 


    • This causes Shaka Packager to stop processing, as it closes its read stream on EOF.
    • 


    


    What I want :

    


    Before FFmpeg terminates, or even after, I want to append 5 seconds of black dummy frames (video + silent audio) to the pipe, so that :

    


      

    1. Shaka Packager can finalize the last segment properly.
    2. 


    3. Shaka Packager doesn't terminate prematurely on EOF but processes these dummy frames.
    4. 


    5. This is needed for clean stream finalization for LL-HLS/LL-DASH workflows.
    6. 


    


    The Problem :

    


      

    • When FFmpeg exits, the pipe reaches EOF.
    • 


    • Any attempt to write additional data (like dummy frames) into the same pipe after EOF results in a "broken pipe" error because Shaka Packager has already closed its read end.
    • 


    • I can't find a way to inject those black frames into the stream after the original FFmpeg exits, without Shaka shutting down.
    • 


    


    What I've Tried :

    


      

    • Tried spawning another FFmpeg process to write black frames to the same pipe after the main FFmpeg process exits. But by then, the pipe is already closed by Shaka Packager.
    • 


    • Attempted using mkfifo with multiple writers but it doesn't work since FIFO allows only one writer and one reader at a time.
    • 


    • Can't just "delay" killing FFmpeg as the input stream is dynamic, and I need to programmatically pad with dummy frames at the end.
    • 


    


    My Question :

    


    How can I keep the pipe "open" to allow appending dummy black frames after the main FFmpeg process ends, so that Shaka Packager continues processing and properly finalizes the segments instead of exiting on EOF ?

    


    Is there a way to chain multiple FFmpeg processes or a muxer that can act as a "keep-alive" buffer for Shaka Packager until I explicitly tell it to end ?
    
Or is there a recommended way to handle such "end of live stream padding" when using FFmpeg → Shaka Packager pipelines ?