Recherche avancée

Médias (91)

Autres articles (62)

  • Des sites réalisés avec MediaSPIP

    2 mai 2011, par

    Cette page présente quelques-uns des sites fonctionnant sous MediaSPIP.
    Vous pouvez bien entendu ajouter le votre grâce au formulaire en bas de page.

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

  • List of compatible distributions

    26 avril 2011, par

    The table below is the list of Linux distributions compatible with the automated installation script of MediaSPIP. Distribution nameVersion nameVersion number Debian Squeeze 6.x.x Debian Weezy 7.x.x Debian Jessie 8.x.x Ubuntu The Precise Pangolin 12.04 LTS Ubuntu The Trusty Tahr 14.04
    If you want to help us improve this list, you can provide us access to a machine whose distribution is not mentioned above or send the necessary fixes to add (...)

Sur d’autres sites (11189)

  • ERROR : libvpx decoder version must be >=0.9.1 [install ffmpeg in CentOS 6.3]

    4 septembre 2017, par Hu Le

    I want to install ffmpeg in CentOS 6.3
    It needs to install libvpx.

    I install libvpx before. Its version is 0.9.7.

    When I install ffmpeg, it indicates :

    [root@hostname ffmpeg]# PKG_CONFIG_PATH="$HOME/ffmpeg_build/lib/pkgconfig" ./configure —prefix="$HOME/ffmpeg_build" —extra-cflags="-I$HOME/ffmpeg_build/include" —extra-ldflags="-L$HOME/ffmpeg_build/lib -ldl" —bindir="$HOME/bin" —pkg-config-flags="—static" —enable-gpl —enable-nonfree —enable-libfdk_aac —enable-libfreetype —enable-libmp3lame —enable-libopus —enable-libvorbis —enable-libvpx —enable-libx264 —enable-libx265

    ERROR: libvpx decoder version must be >=0.9.1

    If you think to configure made a mistake, make sure you are using the latest
    version from Git. If the latest version fails, report the problem to the
    ffmpeg-user@ffmpeg.org mailing list or IRC #ffmpeg on irc.freenode.net.
    Include the log file "ffbuild/config.log" produced by configuring as this will help
    solve the problem.

    Now my rpm and yum is :

    [root@hostname ]# yum list libvpx

    Loaded plugins : fastestmirror

    Loading mirror speeds from cached hostfile

    • nux-dextop : li.nux.ro

    • rpmforge : mirrors.neusoft.edu.cn

    Installed Packages

    libvpx.x86_64 1.3.0-5.el6_5 installed

    Available Packages

    libvpx.i686 0.9.7.1-3.el6.nux nux-dextop

    I want to remove libvpx.i686 in this way :

    [root@hostname ffmpeg]# yum remove libvpx.i686

    Loaded plugins : fastestmirror

    Setting up Remove Process

    No Match for argument : libvpx.i686

    Loading mirror speeds from cached hostfile

    • nux-dextop : li.nux.ro

    • rpmforge : mirrors.neusoft.edu.cn

    Package(s) libvpx.i686 available, but not installed.

    No Packages marked for removal

    How to remove libvpx.i686 completely ?

  • FFmpeg in Java Android

    14 juin 2021, par Jomy

    I am currently trying to get a library to work so that I can convert a wav file to mp3.

    


    The library I'm using is AndroidAudioConverter.

    


    I tried adding this to my Application class :

    


    public class App extends application {
    @Override
    public void onCreate() {
        AndroidAudioConverter.load(this, new ILoadCallback() {
            @Override
            public void onSuccess() {
                android.util.Log.d(TAG, "FFmpeg is supported by the device. Succesfully loaded AndroidAudioConverter library.");
            }
            @Override
            public void onFailure(Exception error) {
                // FFmpeg is not supported by device
                Log.w(TAG, "FFmpeg is not supported by this device.", error);
            }
        });
    }
}


    


    Which gave me the following error :

    


    W/Application: FFmpeg is not supported by this device.
    java.lang.Exception: Failed to loaded FFmpeg lib
        at cafe.adriel.androidaudioconverter.AndroidAudioConverter$1.onFailure(AndroidAudioConverter.java:50)
        at com.github.hiteshsondhi88.libffmpeg.FFmpegLoadLibraryAsyncTask.onPostExecute(FFmpegLoadLibraryAsyncTask.java:54)
        at com.github.hiteshsondhi88.libffmpeg.FFmpegLoadLibraryAsyncTask.onPostExecute(FFmpegLoadLibraryAsyncTask.java:8)
        at android.os.AsyncTask.finish(AsyncTask.java:771)
        at android.os.AsyncTask.access$900(AsyncTask.java:199)
        at android.os.AsyncTask$InternalHandler.handleMessage(AsyncTask.java:788)
        at android.os.Handler.dispatchMessage(Handler.java:106)
        at android.os.Looper.loop(Looper.java:223)
        at android.app.ActivityThread.main(ActivityThread.java:7656)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947)


    


    I looked into the AndroidAudioConverter.java file of the library and found how the load method works. The AndroidAudioConverter library uses ffmpeg-android-java as a dependency. It uses the ffmpeg-android-java library inside the load method like so :

    


    try {
            FFmpeg.getInstance(context).loadBinary(new FFmpegLoadBinaryResponseHandler() {
                        @Override
                        public void onStart() {

                        }

                        @Override
                        public void onSuccess() {
                            loaded = true;
                            callback.onSuccess();
                        }

                        @Override
                        public void onFailure() {
                            loaded = false;
                            callback.onFailure(new Exception("Failed to loaded FFmpeg lib"));
                        }

                        @Override
                        public void onFinish() {

                        }
                    });
        } catch (Exception e){
            loaded = false;
            callback.onFailure(e);
        }
    }


    


    So I tried copying this in my code to see what it would give. I replaced catch (exception e) {...} with catch(exception e) {e.printStackTrace();

    


    After running I got this error :

    


    E/FFmpeg: issue in coping binary from assets to data. 
    java.io.FileNotFoundException: x86/ffmpeg
        at android.content.res.AssetManager.nativeOpenAsset(Native Method)
        at android.content.res.AssetManager.open(AssetManager.java:874)
        at android.content.res.AssetManager.open(AssetManager.java:851)
        at com.github.hiteshsondhi88.libffmpeg.FileUtils.copyBinaryFromAssetsToData(FileUtils.java:29)
        at com.github.hiteshsondhi88.libffmpeg.FFmpegLoadLibraryAsyncTask.doInBackground(FFmpegLoadLibraryAsyncTask.java:27)
        at com.github.hiteshsondhi88.libffmpeg.FFmpegLoadLibraryAsyncTask.doInBackground(FFmpegLoadLibraryAsyncTask.java:8)
        at android.os.AsyncTask$3.call(AsyncTask.java:394)
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)
        at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:305)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
        at java.lang.Thread.run(Thread.java:923)



    


    So what I'm guessing here is that the FFmpeg library is not installed since the file cannot be found ?

    


    I dug some deeper and looked into the FFmpeg.java file inside the ffmpeg-android-java library and found the loadBinary method inside the FFmpeg class. It uses that FFmpegLoadLibraryAsyncTask and there I found that the FFmpeg file is defined like this : File ffmpegFile = new File(FileUtils.getFFmpeg(context)); and inside FileUtils.java :

    


        static final String ffmpegFileName = "ffmpeg";

    static File getFilesDirectory(Context context) {
        // creates files directory under data/data/package name
        return context.getFilesDir();
    }

    static String getFFmpeg(Context context) {
        return getFilesDirectory(context).getAbsolutePath() + File.separator + FileUtils.ffmpegFileName;
    }


    


    So I ran : System.out.println(this.getFilesDir() + File.separator + "ffmpeg");.
