Recherche avancée

Médias (16)

Mot : - Tags -/mp3

Autres articles (79)

  • Gestion générale des documents

    13 mai 2011, par

    MédiaSPIP ne modifie jamais le document original mis en ligne.
    Pour chaque document mis en ligne il effectue deux opérations successives : la création d’une version supplémentaire qui peut être facilement consultée en ligne tout en laissant l’original téléchargeable dans le cas où le document original ne peut être lu dans un navigateur Internet ; la récupération des métadonnées du document original pour illustrer textuellement le fichier ;
    Les tableaux ci-dessous expliquent ce que peut faire MédiaSPIP (...)

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

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

Sur d’autres sites (12261)

  • Compress video with ffmpeg4android library

    30 mars 2015, par Huy Tower

    I tried to follow ffmpeg4android library, and I get the problem when compressing the video, as the Log image below.

    I use intent to transfer to Compressing Media class,

    Intent intent = new Intent(this, CompressingMedia.class);
    intent.putExtra("file_path", mLlItems.get(0).getPath());
    startActivity(intent);

    This is the class was transfered to :

    public class CompressingMedia extends BaseWizard {

    @Override
    public void onCreate(Bundle savedInstanceState) {
       super.onCreate(savedInstanceState);

       Intent intent = getIntent();

       Log.d(Prefs.TAG, "path " + intent.getExtras().getString("file_path"));
       // /storage/emulated/0/DCIM/Camera/VID_20140312_090612.mp4

       String command = "ffmpeg -y -i " + intent.getExtras().getString("file_path") +
               " -strict experimental -s 320x240 -r 15 -aspect 3:4 -ab 12288 -vcodec mpeg4 -b 2097152 -sample_fmt s16 /sdcard/out.mp4";

       // if you want to change the default work location (/sdcard/videokit/) use the uncomment the below method.
       // It must be defined before calling the copyLicenseAndDemoFilesFromAssetsToSDIfNeeded method,
       // in order for this method to copy the assets to the correct location.
               //      setWorkingFolder("/sdcard/videokit/");

       // this will copy the license file and the demo video file.
       // to the videokit work folder location.
       // without the license file the library will not work.
       copyLicenseAndDemoFilesFromAssetsToSDIfNeeded();

       commandStr = command;
       setCommand(commandStr);

       runTranscoing();
       }
    }

    Although I received the notification Transcoding Successfully, but it looks like the capacity of file after compressing is always be 0. (the log in the bottom of images)

    I don’t know the result as image below is good or not, I can not get the expected result - The video was compressed totally successfully.

    Someone know why after compressing the file is always be 0, please tell me. Thanks.

    This is the Log Cat :

    03-13 14:49:45.655 : I/ActivityManager(6065) : Timeline :
    Activity_launch_request id:app.cloudstringers time:38212359

    03-13 14:49:45.665 : V/Home(6065) : Global ID is 000400010007 ;Sell is 3

    03-13 14:49:45.770 : D/ffmpeg4android(6065) : path
    /storage/emulated/0/videokit/out.mp4

    03-13 14:49:45.770 : I/ffmpeg4android(6065) : workingFolderPath :
    /sdcard/videokit/

    03-13 14:49:45.775 : D/ffmpeg4android(6065) : Working directory exists,
    not coping assests (license file and demo videos)

    03-13 14:49:45.785 : D/ffmpeg4android(6065) : output directory exists.

    03-13 14:49:45.785 : I/ffmpeg4android(6065) : Command is set

    03-13 14:49:45.785 : I/ffmpeg4android(6065) : set
    remoteNotificationIconId : 0

    03-13 14:49:45.785 : D/ffmpeg4android(6065) : Client Cannot unbind -
    service not bound

    03-13 14:49:45.785 : D/ffmpeg4android(6065) : Client stopService()

    03-13 14:49:45.790 : W/ContextImpl(6065) : Implicit intents with
    startService are not safe : Intent
    act=com.netcompss.ffmpeg4android.FFMpegRemoteServiceBridge

    android.content.ContextWrapper.stopService:499
    com.netcompss.ffmpeg4android_client.BaseWizard.stopService:451
    com.netcompss.ffmpeg4android_client.BaseWizard.runTranscoing:285

    03-13 14:49:45.795 : I/ffmpeg4android(6065) :
     !!!!!!!!!!!!!!!!!!services.size() : 1

    03-13 14:49:45.795 : I/ffmpeg4android(6065) : putting Base categoty

    03-13 14:49:45.810 : D/ffmpeg4android(6065) : started :
    com.netcompss.ffmpeg4android.FFMpegRemoteServiceBridge

    03-13 14:49:45.810 : D/ffmpeg4android(6065) : Client startService()

    03-13 14:49:45.810 : D/ffmpeg4android(6065) : bindService() called

    03-13 14:49:45.815 : W/ContextImpl(6065) : Implicit intents with
    startService are not safe : Intent
    act=com.netcompss.ffmpeg4android.FFMpegRemoteServiceBridge

    android.content.ContextWrapper.bindService:517
    com.netcompss.ffmpeg4android_client.BaseWizard.bindService:462
    com.netcompss.ffmpeg4android_client.BaseWizard.runTranscoing:288

    03-13 14:49:45.820 : D/ffmpeg4android(6065) : Client bindService()

    03-13 14:49:45.935 : I/ffmpeg4android(6616) : =======service onCreate() :
    Stopping forground (to overcome 2.3.x bug)

    03-13 14:49:45.935 : I/ffmpeg4android(6616) : =======service
    onBind()=======

    03-13 14:49:45.940 : I/ffmpeg4android(6616) : ===onStartCommand called

    03-13 14:49:45.940 : I/ffmpeg4android(6616) : ===onStartCommand cat :
    Base

    03-13 14:49:45.940 : D/ffmpeg4android(6616) : onStartCommand,
    START_STICKY, base Command

    03-13 14:49:45.955 : I/ffmpeg4android(6616) : get
    remoteNotificationIconId : 0

    03-13 14:49:45.955 : I/ffmpeg4android(6616) : notifIcon is set

    03-13 14:49:45.955 : I/ffmpeg4android(6616) : Start RemoteService with
    notification id : 5326

    03-13 14:49:45.965 : I/ffmpeg4android(6616) : Run called.

    03-13 14:49:45.965 : D/ffmpeg4android(6616) : Sleeping, waiting for
    command

    03-13 14:49:45.970 : D/ffmpeg4android(6065) : Client
    onServiceConnected()

    03-13 14:49:45.970 : I/ffmpeg4android(6065) : invokeService called

    03-13 14:49:45.970 : I/Videokit(6065) : licenseCheck in path :
    /sdcard/videokit

    03-13 14:49:45.970 : I/Videokit(6065) : isLicExistsComplex...

    03-13 14:49:45.970 : I/Videokit(6065) : trying to open
    /sdcard/videokit/ffmpeglicense.lic

    03-13 14:49:45.970 : I/Videokit(6065) : license file found...

    03-13 14:49:45.970 : I/Videokit(6065) : time decoded : 1394535283

    03-13 14:49:45.970 : I/Videokit(6065) : timeStrDec 1394535283 is a valid
    number.

    03-13 14:49:45.970 : I/Videokit(6065) : time diff : 161702

    03-13 14:49:45.970 : I/Videokit(6065) : You used 1 of your 15 trial
    days.

    03-13 14:49:45.970 : I/ffmpeg4android(6065) : setting remote
    notification info

    03-13 14:49:45.970 : D/ffmpeg4android(6616) : command items num : 21

    03-13 14:49:45.970 : D/ffmpeg4android(6616) : command : ffmpeg -y -i
    /storage/emulated/0/videokit/out.mp4 -strict experimental -s 320x240
    -r 15 -aspect 3:4 -ab 12288 -vcodec mpeg4 -b 2097152 -sample_fmt s16 /sdcard/out.mp4

    03-13 14:49:45.970 : D/ffmpeg4android(6616) : workingFolder from remote :
    /sdcard/videokit

    03-13 14:49:45.970 : D/ffmpeg4android(6065) : deleteing :
    /sdcard/videokit/vk.log isdeleted : true

    03-13 14:49:45.975 : D/ffmpeg4android(6065) : deleteing :
    /sdcard/videokit/ffmpeg4android.log isdeleted : false

    03-13 14:49:45.975 : D/ffmpeg4android(6065) : deleteing :
    /sdcard/videokit/videokit.log isdeleted : true

    03-13 14:49:45.980 : D/ffmpeg4android(6065) : Client invokeService()

    03-13 14:49:45.980 : D/ffmpeg4android(6065) : Acquire wake lock

    03-13 14:49:46.265 : D/ffmpeg4android(6616) : Sleeping, waiting for
    command

    03-13 14:49:46.295 : D/ffmpeg4android(6065) : TranscodeBackground
    doInBackground started

    03-13 14:49:46.295 : I/ffmpeg4android(6616) : =======remote service
    runTranscoding ======

    03-13 14:49:46.340 : V/HomeAsync(6065) : TOTAL_SPACE is
    1 ;AVAILABLE_SPACE is 0.451

    03-13 14:49:46.345 : I/ActivityManager(6065) : Timeline : Activity_idle
    id : android.os.BinderProxy@423deed8 time:38213045

    03-13 14:49:46.345 : I/ActivityManager(6065) : Timeline : Activity_idle
    id : android.os.BinderProxy@420323a0 time:38213045

    03-13 14:49:46.565 : D/dalvikvm(6616) : Trying to load lib
    /data/app-lib/app.cloudstringers-2/libvideokit.so 0x41b285f0

    03-13 14:49:46.570 : D/dalvikvm(6616) : Added shared lib
    /data/app-lib/app.cloudstringers-2/libvideokit.so 0x41b285f0

    03-13 14:49:46.570 : I/Videokit(6616) : Loading native library compiled
    at 21:59:53 Oct 23 2013

    03-13 14:49:46.575 : I/ffmpeg4android(6616) : ===============Running
    command from thread path : /sdcard/videokit

    03-13 14:49:46.575 : I/Videokit(6616) : vk ffmpeg sdcardPath :
    /sdcard/videokit

    03-13 14:49:46.575 : I/Videokit(6616) : licenseCheck in path :
    /sdcard/videokit

    03-13 14:49:46.575 : I/Videokit(6616) : isLicExistsComplex...

    03-13 14:49:46.575 : I/Videokit(6616) : trying to open
    /sdcard/videokit/ffmpeglicense.lic

    03-13 14:49:46.575 : I/Videokit(6616) : license file found...

    03-13 14:49:46.575 : I/ffmpeg4android(6616) :
    =======ProgressBackgroundRemote doInBackground=========

    03-13 14:49:46.575 : I/Videokit(6616) : time decoded : 1394535283

    03-13 14:49:46.575 : I/Videokit(6616) : timeStrDec 1394535283 is a valid
    number.

    03-13 14:49:46.575 : I/Videokit(6616) : time diff : 161703

    03-13 14:49:46.575 : I/Videokit(6616) : You used 1 of your 15 trial
    days.

    03-13 14:49:46.575 : D/Videokit(6616) : license check rc : 0

    03-13 14:49:46.575 : D/Videokit(6616) : run() called verion 2.0

    03-13 14:49:46.575 : D/Videokit(6616) : run passing off to main()

    03-13 14:49:46.800 : D/ffmpeg4android(6065) : onServiceDisconnected

    03-13 14:49:48.640 : I/ffmpeg4android(6065) : Got real duration :
    00:00:07.78

    03-13 14:49:48.640 : I/ffmpeg4android(6065) : ==== getting
    currentVkLogSize from VK

    03-13 14:49:48.640 : D/ffmpeg4android(6065) : currentVkLogSize : 5751

    03-13 14:49:48.645 : I/ffmpeg4android(6065) : No ffmpeg4android_log
    file, using vk log

    03-13 14:49:48.645 : I/line(6065) : _rate, rate, width or height

    03-13 14:49:48.650 : I/line(6065) : Statistics : 0 seeks, 0 writeouts

    03-13 14:49:48.650 : I/line(6065) : Statistics : 72873 bytes read, 2
    seeks

    03-13 14:49:48.650 : D/ffmpeg4android(6065) : currentTimeStr : exit

    03-13 14:49:48.650 : D/ffmpeg4android(6065) : ============Found one of
    the exit tokens in the log============

    03-13 14:49:48.650 : I/ffmpeg4android(6065) : onProgressUpdate : 100

    03-13 14:49:48.650 : D/ffmpeg4android(6065) : Releasing wake lock

    03-13 14:49:48.650 : D/ffmpeg4android(6065) : TranscodeBackground
    onPostExecute

    03-13 14:49:48.700 : D/ffmpeg4android(6065) : /sdcard/videokit/null
    length in bytes : 0

    03-13 14:49:48.700 : D/ffmpeg4android(6065) : showNotifications

    03-13 14:49:48.700 : W/ffmpeg4android(6065) : output file is not set use
    the setOutputFilePath method to set the full output file path

    03-13 14:49:48.705 : I/ffmpeg4android(6065) : FFMPEG finished.

    03-13 14:49:48.710 : D/ffmpeg4android(6065) : releaseService()

    03-13 14:49:48.710 : D/ffmpeg4android(6065) : Client stopService()

    03-13 14:49:48.710 : W/ContextImpl(6065) : Implicit intents with
    startService are not safe : Intent
    act=com.netcompss.ffmpeg4android.FFMpegRemoteServiceBridge

    android.content.ContextWrapper.stopService:499
    com.netcompss.ffmpeg4android_client.BaseWizard.stopService:451
    com.netcompss.ffmpeg4android_client.BaseWizard.handleServiceFinished:513

  • Decoding VP8 On A Sega Dreamcast

    20 février 2011, par Multimedia Mike — Sega Dreamcast, VP8

    I got Google’s libvpx VP8 codec library to compile and run on the Sega Dreamcast with its Hitachi/Renesas SH-4 200 MHz CPU. So give Google/On2 their due credit for writing portable software. I’m not sure how best to illustrate this so please accept this still photo depicting my testbench Dreamcast console driving video to my monitor :



    Why ? Because I wanted to try my hand at porting some existing software to this console and because I tend to be most comfortable working with assorted multimedia software components. This seemed like it would be a good exercise.

    You may have observed that the video is blue. Shortest, simplest answer : Pure laziness. Short, technical answer : Path of least resistance for getting through this exercise. Longer answer follows.

    Update : I did eventually realize that the Dreamcast can work with YUV textures. Read more in my followup post.

    Process and Pitfalls
    libvpx comes with a number of little utilities including decode_to_md5.c. The first order of business was porting over enough source files to make the VP8 decoder compile along with the MD5 testbench utility.

    Again, I used the KallistiOS (KOS) console RTOS (aside : I’m still working to get modern Linux kernels compiled for the Dreamcast). I started by configuring and compiling libvpx on a regular desktop Linux system. From there, I was able to modify a number of configuration options to make the build more amenable to the embedded RTOS.

    I had to create a few shim header files that mapped various functions related to threading and synchronization to their KOS equivalents. For example, KOS has a threading library cleverly named kthreads which is mostly compatible with the more common pthread library functions. KOS apparently also predates stdint.h, so I had to contrive a file with those basic types.

    So I got everything compiled and then uploaded the binary along with a small VP8 IVF test vector. Imagine my surprise when an MD5 sum came out of the serial console. Further, visualize my utter speechlessness when I noticed that the MD5 sum matched what my desktop platform produced. It worked !

    Almost. When I tried to decode all frames in a test vector, the program would invariably crash. The problem was that the file that manages motion compensation (reconinter.c) needs to define MUST_BE_ALIGNED which compiles byte-wise block copy functions. This is necessary for CPUs like the SH-4 which can’t load unaligned data. Apparently, even ARM CPUs these days can handle unaligned memory accesses which is why this isn’t a configure-time option.

    Showing The Work
    I completed the first testbench application which ran the MD5 test on all 17 official IVF test vectors. The SH-4/Dreamcast version aces the whole suite.

    However, this is a video game console, so I had better be able to show the decoded video. The Dreamcast is strictly RGB— forget about displaying YUV data directly. I could take the performance hit to convert YUV -> RGB. Or, I could just display the intensity information (Y plane) rendered on a random color scale (I chose blue) on an RGB565 texture (the DC’s graphics hardware can also do paletted textures but those need to be rearranged/twiddled/swizzled).

    Results
    So, can the Dreamcast decode VP8 video in realtime ? Sure ! Well, I really need to qualify. In the test depicted in the picture, it seems to be realtime (though I wasn’t enforcing proper frame timings, just decoding and displaying as quickly as possible). Obviously, I wasn’t bothering to properly convert YUV -> RGB. Plus, that Big Buck Bunny test vector clip is only 176x144. Obviously, no audio decoding either.

    So, realtime playback, with a little fine print.

    On the plus side, it’s trivial to get the Dreamcast video hardware to upscale that little blue image to fullscreen.

    I was able to tally the total milliseconds’ worth of wall clock time required to decode the 17 VP8 test vectors. As you can probably work out from this list, when I try to play a 320x240 video, things start to break down.

    1. Processed 29 176x144 frames in 987 milliseconds.
    2. Processed 49 176x144 frames in 1809 milliseconds.
    3. Processed 49 176x144 frames in 704 milliseconds.
    4. Processed 29 176x144 frames in 255 milliseconds.
    5. Processed 49 176x144 frames in 339 milliseconds.
    6. Processed 48 175x143 frames in 2446 milliseconds.
    7. Processed 29 176x144 frames in 432 milliseconds.
    8. Processed 2 1432x888 frames in 2060 milliseconds.
    9. Processed 49 176x144 frames in 1884 milliseconds.
    10. Processed 57 320x240 frames in 5792 milliseconds.
    11. Processed 29 176x144 frames in 989 milliseconds.
    12. Processed 29 176x144 frames in 740 milliseconds.
    13. Processed 29 176x144 frames in 839 milliseconds.
    14. Processed 49 175x143 frames in 2849 milliseconds.
    15. Processed 260 320x240 frames in 29719 milliseconds.
    16. Processed 29 176x144 frames in 962 milliseconds.
    17. Processed 29 176x144 frames in 933 milliseconds.
  • MediaTomb, doesnt execute ffmpeg

    19 janvier 2014, par Александър Добрев

    Im trying to setup MediaTomb on home machine to watch movies on TV via DLNA.Last 2 days, i tried several configs for MediaTomb, a lot of codec variations for ffmpeg but nothing.
    The problem is that i try to play HD movie(mkv file), movie is fine except that doesnt have any sound.

    Strange here is that when i play movie, ffmpeg isnt running as process in htop. Any ideas will be good.

    This is my current config of Mediatomb.

    http://pastebin.com/L1cPb2c8