Recherche avancée

Médias (91)

Autres articles (53)

  • Publier sur MédiaSpip

    13 juin 2013

    Puis-je poster des contenus à partir d’une tablette Ipad ?
    Oui, si votre Médiaspip installé est à la version 0.2 ou supérieure. Contacter au besoin l’administrateur de votre MédiaSpip pour le savoir

  • 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

  • Mise à disposition des fichiers

    14 avril 2011, par

    Par défaut, lors de son initialisation, MediaSPIP ne permet pas aux visiteurs de télécharger les fichiers qu’ils soient originaux ou le résultat de leur transformation ou encodage. Il permet uniquement de les visualiser.
    Cependant, il est possible et facile d’autoriser les visiteurs à avoir accès à ces documents et ce sous différentes formes.
    Tout cela se passe dans la page de configuration du squelette. Il vous faut aller dans l’espace d’administration du canal, et choisir dans la navigation (...)

Sur d’autres sites (7100)

  • avfilter/vf_removegrain : replace qsort with AV_QSORT

    25 octobre 2015, par Ganesh Ajjanagadde
    avfilter/vf_removegrain : replace qsort with AV_QSORT
    

    filter_slice calls qsort, so qsort is in a performance critical
    position. AV_QSORT is substantially faster due to the inlining of the
    comparison callback. Thus, the increase in performance is worth the
    increase in binary size.

    Sample benchmark (x86-64, Haswell, GNU/Linux),
    filter-removegrain-mode-02 (from FATE)
    new :
    24060 decicycles in qsort, 1 runs, 0 skips
    15690 decicycles in qsort, 2 runs, 0 skips
    9307 decicycles in qsort, 4 runs, 0 skips
    5572 decicycles in qsort, 8 runs, 0 skips
    3485 decicycles in qsort, 16 runs, 0 skips
    2517 decicycles in qsort, 32 runs, 0 skips
    1979 decicycles in qsort, 64 runs, 0 skips
    1911 decicycles in qsort, 128 runs, 0 skips
    1568 decicycles in qsort, 256 runs, 0 skips
    1596 decicycles in qsort, 512 runs, 0 skips
    1614 decicycles in qsort, 1024 runs, 0 skips
    1874 decicycles in qsort, 2046 runs, 2 skips
    2186 decicycles in qsort, 4094 runs, 2 skips

    old :
    246960 decicycles in qsort, 1 runs, 0 skips
    135765 decicycles in qsort, 2 runs, 0 skips
    70920 decicycles in qsort, 4 runs, 0 skips
    37710 decicycles in qsort, 8 runs, 0 skips
    20831 decicycles in qsort, 16 runs, 0 skips
    12225 decicycles in qsort, 32 runs, 0 skips
    8083 decicycles in qsort, 64 runs, 0 skips
    6270 decicycles in qsort, 128 runs, 0 skips
    5321 decicycles in qsort, 256 runs, 0 skips
    4860 decicycles in qsort, 512 runs, 0 skips
    4424 decicycles in qsort, 1024 runs, 0 skips
    4191 decicycles in qsort, 2046 runs, 2 skips
    4934 decicycles in qsort, 4094 runs, 2 skips

    Reviewed-by : Michael Niedermayer <michael@niedermayer.cc>
    Signed-off-by : Ganesh Ajjanagadde <gajjanagadde@gmail.com>

    • [DH] libavfilter/vf_removegrain.c
  • avcodec/huffman : replace qsort with AV_QSORT

    23 octobre 2015, par Ganesh Ajjanagadde
    avcodec/huffman : replace qsort with AV_QSORT
    

    ff_huff_build_tree uses qsort underneath. AV_QSORT is substantially
    faster due to the inlining of the comparison callback. Furthermore, this
    code is reasonably performance critical, since in e.g the fraps codec,
    ff_huff_build_tree is called on every frame. This routine is also called
    in vp6 on every frame in some circumstances.

    Sample benchmark (x86-64, Haswell, GNU/Linux), vp6 from FATE :
    vp6 (old) :
    78930 decicycles in qsort, 1 runs, 0 skips
    45330 decicycles in qsort, 2 runs, 0 skips
    27825 decicycles in qsort, 4 runs, 0 skips
    17471 decicycles in qsort, 8 runs, 0 skips
    12296 decicycles in qsort, 16 runs, 0 skips
    9554 decicycles in qsort, 32 runs, 0 skips
    8404 decicycles in qsort, 64 runs, 0 skips
    7405 decicycles in qsort, 128 runs, 0 skips
    6740 decicycles in qsort, 256 runs, 0 skips
    7540 decicycles in qsort, 512 runs, 0 skips
    9498 decicycles in qsort, 1024 runs, 0 skips
    9938 decicycles in qsort, 2048 runs, 0 skips
    8043 decicycles in qsort, 4095 runs, 1 skips

    vp6 (new) :
    15880 decicycles in qsort, 1 runs, 0 skips
    10730 decicycles in qsort, 2 runs, 0 skips
    10155 decicycles in qsort, 4 runs, 0 skips
    7805 decicycles in qsort, 8 runs, 0 skips
    6883 decicycles in qsort, 16 runs, 0 skips
    6305 decicycles in qsort, 32 runs, 0 skips
    5854 decicycles in qsort, 64 runs, 0 skips
    5152 decicycles in qsort, 128 runs, 0 skips
    4452 decicycles in qsort, 256 runs, 0 skips
    4161 decicycles in qsort, 511 runs, 1 skips
    4081 decicycles in qsort, 1023 runs, 1 skips
    4072 decicycles in qsort, 2047 runs, 1 skips
    4004 decicycles in qsort, 4095 runs, 1 skips

    Reviewed-by : Timothy Gu <timothygu99@gmail.com>
    Reviewed-by : Michael Niedermayer <michael@niedermayer.cc>
    Signed-off-by : Ganesh Ajjanagadde <gajjanagadde@gmail.com>

    • [DH] libavcodec/huffman.c
  • avutil/mathematics : speed up av_gcd by using Stein’s binary GCD algorithm

    11 octobre 2015, par Ganesh Ajjanagadde
    avutil/mathematics : speed up av_gcd by using Stein’s binary GCD algorithm
    

    This uses Stein’s binary GCD algorithm :
    https://en.wikipedia.org/wiki/Binary_GCD_algorithm
    to get a roughly 4x speedup over Euclidean GCD on standard architectures
    with a compiler intrinsic for ctzll, and a roughly 2x speedup otherwise.
    At the moment, the compiler intrinsic is used on GCC and Clang due to
    its easy availability.

    Quick note regarding overflow : yes, subtractions on int64_t can, but the
    llabs takes care of that. The llabs is also guaranteed to be safe, with
    no annoying INT64_MIN business since INT64_MIN being a power of 2, is
    shifted down before being sent to llabs.

    The binary GCD needs ff_ctzll, an extension of ff_ctz for long long (int64_t). On
    GCC, this is provided by a built-in. On Microsoft, there is a
    BitScanForward64 analog of BitScanForward that should work ; but I can’t confirm.
    Apparently it is not available on 32 bit builds ; so this may or may not
    work correctly. On Intel, per the documentation there is only an
    intrinsic for _bit_scan_forward and people have posted on forums
    regarding _bit_scan_forward64, but often their documentation is
    woeful. Again, I don’t have it, so I can’t test.

    As such, to be safe, for now only the GCC/Clang intrinsic is added, the rest
    use a compiled version based on the De-Bruijn method of Leiserson et al :
    http://supertech.csail.mit.edu/papers/debruijn.pdf.

    Tested with FATE, sample benchmark (x86-64, GCC 5.2.0, Haswell)
    with a START_TIMER and STOP_TIMER in libavutil/rationsl.c, followed by a
    make fate.

    aac-am00_88.err :
    builtin :
    714 decicycles in av_gcd, 4095 runs, 1 skips

    de-bruijn :
    1440 decicycles in av_gcd, 4096 runs, 0 skips

    previous :
    2889 decicycles in av_gcd, 4096 runs, 0 skips

    Signed-off-by : Ganesh Ajjanagadde <gajjanagadde@gmail.com>
    Signed-off-by : Michael Niedermayer <michael@niedermayer.cc>

    • [DH] libavutil/intmath.h
    • [DH] libavutil/mathematics.c