
Recherche avancée
Médias (1)
-
Bug de détection d’ogg
22 mars 2013, par
Mis à jour : Avril 2013
Langue : français
Type : Video
Autres articles (101)
-
Encodage et transformation en formats lisibles sur Internet
10 avril 2011MediaSPIP transforme et ré-encode les documents mis en ligne afin de les rendre lisibles sur Internet et automatiquement utilisables sans intervention du créateur de contenu.
Les vidéos sont automatiquement encodées dans les formats supportés par HTML5 : MP4, Ogv et WebM. La version "MP4" est également utilisée pour le lecteur flash de secours nécessaire aux anciens navigateurs.
Les documents audios sont également ré-encodés dans les deux formats utilisables par HTML5 :MP3 et Ogg. La version "MP3" (...) -
Encoding and processing into web-friendly formats
13 avril 2011, parMediaSPIP automatically converts uploaded files to internet-compatible formats.
Video files are encoded in MP4, Ogv and WebM (supported by HTML5) and MP4 (supported by Flash).
Audio files are encoded in MP3 and Ogg (supported by HTML5) and MP3 (supported by Flash).
Where possible, text is analyzed in order to retrieve the data needed for search engine detection, and then exported as a series of image files.
All uploaded files are stored online in their original format, so you can (...) -
Contribute to translation
13 avril 2011You can help us to improve the language used in the software interface to make MediaSPIP more accessible and user-friendly. You can also translate the interface into any language that allows it to spread to new linguistic communities.
To do this, we use the translation interface of SPIP where the all the language modules of MediaSPIP are available. Just subscribe to the mailing list and request further informantion on translation.
MediaSPIP is currently available in French and English (...)
Sur d’autres sites (6411)
-
Not able to play mp4 video on Chrome Browser
29 octobre 2018, par Bhupinder RajputI 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>
-
Add audio to Xuggler video stream (ffmpeg)
11 avril 2017, par zholmes1I 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(); -
Revision 53928 : Ajout de la possibilité de ne pas afficher les photos de profil sous ...
1er novembre 2011, par yffic@… — LogAjout de la possibilité de ne pas afficher les photos de profil sous le bouton facebook like