Recherche avancée

Médias (0)

Mot : - Tags -/xmlrpc

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

Autres articles (69)

  • Websites made ​​with MediaSPIP

    2 mai 2011, par

    This page lists some websites based on MediaSPIP.

  • MediaSPIP v0.2

    21 juin 2013, par

    MediaSPIP 0.2 est la première version de MediaSPIP stable.
    Sa date de sortie officielle est le 21 juin 2013 et est annoncée ici.
    Le fichier zip ici présent contient uniquement les sources de MediaSPIP en version standalone.
    Comme pour la version précédente, il est nécessaire d’installer manuellement l’ensemble des dépendances logicielles sur le serveur.
    Si vous souhaitez utiliser cette archive pour une installation en mode ferme, il vous faudra également procéder à d’autres modifications (...)

  • 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" (...)

Sur d’autres sites (12173)

  • Deploying on google App Engine : An error occurred : ffmpeg was killed with signal SIGABRT Error : ffmpeg was killed with signal SIGABRT

    27 août 2020, par Jérémy Gachon

    I wrote a node-js api, with node-js and fluent-ffmpeg :

    


    'use strict';
require('babel-register');
const path = require('path');    
const ffmpeg = require('fluent-ffmpeg');


    


    [...]

    


    var infs = new ffmpeg

infs.addInput(doc.data().url).outputOptions([
            '-preset slow', '-g 48', '-sc_threshold 0',
            '-map 0:0', '-map 0:1', '-map 0:0', '-map 0:1',
            '-s:v:0 1280x720', '-c:v:0 libx264', '-b:v:0 2000k',
            // "-var_stream_map", "'v:0,a:0 v:1,a:1'",
            '-master_pl_name ./' + req.params.id + '/master' + req.params.id + '.m3u8',
            '-f hls', '-hls_time 6', '-hls_list_size 0',
            '-hls_segment_filename ./' + req.params.id + '/fileSequence|' + req.params.id + '|%d|v%v.ts',
            '-max_muxing_queue_size 1024',
        ]).output('./' + req.params.id + '/video' + req.params.id + '.m3u8')
            .on('start', function (commandLine) {
                console.log('Spawned Ffmpeg with command: ' + commandLine);
            })
            .on('error', function (err, stdout, stderr) {
                console.log('An error occurred: ' + err.message, err, stderr);
            })
            .on('progress', function (progress) {
                console.log('Processing: ' + progress.percent + '% done')
            })
            .on('end', function (err, stdout, stderr) {

                console.log('Finished processing!' /*, err, stdout, stderr*/)
            })
            .run()
        res.status(200).send('GG').end();
    } 
   });


    


    [...]

    


    That work with

    


    


    node app.js

    


    


    on my macbook pro, but when i do

    


    


    gcloud app deploy

    


    


    and I call the public url, I have this logs :

    


    Processing: undefined% done
An error occurred: ffmpeg was killed with signal SIGABRT Error: ffmpeg was killed with signal SIGABRT 


    


    Here is my app.yaml :

    


        # Copyright 2017, Google, Inc.
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#    http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

# [START gae_flex_quickstart_yaml]
runtime: nodejs
env: flex

# This sample incurs costs to run on the App Engine flexible environment.
# The settings below are to reduce costs during testing and are not appropriate
# for production use. For more information, see:
# https://cloud.google.com/appengine/docs/flexible/nodejs/configuring-your-app-with-app-yaml
manual_scaling:
  instances: 1
resources:
  cpu: 1
  memory_gb: 6
  disk_size_gb: 30

