
Recherche avancée
Médias (2)
-
GetID3 - Bloc informations de fichiers
9 avril 2013, par
Mis à jour : Mai 2013
Langue : français
Type : Image
-
GetID3 - Boutons supplémentaires
9 avril 2013, par
Mis à jour : Avril 2013
Langue : français
Type : Image
Autres articles (47)
-
MediaSPIP 0.1 Beta version
25 avril 2011, parMediaSPIP 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 (...) -
Submit bugs and patches
13 avril 2011Unfortunately a software is never perfect.
If you think you have found a bug, report it using our ticket system. Please to help us to fix it by providing the following information : the browser you are using, including the exact version as precise an explanation as possible of the problem if possible, the steps taken resulting in the problem a link to the site / page in question
If you think you have solved the bug, fill in a ticket and attach to it a corrective patch.
You may also (...) -
Récupération d’informations sur le site maître à l’installation d’une instance
26 novembre 2010, parUtilité
Sur le site principal, une instance de mutualisation est définie par plusieurs choses : Les données dans la table spip_mutus ; Son logo ; Son auteur principal (id_admin dans la table spip_mutus correspondant à un id_auteur de la table spip_auteurs)qui sera le seul à pouvoir créer définitivement l’instance de mutualisation ;
Il peut donc être tout à fait judicieux de vouloir récupérer certaines de ces informations afin de compléter l’installation d’une instance pour, par exemple : récupérer le (...)
Sur d’autres sites (4470)
-
Combine multiple videos into one
10 janvier 2012, par StackedCrookedI have three videos :
- a lecture that was filmed with a video camera
- a video of the desktop capture of the computer used in the lecture
- and the video of the whiteboard
I want to create a final video with those three components taking up a certain region of the screen.
Is open-source software that would allow me to do this (mencoder, ffmpeg, virtualdub..) ? Which do you recommend ?
Or is there a C/C++ API that would enable me to create something like that programmatically ?
Edit
There will be multiple recorded lectures in the future. This means that I need a generic/automated solution.I'm currently checking out if I could write an application with GStreamer to do this job. Any comments on that ?
Solved !
I succeeded in doing this with GStreamer's videomixer element. I use the gst-launch syntax to create a pipeline and then load it with gst_parse_launch. It's a really productive way to implement complex pipelines.Here's a pipeline that takes two incoming video streams and a logo image, blends them into one stream and the duplicates it so that it simultaneously displayed and saved to disk.
desktop. ! queue
! ffmpegcolorspace
! videoscale
! video/x-raw-yuv,width=640,height=480
! videobox right=-320
! ffmpegcolorspace
! vmix.sink_0
webcam. ! queue
! ffmpegcolorspace
! videoscale
! video/x-raw-yuv,width=320,height=240
! vmix.sink_1
logo. ! queue
! jpegdec
! ffmpegcolorspace
! videoscale
! video/x-raw-yuv,width=320,height=240
! vmix.sink_2
vmix. ! t.
t. ! queue
! ffmpegcolorspace
! ffenc_mpeg2video
! filesink location="recording.mpg"
t. ! queue
! ffmpegcolorspace
! dshowvideosink
videotestsrc name="desktop"
videotestsrc name="webcam"
multifilesrc name="logo" location="logo.jpg"
videomixer name=vmix
sink_0::xpos=0 sink_0::ypos=0 sink_0::zorder=0
sink_1::xpos=640 sink_1::ypos=0 sink_1::zorder=1
sink_2::xpos=640 sink_2::ypos=240 sink_2::zorder=2
tee name="t" -
I need to create a streaming app Where videos store in aws S3
27 juillet 2023, par abuzar zaidiI need to create a video streaming app. where my videos will store in S3 and the video will stream from the backend. Right now I am trying to use ffmpeg in the backend but it does not work properly.


what am I doing wrong in this code ? And if ffmpeg not support streaming video that store in aws s3 please suggest other options.


Backend


const express = require('express');
const aws = require('aws-sdk');
const ffmpeg = require('fluent-ffmpeg');
const cors = require('cors'); 
const app = express();

