Recherche avancée

Médias (91)

Autres articles (25)

  • Les autorisations surchargées par les plugins

    27 avril 2010, par

    Mediaspip core
    autoriser_auteur_modifier() afin que les visiteurs soient capables de modifier leurs informations sur la page d’auteurs

  • Création définitive du canal

    12 mars 2010, par

    Lorsque votre demande est validée, vous pouvez alors procéder à la création proprement dite du canal. Chaque canal est un site à part entière placé sous votre responsabilité. Les administrateurs de la plateforme n’y ont aucun accès.
    A la validation, vous recevez un email vous invitant donc à créer votre canal.
    Pour ce faire il vous suffit de vous rendre à son adresse, dans notre exemple "http://votre_sous_domaine.mediaspip.net".
    A ce moment là un mot de passe vous est demandé, il vous suffit d’y (...)

  • MediaSPIP Init et Diogène : types de publications de MediaSPIP

    11 novembre 2010, par

    À l’installation d’un site MediaSPIP, le plugin MediaSPIP Init réalise certaines opérations dont la principale consiste à créer quatre rubriques principales dans le site et de créer cinq templates de formulaire pour Diogène.
    Ces quatre rubriques principales (aussi appelées secteurs) sont : Medias ; Sites ; Editos ; Actualités ;
    Pour chacune de ces rubriques est créé un template de formulaire spécifique éponyme. Pour la rubrique "Medias" un second template "catégorie" est créé permettant d’ajouter (...)

