Recherche avancée

Médias (2)

Mot : - Tags -/map

Autres articles (111)

  • Problèmes fréquents

    10 mars 2010, par

    PHP et safe_mode activé
    Une des principales sources de problèmes relève de la configuration de PHP et notamment de l’activation du safe_mode
    La solution consiterait à soit désactiver le safe_mode soit placer le script dans un répertoire accessible par apache pour le site

  • Prérequis à l’installation

    31 janvier 2010, par

    Préambule
    Cet article n’a pas pour but de détailler les installations de ces logiciels mais plutôt de donner des informations sur leur configuration spécifique.
    Avant toute chose SPIPMotion tout comme MediaSPIP est fait pour tourner sur des distributions Linux de type Debian ou dérivées (Ubuntu...). Les documentations de ce site se réfèrent donc à ces distributions. Il est également possible de l’utiliser sur d’autres distributions Linux mais aucune garantie de bon fonctionnement n’est possible.
    Il (...)

  • Déploiements possibles

    31 janvier 2010, par

    Deux types de déploiements sont envisageable dépendant de deux aspects : La méthode d’installation envisagée (en standalone ou en ferme) ; Le nombre d’encodages journaliers et la fréquentation envisagés ;
    L’encodage de vidéos est un processus lourd consommant énormément de ressources système (CPU et RAM), il est nécessaire de prendre tout cela en considération. Ce système n’est donc possible que sur un ou plusieurs serveurs dédiés.
    Version mono serveur
    La version mono serveur consiste à n’utiliser qu’une (...)

