
Recherche avancée
Médias (1)
-
Revolution of Open-source and film making towards open film making
6 octobre 2011, par
Mis à jour : Juillet 2013
Langue : English
Type : Texte
Autres articles (69)
-
Participer à sa traduction
10 avril 2011Vous pouvez nous aider à améliorer les locutions utilisées dans le logiciel ou à traduire celui-ci dans n’importe qu’elle nouvelle langue permettant sa diffusion à de nouvelles communautés linguistiques.
Pour ce faire, on utilise l’interface de traduction de SPIP où l’ensemble des modules de langue de MediaSPIP sont à disposition. ll vous suffit de vous inscrire sur la liste de discussion des traducteurs pour demander plus d’informations.
Actuellement MediaSPIP n’est disponible qu’en français et (...) -
MediaSPIP : Modification des droits de création d’objets et de publication définitive
11 novembre 2010, parPar défaut, MediaSPIP permet de créer 5 types d’objets.
Toujours par défaut les droits de création et de publication définitive de ces objets sont réservés aux administrateurs, mais ils sont bien entendu configurables par les webmestres.
Ces droits sont ainsi bloqués pour plusieurs raisons : parce que le fait d’autoriser à publier doit être la volonté du webmestre pas de l’ensemble de la plateforme et donc ne pas être un choix par défaut ; parce qu’avoir un compte peut servir à autre choses également, (...) -
Ecrire une actualité
21 juin 2013, parPrésentez les changements dans votre MédiaSPIP ou les actualités de vos projets sur votre MédiaSPIP grâce à la rubrique actualités.
Dans le thème par défaut spipeo de MédiaSPIP, les actualités sont affichées en bas de la page principale sous les éditoriaux.
Vous pouvez personnaliser le formulaire de création d’une actualité.
Formulaire de création d’une actualité Dans le cas d’un document de type actualité, les champs proposés par défaut sont : Date de publication ( personnaliser la date de publication ) (...)
Sur d’autres sites (6378)
-
ffmpeg AVFrame get full decoded data to char*
20 décembre 2018, par mmmaaakI get Frames in loop and decode it with ffmpeg getting AVFrame as e result of it.
So I must get neccessary pixel data of frame into char* and give as a callback function’s parameter. So how I can generete such char* array ? In internet I saw some examples such as :
for(y=0; ydata[0]+y*pFrame->linesize[0], 1, width*3, pFile);
}or something like this. Is it true ? And which size would be my char* ? As I see we write width*3 *height bytes ?
-
ffmpeg AVFrame get full decoded data to char*
28 mars 2012, par mmmaaakI get Frames in loop and decode it with ffmpeg getting AVFrame as e result of it.
So I must get neccessary pixel data of frame into char* and give as a callback function's parameter. So how I can generete such char* array ? In internet I saw some examples such as :
for(y=0; ydata[0]+y*pFrame->linesize[0], 1, width*3, pFile);}
or something like this. Is it true ? And which size would be my char* ? As I see we write width*3 *height bytes ?
-
Workflow and data format for sending MediaRecorder output to express server
30 avril 2021, par MaxI've been trying to figure this out for a while but got lost between different ways of sending files and different data formats.


I am recording the stream of a canvas animation with MediaRecorder. As far as I understand this returns a blob with the video in binary format. Now I want to send this data to my express server and convert it to an h264 encoded mp4 file. My first impulse was to use ffmpeg on the server. Unfortunately I'm struggling with the details of the implementation. I am unsure on how to best transmit the data and in what format and how to feed it to ffmpeg.


This is what I have on the client side :


// Get stream from element
stream = element.captureStream(30)

// Create media recorder with stream
const recorder = new MediaRecorder(stream)

// Save to file
recorder.ondataavailable = ({ data }) => {
 
 const formData = new FormData()
 formData.append("file", data)

 const options = {
 method: "POST",
 body: formData,
 }

 fetch("http://localhost:3001/api/blob_to_mp4", options).then(
 (res) => {
 console.log(res)
 }
 )
}



And this is what I have on the server side :


"use strict";

const express = require("express");
const cors = require("cors");
const ffmpeg = require("fluent-ffmpeg");
const fs = require("fs");

const port = process.env.PORT || 3001;
const app = express();
var command = ffmpeg();

app.use(cors());
app.use(express.urlencoded({ extended: true }));
app.use(express.json());

app.post("/api/blob_to_mp4", function (req, res) {
 var data = Buffer.from("");

 // Add data
 req.on("data", function (chunk) {
 data = Buffer.concat([data, chunk]);
 });

 // Full data available
 req.on("end", () => {
 req.rawBody = data;
 });

 res.send("hello world");
});

app.listen(port);
console.log(`Server running on port ${port}`);