Page 1 of 2

Recordings filename pattern (use the custom label)

Posted: Wed Sep 23, 2020 7:55 am
by NOYB
So it used to be that recordings files would be named
Movie/Series Title_ChannelName_Date & Time

e.g.
Stargate SG-1_COMET_2020_04_01_22_00_00.wtv

Now it is:
Stargate SG-1_KATUDT3_2020_09_22_00_00_01.wtv

Using %Cn instead of %Cs is:
Stargate SG-1_KATUDT3 (KATU-DT3)_2020_09_23_00_43_56.wtv

Would like the files named with the channel custom labels/friendly names or whatever want to call them like before.

Re: Recordings filename pattern (use the custom label)

Posted: Wed Sep 23, 2020 9:53 am
by Space
I believe this is a function of what the stations are named in the guide. They must have changed the call sign for that channel from COMET to KATUDT3, which, to be honest, sounds like is a correct change, as I doubt that COMET was ever the true call sign. I'll admit that the %Cn doesn't seem very friendly. Perhaps you can try %Ca?

I think the best you can do is contact Schedules Direct and ask them to ask their provider if they can change the channel name (%Cn) to something better/more descriptive than "KATUDT3 (KATU-DT3)" which does seem a bit lazy.

Re: Recordings filename pattern (use the custom label)

Posted: Wed Sep 23, 2020 10:59 am
by NOYB
In the client gui left pane there is an option to use "Original Labels" or "Custom Labels" for the "Call Sign".
With the custom labels selected why aren't they used as the %Cs (call sign) in the file pattern?
(friendly names like Comet, GetTV, Quest, Antenna, etc.) BTW those are the names that OTA TV picks up from PSIP. Not the call sign. Not that that has any impact on EPG123.

Re: Recordings filename pattern (use the custom label)

Posted: Wed Sep 23, 2020 1:28 pm
by NOYB
Maybe EPG123 could allow us to enter custom service names and those could be used by %Cn.

Schedules Direct indicates they would need a license to use the friendly names. Trade marks & copyright I presume.

Re: Recordings filename pattern (use the custom label)

Posted: Wed Sep 23, 2020 2:04 pm
by NOYB
As a little POC test I replaced the service name field in the epg123.mxf then did a manual import. It worked.
Paid Programming_Comet_2020_09_23_06_51_46.wtv
It also populated the channels with the service name.

So I guess this an official feature request for custom service names.

Re: Recordings filename pattern (use the custom label)

Posted: Wed Sep 23, 2020 3:42 pm
by garyan2
I'm with you concerning the callsign/service name Gracenote uses for OTA channels. I would have preferred KATUDT3 callsign with COMET service name rather than the useless KATUDT3/KATUDT3 (KATU-DT3) combination. This is a unique request for your particular use-case/desire and I don't see a significant benefit for the community as a whole so it would be a low priority request. I'll take a look to see if I can be easily implement so it may be in a future release.

Just brainstorming a little bit, I envision that the method will be for the user to manually edit the epg123.cfg file to include a customServiceName attribute for the station to be downloaded. I am not going to entertain a method within the configuration GUI or a custom form to accomplish this. Example below:

<StationID CallSign="KVOADT2" HDOverride="false" SDOverride="false" customServiceName="COZI">81351</StationID>

Note that in the client, the "Original Labels"/"Custom Labels" button is only for display purposes in the client and doesn't change anything within WMC.

Re: Recordings filename pattern (use the custom label)

Posted: Wed Sep 23, 2020 4:01 pm
by garyan2
Just thinking a little further, if easy to implement, you can have a customCallSign as well which will probably be better for what you want to do.

Re: Recordings filename pattern (use the custom label)

Posted: Wed Sep 23, 2020 9:03 pm
by NOYB
garyan2 wrote: Wed Sep 23, 2020 4:01 pm Just thinking a little further, if easy to implement, you can have a customCallSign as well which will probably be better for what you want to do.
customCallSign would be nice. Since they are already there why not use them to populate customCallSign field in the epg123.cfg?

