diff options
| author | 2024-10-27 19:58:31 -0400 | |
|---|---|---|
| committer | 2024-10-27 19:58:31 -0400 | |
| commit | d6735566cebf82a5d22a3ade22b9acd52fbe11a5 (patch) | |
| tree | 7240a91747013e0dcdf133ea916e8fe1aaf7f2a7 /src/codec | |
| parent | 72eb0c6381f9406a4e45d23f65373d4936770433 (diff) | |
| download | camu-d6735566cebf82a5d22a3ade22b9acd52fbe11a5.tar.gz camu-d6735566cebf82a5d22a3ade22b9acd52fbe11a5.tar.bz2 camu-d6735566cebf82a5d22a3ade22b9acd52fbe11a5.zip | |
Buffer tweaks
Signed-off-by: Andrew Opalach <andrew@akon.city>
Diffstat (limited to 'src/codec')
| -rw-r--r-- | src/codec/ffmpeg/decoder.c | 3 | ||||
| -rw-r--r-- | src/codec/ffmpeg/demuxer.c | 4 |
2 files changed, 4 insertions, 3 deletions
diff --git a/src/codec/ffmpeg/decoder.c b/src/codec/ffmpeg/decoder.c index 375bdfe..03940a0 100644 --- a/src/codec/ffmpeg/decoder.c +++ b/src/codec/ffmpeg/decoder.c @@ -43,7 +43,8 @@ static bool ff_decoder_init(struct camu_decoder *dec, struct camu_renderer *rend av->codec_context->thread_type = FF_THREAD_SLICE; al_log_debug("ff_decoder", "Using %i threads for decoder.", cpus); -#ifndef CAMU_SINK_NO_VIDEO +//#ifndef CAMU_SINK_NO_VIDEO +#if 0 if (codecpar->codec_type == AVMEDIA_TYPE_VIDEO && renderer && renderer->get_buffer2) { av->codec_context->get_buffer2 = renderer->get_buffer2; av->codec_context->opaque = renderer->opaque; diff --git a/src/codec/ffmpeg/demuxer.c b/src/codec/ffmpeg/demuxer.c index 7ff0dca..8ea645b 100644 --- a/src/codec/ffmpeg/demuxer.c +++ b/src/codec/ffmpeg/demuxer.c @@ -154,13 +154,13 @@ static u64 ff_demuxer_get_duration(struct camu_demuxer *demux) static bool ff_demuxer_seek(struct camu_demuxer *demux, u64 pos) { struct camu_ff_demuxer *av = (struct camu_ff_demuxer *)demux; - if (pos > av->duration) pos = av->duration; al_assert(pos <= INT64_MAX); - s64 ts = av_rescale_q((s64)pos, (AVRational){ 1, 1000000 }, AV_TIME_BASE_Q); + if (pos > av->duration) pos = av->duration; if (av->eof) { avformat_flush(av->format_context); av->eof = false; } + s64 ts = (s64)pos; if (avformat_seek_file(av->format_context, -1, INT64_MIN, ts, ts, 0) < 0) { return false; } |