
Recherche avancée
Médias (1)
-
Revolution of Open-source and film making towards open film making
6 octobre 2011, par
Mis à jour : Juillet 2013
Langue : English
Type : Texte
Autres articles (58)
-
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 (...) -
Sélection de projets utilisant MediaSPIP
29 avril 2011, parLes exemples cités ci-dessous sont des éléments représentatifs d’usages spécifiques de MediaSPIP pour certains projets.
Vous pensez avoir un site "remarquable" réalisé avec MediaSPIP ? Faites le nous savoir ici.
Ferme MediaSPIP @ Infini
L’Association Infini développe des activités d’accueil, de point d’accès internet, de formation, de conduite de projets innovants dans le domaine des Technologies de l’Information et de la Communication, et l’hébergement de sites. Elle joue en la matière un rôle unique (...)
Sur d’autres sites (3345)
-
ffmpeg "Stream maping" taking a long time to load
29 août 2022, par Bambi2k21I am using ffmpeg to speed up and slow down parts where the talker is talking and being silent.
To do this I run something like this(the code below[more exactly the filter part, the rest is the same] is an example, not my exact code) :
cmd /c ffmpeg -i Soon.mp4 -filter_complex "[0:v]trim=0:2,setpts=PTS-STARTPTS[v1];[0:v]trim=2:5,setpts=2*(PTS-STARTPTS)[v2];[0:v]trim=5:6,setpts=PTS-STARTPTS[v3];[0:a]atrim=0:2,asetpts=PTS-STARTPTS[a1];[0:a]atrim=2:5,asetpts=PTS-STARTPTS,atempo=0.5[a2];[0:a]atrim=5:6,asetpts=PTS-STARTPTS[a3];[v1][a1][v2][a2][v3][a3]concat=n=3:v=1:a=1" -vcodec libx264 -crf 10 -preset ultrafast -profile:v baseline -shortest -tune:v stillimage -pix_fmt yuv420p -colorspace:v "bt709" -color_primaries:v "bt709" -color_trc:v "bt709" -color_range:v "tv" output.mp4
I added some optimisations to make it faster and they do work, but the amount of time needed for "Stream mapping" does not change. My problem with it is not the amount of time it takes but the fact that it gets progressively slower as each iterations of codes like this are run. At start it takes 20 secs but towards the end it takes close to a minute, I thought maybe it gets cluttered so I added "cmd /c" to pretty much restart the console, but no change. How do I change this ?
How stream mapping looks in one of the iterations.


