
Recherche avancée
Autres articles (111)
-
Script d’installation automatique de MediaSPIP
25 avril 2011, parAfin de palier aux difficultés d’installation dues principalement aux dépendances logicielles coté serveur, un script d’installation "tout en un" en bash a été créé afin de faciliter cette étape sur un serveur doté d’une distribution Linux compatible.
Vous devez bénéficier d’un accès SSH à votre serveur et d’un compte "root" afin de l’utiliser, ce qui permettra d’installer les dépendances. Contactez votre hébergeur si vous ne disposez pas de cela.
La documentation de l’utilisation du script d’installation (...) -
Ajouter des informations spécifiques aux utilisateurs et autres modifications de comportement liées aux auteurs
12 avril 2011, parLa manière la plus simple d’ajouter des informations aux auteurs est d’installer le plugin Inscription3. Il permet également de modifier certains comportements liés aux utilisateurs (référez-vous à sa documentation pour plus d’informations).
Il est également possible d’ajouter des champs aux auteurs en installant les plugins champs extras 2 et Interface pour champs extras. -
Que fait exactement ce script ?
18 janvier 2011, parCe script est écrit en bash. Il est donc facilement utilisable sur n’importe quel serveur.
Il n’est compatible qu’avec une liste de distributions précises (voir Liste des distributions compatibles).
Installation de dépendances de MediaSPIP
Son rôle principal est d’installer l’ensemble des dépendances logicielles nécessaires coté serveur à savoir :
Les outils de base pour pouvoir installer le reste des dépendances Les outils de développements : build-essential (via APT depuis les dépôts officiels) ; (...)
Sur d’autres sites (5330)
-
How to enable different components of FFMPEG ?
3 décembre 2011, par Richard77I've found this C# wrapper code around FFMPEG. I'm using ASP.NET MVC3 and C#. When trying to get it work, I'm getting the following error :
RawOutput "ffmpeg version N-34906-g4e7b3ef, Copyright (c) 2000-2011
the FFmpeg developers
built on Nov 16 2011 12:35:07 with gcc 4.6.2
configuration: --enable-gpl --enable-version3 --disable-w32threads
--enable-runtime-cpudetect --enable-avisynth --enable-bzlib --enable-frei0r
--enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libfreetype
--enable-libgsm --enable-libmp3lame --enable-libopenjpeg --enable-librtmp
--enable-libschroedinger --enable-libspeex --enable-libtheora
--enable-libvo-aacenc --enable-libvo-amrwbenc --enable-libvorbis
--enable-libvpx --enable-libx264 --enable-libxavs --enable-libxvid
--enable-zlib
libavutil 51. 25. 0 / 51. 25. 0
libavcodec 53. 34. 0 / 53. 34. 0
libavformat 53. 20. 0 / 53. 20. 0
libavdevice 53. 4. 0 / 53. 4. 0
libavfilter 2. 48. 1 / 2. 48. 1
libswscale 2. 1. 0 / 2. 1. 0
libpostproc 51. 2. 0 / 51. 2. 0
[wmv3 @ 002BFA00] Extra data: 8 bits left, value: 0
[asf @ 002B8A80] parser not found for codec wmav2, packets or times may be invalid.
Seems stream 1 codec frame rate differs from container frame rate: 1000.00 (1000/1) -> 30.00 (30/1)
Input #0, asf, from 'C:\\FfMpeg\\Videos\\Original\\Video1.wmv':
Metadata:
WMFSDKVersion : 11.0.6002.18049
WMFSDKNeeded : 0.0.0.0000
IsVBR : 0
Duration: 00:00:41.80, start: 0.000000, bitrate: 888 kb/s
Stream #0:0(eng): Audio: wmav2 (a[1][0][0] / 0x0161), 44100 Hz, 2 channels, s16, 64 kb/s
Stream #0:1(eng): Video: wmv3 (Main) (WMV3 / 0x33564D57), yuv420p, 320x240, 786 kb/s, 30 tbr, 1k tbn, 1k tbc
Incompatible pixel format 'yuv420p' for codec 'mjpeg', auto-selecting format 'yuvj420p'
[buffer @ 031D8DA0] w:320 h:240 pixfmt:yuv420p tb:1/1000000 sar:0/1 sws_param:
[buffersink @ 031D8FA0] auto-inserting filter 'auto-inserted scale 0' between the filter 'src' and the filter 'out'
[scale @ 03106C20] w:320 h:240 fmt:yuv420p -> w:320 h:240 fmt:yuvj420p flags:0x4
[wmv3 @ 002BFA00] Extra data: 8 bits left, value: 0
Output #0, image2, to '87334ed0-2bcf-4be5-82ae-9089c14e0323.jpg':
Metadata:
WMFSDKVersion : 11.0.6002.18049
WMFSDKNeeded : 0.0.0.0000
IsVBR : 0
encoder : Lavf53.20.0
Stream #0:0(eng): Video: mjpeg, yuvj420p, 320x240, q=2-31, 200 kb/s, 90k tbn, 30 tbc
Stream mapping:
Stream #0:1 -> #0:0 (wmv3 -> mjpeg)
Press [q] to stop, [?] for help
[image2 @ 03107920] Could not open file : 87334ed0-2bcf-4be5-82ae-9089c14e0323.jpg
av_interleaved_write_frame(): Input/output error
" stringI'm absolutely new to FFMPEG, so I don't know where to start to solve the above probleme.
EDIT
public ActionResult Convert()
{
Converter _converter = new Converter(@"C:\FfMpeg\ffmpeg.exe");
OutputPackage oo = _converter.ConvertToFLV(@"C:\FfMpeg\Videos\Original\Video1.wmv");
FileStream outStream = System.IO.File.OpenWrite(@"C:\FfMpeg\Videos\Converted\Video1.flv");
oo.VideoStream.WriteTo(outStream);
outStream.Flush();
outStream.Close();
oo.PreviewImage.Save(@"C:\FfMpeg\Videos\Thumbnail\Thumbnail1.jpg");
return RedirectToAction("WatchMovie");
}Thanks for helping
-
logos and subtitles in reverse using ffmpeg and OpenGL in iOS 5.0
6 février 2012, par resident_I am using ffmpeg to play video on iOS 5.0. In my app with ffmpeg decoded video frames and use OpenGL to display it.
But I have a problem I don't resolve it. Chains logos and subtitles of the video image is displayed in reverse. I think that is the problem of rendering OpenGL 2.0 or ffmpeg decoded.
Can you tell me what is wrong ?, and How I can fix it ?
Very thanks,
Edit : I change my prepareTExture method with this :
- (void) prepareTextureW: (GLuint) texW textureHeight: (GLuint) texH frameWidth: (GLuint) frameW frameHeight: (GLuint) frameH {
float aspect = (float)frameW/(float)frameH;
float minX=-1.f, minY=-1.f, maxX=1.f, maxY=1.f;
float scale ;
if(aspect>=(float)backingHeight/(float)backingWidth){
// Aspect ratio will retain width.
scale = (float)backingHeight / (float) frameW;
maxY = ((float)frameH * scale) / (float) backingWidth;
minY = -maxY;
} else {
// Retain height.
scale = (float) backingWidth / (float) frameW;
maxX = ((float) frameW * scale) / (float) backingHeight;
minX = -maxX;
}
if(frameTexture) glDeleteTextures(1, &frameTexture);
glEnable(GL_TEXTURE_2D);
glGenTextures(1, &frameTexture);
glBindTexture(GL_TEXTURE_2D, frameTexture);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
glTexParameterf( GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT );
glTexParameterf( GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT );
glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, texW, texH, 0, GL_RGB, GL_UNSIGNED_SHORT_5_6_5, NULL);
verts[0] = maxX;
verts[1] = maxY;
verts[2] = minX;
verts[3] = maxY;
verts[4] = maxX;
verts[5] = minY;
verts[6] = minX;
verts[7] = minY;
float s = (float) frameW / (float) texW;
float t = (float) frameH / (float) texH;
texCoords[0] = 0.f; texCoords[1] = 1.f;
texCoords[2] = 1; texCoords[3] = 1.f;
texCoords[4] = 0.f; texCoords[5] =0;
texCoords[6] = 1; texCoords[7] =0;
mFrameH = frameH;
mFrameW = frameW;
mTexH = texH;
mTexW = texW;
maxS = s;
maxT = t;
// Just supporting one rotation direction, landscape left. Rotate Z by 90 degrees.
matSetRotZ(&rot,M_PI_2);
matMul(&mvp, &rot, &rot);
[self setupShader];}
And now this is my result : link image
-
dashjs can't find initialization segment on manifest.mpd
30 avril 2016, par Abelardo MendozaI am following this tutorial to stream a WebM. I have no issues running the ffmpeg commands to generate the videos/audio/manifest files but when I try to run it locally, there’s no video or audio at all and dashjs floods the console with :
Searching for initialization.
Start searching for initialization.
Perform init search: http://localhost:8080/video_1280x720_500k.webm
Perform SIDX load: http://localhost:8080/video_640x360_750k.webm
Perform SIDX load: http://localhost:8080/video_1280x720_500k.webmWriting that to console until I stop the server. I have tried using other mpd files such as this, which is used on the dashjs quickstart and it plays the video without any problems.
I used this guide to install the latest version of ffmpeg on Ubuntu 14.04 LTS :
ffmpeg version N-79688-g3cb3ddd Copyright (c) 2000-2016 the FFmpeg developers
built with gcc 5.3.0 (Ubuntu 5.3.0-3ubuntu1~14.04) 20151204
configuration: --prefix=/home/ab/cpp/ffmpeg_build --pkg-config-flags=--static --extra-cflags=-I/home/ab/cpp/ffmpeg_build/include --extra-ldflags=-L/home/ab/cpp/ffmpeg/lib --bindir=/home/ab/bin --enable-gpl --enable-libass --enable-libfdk-aac --enable-libfreetype --enable-libmp3lame --enable-libopus --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libx265 --enable-nonfree
libavutil 55. 23.100 / 55. 23.100
libavcodec 57. 38.100 / 57. 38.100
libavformat 57. 34.103 / 57. 34.103
libavdevice 57. 0.101 / 57. 0.101
libavfilter 6. 44.100 / 6. 44.100
libswscale 4. 1.100 / 4. 1.100
libswresample 2. 0.101 / 2. 0.101
libpostproc 54. 0.100 / 54. 0.100When running on ffmpeg :
ffmpeg \
-f webm_dash_manifest -i video_160x90_250k.webm \
-f webm_dash_manifest -i video_320x180_500k.webm \
-f webm_dash_manifest -i video_640x360_750k.webm \
-f webm_dash_manifest -i video_640x360_1000k.webm \
-f webm_dash_manifest -i video_1280x720_500k.webm \
-f webm_dash_manifest -i audio_128k.webm \
-c copy -map 0 -map 1 -map 2 -map 3 -map 4 -map 5 \
-f webm_dash_manifest \
-adaptation_sets "id=0,streams=0,1,2,3,4 id=1,streams=5" \
manifest.mpdIt generates the following manifest.mpd :
<?xml version="1.0" encoding="UTF-8"?>
<mpd xmlns="urn:mpeg:DASH:schema:MPD:2011" type="static" mediapresentationduration="PT117.726S" minbuffertime="PT1S" profiles="urn:webm:dash:profile:webm-on-demand:2012">
<period start="PT0S" duration="PT117.726S">
<adaptationset mimetype="video/webm" codecs="vp9" lang="eng" bitstreamswitching="true" subsegmentalignment="true" subsegmentstartswithsap="1">
<representation bandwidth="198155" width="160" height="90">
<baseurl>video_160x90_250k.webm</baseurl>
<segmentbase indexrange="2007834-2008211">
<initialization range="0-437"></initialization>
</segmentbase>
</representation>
<representation bandwidth="459264" width="320" height="180">
<baseurl>video_320x180_500k.webm</baseurl>
<segmentbase indexrange="4459996-4460374">
<initialization range="0-439"></initialization>
</segmentbase>
</representation>
<representation bandwidth="718495" width="640" height="360">
<baseurl>video_640x360_750k.webm</baseurl>
<segmentbase indexrange="6614036-6614414">
<initialization range="0-441"></initialization>
</segmentbase>
</representation>
<representation bandwidth="931445" width="640" height="360">
<baseurl>video_640x360_1000k.webm</baseurl>
<segmentbase indexrange="8309082-8309460">
<initialization range="0-441"></initialization>
</segmentbase>
</representation>
<representation bandwidth="821274" width="1280" height="720">
<baseurl>video_1280x720_500k.webm</baseurl>
<segmentbase indexrange="8728812-8729190">
<initialization range="0-441"></initialization>
</segmentbase>
</representation>
</adaptationset>
<adaptationset mimetype="audio/webm" codecs="vorbis" lang="eng" audiosamplingrate="44100" bitstreamswitching="true" subsegmentalignment="true" subsegmentstartswithsap="1">
<representation bandwidth="107104">
<baseurl>audio_128k.webm</baseurl>
<segmentbase indexrange="1538710-1539184">
<initialization range="0-4112"></initialization>
</segmentbase>
</representation>
</adaptationset>
</period>
</mpd>The index.html has a few changes because dash.js changed the way the player gets initialized.
<code class="echappe-js"><script src="http://cdn.dashjs.org/latest/dash.all.debug.js"></script>And here is Chromium’s log file. I’m converting this webm from this site.
If I missed out any other relevant information or if anyone can guide me into the right direction, please let me know.
Edit :
Like Will Law mentioned, using the Shaka Player worked without any issues with my current manifest. Hope this helps anyone else.