From af21356dc9a9979c68e51970414ab95b9f9f2b76 Mon Sep 17 00:00:00 2001 From: Klaas de Waal Date: Sun, 3 May 2020 17:46:07 +0200 Subject: [PATCH] Add search function for DVB extension descriptor --- mythtv/libs/libmythtv/mpeg/mpegdescriptors.cpp | 13 +++++++++++++ mythtv/libs/libmythtv/mpeg/mpegdescriptors.h | 1 + 2 files changed, 14 insertions(+) diff --git a/mythtv/libs/libmythtv/mpeg/mpegdescriptors.cpp b/mythtv/libs/libmythtv/mpeg/mpegdescriptors.cpp index c57298ac433..708fe0398f5 100644 --- a/mythtv/libs/libmythtv/mpeg/mpegdescriptors.cpp +++ b/mythtv/libs/libmythtv/mpeg/mpegdescriptors.cpp @@ -86,6 +86,19 @@ const unsigned char *MPEGDescriptor::Find(const desc_list_t &parsed, return nullptr; } +const unsigned char *MPEGDescriptor::FindExtension(const desc_list_t &parsed, + uint desc_tag) +{ + for (const auto *item : parsed) + { + if (item[0] == DescriptorID::extension && + item[1] > 1 && + item[2] == desc_tag) + return item; + } + return nullptr; +} + desc_list_t MPEGDescriptor::FindAll(const desc_list_t &parsed, uint desc_tag) { desc_list_t tmp; diff --git a/mythtv/libs/libmythtv/mpeg/mpegdescriptors.h b/mythtv/libs/libmythtv/mpeg/mpegdescriptors.h index 98628e83b75..1b4b6569b3b 100644 --- a/mythtv/libs/libmythtv/mpeg/mpegdescriptors.h +++ b/mythtv/libs/libmythtv/mpeg/mpegdescriptors.h @@ -329,6 +329,7 @@ class MTV_PUBLIC MPEGDescriptor int excluded_descid); static const unsigned char *Find(const desc_list_t &parsed, uint desc_tag); + static const unsigned char *FindExtension(const desc_list_t &parsed, uint desc_tag); static desc_list_t FindAll(const desc_list_t &parsed, uint desc_tag); static const unsigned char *FindBestMatch(