
Recherche avancée
Autres articles (97)
-
Submit bugs and patches
13 avril 2011Unfortunately a software is never perfect.
If you think you have found a bug, report it using our ticket system. Please to help us to fix it by providing the following information : the browser you are using, including the exact version as precise an explanation as possible of the problem if possible, the steps taken resulting in the problem a link to the site / page in question
If you think you have solved the bug, fill in a ticket and attach to it a corrective patch.
You may also (...) -
Les sons
15 mai 2013, par -
Récupération d’informations sur le site maître à l’installation d’une instance
26 novembre 2010, parUtilité
Sur le site principal, une instance de mutualisation est définie par plusieurs choses : Les données dans la table spip_mutus ; Son logo ; Son auteur principal (id_admin dans la table spip_mutus correspondant à un id_auteur de la table spip_auteurs)qui sera le seul à pouvoir créer définitivement l’instance de mutualisation ;
Il peut donc être tout à fait judicieux de vouloir récupérer certaines de ces informations afin de compléter l’installation d’une instance pour, par exemple : récupérer le (...)
Sur d’autres sites (7423)
-
FFMPEG get_buffer2 multi-thread random crash
4 novembre 2015, par arnaudI’m doing a multi-thread FFMPEG video player. Basically it decodes and display 16 MP4 video files ( using h264 codec ) at the same time, using my own threads / jobs subsystem.
For future extension I want to provide my own memory buffer for AVFrame decoding. To do this, I simply used get_buffer2 hook method. My get_buffer2 handles currently only use av_malloc & av_free (to validate everything is working ). Here is my handler :void our_buffer_default_free(void *opaque, uint8_t *data)
{
av_free(data);
}
int our_get_buffer(struct AVCodecContext *c, AVFrame *pic, int flags)
{
assert(c->codec_type == AVMEDIA_TYPE_VIDEO);
pic->linesize[0] = pic->width;
pic->linesize[1] = pic->width/2;
pic->linesize[2] = pic->width/2;
void* pYBuffer = av_malloc(pic->linesize[0] * pic->height);
void* pUBuffer = av_malloc(pic->linesize[1] * pic->height / 2);
void* pVBuffer = av_malloc(pic->linesize[2] * pic->height / 2);
assert(pYBuffer);
assert(pUBuffer);
assert(pVBuffer);
pic->data[0] = (uint8_t*)pYBuffer;
pic->data[1] = (uint8_t*)pUBuffer;
pic->data[2] = (uint8_t*)pVBuffer;
pic->buf[0] = av_buffer_create(pic->data[0], pic->linesize[0] * pic->height, our_buffer_default_free, NULL, 0);
pic->buf[1] = av_buffer_create(pic->data[1], pic->linesize[1] * pic->height / 2, our_buffer_default_free, NULL, 0);
pic->buf[2] = av_buffer_create(pic->data[2], pic->linesize[2] * pic->height / 2, our_buffer_default_free, NULL, 0);
return 0;
}- If I don’t hook get_buffer2 (keep ffmpeg use its own AVFrame memory allocation) and activate my multithread job system, everything is running ok ( no crash)
- If I hook get_buffer2 with the code provided and multi-thread activated, I get some random crashs ( after few seconds or minutes, random )
- If I hook get_buffer2 without multi-thread activated, everything is running ok (no crash)
So it seems the way I hook "get_buffer2" is not thread safe, but I just don’t see why. ( I guess av_malloc & av_free are threadsafe on windows platform)
Any idea ?
PS : I don’t have many details on the crash because I’m using a pre-compiled FFMPEG. It often crash in avcodec57.dll. I’m using windows 64bits system, my app & FMMPEG binaries are both 32bits. Details about FFMPEG version used :
Zeranoe's FFmpeg Builds Home Page: /ffmpeg.zeranoe.com/builds/>
FFmpeg version: 20151103-git-6df2c94
libavutil 54. 30.100 / 54. 30.100
libavcodec 56. 57.100 / 56. 57.100
libavformat 56. 40.101 / 56. 40.101
libavdevice 56. 4.100 / 56. 4.100
libavfilter 5. 32.100 / 5. 32.100
libswscale 3. 1.101 / 3. 1.101
libswresample 1. 2.101 / 1. 2.101
libpostproc 53. 3.100 / 53. 3.100 -
I can't install ffmpegs (dependencies) - error with doxygen [mac 10.12.6 Sierra]
12 septembre 2022, par Lo-Fi JunkyIt installed about 70% of the dependencies it needed to get ffmpegs going, but it got stuck at installing 'doxygen'.


This is the error I got :


