diff options
Diffstat (limited to 'media/base')
-rw-r--r-- | media/base/media_posix.cc | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/media/base/media_posix.cc b/media/base/media_posix.cc index 4bddf6d..94c1a89 100644 --- a/media/base/media_posix.cc +++ b/media/base/media_posix.cc @@ -122,6 +122,11 @@ void av_free(void* ptr) { return av_free_ptr(ptr); } +int64_t (*av_rescale_q_ptr)(int64_t a, AVRational bq, AVRational cq) = NULL; +int64_t av_rescale_q(int64_t a, AVRational bq, AVRational cq) { + return av_rescale_q_ptr(a, bq, cq); +} + } // extern "C" @@ -240,6 +245,9 @@ bool InitializeMediaLibrary(const FilePath& module_dir) { av_free_ptr = reinterpret_cast<void (*)(void*)>( dlsym(libs[FILE_LIBAVUTIL], "av_free")); + av_rescale_q_ptr = + reinterpret_cast<int64_t (*)(int64_t, AVRational, AVRational)>( + dlsym(libs[FILE_LIBAVUTIL], "av_rescale_q")); // Check that all the symbols were loaded correctly before returning true. if (av_get_bits_per_sample_format_ptr && @@ -259,7 +267,8 @@ bool InitializeMediaLibrary(const FilePath& module_dir) { av_register_protocol_ptr && av_malloc_ptr && - av_free_ptr) { + av_free_ptr && + av_rescale_q_ptr) { return true; } |