
Recherche avancée
Médias (1)
-
Rennes Emotion Map 2010-11
19 octobre 2011, par
Mis à jour : Juillet 2013
Langue : français
Type : Texte
Autres articles (38)
-
(Dés)Activation de fonctionnalités (plugins)
18 février 2011, parPour gérer l’ajout et la suppression de fonctionnalités supplémentaires (ou plugins), MediaSPIP utilise à partir de la version 0.2 SVP.
SVP permet l’activation facile de plugins depuis l’espace de configuration de MediaSPIP.
Pour y accéder, il suffit de se rendre dans l’espace de configuration puis de se rendre sur la page "Gestion des plugins".
MediaSPIP est fourni par défaut avec l’ensemble des plugins dits "compatibles", ils ont été testés et intégrés afin de fonctionner parfaitement avec chaque (...) -
Installation en mode ferme
4 février 2011, parLe mode ferme permet d’héberger plusieurs sites de type MediaSPIP en n’installant qu’une seule fois son noyau fonctionnel.
C’est la méthode que nous utilisons sur cette même plateforme.
L’utilisation en mode ferme nécessite de connaïtre un peu le mécanisme de SPIP contrairement à la version standalone qui ne nécessite pas réellement de connaissances spécifique puisque l’espace privé habituel de SPIP n’est plus utilisé.
Dans un premier temps, vous devez avoir installé les mêmes fichiers que l’installation (...) -
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 (8097)
-
Why iFrame is a good idea
15 octobre 2009I’ve seen some hilariously uninformed posts about the new Apple iFrame specification. Let me take a minute to explain what it actually is.
First off, as opposed to what the fellow in the Washington Post writes, it’s not really a new format. iFrame is just a way of using formats that we’ve already know and love. As the name suggests, iFrame is just an i-frame only H.264 specification, using AAC audio. An intraframe version of H.264 eh ? Sounds a lot like AVC-Intra, right ? Exactly. And for exactly the same reasons - edit-ability. Whereas AVC-Intra targets the high end, iFrame targets the low end.
Even when used in intraframe mode, H.264 has some huge advantage over the older intraframe codecs like DV or DVCProHD. For example, significantly better entropy coding, adaptive quantization, and potentially variable bitrates. There are many others. Essentially, it’s what happens when you take DV and spend another 10 years working on making it better. That’s why Panasonic’s AVC-Intra cameras can do DVCProHD quality video at half (or less) the bitrate.
Why does iFrame matter for editing ? Anyone who’s tried to edit video from one of the modern H.264 cameras without first transcoding to an intraframe format has experienced the huge CPU demands and sluggish performance. Behind the scenes it’s even worse. Because interframe H.264 can have very long GOPs, displaying any single frame can rely on dozens or even hundreds of other frames. Because of the complexity of H.264, building these frames is very high-cost. And it’s a variable cost. Decoding the first frame in a GOP is relatively trivial, while decoding the middle B-frame can be hugely expensive.
Programs like iMovie mask that from the user in some cases, but at the expensive of high overhead. But, anyone who’s imported AVC-HD video into Final Cut Pro or iMovie knows that there’s a long "importing" step - behind the scenes, the applications are transcoding your video into an intraframe format, like Apple Intermediate or ProRes. It sort of defeats one of the main purposes of a file-based workflow.
You’ve also probably noticed the amount of time it takes to export a video in an interframe format. Anyone who’s edited HDV in Final Cut Pro has experienced this. With DV, doing an "export to quicktime" is simply a matter of Final Cut Pro rewriting all of the data to disk - it’s essentially a file copy. With HDV, Final Cut Pro has to do a complete reencode of the whole timeline, to fit everything into the new GOP structure. Not only is this time consuming, but it’s essentially a generation loss.
iFrame solves these issues by giving you an intraframe codec, with modern efficiency, which can be decoded by any of the H.264 decoders that we already know and love.
Having this as an optional setting on cameras is a huge step forward for folks interested in editing video. Hopefully some of the manufacturers of AVC-HD cameras will adopt this format as well. I’ll gladly trade a little resolution for instant edit-ability.
-
Shaking/trembling in video slideshow generated by frames from an image
18 mai 2017, par razielI have a PHP program which is used to generate a video slideshow from the series of images. Basically, I just need to smoothly ‘move’ from one image area to the another one according to the specified top/left coordinates and width/height area of the image. In order to do smooth movement, I use easing functions during the coordinates calculations for the each of video frame. I make an jpeg image frame based on these calculations using PHP’s Imagick library, then I combine all the generated frames into a single video using ffmpeg command.
<?php
const TEMP_FRAMES_DIR = __DIR__;
const VIDEO_WIDTH = 1080;
const VIDEO_HEIGHT = 720;
const FPS = 30;
const MOVEMENT_DURATION_SECONDS = 3;
const IMAGE_PATH = __DIR__ . '/test_image.png';
$start_coords = [
'x' => 100,
'y' => 100,
'width' => 480,
'height' => 270
];
$end_coords = [
'x' => 400,
'y' => 200,
'width' => 480,
'height' => 270
];
$timeline = make_timeline($start_coords, $end_coords);
render_frames(IMAGE_PATH, $timeline);
render_video_from_frames();
function make_timeline($start_coords, $end_coords) {
$timeline = [];
$total_frames = MOVEMENT_DURATION_SECONDS * FPS;
$x_change = $end_coords['x'] - $start_coords['y'];
$y_change = $end_coords['y'] - $start_coords['y'];
$width_change = $end_coords['width'] - $start_coords['width'];
$height_change = $end_coords['height'] - $start_coords['height'];
for ($i = 0; $i < $total_frames; $i++) {
$timeline[$i] = [
'x' => easingOutExpo($i, $start_coords['x'], $x_change, $total_frames),
'y' => easingOutExpo($i, $start_coords['y'], $y_change, $total_frames),
'width' => easingOutExpo($i, $start_coords['width'], $width_change, $total_frames),
'height' => easingOutExpo($i, $start_coords['height'], $height_change, $total_frames)
];
}
return $timeline;
}
function render_frames($image_path, $timeline) {
$image = new Imagick($image_path);
//remove frames from the previous render
array_map('unlink', glob( TEMP_FRAMES_DIR . "/frame*" ));
foreach ($timeline as $frame_number => $frame) {
$frame_img = clone $image;
$frame_img->cropImage($frame["width"],$frame["height"], $frame["x"],$frame["y"]);
$frame_img->resizeImage(VIDEO_WIDTH, VIDEO_HEIGHT, imagick::FILTER_LANCZOS, 0.9);
$frame_img->writeImage(TEMP_FRAMES_DIR. "/frame$frame_number.jpg");
}
}
function render_video_from_frames() {
$fps = FPS;
$frames_dir = TEMP_FRAMES_DIR;
$SEP = DIRECTORY_SEPARATOR;
$video_file = $frames_dir. $SEP . 'video.mp4';
if (file_exists($video_file)) unlink($video_file);
system("ffmpeg -framerate $fps -i $frames_dir{$SEP}frame%01d.jpg $video_file");
}
function easingOutExpo($t, $b, $c, $d) {
return $c * ( -pow( 2, -10 * $t/$d ) + 1 ) + $b;
}The problem is that I have annoying shaking/trembling when I need to move at a low speed (like at the end of easing out expo function).
Here you can get the test video with the problem, the test image which was used and the PHP script :
https://drive.google.com/drive/u/1/folders/0B9FOrF6IlWaGeHJCS1h6djhVZ28You can see this shaking starting from the middle of the test video ( 1.5 sec).
How can I avoid shaking in such kind of situations ? Thanks in advance !
-
Privacy in Business : What Is It and Why Is It Important ?
13 juillet 2022, par Erin — Privacy