Recherche avancée

Médias (91)

Autres articles (60)

  • Installation en mode ferme

    4 février 2011, par

    Le mode ferme permet d’héberger plusieurs sites de type MediaSPIP en n’installant qu’une seule fois son noyau fonctionnel.
    C’est la méthode que nous utilisons sur cette même plateforme.
    L’utilisation en mode ferme nécessite de connaïtre un peu le mécanisme de SPIP contrairement à la version standalone qui ne nécessite pas réellement de connaissances spécifique puisque l’espace privé habituel de SPIP n’est plus utilisé.
    Dans un premier temps, vous devez avoir installé les mêmes fichiers que l’installation (...)

  • Multilang : améliorer l’interface pour les blocs multilingues

    18 février 2011, par

    Multilang est un plugin supplémentaire qui n’est pas activé par défaut lors de l’initialisation de MediaSPIP.
    Après son activation, une préconfiguration est mise en place automatiquement par MediaSPIP init permettant à la nouvelle fonctionnalité d’être automatiquement opérationnelle. Il n’est donc pas obligatoire de passer par une étape de configuration pour cela.

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

  • Unable play Audio AC3 in Exoplayer + FFmpeg, i read the guide correctly, should I be wrong ?

    24 mars 2020, par mOsCpU0

    I would like to implement FFmpeg in Exoplayer in my App, in order to read video formats with AC3 Audio track.

    I followed these steps, but I still don’t hear Audio AC3 and I can’t enable Exoplayer to play the audio track via Software.

    I have my code if needed and the guide I used is this :

    https://github.com/google/ExoPlayer/tree/release-v2/extensions/ffmpeg

    I hope for your help !

    package com.omegasus_test.myapplication;

    import androidx.appcompat.app.AppCompatActivity;

    import android.app.Dialog;
    import android.net.Uri;
    import android.os.Bundle;
    import android.os.Environment;
    import android.view.View;
    import android.view.Window;
    import android.widget.Button;
    import android.widget.RelativeLayout;
    import android.widget.TextView;
    import android.widget.Toast;

    import com.google.android.exoplayer2.DefaultRenderersFactory;
    import com.google.android.exoplayer2.ExoPlaybackException;
    import com.google.android.exoplayer2.ExoPlayer;
    import com.google.android.exoplayer2.ExoPlayerFactory;
    import com.google.android.exoplayer2.PlaybackParameters;
    import com.google.android.exoplayer2.Player;
    import com.google.android.exoplayer2.Timeline;
    import com.google.android.exoplayer2.source.ExtractorMediaSource;
    import com.google.android.exoplayer2.source.MediaSource;
    import com.google.android.exoplayer2.source.TrackGroupArray;
    import com.google.android.exoplayer2.source.hls.HlsMediaSource;
    import com.google.android.exoplayer2.trackselection.AdaptiveTrackSelection;
    import com.google.android.exoplayer2.trackselection.DefaultTrackSelector;
    import com.google.android.exoplayer2.trackselection.TrackSelection;
    import com.google.android.exoplayer2.trackselection.TrackSelectionArray;
    import com.google.android.exoplayer2.ui.AspectRatioFrameLayout;
    import com.google.android.exoplayer2.ui.SimpleExoPlayerView;
    import com.google.android.exoplayer2.upstream.BandwidthMeter;
    import com.google.android.exoplayer2.upstream.DefaultBandwidthMeter;
    import com.google.android.exoplayer2.upstream.DefaultDataSourceFactory;
    import com.google.android.exoplayer2.util.Util;

    import java.io.File;
    import java.io.FileOutputStream;

    public class MainActivity extends AppCompatActivity {
       String LINK_TO_PLAY="";
       ExoPlayer player;
       @Override
       protected void onCreate(Bundle savedInstanceState) {
           super.onCreate(savedInstanceState);
           setContentView(R.layout.activity_main);
           Uri uri=Uri.parse(LINK_TO_PLAY);
           final SimpleExoPlayerView pv=findViewById(R.id.player_view);
           pv.setVisibility(View.GONE);
           pv.setResizeMode(AspectRatioFrameLayout.RESIZE_MODE_FIT);
           BandwidthMeter bandwidthMeter = new DefaultBandwidthMeter();
           TrackSelection.Factory videoTrackSelectionFactory =new AdaptiveTrackSelection.Factory(bandwidthMeter);
           DefaultTrackSelector trackSelector =new DefaultTrackSelector(videoTrackSelectionFactory);
           trackSelector.setParameters( trackSelector.getParameters().buildUpon().setPreferredAudioLanguage("ita"));
           DefaultRenderersFactory rf = new DefaultRenderersFactory(getApplicationContext()).setExtensionRendererMode(DefaultRenderersFactory.EXTENSION_RENDERER_MODE_PREFER);
           player = ExoPlayerFactory.newSimpleInstance(getApplicationContext(),rf, trackSelector);
           pv.setPlayer(player);
           MediaSource source;
           if(LINK_TO_PLAY.contains("file://")){
               DefaultDataSourceFactory dataSourceFactory = new DefaultDataSourceFactory(getApplicationContext(), Util.getUserAgent(getApplicationContext(), "com.omegasus_test.myapplication"));
               source = new ExtractorMediaSource.Factory(dataSourceFactory).createMediaSource(uri);
           }else if(LINK_TO_PLAY.contains(".m3u8")){
               DefaultDataSourceFactory dataSourceFactory = new DefaultDataSourceFactory(getApplicationContext(),Util.getUserAgent(getApplicationContext(), "com.omegasus_test.myapplication"));
               source = new HlsMediaSource.Factory(dataSourceFactory).createMediaSource(uri);
           }else{
               DefaultDataSourceFactory dataSourceFactory = new DefaultDataSourceFactory(getApplicationContext(),Util.getUserAgent(getApplicationContext(), "com.omegasus_test.myapplication"));
               source = new ExtractorMediaSource.Factory(dataSourceFactory).createMediaSource(uri);
           }
           player.prepare(source);
           player.addListener(new Player.EventListener(){
               public void onSeekProcessed(){}
               public void onPlayerStateChanged(boolean playWhenReady, int playbackState) {
                   if(playbackState == ExoPlayer.STATE_READY){
                       pv.setVisibility(View.VISIBLE);
                       pv.setResizeMode(AspectRatioFrameLayout.RESIZE_MODE_FIT);
                   }else if(playbackState==ExoPlayer.STATE_BUFFERING){
                   }else if(playbackState==ExoPlayer.STATE_ENDED){
                   }
               }
               public void onTimelineChanged(Timeline p1, Object p2, int p3){

               }
               public void onTracksChanged(TrackGroupArray p1, TrackSelectionArray p2){

               }
               public void onShuffleModeEnabledChanged(boolean p1){

               }
               public void onPositionDiscontinuity(int p1){

               }
               public void onPlaybackParametersChanged(PlaybackParameters p1){

               }
               public void onLoadingChanged(boolean p1){

               }
               public void onPlayerError(ExoPlaybackException p1){
                   if(p1.getMessage()==null){
                       Toast.makeText(getApplicationContext(),"Errore sconosciuto",Toast.LENGTH_SHORT).show();
                   }else{
                       Toast.makeText(getApplicationContext(),"Player Error: "+p1.getMessage(),Toast.LENGTH_SHORT).show();
                   }
                   player.setPlayWhenReady(false);
                   player.stop();
                   player.seekTo(0);
                   player.release();
                   finish();
               }
               public void onRepeatModeChanged(int p1){

               }
           });
           player.setPlayWhenReady(true);
       }

    }
  • We're Creating a New AI tool and Got Stuck on This 1 Step [closed]

    22 février 2024, par Daniel

    Thanks for helping with this question,

    


    Anybody who knows PHP, React js, FFmpeg, or Open AI API can help here :

    


    We are currently creating a tool with PHP laravel and React JS. It lets normal creators input a simple text prompt and they'll get a fully original short (30 video fast-paced video) for their channel. But we have an output problem :

    


      

    • On the output of the videos, there's supposed to be AI generated images that have cool animations in order to make everything more fast paced. But our developers are making animations that are super slow and not dynamic or interesting enough. What open source library/tech could we use to create stunning animations and more action ?! Any suggestions would help here,
    • 


    



    


    We are currently using an FFmpeg to create a video automatically for our users. The videos consists of [images, captions, voiceover, background music, and animations) all generated by our AI tool and put together.

    


    Here's what we want as a video (dynamic, fast paced, and many animations) : https://drive.google.com/file/d/1ONCczJh_Uk9m6oRDPGFQYjJPWUhy8hdV/view?usp=sharing

    


    Here's what we're getting : https://drive.google.com/file/d/1sMKGB88ouTHsEdahc0Zyt8rKEvZWhTco/view?usp=sharing

    


    Thanks for any help here.

    


  • Revision 55040 : Et toujours sur une idée trouvée sur ...

    1er décembre 2011, par real3t@… — Log

    Et toujours sur une idée trouvée sur http://www.ghacks.net/2011/11/30/embed-facebook-twitter-google-plus-without-javascript/ : la forme la plus basique de l’interaction sociale : imprimer la page.