
Recherche avancée
Autres articles (5)
-
L’espace de configuration de MediaSPIP
29 novembre 2010, parL’espace de configuration de MediaSPIP est réservé aux administrateurs. Un lien de menu "administrer" est généralement affiché en haut de la page [1].
Il permet de configurer finement votre site.
La navigation de cet espace de configuration est divisé en trois parties : la configuration générale du site qui permet notamment de modifier : les informations principales concernant le site (...) -
Déploiements possibles
31 janvier 2010, parDeux types de déploiements sont envisageable dépendant de deux aspects : La méthode d’installation envisagée (en standalone ou en ferme) ; Le nombre d’encodages journaliers et la fréquentation envisagés ;
L’encodage de vidéos est un processus lourd consommant énormément de ressources système (CPU et RAM), il est nécessaire de prendre tout cela en considération. Ce système n’est donc possible que sur un ou plusieurs serveurs dédiés.
Version mono serveur
La version mono serveur consiste à n’utiliser qu’une (...) -
Sélection de projets utilisant MediaSPIP
29 avril 2011, parLes exemples cités ci-dessous sont des éléments représentatifs d’usages spécifiques de MediaSPIP pour certains projets.
Vous pensez avoir un site "remarquable" réalisé avec MediaSPIP ? Faites le nous savoir ici.
Ferme MediaSPIP @ Infini
L’Association Infini développe des activités d’accueil, de point d’accès internet, de formation, de conduite de projets innovants dans le domaine des Technologies de l’Information et de la Communication, et l’hébergement de sites. Elle joue en la matière un rôle unique (...)
Sur d’autres sites (4583)
-
Webcam stream with FFMpeg on iPhone
6 décembre 2011, par SaphrositI'm trying to send and show a webcam stream from a linux server to an iPhone app. I don't know if it's the best solution, but I downloaded and installed FFMpeg on the linux server (following, for those who want to know, this tutorial).
FFMpeg is working fine. After a lots of wandering, I managed to send a stream to the client launchingffmpeg -s 320x240 -f video4linux2 -i /dev/video0 -f mpegts -vcodec libx264 udp://192.168.1.34:1234
where 192.168.1.34 is the address of the client. Actually the client is a Mac, but it is supposed to be an iPhone. I know the stream is sent and received correctly (tested in different ways).
However I didn't managed to watch the stream directly on the iPhone.
I thought of different (possible) solutions :-
first solution : store incoming data in a
NSMutableData
object. Then, when the stream ends, store it and then play it using aMPMoviePlayerController
. Here's the code :[video writeToFile:@"videoStream.m4v" atomically:YES];
NSURL *url = [NSURL fileURLWithPath:@"videoStream.m4v"];
MPMoviePlayerController *videoController = [[MPMoviePlayerController alloc] initWithContentURL:url];
[videoController.view setFrame:CGRectMake(100, 100, 150, 150)];
[self.view addSubview:videoController.view];
[videoController play];the problem of this solution is that nothing is played (I only see a black square), even if the video is saved correctly (I can play it directly from my disk using VLC). Besides, it's not such a great idea. It's just to make things work.
-
Second solution : use
CMSampleBufferRef
to store the incoming video. Much more problems comes with this solution : first of all, there's noCoreMedia.framework
in my system. Besides I do not get well what does this class represents and what should I do to make it works : I mean if I start (somehow) filling this "SampleBuffer" with bytes I receive from UDP connection, then it will automatically call theCMSampleBufferMakeDataReadyCallback
function I set during creation ? If yes, when ? When the single frame is completed or when the whole stream is received ? -
Third solution : use
AVFoundation
framework (neither this is actually available on my Mac). I did not understand if it's actually possible to start recording from a remote source or even from aNSMutableData
, achar*
or something like that. OnAVFoundation Programming Guide
I didn't find any reference that say if it's possible or not.
I don't know which one of this solution is the best for my purpose. ANY suggestion would be appreciate.
Besides, there's also another problem : I didn't use any segmenter program to send the video. Now, if I'm not getting wrong, segmenter needs to split the source video in smaller/shorter video easier to send. If it is right, then maybe it's not strictly necessary to make things work (may be added later). However, since the server is running under linux, I cannot use Apple's mediastreamsegmeter. May someone suggest an opensource segmenter to use in association with FFMpeg ?
UPDATE : I edited my question adding more informations on what I did since now and what my doubts are.
-
-
How do I improve the quality of a video produced from still PNG images ?
9 avril 2012, par cormullionI'm trying to create a video from a few hundred PNG images. The PNG images look OK to me, e.g. here are two in MacOS X Preview :
They're about 1200 pixels square, 16 bit RGB, no transparency.
But my attempt to make a few hundred of these into a video is encountering the following problem - nearly every frame has this yellow corruption (artefacts ?), that sort of blocky flickery stuff you see on poor quality videos :
The ffmpeg command I'm using is something like this :
ffmpeg -f image2 -i /tmp/image-%07d.png -vcodec mpeg4 -vb 20M -r 20 poincare.mov
I've tried changing a few parameters, but I probably changed the wrong ones. Any idea which parameters I should be changing, and to what value ?
Console output is :
ffmpeg -f image2 -i /tmp/image-%07d.png -vcodec mpeg4 -vb 30M -r 30 poincare.mov
FFmpeg version UNKNOWN, Copyright (c) 2000-2010 the FFmpeg developers
built on Nov 9 2010 12:20:29 with gcc 4.2.1 (Apple Inc. build 5664)
configuration: --prefix=/Users/worth/OtherApps/ffmpeg/ffmpeg/../local/x86_64 --enable-static --enable-shared --enable-gpl --enable-version3 --enable-libmp3lame --enable-pthreads --enable-libvorbis --enable-libx264 --enable-libxvid --enable-libspeex --enable-libopencore_amrwb --enable-libopencore_amrnb --enable-libvpx --enable-memalign-hack --disable-debug --disable-stripping --arch=x86_64
libavutil 50.33. 0 / 50.33. 0
libavcore 0.12. 0 / 0.12. 0
libavcodec 52.94. 3 / 52.94. 3
libavformat 52.84. 0 / 52.84. 0
libavdevice 52. 2. 2 / 52. 2. 2
libavfilter 1.59. 0 / 1.59. 0
libswscale 0.12. 0 / 0.12. 0
Input #0, image2, from '/tmp/image-%07d.png':
Duration: 00:08:55.44, start: 0.000000, bitrate: N/A
Stream #0.0: Video: png, rgb48be, 1200x1198, 25 fps, 25 tbr, 25 tbn, 25 tbc
File 'poincare.mov' already exists. Overwrite ? [y/N] y
[buffer @ 0x101301ae0] w:1200 h:1198 pixfmt:rgb48be
[ffsink @ 0x101301d50] auto-inserting filter 'auto-inserted scaler 0' between the filter 'src' and the filter 'out'
[scale @ 0x101302090] w:1200 h:1198 fmt:rgb48be -> w:1200 h:1198 fmt:yuv420p flags:0xa0000004
Output #0, mov, to 'poincare.mov':
Metadata:
encoder : Lavf52.84.0
Stream #0.0: Video: mpeg4, yuv420p, 1200x1198, q=2-31, 30000 kb/s, 30 tbn, 30 tbc
Stream mapping:
Stream #0.0 -> #0.0
Press [q] to stop encoding
frame=13386 fps= 27 q=2.0 Lsize= 536132kB time=535.43 bitrate=8202.7kbits/s
video:535981kB audio:0kB global headers:0kB muxing overhead 0.028261% -
avfilter/scale* : add option reset_sar
31 janvier, par Gyan Doshiavfilter/scale* : add option reset_sar
For anamorphic videos, enabling this option leads to adjustment of
output dimensions to obtain square pixels when the user requests
proportional scaling through either of the w/h expressions or
force_original_aspect_ratio.Output SAR is always reset to 1.
Option added to scale, scale_cuda, scale_npp & scale_vaapi.
libplacebo already has a similar option with different semantics,
scale_vt and scale_vulkan don't implement force_oar, so for these
three filters, I've made minimal changes needed to not break building
or change output.- [DH] doc/filters.texi
- [DH] libavfilter/scale_eval.c
- [DH] libavfilter/scale_eval.h
- [DH] libavfilter/vf_libplacebo.c
- [DH] libavfilter/vf_scale.c
- [DH] libavfilter/vf_scale_cuda.c
- [DH] libavfilter/vf_scale_npp.c
- [DH] libavfilter/vf_scale_vaapi.c
- [DH] libavfilter/vf_scale_vt.c
- [DH] libavfilter/vf_scale_vulkan.c