1
0
mirror of https://github.com/VDR4Arch/vdr.git synced 2023-10-10 13:36:52 +02:00

The preferred audio language is now automatically selected when starting replay

This commit is contained in:
Klaus Schmidinger 2006-04-14 14:47:01 +02:00
parent c9e0393d80
commit 08fb5e2dbd
4 changed files with 18 additions and 7 deletions

View File

@ -4521,3 +4521,4 @@ Video Disk Recorder Revision History
- Reintroduced the log message "deleting plugin: ..." when shutting down VDR (upon
request by Ville Skyttä, as in the initial patch from Christoph Haubrich).
- Fixed the vdr.1 man page (a single DVB card can record and do live tv).
- The preferred audio language is now automatically selected when starting replay.

View File

@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
* $Id: device.c 1.127 2006/04/09 10:46:36 kls Exp $
* $Id: device.c 1.128 2006/04/14 14:34:43 kls Exp $
*/
#include "device.h"
@ -790,14 +790,19 @@ void cDevice::SetVolume(int Volume, bool Absolute)
}
}
void cDevice::ClrAvailableTracks(bool DescriptionsOnly)
void cDevice::ClrAvailableTracks(bool DescriptionsOnly, bool IdsOnly)
{
if (DescriptionsOnly) {
for (int i = ttNone; i < ttMaxTrackTypes; i++)
*availableTracks[i].description = 0;
}
else {
memset(availableTracks, 0, sizeof(availableTracks));
if (IdsOnly) {
for (int i = ttNone; i < ttMaxTrackTypes; i++)
availableTracks[i].id = 0;
}
else
memset(availableTracks, 0, sizeof(availableTracks));
pre_1_3_19_PrivateStream = false;
SetAudioChannel(0); // fall back to stereo
currentAudioTrackMissingCount = 0;
@ -954,7 +959,7 @@ bool cDevice::AttachPlayer(cPlayer *Player)
pesAssembler->Reset();
player = Player;
if (!Transferring())
ClrAvailableTracks();
ClrAvailableTracks(false, true);
SetPlayMode(player->playMode);
player->device = this;
player->Activate(true);

View File

@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
* $Id: device.h 1.74 2006/04/02 13:08:13 kls Exp $
* $Id: device.h 1.75 2006/04/14 14:35:13 kls Exp $
*/
#ifndef __DEVICE_H
@ -356,7 +356,11 @@ protected:
virtual void SetAudioTrackDevice(eTrackType Type);
///< Sets the current audio track to the given value.
public:
void ClrAvailableTracks(bool DescriptionsOnly = false);
void ClrAvailableTracks(bool DescriptionsOnly = false, bool IdsOnly = false);
///< Clears the list of currently availabe tracks. If DescriptionsOnly
///< is true, only the track descriptions will be cleared. With IdsOnly
///< set to true only the ids will be cleared. IdsOnly is only taken
///< into account if DescriptionsOnly is false.
bool SetAvailableTrack(eTrackType Type, int Index, uint16_t Id, const char *Language = NULL, const char *Description = NULL);
///< Sets the track of the given Type and Index to the given values.
///< Type must be one of the basic eTrackType values, like ttAudio or ttDolby.

3
menu.c
View File

@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
* $Id: menu.c 1.428 2006/04/09 14:29:24 kls Exp $
* $Id: menu.c 1.429 2006/04/14 14:28:34 kls Exp $
*/
#include "menu.h"
@ -3788,6 +3788,7 @@ cReplayControl::cReplayControl(void)
marks.Load(fileName);
cRecording Recording(fileName);
cStatus::MsgReplaying(this, Recording.Name(), Recording.FileName(), true);
SetTrackDescriptions(false);
}
cReplayControl::~cReplayControl()