Recherche avancée

Médias (0)

Mot : - Tags -/auteurs

Aucun média correspondant à vos critères n’est disponible sur le site.

Autres articles (41)

  • Participer à sa traduction

    10 avril 2011

    Vous pouvez nous aider à améliorer les locutions utilisées dans le logiciel ou à traduire celui-ci dans n’importe qu’elle nouvelle langue permettant sa diffusion à de nouvelles communautés linguistiques.
    Pour ce faire, on utilise l’interface de traduction de SPIP où l’ensemble des modules de langue de MediaSPIP sont à disposition. ll vous suffit de vous inscrire sur la liste de discussion des traducteurs pour demander plus d’informations.
    Actuellement MediaSPIP n’est disponible qu’en français et (...)

  • Les autorisations surchargées par les plugins

    27 avril 2010, par

    Mediaspip core
    autoriser_auteur_modifier() afin que les visiteurs soient capables de modifier leurs informations sur la page d’auteurs

  • Supporting all media types

    13 avril 2011, par

    Unlike most software and media-sharing platforms, MediaSPIP aims to manage as many different media types as possible. The following are just a few examples from an ever-expanding list of supported formats : images : png, gif, jpg, bmp and more audio : MP3, Ogg, Wav and more video : AVI, MP4, OGV, mpg, mov, wmv and more text, code and other data : OpenOffice, Microsoft Office (Word, PowerPoint, Excel), web (html, CSS), LaTeX, Google Earth and (...)

