Recherche avancée

Médias (91)

Autres articles (55)

  • Publier sur MédiaSpip

    13 juin 2013

    Puis-je poster des contenus à partir d’une tablette Ipad ?
    Oui, si votre Médiaspip installé est à la version 0.2 ou supérieure. Contacter au besoin l’administrateur de votre MédiaSpip pour le savoir

  • MediaSPIP Player : les contrôles

    26 mai 2010, par

    Les contrôles à la souris du lecteur
    En plus des actions au click sur les boutons visibles de l’interface du lecteur, il est également possible d’effectuer d’autres actions grâce à la souris : Click : en cliquant sur la vidéo ou sur le logo du son, celui ci se mettra en lecture ou en pause en fonction de son état actuel ; Molette (roulement) : en plaçant la souris sur l’espace utilisé par le média (hover), la molette de la souris n’exerce plus l’effet habituel de scroll de la page, mais diminue ou (...)

  • Amélioration de la version de base

    13 septembre 2013

    Jolie sélection multiple
    Le plugin Chosen permet d’améliorer l’ergonomie des champs de sélection multiple. Voir les deux images suivantes pour comparer.
    Il suffit pour cela d’activer le plugin Chosen (Configuration générale du site > Gestion des plugins), puis de configurer le plugin (Les squelettes > Chosen) en activant l’utilisation de Chosen dans le site public et en spécifiant les éléments de formulaires à améliorer, par exemple select[multiple] pour les listes à sélection multiple (...)

Sur d’autres sites (9506)

  • Seeking in Libav / FFMPEG a DASH stream

    23 janvier 2018, par Glen Rhodes

    Recently, the functionality for playing DASH format files (mpd) was added to Libav. I’m trying to determine the best way to seek forward in the stream.

    When I use av_seek_frame, it does go to the correct time, but there’s a considerable delay which makes me think it’s not properly jumping to a segment / byte offset in the HTTP request, but rather just downloading with all its might until it arrives at the correct timestamp.

    int ret = av_seek_frame(is->pFormatCtx, stream_index, seek_target, is->seek_flags);

    When I use avformat_seek_file, it only seems to go forward several seconds before just continuing to play. So if I start playback, and then seek to 50 seconds, it will jump to something like 12. If I do the same seek again, it’ll jump further ahead, but still not 50.. however if it eventually gets to 50, then I do avformat_seek_file, it will successfully jump back to 50 no problem. So it’s like it tries, and gives up.

    int ret = avformat_seek_file(is->pFormatCtx, stream_index, INT64_MIN, tm, INT64_MAX, 0);

    Does anyone know how seeking is managed in the Libav dash playback ?

  • Is it possible to stream MJPEG content over MPEG-DASH ?

    26 juillet 2021, par Eloy Schultz

    I am trying to re-stream an MJPEG stream over dash using ffmpeg.

    


    I have an ESP32 camera module that outputs an MJPEG livestream at 192.168.2.128:81/stream (Arduino code here).
I can open this stream directly in the browser and see the video in realtime, but the camera will only allow for a single client at a time while I am in need of a multi client solution.

    


    What doesn't work

    
A solution I am currently trying to implement is to use a seperate server (Raspberry Pi) running apache and ffmpeg to re-stream the MJPEG content using DASH :


    ffmpeg -re -i http://192.168.2.128:81/stream -strict -2 -an -c:v copy -b:v 2000k -f dash -window_size 4 -extra_window_size 0 -min_seg_duration 2000000 -remove_at_exit 1 /var/www/html/out.mpd


    


    I get no errors when executing this command on the server.
I then use this ffmpeg-dash.html to display the video in the browser.
This code unfortunately fails, in Firefox the console reports the error :

    


    [72][Stream] No streams to play.


    


    followed by :

    


    Cannot play media. No decoders for requested formats: video/mp4;codecs="mp4v.6c";width="640";height="480"


    


    What does work

    
What is puzzling me is that the above code works fine if I replace the MJPEG livestream url with a sample .mkv file, so if I use


    ffmpeg -re -i /var/www/html/video.mkv -strict -2 -an -c:v copy -b:v 2000k -f dash -window_size 4 -extra_window_size 0 -min_seg_duration 2000000 -remove_at_exit 1 /var/www/html/out.mpd


    


    I can view the livestreamed sample video (video.mkv) without problems using the previously mentioned ffmpeg-dash.html file.
Furthermore, it seems that ffmpeg can read the MJPEG livestream without problems, since

    


    ffmpeg -t 10 -i http://192.168.2.128:81/stream -filter:v fps=15 -c:v flv test.flv


    


    returns a 10 second clip of the livestream succesfully.

    


    So to me it seems that the problem lies in how I combine the two. What am I missing ? Is it even possible to stream MJPEG content over MPEG-DASH ?
(I am new to this, sorry in advance for my ignorance)

    


  • A/V out of sync when using ffmpeg from mpeg-ts to dash

    17 mai 2018, par user3540646

    I’m using ffmpeg in order to convert MPEG-TS stream to MPEG-DASH.
    The mpeg-ts is h264 and aac_latm.
    Therefore I don’t need to reencode the video.
    The command I use :

    ffmpeg -i http://10.0.0.211:55555/Ch%2011%20Kan -strict -2 -c:v copy -window_size 10 -extra_window_size 10 -use_template 1 -use_timeline 1 -f dash kan.mpd

    I’m copying the video codec by using -c:v copy and the audio codec is default to aac.

    That way I get DASH stream BUT the audio/video is out of sync !

    How can I fix it ?

    Notes :

    1. If I reencode both audio and video like :

      ffmpeg -i http://10.0.0.211:55555/Ch%2011%20Kan -strict -2 -window_size 10 -extra_window_size 10 -use_template 1 -use_timeline 1 -f dash kan.mpd

    Then the audio/video is synced perfectly.
    But I do not want to reencode the video for nothing as I mentioned the video is already h264. (directly impact to performance)

    1. If I convert the MPEG-TS stream to mp4 file like :

      ffmpeg -i http://10.0.0.211:55555/Ch%2011%20Kan -strict -2 -c:v copy kan.mp4

    Then the audio/video is synced perfectly.