Recherche avancée

Médias (0)

Mot : - Tags -/xmlrpc

Aucun média correspondant à vos critères n’est disponible sur le site.

Autres articles (90)

  • Le profil des utilisateurs

    12 avril 2011, par

    Chaque utilisateur dispose d’une page de profil lui permettant de modifier ses informations personnelle. Dans le menu de haut de page par défaut, un élément de menu est automatiquement créé à l’initialisation de MediaSPIP, visible uniquement si le visiteur est identifié sur le site.
    L’utilisateur a accès à la modification de profil depuis sa page auteur, un lien dans la navigation "Modifier votre profil" est (...)

  • Configurer la prise en compte des langues

    15 novembre 2010, par

    Accéder à la configuration et ajouter des langues prises en compte
    Afin de configurer la prise en compte de nouvelles langues, il est nécessaire de se rendre dans la partie "Administrer" du site.
    De là, dans le menu de navigation, vous pouvez accéder à une partie "Gestion des langues" permettant d’activer la prise en compte de nouvelles langues.
    Chaque nouvelle langue ajoutée reste désactivable tant qu’aucun objet n’est créé dans cette langue. Dans ce cas, elle devient grisée dans la configuration et (...)

  • XMP PHP

    13 mai 2011, par

    Dixit Wikipedia, XMP signifie :
    Extensible Metadata Platform ou XMP est un format de métadonnées basé sur XML utilisé dans les applications PDF, de photographie et de graphisme. Il a été lancé par Adobe Systems en avril 2001 en étant intégré à la version 5.0 d’Adobe Acrobat.
    Étant basé sur XML, il gère un ensemble de tags dynamiques pour l’utilisation dans le cadre du Web sémantique.
    XMP permet d’enregistrer sous forme d’un document XML des informations relatives à un fichier : titre, auteur, historique (...)

