
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 (108)
-
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 (...) -
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. -
Personnaliser en ajoutant son logo, sa bannière ou son image de fond
5 septembre 2013, parCertains thèmes prennent en compte trois éléments de personnalisation : l’ajout d’un logo ; l’ajout d’une bannière l’ajout d’une image de fond ;
Sur d’autres sites (17649)
-
Pydub FFMPEG issue [closed]
14 janvier, par Nikolai van den HovenI am attempting to use FFMPEG with Pydub to create a program that chops .mp3 files into different words, each contained in their own .mp3 file, but when I run the script I am getting the following error :


PS C:\Users\nik> & C:/Users/nik/AppData/Local/Microsoft/WindowsApps/python3.12.exe "d:/Python/Word Splitter.py"
C:\Users\nik\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.12_qbz5n2kfra8p0\LocalCache\local-packages\Python312\site-packages\pydub\utils.py:170: RuntimeWarning: Couldn't find ffmpeg or avconv - defaulting to ffmpeg, but may not work
 warn("Couldn't find ffmpeg or avconv - defaulting to ffmpeg, but may not work", RuntimeWarning)



This is the code I am using.


import os
from pydub import AudioSegment
from pydub.silence import split_on_silence
import speech_recognition as sr
AudioSegment.ffmpeg = r"D:\Python\ffmpeg\bin\ffmpeg.exe"
def mp3_to_words(mp3_file, output_folder):
 # Ensure output folder exists
 os.makedirs(output_folder, exist_ok=True)

 # Load MP3 file
 print("Loading audio file...")
 audio = AudioSegment.from_mp3(mp3_file)

 # Split audio into chunks using silence detection
 print("Splitting audio into chunks...")
 chunks = split_on_silence(
 audio,
 min_silence_len=200, # Minimum silence duration in ms to consider as a split point
 silence_thresh=audio.dBFS - 14, # Silence threshold relative to average loudness
 keep_silence=100 # Retain some silence in chunks
 )

 recognizer = sr.Recognizer()

 for i, chunk in enumerate(chunks):
 print(f"Processing chunk {i + 1}/{len(chunks)}...")

 # Save the chunk temporarily
 temp_file = os.path.join(output_folder, f"chunk_{i}.wav")
 chunk.export(temp_file, format="wav")

 # Recognize words in the chunk
 with sr.AudioFile(temp_file) as source:
 audio_data = recognizer.record(source)
 try:
 text = recognizer.recognize_google(audio_data)
 words = text.split()

 # Export each word as its own MP3
 word_start = 0
 for j, word in enumerate(words):
 word_duration = len(chunk) // len(words) # Approximate duration per word
 word_audio = chunk[word_start:word_start + word_duration]
 word_file = os.path.join(output_folder, f"word_{i}_{j}.mp3")
 word_audio.export(word_file, format="mp3")
 word_start += word_duration

 except sr.UnknownValueError:
 print(f"Could not understand chunk {i + 1}.")
 except sr.RequestError as e:
 print(f"Could not request results; {e}")

 # Clean up temporary file
 os.remove(temp_file)

 print(f"Processed {len(chunks)} chunks. Word MP3s saved in {output_folder}.")

if __name__ == "__main__":
 input_file = input("Enter the path to the MP3 file: ").strip()
 output_dir = input("Enter the output folder path: ").strip()

 mp3_to_words(input_file, output_dir)



I have added the Base FFMPEG folder and the bin folder within it to Windows PATH
My PATH variable on Windows 11,
But it does not show up in the variable when I typed PATH into cmd


