Recherche avancée

Médias (91)

Autres articles (55)

  • Participer à sa traduction

    10 avril 2011

    Vous pouvez nous aider à améliorer les locutions utilisées dans le logiciel ou à traduire celui-ci dans n’importe qu’elle nouvelle langue permettant sa diffusion à de nouvelles communautés linguistiques.
    Pour ce faire, on utilise l’interface de traduction de SPIP où l’ensemble des modules de langue de MediaSPIP sont à disposition. ll vous suffit de vous inscrire sur la liste de discussion des traducteurs pour demander plus d’informations.
    Actuellement MediaSPIP n’est disponible qu’en français et (...)

  • L’utiliser, en parler, le critiquer

    10 avril 2011

    La première attitude à adopter est d’en parler, soit directement avec les personnes impliquées dans son développement, soit autour de vous pour convaincre de nouvelles personnes à l’utiliser.
    Plus la communauté sera nombreuse et plus les évolutions seront rapides ...
    Une liste de discussion est disponible pour tout échange entre utilisateurs.

  • HTML5 audio and video support

    13 avril 2011, par

    MediaSPIP uses HTML5 video and audio tags to play multimedia files, taking advantage of the latest W3C innovations supported by modern browsers.
    The MediaSPIP player used has been created specifically for MediaSPIP and can be easily adapted to fit in with a specific theme.
    For older browsers the Flowplayer flash fallback is used.
    MediaSPIP allows for media playback on major mobile platforms with the above (...)

Sur d’autres sites (10826)

  • lavu/channel_layout : change av_get_channel_layout() behavior at the next bump

    4 octobre 2013, par Stefano Sabatini
    lavu/channel_layout : change av_get_channel_layout() behavior at the next bump
    

    The new syntax is preferred since it allows backward syntax compatibility
    with libswr when switching to the new option handling code with
    AV_OPT_TYPE_CHANNEL_LAYOUT.

    With the new parser the string :
    1234

    is interpreted as a channel layout mask, rather than as a number of
    channels, and thus it’s compatible with the current way to set a channel
    layout as an integer (e.g. for the icl and ocl options) making use of
    integer option values.

    ff_get_channel_layout() with compat=0 will be used in the
    AV_OPT_TYPE_CHANNEL handler code.

    The user is encouraged to switch to the new forward compatible syntax,
    which requires to put a trailing "c" when specifying a layout as a number
    of channels.

    • [DH] libavutil/channel_layout.c
    • [DH] libavutil/channel_layout.h
    • [DH] libavutil/internal.h
    • [DH] libavutil/version.h
  • ffmpeg : Create a fake shadow below alpha channel webm/png sequence

    6 mai 2021, par Beneos Battlemaps

    Purpose : I'd like to render out animated 3D meshes as png sequence to use them as animated tokens for virtual tabletop games. To make the mesh looks more natural I'd like to create a fake show beneath the actual token.

    


    Problem : I have a png sequence 1 (as well as a webm file created with ffmpet out of this png sequence if it makes it easier) with alpha channel. To create the webm I use :
ffmpeg -framerate 24 -f image2 -i Idle_Top.%04d.png -c:v libvpx-vp9 -crf 25 -pix_fmt yuva420p Idle_Top.webm (If its relevant). I'd like to render out the png sequence to a webm file that have the current images as well as the transparent shadow beneath the token combined.

    


    Possible workflow : I think a good way to achieve the wanted shadow effect is to use the alpha channel image as a mask on a black picture with the same resolution as the source image 2. Then you have a complete black version of the image. Then you need to place this image beneath the colored image and make a offset of 10px left and 10px down to create the ilusion of perspective 3. At the end the black image below the colored image must have a transparency as well ( 30% visibility should be enough) 4.

    


    Workflow overview

    


    Assets : I've put the webm file and the png files on my gDrive https://drive.google.com/drive/folders/1wznGaPwhKc2UyPpSZBSISa1gs3oixsHR?usp=sharing

    


    Though I work with ffmpeg on a regular basis I have no clue where to start. Can you please help me out with this interesting problem ?

    


    Best regards
Ben

    


  • Generate waveforms for audio files with large amount of channels

    3 mai 2021, par motio

    I want to generate .png files displaying the waveforms of interleaved audio .wav files using the FFmpeg libraries. http://ffmpeg.org/documentation.html

    


    If the interleaved audio file contains maximum 8 channels, I manage to successfully achieve this using the following command line :

    


    ffmpeg -i 8_channels_input.wav -y -filter_complex "showwavespic=s=1920x1200:split_channels=1" -frames:v 1 8_channels_waveform_output.png


    


    However, if the interleaved audio file contains more than 8 channels, FFmpeg gives the following :

    


    


    Input #0, wav, from '30_channels_input.wav' : Duration : 00:00:02.08,
