Recherche avancée

Médias (1)

Mot : - Tags -/getid3

Autres articles (87)

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

  • Script d’installation automatique de MediaSPIP

    25 avril 2011, par

    Afin de palier aux difficultés d’installation dues principalement aux dépendances logicielles coté serveur, un script d’installation "tout en un" en bash a été créé afin de faciliter cette étape sur un serveur doté d’une distribution Linux compatible.
    Vous devez bénéficier d’un accès SSH à votre serveur et d’un compte "root" afin de l’utiliser, ce qui permettra d’installer les dépendances. Contactez votre hébergeur si vous ne disposez pas de cela.
    La documentation de l’utilisation du script d’installation (...)

  • Librairies et binaires spécifiques au traitement vidéo et sonore

    31 janvier 2010, par

    Les logiciels et librairies suivantes sont utilisées par SPIPmotion d’une manière ou d’une autre.
    Binaires obligatoires FFMpeg : encodeur principal, permet de transcoder presque tous les types de fichiers vidéo et sonores dans les formats lisibles sur Internet. CF ce tutoriel pour son installation ; Oggz-tools : outils d’inspection de fichiers ogg ; Mediainfo : récupération d’informations depuis la plupart des formats vidéos et sonores ;
    Binaires complémentaires et facultatifs flvtool2 : (...)

