
Recherche avancée
Médias (39)
-
Stereo master soundtrack
17 octobre 2011, par
Mis à jour : Octobre 2011
Langue : English
Type : Audio
-
ED-ME-5 1-DVD
11 octobre 2011, par
Mis à jour : Octobre 2011
Langue : English
Type : Audio
-
1,000,000
27 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Audio
-
Demon Seed
26 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Audio
-
The Four of Us are Dying
26 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Audio
-
Corona Radiata
26 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Audio
Autres articles (58)
-
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 -
Ajouter notes et légendes aux images
7 février 2011, parPour pouvoir ajouter notes et légendes aux images, la première étape est d’installer le plugin "Légendes".
Une fois le plugin activé, vous pouvez le configurer dans l’espace de configuration afin de modifier les droits de création / modification et de suppression des notes. Par défaut seuls les administrateurs du site peuvent ajouter des notes aux images.
Modification lors de l’ajout d’un média
Lors de l’ajout d’un média de type "image" un nouveau bouton apparait au dessus de la prévisualisation (...) -
Creating farms of unique websites
13 avril 2011, parMediaSPIP platforms can be installed as a farm, with a single "core" hosted on a dedicated server and used by multiple websites.
This allows (among other things) : implementation costs to be shared between several different projects / individuals rapid deployment of multiple unique sites creation of groups of like-minded sites, making it possible to browse media in a more controlled and selective environment than the major "open" (...)
Sur d’autres sites (7325)
-
How to convert FFmpeg command to FFmpeg-Python code ?
11 mars 2024, par Валентин АрноI have this command-line code :


ffmpeg -hide_banner -hwaccel_device auto -hwaccel auto -thread_queue_size 2048 -f dshow -rtbufsize 2048M -pixel_format bgr24 -i video="screen-capture-recorder" -thread_queue_size 2048 -f dshow -rtbufsize 2048M -channel_layout stereo -i audio="CABLE Output (VB-Audio Virtual Cable)" -filter_complex "[0:v]crop=1920:1040:0:0,scale=in_range=full:out_range=full:eval=init:interl=false:flags=bitexact+accurate_rnd+full_chroma_int,fps=fps=30.000,pp=fa[v1];[1:a]volume=volume=1.2[a1]" -map "[v1]" -map "[a1]" -c:a copy -c:v libx264 -preset ultrafast -tune film -crf 17 -r 30 -force_key_frames expr:gte(t,n_forced*1) -sc_threshold 0 -pix_fmt yuvj422p -max_muxing_queue_size 2048 -copyts -start_at_zero -y -t 5 "Y:\test\ output_1".mkv



Error : Stream specifier ':a' in filtergraph description ...matches no streams.


And I want to convert it to ffmpeg-python code in Python.


But how can I do it ?


This is what I have done so far :


video_ = ffmpeg.input('video=screen-capture-recorder',
 thread_queue_size=2048,
 rtbufsize='2048M',
 pixel_format='bgr24',
 framerate=30,
 f='dshow'
 )

audio_ = ffmpeg.input('audio=virtual-audio-capturer',
 thread_queue_size=2048,
 rtbufsize='2048M',
 channel_layout='stereo',
 f='dshow'
 )
print(' '.join( 
 ffmpeg
 .filter(video_,'fps', fps=30.000)
 .filter(video_,'crop', 1920,1040,0,0)
 .filter(video_,'pp','fa')
 .filter(video_,'scale', in_range='full', out_range ='full', eval='init', interl='false', flags='bitexact+accurate_rnd+full_chroma_int')
 .filter(audio_,'volume',volume=1.2)

 .output('Y:\\test\\output_1.mkv', acodec='copy', vcodec="libx264", preset='ultrafast',
 tune='film', crf=17, r=30, force_key_frames='expr:gte(t,n_forced*1)',
 sc_threshold=0, pix_fmt='yuv420p', max_muxing_queue_size=2048,
 start_at_zero=None, t=15)
 
 .global_args('-hide_banner')
 .global_args('-hwaccel_device', 'auto')
 .global_args('-hwaccel', 'auto')
 .global_args('-report')
 .overwrite_output()
 .compile()
))



Thanks.


