Recherche avancée

Médias (91)

Autres articles (33)

  • MediaSPIP v0.2

    21 juin 2013, par

    MediaSPIP 0.2 is the first MediaSPIP stable release.
    Its official release date is June 21, 2013 and is announced here.
    The zip file provided here only contains the sources of MediaSPIP in its standalone version.
    To get a working installation, you must manually install all-software dependencies on the server.
    If you want to use this archive for an installation in "farm mode", you will also need to proceed to other manual (...)

  • HTML5 audio and video support

    13 avril 2011, par

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

  • De l’upload à la vidéo finale [version standalone]

    31 janvier 2010, par

    Le chemin d’un document audio ou vidéo dans SPIPMotion est divisé en trois étapes distinctes.
    Upload et récupération d’informations de la vidéo source
    Dans un premier temps, il est nécessaire de créer un article SPIP et de lui joindre le document vidéo "source".
    Au moment où ce document est joint à l’article, deux actions supplémentaires au comportement normal sont exécutées : La récupération des informations techniques des flux audio et video du fichier ; La génération d’une vignette : extraction d’une (...)

Sur d’autres sites (4776)

  • Converting series of images with ffmpeg results in black video [migrated]

    27 avril 2013, par Marco Gagliardi

    I've just downloaded ffmpeg since it seems to perfectly match my needs (make a video from a set of pictures). I'm currently playing around with some examples just to get started and there's something weird happening that I can't explain.
    I'm trying this command (provided in the official documentation) :

    ffmpeg -f image2 -pattern_type glob -i 'foo-*.jpeg' -r 12 -s WxH foo.avi

    on a data set of 10 jpg pictures (of course I changed the pattern with '*.jpg'). The video seems to be encoded correctly but it's simply too fast to be sure about that (anyway it stops on the last frame that corresponds to the last picture). In order to get a longer video i thought to low the frame rate from 12 to 1 (one sec each picture) or 0.5 (2 sec each one) and so on.. no way ! with low rate values even if the video is played the pictures are simply not displayed. The player (VLC in my case) just shows a blank/empty video for a few seconds.

    Am I making something wrong or have I misunderstood the -r parameter ? Is it something related to codecs involved ? Finally.. How can i get each picture displayed for 1 or 2 seconds ?

    Here's the output :

    MacBook-Pro$ ffmpeg -f image2 -pattern_type glob -i '*.jpg' -r 1 -s 200x300 foo.avi
    ffmpeg version N-52517-g1e4f75d Copyright (c) 2000-2013 the FFmpeg developers
     built on Apr 27 2013 19:41:11 with llvm-gcc 4.2.1 (LLVM build 2336.11.00)
     configuration: --disable-yasm
     libavutil      52. 27.101 / 52. 27.101
     libavcodec     55.  6.100 / 55.  6.100
     libavformat    55.  3.100 / 55.  3.100
     libavdevice    55.  0.100 / 55.  0.100
     libavfilter     3. 61.100 /  3. 61.100
     libswscale      2.  2.100 /  2.  2.100
     libswresample   0. 17.102 /  0. 17.102
    Input #0, image2, from '*.jpg':
     Duration: 00:00:00.40, start: 0.000000, bitrate: N/A
       Stream #0:0: Video: mjpeg, yuvj422p, 2560x1920 [SAR 1:1 DAR 4:3], 25 fps, 25 tbr, 25 tbn, 25 tbc
    File 'foo.avi' already exists. Overwrite ? [y/N] y
    Output #0, avi, to 'foo.avi':
     Metadata:
       ISFT            : Lavf55.3.100
       Stream #0:0: Video: mpeg4 (FMP4 / 0x34504D46), yuv420p, 200x300 [SAR 2:1 DAR 4:3], q=2-31, 200 kb/s, 1 tbn, 1 tbc
    Stream mapping:
     Stream #0:0 -> #0:0 (mjpeg -> mpeg4)
    Press [q] to stop, [?] for help
    frame=    2 fps=0.0 q=2.0 Lsize=      43kB time=00:00:02.00 bitrate= 177.1kbits/s dup=0 drop=8    
    video:38kB audio:0kB subtitle:0 global headers:0kB muxing overhead 15.099197%
    MacBook-Pro$
  • FFmpeg -filter_complex_script crop & blurbox with time based values

    6 juin 2021, par user1503606

    I am trying to create a script that will move a blur boxed across a video based on x and y cords in a text script.

    


    I can easily create a blur box with the following ffmpeg command.

    


    ffmpeg -y -i pex.mp4 -filter_complex_script cropblur.txt -map "[v]" out_crop.mp4


    


    The cropblur.txt has the following.

    


    [0:v]crop=400:400:300:350,boxblur=10[fg]; [0:v][fg]overlay=300:350:enable='between(t\,0\,5)'[v]


    


    This creates this.

    


    enter image description here

    


    What I want is the blur box to move across where the lady is running.

    


    enter image description here

    


    She obviously runs out from where the box is positioned.

    


    I can create a script where I can track the correct x and y positions for the blox using jquery ui or something I just dont understand how to implement this in a filter_complex_script.

    


    I thought it would be a simple as just appending to the script something like this.

    


    [0:v]crop=400:400:300:350,boxblur=10[fg]; [0:v][fg]overlay=300:350:enable='between(t\,0\,2)'[v]
