Recherche avancée

Médias (91)

Autres articles (80)

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

  • Configurer la prise en compte des langues

    15 novembre 2010, par

    Accéder à la configuration et ajouter des langues prises en compte
    Afin de configurer la prise en compte de nouvelles langues, il est nécessaire de se rendre dans la partie "Administrer" du site.
    De là, dans le menu de navigation, vous pouvez accéder à une partie "Gestion des langues" permettant d’activer la prise en compte de nouvelles langues.
    Chaque nouvelle langue ajoutée reste désactivable tant qu’aucun objet n’est créé dans cette langue. Dans ce cas, elle devient grisée dans la configuration et (...)

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

  • asp.net core live mp4 streaming

    8 octobre 2020, par kdma

    Prologue :

    


    I have a hikvision ipcamera that streams raw h264 from a rtsp :// url, I need to play this live feed in the browser.

    


    I managed to get a basic RTSP->ffmpeg-> (faststart) mp4 pipeline working and I can play the video when saved to a file.

    


    I don't understand how to make my controller action "streamable".

    


    I've tried various approaches like writing to Response.Body, Transfer-Encoding : chunked but nothing seems to work.
Here is the basic code :

    


    public IActionResult Play5(){    
      var ms = new MemoryStream();
      var muxer = new RTSPToMp4(ms);
      Task.Run(() => muxer.Stream());
      return new FileStreamResult(ms, "video/mp4");
}


    


    The memory stream contains the live feed but the response is empty here is the request\response from chrome :

    


    Request

    


    method: GET
