Commit Graph

291 Commits

Author SHA1 Message Date
Klaus Schmidinger 6e2f0f695f Now making sure the primary device goes into transfer mode for live viewing if the CAM wants to receive the TS data 2014-01-20 12:14:30 +01:00
Klaus Schmidinger 6f9929b1c0 Now unassigning CAMs from their devices when they are no longer used 2014-01-18 14:30:58 +01:00
Klaus Schmidinger e7c86c6760 Improved locking for CAM slots and made the pure functions of cCiAdapter have default implementations 2014-01-14 12:21:17 +01:00
Klaus Schmidinger a84defe86f Added support for buffered CAM decryption 2014-01-02 10:47:08 +01:00
Klaus Schmidinger 566c6fa464 Added receiving Ca pids to cCamSlot 2014-01-01 12:37:22 +01:00
Klaus Schmidinger 00e2415b81 Implemented cCamSlot::Decrypt() 2013-12-28 13:29:54 +01:00
Klaus Schmidinger 4e22b62192 cDevice::TrickSpeed() now has an additional parameter named Forward 2013-12-25 13:36:51 +01:00
Klaus Schmidinger 99321b371a Fixed a possible crash when shutting down VDR while subtitles are being displayed 2013-08-22 10:33:59 +02:00
Klaus Schmidinger cd10b439d0 Added basic support for positioners to control steerable satellite dishes 2013-08-21 11:02:52 +02:00
Klaus Schmidinger d962999161 Fixed initializing cDevice::keepTracks 2013-04-05 10:27:16 +02:00
Klaus Schmidinger a67fe0663d Fixed a possible deadlock when changing the audio track while replaying a recording 2013-03-07 13:27:05 +01:00
Klaus Schmidinger 4c827ff8a4 Fixed determining the priority of the primary device in case it is neither replaying nor receiving a live channel 2013-02-16 14:39:30 +01:00
Klaus Schmidinger bb47d52f95 Added missing 'const' to cDevice::HasProgramme() and cDevice::HasLock() 2013-02-16 13:06:16 +01:00
Klaus Schmidinger 45f660e358 When pausing live video, the current audio and subtitle tracks are now retained 2013-02-01 12:06:50 +01:00
Klaus Schmidinger 8f9136ecab In order to be able to play TS recordings from other sources, in which there is more than one PMT PID in the PAT, 'int cPatPmtParser::PatPmt(void)' has been changed to 'bool cPatPmtParser::IsPatPmt(int Pid)' 2012-11-19 10:32:31 +01:00
Klaus Schmidinger e24aa0aa1a Using PATPID macro 2012-11-13 09:11:43 +01:00
Klaus Schmidinger 72c03260d7 The new class cIoThrottle is used to allow I/O intense threads to temporarily suspend their activities in case buffers run full 2012-09-22 11:52:33 +02:00
Klaus Schmidinger 378a05a96d Changed the semantics of the cReceiver::Activate() function (it is now called with 'false' *after* the receiver has been detached from the device 2012-09-02 09:35:31 +02:00
Klaus Schmidinger d3b3c43e8f Fixed a race condition when zapping in transfer mode (cont'd) 2012-08-31 11:02:24 +02:00
Klaus Schmidinger 5d0410de3e Added cDevice::HasInternalCam() 2012-08-26 13:59:37 +02:00
Klaus Schmidinger 4986f76b0a Added cDevice::ReadFilter() 2012-08-26 13:09:01 +02:00
Klaus Schmidinger 60d8c61da1 Fixed detecting transfer mode on full featured DVB cards 2012-08-25 12:03:55 +02:00
Klaus Schmidinger e595e3b1d4 Fixed handling recording with more than two bonded devices 2012-06-10 13:26:37 +02:00
Klaus Schmidinger c020b708a5 Fixed several spelling errors 2012-06-09 14:40:26 +02:00
Klaus Schmidinger b5ddaedfb3 Fixed cDevice::StillPicture(), making sure it doesn't call the derived class's function if no buffer has been allocated 2012-04-26 10:28:39 +02:00
Klaus Schmidinger d5aa5f7294 The new function cDevice::DeviceType() returns a string identifying the type of the given device 2012-04-04 09:52:15 +02:00
Klaus Schmidinger 4dcbf19ea2 The new function cDevice::DeviceName() returns a string identifying the name of the given device 2012-03-13 10:20:42 +01:00
Klaus Schmidinger 57f58a1546 Removed the obsolete function cEITScanner::UsesDevice(); added new parameter LiveView to cStatus::ChannelSwitch() 2012-03-07 14:39:38 +01:00
Klaus Schmidinger 61e420bdf6 Fixed switching devices to the transponders of VPS recordings in case there are only bonded devices 2012-03-06 12:32:38 +01:00
Klaus Schmidinger 0432198e0b Moved the call to cStatus::MsgChannelSwitch(this, 0) to the beginning of cDevice::SetChannel() 2012-03-03 11:51:32 +01:00
Klaus Schmidinger 1e3f6d6da2 Replaced min(max()) calls with the new function constrain() 2012-03-02 10:51:46 +01:00
Klaus Schmidinger c8808a854b Added a Query parameter to cDevice::GetDevice(), so that devices can be queried without side effects when zapping 2012-03-02 10:43:26 +01:00
Klaus Schmidinger 28bc34b245 Revised priority handling to allow receivers with a priority that is lower than that of live viewing 2012-03-02 10:19:00 +01:00
Klaus Schmidinger a188928e6e Added support for automatically selecting subtitles when playing old PES recordings made with the subtitles plugin 2012-02-28 09:28:54 +01:00
Klaus Schmidinger 42c42b554a Removed the "PrimaryLimit" 2012-02-25 14:44:43 +01:00
Klaus Schmidinger 7a8cadd393 Removed superfluous calls to SetVideoFormat() from device constructors 2012-02-15 13:22:03 +01:00
Klaus Schmidinger 825dd70bc4 Fixed handling the PrimaryLimit when requesting a device for live viewing 2012-02-15 12:22:21 +01:00
Klaus Schmidinger 1e74f596b2 Fixed a possible crash when canceling VDR while displaying subtitles, and the primary device is no longer available 2012-02-12 15:45:59 +01:00
Klaus Schmidinger d3bf039f3f Fixed a crash in a plugin using cDeviceHook when VDR ends 2012-01-18 10:51:01 +01:00
Klaus Schmidinger f8d0f77307 Fixed asserting there is a live programme if the primary device is bonded with a device that starts a recording on a different band 2012-01-17 15:37:52 +01:00
Klaus Schmidinger a49ce434f6 Implemented "Device Bonding" 2011-12-04 12:45:26 +01:00
Klaus Schmidinger a964269fe9 Implemented 'occupied' for devices 2011-10-16 14:02:34 +02:00
Klaus Schmidinger 6b5e9f56ed Implemented cDevice::ProvidesEIT() 2011-08-26 13:03:14 +02:00
Klaus Schmidinger e572cbda47 Implemented signal strength and quality handling 2011-06-02 13:28:42 +02:00
Klaus Schmidinger 7978112850 Better avoiding the primary device for recording 2011-05-22 09:42:57 +02:00
Klaus Schmidinger 8cb8e6333a The primary device is now only avoided for recording if it is an old SD full featured card 2011-05-21 13:40:47 +02:00
Klaus Schmidinger d1ab9dbc5f Now checking the result of all realloc() calls 2011-02-25 15:25:42 +01:00
Klaus Schmidinger b4b3c8a3dd Fixed a wrong error message 2010-06-03 13:35:02 +02:00
Klaus Schmidinger 512522f259 The various modulation types are now taken into account when selecting a device 2010-04-11 13:02:42 +02:00
Klaus Schmidinger 978807e4d1 Keeping subtitles visible when pausing replay 2010-02-07 12:08:13 +01:00
Klaus Schmidinger f7831543b3 Implemented cDevice::GetCurrentlyTunedTransponder() 2010-02-06 14:43:42 +01:00
Klaus Schmidinger 644a9f07f2 Implemented cDeviceHook 2010-02-06 14:23:03 +01:00
Klaus Schmidinger 0889960232 The PCR pid is now recorded for channels where this is different from the video PID 2010-01-30 11:10:25 +01:00
Klaus Schmidinger 68d59e2921 Fixed compiler warnings "format not a string literal and no format arguments" in some syslog calls 2010-01-01 15:44:52 +01:00
Klaus Schmidinger 491c6d0a85 Fixed stopping subtitle display when switching the primary device 2010-01-01 15:15:36 +01:00
Klaus Schmidinger c1b01bdc61 cDevice::AddPid() now stores the stream type of the given pid 2009-12-25 15:26:16 +01:00
Klaus Schmidinger 0bfc5e2f71 cDevice now logs the device number when a new device is created 2009-12-24 11:15:22 +01:00
Klaus Schmidinger 6a208294be Several code modifications to avoid compiler warnings 2009-12-06 12:57:45 +01:00
Klaus Schmidinger c8402639f6 Added the audio id to the call of PlayAudio() in cDevice::PlayTsAudio() 2009-11-22 13:25:16 +01:00
Klaus Schmidinger 99468a776d Fixed cDevice::PlayTsVideo() and cDevice::PlayTsAudio() in case only part of the buffer has been accepted by the device (cont'd) 2009-08-16 10:54:36 +02:00
Klaus Schmidinger e33ba08af4 Fixed cDevice::PlayTsVideo() and cDevice::PlayTsAudio() in case only part of the buffer has been accepted by the device 2009-06-21 13:34:40 +02:00
Klaus Schmidinger 96d25c3be1 Fixed unwanted track modifications when parsing PAT/PMT for recording 2009-06-06 13:26:23 +02:00
Klaus Schmidinger 1f798b0f8e Using different names for the Aspect parameter 2009-06-06 11:20:52 +02:00
Klaus Schmidinger 03245bdaf6 Removed obsolete constant 2009-06-01 15:07:10 +02:00
Klaus Schmidinger e639e3a76a Improved cDvbDevice::GetOsdSize() 2009-06-01 14:56:28 +02:00
Klaus Schmidinger f936db2ac6 Implemented cDevice::GetOsdSize(); fixed the way the OSD size is determined on full featured DVB cards 2009-05-09 10:11:16 +02:00
Klaus Schmidinger 61c811ac70 Fixed a typo in aspect ratio 2.21:1 2009-05-08 13:29:42 +02:00
Klaus Schmidinger f161d1b2fe OSD sizes in percent; automatic update of OSD size 2009-05-03 14:15:21 +02:00
Klaus Schmidinger 73b4cecacb No longer resetting the patPmtParser in cDevice::PlayTs() (cont'd) 2009-04-18 09:41:00 +02:00
Klaus Schmidinger c674d80762 No longer resetting the patPmtParser in cDevice::PlayTs() 2009-04-13 12:55:28 +02:00
Klaus Schmidinger 3628bbbfa1 cDevice::PlayTs() now syncs on the TS packet sync bytes 2009-04-13 11:08:05 +02:00
Klaus Schmidinger 371a9a9025 cDevice::PlayTs() now plays as many TS packets as possible in one call 2009-04-05 12:29:27 +02:00
Klaus Schmidinger 2bc0af882c Fixed a hangup when replaying a TS recording with subtitles activated 2009-01-30 16:07:32 +01:00
Klaus Schmidinger f9c1974f2d Improved fast-forward/-rewind for audio recordings 2009-01-25 11:39:43 +01:00
Klaus Schmidinger 85e34776ff The PAT/PMT is now only processed if its version changes 2009-01-24 13:47:46 +01:00
Klaus Schmidinger c2ecee3d40 Fixed cDevice::PlayTsAudio() and made cDevice::PlayTsVideo() return 0 if PlayVideo() didn't play anything 2009-01-24 11:20:24 +01:00
Klaus Schmidinger 1ca753003b Checking the pointer field in cPatPmtParser::ParsePmt() only in 'payload start' packets 2009-01-23 16:43:23 +01:00
Klaus Schmidinger 1789a813f7 Added checking mutexCurrentAudioTrack to cDevice::PlayTs() 2009-01-18 11:45:28 +01:00
Klaus Schmidinger d500f17d50 Added clearing the TS buffers in cDevice::Detach() 2009-01-16 15:20:29 +01:00
Klaus Schmidinger 7de7ede26f The recording format is now Transport Stream 2009-01-06 14:41:11 +01:00
Klaus Schmidinger 22feb7bf1c Improved handling PES video packets with zero length when converting from TS to PES 2008-12-13 14:43:22 +01:00
Klaus Schmidinger d9e56db9fc First step towards switching to TS (Transport Stream) as recording format 2008-08-15 14:49:34 +02:00
Klaus Schmidinger 9d17559caf Fixed handling the counter in detection of pre 1.3.19 PS data 2008-04-12 14:14:07 +02:00
Klaus Schmidinger e59c6ac433 Re-implemented handling of DVB-S2 2008-04-12 13:39:12 +02:00
Klaus Schmidinger 25eb5fd2e1 Fixed a typo 2008-03-09 10:03:34 +01:00
Klaus Schmidinger 8bfee7a1b4 Fixed automatically selecting the preferred subtitle language 2008-03-07 15:44:52 +01:00
Klaus Schmidinger edfe582941 Attempting to stay on the current channel in case of an upcoming recording 2008-02-23 13:19:10 +01:00
Klaus Schmidinger 0b481b18e2 Fixed setting the current subtitle track in Transfer-Mode 2008-02-17 16:04:52 +01:00
Klaus Schmidinger 6b35173789 Implemented the cStatus, cDevice and cPlayer functions for setting subtitle tracks in plugins 2008-02-16 13:59:09 +01:00
Klaus Schmidinger df0e2f0dc8 The section handler is now stopped before the device is destroyed 2008-02-09 16:28:15 +01:00
Klaus Schmidinger 7ad17726d8 Improved sending all frames to devices that can handle them in fast forward trick speeds, including subtitles 2008-02-09 15:12:55 +01:00
Klaus Schmidinger f54c810bcd Revoked the switch to the "multiproto" driver in order to make a new stable version 2008-02-08 13:48:31 +01:00
Klaus Schmidinger d0af2f90e7 Implemented handling of DVB-S2 2008-01-27 14:35:54 +01:00
Klaus Schmidinger db4c8c3c76 Fixed stopping live subtitles when a player is attached to the device 2007-11-17 15:58:55 +01:00
Klaus Schmidinger 06f813d2a8 Added a workaround for recovering from wrongfully interpreted "pre 1.3.19 PS1 packets" 2007-11-03 14:32:03 +01:00
Klaus Schmidinger dd26d8873f Fixed checking compatibility mode for old subtitles plugin 2007-10-17 18:34:17 +02:00
Klaus Schmidinger 67df515c06 Added cDevice::CloseFilter(); some fixes to PLUGINS.html 2007-10-14 13:11:23 +02:00
Klaus Schmidinger f99b293de4 Added a missing SetVolumeDevice() call in cDevice::SetPrimaryDevice() 2007-10-13 10:34:30 +02:00
Klaus Schmidinger 0c8cda9bd0 Implemented handling DVB subtitles 2007-10-12 14:52:30 +02:00
Klaus Schmidinger ad1e138e5b Fixed checking for ttDolbyLast in cDevice::SetCurrentAudioTrack() 2007-08-26 11:13:10 +02:00