[0:v]crop=200:200:200:360,boxblur=10[fg]; [0:v][fg]overlay=300:350:enable='between(t\,2\,3)'[v]
[0:v]crop=200:200:200:370,boxblur=10[fg]; [0:v][fg]overlay=300:350:enable='between(t\,3\,4)'[v]
[0:v]crop=200:200:200:380,boxblur=10[fg]; [0:v][fg]overlay=300:350:enable='between(t\,4\,5)'[v]


    


    Changing the time and the x position based on the incremented time.

    


    If I run this script I get this error.

    


    No output pad can be associated to link label '0:v'


    


    Obviously I am doing something wrong but I cannot find any documentation that really helps me understand how to do this https://ffmpeg.org/ffmpeg.html the official docs dont really help.

    


    I could do it by running multiple passes like this.

    


    ffmpeg -y -i pex.mp4 -filter_complex "[0:v]crop=400:400:300:350,boxblur=10[fg]; [0:v][fg]overlay=300:350:enable='between(t\,0\,2)'[v]" -map "[v]" out_crop.mp4 && ffmpeg -y -i out_crop.mp4 -filter_complex "[0:v]crop=200:200:200:360,boxblur=10[fg]; [0:v][fg]overlay=300:350:enable='between(t\,2\,3)'[v]" -map "[v]" out_crop2.mp4


    


    I Would just really like to understand how to use the filter complex scripts in this way ?

    


    Any help would be great.

    


    Thanks

    


  • ARM inline asm secrets

    6 juillet 2010, par Mans — ARM, Compilers

    Although I generally recommend against using GCC inline assembly, preferring instead pure assembly code in separate files, there are occasions where inline is the appropriate solution. Should one, at a time like this, turn to the GCC documentation for guidance, one must be prepared for a degree of disappointment. As it happens, much of the inline asm syntax is left entirely undocumented. This article attempts to fill in some of the blanks for the ARM target.

    Constraints

    Each operand of an inline asm block is described by a constraint string encoding the valid representations of the operand in the generated assembly. For example the “r” code denotes a general-purpose register. In addition to the standard constraints, ARM allows a number of special codes, only some of which are documented. The full list, including a brief description, is available in the constraints.md file in the GCC source tree. The following table is an extract from this file consisting of the codes which are meaningful in an inline asm block (a few are only useful in the machine description itself).

    f Legacy FPA registers f0-f7.
    t The VFP registers s0-s31.
    v The Cirrus Maverick co-processor registers.
    w The VFP registers d0-d15, or d0-d31 for VFPv3.
    x The VFP registers d0-d7.
    y The Intel iWMMX co-processor registers.
    z The Intel iWMMX GR registers.
    l In Thumb state the core registers r0-r7.
    h In Thumb state the core registers r8-r15.
    j A constant suitable for a MOVW instruction. (ARM/Thumb-2)
    b Thumb only. The union of the low registers and the stack register.
    I In ARM/Thumb-2 state a constant that can be used as an immediate value in a Data Processing instruction. In Thumb-1 state a constant in the range 0 to 255.
    J In ARM/Thumb-2 state a constant in the range -4095 to 4095. In Thumb-1 state a constant in the range -255 to -1.
    K In ARM/Thumb-2 state a constant that satisfies the I constraint if inverted. In Thumb-1 state a constant that satisfies the I constraint multiplied by any power of 2.
    L In ARM/Thumb-2 state a constant that satisfies the I constraint if negated. In Thumb-1 state a constant in the range -7 to 7.
    M In Thumb-1 state a constant that is a multiple of 4 in the range 0 to 1020.
    N Thumb-1 state a constant in the range 0 to 31.
    O In Thumb-1 state a constant that is a multiple of 4 in the range -508 to 508.
    Pa In Thumb-1 state a constant in the range -510 to +510
    Pb In Thumb-1 state a constant in the range -262 to +262
    Ps In Thumb-2 state a constant in the range -255 to +255
    Pt In Thumb-2 state a constant in the range -7 to +7
    G In ARM/Thumb-2 state a valid FPA immediate constant.
    H In ARM/Thumb-2 state a valid FPA immediate constant when negated.
    Da In ARM/Thumb-2 state a const_int, const_double or const_vector that can be generated with two Data Processing insns.
    Db In ARM/Thumb-2 state a const_int, const_double or const_vector that can be generated with three Data Processing insns.
    Dc In ARM/Thumb-2 state a const_int, const_double or const_vector that can be generated with four Data Processing insns. This pattern is disabled if optimizing for space or when we have load-delay slots to fill.
    Dn In ARM/Thumb-2 state a const_vector which can be loaded with a Neon vmov immediate instruction.
    Dl In ARM/Thumb-2 state a const_vector which can be used with a Neon vorr or vbic instruction.
    DL In ARM/Thumb-2 state a const_vector which can be used with a Neon vorn or vand instruction.
    Dv In ARM/Thumb-2 state a const_double which can be used with a VFP fconsts instruction.
    Dy In ARM/Thumb-2 state a const_double which can be used with a VFP fconstd instruction.
    Ut In ARM/Thumb-2 state an address valid for loading/storing opaque structure types wider than TImode.
    Uv In ARM/Thumb-2 state a valid VFP load/store address.
    Uy In ARM/Thumb-2 state a valid iWMMX load/store address.
    Un In ARM/Thumb-2 state a valid address for Neon doubleword vector load/store instructions.
    Um In ARM/Thumb-2 state a valid address for Neon element and structure load/store instructions.
    Us In ARM/Thumb-2 state a valid address for non-offset loads/stores of quad-word values in four ARM registers.
    Uq In ARM state an address valid in ldrsb instructions.
    Q In ARM/Thumb-2 state an address that is a single base register.

    Operand codes

    Within the text of an inline asm block, operands are referenced as %0, %1 etc. Register operands are printed as rN, memory operands as [rN, #offset], and so forth. In some situations, for example with operands occupying multiple registers, more detailed control of the output may be required, and once again, an undocumented feature comes to our rescue.

    Special code letters inserted between the % and the operand number alter the output from the default for each type of operand. The table below lists the more useful ones.

    c An integer or symbol address without a preceding # sign
    B Bitwise inverse of integer or symbol without a preceding #
    L The low 16 bits of an immediate constant
    m The base register of a memory operand
    M A register range suitable for LDM/STM
    H The highest-numbered register of a pair
    Q The least significant register of a pair
    R The most significant register of a pair
    P A double-precision VFP register
    p The high single-precision register of a VFP double-precision register
    q A NEON quad register
    e The low doubleword register of a NEON quad register
    f The high doubleword register of a NEON quad register
    h A range of VFP/NEON registers suitable for VLD1/VST1
    A A memory operand for a VLD1/VST1 instruction
    y S register as indexed D register, e.g. s5 becomes d2[1]