Recherche avancée

Médias (91)

Autres articles (28)

  • Emballe Médias : Mettre en ligne simplement des documents

    29 octobre 2010, par

    Le plugin emballe médias a été développé principalement pour la distribution mediaSPIP mais est également utilisé dans d’autres projets proches comme géodiversité par exemple. Plugins nécessaires et compatibles
    Pour fonctionner ce plugin nécessite que d’autres plugins soient installés : CFG Saisies SPIP Bonux Diogène swfupload jqueryui
    D’autres plugins peuvent être utilisés en complément afin d’améliorer ses capacités : Ancres douces Légendes photo_infos spipmotion (...)

  • Le plugin : Podcasts.

    14 juillet 2010, par

    Le problème du podcasting est à nouveau un problème révélateur de la normalisation des transports de données sur Internet.
    Deux formats intéressants existent : Celui développé par Apple, très axé sur l’utilisation d’iTunes dont la SPEC est ici ; Le format "Media RSS Module" qui est plus "libre" notamment soutenu par Yahoo et le logiciel Miro ;
    Types de fichiers supportés dans les flux
    Le format d’Apple n’autorise que les formats suivants dans ses flux : .mp3 audio/mpeg .m4a audio/x-m4a .mp4 (...)

  • Support de tous types de médias

    10 avril 2011

    Contrairement à beaucoup de logiciels et autres plate-formes modernes de partage de documents, MediaSPIP a l’ambition de gérer un maximum de formats de documents différents qu’ils soient de type : images (png, gif, jpg, bmp et autres...) ; audio (MP3, Ogg, Wav et autres...) ; vidéo (Avi, MP4, Ogv, mpg, mov, wmv et autres...) ; contenu textuel, code ou autres (open office, microsoft office (tableur, présentation), web (html, css), LaTeX, Google Earth) (...)

Sur d’autres sites (5247)

  • Controlling ffmpeg at runtime with zmq

    3 avril 2023, par Gavin

    I want to dynamically change the rectilinear view (eg its yaw) of a 360 video as it plays.

    


    basic command

    


    To take a 360 video and show a flat/normal view at a yaw perspective of 60 degrees

    


    ffmpeg -i input360.mp4 -vf "v360=input=e:rectilinear:yaw=60,scale=iw/4:-1" out60.mp4
This works fine.

    


    Changing the yaw during playback

    


    I understand ffmpeg has two methods to change filter params at runtime ; sendcmd (file based) and zmq (message based)

    


    I got sendcmd method working, but am struggling to understand zmq syntax and use. ffmpeg's zmq docs are pretty sparse.
I am using a local Windows 10 PC

    


    sendcmd

    


    ffplay -i input360.mp4 -vf "sendcmd=f=cmd.txt,v360=input=e:rectilinear:reset_rot=1,scale=iw/4:-1"

    


    with a cmd.txt file

    


    0-5 [expr] v360 yaw 'lerp(0,90,TI)';