Stream mapping:
 Stream #0:0 (h264) -> trim:default
 Stream #0:0 (h264) -> trim:default
 Stream #0:0 (h264) -> trim:default
 Stream #0:0 (h264) -> trim:default
 Stream #0:0 (h264) -> trim:default
 Stream #0:0 (h264) -> trim:default
 Stream #0:0 (h264) -> trim:default
 Stream #0:0 (h264) -> trim:default
 Stream #0:0 (h264) -> trim:default
 Stream #0:0 (h264) -> trim:default
 Stream #0:0 (h264) -> trim:default
 Stream #0:0 (h264) -> trim:default
 Stream #0:0 (h264) -> trim:default
 Stream #0:0 (h264) -> trim:default
 Stream #0:0 (h264) -> trim:default
 Stream #0:0 (h264) -> trim:default
 Stream #0:0 (h264) -> trim:default
 Stream #0:0 (h264) -> trim:default
 Stream #0:0 (h264) -> trim:default
 Stream #0:0 (h264) -> trim:default
 Stream #0:0 (h264) -> trim:default
 Stream #0:0 (h264) -> trim:default
 Stream #0:0 (h264) -> trim:default
 Stream #0:0 (h264) -> trim:default
 Stream #0:0 (h264) -> trim:default
 Stream #0:0 (h264) -> trim:default
 Stream #0:0 (h264) -> trim:default
 Stream #0:0 (h264) -> trim:default
 Stream #0:0 (h264) -> trim:default
 Stream #0:0 (h264) -> trim:default
 Stream #0:0 (h264) -> trim:default
 Stream #0:0 (h264) -> trim:default
 Stream #0:0 (h264) -> trim:default
 Stream #0:0 (h264) -> trim:default
 Stream #0:0 (h264) -> trim:default
 Stream #0:0 (h264) -> trim:default
 Stream #0:0 (h264) -> trim:default
 Stream #0:0 (h264) -> trim:default
 Stream #0:0 (h264) -> trim:default
 Stream #0:0 (h264) -> trim:default
 Stream #0:0 (h264) -> trim:default
 Stream #0:0 (h264) -> trim:default
 Stream #0:0 (h264) -> trim:default
 Stream #0:0 (h264) -> trim:default
 Stream #0:0 (h264) -> trim:default
 Stream #0:0 (h264) -> trim:default
 Stream #0:0 (h264) -> trim:default
 Stream #0:0 (h264) -> trim:default
 Stream #0:0 (h264) -> trim:default
 Stream #0:0 (h264) -> trim:default
 Stream #0:1 (aac) -> atrim:default
 Stream #0:1 (aac) -> atrim:default
 Stream #0:1 (aac) -> atrim:default
 Stream #0:1 (aac) -> atrim:default
 Stream #0:1 (aac) -> atrim:default
 Stream #0:1 (aac) -> atrim:default
 Stream #0:1 (aac) -> atrim:default
 Stream #0:1 (aac) -> atrim:default
 Stream #0:1 (aac) -> atrim:default
 Stream #0:1 (aac) -> atrim:default
 Stream #0:1 (aac) -> atrim:default
 Stream #0:1 (aac) -> atrim:default
 Stream #0:1 (aac) -> atrim:default
 Stream #0:1 (aac) -> atrim:default
 Stream #0:1 (aac) -> atrim:default
 Stream #0:1 (aac) -> atrim:default
 Stream #0:1 (aac) -> atrim:default
 Stream #0:1 (aac) -> atrim:default
 Stream #0:1 (aac) -> atrim:default
 Stream #0:1 (aac) -> atrim:default
 Stream #0:1 (aac) -> atrim:default
 Stream #0:1 (aac) -> atrim:default
 Stream #0:1 (aac) -> atrim:default
 Stream #0:1 (aac) -> atrim:default
 Stream #0:1 (aac) -> atrim:default
 Stream #0:1 (aac) -> atrim:default
 Stream #0:1 (aac) -> atrim:default
 Stream #0:1 (aac) -> atrim:default
 Stream #0:1 (aac) -> atrim:default
 Stream #0:1 (aac) -> atrim:default
 Stream #0:1 (aac) -> atrim:default
 Stream #0:1 (aac) -> atrim:default
 Stream #0:1 (aac) -> atrim:default
 Stream #0:1 (aac) -> atrim:default
 Stream #0:1 (aac) -> atrim:default
 Stream #0:1 (aac) -> atrim:default
 Stream #0:1 (aac) -> atrim:default
 Stream #0:1 (aac) -> atrim:default
 Stream #0:1 (aac) -> atrim:default
 Stream #0:1 (aac) -> atrim:default
 Stream #0:1 (aac) -> atrim:default
 Stream #0:1 (aac) -> atrim:default
 Stream #0:1 (aac) -> atrim:default
 Stream #0:1 (aac) -> atrim:default
 Stream #0:1 (aac) -> atrim:default
 Stream #0:1 (aac) -> atrim:default
 Stream #0:1 (aac) -> atrim:default
 Stream #0:1 (aac) -> atrim:default
 Stream #0:1 (aac) -> atrim:default
 Stream #0:1 (aac) -> atrim:default
 concat -> Stream #0:0 (libx264)
 concat -> Stream #0:1 (aac)
