
Recherche avancée
Autres articles (52)
-
Support de tous types de médias
10 avril 2011Contrairement à beaucoup de logiciels et autres plate-formes modernes de partage de documents, MediaSPIP a l’ambition de gérer un maximum de formats de documents différents qu’ils soient de type : images (png, gif, jpg, bmp et autres...) ; audio (MP3, Ogg, Wav et autres...) ; vidéo (Avi, MP4, Ogv, mpg, mov, wmv et autres...) ; contenu textuel, code ou autres (open office, microsoft office (tableur, présentation), web (html, css), LaTeX, Google Earth) (...)
-
Support audio et vidéo HTML5
10 avril 2011MediaSPIP utilise les balises HTML5 video et audio pour la lecture de documents multimedia en profitant des dernières innovations du W3C supportées par les navigateurs modernes.
Pour les navigateurs plus anciens, le lecteur flash Flowplayer est utilisé.
Le lecteur HTML5 utilisé a été spécifiquement créé pour MediaSPIP : il est complètement modifiable graphiquement pour correspondre à un thème choisi.
Ces technologies permettent de distribuer vidéo et son à la fois sur des ordinateurs conventionnels (...) -
Personnaliser les catégories
21 juin 2013, parFormulaire de création d’une catégorie
Pour ceux qui connaissent bien SPIP, une catégorie peut être assimilée à une rubrique.
Dans le cas d’un document de type catégorie, les champs proposés par défaut sont : Texte
On peut modifier ce formulaire dans la partie :
Administration > Configuration des masques de formulaire.
Dans le cas d’un document de type média, les champs non affichés par défaut sont : Descriptif rapide
Par ailleurs, c’est dans cette partie configuration qu’on peut indiquer le (...)
Sur d’autres sites (8072)
-
How to stitch(concat) two transport stream with two different resolution and I-frame slices format without loosing resolution and slices information
2 octobre 2019, par AnkurTankI have been trying to test a use case with steam captured from multimedia device and that didn’t work. And then I have been trying to create this specific transport stream for like two days now without success, so requesting some help.
I need to create transport stream with two different resolution and two different slicing format.
I divided the task in following steps and in last two steps I need help.
Step 1 : Download sample video with resolution : 1920x1080.
I downloaded big buck bunny mp4 .Step 2 : Create transport stream with following
resolution : 1920x720, H264 I frame slices per frame : 1
I used following ffmpeg commands to do that.#Rename file to input.mp4
$ mv bbb_sunflower_1080p_30fps_normal.mp4 input.mp4
#Extract transport stream
$ ffmpeg -i input.mp4 -c copy first.tsfirst.ts is having 1980x720 resolution and one H264 I slice per frame.
Step 3 : Create another transport stream with smaller resolution using following commands
#Get mp4 with lower resolution.
$ ffmpeg -i input.mp4 -s 640x480 temp.mp4
#Extract trans port stream from mp4
$ ffmpeg -i temp.mp4 -c copy low_r.tsStep 4 : Edit(and re-encode ?) low_r.ts to have two H264 I frame slices.
I used following command to achieve it.$ x264 --slices 4 low_r.ts -o second.ts
However when I play this second.ts on vlc using following command it doesn’t play
$ vlc ./second.ts
And using Elacard StreamEye software when I analyze the transport stream I see that it has 4
H264 I slices
in only two times other than that lot ofH264 p slices
andH264 B slices
.
Need help here to figure out why second.ts doesn’t play and why slicing is not correct.Step 5 : Combine both the transport stream without loosing resolution and slicing information.
Don’t know command for this. Need help here.
I tried ffmpeg but that combines two stream with different resolution and makes one file with one resolution.Any suggestions/pointers would help me proceed. Let me also know if any of the above steps are not fine too.
-
How to make high smooth, high resolution particle motion animations
5 décembre 2019, par algaeFor some time I have been having trouble with producing short movies/animations/gifs which are of sufficiently high resolution. I’m going to use R to generate some frames as a random example, but if there is somewhere else I should be creating frames from to give better results I would be interested in that too.
Creating frames
The kinds of animations I’m interested involve some cloud of ’particles’ moving about the page. There are usually a large number of particles and I would like their motion be as smooth as possible. As a random example, consider the R code (using base graphics and not
ggplot2
as it is far quicker for saving a large number of frames)N <- 500
nFrames <- 250
points <- pracma::randp(n=N, r=1)
rot <- function(p, a) { return(cbind(p[,1]*cos(a) - p[,2]*sin(a), p[,1]*sin(a) + p[,2]*cos(a))) }
cols <- colorRampPalette(c("red", "green", "blue"))(nFrames)
ang <- seq(0, pi, length=N)
# Save frames
png(filename="%d.png")
par(mar=c(0,0,0,0))
for (i in seq(1,N,length=nFrames))
plot(sqrt(i)*rot(points, ang[i]), xlim=sqrt(N)*c(-1,1), ylim=sqrt(N)*c(-1,1), cex=0.5, pch=19, col=cols[i], asp=1, xaxs="i")
dev.off()Frames to animation
There are a number of tools available to chain each frame together into an animation (in R there are also things like
gganimate
which I have tried but did not find convenient or better than the following). I also don’t have any requirements for the resulting file size or time taken to get everything looking as crisp as possible.convert
For short gif style animations a common solution is to do something like
convert -delay 1 -loop 0 *.png g.gif
which givesgifski
Running
gifski -o g.gif *.png
producesThere is an annoying amount of ’jitter’ happening in the transition between frames in both of the above (though less noticeable with
gifski
).ffmpeg
Being gifs, the above will be have limited options for tweaking so I suspect part of the solution lies in using
ffmpeg
. All I would like to know is how to make the animation appear totally smooth without any kind of noticeable blurriness. Here the resulting movies tend to be quite smooth, but resolution is lacking.. e.g. after settingheight=1080
andwidth=1080
inpng()
of the above code we can runfmpeg -i %d.png -s 1080x1080 -c:v libx264 -vf fps=250 -pix_fmt yuv444p out.mp4
If the particles move on a time/space scale smaller than is visible to the naked eye, and we set the frames per second to be the total number of frames, the transition between frames should be seamless, right ? At around the 2 second mark in
out.mp4
you will see some kind of frame drop and similarly right at the beginning. Why does this happen ?Questions
- Is there a standard documented approach to generating high quality animations/movies involving large numbers of ’point-like’ particles ? Do we need more an more frames ?
- How to improve resolution of movies using
ffmpeg
? Should I change from .png format to something vectorised (if so, how) ?
Running Fedora v31.
-
Python - playing video using ffplay displays file in larger resolution
10 décembre 2019, par derBrainI’m working on a simple script that plays a video using ffplay.
The problem I’m running into is that the output file has a larger resolution than it should have.
The resolution of the file to be played is 1280x720, however, when I open the file with ffplay, the output is scaled to 1920x1080.
I even tried to downscale the output by factor 1.5 (to get it to play in 1280x720), but the quality is noticeably worse compared to playing the same file in VLC player.
What am I missing here ?This is the code I’m using :
dbFile = "file.mp4"
open_dbFile = "ffplay {0} -window_title {1} -left 50 -top 50 -nostats".format(dbFile, "DB_file")
sub.Popen(open_dbFile)this is the log :
ffplay version N-95171-g6ca3d34ff8 Copyright (c) 2003-2019 the FFmpeg developers
built with gcc 9.2.1 (GCC) 20190918
configuration: --enable-gpl --enable-version3 --enable-sdl2 --enable-fontconfig --enable-gnutls --enable-iconv --enable-libass --enable-libdav1d --enable-libbluray --enable-libfreetype --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libtheora --enable-libtwolame --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libzimg --enable-lzma --enable-zlib --enable-gmp --enable-libvidstab --enable-libvorbis --enable-libvo-amrwbenc --enable-libmysofa --enable-libspeex --enable-libxvid --enable-libaom --enable-libmfx --enable-ffnvcodec --enable-cuvid --enable-d3d11va --enable-nvenc --enable-nvdec --enable-dxva2 --enable-avisynth --enable-libopenmpt --enable-amf
libavutil 56. 35.100 / 56. 35.100
libavcodec 58. 59.101 / 58. 59.101
libavformat 58. 33.100 / 58. 33.100
libavdevice 58. 9.100 / 58. 9.100
libavfilter 7. 59.100 / 7. 59.100
libswscale 5. 6.100 / 5. 6.100
libswresample 3. 6.100 / 3. 6.100
libpostproc 55. 6.100 / 55. 6.100
Metadata:
major_brand : mp42
minor_version : 0
compatible_brands: isommp42
creation_time : 2017-12-24T15:03:27.000000Z
Duration: 00:08:36.83, start: 0.000000, bitrate: 588 kb/s
Stream #0:0(und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p(tv, bt709), 1280x720 [SAR 1:1 DAR 16:9], 459 kb/s, 29.97 fps, 29.97 tbr, 90k tbn, 59.94 tbc (default)
Metadata:
creation_time : 2017-12-24T15:03:27.000000Z
handler_name : ISO Media file produced by Google Inc. Created on: 12/24/2017.
Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 125 kb/s (default)
Metadata:
creation_time : 2017-12-24T15:03:27.000000Z
handler_name : ISO Media file produced by Google Inc. Created on: 12/24/2017.
1.59 A-V: -0.014 fd= 0 aq= 19KB vq= 30KB sq= 0B f=0/0Thanks for your help !
db