-
Facing issue with mp4Parser
20 novembre 2014, par RohitI am trying to trim video with the help of mp4Parser. In output am getting trimmed video but just before video finishes it give error "Sorry cant Play this video". Video am making is H264.
public static void main(String args) throws IOException {
Movie movie = new MovieCreator()
.build(new RandomAccessFileIsoBufferWrapperImpl(
new File(
"/sdcard/Videos11/"+args+".mp4")));
List<track> tracks = movie.getTracks();
Log.e("Tracks","Following are the Tracks:- "+tracks);
movie.setTracks(new LinkedList<track>());
// remove all tracks we will create new tracks from the old
double startTime = 0.000;
double endTime = 6.000;
boolean timeCorrected = false;
// Here we try to find a track that has sync samples. Since we can only
// start decoding
// at such a sample we SHOULD make sure that the start of the new
// fragment is exactly
// such a frame
for (Track track : tracks) {
if (track.getSyncSamples() != null
&& track.getSyncSamples().length > 0) {
if (timeCorrected) {
// This exception here could be a false positive in case we
// have multiple tracks
// with sync samples at exactly the same positions. E.g. a
// single movie containing
// multiple qualities of the same video (Microsoft Smooth
// Streaming file)
throw new RuntimeException(
"The startTime has already been corrected by another track with SyncSample. Not Supported.");
}
startTime = correctTimeToNextSyncSample(track, startTime);
endTime = correctTimeToNextSyncSample(track, endTime);
timeCorrected = true;
}
}
for (Track track : tracks) {
long currentSample = 0;
double currentTime = 0;
long startSample = -1;
long endSample = -1;
for (int i = 0; i < track.getDecodingTimeEntries().size(); i++) {
TimeToSampleBox.Entry entry = track.getDecodingTimeEntries().get(i);
for (int j = 0; j < entry.getCount(); j++) {
// entry.getDelta() is the amount of time the current sample
// covers.
if (currentTime <= startTime) {
// current sample is still before the new starttime
startSample = currentSample;
}
if (currentTime <= endTime) {
// current sample is after the new start time and still
// before the new endtime
endSample = currentSample;
} else {
// current sample is after the end of the cropped video
break;
}
currentTime += (double) entry.getDelta()
/ (double) track.getTrackMetaData().getTimescale();
currentSample++;
}
}
movie.addTrack(new CroppedTrack(track, startSample, endSample));
}
IsoFile out = new DefaultMp4Builder().build(movie);
String filePath = "sdcard/test"+i+".mp4";
i++;
File f = new File(filePath);
FileOutputStream fos = new FileOutputStream(f);
BufferedOutputStream bos = new BufferedOutputStream(fos, 65535);
out.getBox(new IsoOutputStream(fos));
bos.close();
fos.flush();
fos.close();
}
private static double correctTimeToNextSyncSample(Track track,
double cutHere) {
double[] timeOfSyncSamples = new double[track.getSyncSamples().length];
long currentSample = 0;
double currentTime = 0;
for (int i = 0; i < track.getDecodingTimeEntries().size(); i++) {
TimeToSampleBox.Entry entry = track.getDecodingTimeEntries().get(i);
for (int j = 0; j < entry.getCount(); j++) {
if (Arrays.binarySearch(track.getSyncSamples(),
currentSample + 1) >= 0) {
// samples always start with 1 but we start with zero
// therefore +1
timeOfSyncSamples[Arrays.binarySearch(
track.getSyncSamples(), currentSample + 1)] = currentTime;
}
currentTime += (double) entry.getDelta()
/ (double) track.getTrackMetaData().getTimescale();
currentSample++;
}
}
for (double timeOfSyncSample : timeOfSyncSamples) {
if (timeOfSyncSample > cutHere) {
return timeOfSyncSample;
}
}
return timeOfSyncSamples[timeOfSyncSamples.length - 1];
}
</track></track>Making video of 30 seconds and want to trim first 6 seconds. Working but in last(between 5 to 6 sec) it shows Cant play this video. Any help will be appreciated.
-
building ffmpeg 2.1.8 with MSVC2013 (configure produces errors)
29 juin 2017, par scaramI am trying to build ffmpeg 2.1.8 for a legacy project. I use windows 10, MSVC 2013, MSYS, YASM and this tutorial.
After
./configure --toolchain=msvc --enable-shared
I see the many errors in config.log, here the first three ones
- error : ’test’ declared as an array with a negative size
- fatal error C1189 : #error : "unsatisfied condition : defined GLIBC"
- fatal error C1083 : File (Include) cannot be opened : "newlib.h" : No such file or directory
here the more detailed information...
C:/Users/scaram/AppData/Local/Temp/ffconf.LgAWDJFi.o_preprocessed.c:8859:27: error: 'test' declared as an array with a negative size
ffconf.LgAWDJFi.o_converted.c
C:/Users/scaram/AppData/Local/Temp/ffconf.RncapARb.c(1) : error C2118: Negativer Index
check_cpp_condition features.h defined __UCLIBC__
check_cpp
BEGIN /tmp/ffconf.RncapARb.c
1 #include
2 #if !(defined __UCLIBC__)
3 #error "unsatisfied condition: defined __UCLIBC__"
4 #endif
END /tmp/ffconf.RncapARb.c
c99wrap cl -D_ISOC99_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -nologo -D_USE_MATH_DEFINES -D_CRT_SECURE_NO_WARNINGS -Dinline=__inline -FIstdlib.h -Dstrtoll=_strtoi64 -P -Fi /tmp/ffconf.LgAWDJFi.o /tmp/ffconf.RncapARb.c
ffconf.RncapARb.c
C:/Users/scaram/AppData/Local/Temp/ffconf.RncapARb.c(3) : fatal error C1189: #error : "unsatisfied condition: defined __UCLIBC__"
check_cpp_condition features.h defined __GLIBC__
check_cpp
BEGIN /tmp/ffconf.RncapARb.c
1 #include
2 #if !(defined __GLIBC__)
3 #error "unsatisfied condition: defined __GLIBC__"
4 #endif
END /tmp/ffconf.RncapARb.c
c99wrap cl -D_ISOC99_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -nologo -D_USE_MATH_DEFINES -D_CRT_SECURE_NO_WARNINGS -Dinline=__inline -FIstdlib.h -Dstrtoll=_strtoi64 -P -Fi /tmp/ffconf.LgAWDJFi.o /tmp/ffconf.RncapARb.c
ffconf.RncapARb.c
C:/Users/scaram/AppData/Local/Temp/ffconf.RncapARb.c(3) : fatal error C1189: #error : "unsatisfied condition: defined __GLIBC__"
check_cpp_condition newlib.h defined _NEWLIB_VERSION
check_cpp
BEGIN /tmp/ffconf.RncapARb.c
1 #include
2 #if !(defined _NEWLIB_VERSION)
3 #error "unsatisfied condition: defined _NEWLIB_VERSION"
4 #endif
END /tmp/ffconf.RncapARb.c
c99wrap cl -D_ISOC99_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -nologo -D_USE_MATH_DEFINES -D_CRT_SECURE_NO_WARNINGS -Dinline=__inline -FIstdlib.h -Dstrtoll=_strtoi64 -P -Fi /tmp/ffconf.LgAWDJFi.o /tmp/ffconf.RncapARb.c
ffconf.RncapARb.c
C:/Users/scaram/AppData/Local/Temp/ffconf.RncapARb.c(1) : fatal error C1083: File (Include) cannot be opened: "newlib.h": No such file or directory
check_header _mingw.h
check_cpp
BEGIN /tmp/ffconf.RncapARb.c
1 #include <_mingw.h>
2 int x;
END /tmp/ffconf.RncapARb.cWhat can I do to make it work ?