
Recherche avancée
Médias (91)
-
Spitfire Parade - Crisis
15 mai 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Audio
-
Wired NextMusic
14 mai 2011, par
Mis à jour : Février 2012
Langue : English
Type : Video
-
Video d’abeille en portrait
14 mai 2011, par
Mis à jour : Février 2012
Langue : français
Type : Video
-
Sintel MP4 Surround 5.1 Full
13 mai 2011, par
Mis à jour : Février 2012
Langue : English
Type : Video
-
Carte de Schillerkiez
13 mai 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Texte
-
Publier une image simplement
13 avril 2011, par ,
Mis à jour : Février 2012
Langue : français
Type : Video
Autres articles (84)
-
Publier sur MédiaSpip
13 juin 2013Puis-je poster des contenus à partir d’une tablette Ipad ?
Oui, si votre Médiaspip installé est à la version 0.2 ou supérieure. Contacter au besoin l’administrateur de votre MédiaSpip pour le savoir -
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) (...)
-
MediaSPIP v0.2
21 juin 2013, parMediaSPIP 0.2 is the first MediaSPIP stable release.
Its official release date is June 21, 2013 and is announced here.
The zip file provided here only contains the sources of MediaSPIP in its standalone version.
To get a working installation, you must manually install all-software dependencies on the server.
If you want to use this archive for an installation in "farm mode", you will also need to proceed to other manual (...)
Sur d’autres sites (7517)
-
How improves Video Player processing using Qt and FFmpeg ?
13 septembre 2016, par Eric MenezesA time ago, I started to develop a video player/analyser. For beeing an analyser as well, the application should have inside its buffer the next frames and the previous as well. That’s where the complication begins.
For that, we started to use an
VideoProducer
that decodes the frames and audio from video (usingffmpeg
), added it into a buffer from where the video and audio consumers retrieve that objects (VideoFrame
andAudioChunk
). For this job, we have someQThreads
which is one producer, 2 consumers and (the biggest trouble maker) 2 workers that is used to retrieve objects from producer’s buffer and insert them into a circular buffer (that because of previous frames). These workers are important because of the backwards buffering job (this player should play backwards too).So, now the player is running well, but not so good. It’s notable that is losing performance. Like removing producer buffer and using just the circular. But still, some questions remains :
-
Should I continue using
QThread
with reimplementedrun()
? I read that works better withSignals & Slots
; -
If
Signals & Slots
worth it, the producer still needs to reimplementQThread::run()
, right ? -
Cosidering that buffer must have some previous frames and bad quality videos will be reproduced, is that (
VideoProducer
insert objects into aBuffer
,AudioConsumer
andFrameConsumer
retrieve these objects fromBuffer
and display/reproducer them) the better way ? -
What is the best way to sync audio and video ? The sync using audio pts is doing well, but some troubles appear sometimes ; and
-
For buffering backwards,
ffmpeg
does not provide frames this way, so I need to seek back, decode older frames, reorder them and prepend to the buffer. This job has been done by thatWorkers
, anotherQThread
the keep consuming from Producer buffer and, if buffering backwards, asks for seek and do the reorder job. I can just guess that it is bad. And I assume that do this reorder job should be done atProducer
level. Is that any way to do this better ?
I know it’s a lot of questions, and I’m sorry for that, but I don’t know where to find these answers.
Thanks for helping.
For better understanding, heres how its been done :
-
VideoProducer
-> DecoderQThread
. Runs in a loop decoding and enqueuing frames into aBuffer
. -
FrameConsumer
-> Video consumer. Retrieves frames from frameCircularBuffer
in a loop using anotherQThread
. Display the frame and sleep few mseconds based on video fps andAudioConsumer
clock time. -
AudioConsumer
-> Audio consumer and video’s clock. Works with signals usingQAudioOutput::notify()
to retrieve chunks of audio from audioCircularBuffer
and insert them intoQAudioOutput
buffer. When decodes the first frame, its pts is used to start the clock. (if a seek has been called, the next audio frame will mark the clock start time) -
Worker
-> Each stream (audio and video) has one. It’s aQThread
running in a loop (run()
reimplemented) retrieving objects fromBuffer
and inserting (backwards or forward) toCircularBuffer
.
And another ones that manage UI, filters, some operations with frames/chunks...
-
-
x86util : import MOVHL macro
11 février 2017, par James Darnleyx86util : import MOVHL macro
Originally committed to x264 in 1637239a by Henrik Gramner who has
agreed to re-license it as LGPL. Original commit message follows.x86 : Avoid some bypass delays and false dependencies
A bypass delay of 1-3 clock cycles may occur on some CPUs when transitioning
between int and float domains, so try to avoid that if possible. -
Manipulate video with ffmpeg without losing quality
17 août 2016, par TheChymeraI am rotating a video with ffmpeg with the following code :
ffmpeg -i nd750_a0040.MOV -vf "transpose=dir=clock, transpose=dir=clock" out.mkv
The resulting file is almost 10x smaller than the input.
I have found this question which addresses a related question and suggsts passing to ffmpeg the codec and bitrate obtained from the following :bitratev="$(ffmpeg -i "$1" -f null - |& grep video: | awk -F'[:|kB]' '{print $2}')"
codecv="$(ffprobe -loglevel error -select_streams v:0 -show_entries stream=codec_name -of default=nk=1:nw=1 "$1")"however, both of these commands give me the same output for both files :
2643
andh264
respectively.
Am I correct in assuming that ffmpeg keeps these values the same for the output - by default ?However, if I inspect the files with
ffmpeg -i
I get different bitrate values :Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'nd750_a0040.MOV':
Metadata:
major_brand : qt
minor_version : 537331968
compatible_brands: qt niko
creation_time : 2016-06-18 04:28:03
Duration: 00:15:40.74, start: 0.000000, bitrate: 11569 kb/s
Stream #0:0(eng): Video: h264 (High) (avc1 / 0x31637661), yuvj420p(pc, smpte170m/bt709/bt470m), 1920x1080, 10029 kb/s, 29.97 fps, 29.97 tbr, 30k tbn, 59.94 tbc (default)
Metadata:
creation_time : 2016-06-18 04:28:03
Stream #0:1(eng): Audio: pcm_s16le (sowt / 0x74776F73), 48000 Hz, 2 channels, s16, 1536 kb/s (default)
Metadata:
creation_time : 2016-06-18 04:28:03and
Input #0, matroska,webm, from 'out.mkv':
Metadata:
COMPATIBLE_BRANDS: qt niko
MAJOR_BRAND : qt
MINOR_VERSION : 537331968
ENCODER : Lavf56.40.101
Duration: 00:15:40.74, start: 0.000000, bitrate: 1445 kb/s
Stream #0:0(eng): Video: h264 (High), yuvj420p(pc), 1920x1080, SAR 1:1 DAR 16:9, 29.97 fps, 29.97 tbr, 1k tbn, 59.94 tbc (default)
Metadata:
CREATION_TIME : 2016-06-18 04:28:03
LANGUAGE : eng
ENCODER : Lavc56.60.100 libx264
DURATION : 00:15:40.742000000
Stream #0:1(eng): Audio: vorbis, 48000 Hz, stereo, fltp (default)
Metadata:
CREATION_TIME : 2016-06-18 04:28:03
LANGUAGE : eng
ENCODER : Lavc56.60.100 libvorbis
DURATION : 00:15:40.743000000So I have a few questions :
- Which bitrate is the correct one for each video ?
- Is all of the information loss between these two files covered by the bitrate (or does ffmpeg by default change other things that lead to a lower file size as well - if so, what ?) ?
- How do I make sure nothing else changes but the container format and the rotation ?