Re: Recordings filename pattern (use the custom label)

Posted: Wed Sep 23, 2020 10:32 pm
by garyan2
It was easy enough to implement. So the new undeclared feature to override the service call sign and name will look like the below.

<StationID CallSign="KVOADT2" HDOverride="false" SDOverride="false" customCallSign="COZI" customServiceName="CoziTV">81351</StationID>

and the result will be...
customService.PNG
customService.PNG (2.99 KiB) Viewed 6627 times

Re: Recordings filename pattern (use the custom label)

Posted: Thu Sep 24, 2020 12:40 am
by NOYB
Thanks. Looking forward to it.

In the meantime customizing epg123.mxf with a powershell script inserted in the epg123_update scheduled task between the update and import. Using the names broadcast by the stations. Setting both the call sign and name to the same value provides a more consistent experience across different areas in WMC. Actual call signs are not very human friendly in a DVR usage context.

Task Scheduler
Program/script: C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe
Arguments: -ExecutionPolicy Unrestricted -File C:\ProgramData\GaRyan2\epg123\output\custom_callSign_serviceName.ps1
Start in: C:\ProgramData\GaRyan2\epg123\output

PowerShell Script
C:\ProgramData\GaRyan2\epg123\output\custom_callSign_serviceName.ps1:

Code: Select all

Copy-Item -Path C:\ProgramData\GaRyan2\epg123\output\epg123.mxf -Destination C:\ProgramData\GaRyan2\epg123\output\epg123.mxf.original

