summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--stream/dvbin.h2
-rw-r--r--stream/stream_dvb.c14
2 files changed, 15 insertions, 1 deletions
diff --git a/stream/dvbin.h b/stream/dvbin.h
index 61bc0b1e18..2a9130e5aa 100644
--- a/stream/dvbin.h
+++ b/stream/dvbin.h
@@ -55,7 +55,7 @@
#define DVB_CHANNEL_HIGHER 1
#ifndef DMX_FILTER_SIZE
-#define DMX_FILTER_SIZE 16
+#define DMX_FILTER_SIZE 32
#endif
typedef struct {
diff --git a/stream/stream_dvb.c b/stream/stream_dvb.c
index 6a50bb66f5..e3503af697 100644
--- a/stream/stream_dvb.c
+++ b/stream/stream_dvb.c
@@ -387,6 +387,20 @@ static dvb_channels_list *dvb_get_channels(struct mp_log *log, char *filename, i
ptr->pids_cnt++;
}
+ /* Add some PIDs which are mandatory in DVB,
+ * and contain human-readable helpful data. */
+
+ /* This is the STD, the service description table.
+ * It contains service names and such, ffmpeg decodes it. */
+ ptr->pids[ptr->pids_cnt] = 0x0011;
+ ptr->pids_cnt++;
+
+ /* This is the EIT, which contains EPG data.
+ * ffmpeg can not decode it (yet), but e.g. VLC
+ * shows what was recorded. */
+ ptr->pids[ptr->pids_cnt] = 0x0012;
+ ptr->pids_cnt++;
+
if (ptr->service_id != -1) {
/* We have the PMT-PID in addition.
This will be found later, when we tune to the channel.