Recherche avancée

Médias (0)

Mot : - Tags -/navigation

Aucun média correspondant à vos critères n’est disponible sur le site.

Autres articles (30)

  • Le profil des utilisateurs

    12 avril 2011, par

    Chaque utilisateur dispose d’une page de profil lui permettant de modifier ses informations personnelle. Dans le menu de haut de page par défaut, un élément de menu est automatiquement créé à l’initialisation de MediaSPIP, visible uniquement si le visiteur est identifié sur le site.
    L’utilisateur a accès à la modification de profil depuis sa page auteur, un lien dans la navigation "Modifier votre profil" est (...)

  • Les autorisations surchargées par les plugins

    27 avril 2010, par

    Mediaspip core
    autoriser_auteur_modifier() afin que les visiteurs soient capables de modifier leurs informations sur la page d’auteurs

  • Personnaliser les catégories

    21 juin 2013, par

    Formulaire de création d’une catégorie
    Pour ceux qui connaissent bien SPIP, une catégorie peut être assimilée à une rubrique.
    Dans le cas d’un document de type catégorie, les champs proposés par défaut sont : Texte
    On peut modifier ce formulaire dans la partie :
    Administration > Configuration des masques de formulaire.
    Dans le cas d’un document de type média, les champs non affichés par défaut sont : Descriptif rapide
    Par ailleurs, c’est dans cette partie configuration qu’on peut indiquer le (...)

Sur d’autres sites (5898)

  • On the fly transcoding and HLS streaming with ffmpeg

    12 janvier 2023, par syfluqs

    I am building a web application that involves serving various kinds of video content. Web-friendly audio and video codecs are handled without any problems, but I am having trouble designing the delivery of video files incompatible with HTML5 video players like mkv containers or H265.

    



    What I have done till now, is use ffmpeg to transcode the video file on the server and make HLS master and VOD playlists and use hls.js on the frontend. The problem, however, is that ffmpeg treats the playlist as a live stream playlist until transcoding is complete on the whole file and then it changes the playlist to serve as VOD. So, the user can't seek until the transcoding is over, and that my server has unnecessarily transcoded the whole file if the user decides to seek the video file halfway ahead. I am using the following ffmpeg command line arguments

    



    ffmpeg -i sample.mkv \
       -c:v libx264 \
       -crf 18 \
       -preset ultrafast \
       -maxrate 4000k \
       -bufsize 8000k \
       -vf "scale=1280:-1,format=yuv420p" \
       -c:a copy -start_number 0 \
       -hls_time 10 \
       -hls_list_size 0 \
       -f hls \
file.m3u8


    



    Now to improve upon this system, I tried to generate the VOD playlist through my app and not ffmpeg, since the format is self explanatory. The webapp would generate the HLS master and VOD playlists beforehand using the video properties such as duration, resolution and bitrate (which are known to the server) and serve the master playlist to the client. The client then starts requesting the individual video segments at which point the server will individually transcode and generate each segment and serve them. Seeking would be possible as the client already has the complete VOD playlist and it can request the specific segment that the user seeks to. The benefit, as I see it, would be that my server would not have to transcode the whole file, if the user decides to seek forward and play the video halfway through.

    



    Now I tried manually creating segments (10s each) from my sample.mkv using the following command

    



    ffmpeg -ss 90 \
       -t 10 \
       -i sample.mkv \
       -g 52 \
       -strict experimental \
       -movflags +frag_keyframe+separate_moof+omit_tfhd_offset+empty_moov \
       -c:v libx264 \
       -crf 18 \
       -preset ultrafast \
       -maxrate 4000k \
       -bufsize 8000k \
       -vf "scale=1280:-1,format=yuv420p" \
       -c:a copy \
fileSequence0.mp4


    



    and so on for other segments, and the VOD playlist as

    



    #EXTM3U
#EXT-X-PLAYLIST-TYPE:VOD
#EXT-X-TARGETDURATION:10
#EXT-X-VERSION:4
#EXT-X-MEDIA-SEQUENCE:0
#EXTINF:10.0,
fileSequence0.mp4
#EXTINF:10.0,
fileSequence1.mp4
...
... and so on 
...
#EXT-X-ENDLIST


    



    which plays the first segment just fine but not the subsequent ones.

    



    Now my questions,

    



      

    1. Why don't the subsequent segments play ? What am I doing wrong ?

    2. 


    3. Is my technique even viable ? Would there be any problem with presetting the segment durations since segmenting is only possible after keyframes and whether ffmpeg can get around this ?

    4. 


    



    My knowledge regarding video processing and generation borders on modest at best. I would greatly appreciate some pointers.

    


  • lavf/asfenc : add support for storing languages

    3 février 2016, par Marton Balint
    lavf/asfenc : add support for storing languages
    

    Checked compatiblity with VLC, Windows Media Player 12 and Windows Media ASF
    Viewer 9 series.

    Reviewed-by : Michael Niedermayer <michael@niedermayer.cc>
    Signed-off-by : Marton Balint <cus@passwd.hu>

    • [DH] libavformat/asf.c
    • [DH] libavformat/asf.h
    • [DH] libavformat/asfenc.c
  • CDN Stream Play Video + Audio With Referer ?

    30 avril 2020, par lavara123

    This is orginal site play script :

    &#xA;&#xA;

    &#xD;&#xA;
    &#xD;&#xA;
    const player = jwplayer("player").setup({&#xD;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;title: "Extraction",&#xD;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;description: "2020",&#xD;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;file: "https://cdn.rapidvideocdn.xyz/videoplayback/1598e8ae991e78c6d87cf31b5e5db280be1012101221e017b1b20f8331f820fbh",&#xD;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;tracks: [{"file":"https:\/\/sinefy.com\/subtitles\/tt8936646.tr.vtt","label":"T\u00fcrk\u00e7e","kind":"captions","default":true}],&#x9;&#x9;&#x9;&#x9;&#x9;image: "https://sinefy.com/uploads/series/cover/extraction-2020.jpg",&#x9;&#x9;&#x9;&#x9;&#x9;type: "application/vnd.apple.mpegurl",&#xD;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;playbackRateControls: true,&#xD;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;preload: "auto",&#xD;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;autostart: autopl,&#xD;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;hlshtml: true,&#xD;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;androidhls: true,&#xD;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;stagevideo: false,&#xD;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;"primary": "html5"&#xD;&#xA;&#x9;&#x9;&#x9;&#x9;})

    &#xD;&#xA;

    &#xD;&#xA;

    &#xD;&#xA;&#xA;&#xA;

    this is HLS (Fragmented MP4) url open with referer :

    &#xA;&#xA;

    https://cdn.rapidvideocdn.xyz/videoplayback/1598e8ae991e78c6d87cf31b5e5db280be1012101221e017b1b20f8331f820fbh&#xA;

    &#xA;&#xA;

    referer :

    &#xA;&#xA;

    https://sinefy.com/api/runner/80d4d32765c4d9466bf646958663f902&#xA;

    &#xA;&#xA;

    i'm play code :

    &#xA;&#xA;

    ffmpeg -referer "https://sinefy.com/api/runner/80d4d32765c4d9466bf646958663f902" -i "https://e1-ad930d.rapidvideocdn.xyz/videoplayback/6d3d454e9fd30ac1a7ed678ff1d77e325" -f hls -vcodec libx264 -crf 27 -preset veryfast  -c:a copy - | ffplay -&#xA;

    &#xA;&#xA;

    but no sound ?

    &#xA;