Recherche avancée

Médias (91)

Autres articles (111)

  • MediaSPIP 0.1 Beta version

    25 avril 2011, par

    MediaSPIP 0.1 beta is the first version of MediaSPIP proclaimed as "usable".
    The zip file provided here only contains the sources of MediaSPIP in its standalone version.
    To get a working installation, you must manually install all-software dependencies on the server.
    If you want to use this archive for an installation in "farm mode", you will also need to proceed to other manual (...)

  • Multilang : améliorer l’interface pour les blocs multilingues

    18 février 2011, par

    Multilang est un plugin supplémentaire qui n’est pas activé par défaut lors de l’initialisation de MediaSPIP.
    Après son activation, une préconfiguration est mise en place automatiquement par MediaSPIP init permettant à la nouvelle fonctionnalité d’être automatiquement opérationnelle. Il n’est donc pas obligatoire de passer par une étape de configuration pour cela.

  • HTML5 audio and video support

    13 avril 2011, par

    MediaSPIP uses HTML5 video and audio tags to play multimedia files, taking advantage of the latest W3C innovations supported by modern browsers.
    The MediaSPIP player used has been created specifically for MediaSPIP and can be easily adapted to fit in with a specific theme.
    For older browsers the Flowplayer flash fallback is used.
    MediaSPIP allows for media playback on major mobile platforms with the above (...)

Sur d’autres sites (10460)

  • avformat/matroskaenc : Only write Cluster if it has in fact been opened

    2 mai 2020, par Andreas Rheinhardt
    avformat/matroskaenc : Only write Cluster if it has in fact been opened
    

    Since commit 4aa0665f393847c35387a1c673e62346d0acfc95, the dynamic
    buffer destined for the contents of the current Cluster is no longer
    constantly allocated, reallocated and then freed after writing the
    content ; instead it is reset and reused when closing a Cluster.

    Yet the code in mkv_write_trailer() still checked for whether a Cluster
    is open by checking whether the pointer to the dynamic buffer is NULL or
    not (instead of checking whether the position of the current Cluster is
    - 1 or not). If a Cluster was not open, an empty Cluster would be output.

    One usually does not run into this issue, because unless there are
    errors, there are only three possibilities to not have an opened Cluster
    at the end of writing a packet :
    The first is if one sent an audio packet to the muxer. It might trigger
    closing and outputting the old Cluster, but because the muxer caches
    audio packets internally, it would not be output immediately and
    therefore no new Cluster would be opened.
    The second is an audio packet that does not contain data (such packets
    are sometimes sent for side-data only, e.g. by the FLAC encoder). The
    only difference to the first scenario is that such packets are not
    cached.
    The third is if one explicitly flushes the muxer by sending a NULL
    packet via av_write_frame().

    If one also allows for errors, then there is also another possibility :
    Caching the audio packet may fail in the first scenario.

    If one calls av_write_trailer() after the first scenario, the cached
    audio packet will be output when writing the trailer, for which
    a Cluster is opened and everything is fine ; because flushing the muxer
    does currently not output the cached audio packet (if one is cached),
    the issue also does not exist if an audio packet has been cached before
    flushing. The issue only exists in one of the other scenarios.

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

    • [DH] libavformat/matroskaenc.c
  • avformat/matroskaenc : Make sure UIDs of delayed chapters are != 0

    27 avril 2020, par Andreas Rheinhardt
    avformat/matroskaenc : Make sure UIDs of delayed chapters are != 0
    

    This has previously only been checked if the chapters were initially
    available, but not if they were only written in the trailer.

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

    • [DH] libavformat/matroskaenc.c
  • Read S3 video file, process it with ffmpeg and upload to S3

    28 avril 2020, par Dario Rusignuolo

    I have a video stored in s3 bucket with authenticated-read ACL.

    &#xA;&#xA;

    I need to read and make a trailer with ffmpeg (nodejs)

    &#xA;&#xA;

    Here's the code I use to generate the trailer

    &#xA;&#xA;

    exports.generatePreview = (req, res) => {&#xA;    const getParams = {&#xA;        Bucket: S3_CREDENTIALS.bucketName,&#xA;        Key: req.params.key&#xA;    }&#xA;    s3.getSignedUrl(&#x27;getObject&#x27;, getParams, (err, signedRequest) => {&#xA;        console.log(signedRequest, err, &#x27;getSignedUrl&#x27;)&#xA;        ffmpeg(new URL(signedRequest))&#xA;            .size(&#x27;640x?&#x27;)&#xA;            .aspect(&#x27;4:3&#x27;)&#xA;        .seekInput(&#x27;3:00&#x27;)&#xA;        .duration(&#x27;0:30&#x27;)&#xA;        .then(function (video) {&#xA;            s3.putObject({ Bucket: S3_CREDENTIALS.bucketName, key: &#x27;preview_&#x27; &#x2B; req.body.key, Body: video }, function (err, data) {&#xA;                console.log(err, data)&#xA;            })&#xA;        });&#xA;});&#xA;

    &#xA;&#xA;

    }

    &#xA;&#xA;

    Unfortunately, the constructor path seems not to read remote url. If I try to execute an ffmpeg command line with the same signedurl (i.e. ffmpeg -i "https://[bucketname].s3.eu-west-1.amazonaws.com/[key.mp4]?[signedParams]" -vn -acodec pcm_s16le -ar 44100 -ac 2 video.wav)

    &#xA;&#xA;

    The error I get is that the signedRequest url &#x27;The input file does not exist&#x27;

    &#xA;&#xA;

    It seems fs.readFileSync https is not supported even if I try the request with http with the same result. fs.readFileSync(signedurl) => gives the same result

    &#xA;&#xA;

    How to overcome this issue ?

    &#xA;