Recherche avancée

Médias (91)

Autres articles (75)

  • Gestion des droits de création et d’édition des objets

    8 février 2011, par

    Par défaut, beaucoup de fonctionnalités sont limitées aux administrateurs mais restent configurables indépendamment pour modifier leur statut minimal d’utilisation notamment : la rédaction de contenus sur le site modifiables dans la gestion des templates de formulaires ; l’ajout de notes aux articles ; l’ajout de légendes et d’annotations sur les images ;

  • Dépôt de média et thèmes par FTP

    31 mai 2013, par

    L’outil MédiaSPIP traite aussi les média transférés par la voie FTP. Si vous préférez déposer par cette voie, récupérez les identifiants d’accès vers votre site MédiaSPIP et utilisez votre client FTP favori.
    Vous trouverez dès le départ les dossiers suivants dans votre espace FTP : config/ : dossier de configuration du site IMG/ : dossier des média déjà traités et en ligne sur le site local/ : répertoire cache du site web themes/ : les thèmes ou les feuilles de style personnalisées tmp/ : dossier de travail (...)

  • Keeping control of your media in your hands

    13 avril 2011, par

    The vocabulary used on this site and around MediaSPIP in general, aims to avoid reference to Web 2.0 and the companies that profit from media-sharing.
    While using MediaSPIP, you are invited to avoid using words like "Brand", "Cloud" and "Market".
    MediaSPIP is designed to facilitate the sharing of creative media online, while allowing authors to retain complete control of their work.
    MediaSPIP aims to be accessible to as many people as possible and development is based on expanding the (...)

