
Recherche avancée
Autres articles (48)
-
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. -
Les autorisations surchargées par les plugins
27 avril 2010, parMediaspip core
autoriser_auteur_modifier() afin que les visiteurs soient capables de modifier leurs informations sur la page d’auteurs -
HTML5 audio and video support
13 avril 2011, parMediaSPIP uses HTML5 video and audio tags to play multimedia files, taking advantage of the latest W3C innovations supported by modern browsers.
The MediaSPIP player used has been created specifically for MediaSPIP and can be easily adapted to fit in with a specific theme.
For older browsers the Flowplayer flash fallback is used.
MediaSPIP allows for media playback on major mobile platforms with the above (...)
Sur d’autres sites (9583)
-
FFMPEG Flutter : attaching captions to a video issue
24 juillet 2024, par Aqib JavedI am working on an app where i first extract audio from a video, then transcribe it and then i wanna attach that transcribed captions or subtitles to the original video.


Everything is working smooth except the subtitles attaching part
if im running the FFMPEG command directly in terminal, it works fine but not in flutter


here is my code of attaching the subtitles to the video :


Future<void> attachCaptionsToVideo(DeepGramResponse deepGramResponse) async {
 var tempDir = await getTemporaryDirectory();

 final outputPath = "${tempDir.path}/outputWithCaptions.mp4";
 final String subtitlePath = deepGramResponse.captionsPath
 .replaceAll('\\', '\\\\')
 .replaceAll(' ', '\\ ');
 final String command =
 '-y -i ${deepGramResponse.videoPath} -vf subtitles=$subtitlePath $outputPath';
 await FFmpegKit.executeAsync(command, (session) async {
 final returnCode = await session.getReturnCode();
 final output = await session.getOutput();
 final error = await session.getFailStackTrace();

 log('FFmpeg command executed with return code: $returnCode');
 if (ReturnCode.isSuccess(returnCode)) {
 log('Captions attached successfully');
 deepGramResponse.copyWith(
 videoPath: outputPath,
 );
 Get.to(() => VideoPlayerScreen(videoPath: outputPath));
 } else {
 log('FFmpeg command failed');
 log('Error output: $output');
 log('Error details: $error');
 Fluttertoast.showToast(
 msg: 'Something went wrong, please try again later');
 }
 });
 }
</void>


here is the error im getting :




[AVFilterGraph @ 0x7b8a3f35f0] No option name near
'/data/user/0/com.example.blink/app_flutter/captions.srt'
[AVFilterGraph @ 0x7b8a3f35f0] Error parsing a filter description around :
[AVFilterGraph @ 0x7b8a3f35f0] Error parsing filterchain 'subtitles=/data/user/0/com.example.blink/app_flutter/captions.srt'
around :
Error reinitializing filters !
Failed to inject frame into filter network : Invalid argument
Error while processing the decoded data for stream #0:0
Conversion failed !




-
building c++ code into a shared library
11 avril 2016, par gauravI have some c++ code which i use as shared library in a java application.My c++ code uses some libraries like ffmpeg and boost. and ffmpeg libraries in turn depend on libx264. my first question is - can i build my c++ into a "fat" shared library which contains all the symbols from all libraries used so that on a new machine if i just copy the fat .so file everything works.
If thats not possible then can you help me fix my current build process. This is what i am doing currently -1)on a local VM(ubuntu 64) i compile ffmpeg code using -fPIC flag and install h264 and boost using apt-get commands.
2) on the same VM i compile my code using make file which looks like this-INCLUDES = -I/opt/ffmpeg/include -I/usr/lib/jvm/java-7-openjdk- amd64/include -I/usr/lib/jvm/java-7-openjdk-amd64/include/linux
LDFLAGS = -L/home/ubuntu/ffmpeg_shared
LIBRARIES = -lavformat -lavcodec -lswscale -lavutil -lpthread -lx264 -lboost_system -lboost_thread -lboost_chrono
CC = g++ -std=c++11 -fPIC
all:clean final
final:Api.o ImageSequence.o OverlayAnimation.o Utils.o ImageFrame.o
$(CC) -o final.so Api.o ImageSequence.o OverlayAnimation.o Utils.o ImageFrame.o $(LDFLAGS) $(LIBRARIES) -shared3) on a new machine where java app will run. i install h264 and boost using apt-get commands and copy ffmpeg’s compiled library files to /usr/local/lib.
4) copy the final.so file to this new machine. but when the java code tries to use the final.so file i see it tries to use wierdly named files. for example - it tries to find libavcodec.so.57 , libavformat.so.57 etc. to fix this i just created a copy of these files ie libavcodec.so copied to libavcodec.so.57.
5)But these ffmpeg libraries in turn uses a differently named lib264.so file. on my new machine the apt-get command for x264 installed a file named libx264.so.148 but one of ffmpeg libraries is searching for file libx264.so.142 even if i rename this libx264.so file i get new errors where ffmpeg libraries tries to call libx264’s methods which has these numbers attached.
6) at this time the only working option for me is to bring the c++ code on every new machine and build final.so file locally. this is something i want to avoid since i want to distribute the .so file along with jar file to my clients which they can easily use without having to build and install stuff.
-
FFMPEG combining 2 command to make multiple overlay [closed]
11 avril 2020, par Nano WibisonoI have two different commands and both work. but here I have a problem, how to combine these two commands into one output



the first command is to add a video overlay



ffmpeg -i final.mp4 -vf "movie=LOGO.mov, scale=100: -1 [inner]; [in][inner] overlay =10: 10 [out] " completed.mp4




the second command is to add a text overlay



ffmpeg -i final.mp4 -vf drawtext="fontfile=C\\:/Windows/Fonts/arial.ttf:fontsize=20: fontcolor=red:x=10:y=50:text='test tect'" completedtextGB.mp4




I was wondering is it possible to combine these into the 1 command ?



Thanks
Nano