
Recherche avancée
Médias (9)
-
Stereo master soundtrack
17 octobre 2011, par
Mis à jour : Octobre 2011
Langue : English
Type : Audio
-
Elephants Dream - Cover of the soundtrack
17 octobre 2011, par
Mis à jour : Octobre 2011
Langue : English
Type : Image
-
#7 Ambience
16 octobre 2011, par
Mis à jour : Juin 2015
Langue : English
Type : Audio
-
#6 Teaser Music
16 octobre 2011, par
Mis à jour : Février 2013
Langue : English
Type : Audio
-
#5 End Title
16 octobre 2011, par
Mis à jour : Février 2013
Langue : English
Type : Audio
-
#3 The Safest Place
16 octobre 2011, par
Mis à jour : Février 2013
Langue : English
Type : Audio
Autres articles (111)
-
HTML5 audio and video support
13 avril 2011, parMediaSPIP 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 (...) -
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 (...)
-
Support audio et vidéo HTML5
10 avril 2011MediaSPIP utilise les balises HTML5 video et audio pour la lecture de documents multimedia en profitant des dernières innovations du W3C supportées par les navigateurs modernes.
Pour les navigateurs plus anciens, le lecteur flash Flowplayer est utilisé.
Le lecteur HTML5 utilisé a été spécifiquement créé pour MediaSPIP : il est complètement modifiable graphiquement pour correspondre à un thème choisi.
Ces technologies permettent de distribuer vidéo et son à la fois sur des ordinateurs conventionnels (...)
Sur d’autres sites (14967)
-
A process' child doesn't get killed from killing the parent process
2 avril 2022, par ImpasseI am developing an Electron application. In this application, I am spawning a Python process with a file's path as an argument, and the file itself is then passed to ffmpeg (through the ffmpeg-python module) and then goes through some Tensorflow functions.


I am trying to handle the case in which the user closes the Electron app while the whole background process is going. From my tests though, it seems like ffmpeg's process stays up no matter what. I'm on Windows and I'm looking at the task manager and I'm not sure what's going on : when closing the Electron app's window, sometimes ffmpeg.exe will be a single process, some other times it will stay in an Electron processes group.


I have noticed that if I kill Electron's process through closing the window, the python process will also close once ffmpeg has done its work, so I guess this is half-working. The problem is, ffmpeg is doing intensive stuff and if the user needs to close the window, then the ffmpeg process also NEEDS to be killed. But I can't achieve that in any way.


I have tried a couple things, so I'll paste some code :


main.js


// retrieve video data
ipcMain.handle('get-games', async (event, arg) => {
 const spawn = require('child_process').spawn;
 const pythonProcess = spawn('python', ["./backend/predict_games.py", arg]);

 // sets pythonProcess as a global variable to be accessed when quitting the app
 global.childProcess = pythonProcess;

 return new Promise((resolve, reject) => {
 let result = "";

 pythonProcess.stdout.on('data', async (data) => {
 data = String(data);

 if (data.startsWith("{"))
 result = JSON.parse(data);
 });

 pythonProcess.on('close', () => {
 resolve(result);
 })

 pythonProcess.on('error', (err) => {
 reject(err);
 });
 })
});

app.on('before-quit', function () {
 global.childProcess.kill('SIGINT');
});



predict_games.py
(the ffmpeg part)

def convert_video_to_frames(fps, input_file):
 # a few useful directories
 local_dir = os.path.dirname(os.path.abspath(__file__))
 snapshots_dir = fr"{local_dir}/snapshots/{input_file.stem}"

 # creates snapshots folder if it doesn't exist
 Path(snapshots_dir).mkdir(parents=True, exist_ok=True)

print(f"Processing: {Path(fr'{input_file}')}")
try:
 (
 ffmpeg.input(Path(input_file))
 .filter("fps", fps=fps)
 .output(f"{snapshots_dir}/%d.jpg", s="426x240", start_number=0)
 .run(capture_stdout=True, capture_stderr=True)
 )
except ffmpeg.Error as e:
 print("stdout:", e.stdout.decode("utf8"))
 print("stderr:", e.stderr.decode("utf8"))



Does anyone have any clue ?


-
avcodec/mpeg4videodec : Fix runtime error : signed integer overflow : 134527392 * 16...
3 mars 2017, par Michael Niedermayeravcodec/mpeg4videodec : Fix runtime error : signed integer overflow : 134527392 * 16 cannot be represented in type ’int’
This checks the sprite delta intermediates for overflow
Fixes : 716/clusterfuzz-testcase-4890287480504320Found-by : continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/targets/ffmpeg
Signed-off-by : Michael Niedermayer <michael@niedermayer.cc> -
How to add custom external video filter to ffmpeg at runtime ?
9 décembre 2019, par alexTrying to build ffplay app that uses ffmpeg LGPL build with custom filter that I want to plug in during runtime. Differently from adding custom filter during compilation described scenario is not documented, thus tried to experiment. Tried executing avfilter_register and avfilter_graph_alloc_filter functions before avfilter_graph_parse_ptr with avfilter_graph_parse_ptr resulting in -22 return value (Invalid argument).
Filter graph string :
[in] split [T1], fifo, [T2] overlay=0:H/2 [out]; [T1] fifo, crop=iw:ih/2:0:ih/2, my_edgedetect=low=0.1:high=0.4 [T2]
Lines added to configure_filtergraph function in ffplay.c :
if ((ret = avfilter_register(&ff_vf_edgedetect)) < 0)
goto fail;
if ((ret = avfilter_graph_alloc_filter(graph, &ff_vf_edgedetect, ff_vf_edgedetect.name)) < 0)
goto fail;Custom edge detect filter name (AVFilter.name) changed to my_edgedetect.
What is the proper way to register custom filter during runtime ?
P.S.
Same question on Zeranoa forum