Sur d’autres sites (8585)

  • FFMPEG options for video streaming

    26 février 2014, par YorgZ

    I am trying to use ffmpeg to stream video using ffserver. You will find below the ffserver1.conf file, and the log output from the ffmpeg command.

    One of the errors references presets, and everytime I try to use presets I get the error "File not found, even after copying all the preset files in the current directory.

    Thanks for the help.

    YorgZ

    FFSERVER CONF

    YorgZ-Macbook$cat ffserver1.conf
    Port 8090
    BindAddress 0.0.0.0
    MaxHTTPConnections 2000
    MaxClients 1000
    MaxBandwidth 4000
    CustomLog -


    <feed>
         File feed1.ffm
         FileMaxSize 1G
         ACL allow 127.0.0.1
         ACL allow localhost
         ACL allow 10.0.0.0 10.0.255.255
    </feed>

    <stream>
       Feed feed1.ffm
       Format mp4
       VideoFrameRate  29.97
       VideoBitRate    500
       VideoSize   640x352
    </stream>

    <stream>
       Format status
       ACL allow localhost
       ACL allow 10.0.0.0 10.0.255.255
    </stream>
    YorgZ-Macbook$

    FFMPEG COMMAND AND LOG

    YorgZ-Macbook$./ffmpeg -loglevel debug -i TestStream.mp4  -codec:v libx264 -b:v 500k  -vf "scale=640:352" -r 29.97 -codec:a aac -b:a 128k http://127.0.0.1:8090/feed1.ffm

       ffmpeg version 2.1.3-tessus Copyright (c) 2000-2013 the FFmpeg developers
         built on Jan 16 2014 13:50:59 with llvm-gcc 4.2.1 (LLVM build 2336.1.00)
         configuration: --prefix=/Users/tessus/data/ext/ffmpeg/sw --as=yasm --extra-version=tessus --disable-shared --enable-static --disable-ffplay --enable-gpl --enable-pthreads --enable-postproc --enable-libmp3lame --enable-libtheora --enable-libvorbis --enable-libx264 --enable-libxvid --enable-libspeex --enable-bzlib --enable-zlib --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libxavs --enable-version3 --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-libvpx --enable-libgsm --enable-libopus --enable-fontconfig --enable-libfreetype --enable-libass --enable-libbluray --enable-filters --enable-runtime-cpudetect
         libavutil      52. 48.101 / 52. 48.101
         libavcodec     55. 39.101 / 55. 39.101
         libavformat    55. 19.104 / 55. 19.104
         libavdevice    55.  5.100 / 55.  5.100
         libavfilter     3. 90.100 /  3. 90.100
         libswscale      2.  5.101 /  2.  5.101
         libswresample   0. 17.104 /  0. 17.104
         libpostproc    52.  3.100 / 52.  3.100
       Splitting the commandline.
       Reading option &#39;-loglevel&#39; ... matched as option &#39;loglevel&#39; (set logging level) with argument &#39;debug&#39;.
       Reading option &#39;-i&#39; ... matched as input file with argument &#39;TestStream.mp4&#39;.
       Reading option &#39;-codec:v&#39; ... matched as option &#39;codec&#39; (codec name) with argument &#39;libx264&#39;.
       Reading option &#39;-b:v&#39; ... matched as option &#39;b&#39; (video bitrate (please use -b:v)) with argument &#39;500k&#39;.
       Reading option &#39;-vf&#39; ... matched as option &#39;vf&#39; (set video filters) with argument &#39;scale=640:352&#39;.
       Reading option &#39;-r&#39; ... matched as option &#39;r&#39; (set frame rate (Hz value, fraction or abbreviation)) with argument &#39;29.97&#39;.
       Reading option &#39;-codec:a&#39; ... matched as option &#39;codec&#39; (codec name) with argument &#39;aac&#39;.
       Reading option &#39;-b:a&#39; ... matched as option &#39;b&#39; (video bitrate (please use -b:v)) with argument &#39;128k&#39;.
       Reading option &#39;http://127.0.0.1:8090/feed1.ffm&#39; ... matched as output file.
       Finished splitting the commandline.
       Parsing a group of options: global .
       Applying option loglevel (set logging level) with argument debug.
       Successfully parsed a group of options.
       Parsing a group of options: input file TestStream.mp4.
       Successfully parsed a group of options.
       Opening an input file: TestStream.mp4.
       [mov,mp4,m4a,3gp,3g2,mj2 @ 0x10201a200] Format mov,mp4,m4a,3gp,3g2,mj2 probed with size=2048 and score=100
       [mov,mp4,m4a,3gp,3g2,mj2 @ 0x10201a200] ISO: File Type Major Brand: mp42
       [mov,mp4,m4a,3gp,3g2,mj2 @ 0x10201a200] File position before avformat_find_stream_info() is 33783
       [mov,mp4,m4a,3gp,3g2,mj2 @ 0x10201a200] All info found
       [mov,mp4,m4a,3gp,3g2,mj2 @ 0x10201a200] File position after avformat_find_stream_info() is 64138
       Input #0, mov,mp4,m4a,3gp,3g2,mj2, from &#39;TestStream.mp4&#39;:
         Metadata:
           major_brand     : mp42
           minor_version   : 0
           compatible_brands: isommp42
           creation_time   : 2014-02-17 10:17:06
         Duration: 00:01:40.10, start: 0.000000, bitrate: 582 kb/s
           Stream #0:0(und), 15, 1/30000: Video: h264 (Constrained Baseline) (avc1 / 0x31637661), yuv420p, 640x360 [SAR 1:1 DAR 16:9], 1001/60000, 483 kb/s, 29.97 fps, 29.97 tbr, 30k tbn, 59.94 tbc (default)
           Metadata:
             handler_name    : VideoHandler
           Stream #0:1(und), 1, 1/44100: Audio: aac (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 95 kb/s (default)
           Metadata:
             creation_time   : 2014-02-17 10:17:06
             handler_name    : IsoMedia File Produced by Google, 5-11-2011
       Successfully opened the file.
       Parsing a group of options: output file http://127.0.0.1:8090/feed1.ffm.
       Applying option codec:v (codec name) with argument libx264.
       Applying option b:v (video bitrate (please use -b:v)) with argument 500k.
       Applying option vf (set video filters) with argument scale=640:352.
       Applying option r (set frame rate (Hz value, fraction or abbreviation)) with argument 29.97.
       Applying option codec:a (codec name) with argument aac.
       Applying option b:a (video bitrate (please use -b:v)) with argument 128k.
       Successfully parsed a group of options.
       Opening an output file: http://127.0.0.1:8090/feed1.ffm.
       [ffm @ 0x102037200] Format ffm probed with size=2048 and score=101
       [AVIOContext @ 0x101d04fe0] Statistics: 4096 bytes read, 0 seeks
       Mon Feb 24 11:53:05 2014 127.0.0.1 - - [GET] "/feed1.ffm HTTP/1.1" 200 4175
       Successfully opened the file.
       detected 8 logical cores
       [graph 0 input from stream 0:1 @ 0x101d05a20] Setting &#39;time_base&#39; to value &#39;1/44100&#39;
       [graph 0 input from stream 0:1 @ 0x101d05a20] Setting &#39;sample_rate&#39; to value &#39;44100&#39;
       [graph 0 input from stream 0:1 @ 0x101d05a20] Setting &#39;sample_fmt&#39; to value &#39;fltp&#39;
       [graph 0 input from stream 0:1 @ 0x101d05a20] Setting &#39;channel_layout&#39; to value &#39;0x3&#39;
       [graph 0 input from stream 0:1 @ 0x101d05a20] tb:1/44100 samplefmt:fltp samplerate:44100 chlayout:0x3
       [audio format for output stream 0:0 @ 0x102d004e0] Setting &#39;sample_fmts&#39; to value &#39;s16&#39;
       [audio format for output stream 0:0 @ 0x102d004e0] Setting &#39;sample_rates&#39; to value &#39;22050&#39;
       [audio format for output stream 0:0 @ 0x102d004e0] Setting &#39;channel_layouts&#39; to value &#39;0x4&#39;
       [audio format for output stream 0:0 @ 0x102d004e0] auto-inserting filter &#39;auto-inserted resampler 0&#39; between the filter &#39;Parsed_anull_0&#39; and the filter &#39;audio format for output stream 0:0&#39;
       [AVFilterGraph @ 0x101d03ea0] query_formats: 4 queried, 6 merged, 3 already done, 0 delayed
       0.500000 0.500000
       [auto-inserted resampler 0 @ 0x102d00ca0] ch:2 chl:stereo fmt:fltp r:44100Hz -> ch:1 chl:mono fmt:s16 r:22050Hz
       [graph 1 input from stream 0:0 @ 0x103b003a0] Setting &#39;video_size&#39; to value &#39;640x360&#39;
       [graph 1 input from stream 0:0 @ 0x103b003a0] Setting &#39;pix_fmt&#39; to value &#39;0&#39;
       [graph 1 input from stream 0:0 @ 0x103b003a0] Setting &#39;time_base&#39; to value &#39;1/30000&#39;
       [graph 1 input from stream 0:0 @ 0x103b003a0] Setting &#39;pixel_aspect&#39; to value &#39;1/1&#39;
       [graph 1 input from stream 0:0 @ 0x103b003a0] Setting &#39;sws_param&#39; to value &#39;flags=2&#39;
       [graph 1 input from stream 0:0 @ 0x103b003a0] Setting &#39;frame_rate&#39; to value &#39;30000/1001&#39;
       [graph 1 input from stream 0:0 @ 0x103b003a0] w:640 h:360 pixfmt:yuv420p tb:1/30000 fr:30000/1001 sar:1/1 sws_param:flags=2
       [scaler for output stream 0:1 @ 0x103b00900] Setting &#39;w&#39; to value &#39;640&#39;
       [scaler for output stream 0:1 @ 0x103b00900] Setting &#39;h&#39; to value &#39;352&#39;
       [scaler for output stream 0:1 @ 0x103b00900] Setting &#39;flags&#39; to value &#39;0x4&#39;
       [scaler for output stream 0:1 @ 0x103b00900] w:640 h:352 flags:&#39;0x4&#39; interl:0
       [format @ 0x103b00dc0] compat: called with args=[yuv420p|yuvj420p|yuv422p|yuvj422p|yuv444p|yuvj444p|nv12|nv16]
       [format @ 0x103b00dc0] Setting &#39;pix_fmts&#39; to value &#39;yuv420p|yuvj420p|yuv422p|yuvj422p|yuv444p|yuvj444p|nv12|nv16&#39;
       [AVFilterGraph @ 0x102d00fc0] query_formats: 5 queried, 4 merged, 0 already done, 0 delayed
       [scaler for output stream 0:1 @ 0x103b00900] w:640 h:360 fmt:yuv420p sar:1/1 -> w:640 h:352 fmt:yuv420p sar:44/45 flags:0x4
       [libx264 @ 0x102049800] broken ffmpeg default settings detected
       [libx264 @ 0x102049800] use an encoding preset (e.g. -vpre medium)
       [libx264 @ 0x102049800] preset usage: -vpre <speed> -vpre <profile>
       [libx264 @ 0x102049800] speed presets are listed in x264 --help
       [libx264 @ 0x102049800] profile is optional; x264 defaults to high
       Output #0, ffm, to &#39;http://127.0.0.1:8090/feed1.ffm&#39;:
         Metadata:
           major_brand     : mp42
           minor_version   : 0
           compatible_brands: isommp42
           creation_time   : now
           Stream #0:0(und), 0, 1/1000000: Audio: aac (libvo_aacenc), 22050 Hz, mono, s16, 128 kb/s (default)
           Metadata:
             creation_time   : 2014-02-17 10:17:06
             handler_name    : IsoMedia File Produced by Google, 5-11-2011
           Stream #0:1(und), 0, 1/1000000: Video: h264 ([33][0][0][0] / 0x0021), yuv420p, 640x352 [SAR 44:45 DAR 16:9], 1001/30000, q=2-31, 500 kb/s, 1000k tbn, 29.97 tbc (default)
           Metadata:
             handler_name    : VideoHandler
       Stream mapping:
         Stream #0:1 -> #0:0 (aac -> libvo_aacenc)
         Stream #0:0 -> #0:1 (h264 -> libx264)
       Error while opening encoder for output stream #0:1 - maybe incorrect parameters such as bit_rate, rate, width or height
       [AVIOContext @ 0x101d04fe0] Statistics: 0 seeks, 0 writeouts
       [AVIOContext @ 0x101d03fa0] Statistics: 65536 bytes read, 0 seeks
       Mon Feb 24 11:53:05 2014 127.0.0.1 - - [POST] "/feed1.ffm HTTP/1.1" 200 0
       YorgZ-Macbook$
    </profile></speed>
  • FFmpeg is using more threads than I expect when using -threads

    7 décembre 2016, par Tom Peters

    The number of actual threads used by FFmpeg do not line up with the number I pass using the -threads argument.

    I’ve run tests on both my MacBook Air, which has 4 cores, and a VM I have which has 2 cores. The number of threads used are consistent across both machines.

    Using a single thread returns what I would expect : 1 thread is used.

    $ ffmpeg -threads 1 -i clip.mp4 -threads 1 -acodec libfdk_aac -vcodec libx264 -b:v 200k -vf scale=200:-2 -y clip-200.mp4

    $ cat /proc/$(pgrep ffmpeg)/status | grep Threads
    Threads:        1

    If I set the -threads option on the input, it increase the number of threads used to 3. This somewhat makes sense to me since the input would use 2 threads and the output would use a single thread.

    $ ffmpeg -threads 2 -i clip.mp4 -threads 1 -acodec libfdk_aac -vcodec libx264 -b:v 200k -vf scale=200:-2 -y clip-200.mp4

    $ cat /proc/$(pgrep ffmpeg)/status | grep Threads
    Threads:        3

    This is where I start to get confused. If instead, I leave the input -threads at 1 and set the output -threads to 2, it uses 8 threads (not 3 like I would expect).

    $ ffmpeg -threads 1 -i clip.mp4 -threads 2 -acodec libfdk_aac -vcodec libx264 -b:v 200k -vf scale=200:-2 -y clip-200.mp4

    cat /proc/$(pgrep ffmpeg)/status | grep Threads
    Threads:        8

    If I add a second output with -threads 1, it does not increase the number of threads used.

    $ ffmpeg -threads 1 -i clip.mp4 -threads 2 -acodec libfdk_aac -vcodec libx264 -b:v 200k -vf scale=200:-2 -y clip-200.mp4 \
                                   -threads 1 -acodec libfdk_aac -vcodec libx264 -b:v 250k -vf scale=250:-2 -y clip-250.mp4

    cat /proc/$(pgrep ffmpeg)/status | grep Threads
    Threads:        8

    However, if the second output also specifies two threads, the thread count jumps to 15.

    $ ffmpeg -threads 1 -i clip.mp4 -threads 2 -acodec libfdk_aac -vcodec libx264 -b:v 200k -vf scale=200:-2 -y clip-200.mp4 \
                                   -threads 2 -acodec libfdk_aac -vcodec libx264 -b:v 250k -vf scale=250:-2 -y clip-250.mp4

    cat /proc/$(pgrep ffmpeg)/status | grep Threads
    Threads:        15

    Every incremental bump beyond -threads 2 will use an additional 3 threads (e.g. threads 2 uses 8, threads 3 uses 11, threads 4 uses 14.

    So it seems like anytime you use -threads 2 the formula is something like :

    1 + [ (1 + (3 * output_n_threads)) + ... ]

    Ultimately my question is why do the number of actual threads used wildly differ from the options I’m specifying.

    Thanks.

  • lavc/flacdsp : optimise RVV vector type for lpc16

    14 mai 2024, par Rémi Denis-Courmont
    lavc/flacdsp : optimise RVV vector type for lpc16
    

    This calculates the optimal vector type value at run-time based on the
    hardware vector length and the FLAC LPC prediction order. In this
    particular case, the additional computation is easily amortised over
    the loop iterations :

    T-Head C908 :
    C V before V after
    1 48.0 214.7 95.2
    2 64.7 214.2 94.7
    3 79.7 213.5 94.5
    4 96.2 196.5 94.2 #
    5 111.0 195.7 118.5
    6 127.0 211.2 102.0
    7 143.7 194.2 101.5
    8 175.7 193.2 101.2 #
    9 176.2 224.2 126.0
    10 191.5 192.0 125.5
    11 224.5 191.2 124.7
    12 223.0 190.2 124.2
    13 239.2 189.5 123.7
    14 253.7 188.7 139.5
    15 286.2 188.0 122.7
    16 284.0 187.0 122.5 #
    17 300.2 186.5 186.5
    18 314.0 185.5 185.7
    19 329.7 184.7 185.0
    20 343.0 184.2 184.2
    21 358.7 199.2 183.7
    22 371.7 182.7 182.7
    23 387.5 181.7 182.0
    24 400.7 181.0 181.2
    25 431.5 180.2 196.5
    26 443.7 195.5 196.0
    27 459.0 178.7 196.2
    28 470.7 177.7 194.2
    29 470.0 177.0 193.5
    30 481.2 176.2 176.5
    31 496.2 175.5 175.7
    32 507.2 174.7 191.0 #

    # Power of two boundary.

    With 128-bit vectors, improvements are expected for the first two
    test cases only. For the other two, there is overhead but below noise.
    Improvements should be better observable with prediction order of 8
    and less, or on hardware with larger vector sizes.

    • [DH] libavcodec/riscv/flacdsp_init.c
    • [DH] libavcodec/riscv/flacdsp_rvv.S