
Recherche avancée
Médias (91)
-
Géodiversité
9 septembre 2011, par ,
Mis à jour : Août 2018
Langue : français
Type : Texte
-
USGS Real-time Earthquakes
8 septembre 2011, par
Mis à jour : Septembre 2011
Langue : français
Type : Texte
-
SWFUpload Process
6 septembre 2011, par
Mis à jour : Septembre 2011
Langue : français
Type : Texte
-
La conservation du net art au musée. Les stratégies à l’œuvre
26 mai 2011
Mis à jour : Juillet 2013
Langue : français
Type : Texte
-
Podcasting Legal guide
16 mai 2011, par
Mis à jour : Mai 2011
Langue : English
Type : Texte
-
Creativecommons informational flyer
16 mai 2011, par
Mis à jour : Juillet 2013
Langue : English
Type : Texte
Autres articles (41)
-
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 -
Support audio et vidéo HTML5
10 avril 2011MediaSPIP utilise les balises HTML5 video et audio pour la lecture de documents multimedia en profitant des dernières innovations du W3C supportées par les navigateurs modernes.
Pour les navigateurs plus anciens, le lecteur flash Flowplayer est utilisé.
Le lecteur HTML5 utilisé a été spécifiquement créé pour MediaSPIP : il est complètement modifiable graphiquement pour correspondre à un thème choisi.
Ces technologies permettent de distribuer vidéo et son à la fois sur des ordinateurs conventionnels (...) -
HTML5 audio and video support
13 avril 2011, parMediaSPIP uses HTML5 video and audio tags to play multimedia files, taking advantage of the latest W3C innovations supported by modern browsers.
The MediaSPIP player used has been created specifically for MediaSPIP and can be easily adapted to fit in with a specific theme.
For older browsers the Flowplayer flash fallback is used.
MediaSPIP allows for media playback on major mobile platforms with the above (...)
Sur d’autres sites (6060)
-
Combining multiple image files into a video while using filter_complex to apply a watermark
14 décembre 2017, par GeuisI’m trying to combine two ffmpeg operations into a single one.
Currently I have two sets of ffmpeg commands that first generate a video from existing images, then runs that video through ffmpeg again to apply a watermark.
I’d like to see if its possible to combine these into a single operation.
# Create the source video
ffmpeg -y \
-framerate 1/1 \
-i layer-%d.png \
-r 30 -vcodec libx264 -preset ultrafast -crf 23 -pix_fmt yuv420p \
output.mp4
# Apply the watermark and render the final output
ffmpeg -y \
-i output.mp4 \
-i logo.png \
-filter_complex "[1:v][0:v]scale2ref=40:40[a][b];[b][a]overlay=(80):(main_h-200-80)" \
final.mp4 -
How to extract audio from a video in Flutter ?
14 janvier, par Mohammed BekeleI have an image picker in Flutter to get the video from the device, and then I created a function to extract the audio using ffmpeg_kit_flutter package.


Future<void> _convertVideoToAudio() async {
 if (_pickedVideo != null) {
 bool? permissionGranted = await _requestStoragePermission();
 if (permissionGranted != true) {
 print("Storage permission denied.");
 return;
 }

 String videoPath = _pickedVideo!.path;
 _outputPath = await getOutputFilePath(); // Get platform-specific path

 try {
 // Ensure the output directory exists
 await Directory(path.dirname(_outputPath)).create(recursive: true);

 await FFmpegKit.execute(
 "-i $videoPath -vn -c:a libmp3lame -q:a 2 $_outputPath"); // FFmpeg command
 print("Video converted to audio successfully!");
 _showSuccessDialog(); // Display success dialog

 try {
 final String fileName = path.basename(_outputPath);
 final transcription =
 await _sendAudioForTranscription(_outputPath, fileName);

 if (transcription != null) {
 setState(() {
 _transcription = transcription;
 });
 } else {
 setState(() {
 _transcription = "Transcription failed";
 });
 }
 } catch (e) {
 print('Error in transcription request: $e');
 setState(() {
 _transcription = "Network request failed";
 });
 }
 } catch (e) {
 print("Error converting video: $e");
 _showErrorDialog(); // Display error dialog
 } finally {
 setState(() {
 _pickedVideo = null; // Clear selected video
 });
 }
 } else {
 print("Please pick a video first.");
 }
 }
</void>


and for getting the path I have this function


Future<string> getOutputFilePath() async {
 final directory = await getApplicationDocumentsDirectory();
 final downloadsDirectory = Directory('${directory.path}/downloads');
 if (!(await downloadsDirectory.exists())) {
 await downloadsDirectory.create(recursive: true);
 }
 final String fileName = path
 .basename(_pickedVideo!.path)
 .replaceAll('.mp4', '.mp3'); // Replace extension
 final filePath = '${downloadsDirectory.path}/$fileName';
 return filePath;
 }
</string>


but this is not working somehow. Because after I get the audio I'm uploading it to a server with http, then it displays that there is no path where the audio supposed to be.


-
ffmpeg complex filter - multiple crops on black background
31 octobre 2017, par Kevin O'HaraWe are attempting to process a video file by cropping it into several pieces and arranging it on a black background which is exactly 1920x1080. The following command runs but it never completes and we have to kill the process.
Is there something wrong with how we’re trying to do this ?
ffmpeg -i in.mov -y -filter_complex "\
color=s=1920x1080:c=black[bg];\
[0:v]crop=w=1920:h=ih:x=0:y=0[crop1];\
[0:v]crop=w=iw-1920:h=ih:x=1920:y=0[crop2];\
[bg][crop1]overlay=x=0:y=0[out1];\
[out1][crop2]overlay=x=0:y=h[final]" \
-map [final] out.mov