Recherche avancée

Médias (91)

Autres articles (99)

  • Personnaliser en ajoutant son logo, sa bannière ou son image de fond

    5 septembre 2013, par

    Certains thèmes prennent en compte trois éléments de personnalisation : l’ajout d’un logo ; l’ajout d’une bannière l’ajout d’une image de fond ;

  • Emballe médias : à quoi cela sert ?

    4 février 2011, par

    Ce plugin vise à gérer des sites de mise en ligne de documents de tous types.
    Il crée des "médias", à savoir : un "média" est un article au sens SPIP créé automatiquement lors du téléversement d’un document qu’il soit audio, vidéo, image ou textuel ; un seul document ne peut être lié à un article dit "média" ;

  • Ajouter notes et légendes aux images

    7 février 2011, par

    Pour pouvoir ajouter notes et légendes aux images, la première étape est d’installer le plugin "Légendes".
    Une fois le plugin activé, vous pouvez le configurer dans l’espace de configuration afin de modifier les droits de création / modification et de suppression des notes. Par défaut seuls les administrateurs du site peuvent ajouter des notes aux images.
    Modification lors de l’ajout d’un média
    Lors de l’ajout d’un média de type "image" un nouveau bouton apparait au dessus de la prévisualisation (...)

Sur d’autres sites (10024)

  • FFmpeg linker error : Error due to text relocations in libavcodec shared object

    19 janvier 2016, par Balaraman L

    I am trying to build an Android app which uses FFmpeg native code for video decoding and encoding. I have a 64-bit machine running 32-bit Ubuntu 14.04, ADT version 23. I downloaded FFmpeg-2.4.4 (32-bit) and built it for Android following the steps mentioned here - http://www.roman10.net/how-to-build-ffmpeg-with-ndk-r9/

    I used latest Android NDK, that is NDK r10c. For testing, I used FFmpeg’s API example code given in this link - http://ffmpeg.org/doxygen/trunk/decoding__encoding_8c-source.html

    I was able to build all the shared objects successfully and Android project gets compiled successfully without any errors.

    Following code is Android code to load all shared objects

    public class CallNative {
    public static String libName = "decode_encode" ;
    public CallNative(){
       System.loadLibrary("avutil-54");
       System.loadLibrary("swresample-1");
       System.loadLibrary("avcodec-56");
       System.loadLibrary("avformat-56");
       System.loadLibrary("swscale-3");
       System.loadLibrary("avfilter-5");
       System.loadLibrary(libName);
    }

    public native int decode(String Filename, int length);

    }

    And, this is how, decode function is called from Android.

    Uri videoURI = Uri.parse(fileUri.toString());
                      String videoFilePath = getFilePathFromURI(getApplicationContext(), videoURI);
                      Log.d("SPLASH","Entering native decode call");
                      CallNative n = new CallNative();
                      n.decode(videoFilePath, videoFilePath.length());
                      Log.d("SPLASH","successfully returned from decode call");

    When I debugged, App crashes when it enters native function call. I get following linker error.

    W/linker(32244): libavcodec-56.so has text relocations. This is wasting memory and prevents security hardening. Please fix.

    I tried the same with FFmpeg 2.4.3 and 2.0.6 packages as well. I am getting the same error.

    How to resolve this ?

  • Using FFMpeg on Android to record to a RTMPS target

    4 mai 2017, par pbdev

    We’re building an Android app that streams video to a Wowza server. When using the RTMP protocol everything works but when we change the protocol to RTMPS (and the port number to 443) the recorder stops after a few frames. We tried both endpoints on a MacBook (streaming the build-in webcam) and that just works well so the endpoints are fine.

    rtmp://my.streamlock.net:1935/app/stream
    rtmps://my.streamlock.net:443/app/stream

    Here is some of the build.gradle file :

    configurations {
       all*.exclude group: 'org.bytedeco', module: 'javacpp-presets'
    }

    dependencies {
       compile group: 'org.bytedeco', name: 'javacv', version: '1.3.2'
       compile 'org.bytedeco.javacpp-presets:opencv:3.2.0-1.3.2:android-arm'
       compile 'org.bytedeco.javacpp-presets:opencv:3.2.0-1.3.2:android-x86'
    }

    The record method on the FFmpegFrameRecorder instance gets called 30 times per second. After 7 or 8 frames the record method freezes for a minute and then records another 7 or 8 frames. No exceptions are thrown, the app just does ’nothing’. Here are some debugging logs :

    D/Recorder: Calling the record method
    I/System.out: Predeallocating org.bytedeco.javacpp.BytePointer[address=0xcb480000,position=0,limit=921603,capacity=921603,deallocator=org.bytedeco.javacpp.Pointer$2@63f04a2]
    I/System.out: Registering org.bytedeco.javacpp.BytePointer[address=0xcb480000,position=0,limit=921603,capacity=921603,deallocator=org.bytedeco.javacpp.Pointer$NativeDeallocator[ownerAddress=0xcb480000,deallocatorAddress=0xcdcce000]]
    I/System.out: Collecting org.bytedeco.javacpp.Pointer$NativeDeallocator[ownerAddress=0xe952f478,deallocatorAddress=0xcf750090]
    D/Recorder: Record method done
    D/Recorder: Calling the record method
    I/System.out: Predeallocating org.bytedeco.javacpp.BytePointer[address=0xcb100000,position=0,limit=921603,capacity=921603,deallocator=org.bytedeco.javacpp.Pointer$2@38a8533]
    I/System.out: Registering org.bytedeco.javacpp.BytePointer[address=0xcb100000,position=0,limit=921603,capacity=921603,deallocator=org.bytedeco.javacpp.Pointer$NativeDeallocator[ownerAddress=0xcb100000,deallocatorAddress=0xcdcce000]]
    D/Recorder: Record method done
    D/Recorder: Calling the record method
    I/System.out: Predeallocating org.bytedeco.javacpp.BytePointer[address=0xcad00000,position=0,limit=921603,capacity=921603,deallocator=org.bytedeco.javacpp.Pointer$2@f0270f0]
    I/System.out: Registering org.bytedeco.javacpp.BytePointer[address=0xcad00000,position=0,limit=921603,capacity=921603,deallocator=org.bytedeco.javacpp.Pointer$NativeDeallocator[ownerAddress=0xcad00000,deallocatorAddress=0xcdcce000]]
    D/Recorder: Record method done
    D/Recorder: Calling the record method
    I/System.out: Predeallocating org.bytedeco.javacpp.BytePointer[address=0xcab00000,position=0,limit=921603,capacity=921603,deallocator=org.bytedeco.javacpp.Pointer$2@c136669]
    I/System.out: Registering org.bytedeco.javacpp.BytePointer[address=0xcab00000,position=0,limit=921603,capacity=921603,deallocator=org.bytedeco.javacpp.Pointer$NativeDeallocator[ownerAddress=0xcab00000,deallocatorAddress=0xcdcce000]]
    D/Recorder: Record method done
    D/Recorder: Calling the record method
    I/System.out: Predeallocating org.bytedeco.javacpp.BytePointer[address=0xca900000,position=0,limit=921603,capacity=921603,deallocator=org.bytedeco.javacpp.Pointer$2@bacc8ee]
    I/System.out: Registering org.bytedeco.javacpp.BytePointer[address=0xca900000,position=0,limit=921603,capacity=921603,deallocator=org.bytedeco.javacpp.Pointer$NativeDeallocator[ownerAddress=0xca900000,deallocatorAddress=0xcdcce000]]
    D/Recorder: Record method done
    D/Recorder: Calling the record method
    I/System.out: Predeallocating org.bytedeco.javacpp.BytePointer[address=0xca700000,position=0,limit=921603,capacity=921603,deallocator=org.bytedeco.javacpp.Pointer$2@3de418f]
    I/System.out: Registering org.bytedeco.javacpp.BytePointer[address=0xca700000,position=0,limit=921603,capacity=921603,deallocator=org.bytedeco.javacpp.Pointer$NativeDeallocator[ownerAddress=0xca700000,deallocatorAddress=0xcdcce000]]
    D/Recorder: Record method done
    D/Recorder: Calling the record method
    I/System.out: Predeallocating org.bytedeco.javacpp.BytePointer[address=0xca500000,position=0,limit=921603,capacity=921603,deallocator=org.bytedeco.javacpp.Pointer$2@135ac1c]
    I/System.out: Registering org.bytedeco.javacpp.BytePointer[address=0xca500000,position=0,limit=921603,capacity=921603,deallocator=org.bytedeco.javacpp.Pointer$NativeDeallocator[ownerAddress=0xca500000,deallocatorAddress=0xcdcce000]]
    D/Recorder: Record method done
    D/Recorder: Calling the record method
    I/System.out: Predeallocating org.bytedeco.javacpp.BytePointer[address=0xca300000,position=0,limit=921603,capacity=921603,deallocator=org.bytedeco.javacpp.Pointer$2@7f30025]
    I/System.out: Registering org.bytedeco.javacpp.BytePointer[address=0xca300000,position=0,limit=921603,capacity=921603,deallocator=org.bytedeco.javacpp.Pointer$NativeDeallocator[ownerAddress=0xca300000,deallocatorAddress=0xcdcce000]]
    I/System.out: Collecting org.bytedeco.javacpp.Pointer$NativeDeallocator[ownerAddress=0xcb100000,deallocatorAddress=0xcdcce000]
    I/System.out: Collecting org.bytedeco.javacpp.Pointer$NativeDeallocator[ownerAddress=0xca500000,deallocatorAddress=0xcdcce000]
    I/System.out: Collecting org.bytedeco.javacpp.Pointer$NativeDeallocator[ownerAddress=0xca700000,deallocatorAddress=0xcdcce000]
    I/System.out: Collecting org.bytedeco.javacpp.Pointer$NativeDeallocator[ownerAddress=0xca900000,deallocatorAddress=0xcdcce000]
    I/System.out: Collecting org.bytedeco.javacpp.Pointer$NativeDeallocator[ownerAddress=0xcab00000,deallocatorAddress=0xcdcce000]
    I/System.out: Collecting org.bytedeco.javacpp.Pointer$NativeDeallocator[ownerAddress=0xcad00000,deallocatorAddress=0xcdcce000]

    After the NativeDeallocator nothing happens for a minute and then the same repeats. Any help would be greatly appreciated !

  • FFMpeg - Ideal hardware build out [on hold]

    9 février 2015, par Shawn

    FFMpeg noob question here - I’m building out a system who’s primary job is to take different video files (mp4, flv, avi, etc), and spit them out to thumbnail jpeg images (1 frame/sec). I’m using the below FFMpeg command line to do this :

    ffmpeg -i sourcevideo.mp4 -y -vf scale=100 :-1 -r 1 frame_%6d.jpg

    This system will be handling thousands of video files per day - so my question is, what would be the dream hardware build out to support this ? As many procs as possible ? SSD ? Fast drive controllers ? Graphic cards for hardware acceleration ?

    Any thoughts on this would be appreciated.