
Recherche avancée
Médias (1)
-
Spitfire Parade - Crisis
15 mai 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Audio
Autres articles (65)
-
Le profil des utilisateurs
12 avril 2011, parChaque utilisateur dispose d’une page de profil lui permettant de modifier ses informations personnelle. Dans le menu de haut de page par défaut, un élément de menu est automatiquement créé à l’initialisation de MediaSPIP, visible uniquement si le visiteur est identifié sur le site.
L’utilisateur a accès à la modification de profil depuis sa page auteur, un lien dans la navigation "Modifier votre profil" est (...) -
Configurer la prise en compte des langues
15 novembre 2010, parAccéder à la configuration et ajouter des langues prises en compte
Afin de configurer la prise en compte de nouvelles langues, il est nécessaire de se rendre dans la partie "Administrer" du site.
De là, dans le menu de navigation, vous pouvez accéder à une partie "Gestion des langues" permettant d’activer la prise en compte de nouvelles langues.
Chaque nouvelle langue ajoutée reste désactivable tant qu’aucun objet n’est créé dans cette langue. Dans ce cas, elle devient grisée dans la configuration et (...) -
XMP PHP
13 mai 2011, parDixit Wikipedia, XMP signifie :
Extensible Metadata Platform ou XMP est un format de métadonnées basé sur XML utilisé dans les applications PDF, de photographie et de graphisme. Il a été lancé par Adobe Systems en avril 2001 en étant intégré à la version 5.0 d’Adobe Acrobat.
Étant basé sur XML, il gère un ensemble de tags dynamiques pour l’utilisation dans le cadre du Web sémantique.
XMP permet d’enregistrer sous forme d’un document XML des informations relatives à un fichier : titre, auteur, historique (...)
Sur d’autres sites (6958)
-
ffmpeg converted video from s3 bucket downloads before playing the video
12 octobre 2020, par RutuI making a video streaming application with react and node js.
I am converting video into different resolution with ffmpeg and storing directly to S3 bucket with the help of piping.


I am streaming uploaded resolution video from S3 bucket directly through cloudfront in HTML5 tag with video.js


When i tried to play original video through cloudfront in player its working fine, But as soon i play ffmpeg converted video to video player in cloudfront i am facing issue :


Video takes a lot load (Downloads in browser) before playing in player.


Below is my ffmpeg command


await loadProcess( [
'i',<s3 url="url" of="of" original="original" video="video">,
 '-movflags',
 'frag_keyframe+empty_moov','-vf', 'scale=-2:360','-c:v','h264','-profile:v','baseline','-r',30,'-g', 60,'-b:v','1M','-f','mp4','-']
, outPath,'video/mp4')

</s3>


this is my loadProcess function : i am using aws cli to direct upload resolution video to S3 bucket :


export function loadProcess(ffmpegOptions, outPath,contentType) {
 return new Promise((resolve, reject) => {
 const videoPath = outPath.replace(/\\/g, "/");
 let ffmpeg = spawn(conf.ffmpeg, ffmpegOptions);
 let awsPipe = spawn('aws', ['s3', 'cp', '--content-type', `${contentType}`, '-', `s3://${process.env.AWS_S3_BUCKET}/${process.env.AWS_S3_VIDEOS_FOLDER}${videoPath}` ])
 ffmpeg.stdout.pipe(awsPipe.stdin)

 // ffmpeg write stream flow
 let ffmpegData = ''
 ffmpeg.stderr.on('data', (_data) => {
 ffmpegData += _data.toString();
 })
 ffmpeg.on('close', (code) => {
 if (code === 0) {
 resolve(outPath)
 }
 else {
 let _dataSplit=ffmpegData.split('\n');
 _dataSplit.pop();
 console.log({action: 'close', message:_dataSplit.pop(), more:[conf.ffmpeg].concat(ffmpegOptions).join(' ')+'\n'+ffmpegData, code})
 }
 });
 ffmpeg.on('error', (err) => {
 reject({action: ' ffmpeg error', message: err});
 });
 
 // aws s3 cli read stream pipe flow
 let awsPipeData = ''
 awsPipe.stderr.on('data', _data => {
 awsPipeData += _data.toString()
 });
 awsPipe.on('close', (code) => {
 if (code === 0) {
 resolve(outPath)
 }else{
 console.log({action: 'close', message: awsPipeData})
 }
 });
 awsPipe.on('error', (err) => {
 reject({action: 'awsPipe error', message: err});
 })

 })
}



