
Recherche avancée
Médias (1)
-
Rennes Emotion Map 2010-11
19 octobre 2011, par
Mis à jour : Juillet 2013
Langue : français
Type : Texte
Autres articles (51)
-
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 (...) -
Selection of projects using MediaSPIP
2 mai 2011, parThe examples below are representative elements of MediaSPIP specific uses for specific projects.
MediaSPIP farm @ Infini
The non profit organizationInfini develops hospitality activities, internet access point, training, realizing innovative projects in the field of information and communication technologies and Communication, and hosting of websites. It plays a unique and prominent role in the Brest (France) area, at the national level, among the half-dozen such association. Its members (...) -
Submit enhancements and plugins
13 avril 2011If you have developed a new extension to add one or more useful features to MediaSPIP, let us know and its integration into the core MedisSPIP functionality will be considered.
You can use the development discussion list to request for help with creating a plugin. As MediaSPIP is based on SPIP - or you can use the SPIP discussion list SPIP-Zone.
Sur d’autres sites (6870)
-
Python, ffmpeg split list of audio files
24 novembre 2020, par emilI know how to split one single audio file with python and ffmpeg :


command = "ffmpeg -i a.wav -f segment -segment_time 60 -c copy out_dir/output%09d.wav"
command = shlex.split(command)
subprocess.run(command)



For my current task, I have a list of several hundred
.wav
files I want to split.

My current solution is :


def parse_and_split_dir(directory, out_dir):
 files = [x for x in os.listdir(directory) if ".wav" in x]
 print(files)
 cntr = 0
 for wav in files:
 wav = wav.replace(" ", "\ ")
 temp_dir = os.path.join(out_dir, str(cntr))
 Path(temp_dir).mkdir(parents=True, exist_ok=True)
 temp_dir = os.path.join(temp_dir, "output%05d.wav")
 command = "ffmpeg -i {} -f segment -segment_time 60 -c copy {}".format(os.path.join(directory, wav), temp_dir)
 command = shlex.split(command)
 subprocess.run(command)
 cntr += 1





I list all .wav files, and for each file I create a directory where I store the split files into. This implies that file naming start with index 1 for each new file.
E.g. folder 1 contains files
...1.wav
to...9.wav
, folder 2 contains...1.wav
to...13.wav
and so on.

In short, I ideally want to parse the whole directory with a single command, while keeping the naming continually from file to file, e.g. when the last wav saved its last split with
...10.split
, the next split for the next file should be saved as..11.split
.

I thought about first concatenating all the single files to one file, and then splitting them again (which introduces massive overhead), and unnecessarily consumes memory and disk space. An alternative I thought of was using a *.wav wildcard, but ffmpeg found no file called
*.wav
(which is expected).

Related question : 1


-
Core : Add "method" field to error list entry
31 mars 2014, par YuraDubenskyCore : Add "method" field to error list entry
To check what kind of validation rule was broken, so we could find a
difference between required or regex validation error raised.Closes #1035
-
ffmpeg - filter_complex list too long
2 mars 2016, par BaumiLet’s say I want to overlay a clock in the video using special font, color, etc to video that is aprox 30 min long. I end up with command :
ffmpeg -y -i in.mp4 -filter_complex "
[0:v]drawtext=fontfile=/var/www/sites/manage/elements/digital-7.ttf:text='00\:00':fontcolor=white@1.0:fontsize=26:x=100:y=65:enable='between(t,0,7)'[tmp];
[tmp]drawtext=fontfile=/var/www/sites/manage/elements/digital-7.ttf:text='00\:01':fontcolor=white@1.0:fontsize=26:x=100:y=65:enable='between(t,7,8)'[tmp];
[tmp]drawtext=fontfile=/var/www/sites/manage/elements/digital-7.ttf:text='00\:02':fontcolor=white@1.0:fontsize=26:x=100:y=65:enable='between(t,8,9)'[tmp];
[tmp]drawtext=fontfile=/var/www/sites/manage/elements/digital-7.ttf:text='00\:03':fontcolor=white@1.0:fontsize=26:x=100:y=65:enable='between(t,9,10)'[tmp];
[tmp]drawtext=fontfile=/var/www/sites/manage/elements/digital-7.ttf:text='00\:04':fontcolor=white@1.0:fontsize=26:x=100:y=65:enable='between(t,10,11)'[tmp];
......."
-map "[tmp]" -map 0:a -acodec copy -c:v h264 out.mp4This clock is not the only overlay I have so finally I have end up with command 216kB long but this I cannot even run in bash because of argument list being too long.
I wanted to re-encode the video only once. Is there any other way I can do that ?
Thanks !