bitrate : 31752 kb/s Stream #0:0 : Audio : pcm_s24le ([1][0][0][0] /
0x0001), 44100 Hz, 30 channels, s32 (24 bit), 31752 kb/s Stream
mapping : Stream #0:0 (pcm_s24le) -> showwavespic showwavespic ->
Stream #0:0 (png) Press [q] to stop, [?] for help [auto_resampler_0 @
0x7faf5d60a3c0] Cannot select channel layout for the link between
filters auto_resampler_0 and Parsed_showwavespic_0. [auto_resampler_0
@ 0x7faf5d60a3c0] Unknown channel layouts not supported, try
specifying a channel layout using 'aformat=channel_layouts=something'.
Error reinitializing filters ! Failed to inject frame into filter
network : Invalid argument Error while processing the decoded data for
stream #0:0 Conversion failed !

    


    


    Here is the related documentation (c.f. bottom of the page) :
https://trac.ffmpeg.org/wiki/AudioChannelManipulation

    


    My problem is :
I need to generate the visual waveforms of audio files containing up to 30 channels.
All my attempts were unsuccessful so far (I am trying to define custom channel layouts and I am not sure if I am on the right track here).

    


    To simplify, I need to complete/modify the following command to make it work :

    


    ffmpeg -i 30_channels_input.wav -y -filter_complex "showwavespic=s=1920x1200:split_channels=1" -frames:v 1 30_channels_waveform_output.png 


    


    [EDIT] Remarks :

    


    I manage to generate the waveforms of a 10 channels input by combining existing layouts :

    


    ffmpeg -i 10_channels_input.wav -y -filter_complex "aformat=channel_layouts=7.1+downmix, showwavespic=s=1920x1200:split_channels=1" -frames:v 1 10_channels_waveform_output.png


    


    However, if you attempt to do it for a 30 channels input by combining 5x 6.0 layouts :

    


    ffmpeg -i 30_channels_input.wav -y -filter_complex "aformat=channel_layouts=6.0+6.0+6.0+6.0+6.0, showwavespic=s=1920x1200:split_channels=1" -frames:v 1 30_channels_waveform_output.png


    


    FFmpeg gives the following :

    


    


    [auto_resampler_0 @ 0x7ffd7002a480] [SWR @ 0x7ffd7013a000] Rematrix is
needed between 30 channels and 6.0 but there is not enough information
to do it [auto_resampler_0 @ 0x7ffd7002a480] Failed to configure
output pad on auto_resampler_0 Error reinitializing filters ! Failed to
inject frame into filter network : Invalid argument Error while
processing the decoded data for stream #0:0

    


    


    My assumption is that I need to create a custom layout using 30 unique channel IDs (c.f. https://trac.ffmpeg.org/wiki/AudioChannelManipulation bottom of the page) instead of combining existing layouts.

    


    It seems that only 25 channel IDs are available though. Creating a custom layout with 30 channels is maybe not possible at all...

    


    [EDIT 2] Remarks :

    


    I finally found the documentation I was looking for. But it still seems that generating the waveforms of 30 channels would be difficult.

    


    Here is how to create custom layouts :
https://ffmpeg.org/ffmpeg-utils.html

    


    


    A custom channel layout can be specified as a sequence of terms,
separated by ’+’ or ’|’. Each term can be :

    


    the name of a standard channel layout (e.g. ‘mono’, ‘stereo’, ‘4.0’,
‘quad’, ‘5.0’, etc.) the name of a single channel (e.g. ‘FL’, ‘FR’,
‘FC’, ‘LFE’, etc.) a number of channels, in decimal, followed by ’c’,
yielding the default channel layout for that number of channels (see
the function av_get_default_channel_layout). Note that not all channel
counts have a default layout. a number of channels, in decimal,
followed by ’C’, yielding an unknown channel layout with the specified
number of channels. Note that not all channel layout specification
strings support unknown channel layouts. a channel layout mask, in
hexadecimal starting with "0x" (see the AV_CH_* macros in
libavutil/channel_layout.h. Before libavutil version 53 the trailing
character "c" to specify a number of channels was optional, but now it
is required, while a channel layout mask can also be specified as a
decimal number (if and only if not followed by "c" or "C").

    


    See also the function av_get_channel_layout defined in
libavutil/channel_layout.h.

    


    


    e.g.

    


    Therefore, for 11 channels input :

    


    ffmpeg -i 11_channels_input.wav -y -filter_complex "aformat=channel_layouts=FL+FR+FC+BL+BR+BC+SL+SR+WL+WR+TBL, showwavespic=s=1920x1200:split_channels=1" -frames:v 1 11_waveform_output.png


    


    —> worked for me

    


    while :

    


    ffmpeg -i 11_channels_input.wav -y -filter_complex "aformat=channel_layouts=11c, showwavespic=s=1920x1200:split_channels=1" -frames:v 1 11_waveform_output.png


    


    —> does not work

    


    But :

    


    ffmpeg -i 24_channels_input.wav -y -filter_complex "aformat=channel_layouts=24c, showwavespic=s=1920x1200:split_channels=1" -frames:v 1 24_waveform_output.png


    


    —> does work

    


    and finally, what I am still trying to achieve :

    


    ffmpeg -i 30_channels_input.wav -y -filter_complex "aformat=channel_layouts=30c, showwavespic=s=1920x1200:split_channels=1" -frames:v 1 30_waveform_output.png


    


    —> does not work

    


    p.s.

    


      

    • I execute these commands in sub shells via Ruby scripts (puts %x...)
    • 


    • My system : macOS 10.15.6 | zsh | FFmpeg 4.4 | Ruby 2.6.3
    •