Recherche avancée

Médias (91)

Autres articles (108)

  • Websites made ​​with MediaSPIP

    2 mai 2011, par

    This page lists some websites based on MediaSPIP.

  • Creating farms of unique websites

    13 avril 2011, par

    MediaSPIP platforms can be installed as a farm, with a single "core" hosted on a dedicated server and used by multiple websites.
    This allows (among other things) : implementation costs to be shared between several different projects / individuals rapid deployment of multiple unique sites creation of groups of like-minded sites, making it possible to browse media in a more controlled and selective environment than the major "open" (...)

  • Contribute to a better visual interface

    13 avril 2011

    MediaSPIP is based on a system of themes and templates. Templates define the placement of information on the page, and can be adapted to a wide range of uses. Themes define the overall graphic appearance of the site.
    Anyone can submit a new graphic theme or template and make it available to the MediaSPIP community.

Sur d’autres sites (6893)

  • How to convert to QString from const char* result from ffmpeg C function

    18 octobre 2022, par Lucas

    I use the ffmpeg library in c++ / qt project

    


    extern "C" {&#xA;    #include <libavformat></libavformat>avformat.h>&#xA;    #include <libavutil></libavutil>dict.h>&#xA;}&#xA;

    &#xA;

    With this I read the media metadata from a local music file. This works quite fine :

    &#xA;

    avformat_open_input(&amp;format_song, path, NULL, NULL);&#xA;&#xA;while((tag = av_dict_get(format_song->metadata, "", tag, AV_DICT_IGNORE_SUFFIX))){&#xA;                std::cout &lt;&lt; tag.key &lt;&lt; tag.value &lt;&lt; std::endl;&#xA;                // tag.value is a const char* (but in C!?)&#xA;}&#xA;

    &#xA;

    Altough the encoding of the tag.value seems to be different for files (maybe saved different in the id3tags). Here are some examples of different title values for different files :

    &#xA;

    "T&#xC3;&#xB6;hne" [&#xF6;]&#xA;"Die &#xC3;„rzte" [&#xC4;]&#xA;"F&#xFC;r Immer"&#xA;

    &#xA;

    How to convert this to a readable QString ?

    &#xA;

    There are some problems with the encoding of special characters. For most cases the following works :

    &#xA;

    QString result = QString(tag->value).normalized(QString::NormalizationForm_C);&#xA;//or:&#xA;QString result = QString::fromUtf8(tag->value);&#xA;

    &#xA;

    But sometimes this results in a U+FFFD � REPLACEMENT CHARACTER for some "Ü" "Ä" "ß" etc. chars.&#xA;But in in that cases fromLocal8Bit works. So I end up testing for replacement characters and choose a different conversion :

    &#xA;

    if(result.contains(QChar::ReplacementCharacter)){&#xA;      result = QString::fromLocal8Bit(tag->value);&#xA;}&#xA;

    &#xA;

    I expect there is a better way to do this ?

    &#xA;

  • x86/lpc : implement a new Welch windowing function

    19 septembre 2022, par Lynne
    x86/lpc : implement a new Welch windowing function
    

    Old one was written with the assumption only even inputs would be given.
    This very messy replacement supports even and odd inputs, and supports
    AVX2 for extra speed. The buffers given are usually quite big (4k samples),
    so the speedup is worth it.
    The new SSE version is still faster than the old inline asm version by 33%.

    Also checkasm is provided to make sure this monstrosity works.

    This fixes some FATE tests.

    • [DH] libavcodec/x86/Makefile
    • [DH] libavcodec/x86/lpc.asm
    • [DH] libavcodec/x86/lpc.c
    • [DH] libavcodec/x86/lpc_init.c
    • [DH] tests/checkasm/Makefile
    • [DH] tests/checkasm/checkasm.c
    • [DH] tests/checkasm/checkasm.h
    • [DH] tests/checkasm/lpc.c
  • avcodec/vp8, vp9 : Avoid using VP56mv and VP56Frame in VP8/9

    23 juillet 2022, par Andreas Rheinhardt
    avcodec/vp8, vp9 : Avoid using VP56mv and VP56Frame in VP8/9
    

    Instead replace VP56mv by new and identical structures VP8mv and VP9mv.
    Also replace VP56Frame by VP8FrameType in vp8.h and use that
    in VP8 code. Also remove VP56_FRAME_GOLDEN2, as this has only
    been used by VP8, and use VP8_FRAME_ALTREF as replacement for
    its usage in VP8 as this is more in line with VP8 verbiage.

    This allows to remove all inclusions of vp56.h from everything
    that is not VP5/6. This also removes implicit inclusions
    of hpeldsp.h, h264chroma.h, vp3dsp.h and vp56dsp.h from all VP8/9
    files.

    (This also fixes a build issue : If one compiles with -O0 and disables
    everything except the VP8-VAAPI encoder, the file containing
    ff_vpx_norm_shift is not compiled, yet this is used implicitly
    by vp56_rac_gets_nn() which is defined in vp56.h ; it is unused
    by the VP8-VAAPI encoder and declared as av_unused, yet with -O0
    unused noninline functions are not optimized away, leading to
    linking failures. With this patch, said function is not included
    in vaapi_encode_vp8.c any more.)

    Signed-off-by : Andreas Rheinhardt <andreas.rheinhardt@outlook.com>

    • [DH] libavcodec/nvdec_vp8.c
    • [DH] libavcodec/vaapi_vp8.c
    • [DH] libavcodec/vp56.h
    • [DH] libavcodec/vp8.c
    • [DH] libavcodec/vp8.h
    • [DH] libavcodec/vp9.c
    • [DH] libavcodec/vp9_mc_template.c
    • [DH] libavcodec/vp9block.c
    • [DH] libavcodec/vp9dec.h
    • [DH] libavcodec/vp9mvs.c
    • [DH] libavcodec/vp9prob.c
    • [DH] libavcodec/vp9recon.c
    • [DH] libavcodec/vp9shared.h