
Recherche avancée
Médias (1)
-
Bug de détection d’ogg
22 mars 2013, par
Mis à jour : Avril 2013
Langue : français
Type : Video
Autres articles (64)
-
Websites made with MediaSPIP
2 mai 2011, parThis page lists some websites based on MediaSPIP.
-
Demande de création d’un canal
12 mars 2010, parEn fonction de la configuration de la plateforme, l’utilisateur peu avoir à sa disposition deux méthodes différentes de demande de création de canal. La première est au moment de son inscription, la seconde, après son inscription en remplissant un formulaire de demande.
Les deux manières demandent les mêmes choses fonctionnent à peu près de la même manière, le futur utilisateur doit remplir une série de champ de formulaire permettant tout d’abord aux administrateurs d’avoir des informations quant à (...) -
Gestion de la ferme
2 mars 2010, parLa ferme est gérée dans son ensemble par des "super admins".
Certains réglages peuvent être fais afin de réguler les besoins des différents canaux.
Dans un premier temps il utilise le plugin "Gestion de mutualisation"
Sur d’autres sites (4830)
-
Ffmpeg is blocking the input video file while using GStreamer as backend with EmguCv VideoCapture [closed]
9 octobre 2023, par Riya SharmaI am getting the error -
cannot access the file because it is being used by another process


I am using EmguCV VideoCapture object inorder to capture input video and converting it to frames.
The frames are being saved in memory. Once all the frames are captured, i am trying to delete the input file. After that ffmpeg is being used inorder to convert the frames to the output video.


When i am using reader=new VideoCapture(filepath) ; everything works fine but when i use the following -


string pipeline=“filesrc location=filepath ! decodebin ! videoconvert ! appsink” ;
reader=new VideoCapture(pipeline,VideoCapture.API.Gstreamer) ;


The code starts giving error -
cannot access the file because it is being used by another process


Using resource monitor, got to know that ffmpeg is blocking the input file.


I am using GStreamer at the input end whereas Ffmpeg at the output end. So Ffmpeg should not access the input file but still it is accessing and blocking it and therefore the input file is not getting deleted.


Does anyone have any idea on how to resolve this issue ?


-
libswscale : GBRAP input & output and GBRAP16 input support
6 mai 2013, par Paul B Mahollibswscale : GBRAP input & output and GBRAP16 input support
Signed-off-by : Paul B Mahol <onemda@gmail.com>
- [DH] libavcodec/utils.c
- [DH] libswscale/input.c
- [DH] libswscale/output.c
- [DH] libswscale/swscale.c
- [DH] libswscale/swscale_internal.h
- [DH] libswscale/swscale_unscaled.c
- [DH] libswscale/utils.c
- [DH] tests/ref/fate/filter-pixdesc
- [DH] tests/ref/fate/filter-pixfmts-copy
- [DH] tests/ref/fate/filter-pixfmts-field
- [DH] tests/ref/fate/filter-pixfmts-hflip
- [DH] tests/ref/fate/filter-pixfmts-il
- [DH] tests/ref/fate/filter-pixfmts-null
- [DH] tests/ref/fate/filter-pixfmts-pad
- [DH] tests/ref/fate/filter-pixfmts-scale
- [DH] tests/ref/fate/filter-pixfmts-vflip
-
avformat_write_header() doesn't work when writing data to memory instead of file
12 novembre 2020, par Mohamed Kandeeli want to resample a given input format from memory to memory everything is good so far.


but when trying to get the output header from ffmpeg it doesn't work.


here i allocate the context and pass the write_buffer function pointer so that it doesn't write to a file but instead it will call my function with the required data


unsigned char * aviobuffer = (unsigned char *) av_malloc (32768);
AVIOContext * avio = avio_alloc_context (aviobuffer, 32768,1, NULL, NULL, write_buffer, NULL);

AVFormatContext* containerContext;
avformat_alloc_output_context2(&containerContext, NULL, "s16le", NULL);
containerContext->pb = avio;



here is my write_buffer function


std::vector<char>* data;
int write_buffer(void *opaque, uint8_t *buf, int buf_size)
{
 std::vector<char> tmp;
 tmp.assign(buf, buf + buf_size);
 data->insert(data->end(), tmp.begin(), tmp.end());
 return buf_size;
}
</char></char>


now when i call avformat_write_header() it doesn't call my write_buffer() function + it returns 0 which means success.


int ret = avformat_write_header(containerContext, NULL);



after that i call the appropriate functions to get the data body itself and my write_buffer() get called normally so i am now left with the data body with no header !!


how can i get the output header anyways ?