
Recherche avancée
Médias (1)
-
Revolution of Open-source and film making towards open film making
6 octobre 2011, par
Mis à jour : Juillet 2013
Langue : English
Type : Texte
Autres articles (51)
-
Other interesting software
13 avril 2011, parWe don’t claim to be the only ones doing what we do ... and especially not to assert claims to be the best either ... What we do, we just try to do it well and getting better ...
The following list represents softwares that tend to be more or less as MediaSPIP or that MediaSPIP tries more or less to do the same, whatever ...
We don’t know them, we didn’t try them, but you can take a peek.
Videopress
Website : http://videopress.com/
License : GNU/GPL v2
Source code : (...) -
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 (...) -
Contribute to a better visual interface
13 avril 2011MediaSPIP is based on a system of themes and templates. Templates define the placement of information on the page, and can be adapted to a wide range of uses. Themes define the overall graphic appearance of the site.
Anyone can submit a new graphic theme or template and make it available to the MediaSPIP community.
Sur d’autres sites (7341)
-
Video from images to mp4 in nvidia GPU
16 août 2019, par M.yI am trying to encode a h264 .mp4 video created from .jpg images using a 1070ti nvidia cuda power, having a a crossfade transition between each image.
I am able to render the video in GPU using the flags -c:v h264_nvenc, I see a short peak in the GPU encoding, but with a long period of computer CPU hight load, I guess preparing the transitioning images. But the image preparation it happens on cpu/ram due the -filter_complex and is quite slow.
This works :ffmpeg.exe, -y, -loop, 1, -t, 2.5, -i, 1565957420594_labeled.jpg, -loop, 1, -t, 2.5, -i, 1565957453659_labeled.jpg, -loop, 1, -t, 2.5, -i, 1565957487743_labeled.jpg, -loop, 1, -t, 2.5, -i, 1565957525280_labeled.jpg, -loop, 1, -t, 2.5, -i, 1565957587308_labeled.jpg, -loop, 1, -t, 2.5, -i, 1565957644898_labeled.jpg, -loop, 1, -t, 2.5, -i, 1565957859119_labeled.jpg, -loop, 1, -t, 2.5, -i,1565959133561_labeled.jpg, -loop, 1, -t, 2.5, -i, 1565959412948_labeled.jpg, -loop, 1, -t, 2.5, -i, 1565959501884_labeled.jpg, -loop, 1, -t, 2.5, -i, 1565959755432_labeled.jpg, -loop, 1, -t, 2.5, -i, 1565959882380_labeled.jpg, -loop, 1, -t, 2.5, -i, 1565960023185_labeled.jpg, -loop, 1, -t, 2.5, -i, 1565960157174_labeled.jpg, -loop, 1, -t, 2.5, -i, 1565960683303_labeled.jpg, -loop, 1, -t, 2.5, -i, 1565961151548_labeled.jpg, -loop, 1, -t, 2.5, -i, 1565961230278_labeled.jpg, -loop, 1, -t, 2.5, -i, 1565961671766_labeled.jpg, -loop, 1, -t, 2.5, -i, final.jpg, -loop, 1, -t, 2.5, -i, final.jpg, -c:v, h264_nvenc, -preset, fast, -filter_complex, [1]fade=d=0.5:t=in:alpha=1,setpts=PTS-STARTPTS+0.5/TB[f0];[2]fade=d=0.5:t=in:alpha=1,setpts=PTS-STARTPTS+1.0/TB[f1];[3]fade=d=0.5:t=in:alpha=1,setpts=PTS-STARTPTS+1.5/TB[f2];[4]fade=d=0.5:t=in:alpha=1,setpts=PTS-STARTPTS+2.0/TB[f3];[5]fade=d=0.5:t=in:alpha=1,setpts=PTS-STARTPTS+2.5/TB[f4];[6]fade=d=0.5:t=in:alpha=1,setpts=PTS-STARTPTS+3.0/TB[f5];[7]fade=d=0.5:t=in:alpha=1,setpts=PTS-STARTPTS+3.5/TB[f6];[8]fade=d=0.5:t=in:alpha=1,setpts=PTS-STARTPTS+4.0/TB[f7];[9]fade=d=0.5:t=in:alpha=1,setpts=PTS-STARTPTS+4.5/TB[f8];[10]fade=d=0.5:t=in:alpha=1,setpts=PTS-STARTPTS+5.0/TB[f9];[11]fade=d=0.5:t=in:alpha=1,setpts=PTS-STARTPTS+5.5/TB[f10];[12]fade=d=0.5:t=in:alpha=1,setpts=PTS-STARTPTS+6.0/TB[f11];[13]fade=d=0.5:t=in:alpha=1,setpts=PTS-STARTPTS+6.5/TB[f12];[14]fade=d=0.5:t=in:alpha=1,setpts=PTS-STARTPTS+7.0/TB[f13];[15]fade=d=0.5:t=in:alpha=1,setpts=PTS-STARTPTS+7.5/TB[f14];[16]fade=d=0.5:t=in:alpha=1,setpts=PTS-STARTPTS+8.0/TB[f15];[17]fade=d=0.5:t=in:alpha=1,setpts=PTS-STARTPTS+8.5/TB[f16];[18]fade=d=0.5:t=in:alpha=1,setpts=PTS-STARTPTS+9.0/TB[f17];[19]fade=d=0.5:t=in:alpha=1,setpts=PTS-STARTPTS+9.5/TB[f18];[0][f0]overlay[bg1];[bg1][f1]overlay[bg2];[bg2][f2]overlay[bg3];[bg3][f3]overlay[bg4];[bg4][f4]overlay[bg5];[bg5][f5]overlay[bg6];[bg6][f6]overlay[bg7];[bg7][f7]overlay[bg8];[bg8][f8]overlay[bg9];[bg9][f9]overlay[bg10];[bg10][f10]overlay[bg11];[bg11][f11]overlay[bg12];[bg12][f12]overlay[bg13];[bg13][f13]overlay[bg14];[bg14][f14]overlay[bg15];[bg15][f15]overlay[bg16];[bg16][f16]overlay[bg17];[bg17][f17]overlay[bg18];[bg18][f18]overlay[v], -map, [v], -movflags, +faststart, output.mp4
I am trying to do all work in the GPU, theoretically I can encode all images in GPU memory using in each -i the flags "-hwaccel cuvid -c:v mjpeg_cuvid" I receive the following error :
[mjpeg_cuvid @ 00000000024ef980] ignoring invalid SAR: 0/0
Impossible to convert between the formats supported by the filter 'graph 0 input from stream 1:0' and the filter 'auto_scaler_0'
Error reinitializing filters!
Failed to inject frame into filter network: Function not implemented
Error while processing the decoded data for stream #0:0Is there a way to load images in the GPU with the "fade" flag applied ?
Thanks in advance !
-
Standardized "Skip Intro" in MP4 video files ?
25 mai 2020, par CrissovIs there a standardized way to mark up specific parts of a MP4-contained video as skippable, e.g. trailers, recaps, intros/outros, opening/closing credits, in the metadata in the file itself ? If possible, I would like to set this with FFmpeg or MP4box.



