
Recherche avancée
Médias (1)
-
SPIP - plugins - embed code - Exemple
2 septembre 2013, par
Mis à jour : Septembre 2013
Langue : français
Type : Image
Autres articles (96)
-
MediaSPIP 0.1 Beta version
25 avril 2011, parMediaSPIP 0.1 beta is the first version of MediaSPIP proclaimed as "usable".
The zip file provided here only contains the sources of MediaSPIP in its standalone version.
To get a working installation, you must manually install all-software dependencies on the server.
If you want to use this archive for an installation in "farm mode", you will also need to proceed to other manual (...) -
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. -
ANNEXE : Les plugins utilisés spécifiquement pour la ferme
5 mars 2010, parLe site central/maître de la ferme a besoin d’utiliser plusieurs plugins supplémentaires vis à vis des canaux pour son bon fonctionnement. le plugin Gestion de la mutualisation ; le plugin inscription3 pour gérer les inscriptions et les demandes de création d’instance de mutualisation dès l’inscription des utilisateurs ; le plugin verifier qui fournit une API de vérification des champs (utilisé par inscription3) ; le plugin champs extras v2 nécessité par inscription3 (...)
Sur d’autres sites (9574)
-
SETX is not recognized as an internal or external command operable program or batch file [duplicate]
6 avril 2020, par anonymous(skip this paragraph if you don't care about context) : So I was trying to record inside of Minecraft using the replay mod, and to render a video I have to install this thing called ffmpeg to render it, and my fears were correct, SETX is not recognized.



So, a while back I had to redo my javac because that wasn't recognized, but when I did get that fixed, it made all my other commands toast, except the basic ones like "copy" or "del". I don't know how, I'd assume I'd need to manually input the path variable and everything because I doubt I could even find anything in the system variables for it, but that may not be the case. Suggest some YouTube vids, or a thorough and non-complicated explanation if you can, because for some reason, some instructions go through one ear and out the other.



I also posted this in /r/feedthebeast, but I doubt anyone will find a solution there.



Thanks.


-
how to send the input data to FFMPEG from a C# program
18 octobre 2020, par jstuardoI need to send a binary stream to FFMPEG so that it sends to an RTMP server.


I did it in a nodejs script using socket.io library and in Linux. It works perfectly.


I need to do the same, but in a Windows Forms application using C#.


This is how I run the ffmpeg.exe application :


_currentProcess = new Process();
 _currentProcess.StartInfo.FileName = _ffmpegExe;
 _currentProcess.StartInfo.Arguments = BuildOptions(framesPerSecond, audioBitRate, audioEncoding, rtmpServer);
 _currentProcess.StartInfo.UseShellExecute = false;
 _currentProcess.StartInfo.CreateNoWindow = true;
 _currentProcess.StartInfo.RedirectStandardInput = true;
 _currentProcess.StartInfo.RedirectStandardError = true;
 _currentProcess.ErrorDataReceived += CurrentProcess_ErrorDataReceived;
 _currentProcess.Start();
 _currentProcess.BeginErrorReadLine();



BuildOptions
method is defined this way :

private string BuildOptions(int framesPerSecond, int audioBitRate, string audioEncoding, string rtmpServer)
 {
 string options;
 if (framesPerSecond == 1)
 {
 options = $"-i - -c:v libx264 -preset ultrafast -tune zerolatency -r 1 -g 2 -keyint_min 2 -x264opts keyint=2 -crf 25 -pix_fmt yuv420p -profile:v baseline -level 3 -c:a aac -b:a {audioEncoding} -ar {audioBitRate}-f flv {rtmpServer}";
 }
 else if (framesPerSecond == 15)
 {
 options = $"-i - -c:v libx264 -preset ultrafast -tune zerolatency max_muxing_queue_size 1000 -bufsize 5000 -r 15 -g 30 -keyint_min 30 -x264opts keyint=30 -crf 25 -pix_fmt yuv420p -profile:v baseline -level 3 -c:a aac -b:a {audioEncoding} -ar {audioBitRate} -f flv {rtmpServer}";
 }
 else
 {
 options = $"-i - -c:v libx264 -preset ultrafast -tune zerolatency -c:a aac -ar {audioBitRate} -b:a {audioEncoding} -bufsize 5000 -f flv {rtmpServer}";
 }

 return options;
 }



I am sending the data to the standard input this way :


public void EncodeAndSend(byte[] data)
 {
 if (_currentProcess != null)
 {
 var streamWriter = _currentProcess.StandardInput;
 streamWriter.Write(Encoding.GetEncoding("ISO-8859-1").GetChars(data));
 }
 }



And finally, this method is for receiving the standard error which receives the result from ffmpeg.exe :


private void CurrentProcess_ErrorDataReceived(object sender, DataReceivedEventArgs e)
 {
 Console.WriteLine(e.Data);
 }



When I run the application, this is shown in the console :


ffmpeg version 4.3.1-2020-10-01-essentials_build-www.gyan.dev Copyright (c) 2000-2020 the FFmpeg developers
 built with gcc 10.2.0 (Rev3, 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-lzma --enable-zlib --enable-libsrt --enable-libssh --enable-libzmq --enable-avisynth --enable-sdl2 --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxvid --enable-libaom --enable-libopenjpeg --enable-libvpx --enable-libass --enable-libfreetype --enable-libfribidi --enable-libvidstab --enable-libvmaf --enable-libzimg --enable-amf --enable-cuda-llvm --enable-cuvid --enable-ffnvcodec --enable-nvdec --enable-nvenc --enable-d3d11va --enable-dxva2 --enable-libmfx --enable-libgme --enable-libopenmpt --enable-libopencore-amrwb --enable-libmp3lame --enable-libtheora --enable-libvo-amrwbenc --enable-libgsm --enable-libopencore-amrnb --enable-libopus --enable-libspeex --enable-libvorbis --enable-librubberband
 libavutil 56. 51.100 / 56. 51.100
 libavcodec 58. 91.100 / 58. 91.100
 libavformat 58. 45.100 / 58. 45.100
 libavdevice 58. 10.100 / 58. 10.100
 libavfilter 7. 85.100 / 7. 85.100
 libswscale 5. 7.100 / 5. 7.100
 libswresample 3. 7.100 / 3. 7.100
 libpostproc 55. 7.100 / 55. 7.100
pipe:: Invalid data found when processing input



If I change the
EncodeAndSend
method to be :

public void EncodeAndSend(byte[] data)
 {
 if (_currentProcess != null)
 {
 var streamWriter = _currentProcess.StandardInput;
 streamWriter.Write(data);
 }
 }



pipe:: Invalid data found when processing input
error is not produced, but no more outputs are shown so it seems it is not working.

What is wrong with this ? how can I send the data to the FFMPEG process ?


Finally, I tell you that the binary stream comes from the camera by mean of MediaRecorder in a web page (the same used for my program in nodejs server, so that it is not the issue here)


-
Compiling c++ program for ffmpeg, error give undefined reference to [duplicate]
6 août 2020, par leonardltk1I have a code
read_mp3.cpp
, which usesffmpeg
to decode an mp3 file into an array.

Code for
read_mp3.cpp
is as follows :

#include 
 #include 

 // I use extern "C" as recommended here: https://blog.csdn.net/qq_18144521/article/details/79608355
 extern "C"
 {
 #include <libavutil></libavutil>opt.h>
 #include <libavcodec></libavcodec>avcodec.h>
 #include <libavformat></libavformat>avformat.h>
 #include <libswresample></libswresample>swresample.h>
 }
 using namespace std;


 int decode_audio_file(const char* path, const int sample_rate, double** data, int* size) {
 // initialize all muxers, demuxers and protocols for libavformat
 // (does nothing if called twice during the course of one program execution)
 av_register_all();

 /*
 Code for the rest of this function is found here :
 https://rodic.fr/blog/libavcodec-tutorial-decode-audio-file/
 */

 return 0;
 }

 int main (int argc, char ** argv) {
 // decode data
 int sample_rate = 44100;
 double* data;
 int size;
 if (decode_audio_file(argv[1], sample_rate, &data, &size) != 0) {
 return -1;
 }

 /*
 Do something with data ...
 */

 return 0;
 }



I tried different ways to compilations, but to no avail :


g++ -o ./read_mp3.out -Ofast -Wall -Wextra \
 -lavformat-ffmpeg -lavdevice-ffmpeg -lavcodec-ffmpeg -lavutil -lswresample \
 -std=c++11 "./read_mp3.cpp"
 
 g++ -o ./read_mp3.out -Ofast -Wall -Wextra \
 -lavformat -lavdevice -lavcodec -lavutil -lswresample \
 -std=c++11 "./read_mp3.cpp"
 
 g++ -o ./read_mp3.out -Ofast -Wall -Wextra \
 -lavformat -lavdevice -lavcodec -lavutil -pthread -ldl -lswscale -lbz2 -lz -lm \
 -std=c++11 "./read_mp3.cpp"



but i get the following error :


/tmp/ccnZzoIh.o: In function `decode_audio_file(char const*, int, double**, int*)':
 read_mp3.cpp:(.text+0x2781): undefined reference to `av_register_all'
 read_mp3.cpp:(.text+0x2786): undefined reference to `avformat_alloc_context'
 read_mp3.cpp:(.text+0x279c): undefined reference to `avformat_open_input'
 read_mp3.cpp:(.text+0x27b7): undefined reference to `avformat_find_stream_info'
 read_mp3.cpp:(.text+0x284b): undefined reference to `avcodec_find_decoder'
 read_mp3.cpp:(.text+0x2858): undefined reference to `avcodec_open2'
 read_mp3.cpp:(.text+0x2865): undefined reference to `swr_alloc'
 read_mp3.cpp:(.text+0x2880): undefined reference to `av_opt_set_int'
 read_mp3.cpp:(.text+0x2896): undefined reference to `av_opt_set_int'
 read_mp3.cpp:(.text+0x28ae): undefined reference to `av_opt_set_int'
 read_mp3.cpp:(.text+0x28c4): undefined reference to `av_opt_set_int'
 read_mp3.cpp:(.text+0x28dc): undefined reference to `av_opt_set_int'
 
 /tmp/ccnZzoIh.o:read_mp3.cpp:(.text+0x28f0): more undefined references to `av_opt_set_int' follow
 /tmp/ccnZzoIh.o: In function `decode_audio_file(char const*, int, double**, int*)':
 read_mp3.cpp:(.text+0x2907): undefined reference to `av_opt_set_sample_fmt'
 read_mp3.cpp:(.text+0x291d): undefined reference to `av_opt_set_sample_fmt'
 read_mp3.cpp:(.text+0x2927): undefined reference to `swr_init'
 read_mp3.cpp:(.text+0x2931): undefined reference to `swr_is_initialized'
 read_mp3.cpp:(.text+0x2943): undefined reference to `av_init_packet'
 read_mp3.cpp:(.text+0x2948): undefined reference to `av_frame_alloc'
 read_mp3.cpp:(.text+0x297b): undefined reference to `av_read_frame'
 read_mp3.cpp:(.text+0x299a): undefined reference to `avcodec_decode_audio4'
 read_mp3.cpp:(.text+0x29cc): undefined reference to `av_samples_alloc'
 read_mp3.cpp:(.text+0x29e6): undefined reference to `swr_convert'
 read_mp3.cpp:(.text+0x2a36): undefined reference to `av_frame_free'
 read_mp3.cpp:(.text+0x2a40): undefined reference to `swr_free'
 read_mp3.cpp:(.text+0x2a48): undefined reference to `avcodec_close'
 read_mp3.cpp:(.text+0x2a52): undefined reference to `avformat_free_context'

 collect2: error: ld returned 1 exit status