Recherche avancée

Médias (39)

Mot : - Tags -/audio

Autres articles (47)

  • Participer à sa traduction

    10 avril 2011

    Vous pouvez nous aider à améliorer les locutions utilisées dans le logiciel ou à traduire celui-ci dans n’importe qu’elle nouvelle langue permettant sa diffusion à de nouvelles communautés linguistiques.
    Pour ce faire, on utilise l’interface de traduction de SPIP où l’ensemble des modules de langue de MediaSPIP sont à disposition. ll vous suffit de vous inscrire sur la liste de discussion des traducteurs pour demander plus d’informations.
    Actuellement MediaSPIP n’est disponible qu’en français et (...)

  • Les autorisations surchargées par les plugins

    27 avril 2010, par

    Mediaspip core
    autoriser_auteur_modifier() afin que les visiteurs soient capables de modifier leurs informations sur la page d’auteurs

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

  • c++ - using FFmpeg encode and UDP with a Webcam

    14 mars, par Rendres

    I'm trying to get frames from a Webcam using OpenCV, encode them with FFmpeg and send them using UDP.

    



    I did before a similar project that instead of sending the packets with UDP, it saved them in a video file.

    



    My code is.

    



    #include &#xA;#include &#xA;#include &#xA;#include &#xA;&#xA;extern "C" {&#xA;#include <libavcodec></libavcodec>avcodec.h>&#xA;#include <libavformat></libavformat>avformat.h>&#xA;#include <libavutil></libavutil>opt.h>&#xA;#include <libavutil></libavutil>imgutils.h>&#xA;#include <libavutil></libavutil>mathematics.h>&#xA;#include <libswscale></libswscale>swscale.h>&#xA;#include <libswresample></libswresample>swresample.h>&#xA;}&#xA;&#xA;#include <opencv2></opencv2>opencv.hpp>&#xA;&#xA;using namespace std;&#xA;using namespace cv;&#xA;&#xA;#define WIDTH 640&#xA;#define HEIGHT 480&#xA;#define CODEC_ID AV_CODEC_ID_H264&#xA;#define STREAM_PIX_FMT AV_PIX_FMT_YUV420P&#xA;&#xA;static AVFrame *frame, *pFrameBGR;&#xA;&#xA;int main(int argc, char **argv)&#xA;{&#xA;VideoCapture cap(0);&#xA;const char *url = "udp://127.0.0.1:8080";&#xA;&#xA;AVFormatContext *formatContext;&#xA;AVStream *stream;&#xA;AVCodec *codec;&#xA;AVCodecContext *c;&#xA;AVDictionary *opts = NULL;&#xA;&#xA;int ret, got_packet;&#xA;&#xA;if (!cap.isOpened())&#xA;{&#xA;    return -1;&#xA;}&#xA;&#xA;av_log_set_level(AV_LOG_TRACE);&#xA;&#xA;av_register_all();&#xA;avformat_network_init();&#xA;&#xA;avformat_alloc_output_context2(&amp;formatContext, NULL, "h264", url);&#xA;if (!formatContext)&#xA;{&#xA;    av_log(NULL, AV_LOG_FATAL, "Could not allocate an output context for &#x27;%s&#x27;.\n", url);&#xA;}&#xA;&#xA;codec = avcodec_find_encoder(CODEC_ID);&#xA;if (!codec)&#xA;{&#xA;    av_log(NULL, AV_LOG_ERROR, "Could not find encoder.\n");&#xA;}&#xA;&#xA;stream = avformat_new_stream(formatContext, codec);&#xA;&#xA;c = avcodec_alloc_context3(codec);&#xA;&#xA;stream->id = formatContext->nb_streams - 1;&#xA;stream->time_base = (AVRational){1, 25};&#xA;&#xA;c->codec_id = CODEC_ID;&#xA;c->bit_rate = 400000;&#xA;c->width = WIDTH;&#xA;c->height = HEIGHT;&#xA;c->time_base = stream->time_base;&#xA;c->gop_size = 12;&#xA;c->pix_fmt = STREAM_PIX_FMT;&#xA;&#xA;if (formatContext->flags &amp; AVFMT_GLOBALHEADER)&#xA;    c->flags |= AV_CODEC_FLAG_GLOBAL_HEADER;&#xA;&#xA;av_dict_set(&amp;opts, "preset", "fast", 0);&#xA;&#xA;av_dict_set(&amp;opts, "tune", "zerolatency", 0);&#xA;&#xA;ret = avcodec_open2(c, codec, NULL);&#xA;if (ret &lt; 0)&#xA;{&#xA;    av_log(NULL, AV_LOG_ERROR, "Could not open video codec.\n");&#xA;}&#xA;&#xA;pFrameBGR = av_frame_alloc();&#xA;if (!pFrameBGR)&#xA;{&#xA;    av_log(NULL, AV_LOG_ERROR, "Could not allocate video frame.\n");&#xA;}&#xA;&#xA;frame = av_frame_alloc();&#xA;if (!frame)&#xA;{&#xA;    av_log(NULL, AV_LOG_ERROR, "Could not allocate video frame.\n");&#xA;}&#xA;&#xA;frame->format = c->pix_fmt;&#xA;frame->width = c->width;&#xA;frame->height = c->height;&#xA;&#xA;ret = avcodec_parameters_from_context(stream->codecpar, c);&#xA;if (ret &lt; 0)&#xA;{&#xA;    av_log(NULL, AV_LOG_ERROR, "Could not open video codec.\n");&#xA;}&#xA;&#xA;av_dump_format(formatContext, 0, url, 1);&#xA;&#xA;ret = avformat_write_header(formatContext, NULL);&#xA;if (ret != 0)&#xA;{&#xA;    av_log(NULL, AV_LOG_ERROR, "Failed to connect to &#x27;%s&#x27;.\n", url);&#xA;}&#xA;&#xA;Mat image(Size(HEIGHT, WIDTH), CV_8UC3);&#xA;SwsContext *swsctx = sws_getContext(WIDTH, HEIGHT, AV_PIX_FMT_BGR24, WIDTH, HEIGHT, AV_PIX_FMT_YUV420P, SWS_BILINEAR, NULL, NULL, NULL);&#xA;int frame_pts = 0;&#xA;&#xA;while (1)&#xA;{&#xA;    cap >> image;&#xA;&#xA;    int numBytesYUV = av_image_get_buffer_size(STREAM_PIX_FMT, WIDTH, HEIGHT, 1);&#xA;    uint8_t *bufferYUV = (uint8_t *)av_malloc(numBytesYUV * sizeof(uint8_t));&#xA;&#xA;    avpicture_fill((AVPicture *)pFrameBGR, image.data, AV_PIX_FMT_BGR24, WIDTH, HEIGHT);&#xA;    avpicture_fill((AVPicture *)frame, bufferYUV, STREAM_PIX_FMT, WIDTH, HEIGHT);&#xA;&#xA;    sws_scale(swsctx, (uint8_t const *const *)pFrameBGR->data, pFrameBGR->linesize, 0, HEIGHT, frame->data, frame->linesize);&#xA;&#xA;    AVPacket pkt = {0};&#xA;    av_init_packet(&amp;pkt);&#xA;&#xA;    frame->pts = frame_pts;&#xA;&#xA;    ret = avcodec_encode_video2(c, &amp;pkt, frame, &amp;got_packet);&#xA;    if (ret &lt; 0)&#xA;    {&#xA;        av_log(NULL, AV_LOG_ERROR, "Error encoding frame\n");&#xA;    }&#xA;&#xA;    if (got_packet)&#xA;    {&#xA;        pkt.pts = av_rescale_q_rnd(pkt.pts, c->time_base, stream->time_base, AVRounding(AV_ROUND_NEAR_INF | AV_ROUND_PASS_MINMAX));&#xA;        pkt.dts = av_rescale_q_rnd(pkt.dts, c->time_base, stream->time_base, AVRounding(AV_ROUND_NEAR_INF | AV_ROUND_PASS_MINMAX));&#xA;        pkt.duration = av_rescale_q(pkt.duration, c->time_base, stream->time_base);&#xA;        pkt.stream_index = stream->index;&#xA;&#xA;        return av_interleaved_write_frame(formatContext, &amp;pkt);&#xA;&#xA;        cout &lt;&lt; "Seguro que si" &lt;&lt; endl;&#xA;    }&#xA;    frame_pts&#x2B;&#x2B;;&#xA;}&#xA;&#xA;avcodec_free_context(&amp;c);&#xA;av_frame_free(&amp;frame);&#xA;avformat_free_context(formatContext);&#xA;&#xA;return 0;&#xA;}&#xA;

    &#xA;&#xA;

    The code compiles but it returns Segmentation fault in the function av_interleaved_write_frame(). I've tried several implementations or several codecs (in this case I'm using libopenh264, but using mpeg2video returns the same segmentation fault). I tried also with av_write_frame() but it returns the same error.

    &#xA;&#xA;

    As I told before, I only want to grab frames from a webcam connected via USB, encode them to H264 and send the packets through UDP to another PC.

    &#xA;&#xA;

    My console log when I run the executable is.

    &#xA;&#xA;

    [100%] Built target display&#xA;[OpenH264] this = 0x0x244b4f0, Info:CWelsH264SVCEncoder::SetOption():ENCODER_OPTION_TRACE_CALLBACK callback = 0x7f0c302a87c0.&#xA;[libopenh264 @ 0x244aa00] [OpenH264] this = 0x0x244b4f0, Info:CWelsH264SVCEncoder::InitEncoder(), openh264 codec version = 5a5c4f1&#xA;[libopenh264 @ 0x244aa00] [OpenH264] this = 0x0x244b4f0, Info:iUsageType = 0,iPicWidth= 640;iPicHeight= 480;iTargetBitrate= 400000;iMaxBitrate= 400000;iRCMode= 0;iPaddingFlag= 0;iTemporalLayerNum= 1;iSpatialLayerNum= 1;fFrameRate= 25.000000f;uiIntraPeriod= 12;eSpsPpsIdStrategy = 0;bPrefixNalAddingCtrl = 0;bSimulcastAVC=0;bEnableDenoise= 0;bEnableBackgroundDetection= 1;bEnableSceneChangeDetect = 1;bEnableAdaptiveQuant= 1;bEnableFrameSkip= 0;bEnableLongTermReference= 0;iLtrMarkPeriod= 30, bIsLosslessLink=0;iComplexityMode = 0;iNumRefFrame = 1;iEntropyCodingModeFlag = 0;uiMaxNalSize = 0;iLTRRefNum = 0;iMultipleThreadIdc = 1;iLoopFilterDisableIdc = 0 (offset(alpha/beta): 0,0;iComplexityMode = 0,iMaxQp = 51;iMinQp = 0)&#xA;[libopenh264 @ 0x244aa00] [OpenH264] this = 0x0x244b4f0, Info:sSpatialLayers[0]: .iVideoWidth= 640; .iVideoHeight= 480; .fFrameRate= 25.000000f; .iSpatialBitrate= 400000; .iMaxSpatialBitrate= 400000; .sSliceArgument.uiSliceMode= 1; .sSliceArgument.iSliceNum= 0; .sSliceArgument.uiSliceSizeConstraint= 1500;uiProfileIdc = 66;uiLevelIdc = 41&#xA;[libopenh264 @ 0x244aa00] [OpenH264] this = 0x0x244b4f0, Warning:SliceArgumentValidationFixedSliceMode(), unsupported setting with Resolution and uiSliceNum combination under RC on! So uiSliceNum is changed to 6!&#xA;[libopenh264 @ 0x244aa00] [OpenH264] this = 0x0x244b4f0, Info:Setting MaxSpatialBitrate (400000) the same at SpatialBitrate (400000) will make the    actual bit rate lower than SpatialBitrate&#xA;[libopenh264 @ 0x244aa00] [OpenH264] this = 0x0x244b4f0, Warning:bEnableFrameSkip = 0,bitrate can&#x27;t be controlled for RC_QUALITY_MODE,RC_BITRATE_MODE and RC_TIMESTAMP_MODE without enabling skip frame.&#xA;[libopenh264 @ 0x244aa00] [OpenH264] this = 0x0x244b4f0, Warning:Change QP Range from(0,51) to (12,42)&#xA;[libopenh264 @ 0x244aa00] [OpenH264] this = 0x0x244b4f0, Info:WELS CPU features/capacities (0x4007fe3f) detected:   HTT:      Y, MMX:      Y, MMXEX:    Y, SSE:      Y, SSE2:     Y, SSE3:     Y, SSSE3:    Y, SSE4.1:   Y, SSE4.2:   Y, AVX:      Y, FMA:      Y, X87-FPU:  Y, 3DNOW:    N, 3DNOWEX:  N, ALTIVEC:  N, CMOV:     Y, MOVBE:    Y, AES:      Y, NUMBER OF LOGIC PROCESSORS ON CHIP: 8, CPU CACHE LINE SIZE (BYTES):        64&#xA;[libopenh264 @ 0x244aa00] [OpenH264] this = 0x0x244b4f0, Info:WelsInitEncoderExt() exit, overall memory usage: 4542878 bytes&#xA;[libopenh264 @ 0x244aa00] [OpenH264] this = 0x0x244b4f0, Info:WelsInitEncoderExt(), pCtx= 0x0x245a400.&#xA;Output #0, h264, to &#x27;udp://192.168.100.39:8080&#x27;:&#xA;Stream #0:0, 0, 1/25: Video: h264 (libopenh264), 1 reference frame, yuv420p, 640x480 (0x0), 0/1, q=2-31, 400 kb/s, 25 tbn&#xA;[libopenh264 @ 0x244aa00] [OpenH264] this = 0x0x244b4f0, Debug:RcUpdateIntraComplexity iFrameDqBits = 385808,iQStep= 2016,iIntraCmplx = 777788928&#xA;[libopenh264 @ 0x244aa00] [OpenH264] this = 0x0x244b4f0, Debug:[Rc]Layer 0: Frame timestamp = 0, Frame type = 2, encoding_qp = 30, average qp = 30, max qp = 33, min qp = 27, index = 0, iTid = 0, used = 385808, bitsperframe = 16000, target = 64000, remainingbits = -257808, skipbuffersize = 200000&#xA;[libopenh264 @ 0x244aa00] [OpenH264] this = 0x0x244b4f0, Debug:WelsEncoderEncodeExt() OutputInfo iLayerNum = 2,iFrameSize = 48252&#xA;[libopenh264 @ 0x244aa00] [OpenH264] this = 0x0x244b4f0, Debug:WelsEncoderEncodeExt() OutputInfo iLayerId = 0,iNalType = 0,iNalCount = 2, first Nal Length=18,uiSpatialId = 0,uiTemporalId = 0,iSubSeqId = 0&#xA;[libopenh264 @ 0x244aa00] [OpenH264] this = 0x0x244b4f0, Debug:WelsEncoderEncodeExt() OutputInfo iLayerId = 1,iNalType = 1,iNalCount = 6, first Nal Length=6057,uiSpatialId = 0,uiTemporalId = 0,iSubSeqId = 0&#xA;[libopenh264 @ 0x244aa00] 6 slices&#xA;./scriptBuild.sh: line 20: 10625 Segmentation fault      (core dumped) ./display&#xA;

    &#xA;&#xA;

    As you can see, FFmpeg uses libopenh264 and configures it correctly. However, no matter what. It always returns the same Segmentation fault error...

    &#xA;&#xA;

    I've used commands like this.

    &#xA;&#xA;

    ffmpeg -s 640x480 -f video4linux2 -i /dev/video0 -r 30 -vcodec libopenh264 -an -f h264 udp://127.0.0.1:8080&#xA;

    &#xA;&#xA;

    And it works perfectly, but I need to process the frames before sending them. Thats why I'm trying to use the libs.

    &#xA;&#xA;

    My FFmpeg version is.

    &#xA;&#xA;

    ffmpeg version 3.3.6 Copyright (c) 2000-2017 the FFmpeg developers&#xA;built with gcc 4.8 (Ubuntu 4.8.4-2ubuntu1~14.04.3)&#xA;configuration: --disable-yasm --enable-shared --enable-libopenh264 --cc=&#x27;gcc -fPIC&#x27;&#xA;libavutil      55. 58.100 / 55. 58.100&#xA;libavcodec     57. 89.100 / 57. 89.100&#xA;libavformat    57. 71.100 / 57. 71.100&#xA;libavdevice    57.  6.100 / 57.  6.100&#xA;libavfilter     6. 82.100 /  6. 82.100&#xA;libswscale      4.  6.100 /  4.  6.100&#xA;libswresample   2.  7.100 /  2.  7.100&#xA;

    &#xA;&#xA;

    I tried to get more information of the error using gbd, but it didn't give me debugging info.

    &#xA;&#xA;

    How can I solve this problem ? I don't know what else can I try...

    &#xA;&#xA;

    Thank you !

    &#xA;

  • ffmpeg seek calculating wrong byte range ?

    12 mars 2020, par user4455

    I’m running into an issue while trying to extract thumbnails from a movie file at a specific timestamp. Generally I’ve had no issues with this, but I’ve come across a set of movie files that are getting an error about the byte range requested (416 Requested Range Not Satisfiable).

    The odd thing is that the server is correctly returning the content length in the partial content request, yet when it requests the movie file it requests a length that exceeds that.

    This is a bit over my head, so I’m not sure what could be happening here. Any insight would be great.

    The Command :

    /usr/bin/ffmpeg -y -ss 1400 -i 'https://s3-us-west-2.amazonaws.com/my-bucket/mymoviefile.mp4' -qscale:v 2 -f image2 -vframes 1 -filter:v 'scale=192:108' -loglevel debug /data/www/storage/test.jpg 2>&amp;1

    The Error :

    [https @ 0x22e1e00] header='HTTP/1.1 416 Requested Range Not Satisfiable'
    [https @ 0x22e1e00] http_code=416
    [https @ 0x22e1e00] HTTP error 416 Requested Range Not Satisfiable

    Source File Size :

    1776706045 bytes

    Source Content Duration :

    2897.624271

    Partial Content Request :

    [https @ 0x22e1e00] header='HTTP/1.1 206 Partial Content'
    [https @ 0x22e1e00] http_code=206
    [https @ 0x22e1e00] header='x-amz-id-2: 4J1pgHExIUA0GxIxSBmGJjrRqliHbsIjXeuGzVfTlaaoVXbyZI5FQNma8fGaifcovkXfxJev5yU='
    [https @ 0x22e1e00] header='x-amz-request-id: 78B3BDBB0356EF40'
    [https @ 0x22e1e00] header='Date: Wed, 16 Dec 2015 23:51:29 GMT'
    [https @ 0x22e1e00] header='x-amz-meta-content-length: 2898'
    [https @ 0x22e1e00] header='x-amz-meta-cb-modifiedtime: Tue, 15 Dec 2015 17:59:51 GMT'
    [https @ 0x22e1e00] header='Last-Modified: Wed, 16 Dec 2015 23:44:59 GMT'
    [https @ 0x22e1e00] header='ETag: "6341a8022630667a8070a83575e542e7-27"'
    [https @ 0x22e1e00] header='Accept-Ranges: bytes'
    [https @ 0x22e1e00] header='Content-Range: bytes 0-1776706044/1776706045'
    [https @ 0x22e1e00] header='Content-Type: video/mp4'
    [https @ 0x22e1e00] header='Content-Length: 1776706045'
    [https @ 0x22e1e00] header='Server: AmazonS3'
    [https @ 0x22e1e00] header='Connection: close'

    FFmpeg Request :

    request: GET /my-bucket/mymoviefile.mp4 HTTP/1.1
    User-Agent: Lavf/56.25.101
    Accept: */*
    Range: bytes=1781732960-
    Connection: close
    Host: s3-us-west-2.amazonaws.com
    Icy-MetaData: 1

    Entire Log :

    # /usr/bin/ffmpeg -y -ss 1400 -i 'https://s3-us-west-2.amazonaws.com/my-bucket/mymoviefile.mp4' -qscale:v 2 -f image2 -vframes 1 -filter:v 'scale=192:108' -loglevel debug /data/www/storage/test.jpg 2>&amp;1
    ffmpeg version 2.6.4 Copyright (c) 2000-2015 the FFmpeg developers
     built with gcc 4.9.2 (Debian 4.9.2-10)
     configuration: --prefix=/usr --extra-cflags='-g -O2 -fstack-protector-strong -Wformat -Werror=format-security ' --extra-ldflags='-Wl,-z,relro' --cc='ccache cc' --enable-shared --enable-libmp3lame --enable-gpl --enable-nonfree --enable-libvorbis --enable-pthreads --enable-libfaac --enable-libxvid --enable-postproc --enable-x11grab --enable-libgsm --enable-libtheora --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libx264 --enable-libspeex --enable-nonfree --disable-stripping --enable-libvpx --enable-libschroedinger --disable-encoder=libschroedinger --enable-version3 --enable-libopenjpeg --enable-librtmp --enable-avfilter --enable-libfreetype --enable-libvo-aacenc --disable-decoder=amrnb --enable-libvo-amrwbenc --enable-libaacplus --libdir=/usr/lib/x86_64-linux-gnu --disable-vda --enable-libbluray --enable-libcdio --enable-gnutls --enable-frei0r --enable-openssl --enable-libass --enable-libopus --enable-fontconfig --enable-libpulse --disable-mips32r2 --disable-mipsdspr1 --disable-mipsdspr2 --enable-libvidstab --enable-libzvbi --enable-avresample --disable-htmlpages --disable-podpages --enable-libutvideo --enable-libfdk-aac --enable-libx265 --enable-libiec61883 --enable-vaapi --enable-libdc1394 --disable-altivec --shlibdir=/usr/lib/x86_64-linux-gnu
     libavutil      54. 20.100 / 54. 20.100
     libavcodec     56. 26.100 / 56. 26.100
     libavformat    56. 25.101 / 56. 25.101
     libavdevice    56.  4.100 / 56.  4.100
     libavfilter     5. 11.102 /  5. 11.102
     libavresample   2.  1.  0 /  2.  1.  0
     libswscale      3.  1.101 /  3.  1.101
     libswresample   1.  1.100 /  1.  1.100
     libpostproc    53.  3.100 / 53.  3.100
    Splitting the commandline.
    Reading option '-y' ... matched as option 'y' (overwrite output files) with argument '1'.
    Reading option '-ss' ... matched as option 'ss' (set the start time offset) with argument '1400'.
    Reading option '-i' ... matched as input file with argument 'https://s3-us-west-2.amazonaws.com/my-bucket/mymoviefile.mp4'.
    Reading option '-qscale:v' ... matched as option 'qscale' (use fixed quality scale (VBR)) with argument '2'.
    Reading option '-f' ... matched as option 'f' (force format) with argument 'image2'.
    Reading option '-vframes' ... matched as option 'vframes' (set the number of video frames to output) with argument '1'.
    Reading option '-filter:v' ... matched as option 'filter' (set stream filtergraph) with argument 'scale=192:108'.
    Reading option '-loglevel' ... matched as option 'loglevel' (set logging level) with argument 'debug'.
    Reading option '/data/www/storage/test.jpg' ... matched as output file.
    Finished splitting the commandline.
    Parsing a group of options: global .
    Applying option y (overwrite output files) with argument 1.
    Applying option loglevel (set logging level) with argument debug.
    Successfully parsed a group of options.
    Parsing a group of options: input file https://s3-us-west-2.amazonaws.com/my-bucket/mymoviefile.mp4.
    Applying option ss (set the start time offset) with argument 1400.
    Successfully parsed a group of options.
    Opening an input file: https://s3-us-west-2.amazonaws.com/my-bucket/mymoviefile.mp4.
    [https @ 0x22e1e00] request: GET /my-bucket/mymoviefile.mp4 HTTP/1.1
    User-Agent: Lavf/56.25.101
    Accept: */*
    Range: bytes=0-
    Connection: close
    Host: s3-us-west-2.amazonaws.com
    Icy-MetaData: 1


    [https @ 0x22e1e00] header='HTTP/1.1 206 Partial Content'
    [https @ 0x22e1e00] http_code=206
    [https @ 0x22e1e00] header='x-amz-id-2: 4J1pgHExIUA0GxIxSBmGJjrRqliHbsIjXeuGzVfTlaaoVXbyZI5FQNma8fGaifcovkXfxJev5yU='
    [https @ 0x22e1e00] header='x-amz-request-id: 78B3BDBB0356EF40'
    [https @ 0x22e1e00] header='Date: Wed, 16 Dec 2015 23:51:29 GMT'
    [https @ 0x22e1e00] header='x-amz-meta-content-length: 2898'
    [https @ 0x22e1e00] header='x-amz-meta-cb-modifiedtime: Tue, 15 Dec 2015 17:59:51 GMT'
    [https @ 0x22e1e00] header='Last-Modified: Wed, 16 Dec 2015 23:44:59 GMT'
    [https @ 0x22e1e00] header='ETag: "6341a8022630667a8070a83575e542e7-27"'
    [https @ 0x22e1e00] header='Accept-Ranges: bytes'
    [https @ 0x22e1e00] header='Content-Range: bytes 0-1776706044/1776706045'
    [https @ 0x22e1e00] header='Content-Type: video/mp4'
    [https @ 0x22e1e00] header='Content-Length: 1776706045'
    [https @ 0x22e1e00] header='Server: AmazonS3'
    [https @ 0x22e1e00] header='Connection: close'
    [https @ 0x22e1e00] header=''
    [mov,mp4,m4a,3gp,3g2,mj2 @ 0x22e1740] Format mov,mp4,m4a,3gp,3g2,mj2 probed with size=2048 and score=100
    [mov,mp4,m4a,3gp,3g2,mj2 @ 0x22e1740] ISO: File Type Major Brand: mp42
    [mov,mp4,m4a,3gp,3g2,mj2 @ 0x22e1740] Before avformat_find_stream_info() pos: 1647960 bytes read:1652200 seeks:0
    [h264 @ 0x22e92c0] no picture
    [mov,mp4,m4a,3gp,3g2,mj2 @ 0x22e1740] All info found
    [mov,mp4,m4a,3gp,3g2,mj2 @ 0x22e1740] After avformat_find_stream_info() pos: 1862326 bytes read:1878504 seeks:0 frames:16
    Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'https://s3-us-west-2.amazonaws.com/my-bucket/mymoviefile.mp4':
     Metadata:
       major_brand     : mp42
       minor_version   : 1
       compatible_brands: isommp41avc1
       creation_time   : 2015-11-18 02:34:41
     Duration: 00:48:17.70, start: 0.000000, bitrate: 4905 kb/s
       Stream #0:0(und), 15, 1/2997: Video: h264 (High) (avc1 / 0x31637661), yuv420p(tv, left), 1920x1080 (1920x1088) [SAR 1:1 DAR 16:9], 1001/60000, 9994 kb/s, 29.97 fps, 29.97 tbr, 2997 tbn, 59.94 tbc (default)
       Metadata:
         creation_time   : 2015-11-18 02:34:41
         handler_name    : ?Apple Video Media Handler
       Stream #0:1(und), 1, 1/48000: Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 192 kb/s (default)
       Metadata:
         creation_time   : 2015-11-18 02:34:41
         handler_name    : ?Apple Sound Media Handler
    Successfully opened the file.
    Parsing a group of options: output file /data/www/storage/test.jpg.
    Applying option qscale:v (use fixed quality scale (VBR)) with argument 2.
    Applying option f (force format) with argument image2.
    Applying option vframes (set the number of video frames to output) with argument 1.
    Applying option filter:v (set stream filtergraph) with argument scale=192:108.
    Successfully parsed a group of options.
    Opening an output file: /data/www/storage/test.jpg.
    Successfully opened the file.
    detected 2 logical cores
    [Parsed_scale_0 @ 0x22cd4c0] Setting 'w' to value '192'
    [Parsed_scale_0 @ 0x22cd4c0] Setting 'h' to value '108'
    [Parsed_scale_0 @ 0x22cd4c0] Setting 'flags' to value '0x4'
    [Parsed_scale_0 @ 0x22cd4c0] w:192 h:108 flags:'0x4' interl:0
    [graph 0 input from stream 0:0 @ 0x22ccfe0] Setting 'video_size' to value '1920x1080'
    [graph 0 input from stream 0:0 @ 0x22ccfe0] Setting 'pix_fmt' to value '0'
    [graph 0 input from stream 0:0 @ 0x22ccfe0] Setting 'time_base' to value '1/2997'
    [graph 0 input from stream 0:0 @ 0x22ccfe0] Setting 'pixel_aspect' to value '1/1'
    [graph 0 input from stream 0:0 @ 0x22ccfe0] Setting 'sws_param' to value 'flags=2'
    [graph 0 input from stream 0:0 @ 0x22ccfe0] Setting 'frame_rate' to value '2997/100'
    [graph 0 input from stream 0:0 @ 0x22ccfe0] w:1920 h:1080 pixfmt:yuv420p tb:1/2997 fr:2997/100 sar:1/1 sws_param:flags=2
    [format @ 0x2798640] compat: called with args=[yuvj420p|yuvj422p|yuvj444p]
    [format @ 0x2798640] Setting 'pix_fmts' to value 'yuvj420p|yuvj422p|yuvj444p'
    [AVFilterGraph @ 0x22cda60] query_formats: 5 queried, 4 merged, 0 already done, 0 delayed
    [Parsed_scale_0 @ 0x22cd4c0] picking yuvj420p out of 3 ref:yuv420p alpha:0
    [swscaler @ 0x22c3c80] deprecated pixel format used, make sure you did set range correctly
    [Parsed_scale_0 @ 0x22cd4c0] w:1920 h:1080 fmt:yuv420p sar:1/1 -> w:192 h:108 fmt:yuvj420p sar:1/1 flags:0x4
    [mjpeg @ 0x2854e20] intra_quant_bias = 96 inter_quant_bias = 0
    [mjpeg @ 0x28716c0] intra_quant_bias = 96 inter_quant_bias = 0
    [mjpeg @ 0x2795320] intra_quant_bias = 96 inter_quant_bias = 0
    Output #0, image2, to '/data/www/storage/test.jpg':
     Metadata:
       major_brand     : mp42
       minor_version   : 1
       compatible_brands: isommp41avc1
       encoder         : Lavf56.25.101
       Stream #0:0(und), 0, 100/2997: Video: mjpeg, yuvj420p(pc, left), 192x108 [SAR 1:1 DAR 16:9], 100/2997, q=2-31, 200 kb/s, 29.97 fps, 29.97 tbn, 29.97 tbc (default)
       Metadata:
         creation_time   : 2015-11-18 02:34:41
         handler_name    : ?Apple Video Media Handler
         encoder         : Lavc56.26.100 mjpeg
    Stream mapping:
     Stream #0:0 -> #0:0 (h264 (native) -> mjpeg (native))
    Press [q] to stop, [?] for help
    [https @ 0x22e1e00] request: GET /my-bucket/mymoviefile.mp4 HTTP/1.1
    User-Agent: Lavf/56.25.101
    Accept: */*
    Range: bytes=1781732960-
    Connection: close
    Host: s3-us-west-2.amazonaws.com
    Icy-MetaData: 1


    [https @ 0x22e1e00] header='HTTP/1.1 416 Requested Range Not Satisfiable'
    [https @ 0x22e1e00] http_code=416
    [https @ 0x22e1e00] HTTP error 416 Requested Range Not Satisfiable
    [mov,mp4,m4a,3gp,3g2,mj2 @ 0x22e1740] stream 0, offset 0x6a331660: partial file
    https://s3-us-west-2.amazonaws.com/my-bucket/mymoviefile.mp4: Invalid data found when processing input
    [output stream 0:0 @ 0x22d7500] EOF on sink link output stream 0:0:default.
    No more output streams to write to, finishing.
    frame=    0 fps=0.0 q=0.0 Lsize=N/A time=00:00:00.00 bitrate=N/A
    video:0kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown
    Input file #0 (https://s3-us-west-2.amazonaws.com/my-bucket/mymoviefile.mp4):
     Input stream #0:0 (video): 0 packets read (0 bytes); 0 frames decoded;
     Input stream #0:1 (audio): 0 packets read (0 bytes);
     Total: 0 packets (0 bytes) demuxed
    Output file #0 (/data/www/storage/test.jpg):
     Output stream #0:0 (video): 0 frames encoded; 0 packets muxed (0 bytes);
     Total: 0 packets (0 bytes) muxed
    Output file is empty, nothing was encoded (check -ss / -t / -frames parameters if used)
    0 frames successfully decoded, 0 decoding errors
    [AVIOContext @ 0x27ab100] Statistics: 1878504 bytes read, 0 seeks

    FFprobe Result :

    # /usr/bin/ffprobe -show_format -show_streams -i 'https://s3-us-west-2.amazonaws.com/my-bucket/mymoviefile.mp4'
    ffprobe version 2.6.4 Copyright (c) 2007-2015 the FFmpeg developers
     built with gcc 4.9.2 (Debian 4.9.2-10)
     configuration: --prefix=/usr --extra-cflags='-g -O2 -fstack-protector-strong -Wformat -Werror=format-security ' --extra-ldflags='-Wl,-z,relro' --cc='ccache cc' --enable-shared --enable-libmp3lame --enable-gpl --enable-nonfree --enable-libvorbis --enable-pthreads --enable-libfaac --enable-libxvid --enable-postproc --enable-x11grab --enable-libgsm --enable-libtheora --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libx264 --enable-libspeex --enable-nonfree --disable-stripping --enable-libvpx --enable-libschroedinger --disable-encoder=libschroedinger --enable-version3 --enable-libopenjpeg --enable-librtmp --enable-avfilter --enable-libfreetype --enable-libvo-aacenc --disable-decoder=amrnb --enable-libvo-amrwbenc --enable-libaacplus --libdir=/usr/lib/x86_64-linux-gnu --disable-vda --enable-libbluray --enable-libcdio --enable-gnutls --enable-frei0r --enable-openssl --enable-libass --enable-libopus --enable-fontconfig --enable-libpulse --disable-mips32r2 --disable-mipsdspr1 --disable-mipsdspr2 --enable-libvidstab --enable-libzvbi --enable-avresample --disable-htmlpages --disable-podpages --enable-libutvideo --enable-libfdk-aac --enable-libx265 --enable-libiec61883 --enable-vaapi --enable-libdc1394 --disable-altivec --shlibdir=/usr/lib/x86_64-linux-gnu
     libavutil      54. 20.100 / 54. 20.100
     libavcodec     56. 26.100 / 56. 26.100
     libavformat    56. 25.101 / 56. 25.101
     libavdevice    56.  4.100 / 56.  4.100
     libavfilter     5. 11.102 /  5. 11.102
     libavresample   2.  1.  0 /  2.  1.  0
     libswscale      3.  1.101 /  3.  1.101
     libswresample   1.  1.100 /  1.  1.100
     libpostproc    53.  3.100 / 53.  3.100
    Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'https://s3-us-west-2.amazonaws.com/my-bucket/mymoviefile.mp4':
     Metadata:
       major_brand     : mp42
       minor_version   : 1
       compatible_brands: isommp41avc1
       creation_time   : 2015-11-18 02:34:41
     Duration: 00:48:17.70, start: 0.000000, bitrate: 4905 kb/s
       Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p(tv), 1920x1080 [SAR 1:1 DAR 16:9], 9994 kb/s, 29.97 fps, 29.97 tbr, 2997 tbn, 59.94 tbc (default)
       Metadata:
         creation_time   : 2015-11-18 02:34:41
         handler_name    : ?Apple Video Media Handler
       Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 192 kb/s (default)
       Metadata:
         creation_time   : 2015-11-18 02:34:41
         handler_name    : ?Apple Sound Media Handler
    [STREAM]
    index=0
    codec_name=h264
    codec_long_name=H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10
    profile=High
    codec_type=video
    codec_time_base=1001/60000
    codec_tag_string=avc1
    codec_tag=0x31637661
    width=1920
    height=1080
    has_b_frames=1
    sample_aspect_ratio=1:1
    display_aspect_ratio=16:9
    pix_fmt=yuv420p
    level=40
    color_range=tv
    color_space=unknown
    color_transfer=unknown
    color_primaries=unknown
    chroma_location=left
    timecode=N/A
    refs=3
    is_avc=1
    nal_length_size=4
    id=N/A
    r_frame_rate=2997/100
    avg_frame_rate=2997/100
    time_base=1/2997
    start_pts=0
    start_time=0.000000
    duration_ts=8684300
    duration=2897.664331
    bit_rate=9994429
    max_bit_rate=N/A
    bits_per_raw_sample=8
    nb_frames=86843
    nb_read_frames=N/A
    nb_read_packets=N/A
    DISPOSITION:default=1
    DISPOSITION:dub=0
    DISPOSITION:original=0
    DISPOSITION:comment=0
    DISPOSITION:lyrics=0
    DISPOSITION:karaoke=0
    DISPOSITION:forced=0
    DISPOSITION:hearing_impaired=0
    DISPOSITION:visual_impaired=0
    DISPOSITION:clean_effects=0
    DISPOSITION:attached_pic=0
    TAG:creation_time=2015-11-18 02:34:41
    TAG:language=und
    TAG:handler_name=Apple Video Media Handler
    [/STREAM]
    [STREAM]
    index=1
    codec_name=aac
    codec_long_name=AAC (Advanced Audio Coding)
    profile=LC
    codec_type=audio
    codec_time_base=1/48000
    codec_tag_string=mp4a
    codec_tag=0x6134706d
    sample_fmt=fltp
    sample_rate=48000
    channels=2
    channel_layout=stereo
    bits_per_sample=0
    id=N/A
    r_frame_rate=0/0
    avg_frame_rate=0/0
    time_base=1/48000
    start_pts=0
    start_time=0.000000
    duration_ts=139085965
    duration=2897.624271
    bit_rate=192002
    max_bit_rate=N/A
    bits_per_raw_sample=N/A
    nb_frames=135828
    nb_read_frames=N/A
    nb_read_packets=N/A
    DISPOSITION:default=1
    DISPOSITION:dub=0
    DISPOSITION:original=0
    DISPOSITION:comment=0
    DISPOSITION:lyrics=0
    DISPOSITION:karaoke=0
    DISPOSITION:forced=0
    DISPOSITION:hearing_impaired=0
    DISPOSITION:visual_impaired=0
    DISPOSITION:clean_effects=0
    DISPOSITION:attached_pic=0
    TAG:creation_time=2015-11-18 02:34:41
    TAG:language=und
    TAG:handler_name=Apple Sound Media Handler
    [/STREAM]
    [FORMAT]
    filename=https://s3-us-west-2.amazonaws.com/my-bucket/mymoviefile.mp4
    nb_streams=2
    nb_programs=0
    format_name=mov,mp4,m4a,3gp,3g2,mj2
    format_long_name=QuickTime / MOV
    start_time=0.000000
    duration=2897.695000
    size=1776706045
    bit_rate=4905156
    probe_score=100
    TAG:major_brand=mp42
    TAG:minor_version=1
    TAG:compatible_brands=isommp41avc1
    TAG:creation_time=2015-11-18 02:34:41
    [/FORMAT]
  • Creating a video using ffmpeg in a PHP script

    30 décembre 2017, par Femzy

    I have been trying to solve this problem for a while now, but i have not got it through please someone should help me..
    My main objective is to collect user’n inputs and convert it to a video with black background, then the input text will be moving from left to right while the video is playing with audio in the background. Currently i was suggested to use "drawtext" but i have not find it working
    This is the code I use just to test the drawtext but the thing is, if i try it 10 times it will create a video file ones in many times i tried and even the video file would have 0 kb in size
    The Below code is my code

    The Below is the Report i got from the not working ffmpeg cmmand

    echo shell_exec('ffmpeg -f lavfi -i testsrc=duration=5:size=800x600:rate=30 -vf drawtext="fontfile=/usr/share/fonts/truetype/dejavu/DejaVuSerif-Bold.ttf:textfile=text.txt: x=(w-tw)/2: y=h-(2*lh): fontcolor=white: box=1: boxcolor=0x00000000@1" -preset ultrafast outex.mp4');

    ffmpeg started on 2017-12-29 at 16:43:24

    Report written to "ffmpeg-20171229-164324.log"
    Command line :
    ffmpeg -f test.mp4 -vf "drawtext=fontsize=64:fontcolor=white@0.8:box=1:boxcolor=black@0.75:boxborderw=16:fontfile=OCRA.ttf:text=my_video:x=(w-tw)/2:y=th" textover09.mpg -report
    ffmpeg version git-2017-12-28-be4dfbf Copyright (c) 2000-2017 the FFmpeg developers
    built with gcc 4.4.7 (GCC) 20120313 (Red Hat 4.4.7-18)
    configuration : —prefix=/usr/local/ffmpeg —extra-cflags=-I/usr/local/ffmpeg/include —extra-ldflags=-L/usr/local/ffmpeg/lib —bindir=/usr/local/bin —enable-gpl —enable-nonfree —enable-libfdk_aac —enable-libmp3lame —enable-libopus —enable-libvpx —enable-libx264 —enable-libtheora —enable-filter=drawtext
    libavutil 56. 7.100 / 56. 7.100
    libavcodec 58. 9.100 / 58. 9.100
    libavformat 58. 3.100 / 58. 3.100
    libavdevice 58. 0.100 / 58. 0.100
    libavfilter 7. 8.100 / 7. 8.100
    libswscale 5. 0.101 / 5. 0.101
    libswresample 3. 0.101 / 3. 0.101
    libpostproc 55. 0.100 / 55. 0.100
    Splitting the commandline.
    Reading option ’-f’ ... matched as option ’f’ (force format) with argument ’test.mp4’.
    Reading option ’-vf’ ... matched as option ’vf’ (set video filters) with argument ’drawtext=fontsize=64:fontcolor=white@0.8:box=1:boxcolor=black@0.75:boxborderw=16:fontfile=OCRA.ttf:text=my_video:x=(w-tw)/2:y=th’.
    Reading option ’textover09.mpg’ ... matched as output url.
    Reading option ’-report’ ... matched as option ’report’ (generate a report) with argument ’1’.
    Finished splitting the commandline.
    Parsing a group of options : global .
    Applying option report (generate a report) with argument 1.
    Successfully parsed a group of options.
    Parsing a group of options : output url textover09.mpg.
    Applying option f (force format) with argument test.mp4.
    Applying option vf (set video filters) with argument drawtext=fontsize=64:fontcolor=white@0.8:box=1:boxcolor=black@0.75:boxborderw=16:fontfile=OCRA.ttf:text=my_video:x=(w-tw)/2:y=th.
    Successfully parsed a group of options.
    Opening an output file : textover09.mpg.
    [NULL @ 0x4671e80] Requested output format ’test.mp4’ is not a suitable output format
    textover09.mpg : Invalid argument

    This is Another report i got, in this report it is saying" Drawtext no such filters"

    ffmpeg started on 2017-12-29 at 09:00:43
    Report written to "ffmpeg-20171229-090043.log"
    Command line:
    ffmpeg -i test.mp4 -vf "drawtext=fontfile=/usr/share/fonts/truetype/dejavu/DejaVuSerif-Bold.ttf:textfile=text.txt:reload=1:y=h-line_h-10:x=(W/tw)*n" textover7.mpg -report
    ffmpeg version git-2017-12-28-be4dfbf Copyright (c) 2000-2017 the FFmpeg developers
     built with gcc 4.4.7 (GCC) 20120313 (Red Hat 4.4.7-18)
     configuration: --prefix=/usr/local/ffmpeg --extra-cflags=-I/usr/local/ffmpeg/include --extra-ldflags=-L/usr/local/ffmpeg/lib --bindir=/usr/local/bin --enable-gpl --enable-nonfree --enable-libfdk_aac --enable-libmp3lame --enable-libopus --enable-libvpx --enable-libx264 --enable-libtheora --enable-filter=drawtext
     libavutil      56.  7.100 / 56.  7.100
     libavcodec     58.  9.100 / 58.  9.100
     libavformat    58.  3.100 / 58.  3.100
     libavdevice    58.  0.100 / 58.  0.100
     libavfilter     7.  8.100 /  7.  8.100
     libswscale      5.  0.101 /  5.  0.101
     libswresample   3.  0.101 /  3.  0.101
     libpostproc    55.  0.100 / 55.  0.100
    Splitting the commandline.
    Reading option '-i' ... matched as input url with argument 'test.mp4'.
    Reading option '-vf' ... matched as option 'vf' (set video filters) with argument 'drawtext=fontfile=/usr/share/fonts/truetype/dejavu/DejaVuSerif-Bold.ttf:textfile=text.txt:reload=1:y=h-line_h-10:x=(W/tw)*n'.
    Reading option 'textover7.mpg' ... matched as output url.
    Reading option '-report' ... matched as option 'report' (generate a report) with argument '1'.
    Finished splitting the commandline.
    Parsing a group of options: global .
    Applying option report (generate a report) with argument 1.
    Successfully parsed a group of options.
    Parsing a group of options: input url test.mp4.
    Successfully parsed a group of options.
    Opening an input file: test.mp4.
    [NULL @ 0x42d2d80] Opening 'test.mp4' for reading
    [file @ 0x42d3700] Setting default whitelist 'file,crypto'
    [mov,mp4,m4a,3gp,3g2,mj2 @ 0x42d2d80] Format mov,mp4,m4a,3gp,3g2,mj2 probed with size=2048 and score=100
    [mov,mp4,m4a,3gp,3g2,mj2 @ 0x42d2d80] ISO: File Type Major Brand: mp42
    [mov,mp4,m4a,3gp,3g2,mj2 @ 0x42d2d80] Unknown dref type 0x206c7275 size 12
    [mov,mp4,m4a,3gp,3g2,mj2 @ 0x42d2d80] Processing st: 0, edit list 0 - media time: 0, duration: 13049
    [mov,mp4,m4a,3gp,3g2,mj2 @ 0x42d2d80] Unknown dref type 0x206c7275 size 12
    [mov,mp4,m4a,3gp,3g2,mj2 @ 0x42d2d80] Before avformat_find_stream_info() pos: 112452 bytes read:141356 seeks:0 nb_streams:2
    [h264 @ 0x42d4640] nal_unit_type: 7, nal_ref_idc: 3
    [h264 @ 0x42d4640] nal_unit_type: 8, nal_ref_idc: 3
    [h264 @ 0x42d4640] nal_unit_type: 5, nal_ref_idc: 3
    [h264 @ 0x42d4640] Format yuv420p chosen by get_format().
    [h264 @ 0x42d4640] Reinit context to 640x368, pix_fmt: yuv420p
    [h264 @ 0x42d4640] nal_unit_type: 1, nal_ref_idc: 2
    [h264 @ 0x42d4640] nal_unit_type: 1, nal_ref_idc: 2
    [h264 @ 0x42d4640] nal_unit_type: 1, nal_ref_idc: 2
    [h264 @ 0x42d4640] nal_unit_type: 1, nal_ref_idc: 2
    [h264 @ 0x42d4640] nal_unit_type: 1, nal_ref_idc: 2
    [h264 @ 0x42d4640] nal_unit_type: 1, nal_ref_idc: 2
    [mov,mp4,m4a,3gp,3g2,mj2 @ 0x42d2d80] All info found
    [mov,mp4,m4a,3gp,3g2,mj2 @ 0x42d2d80] After avformat_find_stream_info() pos: 159483 bytes read:174124 seeks:0 frames:9
    Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'test.mp4':
     Metadata:
       major_brand     : mp42
       minor_version   : 0
       compatible_brands: isommp42
       creation_time   : 2014-01-19T03:12:30.000000Z
     Duration: 00:07:15.00, start: 0.000000, bitrate: 201 kb/s
       Stream #0:0(und), 8, 1/30: Video: h264 (Constrained Baseline) (avc1 / 0x31637661), yuv420p, 640x360, 103 kb/s, 15 fps, 15 tbr, 30 tbn, 30 tbc (default)
       Metadata:
         handler_name    : VideoHandler
       Stream #0:1(und), 1, 1/44100: Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 96 kb/s (default)
       Metadata:
         creation_time   : 2014-01-19T03:12:31.000000Z
         handler_name    : IsoMedia File Produced by Google, 5-11-2011
    Successfully opened the file.
    Parsing a group of options: output url textover7.mpg.
    Applying option vf (set video filters) with argument drawtext=fontfile=/usr/share/fonts/truetype/dejavu/DejaVuSerif-Bold.ttf:textfile=text.txt:reload=1:y=h-line_h-10:x=(W/tw)*n.
    Successfully parsed a group of options.
    Opening an output file: textover7.mpg.
    [file @ 0x42e9e40] Setting default whitelist 'file,crypto'
    Successfully opened the file.
    detected 12 logical cores
    [h264 @ 0x43ece00] nal_unit_type: 7, nal_ref_idc: 3
    [h264 @ 0x43ece00] nal_unit_type: 8, nal_ref_idc: 3
    Stream mapping:
     Stream #0:0 -> #0:0 (h264 (native) -> mpeg1video (native))
     Stream #0:1 -> #0:1 (aac (native) -> mp2 (native))
    Press [q] to stop, [?] for help
    cur_dts is invalid (this is harmless if it occurs once at the start per stream)
    cur_dts is invalid (this is harmless if it occurs once at the start per stream)
    [h264 @ 0x43ece00] nal_unit_type: 5, nal_ref_idc: 3
    [h264 @ 0x43ece00] Format yuv420p chosen by get_format().
    [h264 @ 0x43ece00] Reinit context to 640x368, pix_fmt: yuv420p
    cur_dts is invalid (this is harmless if it occurs once at the start per stream)
    [h264 @ 0x43f91c0] nal_unit_type: 1, nal_ref_idc: 2
    cur_dts is invalid (this is harmless if it occurs once at the start per stream)
    [h264 @ 0x43376c0] nal_unit_type: 1, nal_ref_idc: 2
    cur_dts is invalid (this is harmless if it occurs once at the start per stream)
    [h264 @ 0x4339d40] nal_unit_type: 1, nal_ref_idc: 2
    cur_dts is invalid (this is harmless if it occurs once at the start per stream)
    [h264 @ 0x43c1840] nal_unit_type: 1, nal_ref_idc: 2
    cur_dts is invalid (this is harmless if it occurs once at the start per stream)
    [h264 @ 0x43de0c0] nal_unit_type: 1, nal_ref_idc: 2
    cur_dts is invalid (this is harmless if it occurs once at the start per stream)
    [h264 @ 0x439b000] nal_unit_type: 1, nal_ref_idc: 2
    cur_dts is invalid (this is harmless if it occurs once at the start per stream)
    [h264 @ 0x445ae80] nal_unit_type: 1, nal_ref_idc: 2
    [graph_1_in_0_1 @ 0x4657a40] Setting 'time_base' to value '1/44100'
    [graph_1_in_0_1 @ 0x4657a40] Setting 'sample_rate' to value '44100'
    [graph_1_in_0_1 @ 0x4657a40] Setting 'sample_fmt' to value 'fltp'
    [graph_1_in_0_1 @ 0x4657a40] Setting 'channel_layout' to value '0x3'
    [graph_1_in_0_1 @ 0x4657a40] tb:1/44100 samplefmt:fltp samplerate:44100 chlayout:0x3
    [format_out_0_1 @ 0x4657cc0] Setting 'sample_fmts' to value 's16'
    [format_out_0_1 @ 0x4657cc0] Setting 'sample_rates' to value '44100|48000|32000|22050|24000|16000'
    [format_out_0_1 @ 0x4657cc0] Setting 'channel_layouts' to value '0x4|0x3'
    [format_out_0_1 @ 0x4657cc0] auto-inserting filter 'auto_resampler_0' between the filter 'Parsed_anull_0' and the filter 'format_out_0_1'
    [AVFilterGraph @ 0x42d2c40] query_formats: 4 queried, 6 merged, 3 already done, 0 delayed
    [auto_resampler_0 @ 0x4658dc0] [SWR @ 0x4659140] Using fltp internally between filters
    [auto_resampler_0 @ 0x4658dc0] ch:2 chl:stereo fmt:fltp r:44100Hz -> ch:2 chl:stereo fmt:s16 r:44100Hz
    cur_dts is invalid (this is harmless if it occurs once at the start per stream)
    cur_dts is invalid (this is harmless if it occurs once at the start per stream)
    cur_dts is invalid (this is harmless if it occurs once at the start per stream)
    cur_dts is invalid (this is harmless if it occurs once at the start per stream)
    cur_dts is invalid (this is harmless if it occurs once at the start per stream)
    cur_dts is invalid (this is harmless if it occurs once at the start per stream)
    cur_dts is invalid (this is harmless if it occurs once at the start per stream)
    cur_dts is invalid (this is harmless if it occurs once at the start per stream)
    cur_dts is invalid (this is harmless if it occurs once at the start per stream)
    cur_dts is invalid (this is harmless if it occurs once at the start per stream)
    cur_dts is invalid (this is harmless if it occurs once at the start per stream)
    cur_dts is invalid (this is harmless if it occurs once at the start per stream)
    cur_dts is invalid (this is harmless if it occurs once at the start per stream)
    cur_dts is invalid (this is harmless if it occurs once at the start per stream)
    cur_dts is invalid (this is harmless if it occurs once at the start per stream)
    cur_dts is invalid (this is harmless if it occurs once at the start per stream)
    cur_dts is invalid (this is harmless if it occurs once at the start per stream)
    cur_dts is invalid (this is harmless if it occurs once at the start per stream)
    cur_dts is invalid (this is harmless if it occurs once at the start per stream)
    cur_dts is invalid (this is harmless if it occurs once at the start per stream)
    cur_dts is invalid (this is harmless if it occurs once at the start per stream)
    cur_dts is invalid (this is harmless if it occurs once at the start per stream)
    cur_dts is invalid (this is harmless if it occurs once at the start per stream)
    [h264 @ 0x4477580] nal_unit_type: 1, nal_ref_idc: 2
    cur_dts is invalid (this is harmless if it occurs once at the start per stream)
    [h264 @ 0x4493cc0] nal_unit_type: 1, nal_ref_idc: 2
    cur_dts is invalid (this is harmless if it occurs once at the start per stream)
    [h264 @ 0x44b0340] nal_unit_type: 1, nal_ref_idc: 2
    cur_dts is invalid (this is harmless if it occurs once at the start per stream)
    [h264 @ 0x44cca80] nal_unit_type: 1, nal_ref_idc: 2
    [AVFilterGraph @ 0x466e4c0] No such filter: 'drawtext'
    Error reinitializing filters!
    Failed to inject frame into filter network: Invalid argument
    Error while processing the decoded data for stream #0:0
    [h264 @ 0x44e91c0] nal_unit_type: 1, nal_ref_idc: 2
    [AVIOContext @ 0x43c0280] Statistics: 0 seeks, 0 writeouts
    [AVIOContext @ 0x42db980] Statistics: 174124 bytes read, 0 seeks
    Conversion failed!