Recherche avancée

Médias (1)

Mot : - Tags -/swfupload

Autres articles (51)

  • La file d’attente de SPIPmotion

    28 novembre 2010, par

    Une file d’attente stockée dans la base de donnée
    Lors de son installation, SPIPmotion crée une nouvelle table dans la base de donnée intitulée spip_spipmotion_attentes.
    Cette nouvelle table est constituée des champs suivants : id_spipmotion_attente, l’identifiant numérique unique de la tâche à traiter ; id_document, l’identifiant numérique du document original à encoder ; id_objet l’identifiant unique de l’objet auquel le document encodé devra être attaché automatiquement ; objet, le type d’objet auquel (...)

  • Contribute to documentation

    13 avril 2011

    Documentation is vital to the development of improved technical capabilities.
    MediaSPIP welcomes documentation by users as well as developers - including : critique of existing features and functions articles contributed by developers, administrators, content producers and editors screenshots to illustrate the above translations of existing documentation into other languages
    To contribute, register to the project users’ mailing (...)

  • Selection of projects using MediaSPIP

    2 mai 2011, par

    The examples below are representative elements of MediaSPIP specific uses for specific projects.
    MediaSPIP farm @ Infini
    The non profit organizationInfini develops hospitality activities, internet access point, training, realizing innovative projects in the field of information and communication technologies and Communication, and hosting of websites. It plays a unique and prominent role in the Brest (France) area, at the national level, among the half-dozen such association. Its members (...)

Sur d’autres sites (6722)

  • swresample/resample : speed up upsampling by precomputing sines

    9 novembre 2015, par Ganesh Ajjanagadde
    swresample/resample : speed up upsampling by precomputing sines
    

    When upsampling, factor is set to 1 and sines need to be evaluated only
    once for each phase, and the complexity should not depend on the number
    of filter taps. This does the desired precomputation, yielding
    significant speedups. Hard guarantees on the gain are not possible, but gains
    themselves are obvious and are illustrated below.

    Sample benchmark (x86-64, Haswell, GNU/Linux)
    test : fate-swr-resample-dblp-2626-44100
    old :
    29161085 decicycles in build_filter (loop 1000), 256 runs, 0 skips
    28821467 decicycles in build_filter (loop 1000), 512 runs, 0 skips
    28668201 decicycles in build_filter (loop 1000), 1000 runs, 24 skips

    new :
    14351936 decicycles in build_filter (loop 1000), 256 runs, 0 skips
    14306652 decicycles in build_filter (loop 1000), 512 runs, 0 skips
    14299923 decicycles in build_filter (loop 1000), 1000 runs, 24 skips

    Note that this does not statically allocate the sin lookup table. This
    may be done for the default 1024 phases, yielding a 512*8 = 4kB array
    which should be small enough.
    This should yield a small improvement. Nevertheless, this is separate from
    this patch, is more ambiguous due to the binary increase, and requires a
    lut to be generated offline.

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

    • [DH] libswresample/resample.c
  • vulkan_decode : remove informative queries

    24 décembre 2024, par Lynne
    vulkan_decode : remove informative queries
    

    We queried the decoder whether it was able to decode sucessfully, but
    since we operated asynchronously, we weren't able to do anything with
    this information but let the user know decoding failed for the previous
    frame(s).

    Since we parse the slice headers ourselves and we're reasonably sure we
    can decode before actually starting to decode, this was rarely triggered
    on corrupt data, and hardware's understanding of whether there was an error
    or not is vague.

    There's also a semantic problem with our use of the queries - if there's
    a seek, we flush, but what happens to the queries is vague according to
    the spec. Most hardware dealt fine, since queries are nothing more than
    GPU memory with integers stored. But with Intel, they seem to be more of
    a register to which a driver must keep track of, leading to issues if there's
    been a reset (seek) and we query the previous submission before the seek.

    Just get rid of them. The query code is still used in encoding.

    This fixes seeking with HEVC and AV1 on Intel.

    • [DH] libavcodec/vulkan_decode.c
  • Segmentation fault in samplerate conversion function

    17 juin 2014, par user3749290

    playmp3() using libmpg123

    if (isPaused==0 &amp;&amp; mpg123_read(mh, buffer, buffer_size, &amp;done) == MPG123_OK)
    {
       char * resBuffer=&amp;buffer[0]; //22100=0,5s
       buffer = resample(resBuffer,22100,22100);
       if((ao_play(dev, (char*)buffer, done)==0)){
           return 1;
    }

    resample() Using avcodec from ffmpeg

    #define LENGTH_MS 500       // how many milliseconds of speech to store
    #define RATE 44100      // the sampling rate (input)
    #define FORMAT PA_SAMPLE_S16NE  // sample size: 8 or 16 bits
    #define CHANNELS 2      // 1 = mono 2 = stereo

    struct AVResampleContext* audio_cntx = 0;

    char * resample(char in_buffer[(LENGTH_MS*RATE*16*CHANNELS)/8000],int out_rate,int nsamples)
    {
       char out_buffer[ sizeof( in_buffer ) * 4];
       audio_cntx = av_resample_init( out_rate, //out rate
           RATE, //in rate
           16, //filter length
           10, //phase count
           0, //linear FIR filter
           1.0 ); //cutoff frequency
       assert( audio_cntx &amp;&amp; "Failed to create resampling context!");
       int samples_consumed;
       int samples_output = av_resample( audio_cntx, //resample context
           (short*)out_buffer, //buffout
           (short*)in_buffer,  //buffin
           &amp;samples_consumed,  //&amp;consumed
           nsamples,       //nb_samples
           sizeof(out_buffer)/2,//lenout
           0);//is_last
       assert( samples_output > 0 &amp;&amp; "Error calling av_resample()!" );
       av_resample_close( audio_cntx );
       //*resample = malloc(sizeof(out_buffer));
       return &amp;out_buffer[0];  
    }

    When i run this code i get 3393 Segmentation fault (core dump created). Why ?

    For example, the use of pointers is correct ?
    and 22100 are the samples that are contained in 0.5 seconds of the song ?