diff options
author | hschang <chang@dev3> | 2017-08-21 07:18:36 (GMT) |
---|---|---|
committer | hschang <chang@dev3> | 2017-08-21 07:18:36 (GMT) |
commit | 7963a66b2debe9cf6ae566cb88511fdfdc9dc216 (patch) | |
tree | 8ac4bb2338a409e8e62f71e5a4ceb5d94fba3b5a /lib/dvb/decoder.cpp | |
parent | dd4c8249ef0b08234b6239da9bef26ed7e33ac78 (diff) |
Add QuadPiP plugin.
Diffstat (limited to 'lib/dvb/decoder.cpp')
-rw-r--r-- | lib/dvb/decoder.cpp | 48 |
1 files changed, 45 insertions, 3 deletions
diff --git a/lib/dvb/decoder.cpp b/lib/dvb/decoder.cpp index 2c8044b..2091114 100644 --- a/lib/dvb/decoder.cpp +++ b/lib/dvb/decoder.cpp @@ -186,7 +186,21 @@ int eDVBAudio::startPid(int pid, int type) pes.pid = pid; pes.input = DMX_IN_FRONTEND; pes.output = DMX_OUT_DECODER; - pes.pes_type = m_dev ? DMX_PES_AUDIO1 : DMX_PES_AUDIO0; /* FIXME */ + switch (m_dev) + { + case 0: + pes.pes_type = DMX_PES_AUDIO0; + break; + case 1: + pes.pes_type = DMX_PES_AUDIO1; + break; + case 2: + pes.pes_type = DMX_PES_AUDIO2; + break; + case 3: + pes.pes_type = DMX_PES_AUDIO3; + break; + } pes.flags = 0; eDebugNoNewLine("DMX_SET_PES_FILTER(0x%02x) - audio - ", pid); if (::ioctl(m_fd_demux, DMX_SET_PES_FILTER, &pes) < 0) @@ -500,7 +514,21 @@ int eDVBVideo::startPid(int pid, int type) pes.pid = pid; pes.input = DMX_IN_FRONTEND; pes.output = DMX_OUT_DECODER; - pes.pes_type = m_dev ? DMX_PES_VIDEO1 : DMX_PES_VIDEO0; /* FIXME */ + switch (m_dev) + { + case 0: + pes.pes_type = DMX_PES_VIDEO0; + break; + case 1: + pes.pes_type = DMX_PES_VIDEO1; + break; + case 2: + pes.pes_type = DMX_PES_VIDEO2; + break; + case 3: + pes.pes_type = DMX_PES_VIDEO3; + break; + } pes.flags = 0; eDebugNoNewLine("DMX_SET_PES_FILTER(0x%02x) - video - ", pid); if (::ioctl(m_fd_demux, DMX_SET_PES_FILTER, &pes) < 0) @@ -829,7 +857,21 @@ int eDVBPCR::startPid(int pid) pes.pid = pid; pes.input = DMX_IN_FRONTEND; pes.output = DMX_OUT_DECODER; - pes.pes_type = m_dev ? DMX_PES_PCR1 : DMX_PES_PCR0; /* FIXME */ + switch (m_dev) + { + case 0: + pes.pes_type = DMX_PES_PCR0; + break; + case 1: + pes.pes_type = DMX_PES_PCR1; + break; + case 2: + pes.pes_type = DMX_PES_PCR2; + break; + case 3: + pes.pes_type = DMX_PES_PCR3; + break; + } pes.flags = 0; eDebugNoNewLine("DMX_SET_PES_FILTER(0x%02x) - pcr - ", pid); if (::ioctl(m_fd_demux, DMX_SET_PES_FILTER, &pes) < 0) |