Recherche avancée

Médias (91)

Autres articles (46)

  • MediaSPIP : Modification des droits de création d’objets et de publication définitive

    11 novembre 2010, par

    Par défaut, MediaSPIP permet de créer 5 types d’objets.
    Toujours par défaut les droits de création et de publication définitive de ces objets sont réservés aux administrateurs, mais ils sont bien entendu configurables par les webmestres.
    Ces droits sont ainsi bloqués pour plusieurs raisons : parce que le fait d’autoriser à publier doit être la volonté du webmestre pas de l’ensemble de la plateforme et donc ne pas être un choix par défaut ; parce qu’avoir un compte peut servir à autre choses également, (...)

  • HTML5 audio and video support

    13 avril 2011, par

    MediaSPIP 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 (...)

  • Support audio et vidéo HTML5

    10 avril 2011

    MediaSPIP utilise les balises HTML5 video et audio pour la lecture de documents multimedia en profitant des dernières innovations du W3C supportées par les navigateurs modernes.
    Pour les navigateurs plus anciens, le lecteur flash Flowplayer est utilisé.
    Le lecteur HTML5 utilisé a été spécifiquement créé pour MediaSPIP : il est complètement modifiable graphiquement pour correspondre à un thème choisi.
    Ces technologies permettent de distribuer vidéo et son à la fois sur des ordinateurs conventionnels (...)

