
Recherche avancée
Médias (1)
-
Revolution of Open-source and film making towards open film making
6 octobre 2011, par
Mis à jour : Juillet 2013
Langue : English
Type : Texte
Autres articles (66)
-
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 (...) -
MediaSPIP version 0.1 Beta
16 avril 2011, parMediaSPIP 0.1 beta est la première version de MediaSPIP décrétée comme "utilisable".
Le fichier zip ici présent contient uniquement les sources de MediaSPIP en version standalone.
Pour avoir une installation fonctionnelle, il est nécessaire d’installer manuellement l’ensemble des dépendances logicielles sur le serveur.
Si vous souhaitez utiliser cette archive pour une installation en mode ferme, il vous faudra également procéder à d’autres modifications (...) -
Amélioration de la version de base
13 septembre 2013Jolie sélection multiple
Le plugin Chosen permet d’améliorer l’ergonomie des champs de sélection multiple. Voir les deux images suivantes pour comparer.
Il suffit pour cela d’activer le plugin Chosen (Configuration générale du site > Gestion des plugins), puis de configurer le plugin (Les squelettes > Chosen) en activant l’utilisation de Chosen dans le site public et en spécifiant les éléments de formulaires à améliorer, par exemple select[multiple] pour les listes à sélection multiple (...)
Sur d’autres sites (8899)
-
swscale/cms : add color management subsystem
29 novembre 2024, par Niklas Haasswscale/cms : add color management subsystem
The underlying color mapping logic was ported as straightforwardly as possible
from libplacebo, although the API and glue code has been very heavily
refactored / rewritten. In particular, the generalization of gamut mapping
methods is replaced by a single ICC intent selection, and constants have been
hard-coded.To minimize the amount of overall operations, this gamut mapping LUT now embeds
a direct end-to-end transformation to the output color space ; something that
libplacebo does in shaders, but which is prohibitively expensive in software.In order to preserve compatibility with dynamic tone mapping without severely
regressing performance, we add the ability to generate a pair of "split" LUTS,
one for encoding the input and output to the perceptual color space, and a
third to embed the tone mapping operation. Additionally, this intermediate
space could be used for additional subjective effect (e.g. changing
saturation or brightness).The big downside of the new approach is that generating a static color mapping
LUT is now fairly slow, as the chromaticity lobe peaks have to be recomputed
for every single RGB value, since correlated RGB colors are not necessarily
aligned in ICh space. Generating a split 3DLUT significantly alleviates this
problem because the expensive step is done as part of the IPT input LUT, which
can share the same hue peak calculation at least for all input intensities. -
FFmpeg loudnorm : what does dynamic mode mean ? [closed]
6 novembre 2023, par Javita FunkyFFmpeg experts


I have numerous audios that i'd like to normalize by the same reference with FFmpeg loudnorm filter. But every time I do the 1st pass of normalization, normalization type reverts to "dynamic".


From here I know, that the loudnorm filter uses windows of 3 seconds of audio to calculate short-term loudness in the source and adjust the destination to meet the target parameters.
As most of my files are shotert than 3 seconds, I have to add some silence to them to make files at least 3 seconds long.


Knowing that I do the 1st pass, but it reverts to dynamic mode (Normalization Type : Dynamic) every time


Pass 1


ffmpeg -i input.ogg -af apad,atrim=0:3,loudnorm=I=-17.2:TP=-2:LRA=7:print_format=summary -f null -



I get


Input Integrated: -17.4 LUFS
Input True Peak: -0.9 dBTP
Input LRA: 0.3 LU
Input Threshold: -28.9 LUFS

Output Integrated: -16.1 LUFS
Output True Peak: -2.0 dBTP
Output LRA: 0.0 LU
Output Threshold: -27.2 LUFS

Normalization Type: Dynamic
Target Offset: -1.1 LU



FFmpeg documentation says "Target LRA shouldn’t be lower than source LRA and the change in integrated loudness shouldn’t result in a true peak which exceeds the target TP. If any of these conditions aren’t met, normalization mode will revert to dynamic. Options are true or false. Default is true."


As I can see, none of these conditions are met, but normalization type still gets reverted to "dynamic". As an experiment I tried to change my target integrated loudness, TP and LRA in all different ways, but i still get normalization type "dynamic" every time


- 

- Does it mean that "dynamic mode" applies instead of "linear mode" when I do the 2nd step (actual normalization) ?
- What does this "dynamic type" mean, and how is it different from "linear" ?
- Why this even happens and what do I do wrong ?








-
ffmpeg - How to (programmatically) copy a stream's side data ?
25 mars 2021, par waldenCalmsMy app is a tag editor (eg ID3) written in Swift for macOS. I'm using ffmpeg as my library to perform the tag editing. When the user is done editing, the app should save the changes to (essentially) a modified copy of the original file. I'm able to copy everything I need (from input -> output file) EXCEPT "side data".


In other words, I'm doing the programmatic equivalent of :


ffmpeg -i input.mp3 -metadata key1=value1 -metadata key2=value2 -codec copy output.mp3



So, output.mp3 must be identical to input.mp3, except for the few metadata changes made by the user.


What I have working so far


I'm able to copy the audio stream and all associated metadata (tags), as is, from input.mp3 to output.mp3.


The problem


My input.mp3 happens to have some side data (see below), which does not get copied over to output.mp3. How to copy side data ? To be honest, I don't even know what side data is, and the documentation is not very helpful.


ffprobe gives the following output (snippet) for the input.mp3's side data that looks like :


Side data:
 replaygain: track gain - -9.200000, track peak - unknown, album gain - unknown, album peak - unknown,



I want THIS ^ to get copied over to output.mp3, but it does not :(


Relevant code snippet (format context initialization code omitted for conciseness)


let inAudioStream = inFormatContext!.pointee.streams.advanced(by: Int(audio_stream_index)).pointee!.pointee
var outAudioStream = outFormatContext!.pointee.streams.advanced(by: Int(audio_stream_index)).pointee!.pointee
 
/* Free existing side data*/
 
for i in 0..* Copy side data if present */
 
if let srcSideData = inAudioStream.side_data {
 
 let rawPtr: UnsafeMutableRawPointer? = av_mallocz_array(Int(inAudioStream.nb_side_data),
 MemoryLayout<avpacketsidedata>.size)
 
 outAudioStream.side_data = UnsafeMutablePointer<avpacketsidedata>(OpaquePointer(rawPtr))
 outAudioStream.nb_side_data = inAudioStream.nb_side_data
 
 for i in 0..(OpaquePointer(data))
 }
}
 
status = avformat_write_header(outFormatContext, nil)
</avpacketsidedata></avpacketsidedata>


I got this logic from this page. Is this ^ the right way to copy a stream's side data to the corresponding stream in the output file ? If not, how to do it ?


I have also tried the following functions with no luck :


av_stream_new_side_data(...)
av_stream_add_side_data(...)



Please ask for details if required, and I will provide them. Thanks very much !