diff options
author | wm4 <wm4@nowhere> | 2015-05-04 23:57:25 +0200 |
---|---|---|
committer | Diogo Franco (Kovensky) <diogomfranco@gmail.com> | 2015-05-07 10:46:53 +0900 |
commit | 322c79a6e1bac2e8f1a5e042ac0b635c9dae629f (patch) | |
tree | f6317c3bf0046dfa4e7602f2a6bc8dd0ff6034ba | |
parent | 6bcb8d200f28d69158792caa6a10c96fd8be4a5b (diff) | |
download | mpv-322c79a6e1bac2e8f1a5e042ac0b635c9dae629f.tar.bz2 mpv-322c79a6e1bac2e8f1a5e042ac0b635c9dae629f.tar.xz |
audio: introduce mp_audio readonly bit
Convenience for the following commit.
(cherry picked from commit 1b0b094ca2c25ad162f8f8c84ebebef9a963552e)
-rw-r--r-- | audio/audio.c | 3 | ||||
-rw-r--r-- | audio/audio.h | 1 |
2 files changed, 3 insertions, 1 deletions
diff --git a/audio/audio.c b/audio/audio.c index ea0b6203e2..263470261e 100644 --- a/audio/audio.c +++ b/audio/audio.c @@ -118,6 +118,7 @@ void mp_audio_set_null_data(struct mp_audio *mpa) mpa->allocated[n] = NULL; } mpa->samples = 0; + mpa->readonly = false; } static int get_plane_size(const struct mp_audio *mpa, int samples) @@ -250,7 +251,7 @@ void mp_audio_skip_samples(struct mp_audio *data, int samples) // Will return true for non-refcounted frames. bool mp_audio_is_writeable(struct mp_audio *data) { - bool ok = true; + bool ok = !data->readonly; for (int n = 0; n < MP_NUM_CHANNELS; n++) { if (data->allocated[n]) ok &= av_buffer_is_writable(data->allocated[n]); diff --git a/audio/audio.h b/audio/audio.h index cbcd87cc46..a633a15b4d 100644 --- a/audio/audio.h +++ b/audio/audio.h @@ -38,6 +38,7 @@ struct mp_audio { int bps; // size of sub-samples (af_fmt2bps(format)) // private + bool readonly; struct AVBufferRef *allocated[MP_NUM_CHANNELS]; }; |