summaryrefslogtreecommitdiffstats
path: root/k9author/k9avidecode.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'k9author/k9avidecode.cpp')
-rw-r--r--k9author/k9avidecode.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/k9author/k9avidecode.cpp b/k9author/k9avidecode.cpp
index 77f8d2b..a3a23c6 100644
--- a/k9author/k9avidecode.cpp
+++ b/k9author/k9avidecode.cpp
@@ -40,7 +40,7 @@ int glibref=0;
#ifdef NEW_FFMPEG
#ifdef NEEDS_AV_FREE_PACKET
-void av_free_packet(AVPacket *pkt)
+void av_free_packet_internal(AVPacket *pkt)
{
if (pkt) {
if (pkt->destruct) pkt->destruct(pkt);
@@ -121,6 +121,9 @@ k9AviDecode::k9AviDecode(TQObject *parent, const char *name)
errs << i18n("Cannot open the library %1").arg("libswscale");
# endif
av_free = (av_free_t)dlsym(CodecHandle,"av_free");
+ av_free_packet = (av_free_packet_t)dlsym(CodecHandle,"av_free_packet");
+ if (av_free_packet==0)
+ av_free_packet=av_free_packet_internal;
avcodec_close = (avcodec_close_t)dlsym(FormatHandle,"avcodec_close");
# if LIBAVFORMAT_VERSION_INT >= AV_VERSION_INT(53, 17, 0)
avformat_close_input = (avformat_close_input_t)dlsym(FormatHandle,"avformat_close_input");