
Recherche avancée
Autres articles (47)
-
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. -
Support de tous types de médias
10 avril 2011Contrairement à beaucoup de logiciels et autres plate-formes modernes de partage de documents, MediaSPIP a l’ambition de gérer un maximum de formats de documents différents qu’ils soient de type : images (png, gif, jpg, bmp et autres...) ; audio (MP3, Ogg, Wav et autres...) ; vidéo (Avi, MP4, Ogv, mpg, mov, wmv et autres...) ; contenu textuel, code ou autres (open office, microsoft office (tableur, présentation), web (html, css), LaTeX, Google Earth) (...)
-
Librairies et logiciels spécifiques aux médias
10 décembre 2010, parPour un fonctionnement correct et optimal, plusieurs choses sont à prendre en considération.
Il est important, après avoir installé apache2, mysql et php5, d’installer d’autres logiciels nécessaires dont les installations sont décrites dans les liens afférants. Un ensemble de librairies multimedias (x264, libtheora, libvpx) utilisées pour l’encodage et le décodage des vidéos et sons afin de supporter le plus grand nombre de fichiers possibles. Cf. : ce tutoriel ; FFMpeg avec le maximum de décodeurs et (...)
Sur d’autres sites (9437)
-
Pass camera input to ffmpeg
30 mai 2017, par Sachin SononeI am trying to develop an delphi app which will show a preview of the camera in the delphi form and then send the frames of video as images to the ffmpeg in the stdin of ffmpeg. ffmpeg then broadcast the video to wowza server over rtmp. but fmpeg gives an error ’pipe:0 Bad file descriptor’
FFMPEG command:
ffmpeg -f image2pipe -i pipe:0 -c:v libx264 -y -report -f flv wowza_urlI followed this https://msdn.microsoft.com/en-us/library/ms682499(VS.85).aspx article to build the parent app which will open ffmpeg as a child and use FFmpeg’s stdin to pass input
// Create a pipe for the child process's STDOUT.
Createpipe(STDOut_ReadPipe, STDOut_WritePipe, @Security,0);
// Ensure the read handle to the pipe for STDOUT is not inherited.
SetHandleInformation(STDOut_ReadPipe,HANDLE_FLAG_INHERIT,0);
// Create a pipe for the child process's STDIN.
if ( CreatePipe(STDIn_ReadPipe , STDIn_WritePipe, @Security, 0) = true) then
// Ensure the write handle to the pipe for STDIN is not inherited.
SetHandleInformation(STDIn_WritePipe, HANDLE_FLAG_INHERIT, 0) ;This the code to start ffmpeg process
FillChar(StartupInfo,Sizeof(StartupInfo),0);
StartupInfo.cb := Sizeof(StartupInfo);
StartupInfo.dwFlags := STARTF_USESTDHANDLES;
StartupInfo.wShowWindow := 1;
S := args;
UniqueString(S);
StartupInfo.hStdError := STDOut_WritePipe;
StartupInfo.hStdOutput := STDOut_WritePipe;
StartupInfo.hStdInput := STDIn_ReadPipe;but as soon as program start ffmpeg exits with the error.
This is the full console log of the ffmpeg
ffmpeg started on 2017-05-30 at 18:45:36
Report written to "ffmpeg-20170530-184536.log"
Command line:
"ffmpeg.exe" -f image2pipe -i pipe:0 -report -movflags +faststart -tune
zerolatency -an -pix_fmt yuv420p -preset ultrafast -vcodec libx264 -b:v 250k
-y -f flv test.flv
ffmpeg version N-85750-ga75ef15 Copyright (c) 2000-2017 the FFmpeg
developers
built with gcc 6.3.0 (GCC)
configuration: --enable-gpl --enable-version3 --enable-cuda --enable-cuvid
--enable-d3d11va --enable-dxva2 --enable-libmfx --enable-nvenc --enable-
avisynth --enable-bzlib --enable-fontconfig --enable-frei0r --enable-gnutls
--enable-iconv --enable-libass --enable-libbluray --enable-libbs2b --enable-
libcaca --enable-libfreetype --enable-libgme --enable-libgsm --enable-
libilbc --enable-libmodplug --enable-libmp3lame --enable-libopencore-amrnb
--enable-libopencore-amrwb --enable-libopenh264 --enable-libopenjpeg --
enable-libopus --enable-librtmp --enable-libsnappy --enable-libsoxr --
enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvidstab
--enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-
libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-
libxavs --enable-libxvid --enable-libzimg --enable-lzma --enable-zlib
libavutil 55. 61.100 / 55. 61.100
libavcodec 57. 93.100 / 57. 93.100
libavformat 57. 72.101 / 57. 72.101
libavdevice 57. 7.100 / 57. 7.100
libavfilter 6. 88.100 / 6. 88.100
libswscale 4. 7.101 / 4. 7.101
libswresample 2. 8.100 / 2. 8.100
libpostproc 54. 6.100 / 54. 6.100
Splitting the commandline.
Reading option '-f' ... matched as option 'f' (force format) with
argument 'image2pipe'.
Reading option '-i' ... matched as input url with argument 'pipe:0'.
Reading option '-report' ... matched as option 'report' (generate a
report) with argument '1'.
Reading option '-movflags' ... matched as AVOption 'movflags' with
argument '+faststart'.
Reading option '-tune' ... matched as AVOption 'tune' with argument
'zerolatency'.
Reading option '-an' ... matched as option 'an' (disable audio) with
argument '1'.
Reading option '-pix_fmt' ... matched as option 'pix_fmt' (set pixel
format)
with argument 'yuv420p'.
Reading option '-preset' ... matched as AVOption 'preset' with argument
'ultrafast'.
Reading option '-vcodec' ... matched as option 'vcodec' (force video codec
('copy' to copy stream)) with argument 'libx264'.
Reading option '-b:v' ... matched as option 'b' (video bitrate (please use -
b:v)) with argument '250k'.
Reading option '-y' ... matched as option 'y' (overwrite output files)
with
argument '1'.
Reading option '-f' ... matched as option 'f' (force format) with argument
'flv'.
Reading option 'test.flv' ... matched as output url.
Finished splitting the commandline.
Parsing a group of options: global .
Applying option report (generate a report) with argument 1.
Applying option y (overwrite output files) with argument 1.
Successfully parsed a group of options.
Parsing a group of options: input url pipe:0.
Applying option f (force format) with argument image2pipe.
Successfully parsed a group of options.
Opening an input file: pipe:0.
[pipe @ 003bdea0] Setting default whitelist 'crypto'
[AVIOContext @ 03115e60] Statistics: 0 bytes read, 0 seeks
pipe:0: Bad file descriptor' -
How to manipulate large media files in Node.js in a non-blocking way
26 août 2017, par Jacob Prud'hommeI am currently creating a Node.js app that receives an audio/video stream, writes it progressively to the disk, then transcodes it with ffmpeg once the stream has ended and sends it somewhere else to be stored, deleting it locally.
Besides the fact that I can transcode the stream before writing it to streamline the entire thing (this feature is planned), what is the best way to handle these operations on potentially large files ?
I am aware of spawing child processes (the method I’m currently using), but I’m not sure how they actually function, even after much reading. I’m not even sure using "spawn" is exactly what I want here (is "fork" a better option ?).
Essentially, I want to know how to transcode -> upload -> delete the file without blocking Node.js so that multiple users can do the same thing simultaneously. Also, I am thinking of putting all 3 operations in a single bash script so that they happen synchronously in sequential order, is this fine ?
-
Evolution #3742 : Autorisation d’un redacteur à modifier document publié ?
3 mai 2017, par cedric -Le mode doit passer sur le lien et non sur le document, c’est un problème connu mais pas encore traité cf #2099
Par contre la rotation de l’image, c’est une propriété intrinsèque à l’image : c’est pas une chose propre à l’affichage dans un article. Si on tourne l’image c’est comme si on la recadre, qu’on la change etc. C’est l’image elle même qui est modifiée et elle est modifiée partout.
On ne changera pas ça.Par contre il faut vérifier qu’un rédacteur n’a pas le droit de modifier un document (titre, image…) qui est utilisé par un article déjà publié (cohérence avec les autres autorisations), mais ça n’empêchera pas 2 admins de se marcher sur les pieds. Il y a un peu de règles éditoriales à définir aussi