
Recherche avancée
Médias (2)
-
Exemple de boutons d’action pour une collection collaborative
27 février 2013, par
Mis à jour : Mars 2013
Langue : français
Type : Image
-
Exemple de boutons d’action pour une collection personnelle
27 février 2013, par
Mis à jour : Février 2013
Langue : English
Type : Image
Autres articles (70)
-
List of compatible distributions
26 avril 2011, parThe table below is the list of Linux distributions compatible with the automated installation script of MediaSPIP. Distribution nameVersion nameVersion number Debian Squeeze 6.x.x Debian Weezy 7.x.x Debian Jessie 8.x.x Ubuntu The Precise Pangolin 12.04 LTS Ubuntu The Trusty Tahr 14.04
If you want to help us improve this list, you can provide us access to a machine whose distribution is not mentioned above or send the necessary fixes to add (...) -
Websites made with MediaSPIP
2 mai 2011, parThis page lists some websites based on MediaSPIP.
-
Multilang : améliorer l’interface pour les blocs multilingues
18 février 2011, parMultilang est un plugin supplémentaire qui n’est pas activé par défaut lors de l’initialisation de MediaSPIP.
Après son activation, une préconfiguration est mise en place automatiquement par MediaSPIP init permettant à la nouvelle fonctionnalité d’être automatiquement opérationnelle. Il n’est donc pas obligatoire de passer par une étape de configuration pour cela.
Sur d’autres sites (8245)
-
ffmpeg unable to get duration/bitrate of remote gif
17 février, par Peter XiaI'm trying to get the duration of a gif.


The command
ffmpeg -i https://cdn.7tv.app/emote/01F6MZGCNG000255K4X1K7NTHR/4x.gif


gives

Duration: N/A, start: 0.000000, bitrate: N/A


However if i download the file and pass it in

ffmpeg -i 4x.gif


it gives :

Duration: 00:00:07.92, start: 0.000000, bitrate: 1225 kb/s


The issue seems limited only to gifs on 7tv site.


- 

- It works for other sites. (example :
ffmpeg -i https://c.tenor.com/ULCY5B996-oAAAAd/tenor.gif
). - It also works for other encodings of that image (exmaple
ffmpeg -i https://cdn.7tv.app/emote/01F6MZGCNG000255K4X1K7NTHR/4x.avif
)






Here is the HTTP response header from 7tv site of that gif :


HTTP/2 200 
content-type: image/gif
content-length: 1213725
x-7tv-cache-hits: 37527
x-7tv-cache: hit
age: 228365
cache-control: public, max-age=604800, s-maxage=86400, immutable
alt-svc: h3=":443"; ma=2592000
x-7tv-cdn-pod: cdn-ssprq
x-7tv-cdn-node: cdn-1
server: SevenTV
vary: origin, access-control-request-method, access-control-request-headers
access-control-allow-origin: *
access-control-expose-headers: *
date: Sun, 16 Feb 2025 20:47:28 GMT



Can someone help me understand ? Something spcecific to this site is causing ffmpeg to behave differently ?


