Recherche avancée

Médias (3)

Mot : - Tags -/spip

Autres articles (111)

  • Script d’installation automatique de MediaSPIP

    25 avril 2011, par

    Afin de palier aux difficultés d’installation dues principalement aux dépendances logicielles coté serveur, un script d’installation "tout en un" en bash a été créé afin de faciliter cette étape sur un serveur doté d’une distribution Linux compatible.
    Vous devez bénéficier d’un accès SSH à votre serveur et d’un compte "root" afin de l’utiliser, ce qui permettra d’installer les dépendances. Contactez votre hébergeur si vous ne disposez pas de cela.
    La documentation de l’utilisation du script d’installation (...)

  • Automated installation script of MediaSPIP

    25 avril 2011, par

    To overcome the difficulties mainly due to the installation of server side software dependencies, an "all-in-one" installation script written in bash was created to facilitate this step on a server with a compatible Linux distribution.
    You must have access to your server via SSH and a root account to use it, which will install the dependencies. Contact your provider if you do not have that.
    The documentation of the use of this installation script is available here.
    The code of this (...)

  • Que fait exactement ce script ?

    18 janvier 2011, par

    Ce script est écrit en bash. Il est donc facilement utilisable sur n’importe quel serveur.
    Il n’est compatible qu’avec une liste de distributions précises (voir Liste des distributions compatibles).
    Installation de dépendances de MediaSPIP
    Son rôle principal est d’installer l’ensemble des dépendances logicielles nécessaires coté serveur à savoir :
    Les outils de base pour pouvoir installer le reste des dépendances Les outils de développements : build-essential (via APT depuis les dépôts officiels) ; (...)

