
Recherche avancée
Autres articles (40)
-
ANNEXE : Les extensions, plugins SPIP des canaux
11 février 2010, parUn plugin est un ajout fonctionnel au noyau principal de SPIP. MediaSPIP consiste en un choix délibéré de plugins existant ou pas auparavant dans la communauté SPIP, qui ont pour certains nécessité soit leur création de A à Z, soit des ajouts de fonctionnalités.
Les extensions que MediaSPIP nécessite pour fonctionner
Depuis la version 2.1.0, SPIP permet d’ajouter des plugins dans le répertoire extensions/.
Les "extensions" ne sont ni plus ni moins que des plugins dont la particularité est qu’ils se (...) -
Changer son thème graphique
22 février 2011, parLe thème graphique ne touche pas à la disposition à proprement dite des éléments dans la page. Il ne fait que modifier l’apparence des éléments.
Le placement peut être modifié effectivement, mais cette modification n’est que visuelle et non pas au niveau de la représentation sémantique de la page.
Modifier le thème graphique utilisé
Pour modifier le thème graphique utilisé, il est nécessaire que le plugin zen-garden soit activé sur le site.
Il suffit ensuite de se rendre dans l’espace de configuration du (...) -
Contribute to documentation
13 avril 2011Documentation is vital to the development of improved technical capabilities.
MediaSPIP welcomes documentation by users as well as developers - including : critique of existing features and functions articles contributed by developers, administrators, content producers and editors screenshots to illustrate the above translations of existing documentation into other languages
To contribute, register to the project users’ mailing (...)
Sur d’autres sites (5030)
-
X264 : How to compile x264 with swscale support ?
23 avril 2014, par user1884325Objective
I am trying to build :
-
an x264 static library (.lib) with swscale support. I would like to use this library in a Visual Studio project where 24-bit RGB bitmap images are :
- Converted from RGB to YUV2
- The converted image is sent to the x264 encoder
- and the output of the encoder is streamed to a remote IP-endpoint via UDP.
-
an x264 executable (.exe) with swscale support. I would like to use the executable for the same purpose as described above. In another Visual Studio project, I will start the x264.exe up as a separate process and pipe bitmap data to the x264 process via its stdin and read out the encoded data from the process’s stdout.
Problem
I am having some trouble figuring out how to compile with swscale support. I need swscale support for both the executable and the library.
Status
So far I have downloaded the latest x264 source from the x264 website.
I have installed MINGW on my machine and when I run ’configure’ and ’make’ I get the x264 static library - but without swscale support.
I haven’t been able to find a detailed step-by-step guide on how to include swscale in the x264 library. The closest I’ve come to a description is this discussion :
http://forum.doom9.org/showthread.php?t=165350
So I downloaded libpack from :
http://komisar.gin.by/mingw/index.html
and extracted it to my harddrive :
Then I executed ’make’ and ’configure’ (again) in my x264 directory :
./configure --extra-cflags="-I/m/somePath/libpack/libpack/libpack/include" --extra-ldflags="-L/m/somePath/libpack/libpack/libpack/lib"
I have the following in the lib and include directory :
When I execute the above ’configure’ I get :
platform: X86
system: WINDOWS
cli: yes
libx264: internal
shared: no
static: no
asm: yes
interlaced: yes
avs: avisynth
lavf: no
ffms: no
mp4: lsmash
gpl: yes
thread: win32
opencl: yes
filters: crop select_every
debug: no
gprof: no
strip: no
PIC: no
bit depth: 8
chroma format: all
You can run 'make' or 'make fprofiled' now.
bash.exe"-3.1$When I execute ’make’ I end up with this error :
gcc.exe: error: unrecognized command line option '-fomit-frame-poin'
gcc.exe: fatal error: no input files
compilation terminated.
make: *** [.depend] Error 1
bash.exe"-3.1$Question
What am I doing wrong ?? -
-
Automatically detect box/coordinates of burned-in subtitles in a video source
8 mars 2021, par AndroidXIn reality I'd like to detect the coordinates of the "biggest" (both in height and width) burned-in subtitle of a given video source. But in order to do this I first need to detect the box coordinates of every distinct subtitle in the sample video, and compare them to find the biggest one. I didn't know where to start about this, so the closest thing I found (sort of) was ffmpeg's
bbox
video filter which according to the documentation computes"the bounding box for the non-black pixels in the input frame luminance plane"
, based on a given luminance value :

ffmpeg -i input.mkv -vf bbox=min_val=130 -f null -



This gives me a line with coordinates for each input frame in the video, ex. :


[Parsed_bbox_0 @ 0ab734c0] n:123 pts:62976 pts_time:4.1 x1:173 x2:1106 y1:74 y2:694 w:934 h:621 crop=934:621:173:74 drawbox=173:74:934:621



