summaryrefslogtreecommitdiffstats
path: root/stream/stream_dvb.c
diff options
context:
space:
mode:
authorOliver Freyermuth <o.freyermuth@googlemail.com>2015-01-05 20:27:22 +0100
committerwm4 <wm4@nowhere>2015-01-06 19:52:27 +0100
commit7f84da4902e183013f1250fed2dbfaa86a636db1 (patch)
tree4d1e6bf99cf8dbf6941acbb289fb24d2f570bc49 /stream/stream_dvb.c
parentf309ecebe5da1eb7daa93a2b8bda3e956d8ebfec (diff)
downloadmpv-7f84da4902e183013f1250fed2dbfaa86a636db1.tar.bz2
mpv-7f84da4902e183013f1250fed2dbfaa86a636db1.tar.xz
stream_dvb: Record PIDs with human-readable content, bump max demuxer count.
There is the STD which contains service-names (ffmpeg can understand it), and the EIT which contains the EPG (ffmpeg does not parse it, but e.g. VLC does). As we now have more PIDs in general, increase the maximum number of demuxers we can open. ffmpeg has an internal limit of 64 PIDs, we are still far from that.
Diffstat (limited to 'stream/stream_dvb.c')
-rw-r--r--stream/stream_dvb.c14
1 files changed, 14 insertions, 0 deletions
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.