Sur d’autres sites (11198)

  • Why does mplayer not play my stream ?

    17 juillet 2016, par SirWindfield

    I wanted to use mplayer (a command line tool) to play a SoundCloud url that I fetched with there official API. The url looks like this

    https://cf-media.sndcdn.com/qop35iYKlHhs.128.mp3?Policy=eyJTdGF0ZW1lbnQiOlt7IlJlc291cmNlIjoiKjovL2NmLW1lZGlhLnNuZGNkbi5jb20vcW9wMzVpWUtsSGhzLjEyOC5tcDMiLCJDb25kaXRpb24iOnsiRGF0ZUxlc3NUaGFuIjp7IkFXUzpFcG9jaFRpbWUiOjE0Njg3NTM4NjB9fX1dfQ__&Signature=OZ4IawmjdU6hEN8KB8e~t3QTy4lBFVBbIDg-a6tuPkb65e0mPskkCFFASkTWbyy5lsaT9IrURan6y70sZhLXPbng1IfkTsGdX1dO938NwVYnKs-BS7IL4TiVFxTBXoKJgmCmUD0qmmGmYqm3YdGZQrP~Sj~mw9~fmtwdHQu0rhl3O-dKsgk497JAR6pMorQs7BSs0XIosV1Mmv2DMD6iifquCWV9Ezq4ekneQ1gfSjVmzjjnKvsxjPpgmU~5DTdewwzlNClVxdzHSQONWM7c0YMGlBcVz97NviaeZOQSCAW8QZS59WULXJBJ9OmEPctWtpe3O0mo-GYjwEkbVGYl9A__&Key-Pair-Id=APKAJAGZ7VMH2PFPW6UQ

    I use the command "mplayer ’url’" to play it but I always get the output :

    libavformat version 57.25.100 (internal)
    https protocol not found, recompile FFmpeg with openssl, gnutls,
    or securetransport enabled.

    Looking which protocols have been installed tells me that I have https input and output support (ffmpeg -protocols) :

    ffmpeg version 3.1.1 Copyright (c) 2000-2016 the FFmpeg developers
     built with Apple LLVM version 7.3.0 (clang-703.0.31)
     configuration: --prefix=/usr/local/Cellar/ffmpeg/3.1.1 --enable-shared --enable-pthreads --enable-gpl --enable-version3 --enable-hardcoded-tables --enable-avresample --cc=clang --host-cflags= --host-ldflags= --enable-opencl --enable-libx264 --enable-libmp3lame --enable-libxvid --enable-libtheora --enable-libvorbis --enable-libvpx --enable-librtmp --enable-libfaac --enable-ffplay --enable-libspeex --enable-openssl --enable-libopus --disable-lzma --enable-nonfree --enable-vda
     libavutil      55. 28.100 / 55. 28.100
     libavcodec     57. 48.101 / 57. 48.101
     libavformat    57. 41.100 / 57. 41.100
     libavdevice    57.  0.101 / 57.  0.101
     libavfilter     6. 47.100 /  6. 47.100
     libavresample   3.  0.  0 /  3.  0.  0
     libswscale      4.  1.100 /  4.  1.100
     libswresample   2.  1.100 /  2.  1.100
     libpostproc    54.  0.100 / 54.  0.100
    Supported file protocols:
    Input:
     async
     cache
     concat
     crypto
     data
     file
     ftp
     gopher
     hls
     http
     httpproxy
     https
     mmsh
     mmst
     pipe
     rtp
     srtp
     subfile
     tcp
     tls
     udp
     udplite
     unix
     rtmp
     rtmpe
     rtmps
     rtmpt
     rtmpte
    Output:
     crypto
     file
     ftp
     gopher
     http
     httpproxy
     https
     icecast
     md5
     pipe
     rtp
     srtp
     tcp
     tls
     udp
     udplite
     unix
     rtmp
     rtmpe
     rtmps
     rtmpt
     rtmpte
  • convert WAV to TETRA format

    14 juin 2020, par Ashish Arora

    I am trying to convert a wav file into TETRA encoded file (https://en.wikipedia.org/wiki/Terrestrial_Trunked_Radio). Tetra is used by fire-fighters, it provides a radio-like voice.

    



    I am trying to use the official tetra codec codes available at (https://www.etsi.org/deliver/etsi_en/300300_300399/30039502/01.03.01_60/) and we can easily compile it using the scripts available at https://github.com/sq5bpf/install-tetra-codec.

    



    However, I am not able to figure out how to convert a wav file into tetra codec files using these files. I tried going through the documentation of the compiled files (ccoder, cdecoder, scoder, sdecoder).

    



    I tried the following command -

    



    


    tetra/bin/scoder input.wav serial_file synth_file

    


    



    here serial_file and synth_file are the output files and have following documentation in the scoder.c file :

    



        INPUT   :   - Description : speech file to be analyzed
                - Format : binary file 16 bit-samples
                  240 samples per frame

serial_file :   - Description : serial stream output file 
            - Format : binary file 16 bit-samples
              each 16 bit-sample represents one encoded bit
              138 (= 1 + 137) bits per frame

synth_file  :   - Description : local synthesis output file 
            - Format : binary file 16 bit-samples


    



    For an input file of size 13M, I obtained serial_file and synth_file of size 8.0M and 16M. However, I thought since the wav file is getting converted into a walkie-talkie type signal the output file size will be alot smaller.

    



    I want to clarify if :

    



      

    • I used the correct code to convert an input wav file into a tetra format output file.
    • 


    • can you please help me understand, what is serial_file and synth_file.
    • 


    



    Thanks,
Ashish

    


  • FFmpeg realtime volume changing with C API

    9 janvier 2019, par Tank2006

    My environment is FFmpeg 4.1(Prebuild package from an official site) on Windows 10/Visual Studio 2017.

    I want to change an audio volume as realtime according to a volume button operation from media player apps.

    Think simply, it will update if AVFilter parameters changes, but it seems doesn’t work.

    const char src[] = "C:\\sample.mp3";

    AVFilterGraph *graph = NULL;
    AVFilterContext *ctx_src, *ctx_sink;
    AVFilter *ctx_vol;

    int main()
    {
       int res;
       AVPacket *packet = av_packet_alloc();
       AVFrame *frame = av_frame_alloc();
       AVFrame *fframe = av_frame_alloc();

       AVCodec *codec = avcodec_find_decoder(AV_CODEC_ID_MP3);
       AVCodecParser *parser = av_parser_init(codec->id);

       AVCodecContext *cc = avcodec_alloc_context3(codec);
       avcodec_open2(cc, codec, NULL);


       FILE *fp; uint8_t buffer[1024]; int filterinit = 0;
       fopen_s(&fp, src, "rb");
       while (feof(fp) == 0) {
           int read = fread(buffer, 1, 1024, fp);

           res = av_parser_parse2(parser, cc, &packet->data, &packet->size,
               buffer, read, AV_NOPTS_VALUE, AV_NOPTS_VALUE, 0);
           if (packet->size) {
               res = avcodec_send_packet(cc, packet);

               while (res >= 0) {
                   res = avcodec_receive_frame(cc, frame);

                   if (res == AVERROR(EAGAIN) || res == AVERROR_EOF) {
                       break;
                   } else if (res < 0) {
                       fprintf(stderr, "Error during decoding\n");
                       exit(1);
                   }

                   if (filterinit == 0) {
                       // Create a volume filter, links and graph from AVCodecContext's parameter
                       if(init_filters(cc)) filterinit = 1;
                   }

                   if (filterinit == 1) {
                       res = av_buffersrc_add_frame(ctx_src, frame);
                       if(av_buffersink_get_frame(ctx_sink, frame) >= 0) {

                           // Change the volume realtime
                           av_opt_set(ctx_vol, "volume", AV_STRINGIFY(1.2), AV_OPT_SEARCH_CHILDREN);


                           int datasize = av_get_bytes_per_sample(cc->sample_fmt);
                           for (int i = 0; i < frame->nb_samples; i++) {
                               for (int ch = 0; ch < cc->channels; ch++) {
                                   //fwrite(frame->data[ch] + data_size * i, 1, data_size, outfile);
                               }
                           }
                       }
                   }
               }
           }
       }

       fclose(fp);

       avcodec_free_context(&cc);
       av_parser_close(parser);
       av_frame_free(&frame);
       av_frame_free(&fframe);
       av_packet_free(&packet);

       avfilter_graph_free(&graph);

       return 0;
    }

    Can I change the filter value in realtime with FFmpeg’s C API or I need to create a new filter link each time when it requires to update ?