((Get-Content -path C:\ProgramData\GaRyan2\epg123\output\epg123.mxf -Raw) `
-replace ' name="KATUDT \(KATU-DT\)" ',		' name="KATU" '		-replace ' callSign="KATUDT" ',		' callSign="KATU" '		`
-replace ' name="KATUDT2 \(KATU-DT2\)" ',	' name="MeTV" '		-replace ' callSign="KATUDT2" ',	' callSign="MeTV" '		`
-replace ' name="KATUDT3 \(KATU-DT3\)" ',	' name="Comet" '	-replace ' callSign="KATUDT3" ',	' callSign="Comet" '	`
-replace ' name="KATUDT4 \(KATU-DT4\)" ',	' name="Stadium" '	-replace ' callSign="KATUDT4" ',	' callSign="Stadium" '	`
-replace ' name="KOINDT \(KOIN-DT\)" ',		' name="KOIN-HD" '	-replace ' callSign="KOINDT" ',		' callSign="KOIN-HD" '	`
-replace ' name="KOINDT2 \(KOIN-DT2\)" ',	' name="GetTV" '	-replace ' callSign="KOINDT2" ',	' callSign="GetTV" '	`
-replace ' name="KOINDT3 \(KOIN-DT3\)" ',	' name="Bounce" '	-replace ' callSign="KOINDT3" ',	' callSign="Bounce" '	`
-replace ' name="KGWDT \(KGW-DT\)" ',		' name="KGW" '		-replace ' callSign="KGWDT" ',		' callSign="KGW" '		`
-replace ' name="KGWDT2 \(KGW-DT2\)" ',		' name="Crime" '	-replace ' callSign="KGWDT2" ',		' callSign="Crime" '	`
-replace ' name="KGWDT3 \(KGW-DT3\)" ',		' name="Quest" '	-replace ' callSign="KGWDT3" ',		' callSign="Quest" '	`
-replace ' name="KOPBDT \(KOPB-DT\)" ',		' name="OPB" '		-replace ' callSign="KOPBDT" ',		' callSign="OPB" '		`
-replace ' name="KOPBDT2 \(KOPB-DT2\)" ',	' name="OPBPlus" '	-replace ' callSign="KOPBDT2" ',	' callSign="OPBPlus" '	`
-replace ' name="KOPBDT3 \(KOPB-DT3\)" ',	' name="OPBKids" '	-replace ' callSign="KOPBDT3" ',	' callSign="OPBKids" '	`
-replace ' name="KOPBDT4 \(KOPB-DT4\)" ',	' name="OPB-FM" '	-replace ' callSign="KOPBDT4" ',	' callSign="OPB-FM" '	`
-replace ' name="KPTVDT \(KPTV-DT\)" ',		' name="FOX 12" '	-replace ' callSign="KPTVDT" ',		' callSign="FOX 12" '	`
-replace ' name="KPTVDT2 \(KPTV-DT2\)" ',	' name="COZI" '		-replace ' callSign="KPTVDT2" ',	' callSign="COZI" '		`
-replace ' name="KPTVDT3 \(KPTV-DT3\)" ',	' name="LAFF" '		-replace ' callSign="KPTVDT3" ',	' callSign="LAFF" '		`
-replace ' name="KPTVDT4 \(KPTV-DT4\)" ',	' name="DABL" '		-replace ' callSign="KPTVDT4" ',	' callSign="DABL" '		`
-replace ' name="KPXGDT \(KPXG-DT\)" ',		' name="ION" '		-replace ' callSign="KPXGDT" ',		' callSign="ION" '		`
-replace ' name="KPXGDT2 \(KPXG-DT2\)" ',	' name="qubo" '		-replace ' callSign="KPXGDT2" ',	' callSign="qubo" '		`
-replace ' name="KPXGDT3 \(KPXG-DT3\)" ',	' name="IONPlus" '	-replace ' callSign="KPXGDT3" ',	' callSign="IONPlus" '	`
-replace ' name="KPXGDT4 \(KPXG-DT4\)" ',	' name="Shop" '		-replace ' callSign="KPXGDT4" ',	' callSign="Shop" '		`
-replace ' name="KPXGDT5 \(KPXG-DT5\)" ',	' name="QVC" '		-replace ' callSign="KPXGDT5" ',	' callSign="QVC" '		`
-replace ' name="KPXGDT6 \(KPXG-DT6\)" ',	' name="HSN" '		-replace ' callSign="KPXGDT6" ',	' callSign="HSN" '		`
-replace ' name="KPXGDT7 \(KPXG-DT7\)" ',	' name="TLMD" '		-replace ' callSign="KPXGDT7" ',	' callSign="TLMD" '		`
-replace ' name="KNMTDT \(KNMT-DT\)" ',		' name="TBN HD" '	-replace ' callSign="KNMTDT" ',		' callSign="TBN HD" '	`
-replace ' name="KNMTDT2 \(KNMT-DT2\)" ',	' name="Hilsong" '	-replace ' callSign="KNMTDT2" ',	' callSign="Hilsong" '	`
-replace ' name="KNMTDT3 \(KNMT-DT3\)" ',	' name="SMILE" '	-replace ' callSign="KNMTDT3" ',	' callSign="SMILE" '	`
-replace ' name="KNMTDT4 \(KNMT-DT4\)" ',	' name="Enlace" '	-replace ' callSign="KNMTDT4" ',	' callSign="Enlace" '	`
-replace ' name="KNMTDT5 \(KNMT-DT5\)" ',	' name="POSITIV" '	-replace ' callSign="KNMTDT5" ',	' callSign="POSITIV" '	`
-replace ' name="KJYYLD \(KJYY-LD\)" ',		' name="SBN TV" '	-replace ' callSign="KJYYLD" ',		' callSign="SBN TV" '	`
-replace ' name="KJYYLD2 \(KJYY-LD2\)" ',	' name="Shop LC" '	-replace ' callSign="KJYYLD2" ',	' callSign="Shop LC" '	`
-replace ' name="KRCWDT \(KRCW-DT\)" ',		' name="KRCW" '		-replace ' callSign="KRCWDT" ',		' callSign="KRCW" '		`
-replace ' name="KRCWDT2 \(KRCW-DT2\)" ',	' name="Antenna" '	-replace ' callSign="KRCWDT2" ',	' callSign="Antenna" '	`
-replace ' name="KRCWDT3 \(KRCW-DT3\)" ',	' name="Courttv" '	-replace ' callSign="KRCWDT3" ',	' callSign="Courttv" '	`
-replace ' name="KRCWDT4 \(KRCW-DT4\)" ',	' name="TBD" '		-replace ' callSign="KRCWDT4" ',	' callSign="TBD" '		`
-replace ' name="KUNPLD \(KUNP-LD\)" ',		' name="KUNP-LD" '	-replace ' callSign="KUNPLD" ',		' callSign="KUNP-LD" '	`
-replace ' name="KUNPLD2 \(KUNP-LD2\)" ',	' name="TBD" '		-replace ' callSign="KUNPLD2" ',	' callSign="TBD" '		`
-replace ' name="KUNPLD3 \(KUNP-LD3\)" ',	' name="Charge" '	-replace ' callSign="KUNPLD3" ',	' callSign="Charge" '	`
-replace ' name="KPDXDT \(KPDX-DT\)" ',		' name="Fox12+" '	-replace ' callSign="KPDXDT" ',		' callSign="Fox12+" '	`
-replace ' name="KPDXDT2 \(KPDX-DT2\)" ',	' name="Escape" '	-replace ' callSign="KPDXDT2" ',	' callSign="Escape" '	`
-replace ' name="KPDXDT3 \(KPDX-DT3\)" ',	' name="Bounce" '	-replace ' callSign="KPDXDT3" ',	' callSign="Bounce" '	`
-replace ' name="KPDXDT4 \(KPDX-DT4\)" ',	' name="Grit" '		-replace ' callSign="KPDXDT4" ',	' callSign="Grit" '		`
) | Set-Content -Encoding UTF8 -Path C:\ProgramData\GaRyan2\epg123\output\epg123.mxf