I know that the
mvhd
box in MOV files makes it possible to specify a single preview. 
I assume Netflix and the like use specially named or hinted chapters, either from file-internal metadata or from a central database, to provide this feature. 
I want to add this now to videos in my personal library, just in case Kodi, VLC or other players and media centers add support for this feature.


Edit List Box
elst



As mentioned in the first comment, Edit Lists may be a solution. They are specified in section 8.6.6 of ISO/IEC 14496-12:2015 (ISOBMFF), which I partially cite below.



moov
>trak
+ >edts
? >elst
*




[
elst
] contains an explicit time-line map. 
 Each entry defines part of the track time-line :

 by mapping part of the media time-line,

 or by indicating ‘empty’ time,

 or by defining a ‘dwell’, where a single time-point in the media is held for a period.
 

- 

version
is an integer that specifies the version of this box (0 or 1)entry_count
is an integer that gives the number of entries in the following tablesegment_duration
is an integer that specifies the duration of this edit segment in units of the timescale in the Movie Header Boxmedia_time
is an integer containing the starting time within the media of this edit segment (in media time scale units, in composition time). If this field is set to –1, it is an empty edit. The last edit in a track shall never be an empty edit. Any difference between the duration in the Movie Header Box, and the track’s duration is expressed as an implicit empty edit at the end.media_rate
specifies the relative rate at which to play the media corresponding to this edit segment. If this value is 0, then the edit is specifying a ‘dwell’ : the media at media-time is presented for the segment-duration. Otherwise this field shall contain the value 1.














-
ffmpeg avformat_open_input() function causes memory leak when receiving live stream
12 septembre 2023, par george_dI have live streams (can be UDP or HLS, video codec is H264), from which I grab frames for further processing.


For this purpose, I use ffmpeg + nvjpeg + cuda libraries.


However I noticed memory leak - memory usage periodically (every 10-20 seconds) is increased by 100-400 KB, the amount and period may vary.


After disabling pieces of code one by one, I realized that it is
avformat_open_input()
which causes memory leak.

No matter which buffer settings (https://ffmpeg.org/ffmpeg-protocols.html#udp) I choose for UDP, the leak still persists. Same goes for HLS streams.


I tried to find anything related to this problem, but all the sources I found claimed that this problem took place in the past and has been fixed.


Is there some mysterious setting I am missing, so that memory could be freed properly ?


Or is this memory supposed to be freed when processing frames (i.e. using
av_read_frame()
andav_packet_unref()
, etc) ?

Minimal example of code to reproduce the problem :


avformat_example.cpp


#include 
extern "C" {
 #include <libavformat></libavformat>avformat.h>
 #include <libavcodec></libavcodec>avcodec.h>
}

int main(int argc, char *argv[]){
 if (argc < 2) {
 return 1;
 }

 char* inputSource = argv[1];
 AVFormatContext *ctx = NULL;

 if (avformat_open_input(&ctx, inputSource, NULL, NULL) != 0) {
 av_log(NULL,
 AV_LOG_ERROR,
 "Cannot open '%s'",
 inputSource);
 return 1;
 }

 /*
 This loop is placed here to demonstrate
 avformat_open_input() causing leak.
 Actually, instead of noop loop there is logic of getting and processing frames,
 but it doesn't matter now.
 As loop goes on, the amount of leaked memory increases.
 */
 while(true) {
 sleep(1);
 }

 return 0;
}



Compile with :


g++ avformat_example.cpp -lavcodec -lavutil -lavformat -I/usr/include/ffmpeg-cuda -o avformat_open_input_example



Run :


./avformat_open_input_example "udp://127.0.0.1:5000?reuse=1&pkt_size=1316&buffer_size=1310720&fifo_size=40000"



Version of ffmpeg underlying libraries :


libavutil 58. 7.100 / 58. 7.100
libavcodec 60. 11.100 / 60. 11.100
libavformat 60. 5.100 / 60. 5.100
libavdevice 60. 2.100 / 60. 2.100
libavfilter 9. 8.100 / 9. 8.100
libswscale 7. 2.100 / 7. 2.100
libswresample 4. 11.100 / 4. 11.100