
Recherche avancée
Médias (2)
-
Rennes Emotion Map 2010-11
19 octobre 2011, par
Mis à jour : Juillet 2013
Langue : français
Type : Texte
-
Carte de Schillerkiez
13 mai 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Texte
Autres articles (81)
-
Mise à jour de la version 0.1 vers 0.2
24 juin 2013, parExplications des différents changements notables lors du passage de la version 0.1 de MediaSPIP à la version 0.3. Quelles sont les nouveautés
Au niveau des dépendances logicielles Utilisation des dernières versions de FFMpeg (>= v1.2.1) ; Installation des dépendances pour Smush ; Installation de MediaInfo et FFprobe pour la récupération des métadonnées ; On n’utilise plus ffmpeg2theora ; On n’installe plus flvtool2 au profit de flvtool++ ; On n’installe plus ffmpeg-php qui n’est plus maintenu au (...) -
Personnaliser en ajoutant son logo, sa bannière ou son image de fond
5 septembre 2013, parCertains thèmes prennent en compte trois éléments de personnalisation : l’ajout d’un logo ; l’ajout d’une bannière l’ajout d’une image de fond ;
-
Keeping control of your media in your hands
13 avril 2011, parThe vocabulary used on this site and around MediaSPIP in general, aims to avoid reference to Web 2.0 and the companies that profit from media-sharing.
While using MediaSPIP, you are invited to avoid using words like "Brand", "Cloud" and "Market".
MediaSPIP is designed to facilitate the sharing of creative media online, while allowing authors to retain complete control of their work.
MediaSPIP aims to be accessible to as many people as possible and development is based on expanding the (...)
Sur d’autres sites (12108)
-
C# Bitmap to AVI / WMV with Compression
5 juillet 2019, par Digitalsa1ntPrelude :
I’m going to preface this with, I have been learning C# in my spare time at work, and that I have been staring at code for a solid two days trying to wrap my head around this problem. I am developing some software to be used with a visualiser that connects by USB to a standard Desktop PC, the software detects the capture device and loads frames into bitmap using a New Frame Event, this is then displayed in a ’picture box’ as a live video stream. The problem as it sits is trying to encorporate the ability to record the stream and save to file, preferably a WMV or a compressed AVI.
What’s been tried :
I have considered and looked into the following :
SharpAVI - cant seem to get this to compress or save the frames properly as it appears to mainly look at existing AVI files.
AForge.Video.VFW - AVI files can be created but are far too large to be used, due to restrictions on the user areas of the individuals who will be using this software.
AForge.Video.FFMPEG - Again due to considerations of those using this software I can’t have unmanaged DLL’s sat in the output folder with the Executable file, and unfortunately this particular DLL cant be compiled properly using Costura Fody.
AVIFile Library Wrapper (From Code Project) - Again can’t seem to get this to compress a stream correctly from Bitmaps from the New Frame Events.
DirectShow - Appears to use C++ and unfortunately is beyond my skill level at this time.
The Relevant Code Snippets :
Current References :
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Resources;
using System.Drawing.Imaging;
using System.IO;
//Aforge Video DLL's
using AForge.Video;
using AForge.Video.VFW;
using AForge.Video.DirectShow;
//Aforge Image DLL's
using AForge.Imaging;
using AForge.Imaging.Formats;
using AForge.Imaging.Filters;
//AviLibrary
using AviFile;Global Variables :
#region Global Variables
private FilterInfoCollection CaptureDevice; // list of available devices
private VideoCaptureDevice videoSource;
public System.Drawing.Image CapturedImage;
bool toggleMic = false;
bool toggleRec = false;
//aforge
AVIWriter aviWriter;
Bitmap image;
#endregionCode for Displaying Stream
#region Displays the Stream
void videoSource_NewFrame(object sender, NewFrameEventArgs eventArgs)
{
picBoxStream.SizeMode = PictureBoxSizeMode.Zoom;
picBoxStream.Image = (Bitmap)eventArgs.Frame.Clone();// clones the bitmap
if (toggleRec == true)
{
image = (Bitmap)eventArgs.Frame.Clone();
aviWriter.AddFrame(image);
}
}
#endregionCurrent Code for Recording Stream
#region Record Button
private void btnRecord_Click(object sender, EventArgs e)
{
if (toggleRec == false)
{
saveAVI = new SaveFileDialog();
saveAVI.Filter = "AVI Files (*.avi)|*.avi";
if (saveAVI.ShowDialog() == DialogResult.OK)
{
aviWriter = new AVIWriter();
aviWriter.Open(saveAVI.FileName, 1280, 720);
toggleRec = true;
Label lblRec = new Label();
}
}
else if (toggleRec == true)
{
aviWriter.Close();
toggleRec = false;
}
}
#endregionI apoligise if the above code doesn’t look quite right, I have been swapping, changing and recoding those three sections a lot in order to find a working combination. This means that it’s rather untidy but I didn’t see the point in cleaning it all up until I had the code working. That being said really any help that you can provide is greatfully recieved, even if it’s a case of what I want to do just cannot be done.
Thank you in advance.
EDIT : 2019 :
It’s been awhile since I posted this and it still gets the odd bit of interest here and there. Back when I posted this I was teaching myself to code and I had this weird quirk that I didn’t like using 3rd party libraries if I could avoid it, I wanted to do my own work, since then I’ve learnt a lot and one of those things is that the open source world is immense, impressive and kind. So if there is a 3rd party library that does what you want just use it, it’ll save you time.
-
FFMPEG unexpected behavior inside nodejs Lambda function
29 juin 2021, par Rafael CasteloI'm trying to burn subtitles into a video using FFMPEG. I'm working within a serverless lambda architecture, and we've used FFMPEG with lambda by using layers before and everything worked okay.
Now I'm trying to burn subtitles inside a video using the following command :


