
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 (57)
-
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 -
Librairies et logiciels spécifiques aux médias
10 décembre 2010, parPour un fonctionnement correct et optimal, plusieurs choses sont à prendre en considération.
Il est important, après avoir installé apache2, mysql et php5, d’installer d’autres logiciels nécessaires dont les installations sont décrites dans les liens afférants. Un ensemble de librairies multimedias (x264, libtheora, libvpx) utilisées pour l’encodage et le décodage des vidéos et sons afin de supporter le plus grand nombre de fichiers possibles. Cf. : ce tutoriel ; FFMpeg avec le maximum de décodeurs et (...) -
Creating farms of unique websites
13 avril 2011, parMediaSPIP platforms can be installed as a farm, with a single "core" hosted on a dedicated server and used by multiple websites.
This allows (among other things) : implementation costs to be shared between several different projects / individuals rapid deployment of multiple unique sites creation of groups of like-minded sites, making it possible to browse media in a more controlled and selective environment than the major "open" (...)
Sur d’autres sites (8798)
-
Read Output in Batch
29 septembre 2016, par arielbejeI am using this code to try and download a video+subtitles using youtube-dl and then combine them using ffmpeg.
I am trying to set the video/subtitle output to title.extension instead of the regular title id.extesion, but to do that youtube-dl has a command that outputs it like an echo command, so I need to read it.
@echo off
echo Write a link and press enter
set /p link=
cls
youtube-dl.exe -u myusername -p mypassword --skip-download --sub-lang enUS --sub-format "ass" --output "%(uploader)s%(title)s.%(ext)s" "%link%"
youtube-dl.exe -u myusername -p mypassword -f worst --ffmpeg-location "%cd%\ffmpeg.exe" --hls-prefer-ffmpeg --console-title --output "%(uploader)s%(title)s.%(ext)s" "%link%"
youtube-dl.exe -u myusername -p mypassword --skip-download --get-title "%link%" > title.txt
for /f "delims=" %%x in (title.txt) do set title=%%x
ffmpeg.exe -i "%cd%\%title%.flv" -vf "ass=%cd%\%title%.ass" "%cd%\%title%.mkv"
pause -
libpostproc : update APIChanges and version for "deprecate the AMD 3DNow"
15 avril, par Sean McGovern -
FFmpeg C demo generates "Could not update timestamps for skipped samples" warning
14 juillet 2024, par aabijiWhen I run my demo code I get these warnings when testing it on a webm video :


[opus @ 0x5ec0fc1b4580] Could not update timestamps for skipped samples.
[opus @ 0x5ec0fc1b4580] Could not update timestamps for discarded samples.



But it's not limited to webm, I also get this warning when running with a mp4 :


[aac @ 0x61326fb83700] Could not update timestamps for skipped samples.



I know I'm getting warnings because ffmpeg must be skipping packets, but I have no idea why. Why are we skipping packets (and if that's not the problem, what is) and how can we fix the problem ?


Here's my code for context :


#include <libavcodec></libavcodec>avcodec.h>
#include <libavformat></libavformat>avformat.h>

int main()
{
 int ret = 0;

 const AVCodec* codec;
 AVFormatContext* fmt_ctx = avformat_alloc_context();

 const char* file2 = "/home/aabiji/Videos/sync-test.webm";
 if ((ret = avformat_open_input(&fmt_ctx, file2, NULL, NULL)) < 0) {
 av_log(NULL, AV_LOG_ERROR, "Couldn't open input file\n");
 return -1;
 }

 ret = av_find_best_stream(fmt_ctx, AVMEDIA_TYPE_AUDIO, -1, -1, &codec, 0);
 if (ret < 0) {
 av_log(NULL, AV_LOG_ERROR, "Couldn't find a media stream\n");
 return -1;
 }

 int stream_index = ret;
 AVStream* media = fmt_ctx->streams[stream_index];

 AVCodecContext* codec_context = avcodec_alloc_context3(codec);
 if (avcodec_parameters_to_context(codec_context, media->codecpar) < 0) {
 return -1;
 }

 if ((ret = avcodec_open2(codec_context, codec, NULL)) < 0) {
 av_log(NULL, AV_LOG_ERROR, "Couldn't open media decoder\n");
 return -1;
 }

 AVPacket* packet = av_packet_alloc();
 AVFrame* frame = av_frame_alloc();

 while ((ret = av_read_frame(fmt_ctx, packet)) >= 0) {
 if (packet->stream_index != stream_index) {
 continue;
 }

 ret = avcodec_send_packet(codec_context, packet);
 if (ret < 0) {
 break; // Error
 }

 while (ret >= 0) {
 ret = avcodec_receive_frame(codec_context, frame);
 if (ret == AVERROR_EOF || ret == AVERROR(EAGAIN)) {
 break;
 } else if (ret < 0) {
 fprintf(stderr, "Error during decoding\n");
 break;
 }
 av_frame_unref(frame);
 }

 av_packet_unref(packet);
 }

 avcodec_flush_buffers(codec_context);

 av_packet_unref(packet);
 av_frame_free(&frame);
 av_packet_free(&packet);
 avcodec_free_context(&codec_context);
 avformat_close_input(&fmt_ctx);
 return 0;
}