mirror of
https://github.com/mpv-player/mpv
synced 2024-12-28 10:02:17 +00:00
f309ecebe5
If VDR-channel-config is used, we know the service_id. Using that, PMT can be extracted from PAT (code for that inspired by szap-s2 again). For this, we need to demux PAT with a special filter-setup, and once PMT was found it can be added to the PID-list. PMT is only resolved the first time one tunes to a channel, then stored in the channel-list in memory. With PMT available, ffmpeg can safely decode the teletext-pids.
41 lines
1.6 KiB
C
41 lines
1.6 KiB
C
/*
|
|
* This file is part of MPlayer.
|
|
*
|
|
* MPlayer is free software; you can redistribute it and/or modify
|
|
* it under the terms of the GNU General Public License as published by
|
|
* the Free Software Foundation; either version 2 of the License, or
|
|
* (at your option) any later version.
|
|
*
|
|
* MPlayer is distributed in the hope that it will be useful,
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
* GNU General Public License for more details.
|
|
*
|
|
* You should have received a copy of the GNU General Public License along
|
|
* with MPlayer; if not, write to the Free Software Foundation, Inc.,
|
|
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
|
*/
|
|
|
|
#ifndef MPLAYER_DVB_TUNE_H
|
|
#define MPLAYER_DVB_TUNE_H
|
|
|
|
#include "dvbin.h"
|
|
|
|
struct mp_log;
|
|
|
|
int dvb_get_tuner_type(int fe_fd, struct mp_log *log);
|
|
int dvb_open_devices(dvb_priv_t *priv, int n, int demux_cnt);
|
|
int dvb_fix_demuxes(dvb_priv_t *priv, int cnt);
|
|
int dvb_set_ts_filt(dvb_priv_t *priv, int fd, uint16_t pid, dmx_pes_type_t pestype);
|
|
int dvb_get_pmt_pid(dvb_priv_t *priv, int card, int service_id);
|
|
int dvb_demux_stop(int fd);
|
|
int dvb_demux_start(int fd);
|
|
int dvb_tune(dvb_priv_t *priv, int freq, char pol, int srate, int diseqc,
|
|
int tone, bool is_dvb_s2, int stream_id, fe_spectral_inversion_t specInv,
|
|
fe_modulation_t modulation, fe_guard_interval_t guardInterval,
|
|
fe_transmit_mode_t TransmissionMode, fe_bandwidth_t bandWidth,
|
|
fe_code_rate_t HP_CodeRate, fe_code_rate_t LP_CodeRate,
|
|
fe_hierarchy_t hier, int timeout);
|
|
|
|
#endif /* MPLAYER_DVB_TUNE_H */
|