Sur d’autres sites (8683)

  • Integrating FFMPEG using cmake : undefined reference when linking libraries

    21 novembre 2018, par Hamed Momeni

    I’ve been trying to cross-compile ffmpeg for different Android cpu archs for couple of days now and I have finally succeeded in the task. But now that I need to integrate these pre-built .so files in my project I’m facing errors which have me baffled.

    This is the CMakeLists.txt which I’m using :

    cmake_minimum_required(VERSION 3.4.1)

    # convert SDK path to forward slashes on Windows
    file(TO_CMAKE_PATH ${PATH_TO_SUPERPOWERED} PATH_TO_SUPERPOWERED)

    set(CMAKE_VERBOSE_MAKEFILE on)

    include_directories(src/main/cpp)
    include_directories(${PATH_TO_SUPERPOWERED})
    include_directories(${PATH_TO_FFMPEG}/${ANDROID_ABI}/include)

    add_library(
           avutil
           SHARED
           ${PATH_TO_FFMPEG}/${ANDROID_ABI}/lib/libavutil.so
    )
    set_target_properties(avutil PROPERTIES LINKER_LANGUAGE CXX)

    add_library(
           avformat
           SHARED
           ${PATH_TO_FFMPEG}/${ANDROID_ABI}/lib/libavformat.so
    )
    set_target_properties(avformat PROPERTIES LINKER_LANGUAGE CXX)

    add_library(
           avcodec
           SHARED
           ${PATH_TO_FFMPEG}/${ANDROID_ABI}/lib/libavcodec.so
    )
    set_target_properties(avcodec PROPERTIES LINKER_LANGUAGE CXX)



    add_library(
           Canto
           SHARED
           src/main/cpp/Dubsmash.cpp
           src/main/cpp/Karaoke.cpp
           src/main/cpp/Singing.cpp
           src/main/cpp/EditDubsmash.cpp
           ${PATH_TO_SUPERPOWERED}/AndroidIO/SuperpoweredAndroidAudioIO.cpp
    )

    # link the native library against the following libraries
    target_link_libraries(
           Canto
           avutil
           avformat
           avcodec
           ${PATH_TO_SUPERPOWERED}/libSuperpoweredAndroid${ANDROID_ABI}.a
           OpenSLES
           log
           android
    )

    And this is the source of the file I’m getting errors on :

    #include
    #include <android></android>log.h>
    #include <string>
    // unrelated includes
    #include <libavformat></libavformat>avformat.h>
    #include <libavutil></libavutil>dict.h>

    #define log_write __android_log_write
    #define log_print __android_log_print

    // unrelated code parts

    int print_file_data(const char *filePath) {
       AVFormatContext *fmt_ctx = NULL;
       AVDictionaryEntry *tag = NULL;
       int ret;

       if ((ret = avformat_open_input(&amp;fmt_ctx, filePath, NULL, NULL)))
           return ret;

       while ((tag = av_dict_get(fmt_ctx->metadata, "", tag, AV_DICT_IGNORE_SUFFIX)))
           log_print(ANDROID_LOG_DEBUG, "%s=%s\n", tag->key, tag->value);

       avformat_close_input(&amp;fmt_ctx);
       return 0;
    }
    </string>

    And finally the errors themselves :

    FAILURE: Build failed with an exception.

    * What went wrong:
    Execution failed for task ':app:externalNativeBuildDebug'.
    > Build command failed.
     Error while executing process /home/hamed/dev/android-tools/android-sdk-linux/cmake/3.6.4111459/bin/cmake with arguments {--build /home/hamed/dev/projects/canto/Canto/app/.externalNativeBuild/cmake/debug/x86 --target Canto}
     [1/1] Linking CXX shared library ../../../../build/intermediates/cmake/debug/obj/x86/libCanto.so
     FAILED: : &amp;&amp; /home/hamed/dev/android-tools/android-sdk-linux/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/bin/clang++  --target=i686-none-linux-android16 --gcc-toolchain=/home/hamed/dev/android-tools/android-sdk-linux/ndk-bundle/toolchains/x86-4.9/prebuilt/linux-x86_64 --sysroot=/home/hamed/dev/android-tools/android-sdk-linux/ndk-bundle/sysroot -fPIC -isystem /home/hamed/dev/android-tools/android-sdk-linux/ndk-bundle/sysroot/usr/include/i686-linux-android -g -DANDROID -ffunction-sections -funwind-tables -fstack-protector-strong -no-canonical-prefixes -mstackrealign -Wa,--noexecstack -Wformat -Werror=format-security -std=c++11 -fsigned-char -I/home/hamed/dev/projects/canto/Canto/app/../Superpowered -I/home/hamed/dev/projects/canto/Canto/app/../ffmpeg -O0 -fno-limit-debug-info  -Wl,--exclude-libs,libgcc.a -Wl,--exclude-libs,libatomic.a -nostdlib++ --sysroot /home/hamed/dev/android-tools/android-sdk-linux/ndk-bundle/platforms/android-16/arch-x86 -Wl,--build-id -Wl,--warn-shared-textrel -Wl,--fatal-warnings -L/home/hamed/dev/android-tools/android-sdk-linux/ndk-bundle/sources/cxx-stl/llvm-libc++/libs/x86 -Wl,--no-undefined -Wl,-z,noexecstack -Qunused-arguments -Wl,-z,relro -Wl,-z,now -shared -Wl,-soname,libCanto.so -o ../../../../build/intermediates/cmake/debug/obj/x86/libCanto.so CMakeFiles/Canto.dir/src/main/cpp/Dubsmash.cpp.o CMakeFiles/Canto.dir/src/main/cpp/Karaoke.cpp.o CMakeFiles/Canto.dir/src/main/cpp/Singing.cpp.o CMakeFiles/Canto.dir/src/main/cpp/EditDubsmash.cpp.o CMakeFiles/Canto.dir/home/hamed/dev/projects/canto/Canto/Superpowered/AndroidIO/SuperpoweredAndroidAudioIO.cpp.o  ../../../../build/intermediates/cmake/debug/obj/x86/libavutil.so ../../../../build/intermediates/cmake/debug/obj/x86/libavformat.so ../../../../../Superpowered/libSuperpoweredAndroidx86.a -lOpenSLES -llog -landroid -latomic -lm "/home/hamed/dev/android-tools/android-sdk-linux/ndk-bundle/sources/cxx-stl/llvm-libc++/libs/x86/libc++_static.a" "/home/hamed/dev/android-tools/android-sdk-linux/ndk-bundle/sources/cxx-stl/llvm-libc++/libs/x86/libc++abi.a" "/home/hamed/dev/android-tools/android-sdk-linux/ndk-bundle/sources/cxx-stl/llvm-libc++/libs/x86/libandroid_support.a" &amp;&amp; :
     /home/hamed/dev/projects/canto/Canto/app/src/main/cpp/Dubsmash.cpp:295: error: undefined reference to 'avformat_open_input(AVFormatContext**, char const*, AVInputFormat*, AVDictionary**)'
     /home/hamed/dev/projects/canto/Canto/app/src/main/cpp/Dubsmash.cpp:298: error: undefined reference to 'av_dict_get(AVDictionary const*, char const*, AVDictionaryEntry const*, int)'
     /home/hamed/dev/projects/canto/Canto/app/src/main/cpp/Dubsmash.cpp:301: error: undefined reference to 'avformat_close_input(AVFormatContext**)'
     clang++: error: linker command failed with exit code 1 (use -v to see invocation)
     ninja: build stopped: subcommand failed.

    Obviously the linker can not find the needed libraries, but why ?!

    UPDATE
    This is the result of running nm on libavutil.so :

    0000000000000510 t atexit
    0000000000000500 t __atexit_handler_wrapper
    0000000000002008 A __bss_start
                    U __cxa_atexit
                    U __cxa_finalize
    0000000000002000 d __dso_handle
    0000000000001dd8 d _DYNAMIC
    0000000000002008 A _edata
    00000000000004e0 t __emutls_unregister_key
    0000000000002008 A _end
    00000000000005e8 r __FRAME_END__
    0000000000001fd8 d _GLOBAL_OFFSET_TABLE_
    0000000000000258 r ndk_build_number
    0000000000000218 r ndk_version
    0000000000000200 r note_android_ident
    0000000000000214 r note_data
    0000000000000298 r note_end
    000000000000020c r note_name
    00000000000004d0 t __on_dlclose
    00000000000004f0 t __on_dlclose_late

    and on libavformat :

    0000000000000520 t atexit
    0000000000000510 t __atexit_handler_wrapper
    0000000000002008 A __bss_start
                    U __cxa_atexit
                    U __cxa_finalize
    0000000000002000 d __dso_handle
    0000000000001dd8 d _DYNAMIC
    0000000000002008 A _edata
    00000000000004f0 t __emutls_unregister_key
    0000000000002008 A _end
    00000000000005f8 r __FRAME_END__
    0000000000001fd8 d _GLOBAL_OFFSET_TABLE_
    0000000000000258 r ndk_build_number
    0000000000000218 r ndk_version
    0000000000000200 r note_android_ident
    0000000000000214 r note_data
    0000000000000298 r note_end
    000000000000020c r note_name
    00000000000004e0 t __on_dlclose
    0000000000000500 t __on_dlclose_late

    UPDATE 2
    I applied @szatmary suggestion and finally managed to to build the apk file but upon reaching the System.loadLibrary call an exception occurs indicating that the linker can not find libavutil.so.56. I tried changing the address of the library in the cmake file to actually contain the version numbered lib file to no avail :

    java.lang.UnsatisfiedLinkError: dlopen failed: library "libavutil.so.56" not found
           at java.lang.Runtime.loadLibrary0(Runtime.java:1016)
           at java.lang.System.loadLibrary(System.java:1657)
           at com.hmomeni.canto.activities.EditActivity.<init>(EditActivity.kt:26)
           at java.lang.Class.newInstance(Native Method)
           at android.app.Instrumentation.newActivity(Instrumentation.java:1174)
           at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2669)
           at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2856)
           at android.app.ActivityThread.-wrap11(Unknown Source:0)
           at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1589)
           at android.os.Handler.dispatchMessage(Handler.java:106)
           at android.os.Looper.loop(Looper.java:164)
           at android.app.ActivityThread.main(ActivityThread.java:6494)
           at java.lang.reflect.Method.invoke(Native Method)
           at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:438)
           at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:807)
    </init>
  • Piwik awarded Gold Prize at Open Source Software World Challenge

    22 décembre 2014, par Matthieu Aubry — About

    We are excited to announce that Piwik has been awarded the Gold Prize in the Open Source Software World Challenge 2014 !

    Winning this award is a testament to the positive impacts of the Piwik platform worldwide. Every day dozens of new people are embracing Piwik to power their web and mobile analytics which gives them full control over their data.

    Every member of the Piwik community, from core developer to beginning user, should be proud to be part of this momentum : congratulations to us all !

    The Open Source World Challenge is the annual competition hosted by the Ministry of Science, ICT and Future Planning of Korea. This competition is mainly intended to promote open source software and expand various exchanges among open source software developers worldwide.

    Piwik Awards

  • Piwik awarded Gold Prize at Open Source Software World Challenge

    22 décembre 2014, par Matthieu Aubry — About

    We are excited to announce that Piwik has been awarded the Gold Prize in the Open Source Software World Challenge 2014 !

    Winning this award is a testament to the positive impacts of the Piwik platform worldwide. Every day dozens of new people are embracing Piwik to power their web and mobile analytics which gives them full control over their data.

    Every member of the Piwik community, from core developer to beginning user, should be proud to be part of this momentum : congratulations to us all !

    The Open Source World Challenge is the annual competition hosted by the Ministry of Science, ICT and Future Planning of Korea. This competition is mainly intended to promote open source software and expand various exchanges among open source software developers worldwide.

    Piwik Awards