Recherche avancée

Médias (2)

Mot : - Tags -/media

Autres articles (104)

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

  • Personnaliser en ajoutant son logo, sa bannière ou son image de fond

    5 septembre 2013, par

    Certains thèmes prennent en compte trois éléments de personnalisation : l’ajout d’un logo ; l’ajout d’une bannière l’ajout d’une image de fond ;

  • Gestion des droits de création et d’édition des objets

    8 février 2011, par

    Par défaut, beaucoup de fonctionnalités sont limitées aux administrateurs mais restent configurables indépendamment pour modifier leur statut minimal d’utilisation notamment : la rédaction de contenus sur le site modifiables dans la gestion des templates de formulaires ; l’ajout de notes aux articles ; l’ajout de légendes et d’annotations sur les images ;

Sur d’autres sites (6775)

  • Using OpenMAX (IL ?) for audio/video decoding on Android

    14 septembre 2012, par Christopher Corsi

    Many of the newer hardware platforms running Android, in particular NVIDIA's Tegra 2, support OpenMAX for media acceleration. It's effectively impossible on today's devices to decode 720p video without this support, but the number of demuxers supported on Android are quite slim. The only public API I've been able to find has been through the MediaPlayer class in the Android SDK. There are multiple places in the Android source tree with OpenMAX related tidbits, however.

    On my device (Samsung Galaxy Tab 10.1) I've got access to hardware decoders through a multitude of OpenMAX libs in /system/lib, and it would be great to interface my video application with these. Can anyone point me to information on implementing a decoder powered by OpenMAX ? I've found the documentation from Khronos, but nothing in the way of example code or tutorials. I've already got demuxing and even software decoding taken care of (via libavcodec/libavformat), I'd just like to put hooks in to enable hardware encoding. I'm also assuming here it would be necessary to link directly to the ones available on the device, which makes it pretty lackluster in terms of portability, but it works.

    Alternatively, I'm interested in anything anyone knows about private APIs for accessing the video decoding available on Tegra 2 devices. Especially if there's a vdpau interface like what NVIDIA implements for desktop linux distributions, since there's plenty available for that - but I wasn't able to find shared libraries that indicate that support.

  • xuggler : no video in encoded 3gp file

    1er août 2012, par khizar

    i am trying to encode videos into 3gp format using xuggler, i somehow got it to work, work as in the program stopped throwing errors and exceptions, but the new file that is created does not have any video. Now there is no error or exception for me to work with so i have stuck a wall.
    EDIT : Note the audio is working as it shud.

    This is the code for the main function where the listeners are configured

    IMediaReader reader = ToolFactory.makeReader("/home/hp/mms/b.flv") ;

       IMediaWriter writer = ToolFactory.makeWriter("/home/hp/mms/xuggle/a_converted.3gp", reader);

       IMediaDebugListener debugListener = ToolFactory.makeDebugListener();
       writer.addListener(debugListener);

       ConvertVideo convertor = new ConvertVideo(new File("/home/hp/mms/b.flv"), new File("/home/hp/mms/xuggle/a_converted.3gp"));
       // convertor.addListener(writer);
       reader.addListener(writer);
       writer.addListener(convertor);

       while (reader.readPacket() == null)
           ;

    And this is the code for the convertor that i wrote.

    public ConvertVideo(File inputFile, File outputFile)
    {
       this.outputFile = outputFile;
       reader = ToolFactory.makeReader(inputFile.getAbsolutePath());
       reader.addListener(this);
    }
    private IVideoResampler videoResampler = null;
    private IAudioResampler audioResampler = null;

    @Override
    public void onAddStream(IAddStreamEvent event)
    {
       if (writer == null)
       {
           writer = ToolFactory.makeWriter(outputFile.getAbsolutePath(), reader);

       }

       int streamIndex = event.getStreamIndex();
       IStreamCoder streamCoder = event.getSource().getContainer().getStream(streamIndex).getStreamCoder();

       if (streamCoder.getCodecType() == ICodec.Type.CODEC_TYPE_AUDIO)
       {
           streamCoder.setFlag(IStreamCoder.Flags.FLAG_QSCALE, false);
           writer.addAudioStream(streamIndex, 0, 1, 8000);
       }
       else if (streamCoder.getCodecType() == ICodec.Type.CODEC_TYPE_VIDEO)
       {
           streamCoder.setFlag(IStreamCoder.Flags.FLAG_QSCALE, false);
           streamCoder.setCodec(ICodec.findEncodingCodecByName("h263"));
           writer.addVideoStream(streamIndex, 0, VIDEO_WIDTH, VIDEO_HEIGHT);

       }
       super.onAddStream(event);
    }

    // //
    @Override
    public void onVideoPicture(IVideoPictureEvent event)
    {
       IVideoPicture pic = event.getPicture();
       if (videoResampler == null)
       {
           videoResampler = IVideoResampler.make(VIDEO_WIDTH, VIDEO_HEIGHT, pic.getPixelType(), pic.getWidth(), pic.getHeight(), pic.getPixelType());
       }
       IVideoPicture out = IVideoPicture.make(pic.getPixelType(), VIDEO_WIDTH, VIDEO_HEIGHT);
       videoResampler.resample(out, pic);

       IVideoPictureEvent asc = new VideoPictureEvent(event.getSource(), out, event.getStreamIndex());
       super.onVideoPicture(asc);
       out.delete();
    }

    @Override
    public void onAudioSamples(IAudioSamplesEvent event)
    {
       IAudioSamples samples = event.getAudioSamples();
       if (audioResampler == null)
       {
           audioResampler = IAudioResampler.make(1, samples.getChannels(), 8000, samples.getSampleRate());
       }
       if (event.getAudioSamples().getNumSamples() > 0)
       {
           IAudioSamples out = IAudioSamples.make(samples.getNumSamples(), samples.getChannels());
           audioResampler.resample(out, samples, samples.getNumSamples());

           AudioSamplesEvent asc = new AudioSamplesEvent(event.getSource(), out, event.getStreamIndex());
           super.onAudioSamples(asc);
           out.delete();
       }
    }

    I just cant seem to figure out where the problem is. I wud be thankful if someone wud plz point me in the right direction.

    EDIT : If i see the properties of my newly encoded video, its audio properties are set and its video properties are not i.e in video properties, dimension= 0 x 0, frame rate= N/A and codec= h.263. The problem here is the 0 x 0 dimension.

  • mpegvideo_probe : count video and audio pes seperately

    8 novembre 2011, par Michael Niedermayer

    mpegvideo_probe : count video and audio pes seperately