Sur d’autres sites (6794)

  • Linking problems using CMake

    5 décembre 2013, par Zoellick

    I'm writing an application containig 2 internal libraries and depends on more 2 external libraries (ffmpeg and opencv). I'm also using CMake to produce UNIX makefiles. And the problem is when i'm trying to build sources, it compiles but don't link with ffmpeg at all and the next output the linker gives :

    ../../Decoder/libDecoder.a(ConverterAVFrameToRGB.cpp.o): In function `FaceVideo::ConverterAVFrameToRGB::to_rgb_conversion(std::vector >&, int, int, int)':
    ConverterAVFrameToRGB.cpp:(.text+0x990): undefined reference to `av_frame_free'
    ../../Decoder/libDecoder.a(FfmpegDecoder.cpp.o): In function `FaceVideo::FfmpegDecoder::destroy()':
    FfmpegDecoder.cpp:(.text+0xa30): undefined reference to `av_frame_free'
    ../../Decoder/libDecoder.a(FfmpegDecoder.cpp.o): In function `FaceVideo::FfmpegDecoder::decode_next_chunk(int)':
    FfmpegDecoder.cpp:(.text+0xb6b): undefined reference to `av_frame_clone'
    FfmpegDecoder.cpp:(.text+0xc13): undefined reference to `av_frame_free'
    ../../Decoder/libDecoder.a(FfmpegEncoder.cpp.o): In function `FaceVideo::FfmpegEncoder::destroy()':
    FfmpegEncoder.cpp:(.text+0x132): undefined reference to `avcodec_free_frame'
    ../../Decoder/libDecoder.a(FfmpegEncoder.cpp.o): In function `FaceVideo::FfmpegEncoder::encode()':
    FfmpegEncoder.cpp:(.text+0x4c4): undefined reference to `avcodec_encode_video2'
    FfmpegEncoder.cpp:(.text+0x592): undefined reference to `avcodec_encode_video2'
    ../../Decoder/libDecoder.a(FrameSaver.cpp.o): In function `FaceVideo::FrameSaver::saver(std::vector >&, int, int, int)':
    FrameSaver.cpp:(.text+0x869): undefined reference to `av_frame_free'
    collect2: ld returned 1 exit status

    That's excatly what i don't want to see.

    There are three Cmake files : two for internal libraries (use

    add_library(Decoder ${SOURCES_DECODER})
                and
    add_library(Detector ${SOURCES_DETECTOR})

    in them) and one for main executable (use

    add_executable(Tool ${SOURCES_TOOL})
                and
    target_link_libraries (Tool Decoder avutil avcodec swscale avformat Detector ${OpenCV_LIBS})

    in it).

    As far as i understand from CMake manuals and examples, this should make linker link this libraries together, but no effect.

    I've been trying lot of things such as :
    1) Adding link_directories() with path to libraries (/usr/lib/x86_64-linux-gnu/ for me) wherever it's possile, nothing changed.
    2) Linking every library separately, i mean i tried do something like this in my internal libraries CMake files : target_link_libraries (Decoder avutil avcodec swscale avformat). And then link library together into my Tool CMake file : target_link_libraries (Tool Decoder Detector).
    3) Editing output makefiles.
    4) Compiling simple one-file application just to test whether i can do it or not. I can. g++ -lavcodec -o out mysource.cpp works perfectly.
    5) Compling ffmpeg manually and installing it.

    The fact is i realy don't know what should i do. I have no idea. And i would very appreciate your every answer.

    Output when CMAKE_VERBOSE_MAKEFILE is set

     !
    /usr/bin/c++ -march=x86-64 -Wall -fPIC -pthread -std=c++0x -D__STDC_CONSTANT_MACROS -march=x86-64 -fPIC CMakeFiles/FaceDetectorTool.dir/home/anton/Programming/facevideo/branches/Stream_Prototype/src/tools/FaceDetectorTool/facedetector.cpp.o -o FaceDetectorTool -rdynamic ../../Detector/libDetector.a ../../Decoder/libDecoder.a -lavutil -lavcodec -lswscale -lavformat /usr/local/lib/libopencv_videostab.so.2.4.7 /usr/local/lib/libopencv_video.so.2.4.7 /usr/local/lib/libopencv_ts.a /usr/local/lib/libopencv_superres.so.2.4.7 /usr/local/lib/libopencv_stitching.so.2.4.7 /usr/local/lib/libopencv_photo.so.2.4.7 /usr/local/lib/libopencv_ocl.so.2.4.7 /usr/local/lib/libopencv_objdetect.so.2.4.7 /usr/local/lib/libopencv_nonfree.so.2.4.7 /usr/local/lib/libopencv_ml.so.2.4.7 /usr/local/lib/libopencv_legacy.so.2.4.7 /usr/local/lib/libopencv_imgproc.so.2.4.7 /usr/local/lib/libopencv_highgui.so.2.4.7 /usr/local/lib/libopencv_gpu.so.2.4.7 /usr/local/lib/libopencv_flann.so.2.4.7 /usr/local/lib/libopencv_features2d.so.2.4.7 /usr/local/lib/libopencv_core.so.2.4.7 /usr/local/lib/libopencv_contrib.so.2.4.7 /usr/local/lib/libopencv_calib3d.so.2.4.7 -ldl -lm -lpthread -lrt /usr/local/lib/libopencv_nonfree.so.2.4.7 /usr/local/lib/libopencv_ocl.so.2.4.7 /usr/local/lib/libopencv_gpu.so.2.4.7 /usr/local/lib/libopencv_photo.so.2.4.7 /usr/local/lib/libopencv_objdetect.so.2.4.7 /usr/local/lib/libopencv_legacy.so.2.4.7 /usr/local/lib/libopencv_video.so.2.4.7 /usr/local/lib/libopencv_ml.so.2.4.7 /usr/local/lib/libopencv_calib3d.so.2.4.7 /usr/local/lib/libopencv_features2d.so.2.4.7 /usr/local/lib/libopencv_highgui.so.2.4.7 /usr/local/lib/libopencv_imgproc.so.2.4.7 /usr/local/lib/libopencv_flann.so.2.4.7 /usr/local/lib/libopencv_core.so.2.4.7 -Wl,-rpath,/usr/local/lib

  • Ffmpeg linking problems using CMake

    7 décembre 2013, par Zoellick

    I'm writing an application containig 2 internal libraries and depends on more 2 external libraries (ffmpeg and opencv). I'm also using CMake to produce UNIX makefiles. And the problem is when i'm trying to build sources, it compiles but don't link with ffmpeg at all and the next output the linker gives :

    ../../Decoder/libDecoder.a(ConverterAVFrameToRGB.cpp.o): In function `FaceVideo::ConverterAVFrameToRGB::to_rgb_conversion(std::vector >&, int, int, int)':
    ConverterAVFrameToRGB.cpp:(.text+0x990): undefined reference to `av_frame_free'
    ../../Decoder/libDecoder.a(FfmpegDecoder.cpp.o): In function `FaceVideo::FfmpegDecoder::destroy()':
    FfmpegDecoder.cpp:(.text+0xa30): undefined reference to `av_frame_free'
    ../../Decoder/libDecoder.a(FfmpegDecoder.cpp.o): In function `FaceVideo::FfmpegDecoder::decode_next_chunk(int)':
    FfmpegDecoder.cpp:(.text+0xb6b): undefined reference to `av_frame_clone'
    FfmpegDecoder.cpp:(.text+0xc13): undefined reference to `av_frame_free'
    ../../Decoder/libDecoder.a(FfmpegEncoder.cpp.o): In function `FaceVideo::FfmpegEncoder::destroy()':
    FfmpegEncoder.cpp:(.text+0x132): undefined reference to `avcodec_free_frame'
    ../../Decoder/libDecoder.a(FfmpegEncoder.cpp.o): In function `FaceVideo::FfmpegEncoder::encode()':
    FfmpegEncoder.cpp:(.text+0x4c4): undefined reference to `avcodec_encode_video2'
    FfmpegEncoder.cpp:(.text+0x592): undefined reference to `avcodec_encode_video2'
    ../../Decoder/libDecoder.a(FrameSaver.cpp.o): In function `FaceVideo::FrameSaver::saver(std::vector >&, int, int, int)':
    FrameSaver.cpp:(.text+0x869): undefined reference to `av_frame_free'
    collect2: ld returned 1 exit status

    That's excatly what i don't want to see.

    There are three Cmake files : two for internal libraries (use

    add_library(Decoder ${SOURCES_DECODER})
                and
    add_library(Detector ${SOURCES_DETECTOR})

    in them) and one for main executable (use

    add_executable(Tool ${SOURCES_TOOL})
                and
    target_link_libraries (Tool Decoder avutil avcodec swscale avformat Detector ${OpenCV_LIBS})

    in it).

    As far as i understand from CMake manuals and examples, this should make linker link this libraries together, but no effect.

    I've been trying lot of things such as :
    1) Adding link_directories() with path to libraries (/usr/lib/x86_64-linux-gnu/ for me) wherever it's possile, nothing changed.
    2) Linking every library separately, i mean i tried do something like this in my internal libraries CMake files : target_link_libraries (Decoder avutil avcodec swscale avformat). And then link library together into my Tool CMake file : target_link_libraries (Tool Decoder Detector).
    3) Editing output makefiles.
    4) Compiling simple one-file application just to test whether i can do it or not. I can. g++ -lavcodec -o out mysource.cpp works perfectly.
    5) Compling ffmpeg manually and installing it.

    The fact is i realy don't know what should i do. I have no idea. And i would very appreciate your every answer.

    UPD1 :
    Output when CMAKE_VERBOSE_MAKEFILE is set

     !
    /usr/bin/c++ -march=x86-64 -Wall -fPIC -pthread -std=c++0x -D__STDC_CONSTANT_MACROS -march=x86-64 -fPIC CMakeFiles/FaceDetectorTool.dir/home/anton/Programming/facevideo/branches/Stream_Prototype/src/tools/FaceDetectorTool/facedetector.cpp.o -o FaceDetectorTool -rdynamic ../../Detector/libDetector.a ../../Decoder/libDecoder.a -lavutil -lavcodec -lswscale -lavformat /usr/local/lib/libopencv_videostab.so.2.4.7 /usr/local/lib/libopencv_video.so.2.4.7 /usr/local/lib/libopencv_ts.a /usr/local/lib/libopencv_superres.so.2.4.7 /usr/local/lib/libopencv_stitching.so.2.4.7 /usr/local/lib/libopencv_photo.so.2.4.7 /usr/local/lib/libopencv_ocl.so.2.4.7 /usr/local/lib/libopencv_objdetect.so.2.4.7 /usr/local/lib/libopencv_nonfree.so.2.4.7 /usr/local/lib/libopencv_ml.so.2.4.7 /usr/local/lib/libopencv_legacy.so.2.4.7 /usr/local/lib/libopencv_imgproc.so.2.4.7 /usr/local/lib/libopencv_highgui.so.2.4.7 /usr/local/lib/libopencv_gpu.so.2.4.7 /usr/local/lib/libopencv_flann.so.2.4.7 /usr/local/lib/libopencv_features2d.so.2.4.7 /usr/local/lib/libopencv_core.so.2.4.7 /usr/local/lib/libopencv_contrib.so.2.4.7 /usr/local/lib/libopencv_calib3d.so.2.4.7 -ldl -lm -lpthread -lrt /usr/local/lib/libopencv_nonfree.so.2.4.7 /usr/local/lib/libopencv_ocl.so.2.4.7 /usr/local/lib/libopencv_gpu.so.2.4.7 /usr/local/lib/libopencv_photo.so.2.4.7 /usr/local/lib/libopencv_objdetect.so.2.4.7 /usr/local/lib/libopencv_legacy.so.2.4.7 /usr/local/lib/libopencv_video.so.2.4.7 /usr/local/lib/libopencv_ml.so.2.4.7 /usr/local/lib/libopencv_calib3d.so.2.4.7 /usr/local/lib/libopencv_features2d.so.2.4.7 /usr/local/lib/libopencv_highgui.so.2.4.7 /usr/local/lib/libopencv_imgproc.so.2.4.7 /usr/local/lib/libopencv_flann.so.2.4.7 /usr/local/lib/libopencv_core.so.2.4.7 -Wl,-rpath,/usr/local/lib

    UPD2
    Cmake example looks like that.

    cmake_minimum_required (VERSION 2.8)
    project (Decoder)
    include(../CMakeInit.cmake)
    include_directories(${FFMPEG_INCLUDE_DIR})
    include_directories(${Stream_Facevideo_SOURCE_DIR}/../src/kernel/decoder/)
    include_directories(${Stream_Facevideo_SOURCE_DIR}/../src/kernel/stuff/)
    set(SOURCES_VIDEODECODER
               *sources*
     )

    if(WINDOWS)
       set(SOURCES_VIDEODECODER    ${SOURCES_VIDEODECODER}
               *headers*                          
       )
    endif(WINDOWS)

    set (SOURCES_DECODER
       ${SOURCES_VIDEODECODER}
    )

    add_library(Decoder ${SOURCES_DECODER})
    link_directories("/usr/lib/x86_64-linux-gnu/")
    target_link_libraries(Decoder swscale avformat avcodec avutil)
  • "Undefined Reference" when compiling FFMPEG with librtmp on Android

    4 février 2014, par elBradford

    I have searched, and while Building FFMPEG with librtmp for android answered part of my question, I ran into other issues further along in the compilation process.

    First, I am trying to use the script in this github repo, changing the flags to include

     --enable-librtmp \
     --extra-cflags=-I/home/bradford/Development/FFMPEG/rtmp/rtmpdump/librtmp/ \
     --extra-ldflags=-L/home/bradford/Development/FFMPEG/rtmp/rtmpdump/librtmp"

    I build librtmp with polarSSL following S74ck3r's instructions on his github repo and stream-recorder thread. That appears to work correctly, and I have a librtmp.so, librtmp.a and rtmp.h

    When I try to compile ffmpeg with librtmp, I get the error

    ERROR: librtmp not found

    This SO question helped, and I modified ffmpeg's config file so that it wouldn't look at pkg-config for librtmp (even though pkg-config was aware of librtmp...) :

    #enabled librtmp    && require_pkg_config librtmp librtmp/rtmp.h RTMP_Socket

    When I build now, it starts successfully, and I get the hopeful line :

    librtmp enabled           yes

    And later on I see more good news :

    ...
    Enabled protocols:
    applehttp       http            mmsh
    cache           httpproxy       mmst
    concat          librtmp         mmsu
    crypto          librtmpe        pipe
    fd          librtmps        rtp
    file            librtmpt        tcp
    gopher          librtmpte       udp
    hls         md5
    ...

    but finally, after compiling everything and during the installation phase, I get these types of errors :

    INSTALL   libavutil/libavutil.pc
    /tmp/FFMPEG/bin/../lib/gcc/arm-linux-androideabi/4.6/../../../../arm-linux-androideabi/bin/ld: libavformat/librtmp.o: in function rtmp_get_file_handle:libavformat/librtmp.c:190: error: undefined reference to 'RTMP_Socket'
    /tmp/FFMPEG/bin/../lib/gcc/arm-linux-androideabi/4.6/../../../../arm-linux-androideabi/bin/ld: libavformat/librtmp.o: in function rtmp_read_seek:libavformat/librtmp.c:180: error: undefined reference to 'RTMP_SendSeek'
    /tmp/FFMPEG/bin/../lib/gcc/arm-linux-androideabi/4.6/../../../../arm-linux-androideabi/bin/ld: libavformat/librtmp.o: in function rtmp_read_pause:libavformat/librtmp.c:161: error: undefined reference to 'RTMP_Pause'
    /tmp/FFMPEG/bin/../lib/gcc/arm-linux-androideabi/4.6/../../../../arm-linux-androideabi/bin/ld: libavformat/librtmp.o: in function rtmp_close:libavformat/librtmp.c:64: error: undefined reference to 'RTMP_Close'
    /tmp/FFMPEG/bin/../lib/gcc/arm-linux-androideabi/4.6/../../../../arm-linux-androideabi/bin/ld: libavformat/librtmp.o: in function rtmp_write:libavformat/librtmp.c:145: error: undefined reference to 'RTMP_Write'
    /tmp/FFMPEG/bin/../lib/gcc/arm-linux-androideabi/4.6/../../../../arm-linux-androideabi/bin/ld: libavformat/librtmp.o: in function rtmp_read:libavformat/librtmp.c:153: error: undefined reference to 'RTMP_Read'
    /tmp/FFMPEG/bin/../lib/gcc/arm-linux-androideabi/4.6/../../../../arm-linux-androideabi/bin/ld: libavformat/librtmp.o: in function rtmp_open:libavformat/librtmp.c:96: error: undefined reference to 'RTMP_LogSetLevel'
    /tmp/FFMPEG/bin/../lib/gcc/arm-linux-androideabi/4.6/../../../../arm-linux-androideabi/bin/ld: libavformat/librtmp.o: in function rtmp_open:libavformat/librtmp.c:97: error: undefined reference to 'RTMP_LogSetCallback'
    /tmp/FFMPEG/bin/../lib/gcc/arm-linux-androideabi/4.6/../../../../arm-linux-androideabi/bin/ld: libavformat/librtmp.o: in function rtmp_open:libavformat/librtmp.c:118: error: undefined reference to 'RTMP_Init'
    /tmp/FFMPEG/bin/../lib/gcc/arm-linux-androideabi/4.6/../../../../arm-linux-androideabi/bin/ld: libavformat/librtmp.o: in function rtmp_open:libavformat/librtmp.c:119: error: undefined reference to 'RTMP_SetupURL'
    /tmp/FFMPEG/bin/../lib/gcc/arm-linux-androideabi/4.6/../../../../arm-linux-androideabi/bin/ld: libavformat/librtmp.o: in function rtmp_open:libavformat/librtmp.c:127: error: undefined reference to 'RTMP_Connect'
    /tmp/FFMPEG/bin/../lib/gcc/arm-linux-androideabi/4.6/../../../../arm-linux-androideabi/bin/ld: libavformat/librtmp.o: in function rtmp_open:libavformat/librtmp.c:127: error: undefined reference to 'RTMP_ConnectStream'
    /tmp/FFMPEG/bin/../lib/gcc/arm-linux-androideabi/4.6/../../../../arm-linux-androideabi/bin/ld: libavformat/librtmp.o: in function rtmp_open:libavformat/librtmp.c:125: error: undefined reference to 'RTMP_EnableWrite'
    collect2: ld returned 1 exit status

    And I can't get past them. It sounds like it can't find rtmp.h, which includes references to those functions, but that is present where it should be (afaik).

    Also, my project requires librtmp - the built-in rtmp features of ffmpeg are not sufficient because I require the authentication features of librtmp.