Recherche avancée
Médias (1)
-
Richard Stallman et le logiciel libre
19 octobre 2011, par
Mis à jour : Mai 2013
Langue : français
Type : Texte
Autres articles (112)
-
Des sites réalisés avec MediaSPIP
2 mai 2011, parCette page présente quelques-uns des sites fonctionnant sous MediaSPIP.
Vous pouvez bien entendu ajouter le votre grâce au formulaire en bas de page. -
Les autorisations surchargées par les plugins
27 avril 2010, parMediaspip core
autoriser_auteur_modifier() afin que les visiteurs soient capables de modifier leurs informations sur la page d’auteurs -
Encoding and processing into web-friendly formats
13 avril 2011, parMediaSPIP automatically converts uploaded files to internet-compatible formats.
Video files are encoded in MP4, Ogv and WebM (supported by HTML5) and MP4 (supported by Flash).
Audio files are encoded in MP3 and Ogg (supported by HTML5) and MP3 (supported by Flash).
Where possible, text is analyzed in order to retrieve the data needed for search engine detection, and then exported as a series of image files.
All uploaded files are stored online in their original format, so you can (...)
Sur d’autres sites (7475)
-
New Piwik Mobile 2.2.0 is released
21 décembre 2014, par Thomas Steur — Piwik Mobile ReleasesWe are proud to announce that Piwik Mobile 2.2.0 is now available ! This new version brings many improvements to our Android app. Here’s the list of changes :
- Android : The keyboard is no longer displayed when opening the app [#5320]
- Android : Back button did not work in a few screens and could cause the app to unexpectedly close under circumstances [#5316]
- Android : The graph is now displayed fullscreen on tablets when maximizing it [#5315]
- Android : New material design icons [#5310]
- Android : Better exit workflow – we now open the left sidebar before closing the app if the left sidebar was opened at least once. Another back button press closes the app [#4305]
- iOS : The left sidebar was positioned too far down on iPhone 4s with iOS 8 [#5306]
- Region is now shown in visitor screen if possible [#5300]
- Other performance, UI and usability improvements
- List of all 18 closed issues
Download
Update now or install either the iOS version or the Android version.
In case you are an Android user who is not using the Google Play Store you can download Piwik Mobile 2.2.0 for Android 4+.Feel free to send us feature wishes, bug reports, wireframes, mockups or even layouts. We can improve Piwik Mobile much better with your feedback. and suggestions
-
New Piwik Mobile 2.2.0 is released
21 décembre 2014, par Thomas Steur — Piwik Mobile ReleasesWe are proud to announce that Piwik Mobile 2.2.0 is now available ! This new version brings many improvements to our Android app. Here’s the list of changes :
- Android : The keyboard is no longer displayed when opening the app [#5320]
- Android : Back button did not work in a few screens and could cause the app to unexpectedly close under circumstances [#5316]
- Android : The graph is now displayed fullscreen on tablets when maximizing it [#5315]
- Android : New material design icons [#5310]
- Android : Better exit workflow – we now open the left sidebar before closing the app if the left sidebar was opened at least once. Another back button press closes the app [#4305]
- iOS : The left sidebar was positioned too far down on iPhone 4s with iOS 8 [#5306]
- Region is now shown in visitor screen if possible [#5300]
- Other performance, UI and usability improvements
- List of all 18 closed issues
Download
Update now or install either the iOS version or the Android version.
In case you are an Android user who is not using the Google Play Store you can download Piwik Mobile 2.2.0 for Android 4+.Feel free to send us feature wishes, bug reports, wireframes, mockups or even layouts. We can improve Piwik Mobile much better with your feedback. and suggestions
-
node.js ffmpeg pass directly to aws s3 bucket
30 décembre 2022, par Eivydas VickusHow to pass ffmpeg output directly to aws s3 bucket ? It should not store output file on my pc. This is my code.



 import {
 DeleteObjectCommand,
 GetObjectCommand,
 PutObjectCommand,
 PutObjectCommandInput,
 S3,
 S3Client,
 } from '@aws-sdk/client-s3';
 import { Inject, Injectable } from '@nestjs/common';
 import { ConfigType } from '@nestjs/config';
 import { nanoid } from 'nanoid';
 import awsConfig from './aws.config';
 import * as path from 'path';
 import { VideoInterface } from '../video/video.interface';
 import { PassThrough } from 'node:stream';

 @Injectable()
 export class S3BucketService {
 public readonly client = new S3Client({
 region: this.config.AWS_BUCKET_REGION,
 credentials: {
 accessKeyId: this.config.AWS_ACCESS_KEY,
 secretAccessKey: this.config.AWS_SECRET_KEY,
 },
 });
 constructor(
 @Inject(awsConfig.KEY)
 private readonly config: ConfigType<typeof awsconfig="awsconfig">,
 ) {}

 async videoPut(putObjectInput: Omit) {
 return new PutObjectCommand({
 ...putObjectInput,
 Bucket: this.config.AWS_BUCKET_NAME,
 });
 }

 async uploadFile({ fileName, file, folder }: VideoInterface) {
 const fullPath = path.normalize(`${folder}/${fileName}`);
 return await this.client.send(
 await this.videoPut({
 Key: fullPath,
 Body: file,
 }),
 );
 }
 }
</typeof>


 const passthroughs = new PassThrough();
 await new Promise<void>(async (resolve, reject) => {
 ffmpeg(fs.createReadStream(file.path))
 .format('webm')
 .outputOptions([
 `-vf scale=${videoOptions[2].scale}`,
 `-b:v ${videoOptions[2].avgBitRate}`,
 `-minrate ${videoOptions[2].minBitRate}`,
 `-maxrate ${videoOptions[2].maxBitRate}`,
 `-tile-columns ${videoOptions[2].tileColumns}`,
 `-g ${videoOptions[2].g}`,
 `-threads ${videoOptions[2].threads}`,
 `-quality ${videoOptions[2].quality}`,
 `-crf ${videoOptions[2].crf}`,
 `-c:v ${videoOptions[2].videoCodec}`,
 `-c:a ${videoOptions[2].audioCodec}`,
 `-speed ${videoOptions[2].speed}`,
 `-y`,
 ])
 .pipe(passthroughs, { end: true })
 .on('error', (err) => {
 reject(err);
 throw new InternalServerErrorException(err);
 })
 .on('data', (data) => {
 console.log({ data });
 })
 .on('end', async () => {
 console.log('Video conversion complete');
 resolve();
 });
 });

 await this.s3BucketService.uploadFile({
 folder: AwsFolder.VIDEOS,
 file: passthroughs,
 fileName: `${nanoid()}_${videoOptions[2].scale}.webm`,
 });

</void>

However i am getting error
Error: Output stream closed. I saw on google different variants withPassthroughnone of them are working. So how it should be done ? By The Way I am using@aws-sdk/client-s3and most solutions on google is using aws sdk-2. Maybe streams work different with version 3 ?