
Recherche avancée
Médias (91)
-
Corona Radiata
26 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Audio
-
Lights in the Sky
26 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Audio
-
Head Down
26 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Audio
-
Echoplex
26 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Audio
-
Discipline
26 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Audio
-
Letting You
26 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Audio
Autres articles (106)
-
Soumettre bugs et patchs
10 avril 2011Un logiciel n’est malheureusement jamais parfait...
Si vous pensez avoir mis la main sur un bug, reportez le dans notre système de tickets en prenant bien soin de nous remonter certaines informations pertinentes : le type de navigateur et sa version exacte avec lequel vous avez l’anomalie ; une explication la plus précise possible du problème rencontré ; si possibles les étapes pour reproduire le problème ; un lien vers le site / la page en question ;
Si vous pensez avoir résolu vous même le bug (...) -
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. -
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) (...)
Sur d’autres sites (9925)
-
ffmpeg : avcodec_open2 returns invalid argument
26 octobre 2020, par roariI'm reusing the sample code from the developer 64-bit release of FFmpeg in my application to encode a video :


AVCodec* pCodec_{nullptr};
AVCodecContext* pContext_{nullptr};

avcodec_register_all();
pCodec_ = avcodec_find_encoder(AV_CODEC_ID_MPEG2VIDEO);
if (!pCodec_) {}

pContext_ = avcodec_alloc_context3(pCodec_);
if (!pContext_) {}

pContext_->bit_rate = 400000;
pContext_->width = size.width();
pContext_->height = size.height();

pContext_->time_base.den = 1;
pContext_->time_base.num = fps;

pContext_->gop_size = 10;
pContext_->max_b_frames = 1;
pContext_->pix_fmt = AV_PIX_FMT_BGR0;

if (codec_id == AV_CODEC_ID_H264) {
 av_opt_set(pContext_->priv_data, "preset", "slow", 0);
}

int err = avcodec_open2(pContext_, pCodec_, nullptr);
if (err < 0) {}



AVCodec*
andAVCodecContext*
look like they are allocated correctly.avcodec_open2
then returns invalid argument (-22
).

I use : Windows 10 64, VS2013 Compiler, Qt Creator IDE, ffmpeg(2016-05-12) 64bit.


The sample I took the code from is decoding_encoding.c.


Any ideas ?


-
VideoJS seekable().end(0) always returns 0
18 septembre 2022, par Clovis NyuI am trying to jump to a particular timestamp of a video, but using
player.currentTime(someTime)
always sends the video back to the start. Upon doing some research, I found that runningplayer.seekable().end(0)
always returns 0. I realize that this might be a problem with the fact that I'm using MP4, but I've tried using

ffmpeg -i input.mp4 -c copy -movflags +faststart output.mp4



to fix it and it doesn't work. Below is my code




 


 <source src="http://localhost:8000/some_video.mp4" type="video/mp4"></source>
 <p class="vjs-no-js">
 To view this video please enable JavaScript, and consider upgrading to a
 web browser that
 <a href="https://videojs.com/html5-video-support/" target="_blank">supports HTML5 video
 </a></p>


<button>Jump</button>

<code class="echappe-js"><script src="https://vjs.zencdn.net/7.7.5/video.js"></script>

<script>&#xA; var VIDEO_JS = videojs(&#x27;my-video&#x27;);&#xA;&#xA; function jump() {&#xA; VIDEO_JS.currentTime(10);&#xA; }&#xA;</script>




For more context, the videos are taken from youtube, the audio is then split into vocals and accompaniment using spleeter, then ffmpeg is used to merge back the resulting audio files into the original video.


Any help would be appreciated. Thanks !


-
libav/ffmpeg : avcodec_decode_video2() returns -1 when separating demultiplexing and decoding
26 avril 2013, par unbekanntI'm using libav (from a C++ program on Linux and Windows) to decode video streams from a file, which works fine (decoding various formats like H264 and MPEG2) using avformat_open_input(), av_read_frame() and avcodec_decode_video2().
Now I have to separate demultiplexing and decoding. One class will call avformat_open_input() and av_read_frame() and then pass the AVPackets into a queue that is read by another class. There I use avcodec_alloc_context3() to get the AVCodecContext needed for avcodec_decode_video2(). I've tested that with a MPEG2 video stream and it works.
Problems arise if I try to decode a H264 stream : avcodec_decode_video2() always returns -1 and outputs "no frame". I understand that additional data (SPS/PPS) is needed to decode this stream, so I've tried to replicate the original AVCodecContext from the demultiplexer in the decoder, but it won't work :
- Copying the content of the extradata field and setting all other values that differ from the default ones in the decoder : -1 is returned
- Using the same context (i.e. passing along the pointer) results in a crash
I also tried to set CODEC_FLAG2_CHUNKS. avcodec_decode_video2() then always returns packet.size - 3 (??) and frameFinished is never set to 1.
In my opinion I have a general problem here that will arise whenever settings from the original CodecContext are needed to decode the AVPackets. I'd be grateful for any hints on how to solve that problem !
EDIT : Sometimes writing down your problem helps solving it... Using a copy of the context struct (avcodec_copy_context) and opening the codec only after receiving the copy results in decoded frames. Does anyone know if that is safe or the best way to do it ?