
Recherche avancée
Médias (1)
-
Rennes Emotion Map 2010-11
19 octobre 2011, par
Mis à jour : Juillet 2013
Langue : français
Type : Texte
Autres articles (37)
-
Les autorisations surchargées par les plugins
27 avril 2010, parMediaspip core
autoriser_auteur_modifier() afin que les visiteurs soient capables de modifier leurs informations sur la page d’auteurs -
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 (...) -
Emballe médias : à quoi cela sert ?
4 février 2011, parCe plugin vise à gérer des sites de mise en ligne de documents de tous types.
Il crée des "médias", à savoir : un "média" est un article au sens SPIP créé automatiquement lors du téléversement d’un document qu’il soit audio, vidéo, image ou textuel ; un seul document ne peut être lié à un article dit "média" ;
Sur d’autres sites (8018)
-
OpenGL and ffmpeg make video with stable fps
27 août 2022, par TurgutI've made a program that takes multiple vidoes as inputs, have ffmpeg decode them, send them to opengl, then create a window using glfw, draw textures on the screen using those videos (Edits those textures), then I read the screen using
glReadPixels
so ffmpeg can encode it. I send the read frames to the encoder and it encodes it. I specify the fps on start, but the problem is the video is faster then it's supposed to be. Now I can do something like this :

double pt_in_seconds = pts * (double)time_base.num / (double)time_base.den;
while (pt_in_seconds > glfwGetTime()) {
 glfwWaitEventsTimeout(pt_in_seconds - glfwGetTime());
}



But the problem with this is that this approach makes the run-time really long. So if I input a 1 hour video I have to wait for 1 hours. If I don't use this code snippet it generates the output as fast as it can, but like I said the output video is faster than it's supposed to be. Whats shown in the glfw window is irrelevant, it's hidden anyways, it's just there to manipulate/merge input videos.


Is there a better way for ffmpeg to stabilize the encoded information ? At the end of the day glfw just displays the decoded videos, since they are both on the same iteration.


It looks roughly like this :


...
while(true)
{
 // The actual program originally reads every input inside a vector here.
 // But since the program itself is really long I just did this as a representation
 uint8_t* decoded_data = decoder.decode_one_frame();
 
 // draw_frame_on_screen returns glReadPixels result.
 uint8_t* screen_data = opengl_engine.draw_frame_on_screen(decoded_data);

 encoder.encode_one_frame(screen_data);
}



Encoder is entirely just muxing.c from ffmpegs official docs, I've just removed the dummy image and added my screen_data as input.


Using ubuntu, GLFW, GLAD, ffmpeg.


-
Qt6.4.1 QProcess cannot call external program FFmpeg [closed]
21 décembre 2022, par XingchenBased on the official Qt example, slightly modified to call the external ffmpeg.exe for transcoding operations


QProcess *p = new QProcess(this);
QString program = "C:\\Users\\kyrio\\Documents\\Qt_Project\\build-test-Desktop_Qt_6_4_1_MinGW_64_bit-Debug\\debug";
QStringList arguments;
arguments << "ffmpeg" << "-i" << "C:\\Users\\kyrio\\Videos\\222.mp4" << "C:\\Users\\kyrio\\Videos\\223.mov";
p->start(program, arguments);



Run no results, try a variety of writing methods also no results, get the output is empty, and no FFmpeg-related processes under the task manager

Try to call cmd, task manager can see the sub-processes under the new cmd.exe

command is fine, can be called in the terminal, but need to add ./or.

can be successfully run in the terminal

Try prefixing arguments with.\or.\or./, still no response

Tried to get the exact path to the ffmpeg.exe file in the program string, still no response

I want to be able to successfully call ffmpeg.exe to achieve the video transcoding needs

I have made the "program" exact to ffmpeg.exe and this is still unresponsive.No process, no errorString output.The output of exitCode is also absent.


QString program = "C:\\Users\\kyrio\\Documents\\Qt_Project\\build-test-Desktop_Qt_6_4_1_MinGW_64_bit-Debug\\debug\\ffmpeg.exe";





I tried to start cmd and connected the errorOccurred signal, but there is no output, it is worth noting that the process cmd appears in the task manager

no output
task manager

-
Converting series of images with ffmpeg results in black video [migrated]
27 avril 2013, par Marco GagliardiI've just downloaded ffmpeg since it seems to perfectly match my needs (make a video from a set of pictures). I'm currently playing around with some examples just to get started and there's something weird happening that I can't explain.
I'm trying this command (provided in the official documentation) :ffmpeg -f image2 -pattern_type glob -i 'foo-*.jpeg' -r 12 -s WxH foo.avi
on a data set of 10 jpg pictures (of course I changed the pattern with '*.jpg'). The video seems to be encoded correctly but it's simply too fast to be sure about that (anyway it stops on the last frame that corresponds to the last picture). In order to get a longer video i thought to low the frame rate from 12 to 1 (one sec each picture) or 0.5 (2 sec each one) and so on.. no way ! with low rate values even if the video is played the pictures are simply not displayed. The player (VLC in my case) just shows a blank/empty video for a few seconds.
Am I making something wrong or have I misunderstood the -r parameter ? Is it something related to codecs involved ? Finally.. How can i get each picture displayed for 1 or 2 seconds ?
Here's the output :
MacBook-Pro$ ffmpeg -f image2 -pattern_type glob -i '*.jpg' -r 1 -s 200x300 foo.avi
ffmpeg version N-52517-g1e4f75d Copyright (c) 2000-2013 the FFmpeg developers
built on Apr 27 2013 19:41:11 with llvm-gcc 4.2.1 (LLVM build 2336.11.00)
configuration: --disable-yasm
libavutil 52. 27.101 / 52. 27.101
libavcodec 55. 6.100 / 55. 6.100
libavformat 55. 3.100 / 55. 3.100
libavdevice 55. 0.100 / 55. 0.100
libavfilter 3. 61.100 / 3. 61.100
libswscale 2. 2.100 / 2. 2.100
libswresample 0. 17.102 / 0. 17.102
Input #0, image2, from '*.jpg':
Duration: 00:00:00.40, start: 0.000000, bitrate: N/A
Stream #0:0: Video: mjpeg, yuvj422p, 2560x1920 [SAR 1:1 DAR 4:3], 25 fps, 25 tbr, 25 tbn, 25 tbc
File 'foo.avi' already exists. Overwrite ? [y/N] y
Output #0, avi, to 'foo.avi':
Metadata:
ISFT : Lavf55.3.100
Stream #0:0: Video: mpeg4 (FMP4 / 0x34504D46), yuv420p, 200x300 [SAR 2:1 DAR 4:3], q=2-31, 200 kb/s, 1 tbn, 1 tbc
Stream mapping:
Stream #0:0 -> #0:0 (mjpeg -> mpeg4)
Press [q] to stop, [?] for help
frame= 2 fps=0.0 q=2.0 Lsize= 43kB time=00:00:02.00 bitrate= 177.1kbits/s dup=0 drop=8
video:38kB audio:0kB subtitle:0 global headers:0kB muxing overhead 15.099197%
MacBook-Pro$