Re: Recordings filename pattern (use the custom label)

Posted: Fri Sep 25, 2020 10:53 pm
by garyan2
Version 1.4.0 was just released with this capability so you will no longer need to find/replace inside the MXF file.

Re: Recordings filename pattern (use the custom label)

Posted: Sat Sep 26, 2020 5:32 am
by NOYB
I see that. Thanks.

Working on a script to auto-magically collect the PSIP VCT short names from HDHomeRun device (Connect DUO) and customize the config.

C:\ProgramData\GaRyan2\epg123\custom_callSign_serviceName.ps1

Code: Select all

# Version: 20200926.1-alpha
# Status: alpha

# Development environment:
# Windows 8.1 Pro w/Media Center
# PowerShell: 4.0


# Criteria to use
$ChLineUp = 'USA-OTA-97007'							# Channel line up associated with SiliconDust HDHomeRun device
$EPG_Service = 'EPG123'								# EPG service name
$EPG_Data_Dir = 'C:\ProgramData\GaRyan2\epg123'		# Fully qualified EPG data dir path (without trailing slash)
$CFG_File = 'epg123.cfg'							# EPG config file
$MXF_File = 'epg123.mxf'							# EPG MXF file

$Retrive_From_Device = $true						# Retrieve channel names from SiliconDust HDHomeRun device
$Device_Address = '192.168.2.202'					# SiliconDust HDHomeRun device address
$Show = 'found'										# SiliconDust HDHomeRun device channel line up query;  Valid values: all, found

$Custom_CallSign_flag = $true						# Set/Replace (true), Remove (false) custom channel call sign
$Custom_Service_Name_flag = $true					# Set/Replace (true), Remove (false) custom channel service name


#
# 1) Retrieve PSIP VCT short name from SiliconDust HDHomeRun device.  Or use default/fallback channel names.
#
if ($Retrive_From_Device) {
#	Invoke-WebRequest http://$Device_Address/lineup.json?show=found		# Doesn't work with UTF8 encoding
	$webclient = new-object System.Net.WebClient
	$json = $webclient.DownloadString("http://$Device_Address/lineup.json?show=$Show")
}

