
Recherche avancée
Autres articles (66)
-
Personnaliser en ajoutant son logo, sa bannière ou son image de fond
5 septembre 2013, parCertains thèmes prennent en compte trois éléments de personnalisation : l’ajout d’un logo ; l’ajout d’une bannière l’ajout d’une image de fond ;
-
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 autorisations surchargées par les plugins
27 avril 2010, parMediaspip core
autoriser_auteur_modifier() afin que les visiteurs soient capables de modifier leurs informations sur la page d’auteurs
Sur d’autres sites (9853)
-
ffmpeg -i desktop Output file does not contain any stream [closed]
29 novembre 2024, par AntonioI'm trying to screen record a remote Windows VM machine which I'm accessing through ssh. I'm executing this command
ffmpeg -f gdigrab -framerate 30 -i desktop -t 00:00:10 output.mp4
which is returning the following error :

ffmpeg version 7.1-essentials_build-www.gyan.dev Copyright (c) 2000-2024 the FFmpeg developers
 built with gcc 14.2.0 (Rev1, Built by MSYS2 project)
 configuration: --enable-gpl --enable-version3 --enable-static --disable-w32threads --disable-autodetect --enable-fontconfig --en
able-iconv --enable-gnutls --enable-libxml2 --enable-gmp --enable-bzlib --enable-lzma --enable-zlib --enable-libsrt --enable-libss
h --enable-libzmq --enable-avisynth --enable-sdl2 --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxvid --enable-lib
aom --enable-libopenjpeg --enable-libvpx --enable-mediafoundation --enable-libass --enable-libfreetype --enable-libfribidi --enabl
e-libharfbuzz --enable-libvidstab --enable-libvmaf --enable-libzimg --enable-amf --enable-cuda-llvm --enable-cuvid --enable-dxva2
--enable-d3d11va --enable-d3d12va --enable-ffnvcodec --enable-libvpl --enable-nvdec --enable-nvenc --enable-vaapi --enable-libgme
--enable-libopenmpt --enable-libopencore-amrwb --enable-libmp3lame --enable-libtheora --enable-libvo-amrwbenc --enable-libgsm --en
able-libopencore-amrnb --enable-libopus --enable-libspeex --enable-libvorbis --enable-librubberband
 libavutil 59. 39.100 / 59. 39.100
 libavcodec 61. 19.100 / 61. 19.100
 libavformat 61. 7.100 / 61. 7.100
 libavdevice 61. 3.100 / 61. 3.100
 libavfilter 10. 4.100 / 10. 4.100
 libswscale 8. 3.100 / 8. 3.100
 libswresample 5. 3.100 / 5. 3.100
 libpostproc 58. 3.100 / 58. 3.100
[gdigrab @ 000001a87f3af600] Capturing whole desktop as 1024x768x32 at (0,0)
[gdigrab @ 000001a87f3af600] Failed to capture image (error 5)
[gdigrab @ 000001a87f3af600] Could not find codec parameters for stream 0 (Video: bmp, none, 754987 kb/s): unspecified size
Consider increasing the value for the 'analyzeduration' (0) and 'probesize' (5000000) options
Input #0, gdigrab, from 'desktop':
 Duration: N/A, bitrate: 754987 kb/s
 Stream #0:0: Video: bmp, none, 754987 kb/s, 30 fps, 1000k tbr, 1000k tbn
Output #0, mp4, to 'output.mp4':
[out#0/mp4 @ 000001a87f3aeec0] Output file does not contain any stream
Error opening output file output.mp4.
Error opening output files: Invalid argument



If I take a remote desktop connection and use the same command, then it works perfectly.


I've also tried running
ffmpeg.exe -f lavfi -i color=c=black:s=800x600:r=30:d=60 out.mp4
which records something but it's just a black screen.

Does anyone have any idea what could be happening ? I'm clueless at this point as I haven't been able to find more info online.


-
Different container duration between ffmpeg versions which causes audio gaps
4 septembre 2024, par blitsI'm trying to make a looped RTMP stream from a single video (in this
example - YouTube), but starting with version 6.0 it introduces a gap in-between loops in the audio which is quite audible. Version before 6.0 (I
tried 5.1.6 and 4.4.2) work as expected and don't introduce any gaps.


The difference I spotted is that the master version (7.0.2) and the 5.1.6, for
example, report a different duration time. Is there any reason why that might happen ?