Press [q] to stop, [?] for help```



-
ffmpeg Windows : standard transcode produces file that "uses unsupported encoding settings" [duplicate]
17 août 2022, par David M. Cotterusing the basic command :


ffmpeg -i infile.mp4 -vcodec libx264 -acodec aac output.mp4



poduces a file that can't be played by the standard Windows Media Player app.
Is there something i'm missing ?


Here is the log data.


C:> \\Mac\depot\kJams\External\ffmpeg\win\bin\ffmpeg.exe -i "\\Mac\Home\Desktop\Christina lying down.AVI" -vcodec libx264 -acodec aac output.mp4
ffmpeg version git-2019-11-01-53c21c2 Copyright (c) 2000-2019 the FFmpeg developers
 built with gcc 9.2.1 (GCC) 20191010
 configuration: --enable-gpl --enable-version3 --enable-sdl2 --enable-fontconfig --enable-gnutls --enable-iconv --enable-libass --enable-libdav1d --enable-libbluray --enable-libfreetype --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libtheora --enable-libtwolame --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libzimg --enable-lzma --enable-zlib --enable-gmp --enable-libvidstab --enable-libvorbis --enable-libvo-amrwbenc --enable-libmysofa --enable-libspeex --enable-libxvid --enable-libaom --enable-libmfx --enable-ffnvcodec --enable-cuvid --enable-d3d11va --enable-nvenc --enable-nvdec --enable-dxva2 --enable-avisynth --enable-libopenmpt --enable-amf
 libavutil 56. 35.101 / 56. 35.101
 libavcodec 58. 60.100 / 58. 60.100
 libavformat 58. 33.100 / 58. 33.100
 libavdevice 58. 9.100 / 58. 9.100
 libavfilter 7. 66.100 / 7. 66.100
 libswscale 5. 6.100 / 5. 6.100
 libswresample 3. 6.100 / 3. 6.100
 libpostproc 55. 6.100 / 55. 6.100
Guessed Channel Layout for Input Stream #0.1 : mono
Input #0, avi, from '\\Mac\Home\Desktop\Christina lying down.AVI':
 Metadata:
 creation_time : 2006-01-26 18:19:22
 encoder : CanonMVI02
 Duration: 00:00:07.70, start: 0.000000, bitrate: 14928 kb/s
 Stream #0:0: Video: mjpeg (Baseline) (MJPG / 0x47504A4D), yuvj422p(pc, bt470bg/unknown/unknown), 640x480, 14896 kb/s, 30 fps, 30 tbr, 30 tbn, 30 tbc
 Stream #0:1: Audio: pcm_u8 ([1][0][0][0] / 0x0001), 11024 Hz, mono, u8, 88 kb/s
Stream mapping:
 Stream #0:0 -> #0:0 (mjpeg (native) -> h264 (libx264))
 Stream #0:1 -> #0:1 (pcm_u8 (native) -> aac (native))
Press [q] to stop, [?] for help
[aac @ 0f06a740] Too many bits 6408.707483 > 6144 per frame requested, clamping to max
[libx264 @ 0f068b40] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2
[libx264 @ 0f068b40] profile High 4:2:2, level 3.0, 4:2:2, 8-bit
[libx264 @ 0f068b40] 264 - core 158 - H.264/MPEG-4 AVC codec - Copyleft 2003-2019 - 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 'output.mp4':
 Metadata:
 encoder : Lavf58.33.100
 Stream #0:0: Video: h264 (libx264) (avc1 / 0x31637661), yuvj422p(pc), 640x480, q=-1--1, 30 fps, 1000k tbn, 30 tbc
 Metadata:
 encoder : Lavc58.60.100 libx264
 Side data:
 cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: N/A
 Stream #0:1: Audio: aac (LC) (mp4a / 0x6134706D), 11025 Hz, mono, fltp, 66 kb/s
 Metadata:
 encoder : Lavc58.60.100 aac
frame= 231 fps=128 q=-1.0 Lsize= 1570kB time=00:00:07.70 bitrate=1668.3kbits/s speed=4.28x
video:1514kB audio:51kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.347234%
[libx264 @ 0f068b40] frame I:2 Avg QP:24.57 size: 27076
[libx264 @ 0f068b40] frame P:60 Avg QP:26.24 size: 12693
[libx264 @ 0f068b40] frame B:169 Avg QP:27.91 size: 4342
[libx264 @ 0f068b40] consecutive B-frames: 1.7% 1.7% 1.3% 95.2%
[libx264 @ 0f068b40] mb I I16..4: 0.6% 97.6% 1.8%
[libx264 @ 0f068b40] mb P I16..4: 0.1% 10.6% 0.5% P16..4: 51.1% 17.9% 10.8% 0.0% 0.0% skip: 8.9%
[libx264 @ 0f068b40] mb B I16..4: 0.0% 1.2% 0.0% B16..8: 51.8% 4.4% 0.7% direct: 6.4% skip:35.5% L0:48.8% L1:46.4% BI: 4.8%
[libx264 @ 0f068b40] 8x8 transform intra:95.6% inter:78.5%
[libx264 @ 0f068b40] coded y,uvDC,uvAC intra: 89.0% 85.1% 53.7% inter: 29.0% 44.7% 6.7%
[libx264 @ 0f068b40] i16 v,h,dc,p: 19% 31% 8% 42%
[libx264 @ 0f068b40] i8 v,h,dc,ddl,ddr,vr,hd,vl,hu: 11% 15% 33% 6% 7% 5% 9% 5% 8%
[libx264 @ 0f068b40] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 14% 21% 18% 7% 10% 6% 11% 5% 6%
[libx264 @ 0f068b40] i8c dc,h,v,p: 67% 13% 15% 5%
[libx264 @ 0f068b40] Weighted P-Frames: Y:8.3% UV:6.7%
[libx264 @ 0f068b40] ref P L0: 35.8% 10.5% 35.1% 17.4% 1.2%
[libx264 @ 0f068b40] ref B L0: 76.1% 19.2% 4.7%
[libx264 @ 0f068b40] ref B L1: 92.7% 7.3%
[libx264 @ 0f068b40] kb/s:1609.92
[aac @ 0f06a740] Qavg: 34311.295



Ignore this part, Stack Overflow now requires that i type something more so it's not "mostly code"


-
Can't upload folder with large amount of files to google storage. I using "@ffmpeg-installer/ffmpeg" and @google-cloud/storage
20 juillet 2022, par DmytroI upload file to google storage using "@ffmpeg-installer/ffmpeg" and @google-cloud/storage in my node.js App.
Step 1. file uploading to fs is in child processes - one process for each type of resolution (totaly six).
step 2. encription (converting to stream)
step 3. upload to google storage


I use "Upload a directory to a bucket" in order to send the video from the client to the Google Cloud Storage bucket.


This way is working fine only with small video.


for example when I upload video with duration one hour it split on chunk and totally I get more three thousands files. But the problem occurs when there are more than 1500 files


So actually i upload folder with large amount of files, but not all of this files are uploaded to cloud.


maybe someone had the similar problem and helps fix it.




const uploadFolder = async (bucketName, directoryPath, socketInstance) => {
 try {
 let dirCtr = 1;
 let itemCtr = 0;
 const fileList = [];

 const onComplete = async () => {
 const folderName = nanoid(46);

 await Promise.all(
 fileList.map(filePath => {
 const fileName = path.relative(directoryPath, filePath);
 const destination = `${ folderName }/${ fileName }`;

 return storage
 .bucket(bucketName)
 .upload(filePath, { destination })
 .then(
 uploadResp => ({ fileName: destination, status: uploadResp[0] }),
 err => ({ fileName: destination, response: err })
 );
 })
 );

 if (socketInstance) socketInstance.emit('uploadProgress', {
 message: `Added files to Google bucket`,
 last: false,
 part: false
 });

 return folderName;
 };

 const getFiles = async directory => {
 const items = await fs.readdir(directory);
 dirCtr--;
 itemCtr += items.length;
 for(const item of items) {
 const fullPath = path.join(directory, item);
 const stat = await fs.stat(fullPath);
 itemCtr--;
 if (stat.isFile()) {
 fileList.push(fullPath);
 } else if (stat.isDirectory()) {
 dirCtr++;
 await getFiles(fullPath);
 }
 }
 }

 await getFiles(directoryPath);

 return onComplete();
 } catch (e) {
 log.error(e.message);
 throw new Error('Can\'t store folder.');
 }
 };