// Set up AWS credentials
aws.config.update({
accessKeyId: '#######################',
secretAccessKey: '###############',
region: '###############3',
});

const s3 = new aws.S3();
app.use(cors());

app.get('/stream', (req, res) => {
const bucketName = '#######';
const key = '##############'; // Replace with the key/path of the video file in the S3 bucket
const params = { Bucket: bucketName, Key: key };
const videoStream = s3.getObject(params).createReadStream();

// Transcode to HLS format
 const hlsStream = ffmpeg(videoStream)
.format('hls')
.outputOptions([
 '-hls_time 10',
 '-hls_list_size 0',
 '-hls_segment_filename segments/segment%d.ts',
 ])
.pipe(res);

// Transcode to DASH format and pipe the output to the response
ffmpeg(videoStream)
.format('dash')
.outputOptions([
 '-init_seg_name init-stream$RepresentationID$.mp4',
 '-media_seg_name chunk-stream$RepresentationID$-$Number%05d$.mp4',
 ])
.output(res)
.run();
});

const port = 5000;
app.listen(port, () => {
console.log(`Server running on http://localhost:${port}`);
});



Frontend


import React from 'react';

 const App = () => {
 const videoUrl = 'http://localhost:3000/api/playlist/runPlaylist/6c3e7af45a3b8a5caf2fef17a42ef9a0'; // Replace with your backend URL
Please list down solution or option i can use here
 const videoUrl = 'http://localhost:5000/stream';
 return (
 <div>
 <h1>Video Streaming Example</h1>
 <video controls="controls">
 <source src="{videoUrl}" type="video/mp4"></source>
 Your browser does not support the video tag.
 </video>
 </div>
 );
 };

 export default App;



-
ASP.NET MVC - Converting Video Format From Email Attachment Scanner
24 juillet 2018, par BenHaywardWe have a Quartz scheduler that scans the company email account every 60 seconds, and will process those emails accordingly. Any attachments are stored in a byte array.
Video attachments need to be converted to an MP4 and then back to a byte array to be stored in the DB ; I am trying to use FFMPEG (fflib) to complete this, however I’m having trouble figuring out how it can be done with a byte array as the source - the company have stated that this conversion must be done before it enters the database.
Is the conversion of a byte array possible using the Process Class to access the FFMPEG CLI ?
Here is the code I currently have, just using local file locations (using fflib ffmpeg library).
public IList<documentstoreattachment> AddDocumentsToDocumentStore(IList<fileattachment> documentsToStore, Guid personId, IList<documentattributedto> documentAttributes)
{
var storedDocuments = new List<documentstoreattachment>();
foreach (var documentToStore in documentsToStore)
{
try
{
if (IsExtensionAllowed(documentToStore.AttachmentName))
{
if (documentToStore.MimeType == "mpeg")
{
Job2Convert job = new Job2Convert()
{
pszSrcFile = @"..\..\Amigo Loans 2018 Advert MPG.mpg",
pszDstFile = @"C:\Users\ben.hayward\Desktop\Amigo Loans 2018 Advert MPG.mp4",
pszDstFormat = "mp4",
pszAudioCodec = "aac",
nAudioChannels = 2,
nAudioBitrate = -1,
nAudioRate = -1,
pszVideoCodec = "h264",
nVideoBitrate = -1,
nVideoFrameRate = -1,
nVideoFrameWidth = -1,
nVideoFrameHeight = -1
};
_sut.ConvertFile(job);
}
storedDocuments.Add(AddDocumentToDocumentStore(documentToStore.AttachmentName, documentToStore.ByteArray, documentToStore.MimeType, personId, documentAttributes));
}
else
{
Logger.WarnFormat("AddDocumentsToDocumentStore: File extension not allowed for file name: {0}, person id: {1}", documentToStore.AttachmentName, personId);
}
}
catch (Exception e)
{
#region Error
Logger.Error(String.Format("There was a problem saving the document to the document store. The file name was {0}, person id: {1}",
documentToStore.AttachmentName, personId), e);
#endregion
}
}
return storedDocuments;
}
</documentstoreattachment></documentattributedto></fileattachment></documentstoreattachment>Thank you in advance.