
Recherche avancée
Médias (1)
-
Video d’abeille en portrait
14 mai 2011, par
Mis à jour : Février 2012
Langue : français
Type : Video
Autres articles (58)
-
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. -
Ajouter des informations spécifiques aux utilisateurs et autres modifications de comportement liées aux auteurs
12 avril 2011, parLa manière la plus simple d’ajouter des informations aux auteurs est d’installer le plugin Inscription3. Il permet également de modifier certains comportements liés aux utilisateurs (référez-vous à sa documentation pour plus d’informations).
Il est également possible d’ajouter des champs aux auteurs en installant les plugins champs extras 2 et Interface pour champs extras. -
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 (...)
Sur d’autres sites (9160)
-
ffmpeg does not recognize long string filter in execv
4 mai 2023, par incertiaI am writing some simple python script to call ffmpeg and concat some clips together. However, it doesn't work for reasons I am unable to explain.


below is a working version of the code after some debugging


inputs = sorted(list(askopenfilenames()))
n = len(inputs)

filter = []
for i in range(n):
 filter.append("[{}:v]".format(i))
 filter.append("[{}:a]".format(i))
filter.append("concat={}:v=1:a=1".format(n))
filter.append("[v]")
filter.append("[a]")
filter = " ".join(filter)

fargs = zip(itertools.repeat('-i'), inputs)
fargs = itertools.chain(
 ["ffmpeg"],
 itertools.chain.from_iterable(fargs),
 ["-filter_complex", '"{}"'.format(filter), "-vsync", "vfr", "-map", "[v]", "-map", "[a]"],
 ["-c:v", "libx264", "-crf", "{}".format(quality)],
 ["-c:a", "aac", "-b:a", "192k"],
 [out]
 )

os.execvp("ffmpeg", list(fargs))



but the entire
fargs
construction causesffmpeg
to complain about the filter chain when quotes are not utilized. e.g. by utilizing the below process

fargs = itertools.chain(
 ["ffmpeg", "-loglevel", "debug"],
 itertools.chain.from_iterable(fargs),
 #["-filter_complex", '"{}"'.format(filter), "-vsync", "vfr", "-map", "[v]", "-map", "[a]"],
 ["-filter_complex", filter, "-vsync", "vfr", "-map", "[v]", "-map", "[a]"],
 ["-c:v", "libx264", "-crf", "{}".format(quality)],
 ["-c:a", "aac", "-b:a", "192k"],
 [out]
 )



we see that
ffmpeg
somehow sees this as multiple arguments

Reading option '-filter_complex' ... matched as option 'filter_complex' (create a complex filtergraph) with argument '[0:v]'.
Reading option '[0:a]' ... matched as output url.
Reading option '[1:v]' ... matched as output url.
Reading option '[1:a]' ... matched as output url.
Reading option '[2:v]' ... matched as output url.
Reading option '[2:a]' ... matched as output url.
Reading option 'concat=3:v=1:a=1' ... matched as output url.
Reading option '[v]' ... matched as output url.
Reading option '[a]' ... matched as output url.



even though a simple
print(list(fargs))
yields

['ffmpeg', '-loglevel', 'debug', '-i', 'a.mp4', '-i', 'b.mp4', '-i', 'c.mp4', '-filter_complex', '[0:v] [0:a] [1:v] [1:a] [2:v] [2:a] concat=3:v=1:a=1 [v] [a]', '-vsync', 'vfr', '-map', '[v]', '-map', '[a]', '-c:v', 'libx264', '-crf', '20', '-c:a', 'aac', '-b:a', '192k', 'asdf.mp4']



implying that the long filter string is being passed to ffmpeg as a single argument.


-
lavfi/vf_vpp_qsv : check output format string against NULL pointer
9 janvier 2023, par Haihao Xiang -
What is the most efficient way to convert wav audio string to an ogg file without writing it to disk ?
1er janvier 2023, par Saurabh Kumar KarnMy final objective is to use TTS to get some Indic text converted into audio and pass that audio to a messaging system that accepts mp3 and ogg. Ogg is preferred.


I am on Ubuntu and my flow for getting audio string is something like this.


- 

- Text in Indic language is passed to an API
- API returns a json with a key value called audioContent.
audioString = response.json()['audio'][0]['audioContent']
- The decoded string is arrived by using this
decode_string = base64.b64decode(dat)








I am currently converting it to mp3 and as you can see I am writing the wave file first and then converting it into an mp3.


wav_file = open("output.wav", "wb")
decode_string = base64.b64decode(audioString)
wav_file.write(decode_string)

# Convert this to mp3 file
print('mp3file')
song = AudioSegment.from_wav("output.wav")
song.export("temp.mp3", format="mp3")



Is there a way to convert
audioString
directly to ogg file without doing the io ?

I've tried torchaudio and pyffmpeg to load
audioString
and do the conversion but it doesn't seem to be working.