Sur d’autres sites (9908)

  • Stuttering rendering using ffmpeg and sdl2

    22 décembre 2020, par Wiesen_Walle

    With the following Code I get a stuttering rendering of the movie file. Interesstingly, when dumping information with ffmpeg it says it has 25 fps and a duration of 00:01:32.90 ; however when counting the frames and time it runs by myself it gives a time of about 252 seconds, I guess the code receiving the frames and sending the package (int cap(vid v)) draws the same frame multiple of times. But I cannot see what's wrong ?

    


    //PKG_CONFIG_PATH=/usr/local/lib/pkgconfig/:/usr/lib64/pkgconfig/   --> add path to PKF_Config search path&#xA;//export PKG_CONFIG_PATH --> export PKG_Config search path to become visible for gcc&#xA;//gcc ffmpeg_capture_fl.c -Wall -pedantic -fPIC `pkg-config --cflags --libs libavdevice libavformat libavcodec libavutil libavdevice libavfilter libswscale libswresample sdl2`&#xA;&#xA;&#xA;#include <libavdevice></libavdevice>avdevice.h>&#xA;#include <libavutil></libavutil>opt.h>&#xA;#include <libavformat></libavformat>avformat.h>&#xA;#include <libavcodec></libavcodec>avcodec.h>&#xA;#include <libswscale></libswscale>swscale.h>&#xA;#include <libavutil></libavutil>imgutils.h>&#xA;#include &#xA;#include &#xA;#include <libavutil></libavutil>rational.h>&#xA;#include <sys></sys>time.h>&#xA;#include &#xA;&#xA;&#xA;typedef struct vid{&#xA;AVFormatContext *inc;&#xA;AVInputFormat *iformat;&#xA;AVCodecContext  *pCodecCtx;&#xA;AVCodec         *pCodec;&#xA;AVFrame         *pFrame;&#xA;int videoStream;} vid;&#xA;&#xA;typedef struct sws{&#xA;struct SwsContext *ctx;&#xA;uint8_t **buffer;&#xA;int *linesize;&#xA;} sws;&#xA;&#xA;&#xA;vid cap_init_fl(char *fl);&#xA;int cap(vid v);&#xA;void cap_close(vid v);&#xA;&#xA;sws init_swsctx(int width, int height, enum AVPixelFormat pix_fmt, int new_width, int new_height, enum AVPixelFormat new_pxf);&#xA;void conv_pxlformat(sws scale, uint8_t **src_data, int *src_linesize, int height);&#xA;void free_sws(sws inp);&#xA;&#xA;#include <sdl2></sdl2>SDL.h>&#xA;&#xA;typedef struct sdl_window{&#xA;    SDL_Window *window;&#xA;    SDL_Renderer *renderer;&#xA;    SDL_Texture *texture;&#xA;    SDL_Event *event;&#xA;    int width;&#xA;    int height;&#xA;    int pitch;&#xA;    uint32_t sdl_pxl_frmt;&#xA;    }sdl_window;&#xA;&#xA;sdl_window init_windowBGR24_ffmpg(int width, int height);&#xA;int render_on_texture_update(sdl_window wow, uint8_t *data);&#xA;void close_window(sdl_window wow);&#xA;&#xA;&#xA;vid cap_init_fl(char *fl){&#xA;    vid v = {NULL, NULL, NULL, NULL, NULL, -1};&#xA;    int i;&#xA;    &#xA;    av_register_all();&#xA;    avdevice_register_all();&#xA;&#xA;    if( 0 > avformat_open_input( &amp;(v.inc), fl , v.iformat, NULL)) {&#xA;        printf("Input device could not been opened\n");&#xA;        cap_close(v);&#xA;        exit(1);&#xA;        }&#xA;&#xA;    if(avformat_find_stream_info(v.inc, NULL)&lt;0){&#xA;        printf("Stream information could not been found.\n");&#xA;        cap_close(v);&#xA;        exit(2);&#xA;    }&#xA;&#xA;    // Dump information about file onto standard error&#xA;    av_dump_format(v.inc, 0, fl, 0);&#xA;&#xA;    // Find the first video stream&#xA;    v.videoStream=-1;&#xA;    for(i=0; inb_streams; i&#x2B;&#x2B;){&#xA;      if(v.inc->streams[i]->codecpar->codec_type==AVMEDIA_TYPE_VIDEO) {&#xA;        v.videoStream=i;&#xA;        break;&#xA;      }}&#xA;&#xA;    if(v.videoStream==-1){&#xA;        printf("Could not find video stream.\n");&#xA;        cap_close(v);&#xA;        exit(3);&#xA;        }&#xA;&#xA;    // Find the decoder for the video stream&#xA;    v.pCodec=avcodec_find_decoder(v.inc->streams[v.videoStream]->codecpar->codec_id);&#xA;        if(v.pCodec==NULL) {&#xA;          printf("Unsupported codec!\n");&#xA;        cap_close(v);&#xA;        exit(4);&#xA;           // Codec not found&#xA;        }&#xA;&#xA;    &#xA;&#xA;    // Get a pointer to the codec context for the video stream&#xA;    &#xA;    if((v.pCodecCtx=avcodec_alloc_context3(NULL)) == NULL){&#xA;        printf("Could not allocate codec context\n");&#xA;        cap_close(v);&#xA;        exit(10);}&#xA;&#xA;    avcodec_parameters_to_context (v.pCodecCtx, v.inc->streams[v.videoStream]->codecpar);       &#xA;    &#xA;    // Open codec&#xA;    if(avcodec_open2(v.pCodecCtx, v.pCodec, NULL)&lt;0){&#xA;        printf("Could not open codec");&#xA;        cap_close(v);&#xA;        exit(5);&#xA;        }&#xA;        &#xA;    &#xA;    // Allocate video frame&#xA;    v.pFrame=av_frame_alloc();&#xA;    if(v.pFrame==NULL){&#xA;        printf("Could not allocate AVframe");&#xA;        cap_close(v);&#xA;        exit(6);}&#xA;&#xA;    &#xA;    return v;&#xA;}&#xA;&#xA;&#xA;&#xA;int cap(vid v){&#xA;    int errorCodeRF, errorCodeSP, errorCodeRecFR;&#xA;    AVPacket pkt;&#xA;        &#xA;    if((errorCodeRF = av_read_frame(v.inc, &amp;pkt))  >= 0){&#xA;        &#xA;        if (pkt.stream_index == v.videoStream) {&#xA;            &#xA;            errorCodeSP = avcodec_send_packet(v.pCodecCtx, &amp;pkt);&#xA;            &#xA;            if (errorCodeSP >= 0 || errorCodeSP == AVERROR(EAGAIN)){&#xA;                &#xA;                errorCodeRecFR = avcodec_receive_frame(v.pCodecCtx, v.pFrame);&#xA;                &#xA;                if (errorCodeRecFR &lt; 0){ &#xA;                    av_packet_unref(&amp;pkt);&#xA;                    return errorCodeRecFR;&#xA;                    }&#xA;                else{&#xA;                    av_packet_unref(&amp;pkt);&#xA;                    return 0;&#xA;                    }&#xA;                &#xA;                }&#xA;            else{&#xA;                 av_packet_unref(&amp;pkt);&#xA;                 return errorCodeSP;}&#xA;                &#xA;        }}&#xA;                &#xA;    else{&#xA;        return errorCodeRF;}&#xA;        return 1;&#xA;        }&#xA;    &#xA;    &#xA;&#xA;void cap_close(vid v){&#xA;    if(v.pFrame != NULL) av_free(v.pFrame);&#xA;    avcodec_close(v.pCodecCtx);&#xA;    avformat_close_input(&amp;(v.inc));&#xA;    if(v.inc != NULL) avformat_free_context(v.inc);&#xA;    &#xA;    v.inc = NULL;&#xA;    v.iformat = NULL;&#xA;    v.pCodecCtx = NULL;&#xA;    v.pCodec = NULL;&#xA;    v.pFrame = NULL;&#xA;    v.videoStream=-1;}&#xA;&#xA;&#xA;&#xA;sws init_swsctx(int width, int height, enum AVPixelFormat pix_fmt, int new_width, int new_height, enum AVPixelFormat new_pxf){&#xA;&#xA;int nwidth, nheight;&#xA;sws scale;&#xA;&#xA;scale.buffer = (uint8_t **) malloc(4 * sizeof(uint8_t *));&#xA;scale.linesize = (int *) malloc(4 * sizeof(int));&#xA;&#xA;&#xA;nwidth = (new_width &lt;= 0) ?  width : new_width;&#xA;nheight = (new_height &lt;= 0) ?  height : new_height;&#xA;&#xA;av_image_alloc(scale.buffer, scale.linesize, nwidth, nheight, new_pxf, 1);&#xA;scale.ctx = sws_getContext(width, height, pix_fmt, nwidth, nheight, new_pxf, SWS_BILINEAR, NULL, NULL, NULL);&#xA;&#xA;if(scale.ctx==NULL){&#xA;    printf("Could not allocate SWS-Context\n");&#xA;    av_freep(&amp;(scale.buffer)[0]);&#xA;    free(scale.buffer);&#xA;    free(scale.linesize);&#xA;    exit(12);&#xA;    }&#xA;            &#xA;return scale;}&#xA;&#xA;&#xA;void conv_pxlformat(sws scale, uint8_t **src_data, int *src_linesize, int height){  &#xA;    sws_scale(scale.ctx, (const uint8_t **) src_data, src_linesize, 0, height, scale.buffer, scale.linesize);&#xA;    }&#xA;&#xA;&#xA;void free_sws(sws inp){&#xA;    av_freep(&amp;(inp.buffer)[0]);&#xA;    free(inp.buffer);&#xA;    free(inp.linesize); &#xA;}&#xA;&#xA;&#xA;sdl_window init_windowBGR24_ffmpg(int width, int height){&#xA;&#xA; sdl_window wow;&#xA;    &#xA; if (SDL_Init(SDL_INIT_VIDEO) &lt; 0) {&#xA;    printf("Couldn&#x27;t initialize SDL in function: create_sdl_window(...)\n");&#xA;    exit(7);}&#xA;    &#xA; wow.window = SDL_CreateWindow("SDL_CreateTexture",&#xA;                        SDL_WINDOWPOS_UNDEFINED,&#xA;                        SDL_WINDOWPOS_UNDEFINED,&#xA;                        width, height,&#xA;                        SDL_WINDOW_RESIZABLE);&#xA;&#xA; wow.renderer = SDL_CreateRenderer(wow.window, -1, SDL_RENDERER_ACCELERATED);&#xA; wow.texture = SDL_CreateTexture(wow.renderer, SDL_PIXELFORMAT_BGR24, SDL_TEXTUREACCESS_STREAMING, width, height);&#xA; wow.width = width;&#xA; wow.height = height;&#xA; wow.pitch = width * 3;  //only true for 3 byte / 24bit packed formats like bgr24&#xA; wow.sdl_pxl_frmt = SDL_PIXELFORMAT_BGR24;&#xA; SDL_SetHint(SDL_HINT_RENDER_SCALE_QUALITY, "linear"); &#xA; SDL_SetHint(SDL_HINT_RENDER_VSYNC, "enable"); &#xA; SDL_RenderSetLogicalSize(wow.renderer, wow.width, wow.height);&#xA; return wow;&#xA;}&#xA;&#xA;&#xA;int render_on_texture_update(sdl_window wow, uint8_t *data){&#xA;    &#xA;    if (SDL_UpdateTexture(wow.texture, NULL, data, wow.pitch)&lt; 0){&#xA;        printf("SDL_render_on_texture_update_failed: %s\n", SDL_GetError());&#xA;        return -1;&#xA;        }&#xA;    SDL_RenderClear(wow.renderer);&#xA;    SDL_RenderCopy(wow.renderer, wow.texture, NULL, NULL);&#xA;    SDL_RenderPresent(wow.renderer);&#xA;&#xA;    return 0; &#xA;}&#xA;&#xA;&#xA;void close_window(sdl_window wow){&#xA;    SDL_DestroyRenderer(wow.renderer);&#xA;    SDL_Quit();&#xA;}&#xA;&#xA;&#xA;&#xA;&#xA;int main(){&#xA;    int n, vid_error;&#xA;    long int time_per_frame_usec, duration_usec;&#xA;    vid v;&#xA;    sdl_window wow;&#xA;    struct timeval tval_start, tval_start1, tval_end, tval_duration;&#xA;    sws scale;&#xA;    SDL_Event event;&#xA;   &#xA;    vid_error = AVERROR(EAGAIN);&#xA;    v = cap_init_fl("mw_maze_test.mp4"); &#xA;    &#xA;    while(vid_error == AVERROR(EAGAIN)){&#xA;        vid_error =cap(v);}&#xA;        &#xA;    if(vid_error &lt; 0){&#xA;        printf("Could not read from Capture\n");&#xA;        cap_close(v);&#xA;        return 0;&#xA;        }&#xA;&#xA;    wow = init_windowBGR24_ffmpg((v.pCodecCtx)->width, (v.pCodecCtx)->height);&#xA;    scale = init_swsctx((v.pCodecCtx)->width, (v.pCodecCtx)->height, (v.pCodecCtx)->pix_fmt, 0, 0, AV_PIX_FMT_BGR24);&#xA;        &#xA;    time_per_frame_usec =  ((long int)((v.inc)->streams[v.videoStream]->avg_frame_rate.den) *  1000000 / (long int) ((v.inc)->streams[v.videoStream]->avg_frame_rate.num));&#xA;    &#xA;    printf("Time per frame: %ld\n", time_per_frame_usec);&#xA;    n = 0;&#xA;    &#xA;    gettimeofday(&amp;tval_start, NULL);&#xA;    gettimeofday(&amp;tval_start1, NULL);&#xA;    &#xA;    while ((vid_error =cap(v)) >= 0) {&#xA;                &#xA;                if (SDL_PollEvent(&amp;event) != 0) {&#xA;                        if (event.type == SDL_QUIT)&#xA;                        break;}&#xA;                    &#xA;                conv_pxlformat(scale, (v.pFrame)->data, (v.pFrame)->linesize, (v.pCodecCtx)->height);&#xA;                gettimeofday(&amp;tval_end, NULL);&#xA;                timersub(&amp;tval_end, &amp;tval_start, &amp;tval_duration);&#xA;                duration_usec = (long int)tval_duration.tv_sec * 1000000 &#x2B; (long int)tval_duration.tv_usec;&#xA;                &#xA;                while(duration_usec &lt; time_per_frame_usec) {&#xA;                gettimeofday(&amp;tval_end, NULL);&#xA;                timersub(&amp;tval_end, &amp;tval_start, &amp;tval_duration);&#xA;                duration_usec = (long int)tval_duration.tv_sec * 1000000 &#x2B; (long int)tval_duration.tv_usec;&#xA;                    }&#xA;                &#xA;                gettimeofday(&amp;tval_start, NULL);&#xA;                render_on_texture_update(wow, *(scale.buffer)); &#xA;                n&#x2B;&#x2B;;&#xA;        }&#xA;  &#xA;    gettimeofday(&amp;tval_end, NULL);&#xA;    timersub(&amp;tval_end, &amp;tval_start1, &amp;tval_duration);&#xA;    duration_usec = (long int)tval_duration.tv_sec * 1000000 &#x2B; (long int)tval_duration.tv_usec;&#xA;    &#xA;    printf("Total time and frames; %ld %i\n", duration_usec, n);&#xA;    &#xA;    if(vid_error == AVERROR(EAGAIN)){&#xA;                    printf("AVERROR(EAGAIN) occured\n)");&#xA;                    }   &#xA;                &#xA;    &#xA;    sws_freeContext(scale.ctx);&#xA;    free_sws(scale);&#xA;    close_window(wow);&#xA;    cap_close(v); &#xA;    return 0;   &#xA;}&#xA;&#xA;

    &#xA;

    the output is:&#xA;&#xA;Input #0, mov,mp4,m4a,3gp,3g2,mj2, from &#x27;mw_maze_test.mp4&#x27;:&#xA;  Metadata:&#xA;    major_brand     : mp42&#xA;    minor_version   : 0&#xA;    compatible_brands: isommp42&#xA;    creation_time   : 2014-02-14T21:09:52.000000Z&#xA;  Duration: 00:01:32.90, start: 0.000000, bitrate: 347 kb/s&#xA;    Stream #0:0(und): Video: h264 (Constrained Baseline) (avc1 / 0x31637661), yuv420p, 384x288 [SAR 1:1 DAR 4:3], 249 kb/s, 25 fps, 25 tbr, 25 tbn, 50 tbc (default)&#xA;    Metadata:&#xA;      handler_name    : VideoHandler&#xA;    Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 96 kb/s (default)&#xA;    Metadata:&#xA;      creation_time   : 2014-02-14T21:09:53.000000Z&#xA;      handler_name    : IsoMedia File Produced by Google, 5-11-2011&#xA;Time per frame: 40000&#xA;Total time and frames; 252881576 6322&#xA;&#xA;&#xA;

    &#xA;

  • ALSA buffer xrun induced by low quality source in ffmpeg capture

    8 janvier 2021, par Peter Becich

    I am attempting to transfer some old Video 8 tapes to my computer, though an EasyCap USB stick and the motherboard's sound line-in, on Ubuntu. I believe the arguments are correctly laid out below to capture from two independent streams, and encode them both into the output MP4 file.

    &#xA;&#xA;

    Edit :

    &#xA;&#xA;

    I can simplify the question a bit, now.

    &#xA;&#xA;

    ALSA buffer overrun (or underrun ?) is induced by the unreliable/noisy audio source. For instance, if ffmpeg captures the beginning of tape playback, this causes "buffer xrun" far beyond when the tape gets up to speed and playback should be normal.

    &#xA;&#xA;

    It is interesting that the bitrate shown in the ffmpeg log shoots up higher than normal when it's producing a garbage output ! (Is this bitrate a sum of of audio and video bitrates ?)

    &#xA;&#xA;

    I've tried a couple of audio encoding codecs, and had the same problem.

    &#xA;&#xA;

    Using libfdk_aac :

    &#xA;&#xA;

      Metadata:&#xA;    encoder         : Lavf56.15.102&#xA;    Stream #0:0: Video: h264 (libx264) ([33][0][0][0] / 0x0021), yuv422p, 640x480, q=-1--1, 29.97 fps, 11988 tbn, 29.97 tbc&#xA;    Metadata:&#xA;      encoder         : Lavc56.13.100 libx264&#xA;    Stream #0:1: Audio: aac (libfdk_aac) ([64][0][0][0] / 0x0040), 48000 Hz, mono, s16, 128 kb/s&#xA;    Metadata:&#xA;      encoder         : Lavc56.13.100 libfdk_aac&#xA;Stream mapping:&#xA;  Stream #0:0 -> #0:0 (rawvideo (native) -> h264 (libx264))&#xA;  Stream #1:0 -> #0:1 (pcm_s16le (native) -> aac (libfdk_aac))&#xA;[alsa @ 0x22038a0] ALSA buffer xrun.  0kB time=00:00:00.00 bitrate=N/A    &#xA;[alsa @ 0x22038a0] ALSA buffer xrun.1934kB time=00:00:02.76 bitrate=5723.5kbits/s    &#xA;[alsa @ 0x22038a0] ALSA buffer xrun.4795kB time=00:00:05.49 bitrate=7150.1kbits/s    &#xA;[alsa @ 0x22038a0] ALSA buffer xrun.7668kB time=00:00:08.21 bitrate=7646.1kbits/s    &#xA;[alsa @ 0x22038a0] ALSA buffer xrun.1475kB time=00:00:10.94 bitrate=8588.9kbits/s    &#xA;[alsa @ 0x22038a0] ALSA buffer xrun.3822kB time=00:00:13.66 bitrate=8289.0kbits/s    &#xA;[alsa @ 0x22038a0] ALSA buffer xrun.5388kB time=00:00:16.38 bitrate=7695.0kbits/s    &#xA;[alsa @ 0x22038a0] ALSA buffer xrun.6896kB time=00:00:19.10 bitrate=7244.0kbits/s    &#xA;[alsa @ 0x22038a0] ALSA buffer xrun.8980kB time=00:00:21.84 bitrate=7118.8kbits/s    &#xA;[alsa @ 0x22038a0] ALSA buffer xrun.2032kB time=00:00:24.55 bitrate=7349.3kbits/s    &#xA;[alsa @ 0x22038a0] ALSA buffer xrun.4612kB time=00:00:27.27 bitrate=7391.1kbits/s    &#xA;[alsa @ 0x22038a0] ALSA buffer xrun.6660kB time=00:00:29.98 bitrate=7284.6kbits/s    &#xA;[alsa @ 0x22038a0] ALSA buffer xrun.9123kB time=00:00:32.68 bitrate=7299.3kbits/s    &#xA;[alsa @ 0x22038a0] ALSA buffer xrun.0641kB time=00:00:35.39 bitrate=7091.7kbits/s    &#xA;[alsa @ 0x22038a0] ALSA buffer xrun.2601kB time=00:00:38.13 bitrate=7002.6kbits/s    &#xA;[alsa @ 0x22038a0] ALSA buffer xrun.5828kB time=00:00:40.87 bitrate=7181.0kbits/s    &#xA;[alsa @ 0x22038a0] ALSA buffer xrun.8481kB time=00:00:43.60 bitrate=7229.9kbits/s    &#xA;[alsa @ 0x22038a0] ALSA buffer xrun.1461kB time=00:00:46.34 bitrate=7328.0kbits/s    &#xA;[alsa @ 0x22038a0] ALSA buffer xrun.3982kB time=00:00:49.06 bitrate=7342.7kbits/s    &#xA;[alsa @ 0x22038a0] ALSA buffer xrun.6565kB time=00:00:51.77 bitrate=7367.8kbits/s    &#xA;[alsa @ 0x22038a0] ALSA buffer xrun.9718kB time=00:00:54.51 bitrate=7471.3kbits/s    &#xA;[alsa @ 0x22038a0] ALSA buffer xrun.2341kB time=00:00:57.25 bitrate=7489.2kbits/s    &#xA;^Cframe= 1760 fps= 29 q=-1.0 Lsize=   53946kB time=00:01:00.04 bitrate=7360.3kbits/s    &#xA;video:53880kB audio:53kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.022994%&#xA;[libx264 @ 0x2217ac0] frame I:8     Avg QP:24.00  size: 55686&#xA;[libx264 @ 0x2217ac0] frame P:1752  Avg QP:27.66  size: 31237&#xA;[libx264 @ 0x2217ac0] mb I  I16..4: 100.0%  0.0%  0.0%&#xA;[libx264 @ 0x2217ac0] mb P  I16..4: 15.0%  0.0%  0.0%  P16..4: 80.2%  0.0%  0.0%  0.0%  0.0%    skip: 4.8%&#xA;[libx264 @ 0x2217ac0] coded y,uvDC,uvAC intra: 45.3% 86.6% 59.4% inter: 65.7% 81.3% 11.5%&#xA;[libx264 @ 0x2217ac0] i16 v,h,dc,p: 40% 25% 26%  9%&#xA;[libx264 @ 0x2217ac0] i8c dc,h,v,p: 45% 24% 19% 12%&#xA;[libx264 @ 0x2217ac0] kb/s:7516.07&#xA;Received signal 2: terminating.&#xA;

    &#xA;&#xA;

    Using libvorbis :

    &#xA;&#xA;

      Metadata:&#xA;    encoder         : Lavf56.15.102&#xA;    Stream #0:0: Video: h264 (libx264) ([33][0][0][0] / 0x0021), yuv422p, 640x480, q=-1--1, 29.97 fps, 11988 tbn, 29.97 tbc&#xA;    Metadata:&#xA;      encoder         : Lavc56.13.100 libx264&#xA;    Stream #0:1: Audio: vorbis (libvorbis) ([221][0][0][0] / 0x00DD), 48000 Hz, mono, fltp, 128 kb/s&#xA;    Metadata:&#xA;      encoder         : Lavc56.13.100 libvorbis&#xA;Stream mapping:&#xA;  Stream #0:0 -> #0:0 (rawvideo (native) -> h264 (libx264))&#xA;  Stream #1:0 -> #0:1 (pcm_s16le (native) -> vorbis (libvorbis))&#xA;[alsa @ 0x1a948a0] ALSA buffer xrun.  0kB time=00:00:00.00 bitrate=N/A    &#xA;[alsa @ 0x1a948a0] ALSA buffer xrun. 402kB time=00:00:04.37 bitrate= 752.3kbits/s    &#xA;[alsa @ 0x1a948a0] ALSA buffer xrun.4122kB time=00:00:08.80 bitrate=3833.0kbits/s    &#xA;[alsa @ 0x1a948a0] ALSA buffer xrun.8722kB time=00:00:13.14 bitrate=5436.3kbits/s    &#xA;[alsa @ 0x1a948a0] ALSA buffer xrun.3903kB time=00:00:17.51 bitrate=6502.2kbits/s    &#xA;[alsa @ 0x1a948a0] ALSA buffer xrun.6625kB time=00:00:21.89 bitrate=6221.4kbits/s    &#xA;[alsa @ 0x1a948a0] ALSA buffer xrun.9548kB time=00:00:26.28 bitrate=6092.5kbits/s    &#xA;^Cframe=  851 fps= 26 q=-1.0 Lsize=   22018kB time=00:00:30.69 bitrate=5875.3kbits/s    &#xA;video:21996kB audio:12kB subtitle:0kB other streams:0kB global headers:4kB muxing overhead: 0.044897%&#xA;[libx264 @ 0x1aa8ac0] frame I:4     Avg QP:23.50  size: 62405&#xA;[libx264 @ 0x1aa8ac0] frame P:847   Avg QP:25.58  size: 26297&#xA;[libx264 @ 0x1aa8ac0] mb I  I16..4: 100.0%  0.0%  0.0%&#xA;[libx264 @ 0x1aa8ac0] mb P  I16..4: 13.2%  0.0%  0.0%  P16..4: 72.0%  0.0%  0.0%  0.0%  0.0%    skip:14.8%&#xA;[libx264 @ 0x1aa8ac0] coded y,uvDC,uvAC intra: 40.6% 81.0% 58.6% inter: 58.8% 72.7% 8.6%&#xA;[libx264 @ 0x1aa8ac0] i16 v,h,dc,p: 41% 28% 22%  9%&#xA;[libx264 @ 0x1aa8ac0] i8c dc,h,v,p: 54% 19% 16% 11%&#xA;[libx264 @ 0x1aa8ac0] kb/s:6345.60&#xA;Received signal 2: terminating.&#xA;

    &#xA;&#xA;


    &#xA;&#xA;

    ffmpeg's detection of the ALSA stream is seemingly goofed up by the inconsistencies of the tape. In the failure case, only short blips of the tapes audio exist in the output MP4. The audio bitrate of the output file is less than 10 kbps, averaged out across the whole file. The output video seems to be fine, even though the low frames-per-second in the failure case log below.

    &#xA;&#xA;

    The audio and video streams can be captured fine for short amounts of time before a source error occurs ; this provides the success case log. The failure case log was created by intentionally making an error in the source streams — turning on the camera makes a brief noisy signal.

    &#xA;&#xA;

    Is there a setting that needs to be forced to keep ffmpeg recording the audio stream, even when the tape is blank or noisy ?

    &#xA;&#xA;

    Could it be that the libfdk_aac audio encoder is tripped up by the low quality source ?

    &#xA;&#xA;

    The relevant line ; rawvideo stream is piped to this in script at bottom :

    &#xA;&#xA;

    ffmpeg -pixel_format uyvy422 -s:v 720x480 -framerate 29.97 -f rawvideo \&#xA;-i $PIPE  -f alsa -i hw:0,0 -vf scale=w=720:h=540 -vcodec libx264 \&#xA;-preset ultrafast -shortest -c:a libfdk_aac -b:a 128k -af pan=1:c0=c0  \&#xA;-ar 96000 $OUTFILE&#xA;

    &#xA;&#xA;

    The ar argument was one attempt to force recording.

    &#xA;&#xA;

    ffmpeg log file for (short-lived) success ; high frames-per-second captured :

    &#xA;&#xA;

    ffmpeg version 2.5.3 Copyright (c) 2000-2015 the FFmpeg developers&#xA;  built on Jan 11 2015 17:53:45 with gcc 4.8 (Ubuntu 4.8.2-19ubuntu1)&#xA;  configuration: --extra-libs=-ldl --prefix=/opt/ffmpeg --enable-avresample --disable-debug --enable-nonfree --enable-gpl --enable-version3 --enable-libpulse --enable-libopencore-amrnb --enable-libopencore-amrwb --disable-decoder=amrnb --disable-decoder=amrwb --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-libvo-aacenc --enable-libvidstab&#xA;  libavutil      54. 15.100 / 54. 15.100&#xA;  libavcodec     56. 13.100 / 56. 13.100&#xA;  libavformat    56. 15.102 / 56. 15.102&#xA;  libavdevice    56.  3.100 / 56.  3.100&#xA;  libavfilter     5.  2.103 /  5.  2.103&#xA;  libavresample   2.  1.  0 /  2.  1.  0&#xA;  libswscale      3.  1.101 /  3.  1.101&#xA;  libswresample   1.  1.100 /  1.  1.100&#xA;  libpostproc    53.  3.100 / 53.  3.100&#xA;Input #0, rawvideo, from &#x27;/tmp/somagic-pipe&#x27;:&#xA;  Duration: N/A, start: 0.000000, bitrate: 165722 kb/s&#xA;    Stream #0:0: Video: rawvideo (UYVY / 0x59565955), uyvy422, 720x480, 165722 kb/s, 29.97 tbr, 29.97 tbn, 29.97 tbc&#xA;Home directory not accessible: Permission denied&#xA;Guessed Channel Layout for  Input Stream #1.0 : stereo&#xA;Input #1, alsa, from &#x27;hw:0,0&#x27;:&#xA;  Duration: N/A, start: 1423202268.577088, bitrate: 1536 kb/s&#xA;    Stream #1:0: Audio: pcm_s16le, 48000 Hz, 2 channels, s16, 1536 kb/s&#xA;No pixel format specified, yuv422p for H.264 encoding chosen.&#xA;Use -pix_fmt yuv420p for compatibility with outdated media players.&#xA;[Parsed_pan_0 @ 0x3335d60] This syntax is deprecated. Use &#x27;|&#x27; to separate the list items.&#xA;Single channel layout &#x27;1&#x27; is interpreted as a number of channels, switch to the syntax &#x27;1c&#x27; otherwise it will be interpreted as a channel layout number in a later version&#xA;[Parsed_pan_0 @ 0x3335d60] Pure channel mapping detected: 0&#xA;[libx264 @ 0x3364bc0] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.1 Cache64&#xA;[libx264 @ 0x3364bc0] profile High 4:2:2, level 3.1, 4:2:2 8-bit&#xA;[libx264 @ 0x3364bc0] 264 - core 142 r2389 956c8d8 - H.264/MPEG-4 AVC codec - Copyleft 2003-2014 - http://www.videolan.org/x264.html - options: cabac=0 ref=1 deblock=0:0:0 analyse=0:0 me=dia subme=0 psy=1 psy_rd=1.00:0.00 mixed_ref=0 me_range=16 chroma_me=1 trellis=0 8x8dct=0 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=0 threads=3 lookahead_threads=1 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=0 weightp=0 keyint=250 keyint_min=25 scenecut=0 intra_refresh=0 rc=crf mbtree=0 crf=23.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=0&#xA;Output #0, mp4, to &#x27;/home/peterbecich/easycap/Videos/fpv_video_02_05_2015_21_57_48.mp4&#x27;:&#xA;  Metadata:&#xA;    encoder         : Lavf56.15.102&#xA;    Stream #0:0: Video: h264 (libx264) ([33][0][0][0] / 0x0021), yuv422p, 720x540, q=-1--1, 29.97 fps, 11988 tbn, 29.97 tbc&#xA;    Metadata:&#xA;      encoder         : Lavc56.13.100 libx264&#xA;    Stream #0:1: Audio: aac (libfdk_aac) ([64][0][0][0] / 0x0040), 96000 Hz, mono, s16, 128 kb/s&#xA;    Metadata:&#xA;      encoder         : Lavc56.13.100 libfdk_aac&#xA;Stream mapping:&#xA;  Stream #0:0 -> #0:0 (rawvideo (native) -> h264 (libx264))&#xA;  Stream #1:0 -> #0:1 (pcm_s16le (native) -> aac (libfdk_aac))&#xA;Press [q] to stop, [?] for help&#xA;frame=   13 fps=0.0 q=26.0 size=     187kB time=00:00:00.30 bitrate=5102.7kbits/s    &#xA;frame=   29 fps= 29 q=26.0 size=     469kB time=00:00:00.83 bitrate=4607.6kbits/s    &#xA;frame=   44 fps= 29 q=26.0 size=     755kB time=00:00:01.33 bitrate=4635.2kbits/s    &#xA;frame=   59 fps= 29 q=26.0 size=    1024kB time=00:00:01.83 bitrate=4572.1kbits/s    &#xA;frame=   74 fps= 29 q=26.0 size=    1279kB time=00:00:02.33 bitrate=4486.5kbits/s    &#xA;frame=   89 fps= 29 q=26.0 size=    1516kB time=00:00:02.83 bitrate=4378.0kbits/s    &#xA;frame=  104 fps= 29 q=26.0 size=    1752kB time=00:00:03.33 bitrate=4301.0kbits/s    &#xA;frame=  119 fps= 29 q=26.0 size=    1991kB time=00:00:03.83 bitrate=4251.1kbits/s    &#xA;frame=  135 fps= 30 q=26.0 size=    2245kB time=00:00:04.37 bitrate=4207.5kbits/s    &#xA;frame=  150 fps= 30 q=26.0 size=    2524kB time=00:00:04.87 bitrate=4245.0kbits/s    &#xA;frame=  165 fps= 30 q=26.0 size=    2808kB time=00:00:05.37 bitrate=4282.0kbits/s    &#xA;frame=  180 fps= 30 q=26.0 size=    3091kB time=00:00:05.87 bitrate=4311.5kbits/s    &#xA;[rawvideo @ 0x3350640] Invalid buffer size, packet size 65536 &lt; expected frame_size 691200&#xA;Error while decoding stream #0:0: Invalid argument&#xA;frame=  183 fps= 29 q=-1.0 Lsize=    3247kB time=00:00:06.11 bitrate=4351.5kbits/s    &#xA;video:3142kB audio:96kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.254788%&#xA;[libx264 @ 0x3364bc0] frame I:1     Avg QP:20.00  size:  2289&#xA;[libx264 @ 0x3364bc0] frame P:182   Avg QP:25.99  size: 17664&#xA;[libx264 @ 0x3364bc0] mb I  I16..4: 100.0%  0.0%  0.0%&#xA;[libx264 @ 0x3364bc0] mb P  I16..4: 78.5%  0.0%  0.0%  P16..4: 20.2%  0.0%  0.0%  0.0%  0.0%    skip: 1.4%&#xA;[libx264 @ 0x3364bc0] coded y,uvDC,uvAC intra: 84.1% 71.5% 18.9% inter: 51.9% 63.5% 0.4%&#xA;[libx264 @ 0x3364bc0] i16 v,h,dc,p: 15%  8% 69%  8%&#xA;[libx264 @ 0x3364bc0] i8c dc,h,v,p: 50% 19% 24%  7%&#xA;[libx264 @ 0x3364bc0] kb/s:4215.02&#xA;

    &#xA;&#xA;

    ffmpeg log for failure ; low FPS captured :

    &#xA;&#xA;

    ffmpeg version 2.5.3 Copyright (c) 2000-2015 the FFmpeg developers&#xA;  built on Jan 11 2015 17:53:45 with gcc 4.8 (Ubuntu 4.8.2-19ubuntu1)&#xA;  configuration: --extra-libs=-ldl --prefix=/opt/ffmpeg --enable-avresample --disable-debug --enable-nonfree --enable-gpl --enable-version3 --enable-libpulse --enable-libopencore-amrnb --enable-libopencore-amrwb --disable-decoder=amrnb --disable-decoder=amrwb --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-libvo-aacenc --enable-libvidstab&#xA;  libavutil      54. 15.100 / 54. 15.100&#xA;  libavcodec     56. 13.100 / 56. 13.100&#xA;  libavformat    56. 15.102 / 56. 15.102&#xA;  libavdevice    56.  3.100 / 56.  3.100&#xA;  libavfilter     5.  2.103 /  5.  2.103&#xA;  libavresample   2.  1.  0 /  2.  1.  0&#xA;  libswscale      3.  1.101 /  3.  1.101&#xA;  libswresample   1.  1.100 /  1.  1.100&#xA;  libpostproc    53.  3.100 / 53.  3.100&#xA;Input #0, rawvideo, from &#x27;/tmp/somagic-pipe&#x27;:&#xA;  Duration: N/A, start: 0.000000, bitrate: 165722 kb/s&#xA;    Stream #0:0: Video: rawvideo (UYVY / 0x59565955), uyvy422, 720x480, 165722 kb/s, 29.97 tbr, 29.97 tbn, 29.97 tbc&#xA;Home directory not accessible: Permission denied&#xA;Guessed Channel Layout for  Input Stream #1.0 : stereo&#xA;Input #1, alsa, from &#x27;hw:0,0&#x27;:&#xA;  Duration: N/A, start: 1423201999.226455, bitrate: 1536 kb/s&#xA;    Stream #1:0: Audio: pcm_s16le, 48000 Hz, 2 channels, s16, 1536 kb/s&#xA;No pixel format specified, yuv422p for H.264 encoding chosen.&#xA;Use -pix_fmt yuv420p for compatibility with outdated media players.&#xA;[Parsed_pan_0 @ 0x21cad60] This syntax is deprecated. Use &#x27;|&#x27; to separate the list items.&#xA;Single channel layout &#x27;1&#x27; is interpreted as a number of channels, switch to the syntax &#x27;1c&#x27; otherwise it will be interpreted as a channel layout number in a later version&#xA;[Parsed_pan_0 @ 0x21cad60] Pure channel mapping detected: 0&#xA;[libx264 @ 0x21f9bc0] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.1 Cache64&#xA;[libx264 @ 0x21f9bc0] profile High 4:2:2, level 3.1, 4:2:2 8-bit&#xA;[libx264 @ 0x21f9bc0] 264 - core 142 r2389 956c8d8 - H.264/MPEG-4 AVC codec - Copyleft 2003-2014 - http://www.videolan.org/x264.html - options: cabac=0 ref=1 deblock=0:0:0 analyse=0:0 me=dia subme=0 psy=1 psy_rd=1.00:0.00 mixed_ref=0 me_range=16 chroma_me=1 trellis=0 8x8dct=0 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=0 threads=3 lookahead_threads=1 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=0 weightp=0 keyint=250 keyint_min=25 scenecut=0 intra_refresh=0 rc=crf mbtree=0 crf=23.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=0&#xA;Output #0, mp4, to &#x27;/home/peterbecich/easycap/Videos/fpv_video_02_05_2015_21_53_18.mp4&#x27;:&#xA;  Metadata:&#xA;    encoder         : Lavf56.15.102&#xA;    Stream #0:0: Video: h264 (libx264) ([33][0][0][0] / 0x0021), yuv422p, 720x540, q=-1--1, 29.97 fps, 11988 tbn, 29.97 tbc&#xA;    Metadata:&#xA;      encoder         : Lavc56.13.100 libx264&#xA;    Stream #0:1: Audio: aac (libfdk_aac) ([64][0][0][0] / 0x0040), 96000 Hz, mono, s16, 128 kb/s&#xA;    Metadata:&#xA;      encoder         : Lavc56.13.100 libfdk_aac&#xA;Stream mapping:&#xA;  Stream #0:0 -> #0:0 (rawvideo (native) -> h264 (libx264))&#xA;  Stream #1:0 -> #0:1 (pcm_s16le (native) -> aac (libfdk_aac))&#xA;Press [q] to stop, [?] for help&#xA;frame=    1 fps=0.0 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A    &#xA;frame=    1 fps=1.0 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A    &#xA;frame=    1 fps=0.7 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A    &#xA;frame=    1 fps=0.5 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A    &#xA;frame=    1 fps=0.4 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A    &#xA;frame=    1 fps=0.3 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A    &#xA;frame=    1 fps=0.3 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A    &#xA;frame=    1 fps=0.2 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A    &#xA;frame=    1 fps=0.2 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A    &#xA;frame=    1 fps=0.2 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A    &#xA;frame=    1 fps=0.2 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A    &#xA;[alsa @ 0x21e5ac0] ALSA buffer xrun.&#xA;frame=    8 fps=1.3 q=19.0 size=      12kB time=00:00:06.03 bitrate=  15.9kbits/s    &#xA;frame=   23 fps=3.5 q=18.0 size=      12kB time=00:00:06.03 bitrate=  16.4kbits/s    &#xA;frame=   38 fps=5.4 q=18.0 size=      12kB time=00:00:06.03 bitrate=  16.7kbits/s    &#xA;frame=   53 fps=7.0 q=18.0 size=      12kB time=00:00:06.03 bitrate=  16.9kbits/s    &#xA;frame=   68 fps=8.4 q=26.0 size=     146kB time=00:00:06.03 bitrate= 198.8kbits/s    &#xA;frame=   83 fps=9.7 q=26.0 size=     375kB time=00:00:06.03 bitrate= 510.0kbits/s    &#xA;frame=   98 fps= 11 q=26.0 size=     608kB time=00:00:06.03 bitrate= 826.5kbits/s    &#xA;frame=  114 fps= 12 q=26.0 size=     875kB time=00:00:06.03 bitrate=1189.1kbits/s    &#xA;frame=  128 fps= 13 q=26.0 size=    1091kB time=00:00:06.03 bitrate=1481.6kbits/s    &#xA;frame=  144 fps= 14 q=26.0 size=    1339kB time=00:00:06.03 bitrate=1819.2kbits/s    &#xA;frame=  159 fps= 14 q=26.0 size=    1571kB time=00:00:06.03 bitrate=2134.6kbits/s    &#xA;frame=  174 fps= 15 q=26.0 size=    1796kB time=00:00:06.03 bitrate=2440.1kbits/s    &#xA;[alsa @ 0x21e5ac0] ALSA buffer xrun.&#xA;frame=  189 fps= 16 q=26.0 size=    2015kB time=00:00:12.04 bitrate=1370.4kbits/s    &#xA;frame=  204 fps= 16 q=26.0 size=    2238kB time=00:00:12.04 bitrate=1522.3kbits/s    &#xA;frame=  219 fps= 17 q=26.0 size=    2490kB time=00:00:12.04 bitrate=1694.2kbits/s    &#xA;frame=  235 fps= 17 q=26.0 size=    2728kB time=00:00:12.04 bitrate=1855.8kbits/s    &#xA;frame=  250 fps= 18 q=26.0 size=    2973kB time=00:00:12.04 bitrate=2022.4kbits/s    &#xA;[rawvideo @ 0x21e5640] Invalid buffer size, packet size 65536 &lt; expected frame_size 691200&#xA;Error while decoding stream #0:0: Invalid argument&#xA;frame=  261 fps= 18 q=-1.0 Lsize=    3269kB time=00:00:12.06 bitrate=2220.1kbits/s    &#xA;video:3263kB audio:4kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.081101%&#xA;[libx264 @ 0x21f9bc0] frame I:2     Avg QP:21.50  size: 21342&#xA;[libx264 @ 0x21f9bc0] frame P:259   Avg QP:24.22  size: 12734&#xA;[libx264 @ 0x21f9bc0] mb I  I16..4: 100.0%  0.0%  0.0%&#xA;[libx264 @ 0x21f9bc0] mb P  I16..4: 62.8%  0.0%  0.0%  P16..4: 14.2%  0.0%  0.0%  0.0%  0.0%    skip:22.9%&#xA;[libx264 @ 0x21f9bc0] coded y,uvDC,uvAC intra: 77.7% 61.2% 14.1% inter: 19.7% 24.8% 1.6%&#xA;[libx264 @ 0x21f9bc0] i16 v,h,dc,p: 17% 10% 65%  8%&#xA;[libx264 @ 0x21f9bc0] i8c dc,h,v,p: 52% 18% 24%  6%&#xA;[libx264 @ 0x21f9bc0] kb/s:3068.90&#xA;

    &#xA;&#xA;

    The whole script :

    &#xA;&#xA;

    #!/bin/sh&#xA;&#xA;PIPE=/tmp/somagic-pipe&#xA;OUTFILEDIR=~/easycap/Videos/&#xA;LOGDIR=~/.somagic-log/&#xA;NOW=`date &#x2B;"%m_%d_%Y_%H_%M_%S"`&#xA;&#xA;OUTFILE=${OUTFILEDIR}fpv_video_${NOW}.mp4&#xA;&#xA;mkdir $LOGDIR&#xA;&#xA;FFMPEG_LOG=${LOGDIR}ffmpeg.log&#xA;SOMAGIC_LOG=${LOGDIR}somagic.log&#xA;MPLAYER_LOG=${LOGDIR}mplayer.log&#xA;&#xA;rm $PIPE >/dev/null 2>&amp;1&#xA;rm $OUTFILE >/dev/null 2>&amp;1&#xA;&#xA;rm $FFMPEG_LOG&#xA;rm $SOMAGIC_LOG&#xA;rm $MPLAYER_LOG&#xA;&#xA;mkfifo $PIPE >/dev/null 2>&amp;1&#xA;&#xA;ffmpeg -pixel_format uyvy422 -s:v 720x480 -framerate 29.97 -f rawvideo \&#xA;-i $PIPE  -f alsa -i hw:0,0 -vf scale=w=720:h=540 -vcodec libx264 \&#xA;-preset ultrafast -shortest -c:a libfdk_aac -b:a 128k -af pan=1:c0=c0  \&#xA;-ar 96000 $OUTFILE > $FFMPEG_LOG 2>&amp;1 &amp;&#xA;&#xA;somagic-capture --ntsc -c --luminance=2 --lum-aperture=3 2> $SOMAGIC_LOG \&#xA;| tee $PIPE | \&#xA;mplayer -vf yadif,screenshot -demuxer rawvideo -rawvideo \&#xA;"ntsc:format=uyvy:fps=30000/1001" -aspect 4:3 - 2> $MPLAYER_LOG&#xA;&#xA;&#xA;rm $PIPE >/dev/null 2>&amp;1 &#xA;

    &#xA;&#xA;

    Modified from here : https://gist.github.com/Brick85/0b327ac2d3d45e23ed33

    &#xA;

  • Linux : FFMPEG time lapse video from image comamnds work only collects a few images out of 1000s in directory PREMATURE TERMINATION

    14 janvier 2021, par youtube-dl fan

    Good day&#xA;I read several ways on this site to make a time lapse video from a bunch of jpg images. FFMPEG runs globbing all the jpgs. The result turns out perfect but it only does about 20 seconds worth and stops. There are no errors below it seems.

    &#xA;

    I have read about a dozen ways to combine images to video on this site but all resulted in the same result as above.

    &#xA;

    https://superuser.com/questions/1499968/creating-timelapse-from-still-images-jpg-to-mp4-using-ffmpeg&#xA;https://lists.ffmpeg.org/pipermail/ffmpeg-user/2012-September/009419.html

    &#xA;

    also tried&#xA; ffmpeg -f image2 -pattern_type glob -i &#x27;*.jpg  -r 30 -q:v 2 output.mp4 same result

    &#xA;

    ffmpeg -pattern_type glob -i &#x27;*.jpg&#x27; -c:v libx264 output.mp4                                                                 &#xA;ffmpeg version 2.6.8 Copyright (c) 2000-2016 the FFmpeg developers&#xA;  built with gcc 4.4.7 (GCC) 20120313 (Red Hat 4.4.7-16)&#xA;  configuration: --prefix=/usr --bindir=/usr/bin --datadir=/usr/share/ffmpeg --i                                                                     ncdir=/usr/include/ffmpeg --libdir=/usr/lib64 --mandir=/usr/share/man --arch=x86                                                                     _64 --optflags=&#x27;-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-                                                                     protector --param=ssp-buffer-size=4 -m64 -mtune=generic&#x27; --enable-bzlib --disabl                                                                     e-crystalhd --enable-gnutls --enable-ladspa --enable-libass --enable-libdc1394 -                                                                     -enable-libfaac --enable-nonfree --disable-indev=jack --enable-libfreetype --ena                                                                     ble-libgsm --enable-libmp3lame --enable-openal --enable-libopenjpeg --enable-lib                                                                     opus --enable-libpulse --enable-libschroedinger --enable-libsoxr --enable-libspe                                                                     ex --enable-libtheora --enable-libvorbis --enable-libv4l2 --enable-libx264 --ena                                                                     ble-libx265 --enable-libxvid --enable-x11grab --enable-avfilter --enable-avresam                                                                     ple --enable-postproc --enable-pthreads --disable-static --enable-shared --enabl                                                                     e-gpl --disable-debug --disable-stripping --shlibdir=/usr/lib64 --enable-runtime                                                                     -cpudetect&#xA;  libavutil      54. 20.100 / 54. 20.100&#xA;  libavcodec     56. 26.100 / 56. 26.100&#xA;  libavformat    56. 25.101 / 56. 25.101&#xA;  libavdevice    56.  4.100 / 56.  4.100&#xA;  libavfilter     5. 11.102 /  5. 11.102&#xA;  libavresample   2.  1.  0 /  2.  1.  0&#xA;  libswscale      3.  1.101 /  3.  1.101&#xA;  libswresample   1.  1.100 /  1.  1.100&#xA;  libpostproc    53.  3.100 / 53.  3.100&#xA;[mjpeg @ 0xd185c0] Changeing bps to 8&#xA;Input #0, image2, from &#x27;*.jpg&#x27;:&#xA;  Duration: 00:09:33.92, start: 0.000000, bitrate: N/A&#xA;    Stream #0:0: Video: mjpeg, yuvj420p(pc, bt470bg/unknown/unknown), 1280x960 [                                                                     SAR 1:1 DAR 4:3], 25 fps, 25 tbr, 25 tbn, 25 tbc&#xA;File &#x27;output.mp4&#x27; already exists. Overwrite ? [y/N] y&#xA;No pixel format specified, yuvj420p for H.264 encoding chosen.&#xA;Use -pix_fmt yuv420p for compatibility with outdated media players.&#xA;[libx264 @ 0xd1e140] using SAR=1/1&#xA;[libx264 @ 0xd1e140] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2&#xA;[libx264 @ 0xd1e140] profile High, level 3.2&#xA;[libx264 @ 0xd1e140] 264 - core 142 r2438 af8e768 - H.264/MPEG-4 AVC codec - Cop                                                                     yleft 2003-2014 - http://www.videolan.org/x264.html - options: cabac=1 ref=3 deb                                                                     lock=1:0:0 analyse=0x3:0x113 me=hex subme=7 psy=1 psy_rd=1.00:0.00 mixed_ref=1 m                                                                     e_range=16 chroma_me=1 trellis=1 8x8dct=1 cqm=0 deadzone=21,11 fast_pskip=1 chro                                                                     ma_qp_offset=-2 threads=12 lookahead_threads=2 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=25 scene                                                                     cut=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&#xA;Output #0, mp4, to &#x27;output.mp4&#x27;:&#xA;  Metadata:&#xA;    encoder         : Lavf56.25.101&#xA;    Stream #0:0: Video: h264 (libx264) ([33][0][0][0] / 0x0021), yuvj420p(pc), 1                                                                     280x960 [SAR 1:1 DAR 4:3], q=-1--1, 25 fps, 12800 tbn, 25 tbc&#xA;    Metadata:&#xA;      encoder         : Lavc56.26.100 libx264&#xA;Stream mapping:&#xA;  Stream #0:0 -> #0:0 (mjpeg (native) -> h264 (libx264))&#xA;Press [q] to stop, [?] for help&#xA;frame=   67 fps= 13 q=28.0 size=    2003kB time=00:00:00.36 bitrate=45575.5kbits                                                                     frame=   70 fps= 12 q=28.0 size=    2524kB time=00:00:00.48 bitrate=43079.9kbits                                                                     frame=   73 fps= 12 q=28.0 size=    3046kB time=00:00:00.60 bitrate=41594.3kbits                                                                     frame=   76 fps= 11 q=28.0 size=    3589kB time=00:00:00.72 bitrate=40839.8kbits                                                                     frame=   86 fps= 12 q=28.0 size=    5410kB time=00:00:01.12 bitrate=39568.1kbits                                                                     frame=   92 fps= 12 q=28.0 size=    6493kB time=00:00:01.36 bitrate=39113.8kbits                                                                     frame=  101 fps= 12 q=28.0 size=    7855kB time=00:00:01.72 bitrate=37412.3kbits                                                                     frame=  108 fps= 12 q=28.0 size=    8950kB time=00:00:02.00 bitrate=36657.7kbits                                                                     frame=  115 fps= 12 q=28.0 size=   10118kB time=00:00:02.28 bitrate=36353.6kbits                                                                     frame=  120 fps= 12 q=28.0 size=   10961kB time=00:00:02.48 bitrate=36207.8kbits                                                                     frame=  128 fps= 12 q=28.0 size=   12310kB time=00:00:02.80 bitrate=36015.6kbits                                                                     frame=  134 fps= 12 q=28.0 size=   13323kB time=00:00:03.04 bitrate=35901.7kbits                                                                     frame=  139 fps= 12 q=28.0 size=   14168kB time=00:00:03.24 bitrate=35821.6kbits                                                                     frame=  142 fps= 11 q=28.0 size=   14676kB time=00:00:03.36 bitrate=35780.4kbits                                                                     frame=  154 fps= 12 q=28.0 size=   16439kB time=00:00:03.84 bitrate=35069.1kbits                                                                     frame=  159 fps= 11 q=28.0 size=   17328kB time=00:00:04.04 bitrate=35136.3kbits                                                                     frame=  167 fps= 12 q=28.0 size=   18774kB time=00:00:04.36 bitrate=35274.5kbits                                                                     frame=  173 fps= 12 q=28.0 size=   19864kB time=00:00:04.60 bitrate=35375.3kbits                                                                     frame=  182 fps= 12 q=28.0 size=   21492kB time=00:00:04.96 bitrate=35496.5kbits                                                                     frame=  187 fps= 12 q=28.0 size=   22389kB time=00:00:05.16 bitrate=35544.3kbits                                                                     frame=  190 fps= 11 q=28.0 size=   22935kB time=00:00:05.28 bitrate=35583.5kbits                                                                     frame=  196 fps= 11 q=28.0 size=   23972kB time=00:00:05.52 bitrate=35576.4kbits                                                                     frame=  208 fps= 12 q=28.0 size=   26168kB time=00:00:06.00 bitrate=35728.2kbits                                                                     frame=  214 fps= 12 q=28.0 size=   27303kB time=00:00:06.24 bitrate=35843.4kbits                                                                     frame=  224 fps= 12 q=28.0 size=   29130kB time=00:00:06.64 bitrate=35938.7kbits                                                                     frame=  224 fps=9.9 q=-1.0 Lsize=   38970kB time=00:00:08.88 bitrate=35950.7kbit                                                                     s/s&#xA;video:38968kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing                                                                      overhead: 0.005002%&#xA;[libx264 @ 0xd1e140] frame I:6     Avg QP:27.08  size:209868&#xA;[libx264 @ 0xd1e140] frame P:218   Avg QP:29.42  size:177263&#xA;[libx264 @ 0xd1e140] mb I  I16..4:  0.0% 98.9%  1.1%&#xA;[libx264 @ 0xd1e140] mb P  I16..4:  0.0% 90.0%  0.1%  P16..4:  2.0%  4.1%  3.7%                                                                       0.0%  0.0%    skip: 0.0%&#xA;[libx264 @ 0xd1e140] 8x8 transform intra:99.8% inter:88.2%&#xA;[libx264 @ 0xd1e140] coded y,uvDC,uvAC intra: 100.0% 0.0% 0.0% inter: 97.4% 0.0%                                                                      0.0%&#xA;[libx264 @ 0xd1e140] i16 v,h,dc,p: 58% 29% 12%  0%&#xA;[libx264 @ 0xd1e140] i8 v,h,dc,ddl,ddr,vr,hd,vl,hu:  7% 11% 44%  6%  6%  5%  8%                                                                       6%  8%&#xA;[libx264 @ 0xd1e140] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 16% 16% 13%  9%  9%  7% 10%                                                                       9% 10%&#xA;[libx264 @ 0xd1e140] i8c dc,h,v,p: 100%  0%  0%  0%&#xA;[libx264 @ 0xd1e140] Weighted P-Frames: Y:13.3% UV:0.5%&#xA;[libx264 @ 0xd1e140] ref P L0: 37.5%  9.4% 28.4% 22.9%  1.8%&#xA;[libx264 @ 0xd1e140] kb/s:35627.30&#xA;

    &#xA;