- It works for other sites. (example :
-
"Error opening input" error when running ffmpeg via shell script
15 octobre 2024, par Roni YanivI'm on a macbook running sonoma 14.7.


I have the following ffmpeg command which runs just fine by itself in the same folder of the files I need to modify :


ffmpeg -i "water-stream-90fps.mp4" -vf "drawtext=text='Frame\: %{frame_num}': start_number=1: x=(w-text_w): y=(h-text_h):fontsize=(h*10/100):fontcolor=yellow,drawtext=text='%{pts\:hms}':x=0:y=0:fontsize=(h*10/100):fontcolor=yellow" "water-stream-90fps-with-markers.mp4"


However, when I try to use it in a shell script by running
./add_markers.sh
in the same folder, I get an error.

This is the
add_markers.sh
script :

#!/bin/bash

# Replace '/path/to/your/folder' with the actual path to your folder
folder=$(pwd)

# Replace 'ffmpeg -i input.mp4 -vf scale=640:480 output.mp4' with your desired FFmpeg command
ffmpeg_command="ffmpeg -i input.mp4 -vf \"drawtext=text='Frame\: %{frame_num}': start_number=1: x=(w-text_w): y=(h-text_h):fontsize=(h*10/100):fontcolor=yellow,drawtext=text='%{pts\:hms}':x=0:y=0:fontsize=(h*10/100):fontcolor=yellow\" output.mp4"

echo "$ffmpeg_command"

# Loop through all files in the folder and execute the FFmpeg command

for file in "$folder"/*; do
 filename=$(basename "${file%.*}") #get only the first part of the file name without path or extension

 # Replace 'input.mp4' with the current filename and 'output.mp4' with the new filename. 
 # Added double quotes to manage filenames with spaces.
 new_command="${ffmpeg_command//input.mp4/\"$filename.mp4\"}"
 new_command="${new_command//output.mp4/\"$filename-with-markers.mp4\"}"

 echo "Running $new_command"

 $new_command

done



This is the error I get (for one of the files, same error for all of them) :


Running ffmpeg -i "water-stream-90fps.mp4" -vf "drawtext=text='Frame\: %{frame_num}': start_number=1: x=(w-text_w): y=(h-text_h):fontsize=(h*10/100):fontcolor=yellow,drawtext=text='%{pts\:hms}':x=0:y=0:fontsize=(h*10/100):fontcolor=yellow" "water-stream-90fps-with-markers.mp4"
ffmpeg version 7.0 Copyright (c) 2000-2024 the FFmpeg developers
 built with Apple clang version 15.0.0 (clang-1500.3.9.4)
 configuration: --prefix=/opt/homebrew/Cellar/ffmpeg/7.0 --enable-shared --enable-pthreads --enable-version3 --cc=clang --host-cflags= --host-ldflags='-Wl,-ld_classic' --enable-ffplay --enable-gnutls --enable-gpl --enable-libaom --enable-libaribb24 --enable-libbluray --enable-libdav1d --enable-libharfbuzz --enable-libjxl --enable-libmp3lame --enable-libopus --enable-librav1e --enable-librist --enable-librubberband --enable-libsnappy --enable-libsrt --enable-libssh --enable-libsvtav1 --enable-libtesseract --enable-libtheora --enable-libvidstab --enable-libvmaf --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libxvid --enable-lzma --enable-libfontconfig --enable-libfreetype --enable-frei0r --enable-libass --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopenvino --enable-libspeex --enable-libsoxr --enable-libzmq --enable-libzimg --disable-libjack --disable-indev=jack --enable-videotoolbox --enable-audiotoolbox --enable-neon
 libavutil 59. 8.100 / 59. 8.100
 libavcodec 61. 3.100 / 61. 3.100
 libavformat 61. 1.100 / 61. 1.100
 libavdevice 61. 1.100 / 61. 1.100
 libavfilter 10. 1.100 / 10. 1.100
 libswscale 8. 1.100 / 8. 1.100
 libswresample 5. 1.100 / 5. 1.100
 libpostproc 58. 1.100 / 58. 1.100
[in#0 @ 0x6000015bc300] Error opening input: No such file or directory
Error opening input file "water-stream-90fps.mp4".
Error opening input files: No such file or directory



I tried all kinds of things but my brain is starting to swell. Any guidance/help would be appreciated.


-
FFMpegCore.Exceptions.FFMpegException : 'ffmpeg exited with non-zero exit-code'
15 octobre 2024, par secretplyI am looking to retrieve the
loudnorm
data in JSON format from FFmpeg (using FFMpegCore 5.1.0). This is the code I currently have :

await FFMpegArguments
 .FromPipeInput(new StreamPipeSource(fileStream.OpenReadStream()))
 .OutputToPipe(new StreamPipeSink(outputStream), options => options.WithCustomArgument("-af loudnorm=print_format=json"))
 .ProcessAsynchronously();



This is the exception I get, which is similar to this old GitHub issue.


System.IO.IOException: 'Pipe is broken.'

This exception was originally thrown at this call stack:
 System.IO.Pipes.PipeStream.PipeValueTaskSource.GetResult(short)
 System.IO.Pipes.PipeStream.PipeValueTaskSource.System.Threading.Tasks.Sources.IValueTaskSource.GetResult(short)
 System.IO.Stream.CopyToAsync.__Core|27_0(System.IO.Stream, System.IO.Stream, int, System.Threading.CancellationToken) in Stream.cs
 FFMpegCore.Arguments.InputPipeArgument.ProcessDataAsync(System.Threading.CancellationToken)
 FFMpegCore.Arguments.PipeArgument.During(System.Threading.CancellationToken)
 FFMpegCore.FFMpegArguments.During(System.Threading.CancellationToken)
 FFMpegCore.FFMpegArgumentProcessor.Process(Instances.ProcessArguments, System.Threading.CancellationTokenSource)
 FFMpegCore.FFMpegArgumentProcessor.ProcessAsynchronously(bool, FFMpegCore.FFOptions)



I am trying to replicate the following FFmpeg command and JSON output :


ffmpeg -i "file.flac" -af loudnorm=print_format=json -f null -



{
 "input_i" : "-21.87",
 "input_tp" : "-7.13",
 "input_lra" : "5.00",
 "input_thresh" : "-32.04",
 "output_i" : "-24.76",
 "output_tp" : "-10.36",
 "output_lra" : "4.10",
 "output_thresh" : "-34.84",
 "normalization_type" : "dynamic",
 "target_offset" : "0.76"
}



If I add
.ForceFormat("null")
to theOutputToPipe
options, I do not get the exception but when I read the output stream, it returns an empty string. In the issue mentioned, I know they mentioned a way to get theFFMpegErrorOutput
property but I do not know how that can be done. I could not find an example of outputting a stream as JSON. If anyone can point me in the right direction or can provide an alternative solution, I would greatly appreciate it.

Update


I made a change to the
StreamPipeSource()
method where I copied over the uploaded file to aMemoryStream
. With this change, the followingFFMpegException
is thrown.

FFMpegCore.Exceptions.FFMpegException: 'ffmpeg exited with non-zero exit-code (-22 - ffmpeg version 7.0.1-full_build-www.gyan.dev Copyright (c) 2000-2024 the FFmpeg developers
 built with gcc 13.2.0 (Rev5, Built by MSYS2 project)
 configuration: --enable-gpl --enable-version3 --enable-static --disable-w32threads --disable-autodetect --enable-fontconfig --enable-iconv --enable-gnutls --enable-libxml2 --enable-gmp --enable-bzlib --enable-lzma --enable-libsnappy --enable-zlib --enable-librist --enable-libsrt --enable-libssh --enable-libzmq --enable-avisynth --enable-libbluray --enable-libcaca --enable-sdl2 --enable-libaribb24 --enable-libaribcaption --enable-libdav1d --enable-libdavs2 --enable-libuavs3d --enable-libxevd --enable-libzvbi --enable-librav1e --enable-libsvtav1 --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs2 --enable-libxeve --enable-libxvid --enable-libaom --enable-libjxl --enable-libopenjpeg --enable-libvpx --enable-mediafoundation --enable-libass --enable-frei0r --enable-libfreetype --enable-libfribidi --enable-libharfbuzz --enable-liblensfun --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-libshaderc --enable-vulkan --enable-libplacebo --enable-opencl --enable-libcdio --enable-libgme --enable-libmodplug --enable-libopenmpt --enable-libopencore-amrwb --enable-libmp3lame --enable-libshine --enable-libtheora --enable-libtwolame --enable-libvo-amrwbenc --enable-libcodec2 --enable-libilbc --enable-libgsm --enable-libopencore-amrnb --enable-libopus --enable-libspeex --enable-libvorbis --enable-ladspa --enable-libbs2b --enable-libflite --enable-libmysofa --enable-librubberband --enable-libsoxr --enable-chromaprint
 libavutil 59. 8.100 / 59. 8.100
 libavcodec 61. 3.100 / 61. 3.100
 libavformat 61. 1.100 / 61. 1.100
 libavdevice 61. 1.100 / 61. 1.100
 libavfilter 10. 1.100 / 10. 1.100
 libswscale 8. 1.100 / 8. 1.100
 libswresample 5. 1.100 / 5. 1.100
 libpostproc 58. 1.100 / 58. 1.100
[in#0 @ 000001bda86c67c0] Error opening input: Invalid argument
Error opening input file \\.\pipe\FFMpegCore_c6e5c.
Error opening input files: Invalid argument)'