The idea was to make a script and loop through the filter's output, detect the "biggest" box by comparing them all, and output its coordinates and frame number as representative of the longest subtitle.


The
bbox
filter though can't properly detect the subtitle box even in a relatively dark video with white hardsubs. By trial and error and only for a particular video sample which I used to run my tests, the "best" result for detecting the box of any subtitle was to use amin_val
of 130 (supposedly the meaningful values ofmin_val
are in the range of 0-255, although the docs don't say anything). Using thedrawbox
filter withffplay
to test the coordinates reported for a particular frame, I can see that it correctly detects only the bottom/left/right boundary of the subtitle, presumably because the outline of the globe in the image below is equally bright :



Raising
min_val
to 230 slightly breaks the previously correct boundaries at the bottom/left/right side :



And raising it to 240 gives me a weird result :




However even if I was able to achieve a perfect outcome with the
bbox
filter, this technique wouldn't be bulletproof for obvious reasons (themin_val
should be arbitrarily chosen, the burned-in subtitles can be of different color, the image behind the subtitles can be equally or even more bright depending the video source, etc.).

So if possible I would like to know :


- 

- Is there a filter or another technique I can use with ffmpeg to do what I want
- Is there perhaps another CLI tool or programming library to achieve this
- Any hint that could help (perhaps I'm looking at the problem the wrong way)








-
Handling ffmpeg library interface change when upgrading ffmpeg
5 septembre 2016, par AntonioWe are currently trying to upgrade the ffmpeg version that our program uses. The jump is big because what we have used so far is ffmpeg 0.8, and latest version is 1.2.
In these tests I am using the (let me say) amazing packages I find here.
As first thing, I tried to download and build against ffmpeg 1.2, and of course I got a lot of warnings and errors, about function and variables deprecated or not existing any more.
To smooth the transition, I tried then to build against ffmpeg 1.0, the closest higher version with respect to 0.8. I got a list of warnings and errors that I list here below.
My question is the following : Does it exist any guide to help in these transition, to convert old ffmpeg paradigms/functions calls in the new version ? Since we are speaking about a lot of code that I did not write and that I would like not to analyse line by line, I would be very happy if it would be possibly to do a one-to-one conversion of old functions calls to new functions calls, same for variables.
Here is the list of warnings and errors (I have cleaned it so there is only one entry per error/warning)
warning: 'AVStream* av_new_stream(AVFormatContext*, int)' is deprecated (declared at /ffmpeg/include/libavformat/avformat.h:1646) [-Wdeprecated-declarations]
warning: 'int avcodec_open(AVCodecContext*, AVCodec*)' is deprecated (declared at /ffmpeg/include/libavcodec/avcodec.h:3569) [-Wdeprecated-declarations]
error: 'avcodec_init' was not declared in this scope
warning: 'int avcodec_encode_video(AVCodecContext*, uint8_t*, int, const AVFrame*)' is deprecated (declared at /ffmpeg/include/libavcodec/avcodec.h:4272) [-Wdeprecated-declarations]
warning: 'AVCodecContext* avcodec_alloc_context()' is deprecated (declared at /ffmpeg/include/libavcodec/avcodec.h:3423) [-Wdeprecated-declarations]
warning: 'int avcodec_decode_audio3(AVCodecContext*, int16_t*, int*, AVPacket*)' is deprecated (declared at /ffmpeg/include/libavcodec/avcodec.h:3852) [-Wdeprecated-declarations]
warning: 'void av_close_input_file(AVFormatContext*)' is deprecated (declared at /ffmpeg/include/libavformat/avformat.h:1622) [-Wdeprecated-declarations]
error: 'av_open_input_file' was not declared in this scope
warning: 'int av_find_stream_info(AVFormatContext*)' is deprecated (declared at /ffmpeg/include/libavformat/avformat.h:1446) [-Wdeprecated-declarations]
error: 'av_set_parameters' was not declared in this scope
error: 'AVFormatContext' has no member named 'file_size'
error: 'URL_WRONLY' was not declared in this scope
error: 'url_fopen' was not declared in this scope
error: 'url_fclose' was not declared in this scope
error: 'SAMPLE_FMT_U8' was not declared in this scope
error: 'SAMPLE_FMT_S16' was not declared in this scope
error: 'SAMPLE_FMT_S32' was not declared in this scope
error: 'SAMPLE_FMT_FLT' was not declared in this scope
error: 'FF_I_TYPE' was not declared in this scopeEdit :
I am taking a look at these...
http://ffmpeg.org/doxygen/0.8/deprecated.html
http://ffmpeg.org/doxygen/0.9/deprecated.html
http://ffmpeg.org/doxygen/1.0/deprecated.html
http://ffmpeg.org/doxygen/1.1/deprecated.html
http://ffmpeg.org/doxygen/1.2/deprecated.html
http://ffmpeg.org/doxygen/trunk/deprecated.html