
Recherche avancée
Médias (3)
-
GetID3 - Bloc informations de fichiers
9 avril 2013, par
Mis à jour : Mai 2013
Langue : français
Type : Image
-
GetID3 - Boutons supplémentaires
9 avril 2013, par
Mis à jour : Avril 2013
Langue : français
Type : Image
-
Collections - Formulaire de création rapide
19 février 2013, par
Mis à jour : Février 2013
Langue : français
Type : Image
Autres articles (58)
-
Configurer la prise en compte des langues
15 novembre 2010, parAccéder à la configuration et ajouter des langues prises en compte
Afin de configurer la prise en compte de nouvelles langues, il est nécessaire de se rendre dans la partie "Administrer" du site.
De là, dans le menu de navigation, vous pouvez accéder à une partie "Gestion des langues" permettant d’activer la prise en compte de nouvelles langues.
Chaque nouvelle langue ajoutée reste désactivable tant qu’aucun objet n’est créé dans cette langue. Dans ce cas, elle devient grisée dans la configuration et (...) -
Creating farms of unique websites
13 avril 2011, parMediaSPIP platforms can be installed as a farm, with a single "core" hosted on a dedicated server and used by multiple websites.
This allows (among other things) : implementation costs to be shared between several different projects / individuals rapid deployment of multiple unique sites creation of groups of like-minded sites, making it possible to browse media in a more controlled and selective environment than the major "open" (...) -
Participer à sa traduction
10 avril 2011Vous 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 (...)
Sur d’autres sites (7569)
-
avcodec/mqc : Hardcode tables to save space
7 mai 2021, par Andreas Rheinhardtavcodec/mqc : Hardcode tables to save space
mqc currently initializes three arrays at runtime ; each of them
has 2 * 47 elements, one is uint16_t, two are uint8_t, so that their
combined size is 8 * 47. The source data for these initializations
is contained in an array of 47 elements of size six. Said array is
only used in order to initialize the other arrays, so the savings
are just 2 * 47B. Yet this is dwarfed by the size of the code for
performing the initializations : It is 109B (GCC 10.2, x64, -O3 albeit
in an av_cold function) ; this does not even include the size of the
code in the callers. So just hardcode these tables.This also fixes a data race, because the encoder always initialized
these tables during init, although they might already be used at the
same time by already running encoder/decoder instances.Signed-off-by : Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
-
avcodec/speedhqenc : Hardcode table to save space
10 décembre 2020, par Andreas Rheinhardtavcodec/speedhqenc : Hardcode table to save space
The SpeedHQ encoder currently reverses the entries of two small tables
and stores them in other tables. These other tables have a size of 48
bytes, yet the code for their initialization takes 135 bytes (GCC 9.3,
x64, O3 albeit in an av_cold function). So remove the runtime
initialization and hardcode the tables.Signed-off-by : Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
-
FFmpeg save .mp3 output into a variable
6 mai 2021, par Toto BriacIn my application I want to modify various mp3 and then mix them together. I know I could do it with a single command line in FFmpeg but It can end up very messy since I need to use various filter on each sample and I have five of them.
My idea is to edit each sample individually, save them into a variable and finally mix them. This is my code :


import subprocess 

def create_samp():
 sample= subprocess.run(["ffmpeg", "-y", "-i", "https://freesound.org/data/previews/186/186942_2594536-hq.mp3", \
 "-filter_complex", "adelay=15000|15000", "-codec:v", "copy", "-f", "mp3","-"], stdout=subprocess.PIPE) 
 return(sample) 

def record(samp):
 subprocess.run(["ffmpeg", "-y", "-i", "https://cdns-preview-b.dzcdn.net/stream/c-b0b684fe962f93dc43f1f7ea493683a1-3.mp3", \
 "-i", samp.stdout, "-f", "-mp3", "copy", "output.mp3"])

samp = create_samp()
record(samp)



My issue is that I have to encode the
stdout
. I've tried'utf-8'
but got this error :

UnicodeDecodeError: 'utf-8' codec can't decode byte 0xff in position 45: invalid start byte



With `'utf-16' :


UnicodeDecodeError: 'utf-16-le' codec can't decode bytes in position 239454-239455: illegal encoding



Why is the way to fix this issue ? Is my approach the right one ?


Thanks to @Rotem I succeed to do what I wanted to. But now I am facing an other issue, since I want to mix up to 5 sounds, I tried to implement it the lazy/easy way :


import subprocess

def create_samp_2():
 sample= subprocess.run(["ffmpeg", "-i", "https://freesound.org/data/previews/186/186942_2594536-hq.mp3", \
 "-af", "adelay=15000|15000", "-f", "mp3", "pipe:"], stdout=subprocess.PIPE).stdout
 return(sample)

def create_samp():

 sample= subprocess.run(["ffmpeg", "-i", "https://freesound.org/data/previews/370/370934_6399962-lq.ogg", \
 "-af", "adelay=1000|1000", "-f", "mp3", "pipe:"], stdout=subprocess.PIPE).stdout
 return(sample)


def record(samp, samp_2): 
 process = subprocess.Popen(["ffmpeg", "-y", '-f', 'mp3', \
 "-i", "https://cdns-preview-b.dzcdn.net/stream/c-b0b684fe962f93dc43f1f7ea493683a1-3.mp3", \
 "-i", "pipe:", \
 "-i", "pipe:", \
 "-filter_complex", "amix=inputs=3:duration=longest", "output.mp3"], stdin=subprocess.PIPE)

 process.stdin.write(samp) 
 process.stdin.write(samp_2) 
 process.stdin.close() 
 process.wait()

samp = create_samp()
samp_2 = create_samp_2()
record(samp, samp_2)



Surprisingly it works, my two sounds start at the right time, but the second sound is messed up. So it's not the right way to do it.


Then I tried named pipes as suggested this way :


"pipe1:"



But I get this error :


pipe1:: Protocol not found
Did you mean file:pipe1:?



Reading named pipe wiki it is stated that I have to create them with
mkfifo()
.

So I tried :


import os
pipe1 = "pipe1"

def create_pipe1():
 os.mkfifo(pipe1)

But now I have this error: pipe1:: Protocol not found
Did you mean file:pipe1:?