Sur d’autres sites (6403)

  • Android Studio with javaCv and FFMPEG

    19 janvier 2016, par Calvin Moss

    So I am using the new Android Studio and I am trying to get JavaCV installed in the most basic setup. I made a brand new project with nothing in it, imported (I think unsuccessfully) the JavaCV library and then I am running one of the samples given in the JavaCV repo and I am getting the following error.

    Process: com.example.calvintmoss.dejavid, PID: 1187
    java.lang.UnsatisfiedLinkError: Couldn't load jniopencv_core from loader dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/com.example.calvintmoss.dejavid-1.apk"],nativeLibraryDirectories=[/data/app-lib/com.example.calvintmoss.dejavid-1, /system/lib]]]: findLibrary returned null
           at java.lang.Runtime.loadLibrary(Runtime.java:358)
           at java.lang.System.loadLibrary(System.java:526)
           at org.bytedeco.javacpp.Loader.loadLibrary(Loader.java:535)
           at org.bytedeco.javacpp.Loader.load(Loader.java:410)
           at org.bytedeco.javacpp.Loader.load(Loader.java:353)
           at org.bytedeco.javacpp.opencv_core.<clinit>(opencv_core.java:10)
           at org.bytedeco.javacpp.helper.opencv_core$AbstractIplImage.create(opencv_core.java:909)
           at com.example.calvintmoss.dejavid.MainActivity.initRecorder(MainActivity.java:249)
           at com.example.calvintmoss.dejavid.MainActivity.onCreate(MainActivity.java:151)
           at android.app.Activity.performCreate(Activity.java:5231)
           at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087)
           at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2148)
           at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2233)
           at android.app.ActivityThread.access$800(ActivityThread.java:135)
           at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1196)
           at android.os.Handler.dispatchMessage(Handler.java:102)
           at android.os.Looper.loop(Looper.java:136)
           at android.app.ActivityThread.main(ActivityThread.java:5001)
           at java.lang.reflect.Method.invokeNative(Native Method)
           at java.lang.reflect.Method.invoke(Method.java:515)
           at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:785)
           at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:601)
           at dalvik.system.NativeStart.main(Native Method)
    Caused by: java.lang.UnsatisfiedLinkError: Couldn't load opencv_core from loader dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/com.example.calvintmoss.dejavid-1.apk"],nativeLibraryDirectories=[/data/app-lib/com.example.calvintmoss.dejavid-1, /system/lib]]]: findLibrary returned null
           at java.lang.Runtime.loadLibrary(Runtime.java:358)
           at java.lang.System.loadLibrary(System.java:526)
           at org.bytedeco.javacpp.Loader.loadLibrary(Loader.java:535)
           at org.bytedeco.javacpp.Loader.load(Loader.java:401)
                at org.bytedeco.javacpp.Loader.load(Loader.java:353)
                at org.bytedeco.javacpp.opencv_core.<clinit>(opencv_core.java:10)
                at org.bytedeco.javacpp.helper.opencv_core$AbstractIplImage.create(opencv_core.java:909)
                at com.example.calvintmoss.dejavid.MainActivity.initRecorder(MainActivity.java:249)
                at com.example.calvintmoss.dejavid.MainActivity.onCreate(MainActivity.java:151)
                at android.app.Activity.performCreate(Activity.java:5231)
                at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087)
                at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2148)
                at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2233)
                at android.app.ActivityThread.access$800(ActivityThread.java:135)
                at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1196)
                at android.os.Handler.dispatchMessage(Handler.java:102)
                at android.os.Looper.loop(Looper.java:136)
                at android.app.ActivityThread.main(ActivityThread.java:5001)
                at java.lang.reflect.Method.invokeNative(Native Method)
                at java.lang.reflect.Method.invoke(Method.java:515)
                at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:785)
                at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:601)
                at dalvik.system.NativeStart.main(Native Method)
    </clinit></clinit>

    I have read several of the other top posts on the issue but I cannot figure out what is wrong. I downloaded the JavaCV through gradle, then I added the lib and lib/areabi folders. I imported ffmpeg.jar, javacpp.jar, javacv.jar and opencv.jar all to the lib folder. and I extracted all the .SO files from opencv-android-arm.jar and ffmpeg-android-arm.jar and put them in the lib/armeabi just like the instructions on the git repo. I cannot figure out what is going on. Anyone have any ideas ? Also my current setup is. Project->AppModule and then inside of that is where I have my lib and inside of lib i have the armeabi. Does anyone have any info on whats going on ?

  • java.lang.NoClassDefFoundError Android Studio Unity

    28 avril 2016, par Nestoraj

    I’m having some troubles when I try to generate a library that contains another one in Android Studio. First of all I am using Android Studio 2.0 and Unity 5.3.4f1. What I want to do is integrate FFMpeg in Unity so I decided to create my own library that use FFMpeg library as an intermediary. The FFMpeg library is here.

    To start I created a new empty project in Android Studio and inside of it, created a new module, which will be my library, using New->Module->Android Library and named it "ffmpegcodec". After that I opened build.gradle file inside the new module folder and paste :

    compile 'com.writingminds:FFmpegAndroid:0.3.2'

    inside dependencies brackets, and click Sync (It did not show any error).

    After that create a new Java Class inside src/main/java/package-name/ and named it FFMpegCodec. Inside this paste this code :

    public class FFMpegCodec {
    private static FFmpeg ffmpeg;
    private static Context context;
    private static FFMpegCodec INSTANCE = null;

    public FFMpegCodec(){
       INSTANCE = this;
    }

    public static FFMpegCodec instance(){
       if(INSTANCE == null){
           INSTANCE = new FFMpegCodec();
       }
       return INSTANCE;
    }

    public void setContext(Context ctx){
       this.context = ctx;
    }

    public void loadFFMpegBinary() {
       try {
           if (ffmpeg == null) {

               ffmpeg = FFmpeg.getInstance(context);
           }
           ffmpeg.loadBinary(new LoadBinaryResponseHandler() {
               @Override
               public void onFailure() {
                   Log.e("FFMPEG", "ffmpeg : NOT correct Loaded");
               }

               @Override
               public void onSuccess() {
                   Log.e("FFMPEG", "ffmpeg : correct Loaded");
               }
           });
       } catch (FFmpegNotSupportedException e) {

       } catch (Exception e) {

       }
    }

    public void execFFmpegCommand(final String[] command) {
       try {
           ffmpeg.execute(command, new ExecuteBinaryResponseHandler() {
               @Override
               public void onFailure(String s) {
                   Log.e("FFMPEG", "FAILED with output : " + s);
               }

               @Override
               public void onSuccess(String s) {
                   Log.e("FFMPEG", "SUCCESS with output : " + s);
               }

               @Override
               public void onProgress(String s) {
                   Log.e("FFMPEG", "Started command : ffmpeg " + command);
                   Log.e("FFMPEG", "progress : " + s);
               }

               @Override
               public void onStart() {
                   Log.e("FFMPEG", "Started command : ffmpeg " + command);

               }

               @Override
               public void onFinish() {
                   Log.e("FFMPEG", "Finished command : ffmpeg " + command);

               }
           });
       } catch (FFmpegCommandAlreadyRunningException e) {
           // do nothing for now
       }
    }

    It basically generates an instance of FFmpeg and makes calls of ffmpeg commands.

    Once I have my lib done I decided to test it in my project so I include my lib in my app graddle using :

    compile project(':ffmpegcodec')

    After that I just paste this code to my MainActivity :

    public class MainActivity extends AppCompatActivity {

    FFMpegCodec ffmpeg;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
       super.onCreate(savedInstanceState);
       setContentView(R.layout.activity_main);

       Button execCommandButton = (Button) findViewById(R.id.execCommandButton);

       ffmpeg = FFMpegCodec.instance();


       execCommandButton.setOnClickListener(new View.OnClickListener() {
           @Override
           public void onClick(View v) {
               Toast.makeText(getApplicationContext(), "This is a Toast!!", Toast.LENGTH_SHORT).show();
               ffmpeg.setContext(MainActivity.this);
               ffmpeg.loadFFMpegBinary();
               String []cmd = new String[1];
               cmd[0] = "-version";
               ffmpeg.execFFmpegCommand(cmd);
           }
       });

    }

    After that, I run my project and when I press the button it returns that everythings its ok, showing ffmpeg version.
    Once I have check that my lib works I decide to move it to Unity so copy the ffmpegcodec-realese.arr file inside ffmpegcodec/build/outputs/aar folder and paste it into my Unity project. Then I wrote an C# script to use my lib that contains this :

       using System;
       using System.Runtime.InteropServices;
       using UnityEngine;
       using System.Collections;
       using System.Diagnostics;

       public class ScreenRecorder {

       private AndroidJavaObject unityActivity = null;
       private AndroidJavaObject captureObject = null;

           // Use this for initialization
           public ScreenRecorder () {
               try{

                   using (AndroidJavaClass unityPlayerActivityClass = new AndroidJavaClass("com.unity3d.player.UnityPlayer")) {
                       unityActivity = unityPlayerActivityClass.GetStatic<androidjavaobject>("currentActivity");
                   }

                   AndroidJavaClass captureClass = new AndroidJavaClass ("com.promineostudios.ffmpegcodec.FFMpegCodec");
                   if (captureClass != null) {
                       captureObject = captureClass.CallStatic<androidjavaobject>("instance");
                       captureObject.Call("setContext", unityActivity);
                       captureObject.Call("loadFFMpegBinary");
                   }
               }catch(Exception ex){
                   UnityEngine.Debug.Log(ex);
               }
           }

       }
    </androidjavaobject></androidjavaobject>

    The problems comes here. When I create a class instance using :

    AndroidJavaClass captureClass = new AndroidJavaClass ("com.promineostudios.ffmpegcodec.FFMpegCodec");

    It creates an instance correctly, and also when I create an object using :

    captureObject = captureClass.CallStatic<androidjavaobject>("instance");
    </androidjavaobject>

    But when I try to get access to FFMpeg library methods like in "setContext" it fails and returns this :

    UnityEngine.AndroidJavaException: java.lang.NoClassDefFoundError: Failed resolution of: Lcom/github/hiteshsondhi88/libffmpeg/FFmpeg;
    java.lang.NoClassDefFoundError: Failed resolution of: Lcom/github/hiteshsondhi88/libffmpeg/FFmpeg;
     at com.promineostudios.ffmpegcodec.FFMpegCodec.loadFFMpegBinary(FFMpegAndroidCodec.java:39)
     at com.unity3d.player.UnityPlayer.nativeRender(Native Method)
     at com.unity3d.player.UnityPlayer.a(Unknown Source)
     at com.unity3d.player.UnityPlayer$b.run(Unknown Source)
    Caused by: java.lang.ClassNotFoundException: Didn't find class "com.github.hiteshsondhi88.libffmpeg.FFmpeg" on path: DexPathList[[zip file "/data/app/com.promineostudios.ffmpegmodule-1/base.apk"],nativeLibraryDirectories=[/data/app/com.promineostudios.ffmpegmodule-1/lib/arm, /vendor/lib, /system/lib]]
     at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
     at java.lang.ClassLoader.loadClass(ClassLoader.java:511)
     at java.lang.ClassLoader.loadClass(ClassLoader.java:469)
     at com.promineostudios.ffmpegcodec.FFMpegCodec.loadFFMpegBinary(FFMpegAndroidCodec.java:39) 
     at com.unity3d.player.UnityPlayer.nativeRender(Native Method) 
     at com.unity3d.player.UnityPlayer.a(Unknown Source) 
     at com.unity3d.player.UnityPlayer$b.run(Unknown Source)

    I think that the problem is in when I export my lib into Unity but I do not know what is going wrong. If anybody could help me I will be really appreciated.

    Thanks and excuse me for my English.

  • java.lang.NoClassDefFoundError Android Studio Unity

    26 juin 2017, par Nestoraj

    I’m having some troubles when I try to generate a library that contains another one in Android Studio. First of all I am using Android Studio 2.0 and Unity 5.3.4f1. What I want to do is integrate FFMpeg in Unity so I decided to create my own library that use FFMpeg library as an intermediary. The FFMpeg library is here.

    To start I created a new empty project in Android Studio and inside of it, created a new module, which will be my library, using New->Module->Android Library and named it "ffmpegcodec". After that I opened build.gradle file inside the new module folder and paste :

    compile 'com.writingminds:FFmpegAndroid:0.3.2'

    inside dependencies brackets, and click Sync (It did not show any error).

    After that create a new Java Class inside src/main/java/package-name/ and named it FFMpegCodec. Inside this paste this code :

    public class FFMpegCodec {
    private static FFmpeg ffmpeg;
    private static Context context;
    private static FFMpegCodec INSTANCE = null;

    public FFMpegCodec(){
       INSTANCE = this;
    }

    public static FFMpegCodec instance(){
       if(INSTANCE == null){
           INSTANCE = new FFMpegCodec();
       }
       return INSTANCE;
    }

    public void setContext(Context ctx){
       this.context = ctx;
    }

    public void loadFFMpegBinary() {
       try {
           if (ffmpeg == null) {

               ffmpeg = FFmpeg.getInstance(context);
           }
           ffmpeg.loadBinary(new LoadBinaryResponseHandler() {
               @Override
               public void onFailure() {
                   Log.e("FFMPEG", "ffmpeg : NOT correct Loaded");
               }

               @Override
               public void onSuccess() {
                   Log.e("FFMPEG", "ffmpeg : correct Loaded");
               }
           });
       } catch (FFmpegNotSupportedException e) {

       } catch (Exception e) {

       }
    }

    public void execFFmpegCommand(final String[] command) {
       try {
           ffmpeg.execute(command, new ExecuteBinaryResponseHandler() {
               @Override
               public void onFailure(String s) {
                   Log.e("FFMPEG", "FAILED with output : " + s);
               }

               @Override
               public void onSuccess(String s) {
                   Log.e("FFMPEG", "SUCCESS with output : " + s);
               }

               @Override
               public void onProgress(String s) {
                   Log.e("FFMPEG", "Started command : ffmpeg " + command);
                   Log.e("FFMPEG", "progress : " + s);
               }

               @Override
               public void onStart() {
                   Log.e("FFMPEG", "Started command : ffmpeg " + command);

               }

               @Override
               public void onFinish() {
                   Log.e("FFMPEG", "Finished command : ffmpeg " + command);

               }
           });
       } catch (FFmpegCommandAlreadyRunningException e) {
           // do nothing for now
       }
    }

    It basically generates an instance of FFmpeg and makes calls of ffmpeg commands.

    Once I have my lib done I decided to test it in my project so I include my lib in my app graddle using :

    compile project(':ffmpegcodec')

    After that I just paste this code to my MainActivity :

    public class MainActivity extends AppCompatActivity {

    FFMpegCodec ffmpeg;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
       super.onCreate(savedInstanceState);
       setContentView(R.layout.activity_main);

       Button execCommandButton = (Button) findViewById(R.id.execCommandButton);

       ffmpeg = FFMpegCodec.instance();


       execCommandButton.setOnClickListener(new View.OnClickListener() {
           @Override
           public void onClick(View v) {
               Toast.makeText(getApplicationContext(), "This is a Toast!!", Toast.LENGTH_SHORT).show();
               ffmpeg.setContext(MainActivity.this);
               ffmpeg.loadFFMpegBinary();
               String []cmd = new String[1];
               cmd[0] = "-version";
               ffmpeg.execFFmpegCommand(cmd);
           }
       });

    }

    After that, I run my project and when I press the button it returns that everythings its ok, showing ffmpeg version.
    Once I have check that my lib works I decide to move it to Unity so copy the ffmpegcodec-realese.arr file inside ffmpegcodec/build/outputs/aar folder and paste it into my Unity project. Then I wrote an C# script to use my lib that contains this :

       using System;
       using System.Runtime.InteropServices;
       using UnityEngine;
       using System.Collections;
       using System.Diagnostics;

       public class ScreenRecorder {

       private AndroidJavaObject unityActivity = null;
       private AndroidJavaObject captureObject = null;

           // Use this for initialization
           public ScreenRecorder () {
               try{

                   using (AndroidJavaClass unityPlayerActivityClass = new AndroidJavaClass("com.unity3d.player.UnityPlayer")) {
                       unityActivity = unityPlayerActivityClass.GetStatic<androidjavaobject>("currentActivity");
                   }

                   AndroidJavaClass captureClass = new AndroidJavaClass ("com.promineostudios.ffmpegcodec.FFMpegCodec");
                   if (captureClass != null) {
                       captureObject = captureClass.CallStatic<androidjavaobject>("instance");
                       captureObject.Call("setContext", unityActivity);
                       captureObject.Call("loadFFMpegBinary");
                   }
               }catch(Exception ex){
                   UnityEngine.Debug.Log(ex);
               }
           }

       }
    </androidjavaobject></androidjavaobject>

    The problems comes here. When I create a class instance using :

    AndroidJavaClass captureClass = new AndroidJavaClass ("com.promineostudios.ffmpegcodec.FFMpegCodec");

    It creates an instance correctly, and also when I create an object using :

    captureObject = captureClass.CallStatic<androidjavaobject>("instance");
    </androidjavaobject>

    But when I try to get access to FFMpeg library methods like in "setContext" it fails and returns this :

    UnityEngine.AndroidJavaException: java.lang.NoClassDefFoundError: Failed resolution of: Lcom/github/hiteshsondhi88/libffmpeg/FFmpeg;
    java.lang.NoClassDefFoundError: Failed resolution of: Lcom/github/hiteshsondhi88/libffmpeg/FFmpeg;
     at com.promineostudios.ffmpegcodec.FFMpegCodec.loadFFMpegBinary(FFMpegAndroidCodec.java:39)
     at com.unity3d.player.UnityPlayer.nativeRender(Native Method)
     at com.unity3d.player.UnityPlayer.a(Unknown Source)
     at com.unity3d.player.UnityPlayer$b.run(Unknown Source)
    Caused by: java.lang.ClassNotFoundException: Didn't find class "com.github.hiteshsondhi88.libffmpeg.FFmpeg" on path: DexPathList[[zip file "/data/app/com.promineostudios.ffmpegmodule-1/base.apk"],nativeLibraryDirectories=[/data/app/com.promineostudios.ffmpegmodule-1/lib/arm, /vendor/lib, /system/lib]]
     at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
     at java.lang.ClassLoader.loadClass(ClassLoader.java:511)
     at java.lang.ClassLoader.loadClass(ClassLoader.java:469)
     at com.promineostudios.ffmpegcodec.FFMpegCodec.loadFFMpegBinary(FFMpegAndroidCodec.java:39) 
     at com.unity3d.player.UnityPlayer.nativeRender(Native Method) 
     at com.unity3d.player.UnityPlayer.a(Unknown Source) 
     at com.unity3d.player.UnityPlayer$b.run(Unknown Source)

    I think that the problem is in when I export my lib into Unity but I do not know what is going wrong. If anybody could help me I will be really appreciated.

    Thanks and excuse me for my English.