Recherche avancée

Médias (1)

Mot : - Tags -/biographie

Autres articles (73)

  • Publier sur MédiaSpip

    13 juin 2013

    Puis-je poster des contenus à partir d’une tablette Ipad ?
    Oui, si votre Médiaspip installé est à la version 0.2 ou supérieure. Contacter au besoin l’administrateur de votre MédiaSpip pour le savoir

  • 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

  • L’agrémenter visuellement

    10 avril 2011

    MediaSPIP est basé sur un système de thèmes et de squelettes. Les squelettes définissent le placement des informations dans la page, définissant un usage spécifique de la plateforme, et les thèmes l’habillage graphique général.
    Chacun peut proposer un nouveau thème graphique ou un squelette et le mettre à disposition de la communauté.

Sur d’autres sites (8879)

  • How to configure and validate a Funnel in Piwik Analytics

    16 janvier 2017, par InnoCraft — Community

    In the last blog post we have covered how the conversion Funnel plugin enriches your Piwik experience. This post will focus on how to configure and validate your funnel in Piwik so you get the correct data when you view the funnel reports. When you set up a funnel, it is crucial to have it configured correctly as the funnel report will be only as good as its configuration. When we built this Funnel feature, we focused on making the configuration and validation real simple because it is so important to get it right.

    To recap quickly : A Funnel defines a series of steps that you expect your visitors to take on their way to converting a goal or a sale. Funnels, a premium feature for Piwik developed by InnoCraft, lets you define funnels so you can improve your websites and mobile apps based on this data. Learn more about Funnel.

    Configuring a funnel

    As you will notice Funnels integrates nicely into the Piwik Goals management. You can configure a funnel whenever you create or update a goal. You can access the Goals Management either via “Administration => Goals” or via the reporting menu “Goals => Manage”. Then click on either “Add a new goal” or select an existing goal to edit it. At the bottom of the goal form, you will see a new row letting you configure a funnel. As with all our premium features we focused on displaying lots of inline help and explain directly in the UI what a funnel is about, what the steps are in order to configure a funnel, how a funnel helps you and more. This lets you use the Funnel feature even if you have never created or analyzed a funnel before.

    Preparing your Funnel configuration

    Before starting to configure a Funnel we usually have a brainstorm session identifying the funnels on a website or app and the paths we expect users to take there. Once we have identified each step, we click through those identified pages in our website and we note the URLs for each page as the URLs will be needed when you configure a funnel.

    Setting up a Goal

    Once we have finished the planning phase it is time to log into Piwik. We start by either adding a new goal or selecting an existing goal. If you are unfamiliar with setting up goals, have a look at the Piwik Goals user guide. At the bottom of a goal form when you create or update a goal, you can configure your funnel. The UI will first explain you everything about Funnels, what they are, how they help you and which steps you need to take in order to configure it.

    Configuring Funnel steps

    We start by configuring the steps we have identified in the planning phase. Those are the steps we expect our users to take when they convert a goal or purchase something. Now we need to add a step for each page we expect users to take, each step consists of a name and a pattern.

    The name will be shown to you in the funnel reporting so think of a good name that describes each step best, for example “Product”, “Cart”, “Checkout” and “Order”.

    The pattern is needed to define when a visitor will enter this step. Here it comes in handy to have already notes for each URL from the planning phase. You can select lots of different patterns based on “URL Path”, “URL” and “URL parameter”. For example “URL starts with”, “Path ends with”, “URL contains”, “URL matches the regular expression”, and more. Most tools make this configuration unnecessarily hard because they only allow you to choose from one or two patterns (only complicated pattern like regular expressions) and they don’t let you validate whether the URL you have in mind actually matches the pattern. There are three ways to validate your step configurations.

    Funnel Configure Steps

    Validating funnel steps

    When we configure a funnel, we validate our steps in the following three ways.

    1. Via the help icon next to the step configuration

    When you click on the help icon, you will receive valuable tips about configuring steps, what “required” means and how to match popular pages. It will also show you a list of all URLs that were tracked in your Piwik in the past and match your specified pattern. For example say you specify a pattern “Path starts with /products”, then Piwik will list all URLs that were tracked in the past matching this pattern. This lets you validate whether your pattern actually matches the URLs you had in mind. It will also show you if the pattern doesn’t match any known URL which can indicate that your configuration may be wrong.

    Funnel Known URLs

    2. Via the URL validator

    Below the steps configuration you find a form field that lets you enter any URL.

    Funnel URL validation

    We recommend to enter each URL that you have noted before in the planning phase. Once you enter a URL, the configurations will be validated immediately and the result will be shown to you in the step configuration. When a step matches your specified URL, the background will become green, when a step does not match the URL, the background will be red.

    Funnel Step Validation

    If the URL does not match the expected step, simply change your step configuration and the steps will be re-validated as you change the configuration. This way you will see instantly as soon as you got the configuration right.

    What you don’t want is that either all of your steps don’t match (red background) or that several steps match a certain URL (green background). When several step match one URL, then one visitor might enter several funnel steps on just one page. This usually indicates a problem with the step configuration.

    3. Manual funnel validation

    After we have created or updated the goal (more about this soon), we always test a funnel configuration manually. This means we now open our website and click through the pages that we hand in mind and check afterwards whether the steps we took actually appear in the funnel report as expected. This is just another safety net to make sure your funnel configuration is right.

    It is really crucial to have a correct funnel configuration as otherwise the shown data in the funnel reports might not be as helpful. That’s why we focused so much on making the validation part real easy.

    Activating and saving the funnel

    Once you are happy with your configuration, it is time to activate your funnel. As soon as you activate your funnel, a report for this funnel will be generated and the links and reports for this funnel will be visible in the UI. If you are later no longer interested in the funnel, simply deactivate the funnel so it won’t appear in the reporting UI anymore.

    Save and activate funnel

    To save your funnel configuration simply click on either “Add goal” or “Update goal”. The funnel will be automatically saved whenever you update your goal.

    Goals Management

    The funnel plugin also enriches the list of goals in the Piwik goal management. At a glance you can see whether a funnel for a goal is configured and activated (green tick in the funnel column), whether a funnel is configured but not activated (grey tick in the funnel column) or whether no funnel is configured for a goal (no tick at all).

    Funnels in Manage Goals

    How to get Funnels and related features

    You can get Funnels on the Piwik Marketplace. If you want to learn more about Funnels you might be also interested in the Funnel User Guide and the Funnel FAQ.

    Similar to Funnels we also offer Users Flow which lets you visualize the flow of your users and visitors across several interactions.

  • JavaCV record video in Android

    11 janvier 2017, par wyx

    I want to record video quiet and without preview in Android. So I choice MediaRecorder but I could record only without preview but what make me crazy is that when MediaRecorder start or stop it will with a sound dee.... I try many methods about that . But I think it perhaps sth related to the OS of the mobile. So I try JavaCV because I also want to have a Live function in my app.

    But JavaCV spent me to too much time to solve some strange problems because it’s my first time to do sth about C++ src and video.

    Just compile group: 'org.bytedeco', name: 'javacv-platform', version: '1.3' as the README.md ,I even can’t build my apk.

    Error:Execution failed for task ':app:transformResourcesWithMergeJavaResForDebug'.
    > com.android.build.api.transform.TransformException: com.android.builder.packaging.DuplicateFileException: Duplicate files copied in APK org/bytedeco/javacpp/macosx-x86_64/libusb-1.0.dylib
       File1: /Users/wyx/.gradle/caches/modules-2/files-2.1/org.bytedeco.javacpp-presets/libfreenect/0.5.3-1.3/736d65a3ef042258429d8e7742128c411806b432/libfreenect-0.5.3-1.3-macosx-x86_64.jar
       File2: /Users/wyx/.gradle/caches/modules-2/files-2.1/org.bytedeco.javacpp-presets/libdc1394/2.2.4-1.3/f1498dacc46162ab68faeb8d66cf02b96fe41c61/libdc1394-2.2.4-1.3-macosx-x86_64.jar

    And then I modified it according this issuse
    use this to repalce. It can build the apk. But the can’t run.

     android {
      ..............
       packagingOptions {
           exclude 'META-INF/services/javax.annotation.processing.Processor'
           pickFirst  'META-INF/maven/org.bytedeco.javacpp-presets/opencv/pom.properties'
           pickFirst  'META-INF/maven/org.bytedeco.javacpp-presets/opencv/pom.xml'
           pickFirst  'META-INF/maven/org.bytedeco.javacpp-presets/ffmpeg/pom.properties'
           pickFirst  'META-INF/maven/org.bytedeco.javacpp-presets/ffmpeg/pom.xml'
       }
    }

    dependencies {
       compile group: 'org.bytedeco', name: 'javacv', version: '1.3'
       compile group: 'org.bytedeco.javacpp-presets', name: 'ffmpeg', version: '3.2.1-1.3', classifier: 'android-x86'
       compile group: 'org.bytedeco.javacpp-presets', name: 'ffmpeg', version: '3.2.1-1.3', classifier: 'android-arm'
       compile group: 'org.bytedeco.javacpp-presets', name: 'opencv', version: '3.1.0-1.3', classifier: 'android-x86'
       compile group: 'org.bytedeco.javacpp-presets', name: 'opencv', version: '3.1.0-1.3', classifier: 'android-arm'
    }

    My demo code VideoService which will invoke in MainActivity

    package com.fs.fs.api;

    import com.fs.fs.App;
    import com.fs.fs.utils.DateUtils;
    import com.fs.fs.utils.FileUtils;

    import org.bytedeco.javacpp.avcodec;
    import org.bytedeco.javacv.FFmpegFrameRecorder;
    import org.bytedeco.javacv.FrameRecorder;

    import java.util.Date;

    /**
    * Created by wyx on 2017/1/11.
    */
    public class VideoService {
       private FFmpegFrameRecorder mFrameRecorder;
       private String path;

       private VideoService() {
       }

       private static class SingletonHolder {
           private static final VideoService INSTANCE = new VideoService();
       }

       public static VideoService getInstance() {
           return SingletonHolder.INSTANCE;
       }

       public void startRecordVideo() {
           String fileName = String.format("%s.%s", DateUtils.date2String(new Date(), "yyyyMMdd_HHmmss"), "mp4");
           path = FileUtils.getExternalFullPath(App.getInstance(), fileName);
           mFrameRecorder = new FFmpegFrameRecorder(path, 640, 480, 1);
           mFrameRecorder.setVideoCodec(avcodec.AV_CODEC_ID_H264);
           mFrameRecorder.setVideoOption("tune", "zerolatency");
           mFrameRecorder.setVideoOption("preset", "ultrafast");
           mFrameRecorder.setVideoOption("crf", "28");
           mFrameRecorder.setVideoBitrate(300 * 1000);
           mFrameRecorder.setFormat("mp4");

           mFrameRecorder.setFrameRate(30);
           mFrameRecorder.setAudioOption("crf", "0");
           mFrameRecorder.setSampleRate(48 * 1000);
           mFrameRecorder.setAudioBitrate(960 * 1000);
           mFrameRecorder.setAudioCodec(avcodec.AV_CODEC_ID_AAC);
           try {
               mFrameRecorder.start();
           } catch (FrameRecorder.Exception e) {
               e.printStackTrace();
           }
       }

       public void stop() {
           if (mFrameRecorder != null) {
               try {
                   mFrameRecorder.stop();
                   mFrameRecorder.release();
               } catch (FrameRecorder.Exception e) {
                   e.printStackTrace();
               }
               mFrameRecorder = null;
           }
       }

    }

    MainActivity

    package com.fs.fs.activity;

    import android.app.Activity;
    import android.os.Bundle;

    import com.fs.fs.R;
    import com.fs.fs.api.VideoService;

    import static java.lang.Thread.sleep;


    public class MainActivity extends Activity {

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


           VideoService.getInstance().startRecordVideo();
           try {
               sleep(10 * 1000);
           } catch (InterruptedException e) {
               e.printStackTrace();
           }
           VideoService.getInstance().stop();
       }
    }

    Error which make me want to cry.

    E/AndroidRuntime: FATAL EXCEPTION: main
                     Process: com.fs.fs, PID: 30259
                     java.lang.NoClassDefFoundError: java.lang.ClassNotFoundException: org.bytedeco.javacpp.avutil
                         at org.bytedeco.javacpp.Loader.load(Loader.java:590)
                         at org.bytedeco.javacpp.Loader.load(Loader.java:530)
                         at org.bytedeco.javacpp.avcodec$AVPacket.<clinit>(avcodec.java:1694)
                         at org.bytedeco.javacv.FFmpegFrameRecorder.<init>(FFmpegFrameRecorder.java:149)
                         at com.fs.fs.api.VideoService.startRecordVideo(VideoService.java:34)
                         at com.fs.fs.activity.MainActivity.onCreate(MainActivity.java:75)
                         at android.app.Activity.performCreate(Activity.java:5304)
                         at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1090)
                         at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2245)
                         at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2331)
                         at android.app.ActivityThread.access$1000(ActivityThread.java:143)
                         at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1244)
                         at android.os.Handler.dispatchMessage(Handler.java:102)
                         at android.os.Looper.loop(Looper.java:136)
                         at android.app.ActivityThread.main(ActivityThread.java:5291)
                         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:849)
                         at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:665)
                         at dalvik.system.NativeStart.main(Native Method)
                      Caused by: java.lang.ClassNotFoundException: org.bytedeco.javacpp.avutil
                         at java.lang.Class.classForName(Native Method)
                         at java.lang.Class.forName(Class.java:251)
                         at org.bytedeco.javacpp.Loader.load(Loader.java:585)
                         at org.bytedeco.javacpp.Loader.load(Loader.java:530) 
                         at org.bytedeco.javacpp.avcodec$AVPacket.<clinit>(avcodec.java:1694) 
                         at org.bytedeco.javacv.FFmpegFrameRecorder.<init>(FFmpegFrameRecorder.java:149) 
                         at com.fs.fs.api.VideoService.startRecordVideo(VideoService.java:34) 
                         at com.fs.fs.activity.MainActivity.onCreate(MainActivity.java:75) 
                         at android.app.Activity.performCreate(Activity.java:5304) 
                         at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1090) 
                         at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2245) 
                         at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2331) 
                         at android.app.ActivityThread.access$1000(ActivityThread.java:143) 
                         at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1244) 
                         at android.os.Handler.dispatchMessage(Handler.java:102) 
                         at android.os.Looper.loop(Looper.java:136) 
                         at android.app.ActivityThread.main(ActivityThread.java:5291) 
                         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:849) 
                         at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:665) 
                         at dalvik.system.NativeStart.main(Native Method) 
                      Caused by: java.lang.NoClassDefFoundError: org/bytedeco/javacpp/avutil
                         at java.lang.Class.classForName(Native Method) 
                         at java.lang.Class.forName(Class.java:251) 
                         at org.bytedeco.javacpp.Loader.load(Loader.java:585) 
                         at org.bytedeco.javacpp.Loader.load(Loader.java:530) 
                         at org.bytedeco.javacpp.avcodec$AVPacket.<clinit>(avcodec.java:1694) 
                         at org.bytedeco.javacv.FFmpegFrameRecorder.<init>(FFmpegFrameRecorder.java:149) 
                         at com.fs.fs.api.VideoService.startRecordVideo(VideoService.java:34) 
                         at com.fs.fs.activity.MainActivity.onCreate(MainActivity.java:75) 
                         at android.app.Activity.performCreate(Activity.java:5304) 
                         at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1090) 
                         at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2245) 
                         at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2331) 
                         at android.app.ActivityThread.access$1000(ActivityThread.java:143) 
                         at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1244) 
                         at android.os.Handler.dispatchMessage(Handler.java:102) 
                         at android.os.Looper.loop(Looper.java:136) 
                         at android.app.ActivityThread.main(ActivityThread.java:5291) 
                         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:849) 
                         at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:665) 
                         at dalvik.system.NativeStart.main(Native Method) 
                      Caused by: java.lang.ClassNotFoundException: Didn't find class "org.bytedeco.javacpp.avutil" on path: DexPathList[[zip file "/data/app/com.fs.fs-2.apk"],nativeLibraryDirectories=[/data/app-lib/com.fs.fs-2, /vendor/lib, /system/lib, /data/datalib]]
                         at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
                         at java.lang.ClassLoader.loadClass(ClassLoader.java:497)
                         at java.lang.ClassLoader.loadClass(ClassLoader.java:457)
                         at java.lang.Class.classForName(Native Method) 
                         at java.lang.Class.forName(Class.java:251) 
                         at org.bytedeco.javacpp.Loader.load(Loader.java:585) 
                         at org.bytedeco.javacpp.Loader.load(Loader.java:530) 
                         at org.bytedeco.javacpp.avcodec$AVPacket.<clinit>(avcodec.java:1694) 
                         at org.bytedeco.javacv.FFmpegFrameRecorder.<init>(FFmpegFrameRecorder.java:149) 
                         at com.fs.fs.api.VideoService.startRecordVideo(VideoService.java:34) 
                         at com.fs.fs.activity.MainActivity.onCreate(MainActivity.java:75) 
                         at android.app.Activity.performCreate(Activity.java:5304) 
                         at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1090) 
                         at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2245) 
                         at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2331) 
                         at android.app.ActivityThread.access$1000(ActivityThread.java:143) 
                         at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1244) 
                         at android.os.Handler.dispatchMessage(Handler.java:102) 
                         at android.os.Looper.loop(Looper.java:136) 
                         at android.app.ActivityThread.main(ActivityThread.java:5291) 
                         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:849) 
                         at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:665) 
                         at dalvik.system.NativeStart.main(Native Method) 
    </init></clinit></init></clinit></init></clinit></init></clinit>

    So I want to know a comfortable method to achieve my goal : recode video quiet and without preview. And Live real time ?

    I found ffmpeg4android is a prefect library to run ffmpeg command. I just use it to compress videos from MediaRecorder But I don’t how to do use it to achieve my goal.

  • convert MOV to mp4 using transcode

    3 janvier 2017, par koem

    I want to convert a MOV from my Casio cam to mp4 using transcode. Why transcode ? Because I also want to deshake the video in the same step.

    When I use

    ffmpeg -i in.MOV out.mp4

    it works. When using

    transcode -J stabilize -i in.MOV

    or

    transcode -J transform -i in.MOV -y ffmpeg -F mpeg4 -o out.mp4

    I get hundreds of these errors :

    [ffmpeg_audio] Error: avcodec_open2 failed
    [adpcm_ima_wav @ 0x1f7f180] Only 4-bit ADPCM IMA WAV files are supported

    This looks to me as if transcode uses ffmpeg internally.

    I could use ffmpeg to make it mp4 first and then use transcode to stabilize the video, but then it would be re-encoded twice which I would like to avoid.

    This is what mplayer says about my MOV file :

    MPlayer2 2.0-701-gd4c5b7f-2ubuntu2 (C) 2000-2012 MPlayer Team
    Cannot open file '/home/koem/.mplayer/input.conf': No such file or directory
    Failed to open /home/koem/.mplayer/input.conf.
    Cannot open file '/etc/mplayer/input.conf': No such file or directory
    Failed to open /etc/mplayer/input.conf.

    Playing 1-original.MOV.
    Detected file format: QuickTime / MOV (libavformat)
    [lavf] stream 0: video (h264), -vid 0
    [lavf] stream 1: audio (adpcm_ima_wav), -aid 0, -alang eng
    Clip info:
    major_brand: qt  
    minor_version: 537921536
    compatible_brands: qt  caqv
    creation_time: 2017-01-02 23:31:38
    Load subtitles in .
    Failed to open VDPAU backend libvdpau_i965.so: cannot open shared object file: No such file or directory
    [vdpau] Error when calling vdp_device_create_x11: 1
    [ass] auto-open
    Selected video codec: H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10 [libavcodec]
    Selected audio codec: ADPCM IMA WAV [libavcodec]
    AUDIO: 44100 Hz, 2 ch, s16le, 352.8 kbit/25.00% (ratio: 44100->176400)
    AO: [pulse] 44100Hz 2ch s16le (2 bytes per sample)
    Starting playback...
    VIDEO:  1920x1080  29.970 fps  15940.0 kbps (1992.5 kB/s)
    VO: [xv] 1920x1080 => 1920x1080 Planar YV12
    Colorspace details not fully supported by selected vo.
    A:   1.1 V:   1.1 A-V: -0.000 ct:  0.000   0/  0 16%  8%  1.6% 0 0

    Exiting... (Quit)

    How can I make it work with transcode without using ffmpeg first ?