Recherche avancée

Médias (1)

Mot : - Tags -/embed

Autres articles (98)

  • MediaSPIP 0.1 Beta version

    25 avril 2011, par

    MediaSPIP 0.1 beta is the first version of MediaSPIP proclaimed as "usable".
    The zip file provided here only contains the sources of MediaSPIP in its standalone version.
    To get a working installation, you must manually install all-software dependencies on the server.
    If you want to use this archive for an installation in "farm mode", you will also need to proceed to other manual (...)

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

  • ANNEXE : Les plugins utilisés spécifiquement pour la ferme

    5 mars 2010, par

    Le site central/maître de la ferme a besoin d’utiliser plusieurs plugins supplémentaires vis à vis des canaux pour son bon fonctionnement. le plugin Gestion de la mutualisation ; le plugin inscription3 pour gérer les inscriptions et les demandes de création d’instance de mutualisation dès l’inscription des utilisateurs ; le plugin verifier qui fournit une API de vérification des champs (utilisé par inscription3) ; le plugin champs extras v2 nécessité par inscription3 (...)

Sur d’autres sites (8280)

  • Unable to integrate ffmpeg as a native dependency for an Android NDK project

    24 avril 2016, par mmark

    I have an Android NDK project which consists entirely of C/C++ code, and it basically processes images without using any external libraries.

    I’m using Android Studio + Gradle NDK Experimental plugin (0.7.0-alpha1).

    Now, I need to integrate ffmpeg as a native library to use it from the C/C++ code in order to decode a H.264 video frame.

    These are the questions I’ve found here regarding this issue :

    Android - Integrating ffmpeg and android-ndk-r9c

    Android NDK w/ ffmpeg library - error running project

    Using FFmpeg native libraries with Android-NDK

    Can not build with prebuilt static libraries using gradle-experimental

    Here is my build.gradle file :

    apply plugin: 'com.android.model.application'

    def ffmpeg_path = file(project(':ffmpeg').projectDir).absolutePath + "/ffmpeg-android"

    model {

       repositories {
           libs(PrebuiltLibraries) {
               libavcodec {
                   headers.srcDir "${ffmpeg_path}/include"
                   binaries.withType(StaticLibraryBinary) {
                       staticLibraryFile = file("${ffmpeg_path}/${targetPlatform.getName()}/lib/libavcodec.a")
                   }
               }
               libavutil {
                   headers.srcDir "${ffmpeg_path}/include"
                   binaries.withType(StaticLibraryBinary) {
                       staticLibraryFile = file("${ffmpeg_path}/${targetPlatform.getName()}/lib/libavutil.a")
                   }
               }
               libswresample {
                   headers.srcDir "${ffmpeg_path}/include"
                   binaries.withType(StaticLibraryBinary) {
                       staticLibraryFile = file("${ffmpeg_path}/${targetPlatform.getName()}/lib/libswresample.a")
                   }
               }
               libswscale {
                   headers.srcDir "${ffmpeg_path}/include"
                   binaries.withType(StaticLibraryBinary) {
                       staticLibraryFile = file("${ffmpeg_path}/${targetPlatform.getName()}/lib/libswscale.a")
                   }
               }
               libavformat {
                   headers.srcDir "${ffmpeg_path}/include"
                   binaries.withType(StaticLibraryBinary) {
                       staticLibraryFile = file("${ffmpeg_path}/${targetPlatform.getName()}/lib/libavformat.a")
                   }
               }
               libavdevice {
                   headers.srcDir "${ffmpeg_path}/include"
                   binaries.withType(StaticLibraryBinary) {
                       staticLibraryFile = file("${ffmpeg_path}/${targetPlatform.getName()}/lib/libavdevice.a")
                   }
               }
               libavfilter {
                   headers.srcDir "${ffmpeg_path}/include"
                   binaries.withType(StaticLibraryBinary) {
                       staticLibraryFile = file("${ffmpeg_path}/${targetPlatform.getName()}/lib/libavfilter.a")
                   }
               }
               libpostproc {
                   headers.srcDir "${ffmpeg_path}/include"
                   binaries.withType(StaticLibraryBinary) {
                       staticLibraryFile = file("${ffmpeg_path}/${targetPlatform.getName()}/lib/libpostproc.a")
                   }
               }
           }
       }

       android {
           compileSdkVersion = 23
           buildToolsVersion = "23.0.2"

           defaultConfig.with {
               applicationId = "com.example.hellojni"
               minSdkVersion.apiLevel = 4
               targetSdkVersion.apiLevel = 23
           }
       }

       /*
        * native build settings
        */
       android.ndk {
           moduleName = "hello-jni"
           platformVersion = 9 //same as minSdkVersion.apiLevel for better compatibility
           stl    = "c++_static"
           abiFilters.addAll(["armeabi", "armeabi-v7a", "x86"]) //filtering ABIs on the ones Google Play Games library is compatible with.
       }
       android.buildTypes {
           release {
               minifyEnabled = false
               proguardFiles.add(file('proguard-rules.txt'))
           }
       }

       android.sources {
           main {
               jni {
                   dependencies {
                       library "libavcodec" linkage "static"
                       library "libavutil" linkage "static"
                       library "libswresample" linkage "static"
                       library "libswscale" linkage "static"
                       library "libavformat" linkage "static"
                       library "libavdevice" linkage "static"
                       library "libavfilter" linkage "static"
                       library "libpostproc" linkage "static"
                   }
               }
           }
       }

    }

    I based on this sample from Google which integrates an external native library.

    This is the ffmpeg project I compiled before importing it into mine :
    https://github.com/WritingMinds/ffmpeg-android

    I’ve added all the .a and .h files and I’m able to import the headers in my C/C++ code, but when I try to compile it I get the following error :

    /Users/marcos/Documents/Android/fdecoder/ffmpeg/ffmpeg-android/armeabi-v7a/lib/libavformat.a(utils.o):utils.c:function try_decode_frame: error: undefined reference to 'avpriv_h264_has_num_reorder_frames'
    /Users/marcos/Documents/Android/fdecoder/ffmpeg/ffmpeg-android/armeabi-v7a/lib/libavformat.a(utils.o):utils.c:function compute_pkt_fields: error: undefined reference to 'avpriv_h264_has_num_reorder_frames'
    /Users/marcos/Documents/Android/fdecoder/ffmpeg/ffmpeg-android/armeabi-v7a/lib/libavformat.a(utils.o):utils.c:function parse_packet: error: undefined reference to 'av_parser_parse2'
    /Users/marcos/Documents/Android/fdecoder/ffmpeg/ffmpeg-android/armeabi-v7a/lib/libavformat.a(utils.o):utils.c:function parse_packet: error: undefined reference to 'av_parser_close'
    /Users/marcos/Documents/Android/fdecoder/ffmpeg/ffmpeg-android/armeabi-v7a/lib/libavformat.a(utils.o):utils.c:function read_frame_internal: error: undefined reference to 'av_parser_init'
    /Users/marcos/Documents/Android/fdecoder/ffmpeg/ffmpeg-android/armeabi-v7a/lib/libavformat.a(utils.o):utils.c:function avformat_find_stream_info: error: undefined reference to 'av_parser_init'
    /Users/marcos/Documents/Android/fdecoder/ffmpeg/ffmpeg-android/armeabi-v7a/lib/libavformat.a(utils.o):utils.c:function avformat_find_stream_info: error: undefined reference to 'avcodec_pix_fmt_to_codec_tag'
    /Users/marcos/Documents/Android/fdecoder/ffmpeg/ffmpeg-android/armeabi-v7a/lib/libavformat.a(utils.o):utils.c:function avformat_find_stream_info: error: undefined reference to 'avpriv_get_raw_pix_fmt_tags'
    /Users/marcos/Documents/Android/fdecoder/ffmpeg/ffmpeg-android/armeabi-v7a/lib/libavformat.a(utils.o):utils.c:function ff_stream_add_bitstream_filter: error: undefined reference to 'av_bitstream_filter_init'
    /Users/marcos/Documents/Android/fdecoder/ffmpeg/ffmpeg-android/armeabi-v7a/lib/libavformat.a(utils.o):utils.c:function ff_stream_add_bitstream_filter: error: undefined reference to 'av_bitstream_filter_close'
    /Users/marcos/Documents/Android/fdecoder/ffmpeg/ffmpeg-android/armeabi-v7a/lib/libavformat.a(utils.o):utils.c:function av_apply_bitstream_filters: error: undefined reference to 'av_bitstream_filter_filter'
    /Users/marcos/Documents/Android/fdecoder/ffmpeg/ffmpeg-android/armeabi-v7a/lib/libavformat.a(aadec.o):aadec.c:function aa_read_packet: error: undefined reference to 'av_tea_init'
    /Users/marcos/Documents/Android/fdecoder/ffmpeg/ffmpeg-android/armeabi-v7a/lib/libavformat.a(aadec.o):aadec.c:function aa_read_packet: error: undefined reference to 'av_tea_crypt'
    /Users/marcos/Documents/Android/fdecoder/ffmpeg/ffmpeg-android/armeabi-v7a/lib/libavformat.a(aadec.o):aadec.c:function aa_read_header: error: undefined reference to 'av_tea_alloc'
    /Users/marcos/Documents/Android/fdecoder/ffmpeg/ffmpeg-android/armeabi-v7a/lib/libavformat.a(aadec.o):aadec.c:function aa_read_header: error: undefined reference to 'av_tea_init'
    /Users/marcos/Documents/Android/fdecoder/ffmpeg/ffmpeg-android/armeabi-v7a/lib/libavformat.a(aadec.o):aadec.c:function aa_read_header: error: undefined reference to 'av_tea_crypt'
    /Users/marcos/Documents/Android/fdecoder/ffmpeg/ffmpeg-android/armeabi-v7a/lib/libavformat.a(ac3dec.o):ac3dec.c:function ac3_eac3_probe.isra.0: error: undefined reference to 'avpriv_ac3_parse_header'
    /Users/marcos/Documents/Android/fdecoder/ffmpeg/ffmpeg-android/armeabi-v7a/lib/libavformat.a(adtsenc.o):adtsenc.c:function adts_write_header: error: undefined reference to 'avpriv_mpeg4audio_get_config'
    /Users/marcos/Documents/Android/fdecoder/ffmpeg/ffmpeg-android/armeabi-v7a/lib/libavformat.a(adtsenc.o):adtsenc.c:function adts_write_header: error: undefined reference to 'avpriv_copy_pce_data'
    /Users/marcos/Documents/Android/fdecoder/ffmpeg/ffmpeg-android/armeabi-v7a/lib/libavformat.a(asfcrypt.o):asfcrypt.c:function ff_asfcrypt_dec: error: undefined reference to 'av_rc4_alloc'
    /Users/marcos/Documents/Android/fdecoder/ffmpeg/ffmpeg-android/armeabi-v7a/lib/libavformat.a(asfcrypt.o):asfcrypt.c:function ff_asfcrypt_dec: error: undefined reference to 'av_rc4_init'
    /Users/marcos/Documents/Android/fdecoder/ffmpeg/ffmpeg-android/armeabi-v7a/lib/libavformat.a(asfcrypt.o):asfcrypt.c:function ff_asfcrypt_dec: error: undefined reference to 'av_rc4_crypt'
    /Users/marcos/Documents/Android/fdecoder/ffmpeg/ffmpeg-android/armeabi-v7a/lib/libavformat.a(asfcrypt.o):asfcrypt.c:function ff_asfcrypt_dec: error: undefined reference to 'av_rc4_init'
    /Users/marcos/Documents/Android/fdecoder/ffmpeg/ffmpeg-android/armeabi-v7a/lib/libavformat.a(asfcrypt.o):asfcrypt.c:function ff_asfcrypt_dec: error: undefined reference to 'av_rc4_crypt'
    /Users/marcos/Documents/Android/fdecoder/ffmpeg/ffmpeg-android/armeabi-v7a/lib/libavformat.a(matroska.o):matroska.c:function ff_mkv_stereo3d_conv: error: undefined reference to 'av_stereo3d_alloc'
    /Users/marcos/Documents/Android/fdecoder/ffmpeg/ffmpeg-android/armeabi-v7a/lib/libavformat.a(nut.o):nut.c:function ff_nut_add_sp: error: undefined reference to 'av_tree_node_alloc'
    /Users/marcos/Documents/Android/fdecoder/ffmpeg/ffmpeg-android/armeabi-v7a/lib/libavformat.a(nut.o):nut.c:function ff_nut_add_sp: error: undefined reference to 'av_tree_insert'
    /Users/marcos/Documents/Android/fdecoder/ffmpeg/ffmpeg-android/armeabi-v7a/lib/libavformat.a(nut.o):nut.c:function ff_nut_free_sp: error: undefined reference to 'av_tree_enumerate'
    /Users/marcos/Documents/Android/fdecoder/ffmpeg/ffmpeg-android/armeabi-v7a/lib/libavformat.a(nut.o):nut.c:function ff_nut_free_sp: error: undefined reference to 'av_tree_destroy'
    Error:error: ld returned 1 exit status
    Error:Execution failed for task ':app:linkHello-jniArmeabi-v7aDebugSharedLibrary'.
    > A build operation failed.
         Linker failed while linking libhello-jni.so.
     See the complete log at: file:///Users/marcos/Documents/Android/fdecoder/app/build/tmp/linkHello-jniArmeabi-v7aDebugSharedLibrary/output.txt
    Information:BUILD FAILED
    Information:Total time: 14.993 secs
    Information:2 errors
    Information:0 warnings
    Information:See complete output in console

    There’s obviously something I’m not importing properly, but can’t figure exactly what’s missing.

  • convert mp3 to wav using xuggle getting exception

    24 juin 2013, par Felix

    I am trying to convert mp3 to wav and the code is here :

    String mp3 = "F:\\work\\pic2talk38512.mp3";
    String wav = "F:\\work\\pic2talk38512.wav";
    TranscodeAudioAndVideo.transcodeTest(mp3, wav);

    public static void transcode(String sourceUrl, String destinationUrl) {
       IMediaReader reader = ToolFactory.makeReader(sourceUrl);
       reader.addListener(ToolFactory.makeWriter(destinationUrl, reader));

       while (reader.readPacket() == null)
               do {
               } while (false);
    }

    I got this exception :

    java.lang.UnsupportedOperationException: could not guess codec
    at com.xuggle.xuggler.IContainerFormat.establishOutputCodecId(IContainerFormat.java:454)
    at com.xuggle.xuggler.IContainerFormat.establishOutputCodecId(IContainerFormat.java:327)
    at com.xuggle.xuggler.IContainerFormat.establishOutputCodecId(IContainerFormat.java:300)
    at com.xuggle.mediatool.MediaWriter.addStreamFromContainer(MediaWriter.java:1134)
    at com.xuggle.mediatool.MediaWriter.getStream(MediaWriter.java:1039)
    at com.xuggle.mediatool.MediaWriter.encodeVideo(MediaWriter.java:742)
    at com.xuggle.mediatool.MediaWriter.encodeVideo(MediaWriter.java:783)
    at com.xuggle.mediatool.MediaWriter.onVideoPicture(MediaWriter.java:1434)
    at com.xuggle.mediatool.AMediaToolMixin.onVideoPicture(AMediaToolMixin.java:166)
    at com.xuggle.mediatool.MediaReader.dispatchVideoPicture(MediaReader.java:610)
    at com.xuggle.mediatool.MediaReader.decodeVideo(MediaReader.java:519)
    at com.xuggle.mediatool.MediaReader.readPacket(MediaReader.java:475)
    at com.renren.intl.soundsns.pictalk.utils.TranscodeAudioAndVideo.transcodeTest(TranscodeAudioAndVideo.java:75)
    at com.renren.intl.soundsns.pictalk.utils.TranscodeAudioAndVideoTest.convert(TranscodeAudioAndVideoTest.java:12)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:47)
    at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
    at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:44)
    at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
    at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:271)
    at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:70)
    at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50)
    at org.junit.runners.ParentRunner$3.run(ParentRunner.java:238)
    at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:63)
    at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:236)
    at org.junit.runners.ParentRunner.access$000(ParentRunner.java:53)
    at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:229)
    at org.junit.runners.ParentRunner.run(ParentRunner.java:309)
    at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:49)
    at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)

    I know that xuggle can figure out the conversion by the extension.But why this time is failed ?

    thanks

    edit :

    previously I can convert mp3 which params(MPEG 22.1KHZ 32kbps) to wav, but If I use the mp3(MPEG 44.1KHZ 62kbps) I got this exception ?

    How this happened ?

  • How to use fig.show=animate in knitr without administrator privileges

    23 mai 2013, par Stéphane Laurent

    I use Windows without administrator privileges hence I cannot set a path in the Windows PATH variable.

    The ffmpeg.exe file is in my "U:/ProgramFiles/ImageMagick-6.8.5-5/" folder.

    I have found how to use the saveVideo() function of the animate package :

    ani.options(ffmpeg = shQuote('U:/ProgramFiles/ImageMagick-6.8.5-5/ffmpeg.exe'))
    saveVideo({
     par(mar = rep(3, 4))
     for (i in seq(pi/2, -4/3 * pi, length = 12)) {
       plot(0, 0, pch = 20, ann = FALSE, axes = FALSE)
       arrows(0, 0, cos(i), sin(i))
       axis(1, 0, "VI"); axis(2, 0, "IX")
       axis(3, 0, "XII"); axis(4, 0, "III"); box()
     }
    },
           video.name="mavideo.mp4",
           outdir="U:/Data/Rtests/Animation")

    But I haven't find how to knit a Rmd file with the option fig.show=animate in a chunk, for instance :

    ```{r clock, fig.width=7, fig.height=6, fig.show='animate'}
    par(mar = rep(3, 4))
    for (i in seq(pi/2, -4/3 * pi, length = 12)) {
       plot(0, 0, pch = 20, ann = FALSE, axes = FALSE)
       arrows(0, 0, cos(i), sin(i))
       axis(1, 0, "VI"); axis(2, 0, "IX")
       axis(3, 0, "XII"); axis(4, 0, "III"); box()
    }
    ```

    I have tried to modifiy the hook_ffmpeg_html() function by only changing the ffmpeg.cmd variable :

    ```{r}
    hook_ffmpeg_html2 <- function (x, options)
    {
       ........
       ffmpeg.cmd = paste("-y", "-r", 1/options$interval,
           "-i", fig.fname, mov.fname)
       ffmpeg.cmd <-  paste('"U:/ProgramFiles/ImageMagick-6.8.5-5/ffmpeg"', ffmpeg.cmd)
      ......
    }
    opts_knit$set(animation.fun = hook_ffmpeg_html2)
    ```

    But this chunk does not work, below is the error message :

    label: unnamed-chunk-1
    Warning in block_exec(params) :
     failed to tidy R code in chunk  
    reason: Error in base::parse(text = text, srcfile = NULL) :
     21:14: unexpected symbol
    20: options$out.height), if ("controls" %in% mov.opts)
    21: "controls=\\"controls