try {
	$vPSObject = $json | ConvertFrom-Json -ErrorAction Stop;
	"From Device"	# Output for debugging

	# Save device retrieved, guide number and guide name abbreviated, json for default/fallback
	if (!(Test-Path $EPG_Data_Dir'\custom_callSign_serviceName.json')) {	# But don't overwrite existing
		$json = $json -Replace '\[\{', "[`r`n{" -Replace '},{', "},`r`n{" -Replace '}]', "}`r`n]"
		$json = $json -Replace "({`"GuideNumber.*?GuideName`":`".*?`").*(},*)", "`$1`$2"
		$json | Set-Content -Path $EPG_Data_Dir'\custom_callSign_serviceName.json'
	}
} catch {
	# Channel GuideNumber and GuideName json.
	# Use in place of (retrieve from device false) or if SiliconDust HDHomeRun device query fails.
	$json_fallback = Get-Content -path $EPG_Data_Dir'\custom_callSign_serviceName.json' -Raw
	$vPSObject = $json_fallback | ConvertFrom-Json
	"From Fallback"	# Output for debugging
}


$epg123_cfg = Get-Content -path $EPG_Data_Dir'\'$CFG_File -Raw
$epg123_mxf = Get-Content -path $EPG_Data_Dir'\output\'$MXF_File -Raw