I have tried using +faststart option in ffmpeg but getting command failed error.
Can someone please help me this ?


Thanks in advance


-
Bash script for splitting video using ffmpeg outputs wrong video lengths
19 juin 2018, par jonnyI have a video that’s
x
seconds long. I want to split that video up into equal segments, where each segment is no longer than a minute. To do that, I cobbled together a fairly simple bash script which usesffmprobe
to get the duration of the video, find out how long each segment should be, and then iteratively split the video up usingffmpeg
:INPUT_FILE=$1
INPUT_DURATION="$(./bin/ffprobe.exe -i "$INPUT_FILE" -show_entries format=duration -v quiet -of csv="p=0")"
NUM_SPLITS="$(perl -w -e "use POSIX; print ceil($INPUT_DURATION/60), qq{\n}")"
printf "\nVideo duration: $INPUT_DURATION; "
printf "Number of videos to output: $NUM_SPLITS; "
printf "Approximate length of each video: $(echo "$INPUT_DURATION" "$NUM_SPLITS" | awk '{print ($1 / $2)}')\n\n"
for i in `seq 1 "$NUM_SPLITS"`; do
START="$(echo "$INPUT_DURATION" "$NUM_SPLITS" "$i" | awk '{print (($1 / $2) * ($3 - 1))}')"
END="$(echo "$INPUT_DURATION" "$NUM_SPLITS" "$i" | awk '{print (($1 / $2) * $3)}')"
echo ./bin/ffmpeg.exe -v quiet -y -i "$INPUT_FILE" \
-vcodec copy -acodec copy -ss "$START" -t "$END" -sn test_${i}.mp4
./bin/ffmpeg.exe -v quiet -y -i "$INPUT_FILE" \
-vcodec copy -acodec copy -ss "$START" -t "$END" -sn test_${i}.mp4
done
printf "\ndone\n"If I run that script on the 30MB / 02:50 duration Big Buck Bunny sample from here, the output of the program would suggest the videos should all be of equal length :
λ bash split.bash .\media\SampleVideo_1280x720_30mb.mp4
Video duration: 170.859000; Number of videos to output: 3; Approximate length of each video: 56.953
./bin/ffmpeg.exe -v quiet -y -i .\media\SampleVideo_1280x720_30mb.mp4 -vcodec copy -acodec copy -ss 0 -t 56.953 -sn test_1.mp4
./bin/ffmpeg.exe -v quiet -y -i .\media\SampleVideo_1280x720_30mb.mp4 -vcodec copy -acodec copy -ss 56.953 -t 113.906 -sn test_2.mp4
./bin/ffmpeg.exe -v quiet -y -i .\media\SampleVideo_1280x720_30mb.mp4 -vcodec copy -acodec copy -ss 113.906 -t 170.859 -sn test_3.mp4
doneAs the duration of each partial video, i.e. the time between
-ss
and-t
, are equal for each subsequentffmpeg
command. But the durations I get are closer to :test_1.mp4 = 00:56
test_2.mp4 = 01:53
test_3.mp4 = 00:56Where the contents of each partial video overlap. What am I missing here ?
-
Is there a way to batch save video information (frame height, width, rate, etc) to video files' metadata ? [closed]
6 avril 2021, par André LevySearched all over to no avail. I had a vague recollection that MediaInfo did it, but no can do. Perhaps there's a way with ffmpeg, but all I've seen are commands to export the metadata already on the files.