Recherche avancée

Médias (91)

Autres articles (14)

  • Keeping control of your media in your hands

    13 avril 2011, par

    The vocabulary used on this site and around MediaSPIP in general, aims to avoid reference to Web 2.0 and the companies that profit from media-sharing.
    While using MediaSPIP, you are invited to avoid using words like "Brand", "Cloud" and "Market".
    MediaSPIP is designed to facilitate the sharing of creative media online, while allowing authors to retain complete control of their work.
    MediaSPIP aims to be accessible to as many people as possible and development is based on expanding the (...)

  • Other interesting software

    13 avril 2011, par

    We don’t claim to be the only ones doing what we do ... and especially not to assert claims to be the best either ... What we do, we just try to do it well and getting better ...
    The following list represents softwares that tend to be more or less as MediaSPIP or that MediaSPIP tries more or less to do the same, whatever ...
    We don’t know them, we didn’t try them, but you can take a peek.
    Videopress
    Website : http://videopress.com/
    License : GNU/GPL v2
    Source code : (...)

  • D’autres logiciels intéressants

    12 avril 2011, par

    On ne revendique pas d’être les seuls à faire ce que l’on fait ... et on ne revendique surtout pas d’être les meilleurs non plus ... Ce que l’on fait, on essaie juste de le faire bien, et de mieux en mieux...
    La liste suivante correspond à des logiciels qui tendent peu ou prou à faire comme MediaSPIP ou que MediaSPIP tente peu ou prou à faire pareil, peu importe ...
    On ne les connais pas, on ne les a pas essayé, mais vous pouvez peut être y jeter un coup d’oeil.
    Videopress
    Site Internet : (...)

Sur d’autres sites (4775)

  • Matplotlib - Why is my saved animation video blank ?

    4 juillet 2022, par Pat X

    This should be pretty simple but I just don't know.

    



    A newbie to Python and FFmpeg. Just trying to save a test video from ArtistAnimation but got blank video.

    



    Before I tried to produce the video, I can see the animation by plt.show() (without "matplotlib.use("Agg")" ). I have already installed FFmpeg in Anaconda as well.

    



    To ensure my FFmpeg is functioning, I used the code from matplotlib example and produced a video that looks perfect. (I guess this means my FFmpeg will work fine from now on ?)

    



    Then, I only changed the figure to my version. Having compared the figure part, I didn't see anything wrong obviously. But in the saved video of my version, it's blank.

    



    import matplotlib
matplotlib.use("Agg")
import matplotlib.pyplot as plt
import matplotlib.animation as ani
import numpy as np
import pandas as pd


fig = plt.figure()
ims = []
for i in range(10):
    ax1 = plt.subplot2grid((2, 2), (0, 0), colspan=2, rowspan=2)
    data = np.random.normal(0, 1, i+1)
    pd.DataFrame(data).plot(kind='bar', ax=ax1)
    ims.append([ax1])



# Set up formatting for the movie files
Writer = ani.writers['ffmpeg']
writer = Writer(fps=15, metadata=dict(artist='Me'), bitrate=1800)

anim = ani.ArtistAnimation(fig, ims, interval=500, repeat_delay=3000, blit=True)
anim.save('textmovie.mp4', writer=writer)
plt.show()


    


  • play m3u8 video from laravel storage

    21 janvier 2020, par Jennsen

    My question is the same as how to play m3u8 videos from laravel storage but this one did not get answers.

    If I play the video from the public folder it does it without problems.

    but if I want to play it from storage this doesn’t work.

       public function watch(Request $request, Episode $episode)
    {

       $video = Storage::disk('videos')->get($episode->video);

       return new Response($video, 200, ['Content-Type' => 'application/x-mpegURL', 'isHls' => true]);
    }

    this is the definition of my disk in config/filesystems.php

     'videos' => [
           'driver' => 'local',
           'root' => storage_path('app/videos'),
           'url' => env('APP_URL').'/storage',
           'visibility' => 'public',
       ],

    this is my conversion code (job)

        */
    public function handle()
    {
       $path = $this->episode->id . '.m3u8';
       $lowBitrate  = (new X264 ('aac'))->setKiloBitrate(500)->setVideoCodec('libx264');
       $midBitrate  = (new X264 ('aac'))->setKiloBitrate(1000)->setVideoCodec('libx264');
       $highBitrate = (new X264 ('aac'))->setKiloBitrate(3000)->setVideoCodec('libx264');

       FFMpeg::fromDisk('tmp')->open($this->episode->video)
           ->exportForHLS()
           ->dontSortFormats()
           ->setSegmentLength(10)
           ->toDisk('local')
           ->addFormat($lowBitrate, function($media) {
               $media->addFilter(function ($filters) {
                   $filters->resize(new \FFMpeg\Coordinate\Dimension(640, 480));
               });
           })
           ->addFormat($midBitrate, function($media) {
               $media->addFilter(function ($filters) {
                   $filters->resize(new \FFMpeg\Coordinate\Dimension(1280, 960));
               });
           })
           ->addFormat($highBitrate, function($media) {
               $media->addFilter(function ($filters) {
                   $filters->resize(new \FFMpeg\Coordinate\Dimension(1280, 960));
               });
           })
           ->save($path);

       $this->episode->update([
           'video' => $path,
       ]);

       FFMpeg::cleanupTemporaryFiles();

    }
  • Scale and overlay multiple images ffmpeg android error

    27 décembre 2019, par Shweta Patil

    I am trying to place multiple images/gif on image at background.But I am not able to scale all the images before overlay.

    String[] command=new String[13];
           command[0]="-i";
           command[1]=input;
           command[2]="-i";
           command[3]=thumbnail2;
           command[4]="-i";
           command[5]=thumbnail;
           command[6]="filter_complex";
           command[7]="[0:v]scale=0:0[base]";
           command[8]="[1:v]scale=30:-1[img1]";
           command[9]="[2:v]scale=3000:-1[img2]";
           command[10]="[base][img1]overlay=70:70[tmp1]";
           command[11]="[tmp1][img2]overlay=(main_w-overlay_w)/2:y=(main_h-overlay_h)/2[out]";
           command[12]="/storage/emulated/0/Pictures/logo-2000.gif";

           fFmpeg.execute(command,
                   new ExecuteBinaryResponseHandler() {

                       @Override
                       public void onStart() {
                           //for logcat
                           Log.w(TAG,"Cut started");
                       }

                       @Override
                       public void onProgress(String message) {
                          Log.w(TAG,message.toString());
                       }

                       @Override
                       public void onFailure(String message) {

                           Log.w(TAG,message.toString());
                           Toast.makeText(getApplicationContext(),"Error",Toast.LENGTH_SHORT).show();

                       }

                       @Override
                       public void onSuccess(String message) {

                           Log.w(TAG,message.toString());
                           Toast.makeText(getApplicationContext(),"sucessfully saved",Toast.LENGTH_SHORT).show();
                       }

                       @Override
                       public void onFinish() {

                           Log.w(TAG,"Cutting video finished");
                       }
                   });

    Please help to scale the images simultaneously.
    The error I am getting is :

    [NULL @ 0xb3211e00] Unable to find a suitable output format for
    ’filter_complex’ filter_complex : Invalid argument