#
# 2) Customize epg123.cfg customServiceName and customCallSign fields
#
foreach ($ch in $vPSObject) {

	$ChNumber = $ch.GuideNumber.Split('.')
	$ChName = $ch.GuideName
	$ChCallSign = $ch.GuideName

	# Get EPG channel lineup station ID, and perform Set/Remove/Replace
	if ( $epg123_mxf -match `
		"<Channel uid=`"!Channel!$ChLineUp!(?<station_id>[0-9]*)_"+$ChNumber[0]+"_"+$ChNumber[1]+"`" lineup=`"(?<lineup_id>l[0-9]*)`" " + `
		"service=`"(?<service_id>.*?)`" number=`""+$ChNumber[0]+"`" subNumber=`""+$ChNumber[1]+"`" />" ) {

		$station_id = $matches['station_id'];	$RegexEscaped_station_id = [Regex]::Escape($station_id)
		$lineup_id = $matches['lineup_id'];		$RegexEscaped_lineup_id = [Regex]::Escape($lineup_id)
		$service_id = $matches['service_id'];	$RegexEscaped_service_id = [Regex]::Escape($service_id)

		# Get existing custom service name and call sign strings
		$cSN = ( $epg123_cfg -match "<StationID CallSign=`".*?`".*?(?<Existing_customServiceName> customServiceName=`".*?`").*?>$RegexEscaped_station_id</StationID>" )
		$Existing_customServiceName = $matches['Existing_customServiceName'];		$RegexEscaped_Existing_customServiceName = [Regex]::Escape($Existing_customServiceName)

		$cCS = ( $epg123_cfg -match "<StationID CallSign=`".*?`".*?(?<Existing_customCallSign> customCallSign=`".*?`").*?>$RegexEscaped_station_id</StationID>" )
		$Existing_customCallSign = $matches['Existing_customCallSign'];				$RegexEscaped_Existing_customCallSign = [Regex]::Escape($Existing_customCallSign)

		if ($Custom_Service_Name_flag) { $customServiceName = " customServiceName=`"$ChName`"" }
		if ($Custom_CallSign_flag) { $customCallSign = " customCallSign=`"$ChCallSign`"" }

		# Set/Remove/Replace custom service name
		$epg123_cfg = $epg123_cfg -replace `
			"<StationID CallSign=`"(.*?)`"(.*?)$RegexEscaped_Existing_customServiceName(.*?)>$RegexEscaped_station_id</StationID>", `
			"<StationID CallSign=`"`$1`"`$2$customServiceName`$3>$station_id</StationID>"

		# Set/Remove/Replace custom call sign
		$epg123_cfg = $epg123_cfg -replace `
			"<StationID CallSign=`"(.*?)`"(.*?)$RegexEscaped_Existing_customCallSign(.*?)>$RegexEscaped_station_id</StationID>", `
			"<StationID CallSign=`"`$1`"`$2$customCallSign`$3>$station_id</StationID>"

		# Output for debugging
#		$ChNumber[0]+'.'+$ChNumber[1]+"`t"+$ChName+"`t"+$ChCallSign
		$ChNumber[0]+'.'+$ChNumber[1]+"`t"+$ChName+"`t"+$ChCallSign+"`t"+$station_id+"`t"+$lineup_id+"`t"+$service_id
	}
}

$epg123_cfg.TrimEnd() | Set-Content -Encoding UTF8 -Path $EPG_Data_Dir'\'$CFG_File

pause	# For debugging (don't exit/close PS window)
C:\ProgramData\GaRyan2\epg123\custom_callSign_serviceName.json

Code: Select all

[
{"GuideNumber":"2.1","GuideName":"KATU"},
{"GuideNumber":"2.2","GuideName":"MeTV"},
{"GuideNumber":"2.3","GuideName":"Comet"},
{"GuideNumber":"2.4","GuideName":"Stadium"},
{"GuideNumber":"6.1","GuideName":"KOIN-HD"},
{"GuideNumber":"6.2","GuideName":"GetTV"},
{"GuideNumber":"6.3","GuideName":"Bounce"},
{"GuideNumber":"8.1","GuideName":"KGW"},
{"GuideNumber":"8.2","GuideName":"Crime"},
{"GuideNumber":"8.3","GuideName":"Quest"},
{"GuideNumber":"8.10","GuideName":"KGW"},
{"GuideNumber":"8.20","GuideName":"Crime"},
{"GuideNumber":"8.30","GuideName":"Quest"},
{"GuideNumber":"10.1","GuideName":"OPB"},
{"GuideNumber":"10.2","GuideName":"OPBPlus"},
{"GuideNumber":"10.3","GuideName":"OPBKids"},
{"GuideNumber":"10.4","GuideName":"OPB-FM"},
{"GuideNumber":"12.1","GuideName":"FOX 12"},
{"GuideNumber":"12.2","GuideName":"COZI"},
{"GuideNumber":"12.3","GuideName":"LAFF"},
{"GuideNumber":"12.4","GuideName":"DABL"},
{"GuideNumber":"22.1","GuideName":"ION"},
{"GuideNumber":"22.2","GuideName":"qubo"},
{"GuideNumber":"22.3","GuideName":"IONPlus"},
{"GuideNumber":"22.4","GuideName":"Shop"},
{"GuideNumber":"22.5","GuideName":"QVC"},
{"GuideNumber":"22.6","GuideName":"HSN"},
{"GuideNumber":"22.7","GuideName":"TLMD"},
{"GuideNumber":"24.1","GuideName":"TBN HD"},
{"GuideNumber":"24.2","GuideName":"Hilsong"},
{"GuideNumber":"24.3","GuideName":"SMILE"},
{"GuideNumber":"24.4","GuideName":"Enlace"},
{"GuideNumber":"24.5","GuideName":"POSITIV"},
{"GuideNumber":"26.1","GuideName":"SBN TV"},
{"GuideNumber":"26.2","GuideName":"Shop LC"},
{"GuideNumber":"26.3","GuideName":"ACE TV"},
{"GuideNumber":"26.4","GuideName":"Heartla"},
{"GuideNumber":"32.1","GuideName":"KRCW"},
{"GuideNumber":"32.2","GuideName":"Antenna"},
{"GuideNumber":"32.3","GuideName":"Courttv"},
{"GuideNumber":"32.4","GuideName":"TBD"},
{"GuideNumber":"47.1","GuideName":"KUNP-LD"},
{"GuideNumber":"47.2","GuideName":"TBD"},
{"GuideNumber":"47.3","GuideName":"Charge"},
{"GuideNumber":"49.1","GuideName":"Fox12+"},
{"GuideNumber":"49.2","GuideName":"Escape"},
{"GuideNumber":"49.3","GuideName":"Bounce"},
{"GuideNumber":"49.4","GuideName":"Grit"},
{"GuideNumber":"49.20","GuideName":"Escape"},
{"GuideNumber":"49.40","GuideName":"Grit"}
]

Re: Recordings filename pattern (use the custom label)

Posted: Sat Sep 26, 2020 6:27 am
by garyan2
Interesting. You get the channel number and PSIP call sign from the HDHR, use the channel number to find the StationID from the MXF file, use that StationID to locate the StationID element in the config file, in order to populate the custom call sign and service names. Nice.

This may/may not have helped, but if you right-click the lineup listings in the configuration you can copy the contents to the clipboard and have your channel numbers and station IDs in a tab-delimited text. You wouldn't necessarily need to open the MXF file. You can do the same in the client on the left side for the merged channels, but in order to get the PSIP call sign you would have had to unsubscribe everything.

Re: Recordings filename pattern (use the custom label)

Posted: Sat Sep 26, 2020 6:35 am
by NOYB
But can I do the right click in config to copy the contents programmatically from PowerShell script?
Having it scripted means it is easy to update after a HDHomeRun device channel scan. From time to time the channel lineup changes.

Re: Recordings filename pattern (use the custom label)

Posted: Sat Sep 26, 2020 6:43 am
by garyan2
No. Your method will be the surefire way to be up-to-date and accurate.

I will make a correction above, I added in 1.4.0 the PSIP call sign in the copy to clipboard in the client. So assuming WMC has a current scan from your HDHR, the channel number and PSIP call sign should match with what you get from the HDHR. There would be no need to unsubscribe your guide listings from the merged channels to get that information.

Re: Recordings filename pattern (use the custom label)

Posted: Sat Sep 26, 2020 8:28 pm
by NOYB
So in the clipboard copy from client GUI, what is the source of the "Service Callsign" field?
Does that come from what WMC picked up during "Set Up TV Signal"?
Does it get changed by customCallSign / customServiceName or other? Or is only set/changed by "Set Up TV Signal" and "Scan for More Channels"?

Re: Recordings filename pattern (use the custom label)

Posted: Sat Sep 26, 2020 8:39 pm
by garyan2
The source of the Service Callsign is the PSIP WMC picked up when scanning the channels. I don't know if it will get updated on any kind of background scanning of the channel if it changes, but it will for TV Setup and might for a "Scan for More Channels". I can actually test that out right now... one of my towers is shuffling stations around and so I'll let you know.

Re: Recordings filename pattern (use the custom label)

Posted: Sat Sep 26, 2020 8:52 pm
by garyan2
A "Scan for More Channels" did work in updating the service call sign. Keep in mind that in Win7 it doesn't scan VHF so I don't think those will get updated. I'm pretty confident that a [Delete All] and [Scan again] will work as well as performing a "Set Up TV Signal".

Re: Recordings filename pattern (use the custom label)

Posted: Sat Sep 26, 2020 9:04 pm
by NOYB
Think VHF is on it's way out. Wave length too long for small mobile devices antenna.
Only the original 3 VHF-High band broadcasters here (8, 10, 12). And one of them (8) appears to be jumping ship to UHF (23). Currently broadcasting on both 8 and 23. WMC auto-magically picks the UHF 23 and maps the channels to the original guide numbers. The TV and HDHR device on the other hand just shows them all.

Re: Recordings filename pattern (use the custom label)

Posted: Sat Sep 26, 2020 9:09 pm
by garyan2
I've got a similar situation but for different reason. My 9.x channels are on VHF 9 and UHF 27. Both set the logical numbers to 9.1 and WMC for Win8/10 finds VHF 9 but will discard it once it finds UHF 27.