5-10 [expr] v360 yaw 'lerp(90,0,TI)';


    


    result : yaw changes from 0 to 90 degrees from t=0-5s and then 90 to 0 degrees from t=5-10s. Perfect

    


    zmq

    


    ffplay -i input360.mp4 -vf "v360=input=e:rectilinear:reset_rot=1,zmq,scale=iw/4:-1"

    


    I got zmqsend from ffmpeg-tools.zip and added to my ffmpeg bin directory

    


      

    1. execute above ffplay command from terminal window #1 - and see video playing

      


    2. 


    3. Open terminal window #2 and execute : echo v360 yaw 90 > zmqsend

      


    4. 


    


    result : no change to video yaw. No errors either

    


    What am I doing wrong ? Im not sure if my ffmpeg command is wrong, or if my zmq message does not reach ffmpeg (or both). I checked my ffmpeg v2022-10-10 config has —enable-libzmq

    


  • FFMPEG - How to pipe RMS_level and pts_time metadata without generating unwanted metadata

    6 février 2020, par Tovi Newman

    I am trying to find the loudest (highest rms_level) moment in an audio file, but I need to pipe the metadata rather than write to a file.

    I converted the answer found here : [https://superuser.com/questions/1183663/determining-audio-level-peaks-with-ffmpeg][1]

    By removing the write to file command and adding a pipe.
    Here’s what I’ve got.

    ffmpeg -i loudSoft.mp3 -af astats=metadata=1:reset=1,ametadata=print:key=lavfi.astats.Overall.RMS_level -f null - 2> result.txt

    The only problem is, now I’ve got a lot of unwanted metadata before and after the RMS_level and pts_time data as well as [Parsed_ametadata_1 @ 0x7f9d42c37500] being printed on each line. None of that was being written when I was writing to a file instead of piping. (all I need is the time and the rms.)

    Here is an abridged version of what I get when I write to file :

    frame:0    pts:0       pts_time:0
    lavfi.astats.Overall.RMS_level=-inf
    frame:1    pts:47      pts_time:0.00106576
    lavfi.astats.Overall.RMS_level=-165.163347
    frame:2    pts:1199    pts_time:0.0271882
    lavfi.astats.Overall.RMS_level=-99.736394
    frame:3    pts:2351    pts_time:0.0533107
    lavfi.astats.Overall.RMS_level=-88.112282
    frame:4    pts:3503    pts_time:0.0794331
    lavfi.astats.Overall.RMS_level=-86.554314
    frame:5    pts:4655    pts_time:0.105556
    lavfi.astats.Overall.RMS_level=-82.977501
    frame:6    pts:5807    pts_time:0.131678
    lavfi.astats.Overall.RMS_level=-79.698739
    frame:7    pts:6959    pts_time:0.1578
    lavfi.astats.Overall.RMS_level=-76.629393
    frame:8    pts:8111    pts_time:0.183923
    lavfi.astats.Overall.RMS_level=-71.581211
    frame:9    pts:9263    pts_time:0.210045
    lavfi.astats.Overall.RMS_level=-75.038503
    frame:10   pts:10415   pts_time:0.236168

    And here is what I’m looking at :

    ffmpeg version 4.2.2 Copyright (c) 2000-2019 the FFmpeg developers
     built with Apple clang version 11.0.0 (clang-1100.0.33.16)
     configuration: --prefix=/usr/local/Cellar/ffmpeg/4.2.2_1 --enable-shared --enable-pthreads --enable-version3 --enable-avresample --cc=clang --host-cflags='-I/Library/Java/JavaVirtualMachines/adoptopenjdk-13.0.1.jdk/Contents/Home/include -I/Library/Java/JavaVirtualMachines/adoptopenjdk-13.0.1.jdk/Contents/Home/include/darwin -fno-stack-check' --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-libvidstab --enable-libvorbis --enable-libvpx --enable-libwebp --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-libsoxr --enable-videotoolbox --disable-libjack --disable-indev=jack
     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
     libavresample   4.  0.  0 /  4.  0.  0
     libswscale      5.  5.100 /  5.  5.100
     libswresample   3.  5.100 /  3.  5.100
     libpostproc    55.  5.100 / 55.  5.100
    Input #0, mp3, from 'loudSoft2.mp3':
     Metadata:
       encoder         : Lavf58.29.100
     Duration: 00:00:09.85, start: 0.025057, bitrate: 128 kb/s
       Stream #0:0: Audio: mp3, 44100 Hz, stereo, fltp, 128 kb/s
       Metadata:
         encoder         : Lavc58.54
    Stream mapping:
     Stream #0:0 -> #0:0 (mp3 (mp3float) -> pcm_s16le (native))
    Press [q] to stop, [?] for help
    [Parsed_ametadata_1 @ 0x7f9d42c37500] frame:0    pts:0       pts_time:0
    [Parsed_ametadata_1 @ 0x7f9d42c37500] lavfi.astats.Overall.RMS_level=-inf
    Output #0, null, to 'pipe:':
     Metadata:
       encoder         : Lavf58.29.100
       Stream #0:0: Audio: pcm_s16le, 44100 Hz, stereo, s16, 1411 kb/s
       Metadata:
         encoder         : Lavc58.54.100 pcm_s16le
    [Parsed_ametadata_1 @ 0x7f9d42c37500] frame:1    pts:47      pts_time:0.00106576
    [Parsed_ametadata_1 @ 0x7f9d42c37500] lavfi.astats.Overall.RMS_level=-165.163347
    [Parsed_ametadata_1 @ 0x7f9d42c37500] frame:2    pts:1199    pts_time:0.0271882
    [Parsed_ametadata_1 @ 0x7f9d42c37500] lavfi.astats.Overall.RMS_level=-99.736394
    [Parsed_ametadata_1 @ 0x7f9d42c37500] frame:3    pts:2351    pts_time:0.0533107


    *** MIDDLE OMITTED FOR BREVITY ***


    [Parsed_ametadata_1 @ 0x7f9d42c37500] lavfi.astats.Overall.RMS_level=-88.532185
    [Parsed_ametadata_1 @ 0x7f9d42c37500] frame:375  pts:430895  pts_time:9.77086
    [Parsed_ametadata_1 @ 0x7f9d42c37500] lavfi.astats.Overall.RMS_level=-88.594276
    [Parsed_ametadata_1 @ 0x7f9d42c37500] frame:376  pts:432047  pts_time:9.79698
    [Parsed_ametadata_1 @ 0x7f9d42c37500] lavfi.astats.Overall.RMS_level=-88.654138
    size=N/A time=00:00:09.82 bitrate=N/A speed=82.6x    
    video:0kB audio:1692kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown
    [Parsed_astats_0 @ 0x7f9d42c37280] Channel: 1
    [Parsed_astats_0 @ 0x7f9d42c37280] DC offset: 0.000001
    [Parsed_astats_0 @ 0x7f9d42c37280] Min level: -0.000106
    [Parsed_astats_0 @ 0x7f9d42c37280] Max level: 0.000115
    [Parsed_astats_0 @ 0x7f9d42c37280] Min difference: 0.000000
    [Parsed_astats_0 @ 0x7f9d42c37280] Max difference: 0.000077
    [Parsed_astats_0 @ 0x7f9d42c37280] Mean difference: 0.000017
    [Parsed_astats_0 @ 0x7f9d42c37280] RMS difference: 0.000022
    [Parsed_astats_0 @ 0x7f9d42c37280] Peak level dB: -78.752617
    [Parsed_astats_0 @ 0x7f9d42c37280] RMS level dB: -88.654138
    [Parsed_astats_0 @ 0x7f9d42c37280] RMS peak dB: -88.654138
    [Parsed_astats_0 @ 0x7f9d42c37280] RMS trough dB: -88.654138
    [Parsed_astats_0 @ 0x7f9d42c37280] Crest factor: 3.126627
    [Parsed_astats_0 @ 0x7f9d42c37280] Flat factor: 0.000000
    [Parsed_astats_0 @ 0x7f9d42c37280] Peak count: 2
    [Parsed_astats_0 @ 0x7f9d42c37280] Bit depth: 32/32
    [Parsed_astats_0 @ 0x7f9d42c37280] Dynamic range: 76.274252
    [Parsed_astats_0 @ 0x7f9d42c37280] Zero crossings: 246
    [Parsed_astats_0 @ 0x7f9d42c37280] Zero crossings rate: 0.222624
    [Parsed_astats_0 @ 0x7f9d42c37280] Number of NaNs: 0
    [Parsed_astats_0 @ 0x7f9d42c37280] Number of Infs: 0
    [Parsed_astats_0 @ 0x7f9d42c37280] Number of denormals: 0
    [Parsed_astats_0 @ 0x7f9d42c37280] Channel: 2
    [Parsed_astats_0 @ 0x7f9d42c37280] DC offset: 0.000001
    [Parsed_astats_0 @ 0x7f9d42c37280] Min level: -0.000106
    [Parsed_astats_0 @ 0x7f9d42c37280] Max level: 0.000115
    [Parsed_astats_0 @ 0x7f9d42c37280] Min difference: 0.000000
    [Parsed_astats_0 @ 0x7f9d42c37280] Max difference: 0.000077
    [Parsed_astats_0 @ 0x7f9d42c37280] Mean difference: 0.000017
    [Parsed_astats_0 @ 0x7f9d42c37280] RMS difference: 0.000022
    [Parsed_astats_0 @ 0x7f9d42c37280] Peak level dB: -78.752617
    [Parsed_astats_0 @ 0x7f9d42c37280] RMS level dB: -88.654138
    [Parsed_astats_0 @ 0x7f9d42c37280] RMS peak dB: -88.654138
    [Parsed_astats_0 @ 0x7f9d42c37280] RMS trough dB: -88.654138
    [Parsed_astats_0 @ 0x7f9d42c37280] Crest factor: 3.126627
    [Parsed_astats_0 @ 0x7f9d42c37280] Flat factor: 0.000000
    [Parsed_astats_0 @ 0x7f9d42c37280] Peak count: 2
    [Parsed_astats_0 @ 0x7f9d42c37280] Bit depth: 32/32
    [Parsed_astats_0 @ 0x7f9d42c37280] Dynamic range: 76.274252
    [Parsed_astats_0 @ 0x7f9d42c37280] Zero crossings: 246
    [Parsed_astats_0 @ 0x7f9d42c37280] Zero crossings rate: 0.222624
    [Parsed_astats_0 @ 0x7f9d42c37280] Number of NaNs: 0
    [Parsed_astats_0 @ 0x7f9d42c37280] Number of Infs: 0
    [Parsed_astats_0 @ 0x7f9d42c37280] Number of denormals: 0
    [Parsed_astats_0 @ 0x7f9d42c37280] Overall
    [Parsed_astats_0 @ 0x7f9d42c37280] DC offset: 0.000001
    [Parsed_astats_0 @ 0x7f9d42c37280] Min level: -0.000106
    [Parsed_astats_0 @ 0x7f9d42c37280] Max level: 0.000115
    [Parsed_astats_0 @ 0x7f9d42c37280] Min difference: 0.000000
    [Parsed_astats_0 @ 0x7f9d42c37280] Max difference: 0.000077
    [Parsed_astats_0 @ 0x7f9d42c37280] Mean difference: 0.000017
    [Parsed_astats_0 @ 0x7f9d42c37280] RMS difference: 0.000022
    [Parsed_astats_0 @ 0x7f9d42c37280] Peak level dB: -78.752617
    [Parsed_astats_0 @ 0x7f9d42c37280] RMS level dB: -88.654138
    [Parsed_astats_0 @ 0x7f9d42c37280] RMS peak dB: -88.654138
    [Parsed_astats_0 @ 0x7f9d42c37280] RMS trough dB: -88.654138
    [Parsed_astats_0 @ 0x7f9d42c37280] Flat factor: 0.000000
    [Parsed_astats_0 @ 0x7f9d42c37280] Peak count: 2.000000
    [Parsed_astats_0 @ 0x7f9d42c37280] Bit depth: 32/32
    [Parsed_astats_0 @ 0x7f9d42c37280] Number of samples: 1105
    [Parsed_astats_0 @ 0x7f9d42c37280] Number of NaNs: 0.000000
    [Parsed_astats_0 @ 0x7f9d42c37280] Number of Infs: 0.000000
    [Parsed_astats_0 @ 0x7f9d42c37280] Number of denormals: 0.000000
  • FFmpeg only reading one channel

    29 août 2017, par AbstractDissonance

    Trying to read a stereo wav file and ffmpeg is only reading one channel. ffprobe returns 2 channels.

    I have used -ac 2 and then added -channel_layout stereo but all return 1 channel(or basically filling half the buffer I created).

    Basically the output size of ffmpeg is about half the wav file size.

    What I would like is for it to return every channel in

    Channel1_sample1, channel2_sample1, ..., ChannelN_sample1, channel1_sample2, etc...

    But, in reality, I’d rather just have it work with stereo ;) I’m giving it plenty large enough buffer to read to, so that isn’t the problem either.

    Here is the output

    ffprobe.exe -hide_banner -v quiet -print_format flat -show_streams -i temp.wav
    streams.stream.0.index=0
    streams.stream.0.codec_name="pcm_s16le"
    streams.stream.0.codec_long_name="PCM signed 16-bit little-endian"
    streams.stream.0.profile="unknown"
    streams.stream.0.codec_type="audio"
    streams.stream.0.codec_time_base="1/44100"
    streams.stream.0.codec_tag_string="[1][0][0][0]"
    streams.stream.0.codec_tag="0x0001"
    streams.stream.0.sample_fmt="s16"
    streams.stream.0.sample_rate="44100"
    streams.stream.0.channels=2
    streams.stream.0.channel_layout="unknown"
    streams.stream.0.bits_per_sample=16
    streams.stream.0.id="N/A"
    streams.stream.0.r_frame_rate="0/0"
    streams.stream.0.avg_frame_rate="0/0"
    streams.stream.0.time_base="1/44100"
    streams.stream.0.start_pts="N/A"
    streams.stream.0.start_time="N/A"
    streams.stream.0.duration_ts=14200200
    streams.stream.0.duration="322.000000"
    streams.stream.0.bit_rate="1411200"
    streams.stream.0.max_bit_rate="N/A"
    streams.stream.0.bits_per_raw_sample="N/A"
    streams.stream.0.nb_frames="N/A"
    streams.stream.0.nb_read_frames="N/A"
    streams.stream.0.nb_read_packets="N/A"
    streams.stream.0.disposition.default=0
    streams.stream.0.disposition.dub=0
    streams.stream.0.disposition.original=0
    streams.stream.0.disposition.comment=0
    streams.stream.0.disposition.lyrics=0
    streams.stream.0.disposition.karaoke=0
    streams.stream.0.disposition.forced=0
    streams.stream.0.disposition.hearing_impaired=0
    streams.stream.0.disposition.visual_impaired=0
    streams.stream.0.disposition.clean_effects=0
    streams.stream.0.disposition.attached_pic=0
    streams.stream.0.disposition.timed_thumbnails=0
    ffmpeg.exe -i temp.wav -loglevel quiet -f s16le -ac 2 -channel_layout stereo -

    temp.wav is just a standard stereo wav file.