v5.1.6 :


Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'demo-video.mp4':
 Metadata:
 major_brand : isom
 minor_version : 512
 compatible_brands: isomiso2avc1mp41
 creation_time : 2024-09-03T15:30:51.000000Z
 encoder : Blackmagic Design DaVinci Resolve Studio
 Duration: 00:00:05.00, start: 0.000000, bitrate: 35440 kb/s



v7.0.2 :


Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'demo-video.mp4':
 Metadata:
 major_brand : isom
 minor_version : 512
 compatible_brands: isomiso2avc1mp41
 creation_time : 2024-09-03T15:30:51.000000Z
 encoder : Blackmagic Design DaVinci Resolve Studio
 Duration: 00:00:05.01, start: 0.000000, bitrate: 35346 kb/s
 Stream #0:0[0x1](und): Video: h264 (High) (avc1 / 0x31637661), yuv420p(tv, bt709, progressive), 2560x1440 [SAR 1:1 DAR 16:9], 35240 kb/s, 24 fps, 24 tbr, 12288 tbn (default)
 Metadata:
 creation_time : 2024-09-03T15:30:51.000000Z
 handler_name : VideoHandler
 vendor_id : [0][0][0][0]
 encoder : H.264 NVIDIA
 timecode : 01:00:00:00



As you can see, v5.1.6 report duration of 00:00:05.00 (which is correct) and v7.0.2 is 00:00:05.01 (1ms longer), which is what I think is causing the issue (but I'm not so sure about that). The original file is 5 seconds long which is what can be checked by ffprobe as well, but some streams report a 00:05.01 duration time.


I tried to remedy this issue in many different ways by trimming the video/audio, using different flags, like -shortest, but that didn't help in any way - there's still a gap in the audio which is noticeable when looping the video. And like I said versions such as v5.1.6 work fine and there's no such gap.


I guess what changed between versions is how ffmpeg interprets these streams but in the end I spent 2 days trying to avoid gaps in audio when streaming and nothing helped.


How to reproduce :


You can just stream the video in any RTMP destination of your liking, like YouTube and observe that there would be gaps (audio break-ups) in between every 5 seconds (once video ends). Video is accessible through the link from the curl command


curl -o stream-audio-gap-issue.mp4 https://r2v.streamloop.app/obj_01j6y0pk83fy8vp06a9mmkkqah.mp4
ffmpeg -re -stream_loop -1 -i stream-audio-gap-issue.mp4 -c copy -f flv rtmp://a.rtmp.youtube.com/live2/[your-key]



Expected : there are no gaps every 5 seconds, like in old versions of ffmpeg


Instead : there are tiny audio gaps which are quite noticable


ffprobe outputs is available on gist : https://gist.github.com/blitss/1e221b4fa8885b1df8ac2096746239cf


I'm looking for literally any workarounds that will help avoid audio gaps whilst still preserving the latest version of ffmpeg.


-
How to copy video duration to the output file with ffmpeg ? [closed]
5 novembre 2024, par user28147375I want to copy the input's duration to the output. Is there even a way in ffmpeg to achieve this ?
There is nothing about this in the docs.


I'm currently using these flags :


const ffmpegProcess = cp.spawn(ffmpegPath, [
 '-i', `pipe:3`,
 '-i', `pipe:4`,
 '-map', '0:v:0',
 '-map', '1:a:0',
 '-c:v', 'copy',
 '-c:a', 'aac',
 '-crf', '27',
 '-pix_fmt', 'yuv420p',
 '-preset', 'veryfast',
 '-movflags', 'frag_keyframe+empty_moov',
 '-f', 'mp4',
 '-shortest',
 '-'
 ], {
 windowsHide: true,
 stdio: [
 'pipe', 'pipe', 'inherit', 'pipe', 'pipe'
 ],
 });



The problem :


Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'pipe:3':
 Metadata:
 major_brand : dash
 minor_version : 0
 compatible_brands: iso6avc1mp41
 creation_time : 2024-10-05T10:39:09.000000Z
 Duration: 00:02:18.14, start: 0.000000, bitrate: N/A
Stream #0:0[0x1](und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p(tv, bt709, progressive), 1280x720 [SAR 1:1 DAR 16:9], 1 kb/s, 23.98 fps, 23.98 tbr, 24k tbn (default)



Output #0, mp4, to 'pipe:':
 Metadata:
 major_brand : dash
 minor_version : 0
 compatible_brands: iso6avc1mp41
 encoder : Lavf60.3.100
 ---> (DURATION MISSING) <---
Stream #0:0(und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p(tv, bt709, progressive), 1280x720 [SAR 1:1 DAR 16:9], q=2-31, 1 kb/s, 23.98 fps, 23.98 tbr, 24k tbn (default)