Sur d’autres sites (9371)

  • ffmpeg copy a part of a video wrt to milliseconds accurately

    25 août 2016, par Santhosh Yedidi

    I am using ffmpeg to copy a part of video.

    I am using mpv to view the video. I get the start time and end time from it.

    ffmpeg -i "main.flv" -ss 01:54:34.340 -to 02:01:13.073 -c copy copied.mp4

    the problem i am facing is the video does not start from 01:54:34.340, it starts from 01:54:34.608

    so its shifting the start poistion.

    Is there any way i can start from the exact millisecond position or form that particular frame.

    or is there command to mention start frame number and end frame number. For that mpv also should tell me the frame numbers in ths OSD

    the output of the above command is

    Input #0, flv, from 'main.flv':
     Metadata:
       author          :
       copyright       :
       description     :
       keywords        :
       rating          :
       title           :
       presetname      : Custom
       creationdate    : Thu Aug 25 04:50:55 2016
                       :
       videodevice     : VidBlaster
       avclevel        : 31
       avcprofile      : 77
       videokeyframe_frequency: 5
       audiodevice     : Realtek HD Audio Input
       audiochannels   : 2
       audioinputvolume: 100
     Duration: 03:55:58.86, start: 0.033000, bitrate: 855 kb/s
       Stream #0:0: Video: h264 (Main), yuv420p(tv), 640x480 [SAR 1:1 DAR 4:3], 819 kb/s, 30.30 fps, 29.97 tbr, 1k tbn, 59.94 tbc
       Stream #0:1: Audio: aac (LC), 22050 Hz, stereo, fltp, 49 kb/s
    Output #0, mp4, to 'copied.mp4':
     Metadata:
       author          :
       copyright       :
       description     :
       keywords        :
       rating          :
       title           :
       presetname      : Custom
       creationdate    : Thu Aug 25 04:50:55 2016
                       :
       videodevice     : VidBlaster
       avclevel        : 31
       avcprofile      : 77
       videokeyframe_frequency: 5
       audiodevice     : Realtek HD Audio Input
       audiochannels   : 2
       audioinputvolume: 100
       encoder         : Lavf57.25.100
       Stream #0:0: Video: h264 ([33][0][0][0] / 0x0021), yuv420p, 640x480 [SAR 1:1 DAR 4:3], q=2-31, 819 kb/s, 30.30 fps, 29.97 tbr, 16k tbn, 1k tbc
       Stream #0:1: Audio: aac (LC) ([64][0][0][0] / 0x0040), 22050 Hz, stereo, 49 kb/s
    Stream mapping:
     Stream #0:0 -> #0:0 (copy)
     Stream #0:1 -> #0:1 (copy)
    Press [q] to stop, [?] for help
    frame=    0 fps=0.0 q=-1.0 size=       0kB time=00:00:00.00 bitrate=N/A speed=  frame=    0 fps=0.0 q=-1.0 size=       0kB time=00:00:00.00 bitrate=N/A speed=  frame=11906 fps=8002 q=-1.0 Lsize=   41574kB time=00:06:38.75 bitrate= 854.1kbits/s speed= 268x    
    video:38866kB audio:2336kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.904480%
  • Streaming Rtsp stream to website using FFmpeg and FFserver.

    23 août 2016, par Pallav Gupta

    I am working on a website for a client and one of the requirement is to embed the video from HikVision DVR DS7116. I have the RTSP url for the DVR. I want help with FFmpeg and FFserver. I already have written my ffserver config file.

    /etc/ffserver.config

    Port 9500
    # bind to all IPs aliased or not
    BindAddress 0.0.0.0
    # max number of simultaneous clients
    MaxClients 1000
    # max bandwidth per-client (kb/s)
    MaxBandwidth 10000
    # Suppress that if you want to launch ffserver as a daemon.
    NoDaemon

    <feed>
    File /tmp/feed1.ffm
    FileMaxSize 5M
    </feed>

    <stream>
    Feed feed1.ffm
    Format swf
    VideoCodec flv
    VideoFrameRate 15
    VideoBufferSize 80000
    VideoBitRate 100
    VideoQMin 1
    VideoQMax 5
    VideoSize 352x288
    PreRoll 0
    Noaudio
    </stream>

    I next run my ffserver and ffmpeg command which is

    ffserver &amp; ffmpeg -re -i rtsp://admin:12345@192.168.1.3/MPEG-4/ch1/main/av_stream  http://192.168.1.105:9500/feed1.ffm

    The output which i receive is as follows

    ffmpeg version N-80901-gfebc862 Copyright (c) 2000-2016 the FFmpeg developers
     built with gcc 4.8 (Ubuntu 4.8.4-2ubuntu1~14.04.3)
     configuration: --extra-libs=-ldl --prefix=/opt/ffmpeg --mandir=/usr/share/man --enable-avresample --disable-debug --enable-nonfree --enable-gpl --enable-version3 --enable-libopencore-amrnb --enable-libopencore-amrwb --disable-decoder=amrnb --disable-decoder=amrwb --enable-libpulse --enable-libfreetype --enable-gnutls --enable-libx264 --enable-libx265 --enable-libfdk-aac --enable-libvorbis --enable-libmp3lame --enable-libopus --enable-libvpx --enable-libspeex --enable-libass --enable-avisynth --enable-libsoxr --enable-libxvid --enable-libvidstab

     libavutil      55. 28.100 / 55. 28.100
     libavcodec     57. 48.101 / 57. 48.101
     libavformat    57. 41.100 / 57. 41.100
     libavdevice    57.  0.102 / 57.  0.102
     libavfilter     6. 47.100 /  6. 47.100
     libavresample   3.  0.  0 /  3.  0.  0
     libswscale      4.  1.100 /  4.  1.100
     libswresample   2.  1.100 /  2.  1.100
     libpostproc    54.  0.100 / 54.  0.100

    [rtsp @ 0x20c4720] Missing PPS in sprop-parameter-sets, ignoring
    [h264 @ 0x20c7f60] non-existing PPS 0 referenced
       Last message repeated 1 times
    [h264 @ 0x20c7f60] decode_slice_header error
    [h264 @ 0x20c7f60] no frame!
    [rtsp @ 0x20c4720] RTP: missed 1137 packets
    [rtsp @ 0x20c4720] max delay reached. need to consume packet
    [rtsp @ 0x20c4720] RTP: missed 1125 packets
    [rtsp @ 0x20c4720] max delay reached. need to consume packet
    [rtsp @ 0x20c4720] RTP: missed 1126 packets

    Guessed Channel Layout for Input Stream #0.1 : mono
    Input #0, rtsp, from 'rtsp://admin:12345@192.168.1.3/MPEG-4/ch1/main/av_stream':
     Metadata:
       title           : HIK Media Server
       comment         : HIK Media Server Session Description : standard
     Duration: N/A, start: 0.000000, bitrate: N/A
       Stream #0:0: Video: h264 (Baseline), yuv420p, 352x288, 10 fps, 25 tbr, 90k tbn, 20 tbc
       Stream #0:1: Audio: pcm_mulaw, 8000 Hz, 1 channels, s16, 64 kb/s
    [ffm @ 0x21c0e80] Using AVStream.codec to pass codec parameters to muxers is deprecated, use AVStream.codecpar instead.

    Output #0, ffm, to 'http://192.168.1.105:9500/feed1.ffm':
     Metadata:
       title           : HIK Media Server
       comment         : HIK Media Server Session Description : standard
       creation_time   : now
       encoder         : Lavf57.41.100
       Stream #0:0: Video: flv1 (flv), yuv420p, 352x288, q=1-5, 100 kb/s, 10 fps, 1000k tbn, 15 tbc

       Metadata:
         encoder         : Lavc57.48.101 flv
       Side data:
         cpb: bitrate max/min/avg: 200000/0/100000 buffer size: 655360000 vbv_delay: -1

    Stream mapping:
     Stream #0:0 -> #0:0 (h264 (native) -> flv1 (flv))
    Press [q] to stop, [?] for help
    frame=    0 fps=0.0 q=0.0 size=       4kB time=00:00:00.00 bitrate=N/A speed=   frame=    0 fps=0.0 q=0.0 size=       4kB time=00:00:00.00 bitrate=N/A speed=   frame=    0 fps=0.0 q=0.0 size=       4kB time=00:00:00.00 bitrate=N/A speed=   Past duration 1.003319 too large
       Last message repeated 1 times
    Past duration 1.005333 too large
    frame=   31 fps= 15 q=31.0 size=      56kB time=00:00:02.00 bitrate= 229.4kbits/Past duration 1.005653 too large
    Past duration 1.005989 too large
    frame=   37 fps= 15 q=24.8 size=      76kB time=00:00:02.40 bitrate= 259.4kbits/Past duration 1.006660 too large
    Past duration 1.006996 too large
    frame=   46 fps= 15 q=31.0 size=      80kB time=00:00:03.00 bitrate= 218.5kbits/Past duration 1.007988 too large
    Past duration 1.008659 too large
    frame=   53 fps= 15 q=31.0 size=      96kB time=00:00:03.46 bitrate= 226.9kbits/Past duration 1.009987 too large
    Past duration 1.010323 too large
    frame=   61 fps= 15 q=24.8 size=     116kB time=00:00:04.00 bitrate= 237.6kbits/Past duration 1.010994 too large
    Past duration 1.011330 too large
    Past duration 1.011986 too large
    frame=   68 fps= 15 q=31.0 size=     120kB time=00:00:04.46 bitrate= 220.1kbits/Past duration 1.012657 too large

    [rtsp @ 0x20c4720] max delay reached. need to consume packet
    [rtsp @ 0x20c4720] RTP: missed 1114 packets
    [rtsp @ 0x20c4720] max delay reached. need to consume packet
    [rtsp @ 0x20c4720] RTP: missed 1115 packets
    Past duration 1.012993 too large
    frame=   76 fps= 15 q=31.0 size=     140kB time=00:00:05.00 bitrate= 229.4kbits/Past duration 1.013664 too large
    Past duration 1.014320 too large
    Past duration 1.014656 too large
    frame=   83 fps= 15 q=31.0 size=     144kB time=00:00:05.46 bitrate= 215.8kbits/Past duration 1.015327 too large
    [rtsp @ 0x20c4720] max delay reached. need to consume packet
    [rtsp @ 0x20c4720] RTP: missed 1103 packets
    [rtsp @ 0x20c4720] max delay reached. need to consume packet
    [rtsp @ 0x20c4720] RTP: missed 1104 packets

    Past duration 1.015999 too large
    frame=   91 fps= 15 q=31.0 size=     160kB time=00:00:06.00 bitrate= 218.5kbits/Past duration 1.016655 too large
    Past duration 1.017326 too large
    Past duration 1.017998 too large
    frame=   98 fps= 15 q=31.0 size=     180kB time=00:00:06.46 bitrate= 228.0kbits/Past duration 1.018654 too large
    [rtsp @ 0x20c4720] max delay reached. need to consume packet
    [rtsp @ 0x20c4720] RTP: missed 1092 packets
    [rtsp @ 0x20c4720] max delay reached. need to consume packet
    [rtsp @ 0x20c4720] RTP: missed 1093 packets
    Past duration 1.019325 too large
    frame=  106 fps= 15 q=31.0 size=     184kB time=00:00:07.00 bitrate= 215.3kbits/Past duration 1.019997 too large
    [rtsp @ 0x20c4720] max delay reached. need to consume packet
    [rtsp @ 0x20c4720] RTP: missed 35 packets
    Past duration 1.020653 too large
    frame=  161 fps= 15 q=31.0 size=     264kB time=00:00:10.66 bitrate= 202.8kbits/Past duration 1.032661 too large
    Past duration 1.033333 too large
    frame=  167 fps= 15 q=31.0 Lsize=     276kB time=00:00:11.06 bitrate= 204.3kbits/s dup=94 drop=0 speed=0.964x
    video:265kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 4.280833%

    I can see that with some errors, the stream starts.
    When i put the output url in my html code, there is no stream. I also tried playing the network stream in VLC and did not get anything. Can anyone please help me with that ? Any leads are also appreciated. Thank you.

    My HTML Code is :

  • FFmpeg / libavcodec : Encoding with x264 ignores bitrate setting

    16 août 2016, par Fasteno

    I am trying to write a video using the FFmpeg libraries. So far I can successfully encode videos with the .avi extension, but when I use the .mp4 extension the application ignores completely the bitrate option I specify.

    Here’s a snippet of the code I use to specify the encoding settings :

    //define video stream
    AVOutputFormat* outFmt = nullptr;
    outFmt = av_guess_format(NULL, m_pcFilename.c_str(), NULL);
    avformat_alloc_output_context2(&amp;m_pcOC, outFmt, NULL, NULL);
    AVFormatContext* m_pcOC;
    AVStream* m_pcVideoSt = avformat_new_stream(m_pcOC, NULL);
    AVCodec* codec = nullptr;
    codec = avcodec_find_encoder(codecID);
    avcodec_get_context_defaults3(m_pcVideoSt->codec, codec);
    //set some parameters
    double dBitrate = std::stod(bitrate);
    m_pcVideoSt->codec->codec_id = codecID;
    m_pcVideoSt->codec->codec_type = AVMEDIA_TYPE_VIDEO;
    m_pcVideoSt->codec->bit_rate = dBitrate;
    m_pcVideoSt->codec->bit_rate_tolerance = 20000;
    m_pcVideoSt->codec->width = m_iOutCols;
    m_pcVideoSt->codec->height = m_iOutRows;
    m_pcVideoSt->codec->time_base.den = static_cast<int>(dFps);
    m_pcVideoSt->codec->time_base.num = 1;
    if (m_pcOC->oformat->flags &amp; AVFMT_GLOBALHEADER)
    {
     m_pcVideoSt->codec->flags |= CODEC_FLAG_GLOBAL_HEADER;
    }
    /* open the codec */
    AVDictionary* pcOpts = nullptr;
    int res1 = av_dict_set(&amp;pcOpts, "b", bitrate.c_str(), 0);
    int res = avcodec_open2(m_pcVideoSt->codec, codec, &amp;pcOpts);
    </int>

    This is the output I get when creating a .avi file

    ffprobe version 2.8.6 Copyright (c) 2007-2016 the FFmpeg developers
    built with gcc 5.3.0 (GCC)
    configuration: --disable-static --enable-shared --enable-gpl --enable-version3 --disable-w32threads --enable-avisynth --enable-bzlib --enable-fontconfig --enable-frei0r --enable-gnutls --enable-iconv --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libdcadec --enable-libfreetype --enable-libgme --enable-libgsm --enable-libilbc --enable-libmodplug --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-librtmp --enable-libschroedinger --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs --enable-libxvid --enable-lzma --enable-decklink --enable-zlib
    libavutil      54. 31.100 / 54. 31.100
    libavcodec     56. 60.100 / 56. 60.100
    libavformat    56. 40.101 / 56. 40.101
    libavdevice    56.  4.100 / 56.  4.100
    libavfilter     5. 40.101 /  5. 40.101
    libswscale      3.  1.101 /  3.  1.101
    libswresample   1.  2.101 /  1.  2.101
    libpostproc    53.  3.100 / 53.  3.100
    Input #0, avi, from 'testGrey2.avi':
    Metadata:
    encoder         : Lavf56.40.101
    Duration: 00:01:20.00, start: 0.000000, **bitrate: 433 kb/s**
    Stream #0:0: Video: **mpeg4 (Advanced Simple Profile)** (FMP4 / 0x34504D46), yuv420p, 720x576 [SAR 1:1 DAR 5:4], 428 kb/s, 25 fps, 25 tbr, 25 tbn, 25 tbc

    And this is what I get when creating an .mp4 file

    ffprobe version 2.8.6 Copyright (c) 2007-2016 the FFmpeg developers
    built with gcc 5.3.0 (GCC)
    configuration: --disable-static --enable-shared --enable-gpl --enable-    version3 --disable-w32threads --enable-avisynth --enable-bzlib --enable-fontconfig --enable-frei0r --enable-gnutls --enable-iconv --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libdcadec --enable-libfreetype --enable-libgme --enable-libgsm --enable-libilbc --enable-libmodplug --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-librtmp --enable-libschroedinger --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-    libxavs --enable-libxvid --enable-lzma --enable-decklink --enable-zlib
    libavutil      54. 31.100 / 54. 31.100
    libavcodec     56. 60.100 / 56. 60.100
    libavformat    56. 40.101 / 56. 40.101
    libavdevice    56.  4.100 / 56.  4.100
    libavfilter     5. 40.101 /  5. 40.101
    libswscale      3.  1.101 /  3.  1.101
    libswresample   1.  2.101 /  1.  2.101
    libpostproc    53.  3.100 / 53.  3.100
    Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'testGrey2.mp4':
    Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf56.40.101
    Duration: 00:01:20.00, start: 0.000000, **bitrate: 1542 kb/s**
    Stream #0:0(und): **Video: h264 (High)** (avc1 / 0x31637661), yuv420p, 720x576, 1540 kb/s, 25 fps, 25 tbr, 12800 tbn, 50 tbc (default)
    Metadata:
     handler_name    : VideoHandler

    Any ideas on why is this happening ? What is the preferred way to specify the bitrate of the output video ?