
Recherche avancée
Médias (1)
-
Video d’abeille en portrait
14 mai 2011, par
Mis à jour : Février 2012
Langue : français
Type : Video
Autres articles (12)
-
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 : (...) -
D’autres logiciels intéressants
12 avril 2011, parOn ne revendique pas d’être les seuls à faire ce que l’on fait ... et on ne revendique surtout pas d’être les meilleurs non plus ... Ce que l’on fait, on essaie juste de le faire bien, et de mieux en mieux...
La liste suivante correspond à des logiciels qui tendent peu ou prou à faire comme MediaSPIP ou que MediaSPIP tente peu ou prou à faire pareil, peu importe ...
On ne les connais pas, on ne les a pas essayé, mais vous pouvez peut être y jeter un coup d’oeil.
Videopress
Site Internet : (...) -
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 (4754)
-
How do I remux/transcode a progressive file in ffmpeg ?
3 décembre 2014, par Levi RobertsHere’s what I’m trying to do.
My primary objective is to remux or transcode a currently downloading media file for AppleTV and iOS compatible streaming.
I am doing this by looking at the media file and only transcoding when necessary, otherwise it will only alter the container the video/audio lives in. This will reduce overhead for files that are already compatible. The specific compatible output I am looking for is AppleTV3 and iOS.
I have a file that is progressive, meaning that it is downloading using another download manager or another app without the help of
nodejs
. This file may or may not have themoov
information available in the beginning of the file. It just so happens, that I believe my test file does.I have some code that is partially working and it would make sense to be able to get this code fully working. That said, I’m not dismissing alternative ways to do this.
My primary problem (I think) has to do with the
moov
header location or that it’s being set incorrectly. I’m hoping the fix is as simple as correcting my poorffmpeg
knowledge with command line parameters.I am piping the file to and from
ffmpeg
viaGrowingFile
andfs.createWriteStream
respectively.My code for doing so is :
var fs = require('fs');
var child = require('child_process');
var GrowingFile = require('growing-file');
var input_file = GrowingFile.open('./tmp/input.mp4');
var output_file = fs.createWriteStream('./tmp/output.m4v');
// I've tried various args and ffmpeg params here without success.
var args = ['-re', '-i', 'pipe:0', '-g', '52', '-ab', '64k', '-vcodec', 'libx264', '-vb', '448k', '-f', 'mp4', '-movflags', 'frag_keyframe+faststart', 'pipe:1'];
var trans_proc = child.spawn('ffmpeg', args, null);
input_file.pipe(trans_proc.stdin);
trans_proc.stdout.pipe(output_file);I am also temporarily trying to make these files work as intended via
ffmpeg
command line alone, without success. That command is :ffmpeg -i original.mp4 -vcodec copy -r 24 output.m4v
Snippet of
original.mp4
viamediainfo
:General
Format : MPEG-4
Format profile : Base Media / Version 2
Codec ID : mp42
File size : 9.87 MiB
Duration : 43mn 14s
Overall bit rate mode : Variable
Overall bit rate : 31.9 Kbp
Video
Format : AVC
Format/Info : Advanced Video Codec
Format profile : High@L2.1
Codec ID : avc1
Duration : 43mn 14s
Width : 480 pixels
Height : 268 pixels
Color space : YUV
Scan type : Progressive
Stream size : 67.5 MiB
Audio
Format : AAC
Format/Info : Advanced Audio Codec
Format profile : LC
Codec ID : 40
Duration : 43mn 14s
Bit rate mode : Variable
Bit rate : 96.0 KbpsWhat’s happening is that
output.m4v
has an incorrect duration of only the part of the file that’s already downloaded. The video reaches the end or a refresh happens to make the duration longer. This process repeats until theoriginal
file is done downloading. What I want is to be able to emulate/clone the duration of the input file to the output file . -
How to compress mp3 file in php
11 juin 2015, par Wai yanI am doing a php project. In my project, I need to compress mp3 files to reduce the file size because I need to store a lot of mp3 files.
How can I compress it in php ? I am using
laravel
framework. If possible, I want it without extra installation. I already checkedffmpeg
, but I was not able to use it due to the poor documentation. How can I achieve it ? -
Reading a stream of images from rtsp using ffmpeg
15 février 2015, par Andrew SimpsonI had been using a wrapper around VLC to stream images from my ip camera to my WinForm Desktop App using the RTSP protocol.
This works well.
However, I wanted to see if could achieve the same thing using just FFMPEG.
I have done so but the results are poor.
The FPS is slow.
This is my code :
private Process process = new Process();
private FileStream baseStream = null;
string file = @"C:\bin\ffmpeg.exe";
string arguments = @" -i rtsp://admin:admin@192.168.0.8:554/video_1 -an -f image2 -s 360x240 -vframes 1 -";
private void button1_Click(object sender, EventArgs e)
{
try
{
process.StartInfo.FileName = file;
process.StartInfo.Arguments = arguments;
process.StartInfo.CreateNoWindow = true;
process.StartInfo.RedirectStandardError = true;
process.StartInfo.RedirectStandardOutput = true;
process.StartInfo.UseShellExecute = false;
Task.Run(() => { Feeder(); });
}
catch (Exception ex)
{
//log error here
}
}
private void Feeder()
{
try
{
process.Start();
baseStream = process.StandardOutput.BaseStream as FileStream;
int lastRead = 0;
using (MemoryStream ms = new MemoryStream())
{
byte[] buffer = new byte[500];
do
{
lastRead = baseStream.Read(buffer, 0, buffer.Length);
ms.Write(buffer, 0, lastRead);
} while (lastRead > 0);
pictureBox1.Invoke(new Action(() => pictureBox1.Image = Image.FromStream(ms)));
ms.Close();
}
}
catch (Exception ex)
{
//log error here
}
Task.Run(() => { Feeder(); });
}Now I had considered streaming a constant flow of images rather than just taking 1 at a time.
I can easily identify markers for the JPEG header.But, I would have to use
baseStream.ReadByte
instead which without trying it would be slow as I would have look at every single byte ?
Can anyone suggest what I should do ?
Thanks