Recherche avancée

Médias (1)

Mot : - Tags -/censure

Autres articles (102)

  • Encodage et transformation en formats lisibles sur Internet

    10 avril 2011

    MediaSPIP transforme et ré-encode les documents mis en ligne afin de les rendre lisibles sur Internet et automatiquement utilisables sans intervention du créateur de contenu.
    Les vidéos sont automatiquement encodées dans les formats supportés par HTML5 : MP4, Ogv et WebM. La version "MP4" est également utilisée pour le lecteur flash de secours nécessaire aux anciens navigateurs.
    Les documents audios sont également ré-encodés dans les deux formats utilisables par HTML5 :MP3 et Ogg. La version "MP3" (...)

  • Encoding and processing into web-friendly formats

    13 avril 2011, par

    MediaSPIP automatically converts uploaded files to internet-compatible formats.
    Video files are encoded in MP4, Ogv and WebM (supported by HTML5) and MP4 (supported by Flash).
    Audio files are encoded in MP3 and Ogg (supported by HTML5) and MP3 (supported by Flash).
    Where possible, text is analyzed in order to retrieve the data needed for search engine detection, and then exported as a series of image files.
    All uploaded files are stored online in their original format, so you can (...)

  • Contribute to translation

    13 avril 2011

    You can help us to improve the language used in the software interface to make MediaSPIP more accessible and user-friendly. You can also translate the interface into any language that allows it to spread to new linguistic communities.
    To do this, we use the translation interface of SPIP where the all the language modules of MediaSPIP are available. Just subscribe to the mailing list and request further informantion on translation.
    MediaSPIP is currently available in French and English (...)

Sur d’autres sites (6431)

  • Media Source Extensions - Identifying when there is no more data

    8 octobre 2015, par galbarm

    I’m creating a fragmented MP4 of a real-time live content with constant 10FPS but occasionally a frame gets dropped before being feed to the MP4 creation process.
    The MP4 is transmitted to the web through a web socket.

    Due to the occasional frames drop, the playback speed of the file is effectively slightly greater than 1x, because the player plays at 10FPS.
    Since this is a live content, after some duration, the player reaches the present time and has no data to play.

    Now, to the MSE issue :
    What seems to happen in Chrome, when the player doesn’t have enough data to continue playing, is that it pauses for 1-2 secs, then plays it very fast, and vice versa. So at this point the user experience becomes very bad.
    The issue was discussed here :
    https://www.w3.org/Bugs/Public/show_bug.cgi?id=28379

    My idea to workaround this, is to identify the state (having no more data), change playback rate to 0.9 for a few seconds to allow some buffering, and then switch back to 1.0.
    The problem is that I couldn’t find a way to identify the state.
    The readystate of the media element seems to always have the value of "HAVE_ENOUGH_DATA" even when the issue starts.

    Does the MSE API exposes a way identify the state that I have described ?

  • avfilter/f_sidedata : synchronize with side data list

    23 avril 2024, par Niklas Haas
    avfilter/f_sidedata : synchronize with side data list
    

    Add all recently added frame data types, as well as the more consistent
    name DETECTION_BBOXES as an alias to DETECTION_BOUNDING_BOXES.

    • [DH] libavfilter/f_sidedata.c
  • FFMpeg undefined reference to get_buffer

    14 juin 2012, par Kevin

    I'm trying to upgrade the FFMpeg source used with one of our projects but get_buffer has gone away. I'm not 100% sure on which method to replace it with. Here are two contexts in which its used, any help is appreciated.

    I look forward to hearing from you soon,

    Thanks,
    Kevin

       cur_offset = avio_tell(pb);
       if (!para->playctrl_info.read_end_flag && (0 == pkt->data_size)) {
           rev_byte = get_buffer(pb, pbuf, para->max_raw_size);
           if ((rev_byte > 0) && (cur_offset <= para->pFormatCtx->data_offset)) {
               try_count = 0;
               pkt->data_size = rev_byte;
               para->read_size.total_bytes += rev_byte;
               pkt->avpkt_newflag = 1;
               pkt->avpkt_isvalid = 1;

     do {
                   read_length = get_buffer(s->pb, data + 12, read_size);
                   if ((read_length <= 0) || (sync_flag == 1024)) {
                       if (read_length == AVERROR(EAGAIN)) {
                           continue;
                       } else {
                           FREE(data);
                           log_error("[%s]get data failed. ret=%d\n", __FUNCTION__, read_length);
                           return 0;
                       }
                   } else {
                       break;
                   }
               } while (retry_get_data < am_p->playctrl_info.read_max_retry_cnt);
               pkt = data;