# [END gae_flex_quickstart_yaml]


    


    enter image description here

    


    How can I do to deploy correctly my node-js api on google app engine ?

    


    Thank's in advance.

    


    Jérémy.

    


  • Start and end time of MoviePy's VideoClip not working

    21 mars 2024, par ernesto casco velazquez

    I'm trying to add captions to a video. The desired outcome is to show each word in the exact moment is being said.

    


    I have a method that gives me the accurate time start and end per each word :

    


    def get_words_per_time(audio_speech_file):
    model = whisper.load_model("base")
    transcribe = model.transcribe(
        audio=audio_speech_file, fp16=False, word_timestamps=True
    )
    segments = transcribe["segments"]
    words = []

    for seg in segments:
        for word in seg["words"]:
            words.append(
                {
                    "word": word["word"],
                    "start": word["start"],
                    "end": word["end"],
                    "prob": round(word["probability"], 4),
                }
            )
    return words


    


    Then I have a code that uses MoviePy to create TextClip and assing a given start and end time per pair of words (I know there are redundant statements, srry) :

    


    def generate_captions(
    words,
    font="Komika",
    fontsize=32,
    color="White",
    align="center",
    stroke_width=3,
    stroke_color="black",
):
    text_comp = []
    for i in track(range(0, len(words), 2), description="Creating captions..."):
        word1 = words[i]
        if i + 1 < len(words):
            word2 = words[i + 1]
        text_clip = TextClip(
            f"{word1['word']} {word2['word'] if i + 1 < len(words) else ''}",
            font=font,  # Change Font if not found
            fontsize=fontsize,
            color=color,
            align=align,
            method="caption",
            size=(660, None),
            stroke_width=stroke_width,
            stroke_color=stroke_color,
        )
        text_clip = text_clip.set_start(word1["start"])
        text_clip = text_clip.set_end(
            word2["end"] if i + 1 < len(words) else word1["end"]
        )
        text_comp.append(text_clip)
    return text_comp


    


    Finally, I concatenate the words into a single video :

    


    vid_clip = CompositeVideoClip(
    [vid_clip, concatenate_videoclips(text_comp).set_position(("center", 860))]
)


    


    The output is this, but you can clearly see the words are not flowing with the speech. They somehow move faster as if the start/end time did not matter. Here's the video

    


    The words with their respective start/end time, look like this :

    


    [
    {
        'word': 'This',
        'start': 0.0,
        'end': 0.22,
        'prob': 0.805
    },
    {
        'word': 'is',
        'start': 0.22,
        'end': 0.42,
        'prob': 0.9991
    },
    {
        'word': 'a',
        'start': 0.42,
        'end': 0.6,
        'prob': 0.999
    },
    {
        'word': 'test,
        ',
        'start': 0.6,
        'end': 1.04,
        'prob': 0.9939
    },
    {
        'word': 'to',
        'start': 1.18,
        'end': 1.3,
        'prob': 0.9847
    },
    {
        'word': 'show',
        'start': 1.3,
        'end': 1.54,
        'prob': 0.9971
    },
    {
        'word': 'words',
        'start': 1.54,
        'end': 1.9,
        'prob': 0.995
    },
    {
        'word': 'does',
        'start': 1.9,
        'end': 2.16,
        'prob': 0.997
    },
    {
        'word': 'not',
        'start': 2.16,
        'end': 2.4,
        'prob': 0.9978
    },
    {
        'word': 'appear.',
        'start': 2.4,
        'end': 2.82,
        'prob': 0.9984
    },
    {
        'word': 'At',
        'start': 3.46,
        'end': 3.6,
        'prob': 0.9793
    },
    {
        'word': 'their',
        'start': 3.6,
        'end': 3.8,
        'prob': 0.9984
    },
    {
        'word': 'proper',
        'start': 3.8,
        'end': 4.22,
        'prob': 0.9976
    },
    {
        'word': 'time.',
        'start': 4.22,
        'end': 4.72,
        'prob': 0.999
    },
    {
        'word': 'Thanks',
        'start': 5.04,
        'end': 5.4,
        'prob': 0.9662
    },
    {
        'word': 'for,
        ',
        'start': 5.4,
        'end': 5.66,
        'prob': 0.9941
    },
    {
        'word': 'watching.',
        'start': 5.94,
        'end': 6.36,
        'prob': 0.7701
    }
]


    


    What could be causing this ?

    


  • How to make linker ld find a file ?

    21 avril 2015, par haxan7

    I am cross compiling opencv with FFmpeg and it is throwing the following error :

    /root/work/codesourcery/arm-2013.05/bin/../lib/gcc/arm-none-linux-gnueabi/4.7.3/../../../../arm-none-linux-gnueabi/bin/ld : warning : libavcodec.so.56, needed by ../../lib/libopencv_highgui.so.2.4.10, not found (try using -rpath or -rpath-link)

    I have the libavcodec.so.56, and have put the relevant path to $PKG_CONFIG_PATH.

    doing a pkg-config —list-all | grep avcodec returns

    libavcodec                     libavcodec - FFmpeg codec library

    ls -al libs folder returns

    -rw-r--r-- 1 root root 93416352 Apr 21 06:57 libavcodec.a
    lrwxrwxrwx 1 root root       23 Apr 21 06:57 libavcodec.so -> libavcodec.so.56.34.100*
    lrwxrwxrwx 1 root root       23 Apr 21 06:57 libavcodec.so.56 -> libavcodec.so.56.34.100*
    -rwxr-xr-x 1 root root 10949836 Apr 21 06:57 libavcodec.so.56.34.100*

    Here are the contents of libavcodec.pc file

    prefix=/root/ARM_Install
    exec_prefix=${prefix}
    libdir=${prefix}/lib
    includedir=${prefix}/include

    Name: libavcodec
    Description: FFmpeg codec library
    Version: 56.34.100
    Requires:
    Requires.private: libswresample >= 1.1.100, libavutil >= 54.22.101
    Conflicts:
    Libs: -L${libdir}  -lavcodec
    Libs.private: -lxvidcore -lx264 -lm -pthread -ldl
    Cflags: -I${includedir}

    How can I make the liker find this file ?