ffmpeg -i https://some-bucket.s3.region.amazonaws.com/my-video.mp4 -f mp4 -vf subtitles=sub.srt subtitled-video.mp4



The issue is, that command works perfectly inside my local machine or any other instance I try. However inside my lambda function, I just get the original video without the subtitles.
At first I thought it could be the ffmpeg build I was using, but after trying wiht it, it worked in every other environment I tried.


Also I don't get any error in the output from the ffmpeg job inside lambda, everything seeems to work okay. Just that it doesn't burn the subtitles


I hope you can help me with this issue. Or at least point me in the right direction.


Thanks in advance


-
how to download portion of video which was uploaded into AWS s3 bucket, though Nodejs SDKs
22 février 2024, par rama rangeswara reddyI have uploaded a 1GB .mp4 file to an AWS S3 bucket. Using the AWS-SDK provided by the npm package, I am able to download the entire video. However, I have a specific requirement to generate a thumbnail at the 6-second mark of the video. Currently, I download the entire 1GB video to my local machine and then generate the thumbnail at the desired duration.


To optimize server resources and reduce disk load, I plan to download only the first 10 seconds of the video, which should be approximately 10MB or less in size. By doing so, I can significantly reduce download time and server load while still fulfilling my requirement of generating the thumbnail at the 6-second mark. Therefore, instead of downloading the entire 1GB video, I aim to download only the 10MB segment corresponding to the first 10 seconds of the video.


I am using nodejs, expressJS, as backed Technologies.


`


`async function downloadS3FileToLocalDirAndReturnPath(videoKey) {
 return new Promise(async (resolve, reject) => {
 try {
 AWS.config.update({
 accessKeyId: config.AWS.KEYS.accessKeyId,
 secretAccessKey: config.AWS.KEYS.secretAccessKey,
 region: config.AWS.KEYS.region,
 httpOptions: config.AWS.KEYS.httpOptions
 });
 const s3 = new AWS.S3();

 // Specify the local file path where you want to save the downloaded video
 const localFilePath = `${os.tmpdir()}/${Date.now()}_sre.mp4`;

 // Configure the parameters for the S3 getObject operation
 const params = {
 Bucket: config.AWS.S3_BUCKET,
 Key: videoKey
 };

 const result = await s3.getObject(params).promise();
 const fileContent = result.Body;
 fs.writeFileSync(localFilePath, fileContent);
 resolve(localFilePath);
 } catch (error) {
 reject(error);
 }
 });
}`



this code was working fine to download the whole video , but i need to download only first 10 seconds duration


S3 : How to do a partial read / seek without downloading the complete file ?


I tried this ,before posting this question with above post, video was downloading , it was not playing , by throwing this error , the file contains no playable streams


async function generateThumbnails(videoKey) {

const s3 = new AWS.S3();

const params = {
 Bucket: KEYS.bucket,
 Key: videoKey, // Specify the key of the video file in S3
 Range: `bytes=0-${1024 * 800}`, // Specify the range of bytes you want to retrieve
};

const file = fs.createWriteStream(`/tmp/${Date.now()}_rama.mp4`);

const s3Stream = s3.getObject(params).createReadStream();

s3Stream.pipe(file);

s3Stream.on("error", (error) => {
 console.log("Error Occured while File downloading!! ");
});

s3Stream.on("finish", () => {
 console.log("File downloaded Successfully ");
});



}