-
Rescaling and slowing down a movie at the same time with ffmpeg
21 décembre 2016, par ejl62I would like with ffmpeg to slow down a movie I am creating using the flag :
-filter:v "setpts=2.0*PTS"
However the height of my still images is not divisible by 2, so to avoid the error :
height not divisible by 2 (1238x833)
, I am using the flag :-vf scale="trunc(iw/2)*2:trunc(ih/2)*2"
(I also tried
-vf scale=1238:-2
).When I do this the film is generated but it isn’t slowed down, like if the
-filter:v "setpts=2.0*PTS"
wasn’t there.Is there something particular to do in order to have both option working at the same time ?
Here is the complete command I am using :
ffmpeg -an -i ./movie/cphmd1.%05d.ppm -vcodec libx264 -pix_fmt yuv420p -b:v 5000k -r 24 -crf 18 -filter:v "setpts=2.0*PTS" -vf scale="trunc(iw/2)*2:trunc(ih/2)*2" -preset slow -f mp4 cphmd1_slower.mp4
Many thanks in advance !
-
ffmpeg encoded hls makes audio and video progressively out of sync
21 septembre 2020, par eschieWhen trying to encoding a source .mp4 to multiple bitrates and sizes for adaptive HLSv3 playback the resulting audio and video become progressively out of sync. When scrubbing to a later point it seems to reset, and stay in sync.



I'm on the latest ffmpeg 4.2.1 via homebrew-ffmpeg, with the libfdk-aac codec. Note, this was also occurring with ffmpeg 4.1.



ffmpeg version 4.2.1 Copyright (c) 2000-2019 the FFmpeg developers
 built with Apple LLVM version 9.0.0 (clang-900.0.39.2)
 configuration: --prefix=/usr/local/Cellar/ffmpeg/4.2.1-with-options_1 --enable-shared --cc=clang --host-cflags= --host-ldflags= --enable-gpl --enable-libaom --enable-libmp3lame --enable-libopus --enable-libsnappy --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libx265 --enable-libfontconfig --enable-libfreetype --enable-frei0r --enable-libass --disable-libjack --disable-indev=jack --enable-opencl --enable-videotoolbox --disable-htmlpages --enable-libfdk-aac --enable-nonfree
 libavutil 56. 31.100 / 56. 31.100
 libavcodec 58. 54.100 / 58. 54.100
 libavformat 58. 29.100 / 58. 29.100
 libavdevice 58. 8.100 / 58. 8.100
 libavfilter 7. 57.100 / 7. 57.100
 libswscale 5. 5.100 / 5. 5.100
 libswresample 3. 5.100 / 3. 5.100
 libpostproc 55. 5.100 / 55. 5.100




The audio and video streams are marginally off, would that cause this problem ?



ffprobe -v error -select_streams v:0 -show_entries stream=duration -of default=noprint_wrappers=1:nokey=1 INPUT_FILE.mp4
80.480400



ffprobe -v error -select_streams a:0 -show_entries stream=duration -of default=noprint_wrappers=1:nokey=1 INPUT_FILE.mp4
80.469333



Here is some metadata on the source file :



General
Complete name : INPUT_VIDEO.mp4
Format : MPEG-4
Format profile : Base Media / Version 2
Codec ID : mp42 (mp42/mp41)
File size : 236 MiB
Duration : 1 min 21 s
Overall bit rate mode : Variable
Overall bit rate : 24.2 Mb/s
Encoded date : UTC 2019-08-27 22:13:53
Tagged date : UTC 2019-08-27 22:15:15
TIM : 00;00;00;00
TSC : 30000
TSZ : 1001

Video
ID : 1
Format : AVC
Format/Info : Advanced Video Codec
Format profile : Main@L4.1
Format settings : CABAC / 2 Ref Frames
Format settings, CABAC : Yes
Format settings, Reference frames : 2 frames
Codec ID : avc1
Codec ID/Info : Advanced Video Coding
Duration : 1 min 21 s
Bit rate mode : Variable
Bit rate : 23.8 Mb/s
Maximum bit rate : 768 kb/s
Width : 1 920 pixels
Height : 1 080 pixels
Display aspect ratio : 16:9
Frame rate mode : Constant
Frame rate : 29.970 (30000/1001) FPS
Color space : YUV
Chroma subsampling : 4:2:0
Bit depth : 8 bits
Scan type : Progressive
Bits/(Pixel*Frame) : 0.383
Stream size : 233 MiB (99%)
Language : English
Encoded date : UTC 2019-08-27 22:13:53
Tagged date : UTC 2019-08-27 22:13:53
Color range : Limited
Color primaries : BT.709
Transfer characteristics : BT.709
Matrix coefficients : BT.709
Codec configuration box : avcC

Audio
ID : 2
Format : AAC LC
Format/Info : Advanced Audio Codec Low Complexity
Codec ID : mp4a-40-2
Duration : 1 min 21 s
Source duration : 1 min 21 s
Bit rate mode : Constant
Bit rate : 317 kb/s
Channel(s) : 2 channels
Channel layout : L R
Sampling rate : 48.0 kHz
Frame rate : 46.875 FPS (1024 SPF)
Compression mode : Lossy
Stream size : 3.10 MiB (1%)
Source stream size : 3.10 MiB (1%)
Language : English
Encoded date : UTC 2019-08-27 22:13:53
Tagged date : UTC 2019-08-27 22:13:53




