Recherche avancée

Médias (0)

Mot : - Tags -/serveur

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

Autres articles (66)

  • Personnaliser en ajoutant son logo, sa bannière ou son image de fond

    5 septembre 2013, par

    Certains thèmes prennent en compte trois éléments de personnalisation : l’ajout d’un logo ; l’ajout d’une bannière l’ajout d’une image de fond ;

  • 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

  • Contribute to a better visual interface

    13 avril 2011

    MediaSPIP is based on a system of themes and templates. Templates define the placement of information on the page, and can be adapted to a wide range of uses. Themes define the overall graphic appearance of the site.
    Anyone can submit a new graphic theme or template and make it available to the MediaSPIP community.

Sur d’autres sites (5227)

  • With ffmpeg, trying to change a container from Mpeg TS to MP4, fps became twice of Mpeg TS

    17 juillet 2016, par user2148481

    I got a Mpeg TS file from a capture board to make a DEMO video clip.

    Here is information of the file from ffmpeg ;

    Stream #0:0[0x51]: Video: h264 (High) ([27][0][0][0] / 0x001B), yuv420p, 1920x1080 [SAR 1:1 DAR 16:9], 29.97 fps, 59.94 tbr, 90k tbn, 59.94 tbc
    Stream #0:1[0x61]: Audio: mp2 ([3][0][0][0] / 0x0003), 48000 Hz, stereo, s16p, 224 kb/s

    However, I cannot edit it in FCP X, so I tried to change just its container TS to MP4 with ffmpeg using the below command.

    ffmpeg -i input.ts -vcodec copy -acodec copy output.mp4

    After doing it, fps of output.mp4 became 59.94 fps and information is like below ;

    Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 1920x1080 [SAR 1:1 DAR 16:9], 1750 kb/s, 59.94 fps, 59.94 tbr, 90k tbn, 59.94 tbc
    Stream #0:1(und): Audio: mp2 (mp4a / 0x6134706D), 48000 Hz, stereo, s16p, 224 kb/s

    Fps is not same.

    Is there a way to keep same fps as TS with just copy option to change a container ?

    I am wondering whether just re-encoding is solution or not.

    /////

    Full logs ;

    $ ffmpeg -i input.ts -vcodec copy -acodec copy output.mp4
    ffmpeg version 1.1.2 Copyright (c) 2000-2013 the FFmpeg developers
     built on Feb  6 2013 10:45:57 with Apple clang version 4.1 (tags/Apple/clang-421.11.66) (based on LLVM 3.1svn)
     configuration: --prefix=/opt/local --enable-swscale --enable-avfilter --enable-libmp3lame --enable-libvorbis --enable-libopus --enable-libtheora --enable-libschroedinger --enable-libopenjpeg --enable-libmodplug --enable-libvpx --enable-libspeex --enable-libfreetype --mandir=/opt/local/share/man --enable-shared --enable-pthreads --cc=/usr/bin/clang --arch=x86_64 --enable-yasm --enable-gpl --enable-postproc --enable-libx264 --enable-libxvid
     libavutil      52. 13.100 / 52. 13.100
     libavcodec     54. 86.100 / 54. 86.100
     libavformat    54. 59.106 / 54. 59.106
     libavdevice    54.  3.102 / 54.  3.102
     libavfilter     3. 32.100 /  3. 32.100
     libswscale      2.  1.103 /  2.  1.103
     libswresample   0. 17.102 /  0. 17.102
     libpostproc    52.  2.100 / 52.  2.100
    [mpegts @ 0x7f8a2b033000] max_analyze_duration 5000000 reached at 5003333
    Input #0, mpegts, from 'input.ts':
     Duration: 00:05:01.27, start: 0.224400, bitrate: 2727 kb/s
     Program 1
       Stream #0:0[0x51]: Video: h264 (High) ([27][0][0][0] / 0x001B), yuv420p, 1920x1080 [SAR 1:1 DAR 16:9], 29.97 fps, 59.94 tbr, 90k tbn, 59.94 tbc
       Stream #0:1[0x61]: Audio: mp2 ([3][0][0][0] / 0x0003), 48000 Hz, stereo, s16p, 224 kb/s
    Output #0, mp4, to 'output.mp4':
     Metadata:
       encoder         : Lavf54.59.106
       Stream #0:0: Video: h264 ([33][0][0][0] / 0x0021), yuv420p, 1920x1080 [SAR 1:1 DAR 16:9], q=2-31, 29.97 fps, 90k tbn, 90k tbc
       Stream #0:1: Audio: mp2 (i[0][0][0] / 0x0069), 48000 Hz, stereo, 224 kb/s
    Stream mapping:
     Stream #0:0 -> #0:0 (copy)
     Stream #0:1 -> #0:1 (copy)
    Press [q] to stop, [?] for help
    [mp4 @ 0x7f8a2b058200] pts has no value
    frame=13472 fps=0.0 q=-1.0 size=   54536kB time=00:03:44.80 bitrate=1987.3kbits/frame=18056 fps=0.0 q=-1.0 Lsize=   73024kB time=00:05:01.28 bitrate=1985.5kbits/s    
    video:64370kB audio:8212kB subtitle:0 global headers:0kB muxing overhead 0.608498%
  • Unable to playback hardware encoded H.264 to RED5 server using FFmpeg

    26 février 2019, par Les

    I have a USB camera that is capable of H.264 on-board compression. I use the following FFmpeg command line to grab the encoded H.264 from the camera and put it in a ’flv’ container :

    ffmpeg -y -f dshow -vcodec h264 -i video="USB Camera" -vcodec copy -copyinkf -f flv c:\temp\test.flv

    This works as expected and I can view the video using VLC no problem. Following this principle I then attempt to stream to a RED5 server using the following command :

    ffmpeg -y -f dshow -vcodec h264 -i video="USB Camera" -vcodec copy -copyinkf -f flv rtmp://192.168.75.34/live/livestream

    The RED5 server detects the stream but I am unable to connect to it and view it using my basic Python program.

    If I do the same thing but use FFmpeg to carry out H.264 encoding of the default capture pin (MJPEG), it will stream correctly.

    I’m not sure if there is some flag in the command line that I might be missing ? Any help with this issue would be much appreciated.

    Here is the log output from the second FFmpeg command :

    C :\ffmpeg-latest-20190219\ffmpeg-static\bin>ffmpeg -y -f dshow -vcodec h264 -i video="USB Camera" -vcodec copy -copyinkf -f flv rtmp ://192.168.75.176/live/livestream"

    ffmpeg version N-93151-gff03418348 Copyright (c) 2000-2019 the FFmpeg developers
    built with gcc 8.2.1 (GCC) 20190212
    configuration : —enable-gpl —enable-version3 —enable-sdl2 —enable-fontconfig —enable-gnutls —enable-iconv —enable-libass —enable-libdav1d —enable-libbluray —enable-libfreetype —enable-libmp3lame —enable-libopencore-amrnb —enable-libopencore-amrwb —enable-libopenjpeg —enable-libopus —enable-libshine —enable-libsnappy —enable-libsoxr —enable-libtheora —enable-libtwolame —enable-libvpx —enable-libwavpack —enable-libwebp —enable-libx264 —enable-libx265 —enable-libxml2 —enable-libzimg —enable-lzma —enable-zlib —enable-gmp —enable-libvidstab —enable-libvorbis —enable-libvo-amrwbenc —enable-libmysofa —enable-libspeex —enable-libxvid —enable-libaom —enable-libmfx —enable-amf —enable-ffnvcodec —enable-cuvid —enable-d3d11va —enable-nvenc —enable-nvdec —enable-dxva2 —enable-avisynth —enable-libopenmpt
    libavutil 56. 26.100 / 56. 26.100
    libavcodec 58. 47.102 / 58. 47.102
    libavformat 58. 26.101 / 58. 26.101
    libavdevice 58. 6.101 / 58. 6.101
    libavfilter 7. 48.100 / 7. 48.100
    libswscale 5. 4.100 / 5. 4.100
    libswresample 3. 4.100 / 3. 4.100
    libpostproc 55. 4.100 / 55. 4.100

    Input #0, dshow, from ’video=USB Camera’ :
    Duration : N/A, start : 1834145.825000, bitrate : N/A
    Stream #0:0 : Video : h264 (Main) (H264 / 0x34363248), yuv420p, 1920x1080, 30 fps, 30 tbr, 10000k tbn, 20000k tbc

    Output #0, flv, to ’rtmp ://192.168.75.176/live/livestream’ :
    Metadata :
    encoder : Lavf58.26.101
    Stream #0:0 : Video : h264 (Main) ([7][0][0][0] / 0x0007), yuv420p, 1920x1080, q=2-31, 30 fps, 30 tbr, 1k tbn, 10000k tbc

    Stream mapping :
    Stream #0:0 -> #0:0 (copy)
    Press [q] to stop, [?] for help
    frame= 39 fps=3.2 q=-1.0 Lsize= 976kB time=00:00:07.10 bitrate=1124.8kbits/s speed=0.59x
    video:975kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead : 0.106110%

  • Evolution #4271 (Nouveau) : valider_url_distante => pouvoir déclarer des domaines distants et pas ...

    21 janvier 2019, par - Equipement

    Bonjour,

    La fonction valider_url_distante permet de déclarer des hosts distants :

    1. <span class="CodeRay"><span class="local-variable">$known_hosts</span> = pipeline(<span class="string"><span class="delimiter">'</span><span class="content">declarer_hosts_distants</span><span class="delimiter">'</span></span>, <span class="local-variable">$known_hosts</span>);
    2. </span>

    Télécharger

    C’est très bien, mais avec plusieurs centaines de hosts à déclarer (dont la liste varie dans le temps), cela devient compliqué à gérer.

    Serait-il possible d’avoir, en plus, la possibilité de déclarer des domaines distants ?

    Une première piste serait de pouvoir déclarer .example.com dans le pipeline pour inclure tous les *.example.com au lieu des les énumérer un par un.

    Une seconde piste consisterait à s’inspirer de la function need_proxy (via une constante avec la même syntaxe que pour le http_noproxy) :

    // Pour mémoire code actuel à conserver ...

    1. <span class="CodeRay">    <span class="local-variable">$is_known_host</span> = <span class="predefined-constant">false</span>;
    2.     <span class="keyword">foreach</span> (<span class="local-variable">$known_hosts</span> <span class="keyword">as</span> <span class="local-variable">$known_host</span>) {
    3.         <span class="local-variable">$parse_known</span> = <span class="predefined">parse_url</span>(<span class="local-variable">$known_host</span>);
    4.         <span class="keyword">if</span> (<span class="local-variable">$parse_known</span>
    5.           <span class="keyword">and</span> <span class="predefined">strtolower</span>(<span class="local-variable">$parse_known</span>[<span class="string"><span class="delimiter">'</span><span class="content">host</span><span class="delimiter">'</span></span>]) === <span class="predefined">strtolower</span>(<span class="local-variable">$parsed_url</span>[<span class="string"><span class="delimiter">'</span><span class="content">host</span><span class="delimiter">'</span></span>])) {
    6.             <span class="local-variable">$is_known_host</span> = <span class="predefined-constant">true</span>;
    7.             <span class="keyword">break</span>;
    8.         }
    9.     }
    10. </span>

    Télécharger

    // ... que l’on pourrait faire suivre de ce code (complètement inspiré de function need_proxy) :

    1. <span class="CodeRay">    <span class="keyword">if</span> (!<span class="local-variable">$is_known_host</span>) {
    2.                 <span class="local-variable">$known_domaines</span> = _DECLARER_DOMAINES_DISTANTS;
    3.  
    4.                 <span class="local-variable">$known_domaines</span> = <span class="predefined">str_replace</span>(<span class="string"><span class="delimiter">"</span><span class="char">\n</span><span class="delimiter">"</span></span>, <span class="string"><span class="delimiter">"</span><span class="content"> </span><span class="delimiter">"</span></span>, <span class="local-variable">$known_domaines</span>);
    5.                 <span class="local-variable">$known_domaines</span> = <span class="predefined">str_replace</span>(<span class="string"><span class="delimiter">"</span><span class="char">\r</span><span class="delimiter">"</span></span>, <span class="string"><span class="delimiter">"</span><span class="content"> </span><span class="delimiter">"</span></span>, <span class="local-variable">$known_domaines</span>);
    6.                 <span class="local-variable">$known_domaines</span> = <span class="string"><span class="delimiter">"</span><span class="content"> </span><span class="local-variable">$known_domaines</span><span class="content"> </span><span class="delimiter">"</span></span>;
    7.                 <span class="local-variable">$domain</span> = <span class="predefined">strtolower</span>(<span class="local-variable">$parsed_url</span>[<span class="string"><span class="delimiter">'</span><span class="content">host</span><span class="delimiter">'</span></span>]);
    8.  
    9.                 <span class="keyword">if</span> (<span class="predefined">strpos</span>(<span class="local-variable">$known_domaines</span>, <span class="string"><span class="delimiter">"</span><span class="content"> </span><span class="local-variable">$domain</span><span class="content"> </span><span class="delimiter">"</span></span>) !== <span class="predefined-constant">false</span>){
    10.                     <span class="local-variable">$is_known_host</span> = <span class="predefined-constant">true</span>;
    11.                 }
    12.  
    13.                 <span class="keyword">while</span> (<span class="predefined">strpos</span>(<span class="local-variable">$domain</span>, <span class="string"><span class="delimiter">'</span><span class="content">.</span><span class="delimiter">'</span></span>) !== <span class="predefined-constant">false</span>) {
    14.                         <span class="local-variable">$domain</span> = <span class="predefined">explode</span>(<span class="string"><span class="delimiter">'</span><span class="content">.</span><span class="delimiter">'</span></span>, <span class="local-variable">$domain</span>);
    15.                         <span class="predefined">array_shift</span>(<span class="local-variable">$domain</span>);
    16.                         <span class="local-variable">$domain</span> = <span class="predefined">implode</span>(<span class="string"><span class="delimiter">'</span><span class="content">.</span><span class="delimiter">'</span></span>, <span class="local-variable">$domain</span>);
    17.  
    18.                         <span class="keyword">if</span> (<span class="predefined">strpos</span>(<span class="local-variable">$known_domaines</span>, <span class="string"><span class="delimiter">"</span><span class="content"> .</span><span class="local-variable">$domain</span><span class="content"> </span><span class="delimiter">"</span></span>) !== <span class="predefined-constant">false</span>) {
    19.                             <span class="local-variable">$is_known_host</span> = <span class="predefined-constant">true</span>;
    20.                         }
    21.                 }
    22.         }
    23. </span>

    Télécharger

    Cordialement
    Equipement