Recherche avancée

Médias (91)

Autres articles (40)

  • 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

  • HTML5 audio and video support

    13 avril 2011, par

    MediaSPIP uses HTML5 video and audio tags to play multimedia files, taking advantage of the latest W3C innovations supported by modern browsers.
    The MediaSPIP player used has been created specifically for MediaSPIP and can be easily adapted to fit in with a specific theme.
    For older browsers the Flowplayer flash fallback is used.
    MediaSPIP allows for media playback on major mobile platforms with the above (...)

  • Support audio et vidéo HTML5

    10 avril 2011

    MediaSPIP utilise les balises HTML5 video et audio pour la lecture de documents multimedia en profitant des dernières innovations du W3C supportées par les navigateurs modernes.
    Pour les navigateurs plus anciens, le lecteur flash Flowplayer est utilisé.
    Le lecteur HTML5 utilisé a été spécifiquement créé pour MediaSPIP : il est complètement modifiable graphiquement pour correspondre à un thème choisi.
    Ces technologies permettent de distribuer vidéo et son à la fois sur des ordinateurs conventionnels (...)

Sur d’autres sites (6701)

  • FFmpeg : generating H264 video in c++

    13 octobre 2015, par EZEROFIVE EMD

    Im using ffmpeg library in windows with vs2012 to convert a series of images into Mp4 with H264 encoding. Im new to FFMPEG.

    Below is my code. Everything went fine. Video is created.But i can play the video in vlc player only if i changed the extension to ".h264", also when i check for codec information it says "H264 - MPEG-4 AVC (part 10) (h264)". but when i checked the same for other mp4 videos which are downloaded from web. it says "H264 - MPEG-4" AVC (part 10) (avc1)". I dont understand where it went wrong. Also i searched a lot, some says like add SPS and PPS.

    const uint8_t sps[] = { 0x00, 0x00, 0x00, 0x01, 0x67, 0x42, 0x00,
    0x0a, 0xf8, 0x41, 0xa2 };
    const uint8_t pps[] = { 0x00, 0x00, 0x00, 0x01, 0x68, 0xce,
    0x38, 0x80 };

    So i added the above value to video file before i add the image stream. But no luck.
    Can anyone help on this..Thanks in advance.

    const uint8_t sps[] = { 0x00, 0x00, 0x00, 0x01, 0x67, 0x42, 0x00,
    0x0a, 0xf8, 0x41, 0xa2 };
    const uint8_t pps[] = { 0x00, 0x00, 0x00, 0x01, 0x68, 0xce,
    0x38, 0x80 };
    const uint8_t slice_header[] = { 0x00, 0x00, 0x00, 0x01, 0x05, 0x88,
    0x84, 0x21, 0xa0 };
    const uint8_t macroblock_header[] = { 0x0d, 0x00 };

    const uint8_t spspps[] = { 0x00, 0x00, 0x00, 0x01, 0x67, 0x42, 0x00, 0x0a, 0xf8, 0x41, 0xa2,
                              0x00, 0x00, 0x00, 0x01, 0x68, 0xce, 0x38, 0x80
                            };

    int ff_load_image(uint8_t *data[4], int linesize[4],
           int *w, int *h, enum PixelFormat *pix_fmt,
           const char *filename, void *log_ctx)
       {
           AVInputFormat *iformat = NULL;
           AVFormatContext *format_ctx = NULL;
           AVCodec *codec=NULL;
           AVCodecContext *codec_ctx=NULL;
           AVFrame *frame=NULL;
           int frame_decoded, ret = 0;
           AVPacket pkt;

           av_register_all();

           iformat = av_find_input_format("image2");
           if ((ret = avformat_open_input(&format_ctx, filename, iformat, NULL)) < 0) {
               return ret;
           }

           codec_ctx = format_ctx->streams[0]->codec;
           codec = avcodec_find_decoder(codec_ctx->codec_id);
           if (!codec) {
               ret = AVERROR(EINVAL);
               goto end;
           }

           if ((ret = avcodec_open2(codec_ctx, codec, NULL)) < 0) {
               goto end;
           }

           //if (!(frame = avcodec_alloc_frame()) ) {
           if (!(frame = av_frame_alloc()) ) {
               ret = AVERROR(ENOMEM);
               goto end;
           }

           ret = av_read_frame(format_ctx, &pkt);
           if (ret < 0) {
               goto end;
           }

           ret = avcodec_decode_video2(codec_ctx, frame, &frame_decoded, &pkt);
           if (ret < 0 || !frame_decoded) {
               goto end;
           }
           ret = 0;

           *w       = frame->width;
           *h       = frame->height;
           *pix_fmt = (PixelFormat)frame->format;

           if ((ret = av_image_alloc(data, linesize, *w, *h, (AVPixelFormat)*pix_fmt, 16)) < 0)
               goto end;
           ret = 0;

           av_image_copy(data, linesize, (const uint8_t **)frame->data, frame->linesize, (AVPixelFormat)*pix_fmt, *w, *h);

    end:
           if(codec_ctx) { avcodec_close(codec_ctx); }
           if(format_ctx) { avformat_close_input(&format_ctx); }
           if(frame) { av_freep(&frame); }
           av_free_packet(&pkt);
                   return ret;
       }

       int load_image_into_frame(AVFrame *frame, const char *filename)
       {
           int retval = -1, res;
           static struct SwsContext *sws_ctx;
           uint8_t *image_data[4];
           int linesize[4];
           int source_width, source_height;
           enum PixelFormat source_fmt;

           res = ff_load_image(image_data, linesize, &source_width, &source_height, &source_fmt, filename, NULL);

           if (source_fmt != frame->format) {
               sws_ctx = sws_getContext(source_width, source_height, (AVPixelFormat)source_fmt,
                   frame->width, frame->height, (AVPixelFormat)frame->format,
                   sws_flags, NULL, NULL, NULL);

               sws_scale(sws_ctx,
                   (const uint8_t * const *)image_data, linesize,
                   0, frame->height, frame->data, frame->linesize);
           }

           retval = 0;
    error:
           av_freep(&image_data[0]);
           sws_freeContext(sws_ctx);
           return retval;
       }

       int write_frame_to_file(FILE *file, AVFrame *frame, AVCodecContext *codec_context, AVPacket *pkt) {
           int res, got_output;
           av_init_packet(pkt);
           pkt->data = NULL;
           pkt->size = 0;

           /* generate synthetic video */
           frame->pts += 30;

           res = avcodec_encode_video2(codec_context, pkt, frame, &got_output);

           if (got_output) {

               fwrite(pkt->data, 1, pkt->size, file);
               av_free_packet(pkt);
           }
           return 0;
    error:
           return -1;
       }

       int write_image_to_file(FILE *file, const char *filename, int count, AVFrame *frame, AVCodecContext *codec_context, AVPacket *pkt) {
           int res, i;
           res = load_image_into_frame(frame, filename);

           for (i = 0; i < count; i++) {

               res = write_frame_to_file(file, frame, codec_context, pkt);
           }

           return 0;
    error:
           return -1;
       }

       int write_delayed_frames_to_file(FILE *file, AVFrame *frame, AVCodecContext *codec_context, AVPacket *pkt) {
           int res, got_output;

           for (got_output = 1; got_output;) {
               res = avcodec_encode_video2(codec_context, pkt, NULL, &got_output);

               if (got_output) {
                   fwrite(pkt->data, 1, pkt->size, file);
                   av_free_packet(pkt);
               }
           }

           return 0;
    error:
           return -1;
       }

       AVCodecContext *get_codec_context(int width, int height, int fps)
       {
           int res;
           avcodec_register_all();

           AVCodec *codec;
           AVCodecContext *codec_context = NULL;

           codec = avcodec_find_encoder(AV_CODEC_ID_H264);

           codec_context = avcodec_alloc_context3(codec);

           codec_context->bit_rate = 441000;
           codec_context->width = width;
           codec_context->height = height;
           AVRational temp_113 = {1, fps};
           AVRational temp_114 = {fps, 1};
           codec_context->time_base= temp_113;
           codec_context->gop_size = 10;
           codec_context->max_b_frames=1;
           codec_context->pix_fmt = AV_PIX_FMT_YUV420P;        

           res = avcodec_open2(codec_context, codec, NULL);

           return codec_context;
    error:
           return NULL;
       }

       AVFrame *get_av_frame(AVCodecContext *codec_context) {
           int res;
           AVFrame *frame;

           frame = av_frame_alloc();
           frame->height = codec_context->height;
           frame->width = codec_context->width;
           frame->format = codec_context->pix_fmt;
           frame->pts = 0;

           res = av_image_alloc(frame->data, frame->linesize, frame->width, frame->height, (AVPixelFormat)frame->format, 1);

           return frame;
    error:
           return NULL;
       }

       int main(int argc, char **argv)
       {
           const char *filename = "result video\\test.mp4";
           FILE *file=NULL;
           int res, retval=-1;
           AVCodecContext *codec_context= NULL;
           AVFrame *frame=NULL;
           AVPacket pkt;
           uint8_t endcode[] = { 0, 0, 1, 0xb7 };

           codec_context = get_codec_context(1920, 1080, 30);

           file = fopen(filename, "wb");
           //check(file != NULL, "could not open destination file %s", filename);

           frame = get_av_frame(codec_context);        

           //fwrite(sps, 1, sizeof(sps), file);
           //fwrite(pps, 1, sizeof(pps), file);

           /*codec_context->extradata = (uint8_t *)malloc(sizeof(uint8_t) * sizeof(spspps));

           for(unsigned int index = 0; index < sizeof(spspps); index++)
           {
               codec_context->extradata[index] = spspps[index];
           }

           codec_context->extradata_size = (int)sizeof(spspps);*/

           codec_context->flags |= CODEC_FLAG_GLOBAL_HEADER;

           int i, frames= 51;
           for (i = 0; i < frames; i++) {
               std::stringstream ss;
               ss<<"\\frames\\out"<<( i + 1)<<".jpg";
               res = write_image_to_file(file, ss.str().c_str(), 3, frame, codec_context, &pkt);
           }


           res = write_delayed_frames_to_file(file, frame, codec_context, &pkt);
           fwrite(endcode, 1, sizeof(endcode), file);

           retval = 0;
    error:
           if (file)
               fclose(file);
           if (codec_context) {
               avcodec_close(codec_context);
               av_free(codec_context);
           }
           if (frame) {
               av_freep(&frame->data[0]);
               av_free(frame);
           }
           return retval;
       }
    }
  • Why JPEG image looks different in two videos ?

    28 septembre 2015, par user606521

    I have two frames :

    f1.jpg
    f1.jpg
    f2.jpg
    f2.jpg

    And I am creating two videos :

    ./ffmpeg -i ./f%d.jpg -r 30 -y m1.mp4 # both frames 1 and 2
    ./ffmpeg -i ./f2.jpg -r 30 -y m2.mp4 # only frame 2

    For some reason frame 2 looks different in these two videos

    Frame 2 from m1.mp4 :

    $ ./ffmpeg -i m1.mp4 out1_%d.jpg
    ffmpeg version 2.7.2 Copyright (c) 2000-2015 the FFmpeg developers
     built with llvm-gcc 4.2.1 (LLVM build 2336.11.00)
     configuration: --prefix=/Volumes/Ramdisk/sw --enable-gpl --enable-pthreads --enable-version3 --enable-libspeex --enable-libvpx --disable-decoder=libvpx --enable-libmp3lame --enable-libtheora --enable-libvorbis --enable-libx264 --enable-avfilter --enable-libopencore_amrwb --enable-libopencore_amrnb --enable-filters --enable-libgsm --enable-libvidstab --enable-libx265 --disable-doc --arch=x86_64 --enable-runtime-cpudetect
     libavutil      54. 27.100 / 54. 27.100
     libavcodec     56. 41.100 / 56. 41.100
     libavformat    56. 36.100 / 56. 36.100
     libavdevice    56.  4.100 / 56.  4.100
     libavfilter     5. 16.101 /  5. 16.101
     libswscale      3.  1.101 /  3.  1.101
     libswresample   1.  2.100 /  1.  2.100
     libpostproc    53.  3.100 / 53.  3.100
    Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'm1.mp4':
     Metadata:
       major_brand     : isom
       minor_version   : 512
       compatible_brands: isomiso2avc1mp41
       encoder         : Lavf56.36.100
     Duration: 00:00:00.07, start: 0.000000, bitrate: 478 kb/s
       Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 980x100, 381 kb/s, 30 fps, 30 tbr, 15360 tbn, 60 tbc (default)
       Metadata:
         handler_name    : VideoHandler
    [swscaler @ 0x7f7f9a000600] deprecated pixel format used, make sure you did set range correctly
    Output #0, image2, to 'out1_%d.jpg':
     Metadata:
       major_brand     : isom
       minor_version   : 512
       compatible_brands: isomiso2avc1mp41
       encoder         : Lavf56.36.100
       Stream #0:0(und): Video: mjpeg, yuvj420p(pc), 980x100, q=2-31, 200 kb/s, 30 fps, 30 tbn, 30 tbc (default)
       Metadata:
         handler_name    : VideoHandler
         encoder         : Lavc56.41.100 mjpeg
    Stream mapping:
     Stream #0:0 -> #0:0 (h264 (native) -> mjpeg (native))
    Press [q] to stop, [?] for help
    frame=    2 fps=0.0 q=1.6 Lsize=N/A time=00:00:00.06 bitrate=N/A    
    video:6kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown

    f1_out.jpg

    Frame 2 from m2.mp4 :

    $ ./ffmpeg -i m2.mp4 out2_%d.jpg
    ffmpeg version 2.7.2 Copyright (c) 2000-2015 the FFmpeg developers
     built with llvm-gcc 4.2.1 (LLVM build 2336.11.00)
     configuration: --prefix=/Volumes/Ramdisk/sw --enable-gpl --enable-pthreads --enable-version3 --enable-libspeex --enable-libvpx --disable-decoder=libvpx --enable-libmp3lame --enable-libtheora --enable-libvorbis --enable-libx264 --enable-avfilter --enable-libopencore_amrwb --enable-libopencore_amrnb --enable-filters --enable-libgsm --enable-libvidstab --enable-libx265 --disable-doc --arch=x86_64 --enable-runtime-cpudetect
     libavutil      54. 27.100 / 54. 27.100
     libavcodec     56. 41.100 / 56. 41.100
     libavformat    56. 36.100 / 56. 36.100
     libavdevice    56.  4.100 / 56.  4.100
     libavfilter     5. 16.101 /  5. 16.101
     libswscale      3.  1.101 /  3.  1.101
     libswresample   1.  2.100 /  1.  2.100
     libpostproc    53.  3.100 / 53.  3.100
    Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'm2.mp4':
     Metadata:
       major_brand     : isom
       minor_version   : 512
       compatible_brands: isomiso2avc1mp41
       encoder         : Lavf56.36.100
     Duration: 00:00:00.03, start: 0.000000, bitrate: 824 kb/s
       Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuvj420p(pc), 980x100 [SAR 1:1 DAR 49:5], 648 kb/s, 30 fps, 30 tbr, 15360 tbn, 60 tbc (default)
       Metadata:
         handler_name    : VideoHandler
    Output #0, image2, to 'out2_%d.jpg':
     Metadata:
       major_brand     : isom
       minor_version   : 512
       compatible_brands: isomiso2avc1mp41
       encoder         : Lavf56.36.100
       Stream #0:0(und): Video: mjpeg, yuvj420p(pc), 980x100 [SAR 1:1 DAR 49:5], q=2-31, 200 kb/s, 30 fps, 30 tbn, 30 tbc (default)
       Metadata:
         handler_name    : VideoHandler
         encoder         : Lavc56.41.100 mjpeg
    Stream mapping:
     Stream #0:0 -> #0:0 (h264 (native) -> mjpeg (native))
    Press [q] to stop, [?] for help
    frame=    1 fps=0.0 q=1.6 Lsize=N/A time=00:00:00.03 bitrate=N/A    
    video:4kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown

    f2_out.jpg

    It seems that frame 2 looks different when combined with frame 1 in a video. One thing I noticed that when dumping frames from m1.mp4 (two frames combined) there is a warning in ffmpeg output :

    [swscaler @ 0x7f7f9a000600] deprecated pixel format used, make sure you did set range correctly

    Also two frame images have same dimmensions (980x100) and their format seems to be same :

    $ file -b f1.jpg
    JPEG image data, JFIF standard 1.01, comment: "CS=ITU601??"
    $ file -b f2.jpg
    JPEG image data, JFIF standard 1.01

    So why this is happening ? I am struggling with this issue for quite a long time - for some reason some JPEGs somehow are in different "format ?" than others and make mess in videos...


    You can download first two images included in this question and test commands on your own.


    $ identify -verbose f1.jpg
    Image: f1.jpg
     Format: JPEG (Joint Photographic Experts Group JFIF format)
     Mime type: image/jpeg
     Class: DirectClass
     Geometry: 980x100+0+0
     Resolution: 552x551
     Print size: 1.77536x0.181488
     Units: PixelsPerInch
     Type: Palette
     Endianess: Undefined
     Colorspace: sRGB
     Depth: 8-bit
     Channel depth:
       red: 8-bit
       green: 8-bit
       blue: 8-bit
     Channel statistics:
       Red:
         min: 189 (0.741176)
         max: 233 (0.913725)
         mean: 208.261 (0.81671)
         standard deviation: 14.1741 (0.0555848)
         kurtosis: -1.40078
         skewness: 0.332664
       Green:
         min: 189 (0.741176)
         max: 233 (0.913725)
         mean: 208.261 (0.81671)
         standard deviation: 14.1741 (0.0555848)
         kurtosis: -1.40078
         skewness: 0.332664
       Blue:
         min: 189 (0.741176)
         max: 233 (0.913725)
         mean: 208.26 (0.816706)
         standard deviation: 14.1756 (0.0555905)
         kurtosis: -1.40068
         skewness: 0.332424
     Image statistics:
       Overall:
         min: 189 (0.741176)
         max: 233 (0.913725)
         mean: 208.261 (0.816709)
         standard deviation: 14.1746 (0.0555867)
         kurtosis: -1.40075
         skewness: 0.332584
     Colors: 47
     Histogram:
          368: (189,189,189) #BDBDBD grey74
         1984: (190,190,190) #BEBEBE grey
           28: (191,191,189) #BFBFBD srgb(191,191,189)
         3780: (191,191,191) #BFBFBF grey75
           28: (192,192,190) #C0C0BE srgb(192,192,190)
         6628: (192,192,192) #C0C0C0 silver
         5664: (193,193,193) #C1C1C1 srgb(193,193,193)
         4608: (194,194,194) #C2C2C2 grey76
         4480: (195,195,195) #C3C3C3 srgb(195,195,195)
         3328: (196,196,196) #C4C4C4 grey77
         2592: (197,197,197) #C5C5C5 srgb(197,197,197)
         3072: (198,198,198) #C6C6C6 srgb(198,198,198)
         2272: (199,199,199) #C7C7C7 grey78
         2112: (200,200,200) #C8C8C8 srgb(200,200,200)
         2112: (201,201,201) #C9C9C9 grey79
         1920: (202,202,202) #CACACA srgb(202,202,202)
         1728: (203,203,203) #CBCBCB srgb(203,203,203)
         1760: (204,204,204) #CCCCCC grey80
         1696: (205,205,205) #CDCDCD srgb(205,205,205)
         1248: (206,206,206) #CECECE srgb(206,206,206)
         1536: (207,207,207) #CFCFCF grey81
         1504: (208,208,208) #D0D0D0 srgb(208,208,208)
         1344: (209,209,209) #D1D1D1 grey82
         1536: (210,210,210) #D2D2D2 srgb(210,210,210)
         1472: (211,211,211) #D3D3D3 LightGray
         1088: (212,212,212) #D4D4D4 grey83
         1472: (213,213,213) #D5D5D5 srgb(213,213,213)
         1536: (214,214,214) #D6D6D6 grey84
         1344: (215,215,215) #D7D7D7 srgb(215,215,215)
         1184: (216,216,216) #D8D8D8 srgb(216,216,216)
         1408: (217,217,217) #D9D9D9 grey85
         1472: (218,218,218) #DADADA srgb(218,218,218)
         1216: (219,219,219) #DBDBDB grey86
         1280: (220,220,220) #DCDCDC gainsboro
         1536: (221,221,221) #DDDDDD srgb(221,221,221)
         1472: (222,222,222) #DEDEDE grey87
         1600: (223,223,223) #DFDFDF srgb(223,223,223)
         1696: (224,224,224) #E0E0E0 grey88
         1792: (225,225,225) #E1E1E1 srgb(225,225,225)
         1728: (226,226,226) #E2E2E2 srgb(226,226,226)
         1952: (227,227,227) #E3E3E3 grey89
         2272: (228,228,228) #E4E4E4 srgb(228,228,228)
         2752: (229,229,229) #E5E5E5 grey90
         4512: (230,230,230) #E6E6E6 srgb(230,230,230)
         4672: (231,231,231) #E7E7E7 srgb(231,231,231)
          640: (232,232,232) #E8E8E8 grey91
          576: (233,233,233) #E9E9E9 srgb(233,233,233)
     Rendering intent: Perceptual
     Gamma: 0.454545
     Chromaticity:
       red primary: (0.64,0.33)
       green primary: (0.3,0.6)
       blue primary: (0.15,0.06)
       white point: (0.3127,0.329)
     Background color: white
     Border color: srgb(223,223,223)
     Matte color: grey74
     Transparent color: black
     Interlace: None
     Intensity: Undefined
     Compose: Over
     Page geometry: 980x100+0+0
     Dispose: Undefined
     Iterations: 0
     Compression: JPEG
     Orientation: Undefined
     Properties:
       comment: CS=ITU601
       date:create: 2015-09-28T21:47:26+02:00
       date:modify: 2015-09-28T21:47:26+02:00
       jpeg:colorspace: 2
       jpeg:quality: 92
       jpeg:sampling-factor: 2x2,1x1,1x1
       signature: ca599d8ad07c79b36837cb9f4811d83e236b8d4a4cdfada8d60c4aa330f28f38
     Artifacts:
       filename: f1.jpg
       verbose: true
     Tainted: False
     Filesize: 1.36KB
     Number pixels: 98K
     Pixels per second: 9.8MB
     User time: 0.000u
     Elapsed time: 0:01.009
     Version: ImageMagick 6.8.7-0 2013-10-28 Q16 http://www.imagemagick.org

    $ identify -verbose f2.jpg
    Image: f2.jpg
     Format: JPEG (Joint Photographic Experts Group JFIF format)
     Mime type: image/jpeg
     Class: DirectClass
     Geometry: 980x100+0+0
     Resolution: 72x72
     Print size: 13.6111x1.38889
     Units: PixelsPerInch
     Type: Palette
     Endianess: Undefined
     Colorspace: sRGB
     Depth: 8-bit
     Channel depth:
       red: 8-bit
       green: 8-bit
       blue: 8-bit
     Channel statistics:
       Red:
         min: 186 (0.729412)
         max: 254 (0.996078)
         mean: 242.844 (0.952329)
         standard deviation: 11.0845 (0.0434688)
         kurtosis: 4.24417
         skewness: -2.17102
       Green:
         min: 186 (0.729412)
         max: 254 (0.996078)
         mean: 242.844 (0.952329)
         standard deviation: 11.0845 (0.0434688)
         kurtosis: 4.24417
         skewness: -2.17102
       Blue:
         min: 186 (0.729412)
         max: 254 (0.996078)
         mean: 242.842 (0.952323)
         standard deviation: 11.0886 (0.0434848)
         kurtosis: 4.24235
         skewness: -2.17103
     Image statistics:
       Overall:
         min: 186 (0.729412)
         max: 254 (0.996078)
         mean: 242.843 (0.952327)
         standard deviation: 11.0859 (0.0434741)
         kurtosis: 4.24356
         skewness: -2.17102
     Colors: 91
     Histogram:
            2: (186,186,186) #BABABA grey73
            2: (187,187,187) #BBBBBB srgb(187,187,187)
            1: (189,189,189) #BDBDBD grey74
            5: (190,190,190) #BEBEBE grey
            2: (191,191,191) #BFBFBF grey75
           20: (192,192,192) #C0C0C0 silver
           28: (193,193,193) #C1C1C1 srgb(193,193,193)
           37: (194,194,194) #C2C2C2 grey76
           46: (195,195,195) #C3C3C3 srgb(195,195,195)
           59: (196,196,196) #C4C4C4 grey77
          108: (197,197,197) #C5C5C5 srgb(197,197,197)
          134: (198,198,198) #C6C6C6 srgb(198,198,198)
          145: (199,199,199) #C7C7C7 grey78
          188: (200,200,200) #C8C8C8 srgb(200,200,200)
          230: (201,201,201) #C9C9C9 grey79
          241: (202,202,202) #CACACA srgb(202,202,202)
          236: (203,203,203) #CBCBCB srgb(203,203,203)
          252: (204,204,204) #CCCCCC grey80
          240: (205,205,205) #CDCDCD srgb(205,205,205)
          243: (206,206,206) #CECECE srgb(206,206,206)
            1: (207,207,205) #CFCFCD srgb(207,207,205)
          250: (207,207,207) #CFCFCF grey81
            1: (208,208,206) #D0D0CE srgb(208,208,206)
          267: (208,208,208) #D0D0D0 srgb(208,208,208)
            2: (209,209,207) #D1D1CF srgb(209,209,207)
          226: (209,209,209) #D1D1D1 grey82
            3: (210,210,208) #D2D2D0 srgb(210,210,208)
          193: (210,210,210) #D2D2D2 srgb(210,210,210)
            5: (211,211,209) #D3D3D1 srgb(211,211,209)
          215: (211,211,211) #D3D3D3 LightGray
            7: (212,212,210) #D4D4D2 srgb(212,212,210)
          227: (212,212,212) #D4D4D4 grey83
           11: (213,213,211) #D5D5D3 srgb(213,213,211)
          250: (213,213,213) #D5D5D5 srgb(213,213,213)
            4: (214,214,212) #D6D6D4 srgb(214,214,212)
          291: (214,214,214) #D6D6D6 grey84
           16: (215,215,213) #D7D7D5 srgb(215,215,213)
          307: (215,215,215) #D7D7D7 srgb(215,215,215)
            1: (216,216,214) #D8D8D6 srgb(216,216,214)
          371: (216,216,216) #D8D8D8 srgb(216,216,216)
            4: (217,217,215) #D9D9D7 srgb(217,217,215)
          355: (217,217,217) #D9D9D9 grey85
            3: (218,218,216) #DADAD8 srgb(218,218,216)
          398: (218,218,218) #DADADA srgb(218,218,218)
            3: (219,219,217) #DBDBD9 srgb(219,219,217)
          404: (219,219,219) #DBDBDB grey86
            5: (220,220,218) #DCDCDA srgb(220,220,218)
          435: (220,220,220) #DCDCDC gainsboro
            1: (221,221,219) #DDDDDB srgb(221,221,219)
          489: (221,221,221) #DDDDDD srgb(221,221,221)
            2: (222,222,220) #DEDEDC srgb(222,222,220)
          569: (222,222,222) #DEDEDE grey87
            1: (223,223,221) #DFDFDD srgb(223,223,221)
          552: (223,223,223) #DFDFDF srgb(223,223,223)
            2: (224,224,222) #E0E0DE srgb(224,224,222)
          595: (224,224,224) #E0E0E0 grey88
            2: (225,225,223) #E1E1DF srgb(225,225,223)
          645: (225,225,225) #E1E1E1 srgb(225,225,225)
          736: (226,226,226) #E2E2E2 srgb(226,226,226)
            3: (227,227,225) #E3E3E1 srgb(227,227,225)
          646: (227,227,227) #E3E3E3 grey89
            1: (228,228,226) #E4E4E2 srgb(228,228,226)
          707: (228,228,228) #E4E4E4 srgb(228,228,228)
            1: (229,229,227) #E5E5E3 srgb(229,229,227)
          667: (229,229,229) #E5E5E5 grey90
            1: (230,230,228) #E6E6E4 srgb(230,230,228)
          759: (230,230,230) #E6E6E6 srgb(230,230,230)
          767: (231,231,231) #E7E7E7 srgb(231,231,231)
          788: (232,232,232) #E8E8E8 grey91
          862: (233,233,233) #E9E9E9 srgb(233,233,233)
          880: (234,234,234) #EAEAEA srgb(234,234,234)
          889: (235,235,235) #EBEBEB grey92
          863: (236,236,236) #ECECEC srgb(236,236,236)
          868: (237,237,237) #EDEDED grey93
         1032: (238,238,238) #EEEEEE srgb(238,238,238)
          878: (239,239,239) #EFEFEF srgb(239,239,239)
         1083: (240,240,240) #F0F0F0 grey94
         1035: (241,241,241) #F1F1F1 srgb(241,241,241)
         1247: (242,242,242) #F2F2F2 grey95
         1610: (243,243,243) #F3F3F3 srgb(243,243,243)
         2084: (244,244,244) #F4F4F4 srgb(244,244,244)
         3473: (245,245,245) #F5F5F5 grey96
         6350: (246,246,246) #F6F6F6 srgb(246,246,246)
         9152: (247,247,247) #F7F7F7 grey97
        14755: (248,248,248) #F8F8F8 srgb(248,248,248)
        21183: (249,249,249) #F9F9F9 srgb(249,249,249)
        12507: (250,250,250) #FAFAFA grey98
         2516: (251,251,251) #FBFBFB srgb(251,251,251)
          305: (252,252,252) #FCFCFC grey99
           16: (253,253,253) #FDFDFD srgb(253,253,253)
            4: (254,254,254) #FEFEFE srgb(254,254,254)
     Rendering intent: Perceptual
     Gamma: 0.454545
     Chromaticity:
       red primary: (0.64,0.33)
       green primary: (0.3,0.6)
       blue primary: (0.15,0.06)
       white point: (0.3127,0.329)
     Background color: white
     Border color: srgb(223,223,223)
     Matte color: grey74
     Transparent color: black
     Interlace: None
     Intensity: Undefined
     Compose: Over
     Page geometry: 980x100+0+0
     Dispose: Undefined
     Iterations: 0
     Compression: JPEG
     Orientation: Undefined
     Properties:
       date:create: 2015-09-28T21:48:30+02:00
       date:modify: 2015-09-28T21:48:30+02:00
       jpeg:colorspace: 2
       jpeg:quality: 92
       jpeg:sampling-factor: 2x2,1x1,1x1
       signature: f718ab157fae4ff0395eaf07a0165897fd9de558eaed00586530690d39e5ed23
     Artifacts:
       filename: f2.jpg
       verbose: true
     Tainted: False
     Filesize: 4.32KB
     Number pixels: 98K
     Pixels per second: 0B
     User time: 0.000u
     Elapsed time: 0:01.000
     Version: ImageMagick 6.8.7-0 2013-10-28 Q16 http://www.imagemagick.org
  • equivalent option in ffmpeg for ffplay's -infbuff

    25 septembre 2015, par Paul

    I have a multicast UDP stream that I can watch (with almost no errors) if I use ffplay’s infbuf option.

    But when I try to encode it via ffmpeg, ffmpeg reports a lot of errors and the resultant video has lots of errors.

    I have tried setting the fifo_size to a super large value like 655360 and the buf_size as per https://www.ffmpeg.org/ffmpeg-protocols.html#udp. But none of gets rid of the decode errors in ffmpeg.

    Is it possible to provide settings to ffmpeg that do something similar to what ffplay’s -intbuf does ? I want my video encode to be as error free as video playback via ffplay.