
Recherche avancée
Autres articles (8)
-
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 (...) -
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 (...) -
Other interesting software
13 avril 2011, parWe don’t claim to be the only ones doing what we do ... and especially not to assert claims to be the best either ... What we do, we just try to do it well and getting better ...
The following list represents softwares that tend to be more or less as MediaSPIP or that MediaSPIP tries more or less to do the same, whatever ...
We don’t know them, we didn’t try them, but you can take a peek.
Videopress
Website : http://videopress.com/
License : GNU/GPL v2
Source code : (...)
Sur d’autres sites (3448)
-
How do I correctly convert .avi to .flv with ffmpeg ? [closed]
25 septembre 2012, par terbooterUPDATE
Shame on me )
I chacked red5 logs again and found that I placed converted files to wrong place.
Now all works fineI have two red5 apps.
-
Recorder. It can record live stream and save it to flv file to disk
private void startRecord(String uid, String name, IConnection connection) {
// Get a reference to the current broadcast stream.
ClientBroadcastStream stream = (ClientBroadcastStream) this.getBroadcastStream(
connection.getScope(), name);
try {
// Save the stream to disk.
String path = uid + "/" + name;
stream.saveAs(path, true);
System.out.println("file..:" + stream.getSaveFilename());
} catch (Exception e) {
System.out.println("Error while saving stream: " + name + e);
}
}
private void stopRecord(String name) {
IConnection conn = Red5.getConnectionLocal();
System.out.println("Stop recording show for: {}" + conn.getScope().getContextPath());
ClientBroadcastStream stream = (ClientBroadcastStream) this.getBroadcastStream(conn.getScope(), name);
// Stop recording.
if (stream != null) {
stream.stopRecording();
}
} -
Second red5 app (Chat) streams recorded flv file to flash client
public static String serverStreamCreate(String path, String streamName) {
IServerStream serverStream = StreamUtils.createServerStream(Red5.getConnectionLocal().getScope(), streamName);
SimplePlayItem item = SimplePlayItem.build(path);
IPlaylistController controller = new MyPlayListController();
serverStream.setPlaylistController(controller);
serverStream.setRepeat(false);
serverStream.addItem(item);
serverStream.addItem(item);
serverStream.start();
return streamName;
}
If I record stream from flash client to flv file with Recorder and after that stream this flv file back to client with Chat, all works fine.
Now I want to convert avi file to flv and stream it from red5 app to flash client.
I used ffmpegffmpeg -i 24.avi -ar 22050 -an -f flv -b 500k -s 320x240 -y 24_c.flv
But if I stream 24_c.flv from Chat app flash client have no video.
24_c.flv cant be playd by VLC player and have same code information as flv file created by Recorder red5 app.I really dont know where to dig.
-
-
FFmpegPHP get thumbnail from external URL
22 janvier 2013, par jValdronI'm trying to create thumbnails from external videos, mostly MP4s and FLVs. I'm using FFmpegPHP. I already have the thumbnail generation working fine, however, I need to load the video entirely on my server first. Would it be possible to stream only a small part of the video then extract the thumbnail from that ?
Here's the code I have so far :
require_once PRIV . 'Vendor/FFmpegPHP/FFmpegAutoloader.php';
// Download the whole video.
$video = file_get_contents($_PUT['video']);
$file = 'path_to_cache';
file_put_contents($file, $video);
$movie = new FFmpegMovie($file);
// Generate the thumbnail.
$thumb = $movie->getFrame($movie->getFrameCount() / 2);
$thumb->resize(320, 240);
imagejpeg($thumb->toGDImage(), 'path_to_thumb');Anyone has a suggestion ?
EDIT
As Brad suggested, here is the updated code :
$file = CACHE . 'moodboard_video_' . rand();
$fh = fopen($file, 'w');
$size = 0;
curl_setopt($ch, CURLOPT_URL, $_PUT['video']);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_WRITEFUNCTION, function($ch, $data) use($fh, &$size){
$length = fwrite($fh, $data);
if($length === FALSE) {
return 0;
} else {
$size += $length;
}
// Downloads 1MB.
return $size < 1024 * 1024 * XXXXXX ? $length : 0;
});
curl_exec($ch);
fclose($fh);
curl_close($ch);
// Create the thumbnail.
$thumb = $movie->getFrame(XXXXXX);
$thumb->resize(static::DEFAULT_THUMBNAIL_WIDTH, $thumb->getHeight() / $thumb->getWidth() * static::DEFAULT_THUMBNAIL_WIDTH);
$image = $thumb->toGDImage();
imagejpeg($image, PRIV . static::THUMBNAILS_PATH . $item->getLastInsertIdentifier() . '_' . static::DEFAULT_THUMBNAIL_WIDTH); -
Revision 66607 : Remise a plat des listes d’objet : structure commune .liste[.long][.short] ...
9 octobre 2012, par cedric@… — LogRemise a plat des listes d’objet :
structure commune .liste[.long][.short] > ; .liste-items[.long][.short] > ; .item
le contenu de chaque .item est fourni par inclure/resume/xxx.html (article, rubrique, breve... a completer) qui a une structure commune (héritée de hNews) dans un < ;article> ;
Les classes modificatrices .long ou .short permettent d’avoir une liste plus detaillee ou plus courte, mais ce n’est qu’une option de presentation, le html etant identique.
Le seul parametre pris en compte par resume/xxx est "coupe" qui permet de changer la longueur de coupe
Un repertoire de demo (activé pour les seuls webmestres) avec une page de presentation des listes (toutes variantes)
.secondary sur le contenu secondaire du layout (les colonnes)