:path: /api/stream/play5
:scheme: https
accept: */*
accept-encoding: identity;q=1, *;q=0
accept-language: it-IT,it;q=0.9,en-US;q=0.8,en;q=0.7
cache-control: no-cache
pragma: no-cache
range: bytes=0-
referer: https://localhost:5001/Stream
sec-fetch-dest: video
sec-fetch-mode: no-cors
sec-fetch-site: same-origin
user-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.121 Safari/537.36


    


    Response

    


    content-length: 0
content-type: video/mp4
date: Thu, 08 Oct 2020 14:31:06 GMT
server: Kestrel
status: 200


    


    Am I missing something ?

    


  • How to : stream with ffmpeg and nginx rtmp, Ubuntu

    3 décembre 2020, par WurmD

    nginx installed with https://nginx.org/en/linux_packages.html in Ubuntu 18.04

    


    sudo apt -y install curl gnupg2 ca-certificates lsb-release ;
echo "deb http://nginx.org/packages/ubuntu `lsb_release -cs` nginx" | sudo tee /etc/apt/sources.list.d/nginx.list ;
curl -fsSL https://nginx.org/keys/nginx_signing.key | sudo apt-key add - ;
sudo apt update ;
sudo apt install nginx ;


    


    nginx up and running

    


    $ ps -aux | grep nginx
root      5602  0.0  0.0  33348   880 ?        Ss   17:03   0:00 nginx: master process nginx
nginx     5603  0.0  0.0  33744  2748 ?        S    17:03   0:00 nginx: worker process


    


    with /etc/nginx/nginx.conf

    


    rtmp {
    server {
        listen 1935;
        chunk_size 4096;

        application live {
            live on;
            record off;
            allow publish 127.0.0.1;
            deny publish all;
        }
    }
}


    


    ffmpeg -f lavfi -i testsrc -t 30 -pix_fmt yuv420p -f flv rtmp://localhost/live/test yields

    


    ffmpeg version 3.4.8-0ubuntu0.2 Copyright (c) 2000-2020 the FFmpeg developers
  built with gcc 7 (Ubuntu 7.5.0-3ubuntu1~18.04)
  configuration: --prefix=/usr --extra-version=0ubuntu0.2 --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --enable-gpl --disable-stripping --enable-avresample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librubberband --enable-librsvg --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-omx --enable-openal --enable-opengl --enable-sdl2 --enable-libdc1394 --enable-libdrm --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libopencv --enable-libx264 --enable-shared
  libavutil      55. 78.100 / 55. 78.100
  libavcodec     57.107.100 / 57.107.100
  libavformat    57. 83.100 / 57. 83.100
  libavdevice    57. 10.100 / 57. 10.100
  libavfilter     6.107.100 /  6.107.100
  libavresample   3.  7.  0 /  3.  7.  0
  libswscale      4.  8.100 /  4.  8.100
  libswresample   2.  9.100 /  2.  9.100
  libpostproc    54.  7.100 / 54.  7.100
Input #0, lavfi, from 'testsrc':
  Duration: N/A, start: 0.000000, bitrate: N/A
    Stream #0:0: Video: rawvideo (RGB[24] / 0x18424752), rgb24, 320x240 [SAR 1:1 DAR 4:3], 25 tbr, 25 tbn, 25 tbc
[tcp @ 0x5611668b8c00] Connection to tcp://localhost:1935 failed: Connection refused
[rtmp @ 0x5611668b8520] Cannot open connection tcp://localhost:1935
rtmp://localhost/live: Connection refused


    


    Clue :
Nothing seems to be listening on port 1935. netstat -tap | grep 1935 yields nothing
Clue2 :
Albeit ps shows app as running, systemctl status nginx.service shows app status down

    


    ● nginx.service - nginx - high performance web server
   Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
   Active: failed (Result: exit-code) since Thu 2020-12-03 19:37:17 CET; 7min ago
     Docs: http://nginx.org/en/docs/
  Process: 5709 ExecStart=/usr/sbin/nginx -c /etc/nginx/nginx.conf (code=exited, status=1/FAILURE)


    


    Things checked given other stackoverflow questions :

    


      

    • trying to connect to rtmp://localhost/live/test and in nginx.conf the application is correctly named live
    • 


    • nginx.conf correctly placed at /etc/nginx/, no other nginx.conf files exist, and nginx -s reload called to make sure it is loaded
    • 


    • no localhost instances in the conf file, all renamed to 127.0.0.1
    • 


    


  • why FFMPEG process is slow ?

    4 septembre 2020, par puneet18

    I tried to process 4gb video using ffmpeg on server with 1 CPU & 2GB RAM but the command is hanged for 5 mins then starts and process very slowly. Following is the console output :

    


    Command

    


    ffmpeg -i input.mp4 -filter_complex '[0:v]trim=823.2:867.3,setpts=PTS-STARTPTS[v0];[0:v]trim=1074.1:1101.4,setpts=PTS-STARTPTS[v1];[0:v]trim=1142.2:1198.9,setpts=PTS-STARTPTS[v2];[0:v]trim=1227.9:1320.0,setpts=PTS-STARTPTS[v3];[0:v]trim=1887.1:1990.8,setpts=PTS-STARTPTS[v4];[0:v]trim=2008.1:2091.3,setpts=PTS-STARTPTS[v5];[0:v]trim=3090.1:3105.1,setpts=PTS-STARTPTS[v6];[0:v]trim=3185.3:3222.2,setpts=PTS-STARTPTS[v7];[0:v]trim=3306.4:3336.5,setpts=PTS-STARTPTS[v8];[0:v]trim=3426.7:3465.7,setpts=PTS-STARTPTS[v9];[0:v]trim=3548.7:3586.5,setpts=PTS-STARTPTS[v10];[v0][v1][v2][v3][v4][v5][v6][v7][v8][v9][v10]concat=n=11:v=1[out]' -map '[out]' output.mp4


    


    Output

    


    ffmpeg version 3.4.8-0ubuntu0.2 Copyright (c) 2000-2020 the FFmpeg developers
  built with gcc 7 (Ubuntu 7.5.0-3ubuntu1~18.04)
  configuration: --prefix=/usr --extra-version=0ubuntu0.2 --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --enable-gpl --disable-stripping --enable-avresample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librubberband --enable-librsvg --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-omx --enable-openal --enable-opengl --enable-sdl2 --enable-libdc1394 --enable-libdrm --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libopencv --enable-libx264 --enable-shared
  libavutil      55. 78.100 / 55. 78.100
  libavcodec     57.107.100 / 57.107.100
  libavformat    57. 83.100 / 57. 83.100
  libavdevice    57. 10.100 / 57. 10.100
  libavfilter     6.107.100 /  6.107.100
  libavresample   3.  7.  0 /  3.  7.  0
  libswscale      4.  8.100 /  4.  8.100
  libswresample   2.  9.100 /  2.  9.100
  libpostproc    54.  7.100 / 54.  7.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/tmp/down-net_http20200902-1614-1x7tk8f.mp4':
  Metadata:
    major_brand     : qt  
    minor_version   : 0
    compatible_brands: qt  
    creation_time   : 2020-08-28T14:02:14.000000Z
  Duration: 01:00:18.73, start: 0.000000, bitrate: 8895 kb/s
    Stream #0:0(und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p(tv, bt709, progressive), 1280x720 [SAR 1:1 DAR 16:9], 8871 kb/s, 15 fps, 15 tbr, 6k tbn, 12k tbc (default)
    Metadata:
      creation_time   : 2020-08-28T14:02:14.000000Z
      handler_name    : Core Media Video
Stream mapping:
  Stream #0:0 (h264) -> trim
  Stream #0:0 (h264) -> trim
  Stream #0:0 (h264) -> trim
  Stream #0:0 (h264) -> trim
  Stream #0:0 (h264) -> trim
  Stream #0:0 (h264) -> trim
  Stream #0:0 (h264) -> trim
  Stream #0:0 (h264) -> trim
  Stream #0:0 (h264) -> trim
  Stream #0:0 (h264) -> trim
  Stream #0:0 (h264) -> trim
  concat -> Stream #0:0 (libx264)
Press [q] to stop, [?] for help
[libx264 @ 0x563bd0d2c520] using SAR=1/1
[libx264 @ 0x563bd0d2c520] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX FMA3 BMI2 AVX2
[libx264 @ 0x563bd0d2c520] profile High, level 3.1
[libx264 @ 0x563bd0d2c520] 264 - core 152 r2854 e9a5903 - H.264/MPEG-4 AVC codec - Copyleft 2003-2017 - http://www.videolan.org/x264.html - options: cabac=1 ref=3 deblock=1:0:0 analyse=0x3:0x113 me=hex subme=7 psy=1 psy_rd=1.00:0.00 mixed_ref=1 me_range=16 chroma_me=1 trellis=1 8x8dct=1 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=-2 threads=1 lookahead_threads=1 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=3 b_pyramid=2 b_adapt=1 b_bias=0 direct=1 weightb=1 open_gop=0 weightp=2 keyint=250 keyint_min=15 scenecut=40 intra_refresh=0 rc_lookahead=40 rc=crf mbtree=1 crf=23.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00
Output #0, mp4, to '/opt/app/tmp/file_1599089716.mp4':
  Metadata:
    major_brand     : qt  
    minor_version   : 0
    compatible_brands: qt  
    encoder         : Lavf57.83.100
    Stream #0:0: Video: h264 (libx264) (avc1 / 0x31637661), yuv420p, 1280x720 [SAR 1:1 DAR 16:9], q=-1--1, 15 fps, 15360 tbn, 15 tbc (default)
    Metadata:
      encoder         : Lavc57.107.100 libx264
    Side data:
      cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: -1
frame=    0 fps=0.0 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A speed=   0x 




    


    How can I improve the speed ?

    


    ==================

    


    I tried following command and getting an error :

    


    Command

    


    ffmpeg -ss 823.2 -to 867.3 -i /opt/app/tmp/down-net_http20200903-4776-1o4wkhk.mp4 -ss 1074.1 -to 1101.4 -i /opt/app/tmp/down-net_http20200903-4776-1o4wkhk.mp4 -ss 1142.2 -to 1198.9 -i /opt/app/tmp/down-net_http20200903-4776-1o4wkhk.mp4 -ss 1227.9 -to 1320.0 -i /opt/app/tmp/down-net_http20200903-4776-1o4wkhk.mp4 -ss 1887.1 -to 1990.8 -i /opt/app/tmp/down-net_http20200903-4776-1o4wkhk.mp4 -ss 2008.1 -to 2091.3 -i /opt/app/tmp/down-net_http20200903-4776-1o4wkhk.mp4 -ss 3090.1 -to 3105.1 -i /opt/app/tmp/down-net_http20200903-4776-1o4wkhk.mp4 -ss 3185.3 -to 3222.2 -i /opt/app/tmp/down-net_http20200903-4776-1o4wkhk.mp4 -ss 3306.4 -to 3336.5 -i /opt/app/tmp/down-net_http20200903-4776-1o4wkhk.mp4 -ss 3426.7 -to 3465.7 -i /opt/app/tmp/down-net_http20200903-4776-1o4wkhk.mp4 -ss 3548.7 -to 3586.5 -i /opt/app/tmp/down-net_http20200903-4776-1o4wkhk.mp4  -filter_complex '[0:v][1:v][2:v][3:v][4:v][5:v][6:v][7:v][8:v][9:v][10:v]concat=n=11:v=1:a=0[v]' -map '[v]' /opt/app/tmp/file_1599127170.mp4


    


    Error

    


    Option to (record or transcode stop time) cannot be applied to input url /opt/app/tmp/down-net_http20200903-4776-1o4wkhk.mp4 -- you are trying to apply an input option to an output file or vice versa. Move this option before the file it belongs to.
Error parsing options for input file /opt/app/tmp/down-net_http20200903-4776-1o4wkhk.mp4.
Error opening input files: Invalid argument