==> Installing dependencies for ffmpeg: doxygen, little-cms2, openjpeg, opus, rust, libgit2, cargo-c, rav1e, flac, libsndfile, libsamplerate, rubberband, sdl2, swig, llvm, snappy, speex, srt, leptonica, libb2, lz4, libarchive, tesseract, theora, x264, x265, xvid, docbook, boost, source-highlight, asciidoc, docbook-xsl, libyaml, ruby, asciidoctor, gnu-getopt, xmlto, libsodium, zeromq and zimg
==> Installing ffmpeg dependency: doxygen
==> cmake ..
==> make
Last 15 lines from /Users/macbook/Library/Logs/Homebrew/doxygen/02.make:
In file included from /tmp/doxygen-20220723-61533-5m5mdv/doxygen-1.9.4/src/outputlist.h:25:
/tmp/doxygen-20220723-61533-5m5mdv/doxygen-1.9.4/src/searchindex.h:29:10: fatal error: 'variant' file not found
#include <variant>
 ^~~~~~~~~
1 error generated.
make[2]: *** [src/CMakeFiles/doxymain.dir/__/generated_src/code.cpp.o] Error 1
make[1]: *** [src/CMakeFiles/doxymain.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
[ 46%] Linking CXX static library ../lib/libvhdlparser.a
cd /tmp/doxygen-20220723-61533-5m5mdv/doxygen-1.9.4/build/vhdlparser && /usr/local/Cellar/cmake/3.23.2/bin/cmake -P CMakeFiles/vhdlparser.dir/cmake_clean_target.cmake
cd /tmp/doxygen-20220723-61533-5m5mdv/doxygen-1.9.4/build/vhdlparser && /usr/local/Cellar/cmake/3.23.2/bin/cmake -E cmake_link_script CMakeFiles/vhdlparser.dir/link.txt --verbose=1
/usr/bin/ar qc ../lib/libvhdlparser.a CMakeFiles/vhdlparser.dir/CharStream.cc.o CMakeFiles/vhdlparser.dir/ParseException.cc.o CMakeFiles/vhdlparser.dir/Token.cc.o CMakeFiles/vhdlparser.dir/TokenMgrError.cc.o CMakeFiles/vhdlparser.dir/__/generated_src/VhdlParser_adj.cc.o CMakeFiles/vhdlparser.dir/VhdlParserTokenManager.cc.o
/usr/bin/ranlib ../lib/libvhdlparser.a
[ 46%] Built target vhdlparser
make: *** [all] Error 2

Do not report this issue to Homebrew/brew or Homebrew/core!


Error: You are using macOS 10.12.
We (and Apple) do not provide support for this old version.
You will encounter build failures with some formulae.
Please create pull requests instead of asking for help on Homebrew's GitHub,
Twitter or any other official channels. You are responsible for resolving
any issues you experience while you are running this
old version.
</variant>


Can someone please help me am not sure what it is, that I am supposed to do.


-
php_ffmpeg some error and solutions
26 mars 2018, par sonam SharmaI have successfully installed
php_ffmpeg
in my new project with the help of a guy on stackoverflow.com.
I can do the basic jobs like extracting a frame out of a video
but when I try to convert the video to another format I get this error :Fatal error : Uncaught exception ’Alchemy\BinaryDriver\Exception\ExecutionFailureException’
with message ’ffprobe failed to execute command "C :\ffmpeg\bin\ffprobe.EXE"
"sample3.mp4" "-show_streams" "-print_format" "json"’ in
C :\wamp\www\raidpipe\vendor\php-ffmpeg\php-ffmpeg\src\FFMpeg\FFProbe.php on line 244Alchemy\BinaryDriver\Exception\ExecutionFailureException :
ffprobe failed to execute command "C :\ffmpeg\bin\ffprobe.EXE"
"sample3.mp4" "-show_streams" "-print_format" "json" in
C :\wamp\www\raidpipe\vendor\alchemy\binary-
driver\src\Alchemy\BinaryDriver\ProcessRunner.php on line 100FFMpeg\Exception\RuntimeException :
Unable to probe sample3.mp4 in
C :\wamp\www\raidpipe\vendor\php-ffmpeg\php-ffmpeg\src\FFMpeg\FFProbe.php on line 244I have used this code in my test page :
<?php
require 'vendor/autoload.php';
$ffmpeg = FFMpeg\FFMpeg::create();
$video = $ffmpeg->open('test/sample3.mp4');
$video
->filters()
->resize(new FFMpeg\Coordinate\Dimension(320, 240))
->synchronize();
$video
->frame(FFMpeg\Coordinate\TimeCode::fromSeconds(19))
->save('test/clip/frame123.jpg');
$video
->save(new FFMpeg\Format\Video\X264(), 'export-x264.mp4')
->save(new FFMpeg\Format\Video\WMV(), 'export-wmv.wmv')
->save(new FFMpeg\Format\Video\WebM(), 'export-webm.webm');
?>When I run this code it gives me the frame without any error
require 'vendor/autoload.php';
$ffmpeg = FFMpeg\FFMpeg::create();
$video = $ffmpeg->open('test/sample3.mp4');
$video
->frame(FFMpeg\Coordinate\TimeCode::fromSeconds(19))
->save('test/clip/frame123.jpg');Please suggest me a way to convert the video by using the
php_ffmpeg
i need the video to be converted to some basic formats which can be supported by all the browsers and also please let me know is it a good practice to use exc (execute) in php ??I got the above code from this link
https://github.com/PHP-FFMpeg/PHP-FFMpeg