
Recherche avancée
Autres articles (69)
-
La file d’attente de SPIPmotion
28 novembre 2010, parUne file d’attente stockée dans la base de donnée
Lors de son installation, SPIPmotion crée une nouvelle table dans la base de donnée intitulée spip_spipmotion_attentes.
Cette nouvelle table est constituée des champs suivants : id_spipmotion_attente, l’identifiant numérique unique de la tâche à traiter ; id_document, l’identifiant numérique du document original à encoder ; id_objet l’identifiant unique de l’objet auquel le document encodé devra être attaché automatiquement ; objet, le type d’objet auquel (...) -
Publier sur MédiaSpip
13 juin 2013Puis-je poster des contenus à partir d’une tablette Ipad ?
Oui, si votre Médiaspip installé est à la version 0.2 ou supérieure. Contacter au besoin l’administrateur de votre MédiaSpip pour le savoir -
Les formats acceptés
28 janvier 2010, parLes commandes suivantes permettent d’avoir des informations sur les formats et codecs gérés par l’installation local de ffmpeg :
ffmpeg -codecs ffmpeg -formats
Les format videos acceptés en entrée
Cette liste est non exhaustive, elle met en exergue les principaux formats utilisés : h264 : H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10 m4v : raw MPEG-4 video format flv : Flash Video (FLV) / Sorenson Spark / Sorenson H.263 Theora wmv :
Les formats vidéos de sortie possibles
Dans un premier temps on (...)
Sur d’autres sites (6609)
-
Anomalie #4308 (Nouveau) : Objet sans statut : problème avec objet_instituer()
7 mars 2019, par tcharlss (*´_ゝ`)Le contexte
J’ai un objet éditorial sans statut, et avec une date.
La date est bien déclarée dans declarer_tables_objets_sql :'date' => 'date'
Le formulaire d’édition permet de modifier directement la date, sans avoir à passer par#FORMULAIRE_DATER
.Problème
La date saisies par l’utilisateur n’est pas enregistrée, ça remet systématiquement la date actuelle.
À la toute fin des traitements, dans la fonction objet_editer_heritage(), on retrouve bien la date correcte dans le tableau des champs à modifier qui est transmis à sql_updateq().
Par contre il y également le champ ’statut’, hors il n’a rien à faire là : ça provoque une erreur SQL.Voici ce que renvoie
var_dump($champs)
:array (size=2) ’statut’ => string ’’ (length=0) ’date’ => string ’2019-01-22 00:00:00’ (length=19)
C’est en amont dans objet_instituer() que le tabeau des champs à modifier est contruit.
Il semble qu’il y a des tests effectués pour vérifier la présence du champ de statut dans la table, pourtant même en son absence il se retrouve dans la liste.
Je n’arrive pas à mettre le doigt sur l’endroit exact où ça coince, RastaPopoulos me dit que ça doit se jouer vers la ligne 333Solution
Pas vraiment une solution, mais ça montre bien que c’est l’absence de statut qui fait tout planter : quand je retire la clé ’statut’ dans au moyen du pipeline
pre_edition
, ça marche. -
Converting ffmpeg & ffprobe outputs to variables in an ffmpeg AWS Lambda Layer
7 mars 2019, par GracieI have two tasks I am trying to perform with the ffmpeg AWS Lambda layer.
1) Convert an audio file from stereo to mono (with ffmpeg)
2) Get the duration of the audio file and pass the result to a variable (with ffprobe)
const { spawnSync } = require("child_process");
const { readFileSync, writeFileSync, unlinkSync } = require("fs");
const util = require('util');
var fs = require('fs');
exports.handler = (event, context, callback) => {
// Windows 10 ffmpeg command to convert stereo to ffmpeg is
// ffmpeg -i volando.flac -ac 1 volando-mono.flac
// Convert from stereo to mono
spawnSync(
"/opt/bin/ffmpeg",
[
"-i",
`volando.flac`,
"-ac",
"1",
`/tmp/volando-mono.flac`
],
{ stdio: "inherit" }
);
//Pass result to a variable
//var duration = stdio;
//Read the content from the /tmp directory
fs.readdir("/tmp/", function (err, data) {
if (err) throw err;
console.log('Contents of tmp file: ', data);
});
// Get duration of Flac file
// Windows 10 ffmpeg command is
// ffprobe in.wav -show_entries stream=duration -select_streams a -of compact=p=0:nk=1 -v 0
spawnSync(
"/opt/bin/ffprobe",
[
`in.wav`,
"-show_entries",
"stream=duration",
"-select_streams",
"a",
"-of",
"compact=p=0:nk=1",
"-v",
"0"
],
{ stdio: "inherit" }
//Pass result to a variable
//var duration = stdio;
);
};Can anyone who has had success with this ffmpeg Lambda layer help get an output for these commands ?
Here are some resources regarding the FFmpeg Lambda layer :
https://serverless.com/blog/publish-aws-lambda-layers-serverless-framework/
https://github.com/serverlesspub/ffmpeg-aws-lambda-layer
https://devopstar.com/2019/01/28/serverless-watermark-using-aws-lambda-layers-ffmpeg/ -
FFMPEG fails with only two input frames
3 mars 2019, par JeffThompsonI’d like to use ffmpeg’s great frame interpolation to blend two images. I get great results when testing with about a dozen frames, but when only using two it finishes immediately and I get a video file that can’t be opened.
My command :
ffmpeg -y -r 24 -pattern_type glob -i "TestFrames/*[0-1].png" -pix_fmt yuv420p -filter:v "minterpolate='mi_mode=mci:mc_mode=aobmc:me_mode=bidir:vsbmc=1:fps=1024'" -vsync 2 8.mp4
Output from
ffmpeg
:ffmpeg version 4.1.1 Copyright (c) 2000-2019 the FFmpeg developers
built with Apple LLVM version 10.0.0 (clang-1000.11.45.5)
configuration: --prefix=/usr/local/Cellar/ffmpeg/4.1.1 --enable-shared --enable-pthreads --enable-version3 --enable-hardcoded-tables --enable-avresample --cc=clang --host-cflags='-I/Library/Java/JavaVirtualMachines/openjdk-11.0.2.jdk/Contents/Home/include -I/Library/Java/JavaVirtualMachines/openjdk-11.0.2.jdk/Contents/Home/include/darwin' --host-ldflags= --enable-ffplay --enable-gnutls --enable-gpl --enable-libaom --enable-libbluray --enable-libmp3lame --enable-libopus --enable-librubberband --enable-libsnappy --enable-libtesseract --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libx265 --enable-libxvid --enable-lzma --enable-libfontconfig --enable-libfreetype --enable-frei0r --enable-libass --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-librtmp --enable-libspeex --enable-videotoolbox --disable-libjack --disable-indev=jack --enable-libaom --enable-libsoxr
libavutil 56. 22.100 / 56. 22.100
libavcodec 58. 35.100 / 58. 35.100
libavformat 58. 20.100 / 58. 20.100
libavdevice 58. 5.100 / 58. 5.100
libavfilter 7. 40.101 / 7. 40.101
libavresample 4. 0. 0 / 4. 0. 0
libswscale 5. 3.100 / 5. 3.100
libswresample 3. 3.100 / 3. 3.100
libpostproc 55. 3.100 / 55. 3.100
Input #0, image2, from 'TestFrames/*.png':
Duration: 00:00:00.08, start: 0.000000, bitrate: N/A
Stream #0:0: Video: png, rgba(pc), 1080x1080, 25 tbr, 25 tbn, 25 tbc
Stream mapping:
Stream #0:0 -> #0:0 (png (native) -> h264 (libx264))
Press [q] to stop, [?] for help
[libx264 @ 0x7fa5c2813200] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX FMA3 BMI2 AVX2
[libx264 @ 0x7fa5c2813200] profile High, level 6.1
[libx264 @ 0x7fa5c2813200] 264 - core 155 r2917 0a84d98 - H.264/MPEG-4 AVC codec - Copyleft 2003-2018 - http://www.videolan.org/x264.html - options: cabac=1 ref=3 deblock=1:0:0 analyse=0x3:0x113 me=hex subme=7 psy=1 psy_rd=1.00:0.00 mixed_ref=1 me_range=16 chroma_me=1 trellis=1 8x8dct=1 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=-2 threads=12 lookahead_threads=2 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=3 b_pyramid=2 b_adapt=1 b_bias=0 direct=1 weightb=1 open_gop=0 weightp=2 keyint=250 keyint_min=25 scenecut=40 intra_refresh=0 rc_lookahead=40 rc=crf mbtree=1 crf=23.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00
Output #0, mp4, to '8.mp4':
Metadata:
encoder : Lavf58.20.100
Stream #0:0: Video: h264 (libx264) (avc1 / 0x31637661), yuv420p, 1080x1080, q=-1--1, 1024 fps, 16384 tbn, 1024 tbc
Metadata:
encoder : Lavc58.35.100 libx264
Side data:
cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: -1
frame= 0 fps=0.0 q=0.0 Lsize= 0kB time=00:00:00.00 bitrate=N/A speed= 0x
video:0kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown(Why
fps=1024
? I wanted to generate a a bunch of frames between the two images, so I plan to later separate the resulting video into separate images.)