aboutsummaryrefslogtreecommitdiffstats
path: root/src/decoder/plugins/FfmpegDecoderPlugin.cxx (unfollow)
Commit message (Collapse)AuthorFilesLines
2015-06-20decoder/ffmpeg: skip unwanted samples after seekingMax Kellermann1-5/+48
When seeking to the beginning of a packet, skip the samples that come before the desired time stamp.
2015-06-20decoder/ffmpeg: use AVSEEK_FLAG_BACKWARD for seekingMax Kellermann1-1/+5
Ask FFmpeg to seek to the next packet boundary *before* the seek position, so we don't miss audio data. Now we get too much, but we'll solve that in the next commit.
2015-06-19decoder/ffmpeg: move code to StreamRelativePts()Max Kellermann1-6/+20
2014-12-23decoder/ffmpeg: support interleaved floating pointMax Kellermann1-0/+1
2014-11-07decoder/ffmpeg: support opusMax Kellermann1-1/+2
2014-10-25decoder/ffmpeg: recognize MIME type audio/aacpSteven OBrien1-0/+1
2014-08-29TagHandler: pass SongTime to duration()Max Kellermann1-3/+6
2014-08-29DecoderAPI: pass SignedSongTime to decoder_initialized()Max Kellermann1-3/+5
2014-08-26DecoderAPI: use std::chrono::duration for decoder_seek*()Max Kellermann1-3/+11
For type safety and code readability.
2014-08-26decoder/ffmpeg: use integer seek timesMax Kellermann1-3/+3
2014-08-19decoder/ffmpeg: check InputStream::KnownSize()Max Kellermann1-0/+3
2014-08-18{input,decoder}/ffmpeg: move ffmpeg_domain to lib/ffmpeg/Domain.cxxMax Kellermann1-2/+1
Eliminate duplicate definition (in input plugin and decoder plugin).
2014-05-22InputStream: make Seek() always absoluteMax Kellermann1-2/+21
Remove the "whence" parameter that is not actually necessary, and only complicates the InputStream implementations.
2014-05-12InputStream: "protect" attributesMax Kellermann1-4/+4
2014-05-11InputStream: convert to classMax Kellermann1-3/+3
2014-02-07fixed possible format_context not closed in ffmpeg_decodegeneticdrift1-1/+4
2014-01-24Input*: move to input/Max Kellermann1-1/+1
2014-01-24decoder/*: move to decoder/plugins/Max Kellermann1-1/+1
2014-01-15decoder/ffmpeg: support libav v10_alpha1Max Kellermann1-1/+11
2014-01-15decoder/ffmpeg: include cleanupMax Kellermann1-1/+0
2014-01-15decoder/ffmpeg: check for av_samples_get_buffer_size() errorsMax Kellermann1-0/+3
Fixes potential nullptr dereference.
2014-01-14decoder/ffmpeg: check for av_samples_get_buffer_size() errorsMax Kellermann1-0/+3
Fixes potential nullptr dereference.
2014-01-13copyright year 2014Max Kellermann1-1/+1
2013-12-20fix FfmpegDecoderPlugin to use relative timestampsSteven O'Brien1-4/+6
2013-11-28include cleanup using iwyuMax Kellermann1-1/+0
2013-11-28decoder/ffmpeg: use IgnoreError instead of local Error instanceMax Kellermann1-5/+2
2013-11-04Log: add level "DEFAULT"Max Kellermann1-2/+2
Map LogLevel::INFO to G_LOG_LEVEL_INFO, and LogLevel::DEFAULT to G_LOG_LEVEL_MESSAGE. Now client connect/disconnect message are only logged on log_level "secure".
2013-10-23input_stream: rename struct to InputStreamMax Kellermann1-15/+15
2013-10-23InputStream: add method Rewind()Max Kellermann1-10/+4
2013-10-21decoder: rename the struct to "Decoder"Max Kellermann1-7/+7
2013-10-21decoder_plugin: rename struct to DecoderPluginMax Kellermann1-1/+1
2013-10-19*: use nullptr instead of NULLMax Kellermann1-17/+17
2013-10-19decoder/gme,input/curl,...: use static buffers instead of g_strdup_printf()Max Kellermann1-13/+7
2013-10-02Log: new logging library APIMax Kellermann1-27/+33
Prepare to migrate away from GLib. Currently, we're still using GLib as a backend.
2013-09-27DecoderCommand: convert to strictly-typed enumMax Kellermann1-7/+6
2013-09-05Tag, ...: move to libtag.aMax Kellermann1-1/+1
2013-09-05InputLegacy: move functions to the input_stream classMax Kellermann1-3/+2
2013-09-04util/Error: new error passing libraryMax Kellermann1-6/+9
Replaces GLib's GError.
2013-08-07FfmpegDecoderPlugin: Allocate the interleaved buffer as needed instead of ↵Alexis Ballier1-17/+29
using an arbitrary big constant. Also, save a memcpy when FFmpeg outputs interleaved audio. Fixes build with FFmpeg 2.0.
2013-08-05decoder/ffmpeg: convert struct mpd_ffmpeg_stream to a classMax Kellermann1-47/+28
2013-08-04*: use gcc.h macros instead of GLibMax Kellermann1-4/+4
2013-08-04DecoderPlugin: pass config_param referenceMax Kellermann1-1/+1
2013-08-03audio_format: convert to C++Max Kellermann1-10/+15
2013-07-31decoder/ffmpeg: require ffmpeg/libav 0.8Max Kellermann1-89/+0
Now that even Debian stable has picked up version 0.8, we can safely make this a requirement, and remove a lot of old cruft.
2013-07-29audio_check: convert to C++Max Kellermann1-4/+1
2013-07-29tag_handler: convert to C++Max Kellermann1-1/+1
2013-07-28decoder_api: convert to C++Max Kellermann1-1/+1
2013-04-08decoder/ffmpeg: suppress warning about unused variableMax Kellermann1-0/+2
Only relevant for old ffmpeg versions.
2013-04-05ffmpeg decoder plugin: do not allocate an AVFrame on stack.Anton Khirnov1-5/+24
AVFrame must be allocated with avcodec_alloc_frame().
2013-01-28InputStream: use std::stringMax Kellermann1-3/+4