And the encoding command :



ffmpeg \
-i INPUT_VIDEO \
-dn \
-sn \
-filter_complex \
"[0:v]fps=fps=24000/1001, \
setpts=(PTS-STARTPTS), \
split=12[vsplit1][vsplit2][vsplit3][vsplit4][vsplit5][vsplit6][vsplit7][vsplit8][vsplit9][vsplit10][vsplit11][vsplit12]; \
[vsplit1]scale=-1:1080[video_1080_4.1]; \
[vsplit2]scale=-1:720[video_720_4.1]; \
[vsplit3]scale=-1:720[video_720_3.1]; \
[vsplit4]scale=-1:540[video_540_3.1]; \
[vsplit5]scale=-1:432[video_432_3.1]; \
[vsplit6]scale=-1:270[video_270_3.0]; \
[vsplit7]scale=-1:270[video_270_3.1]; \
[vsplit8]scale=-1:144[video_144_4.1]; \
[vsplit9]scale=-1:144[video_144_3.0]; \
[vsplit10]scale=1920:1080[base_1080]; \
[vsplit11]scale=1280:720[base_720]; \
[vsplit12]scale=640:360[base_360]" \
\
-map "[video_1080_4.1]" \
-r:v:0 "24000/1001" \
-c:v:0 "libx264" \
-x264-params:0 "keyint=144:min-keyint=144:scenecut=0:open_gop=0" \
-preset:v:0 "slow" \
-profile:v:0 "high" \
-level:v:0 "4.1" \
-refs:v:0 "2" \
-b-pyramid:v:0 "strict" \
-tune:v:0 "film" \
-b:v:0 "4800000" \
-maxrate:v:0 "4800000" \
-bufsize:v:0 "6*4800000/8" \
-vsync:v:0 "cfr" \
-bsf:v:0 "h264_metadata=fixed_frame_rate_flag=1" \
\
-map "[video_720_4.1]" \
-r:v:1 "24000/1001" \
-c:v:1 "libx264" \
-x264-params:1 "keyint=144:min-keyint=144:scenecut=0:open_gop=0" \
-preset:v:1 "slow" \
-profile:v:1 "main" \
-level:v:1 "4.1" \
-refs:v:1 "2" \
-b-pyramid:v:1 "strict" \
-tune:v:1 "film" \
-b:v:1 "3200000" \
-maxrate:v:1 "3200000" \
-bufsize:v:1 "6*3200000/8" \
-vsync:v:1 "cfr" \
-bsf:v:1 "h264_metadata=fixed_frame_rate_flag=1" \
\
-map "[video_720_3.1]" \
-r:v:2 "24000/1001" \
-c:v:2 "libx264" \
-x264-params:2 "keyint=144:min-keyint=144:scenecut=0:open_gop=0" \
-preset:v:2 "slow" \
-profile:v:2 "main" \
-level:v:2 "3.1" \
-refs:v:2 "2" \
-b-pyramid:v:2 "strict" \
-tune:v:2 "film" \
-b:v:2 "2200000" \
-maxrate:v:2 "2200000" \
-bufsize:v:2 "6*2200000/8" \
-vsync:v:2 "cfr" \
-bsf:v:2 "h264_metadata=fixed_frame_rate_flag=1" \
\
-map "[video_540_3.1]" \
-r:v:3 "24000/1001" \
-c:v:3 "libx264" \
-x264-params:3 "keyint=144:min-keyint=144:scenecut=0:open_gop=0" \
-preset:v:3 "slow" \
-profile:v:3 "main" \
-level:v:3 "3.1" \
-refs:v:3 "2" \
-b-pyramid:v:3 "strict" \
-tune:v:3 "film" \
-b:v:3 "1400000" \
-maxrate:v:3 "1400000" \
-bufsize:v:3 "6*1400000/8" \
-vsync:v:3 "cfr" \
-bsf:v:3 "h264_metadata=fixed_frame_rate_flag=1" \
\
-map "[video_432_3.1]" \
-r:v:4 "24000/1001" \
-c:v:4 "libx264" \
-x264-params:4 "keyint=144:min-keyint=144:scenecut=0:open_gop=0" \
-preset:v:4 "slow" \
-profile:v:4 "main" \
-level:v:4 "3.1" \
-refs:v:4 "2" \
-b-pyramid:v:4 "strict" \
-tune:v:4 "film" \
-b:v:4 "900000" \
-maxrate:v:4 "900000" \
-bufsize:v:4 "6*900000/8" \
-vsync:v:4 "cfr" \
-bsf:v:4 "h264_metadata=fixed_frame_rate_flag=1" \
\
-map "[video_270_3.0]" \
-r:v:5 "24000/1001" \
-c:v:5 "libx264" \
-x264-params:5 "keyint=144:min-keyint=144:scenecut=0:open_gop=0" \
-preset:v:5 "slow" \
-profile:v:5 "baseline" \
-level:v:5 "3.0" \
-refs:v:5 "2" \
-b-pyramid:v:5 "strict" \
-tune:v:5 "film" \
-b:v:5 "400000" \
-maxrate:v:5 "400000" \
-bufsize:v:5 "6*400000/8" \
-vsync:v:5 "cfr" \
-bsf:v:5 "h264_metadata=fixed_frame_rate_flag=1" \
\
-map "[video_270_3.1]" \
-r:v:6 "24000/1001" \
-c:v:6 "libx264" \
-x264-params:6 "keyint=144:min-keyint=144:scenecut=0:open_gop=0" \
-preset:v:6 "slow" \
-profile:v:6 "main" \
-level:v:6 "3.1" \
-refs:v:6 "2" \
-b-pyramid:v:6 "strict" \
-tune:v:6 "film" \
-b:v:6 "200000" \
-maxrate:v:6 "200000" \
-bufsize:v:6 "6*200000/8" \
-vsync:v:6 "cfr" \
-bsf:v:6 "h264_metadata=fixed_frame_rate_flag=1" \
\
-map "[video_144_4.1]" \
-r:v:7 "24000/1001" \
-c:v:7 "libx264" \
-x264-params:7 "keyint=144:min-keyint=144:scenecut=0:open_gop=0" \
-preset:v:7 "slow" \
-profile:v:7 "high" \
-level:v:7 "4.1" \
-refs:v:7 "2" \
-b-pyramid:v:7 "strict" \
-tune:v:7 "film" \
-b:v:7 "64000" \
-maxrate:v:7 "64000" \
-bufsize:v:7 "6*64000/8" \
-vsync:v:7 "cfr" \
-bsf:v:7 "h264_metadata=fixed_frame_rate_flag=1" \
\
-map "[video_144_3.0]" \
-r:v:8 "24000/1001" \
-c:v:8 "libx264" \
-x264-params:8 "keyint=144:min-keyint=144:scenecut=0:open_gop=0" \
-preset:v:8 "slow" \
-profile:v:8 "baseline" \
-level:v:8 "3.0" \
-refs:v:8 "2" \
-b-pyramid:v:8 "strict" \
-tune:v:8 "film" \
-b:v:8 "56000" \
-maxrate:v:8 "56000" \
-bufsize:v:8 "6*56000/8" \
-vsync:v:8 "cfr" \
-bsf:v:8 "h264_metadata=fixed_frame_rate_flag=1" \
\
-map "[base_1080]" \
-c:v:9 "libx264" \
-preset:v:9 "slow" \
\
-map "[base_720]" \
-c:v:10 "libx264" \
-preset:v:10 "slow" \
\
-map "[base_360]" \
-c:v:11 "libx264" \
-preset:v:11 "slow" \
\
-map a:0 -map a:0 -map a:0 -map a:0 -map a:0 -map a:0 -map a:0 -map a:0 -map a:0 -map a:0 -map a:0 -map a:0 \
-c:a "libfdk_aac" \
-ar "48000" \
-ab "128k" \
-af "aresample=async=1:min_hard_comp=0.100000:first_pts=0" \
\
-f tee \
-flags +global_header \
"[select=\'v:0,a:0,v:1,a:1,v:2,a:2,v:3,a:3,v:4,a:4,v:5,a:5,v:6,a:6,v:7,a:7,v:8,a:8\':f=hls:hls_flags=discont_start+temp_file:hls_time=6:hls_list_size=0:var_stream_map=\'v:0,a:0 v:1,a:1 v:2,a:2 v:3,a:3 v:4,a:4 v:5,a:5 v:6,a:6 v:7,a:7 v:8,a:8\':master_pl_name=playlist.m3u8:hls_segment_filename=INPUT_VIDEO__%v_%03d.ts]INPUT_VIDEO/out_%v.m3u8|[select=\'v:9,a:9\':f=mp4:movflags=+faststart]INPUT_VIDEO/large-1920-1080.mp4|[select=\'v:10,a:10\':f=mp4:movflags=+faststart]INPUT_VIDEO/med-1280-720.mp4|[select=\'v:11,a:11\':f=mp4:movflags=+faststart]INPUT_VIDEO/sm-640-360.mp4"