Recherche avancée

Médias (1)

Mot : - Tags -/blender

Autres articles (45)

  • Submit bugs and patches

    13 avril 2011

    Unfortunately a software is never perfect.
    If you think you have found a bug, report it using our ticket system. Please to help us to fix it by providing the following information : the browser you are using, including the exact version as precise an explanation as possible of the problem if possible, the steps taken resulting in the problem a link to the site / page in question
    If you think you have solved the bug, fill in a ticket and attach to it a corrective patch.
    You may also (...)

  • Websites made ​​with MediaSPIP

    2 mai 2011, par

    This page lists some websites based on MediaSPIP.

  • Les autorisations surchargées par les plugins

    27 avril 2010, par

    Mediaspip core
    autoriser_auteur_modifier() afin que les visiteurs soient capables de modifier leurs informations sur la page d’auteurs

Sur d’autres sites (9474)

  • Add audio to Xuggler video stream (ffmpeg)

    11 avril 2017, par zholmes1

    I am trying to set up Facebook live video streaming in Java. I maintain a BufferedImage separately from this method which contains the image that is being streamed. I am connecting successfully and streaming the video, but Facebook takes the video down after two minutes because I am not sending audio as well. How can I add audio to this stream ?

       IContainer container = IContainer.make();
       IContainerFormat containerFormat_live = IContainerFormat.make();
       containerFormat_live.setOutputFormat("flv", streamUrl, null);
       container.setInputBufferLength(0);
       int retVal = container.open(streamUrl, IContainer.Type.WRITE, containerFormat_live);
       if (retVal < 0) {
           System.err.println("Could not open output container for live stream");
           System.exit(1);
       }


       IStream videoStream = container.addNewStream(0);
       IStreamCoder videoCoder = videoStream.getStreamCoder();
       ICodec videoCodec = ICodec.findEncodingCodec(ICodec.ID.CODEC_ID_H264);
       videoCoder.setNumPicturesInGroupOfPictures(5);
       videoCoder.setCodec(videoCodec);
       videoCoder.setBitRate(200000);
       videoCoder.setPixelType(IPixelFormat.Type.YUV420P);
       videoCoder.setHeight(IMAGE_HEIGHT_PX_OUTPUT);
       videoCoder.setWidth(IMAGE_WIDTH_PX_OUTPUT);
       System.out.println("[ENCODER] video size is " + IMAGE_HEIGHT_PX_OUTPUT + "x" + IMAGE_WIDTH_PX_OUTPUT);
       videoCoder.setFlag(IStreamCoder.Flags.FLAG_QSCALE, true);
       videoCoder.setGlobalQuality(0);
       IRational frameRate = IRational.make(30, 1);
       videoCoder.setFrameRate(frameRate);

       IRational timeBase = IRational.make(frameRate.getDenominator(), frameRate.getNumerator());
       videoCoder.setTimeBase(timeBase);

    //        IStream audioStream = container.addNewStream(1);
    //        IStreamCoder audioCoder = audioStream.getStreamCoder();
    //        ICodec audioCodec = ICodec.findEncodingCodec(ICodec.ID.CODEC_ID_AAC);
    //        audioCoder.setCodec(audioCodec);
    //        audioCoder.setBitRate(128 * 1024);
    //        audioCoder.setChannels(1);
    //        audioCoder.setSampleRate(44100);
    //        audioCoder.setFrameRate(IRational.make(1, 1));
    //        audioCoder.setTimeBase(timeBase);
    //
    //        IAudioResampler audioResampler = IAudioResampler.make(audioCoder.getChannels(), audioCoder.getChannels(), audioCoder.getSampleRate(), audioCoder.getSampleRate(), IAudioSamples.Format.FMT_S32, audioCoder.getSampleFormat());

       Properties props = new Properties();
       InputStream is = XugglerRtmpReferenceImpl.class.getResourceAsStream("/libx264-normal.ffpreset");
       try {
           props.load(is);
       } catch (IOException e) {
           System.err.println("You need the libx264-normal.ffpreset file from the Xuggle distribution in your classpath.");
           System.exit(1);
       }

       Configuration.configure(props, videoCoder);
    //        Configuration.configure(props, audioCoder);

       videoCoder.open();
    //        audioCoder.open();
       container.writeHeader();

    //        IAudioSamples audioSamples = IAudioSamples.make(512, audioCoder.getChannels());
    //        audioSamples.setComplete(true, 1024, audioCoder.getSampleRate(), audioCoder.getChannels(), IAudioSamples.Format.FMT_S32, 0);
    //
    //        IAudioSamples resampledAudio = IAudioSamples.make(512, audioCoder.getChannels(), IAudioSamples.Format.FMT_S32);
    //        audioResampler.resample(resampledAudio, audioSamples, 0);


       long firstTimeStamp = System.currentTimeMillis();
       long lastKeyFrameTimestamp = 0;
       long lastTimeStamp = System.currentTimeMillis();
       int i = 0;
       while (streaming) {
           //long iterationStartTime = System.currentTimeMillis();
           long now = System.currentTimeMillis();
           //convert it for Xuggler
           BufferedImage currentScreenshot = new BufferedImage(bufferedImage.getWidth(), bufferedImage.getHeight(), BufferedImage.TYPE_3BYTE_BGR);
           currentScreenshot.getGraphics().drawImage(bufferedImage, 0, 0, null);
           //start the encoding process
           IPacket packet = IPacket.make();
           IConverter converter = ConverterFactory.createConverter(currentScreenshot, IPixelFormat.Type.YUV420P);
           long timeStamp = (now - firstTimeStamp) * 1000;
           IVideoPicture outFrame = converter.toPicture(currentScreenshot, timeStamp);

           // make sure there is a keyframe at least every 2 seconds
           if (System.currentTimeMillis() - lastKeyFrameTimestamp > 1500) {
               outFrame.setKeyFrame(true);
               lastKeyFrameTimestamp = System.currentTimeMillis();
           }
           outFrame.setQuality(0);
           videoCoder.encodeVideo(packet, outFrame, 0);
           // audioCoder.encodeAudio(packet, IAudioSamples.make(0, audioCoder.getChannels()), 0);

           outFrame.delete();
           if (packet.isComplete()) {
               container.writePacket(packet);
               System.out.println("[ENCODER] writing packet of size " + packet.getSize() + " for elapsed time " + ((timeStamp - lastTimeStamp) / 1000));
               lastTimeStamp = System.currentTimeMillis();
           }
           System.out.println("[ENCODER] encoded image " + i + " in " + (System.currentTimeMillis() - now));
           i++;
           try {
               // sleep for framerate milliseconds
               Thread.sleep(Math.max((long) (1000 / frameRate.getDouble()) - (System.currentTimeMillis() - now), 0));
           } catch (InterruptedException e) {
               e.printStackTrace();
           }
       }
       container.writeTrailer();
  • Not able to play mp4 video on Chrome Browser

    29 octobre 2018, par Bhupinder Rajput

    I have download a sample 5Mb mp4 video from http://www.sample-videos.com/ . I am not able to play video on chrome browser. I am using simple html5 video tag

    But When I upload same video on facebook it is playing fine on chrome browser

    What I’ve tried to do is :

    <video width="560" height="340" controls="controls"> <source src="../Videos/5 Taara_HD.mp4" type="video/mp4"></source></video>
  • Q&A : An interview with Matomo founder, Matthieu Aubry

    20 novembre 2018, par Joselyn Khor — About, Community

    Hey everyone ! Joselyn here. As always the views of our community remain top of mind. So to make sure you guys know the thinking behind these new projects, we reached out to Matomo’s founder, Matthieu, to ask questions you might want answered. Please check it out below !

    Hi guys, it’s Matthieu ! Here to answer some questions about the rebrand and the future of Matomo and Innocraft.

    What’s upcoming ?

    We’ve been busy implementing our rebrand into all aspects of Matomo and there’s also our new website, which is launching today ! The new website will help people better understand what Matomo is and how they can benefit from using modern web analytics.

    Why was Matomo and Innocraft brought onto one website ?

    In the past the separation caused a bit of confusion so we’re taking this as a chance to unite both the business brand, Innocraft and community brand, Matomo, on one website. Putting our focus on one brand, Matomo, makes it easier for people to see us with fresh eyes. We have a community side as well as a business side and while the community is still incredibly important to us, we find we have a powerful analytics tool that is capable of helping businesses too.

    Is Matomo becoming commercial or turning corporate ?

    No. nothing is changing. Matomo is still an open-source project and community. Although we’ll have a pricing page and “start free trial” on the new website brought over from Innocraft.cloud, the Matomo community will still play the biggest part on the Matomo website. We have dedicated sections focused on Community and On-Premise.

    The rebrand exercise helped us gain a refreshed perspective. After reflecting on how far we’ve come, we can feel more confident about Matomo Analytics itself as a platform. We believe it’s a great chance to bring that confidence into the brand and vision. We are proud that it’s an awesome open-source platform and at the same time it’s also powerful as a tool for businesses.

    Why is there no ‘download for free’ button on the homepage ?

     

    Matomo CTA simplified
    We feel many users coming to the site will get confused about our hosting options (Cloud and On-Premise) which is something you don’t usually consider when choosing an analytics tool.

    The reason for us to not have that button is when people see a “download for free” button on the homepage next to a “try it for free” button, it creates confusion. For those who do choose to download Matomo often become confused when they are left with a .zip file unaware how to install it and the technical requirements of self-hosting. We feel presenting our users with the simplest installation option first will give them the best chance possible to try Matomo to its full potential, without cost.

    And you can still find the link to Download Matomo in the footer of each page.

     

    Is Matomo still free to download and have forever ?

    Absolutely. The free open-source download can be found on the On-Premise section of the website, or download Matomo here.

    Why is it important to have a business behind the project ?

    There’s the reality that we have to make money in order for the Matomo project to survive … and thrive. The reason we still need a business side (Innocraft) is to fund and sustain the Matomo project. Whenever people purchase premium features, this helps finance the development of Matomo for our community.

    Because of the business we’re able to continually maintain and develop Matomo for you guys as well as future users. For example, the next release Matomo 3.8.0 is already mostly developed and will bring lots of interesting features too, like the two-factor authentication, Brute Force Protection, failed tracking requests reporting, lots of JavaScript tracker improvements, a new total summary row below reports, and many more security fixes, bug fixes, and other new features.

    So we see a business being very helpful in supporting our open-source community. Without a business side, our free, open-source project would not be able to survive.

    How will you protect the Matomo project ?

    We’ve ensured the Matomo project will be protected for the future as we wish to turn it into a not-for-profit foundation.

    We’ve also got a safeguard where the open-source code will stay under a GPL license forever. This is so we can guarantee, that no matter what happens, the Matomo project itself will stay completely free software.

    Is there a way for people to help ?

    There are heaps of ways to help ! You can help other Matomo users in the forums, contribute to fixes on GitHub, leave a great review (e.g. alternativeTo), help look for bugs with our Security Bounty Programme or participate and spread the word about Matomo in our community social media pages – Mastodon, Facebook, Twitter. Telling your friends about us would be very helpful too !

    What’s planned for the future ?
    We’ve worked hard to become the #1 open-source analytics platform (1.4 million websites use Matomo today), but now we need to empower even more individuals and businesses to take back control of their own data.

    Showing our community that we have a powerful platform is crucial, but alongside that our values are what define us. User privacy is still of utmost importance and we’re here to make it known that power needs to rest in the hands of people and not large corporations.

    You can rest easy knowing you’re doing your part in using trustworthy and dependable tools. By joining many other companies who are growing this movement to decentralise the Internet, we can build a safer, online world together.

    Join this analytics revolution and let us know what you think about Matomo !