Sur d’autres sites (5239)

  • Setting qscale programmatically when using MPEG4 encoder ( for constant quality / VBR)

    14 février 2019, par Dennis

    i implemented the possibility to encode various self-rendered video-frames with MPEG4 codec and create an .mp4 video file. This works fine. Now i want to add the possibility to define a quality slider (0-100%) to parameterize a factor for constant quality (VBR). I don’t know how to do that.

    I found out that -qscale seems to do what i want, so i looked in ffmpeg_opt.c what happens there and tried the same :

    config.codecContext->flags |= AV_CODEC_FLAG_QSCALE;
    config.codecContext->global_quality = FF_QP2LAMBDA * QualityLvl;

    with :

    • "config.codecContext" being the code context
    • "FF_QP2LAMBDA" being 118
    • "QualityLvl" is the "factor for constant quality" (has to be an int between 1 and 31 according to this :
      https://trac.ffmpeg.org/wiki/Encode/MPEG-4)

    The problem is, that it actually doesn’t matter if "QualityLvl" is 1,2 or 30 it always results in the same file size and a visually same(?) video file. I would have expected file size and quality differences ?!

  • getting a `InValid URL` when I send a voice message

    9 septembre 2023, par Ammad

    When I try to send voice messages I always get invalid url error with. I am using whisper to convert the audio to text but for some reason I cannot seem to pass the file to the whisper. It worked when I used this in java script but not in typescript for some reason

    


    async function createFile(path: string): Promise<file> {&#xA;  const response = await fetch(path);&#xA;  const data = await response.blob();&#xA;  &#xA;  // Extract file name from the path&#xA;  const fileName = path.split(&#x27;/&#x27;).pop() || &#x27;unknown&#x27;;&#xA;  &#xA;  // Extract file extension and determine MIME type&#xA;  const fileExtension = fileName.split(&#x27;.&#x27;).pop()?.toLowerCase() || &#x27;&#x27;;&#xA;  const mimeTypes: Record = {&#xA;    &#x27;mp3&#x27;: &#x27;audio/mpeg&#x27;,&#xA;    // Add more mappings as needed&#xA;  };&#xA;  const fileType = mimeTypes[fileExtension] || &#x27;application/octet-stream&#x27;;&#xA;  &#xA;  const metadata = {&#xA;    type: fileType&#xA;  };&#xA;  &#xA;  return new File([data], fileName, metadata);&#xA;}&#xA;&#xA;async function sendAudioForTranscription(file_path:string) {&#xA;  try {&#xA;    &#xA;    // const audioData = fs.createReadStream(file_path);&#xA;    const audioFile = await createFile(file_path)&#xA;&#xA;    const response = await openai.createTranscription(audioFile, "whisper-1");&#xA;    const transcribed = response.data.text;&#xA;&#xA;    return transcribed;&#xA;  } catch (error) {&#xA;    console.error("Error transcribing the audio:", error);&#xA;    return null;&#xA;  }&#xA;}&#xA;</file>

    &#xA;

    I am new to this so any help would be appreciated. This is the error

    &#xA;

    Error transcribing the audio: TypeError: Failed to parse URL from src\audio_files\false_xxxxxxxxx8@c.us_B161BC6FA04DB01B8B31F5E0F83EDAD5.mp3&#xA;    at Object.fetch (node:internal/deps/undici/undici:11576:11)&#xA;    at process.processTicksAndRejections (node:internal/process/task_queues:95:5) {&#xA;  [cause]: TypeError [ERR_INVALID_URL]: Invalid URL&#xA;      at new NodeError (node:internal/errors:405:5)&#xA;      at new URL (node:internal/url:778:13)&#xA;      at new Request (node:internal/deps/undici/undici:7132:25)&#xA;      at fetch2 (node:internal/deps/undici/undici:10715:25)&#xA;      at Object.fetch (node:internal/deps/undici/undici:11574:18)&#xA;      at fetch (node:internal/process/pre_execution:270:25)&#xA;      at C:\Users\Ammad Ali\Documents\Documents\alex-whatsapp-bot\build\openai\transcript.js:28:32&#xA;      at C:\Users\Ammad Ali\Documents\Documents\alex-whatsapp-bot\build\openai\transcript.js:8:71&#xA;      at new Promise (<anonymous>)&#xA;      at __awaiter (C:\Users\Ammad Ali\Documents\Documents\alex-whatsapp-bot\build\openai\transcript.js:4:12)&#xA;      at createFile (C:\Users\Ammad Ali\Documents\Documents\alex-whatsapp-bot\build\openai\transcript.js:27:12)&#xA;      at Object.<anonymous> (C:\Users\Ammad Ali\Documents\Documents\alex-whatsapp-bot\build\openai\transcript.js:49:37)&#xA;      at Generator.next (<anonymous>)&#xA;      at C:\Users\Ammad Ali\Documents\Documents\alex-whatsapp-bot\build\openai\transcript.js:8:71&#xA;      at new Promise (<anonymous>) {&#xA;    input: &#x27;src\\audio_files\\false_xxxxxxxxx8@c.us_B161BC6FA04DB01B8B31F5E0F83EDAD5.mp3&#x27;,&#xA;    code: &#x27;ERR_INVALID_URL&#x27;&#xA;  }&#xA;}&#xA;</anonymous></anonymous></anonymous></anonymous>

    &#xA;

    To get a response back in voice message

    &#xA;

  • Multimedia Exploration Journal : The Past Doesn’t Die

    12 juillet 2011, par Multimedia Mike — Game Hacking

    New haul of games, new (old) multimedia formats.

    Lords of Midnight
    Check out the box copy scan for Lords of Midnight in MobyGames. In particular, I’d like to call your attention to this little blurb :



    Ahem, "Journey through an immense world — the equivalent of 8 CD-ROMs." Yet, when I procured the game, it only came on a single CD-ROM. It’s definitely a CD-ROM (says so on the disc) and, coming from 1995, certainly predates the earliest DVD-ROMs (which can easily store 8 CD-ROMs on a disc). Thus, I wanted to jump in a see if they were using some phenomenal compression in order to squeeze so much info into 600 or so megabytes.

    I was surprised to see the contents of the disc clocking in at just under 40 megabytes. An intro movie and an outro movie account for 75% of that. Format ? None other than that curious ASCII anomaly, ARMovie/RPL with Escape 122 codec data.

    Cyclemania



    Cyclemania is one of those FMV backdrop action games, but with a motorcycle theme. I had a good feeling I would find some odd multimedia artifacts here and the game didn’t disappoint. The videos are apparently handled using 3-4 discrete files per animation. I’ve documented my cursory guesses and linked some samples at the new MultimediaWiki page.

    Interplay ACMP
    This is unrelated to this particular acquistion, but I was contacted today about audio files harvested from the 1993 DOS game Star Trek : Judgment Rites. The files begin with the ASCII signature "Interplay ACMP Data". This reminds me of Interplay MVE files which begin with the similar string "Interplay MVE File". My theory is that these files use the ACOMP compression format, though I’m still trying to make it fit.

    Wiki and samples are available as usual if you’d like to add your own research.