And got as output : I/System.out: /data/user/0/be.ksa.voetje/files/ffmpeg.
A simple System.out.println(new File(this.getFilesDir() + File.separator + "ffmpeg").exists()); tells me that this file indeed does not exist.

    


    And this is where I'm at. I have no experience with FFmpeg, so forgive me if I'm looking over something obvious.

    


    How can I fix this problem ?

    


  • Dealing with problems in FLAC audio files with ffmpeg

    15 janvier 2020, par Seamus

    I have gotten a set of FLAC (audio) files from a friend. I copied them to my Sonos music library, and got set to enjoy a nice album. Unfortunately, Sonos would not play the files. As a result I have been getting to know ffmpeg.

    Sonos’ complaint with the FLAC files was that it was "encoded at an unsupported sample rate". With rolling eyes and shaking head, I note that the free VLC media player happily plays these files, but the product I’ve paid for (Sonos) - does not. But I digress...

    ffprobe revealed that the FLAC files contain both an Audio channel and a Video channel :

    $ ffprobe -hide_banner  -show_streams "/path/to/Myaudio.flac"


       Duration: 00:02:23.17, start: 0.000000, bitrate: 6176 kb/s  
       Stream #0:0: Audio: flac, 176400 Hz, stereo, s32 (24 bit)  
       Stream #0:1: Video: mjpeg (Progressive), yuvj444p(pc, bt470bg/unknown/unknown), 450x446 [SAR 72:72 DAR 225:223], 90k tbr, 90k tbn, 90k tbc (attached pic)  
       Metadata:  
         comment         : Cover (front)  

    Cool ! I guess this is how some audio players are able to display the ’album artwork’ when they play a song ? Note also that the Audio stream is reported at 176400 Hz ! Apparently I’m out of touch ; I thought that 44.1khz sampling rate effectively removed all of the ’sampling artifacts’ we could hear. Anyway, I learned that Sonos would support a max of 48kHz sampling rate, and this (the 176.4kHz rate) is what Sonos was unhappy about. I used ffmpeg to ’dumb it down’ for them :

    $ ffmpeg -i "/path/to/Myaudio.flac" -sample_fmt s32 -ar 48000 "/path/to/Myaudio48K.flac"

    This seemed to work - at least I got a FLAC file that Sonos would play. However, I also got what looks like a warning of some sort :

    [swscaler @ 0x108e0d000] deprecated pixel format used, make sure you did set range correctly
    [flac @ 0x7feefd812a00] Frame rate very high for a muxer not efficiently supporting it.
    Please consider specifying a lower framerate, a different muxer or -vsync 2

    A bit more research turned up this answer which I don’t quite understand, and then in a comment says, "not to worry" - at least wrt the swscaler part of the warning.

    And that (finally) brings me to my questions :

    1.a. What framerate, muxer & other specifications make a graphic compatible with a majority of programs that use the graphic ?

    1.b. How should I use ffmpeg to modify the Video channel to set these specifications (ref. Q 1.a.) ?

    2.a. How do I remove the Video channel from the .flac audio file ?

    2.b. How do I add a Video channel into a .flac file ?

    EDIT :

    I asked the above (4) questions after failing to accomplish a ’direct’ conversion (a single ffmpeg command) from FLAC at 176.4 kHz to ALAC (.m4a) at 48 kHz (max supported by Sonos). I reasoned that an ’incremental’ approach through a series of conversions might get me there. With the advantage of hindsight, I now see I should have posted my original failed direct conversion incantation... we live and learn.

    That said, the accepted answer below meets my final objective to convert a FLAC file encoded at 176.4kHz to an ALAC (.m4a) at 48kHz, and preserve the cover art/video channel.