summaryrefslogtreecommitdiffstats
path: root/alsa-lib/src/conf/pcm/iec958.conf
blob: ac139b5e402790fb24ce1eb6ef9d1de3d1859cfc (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
#
#  Hardware output from iec958
#

pcm.!iec958 {
	@args [ CARD DEV AES0 AES1 AES2 AES3 ]
	@args.CARD {
		type string
		default {
			@func getenv
			vars [
				ALSA_IEC958_CARD
				ALSA_PCM_CARD
				ALSA_CARD
			]
			default {
				@func refer
				name defaults.pcm.iec958.card
			}
		}
	}
	@args.DEV {
		type integer
		default {
			@func igetenv
			vars [
				ALSA_IEC958_DEVICE
			]
			default {
				@func refer
				name defaults.pcm.iec958.device
			}
		}
	}
	@args.AES0 {
		type integer
		# consumer, not-copyright, emphasis-none, mode=0
		default 0x04
	}
	@args.AES1 {
		type integer
		# original, PCM coder
		default 0x82
	}
	@args.AES2 {
		type integer
		# source and channel
		default 0x00
	}
	@args.AES3 {
		type integer
		# fs=48000Hz, clock accuracy=1000ppm
		default 0x02
	}
	type empty
	slave.pcm {
		@func refer
		name {
			@func concat
			strings [
				"cards."
				{
					@func card_driver
					card $CARD
				}
				".pcm.iec958." $DEV ":"
				"CARD=" $CARD ","
				"AES0=" $AES0 ","
				"AES1=" $AES1 ","
				"AES2=" $AES2 ","
				"AES3=" $AES3
			]
		}
	}
	hint {
		show {
			@func refer
			name defaults.namehint.basic
		}
		description "IEC958 (S/PDIF) Digital Audio Output"
		device $DEV
	}
}