1# 2# Configuration for the VC4-HDMI sound card using software IEC958 3# subframe conversion 4# 5 6<confdir:pcm/hdmi.conf> 7 8vc4-hdmi.pcm.hdmi.0 { 9 @args [ CARD AES0 AES1 AES2 AES3 ] 10 @args.CARD { 11 type string 12 } 13 @args.AES0 { 14 type integer 15 } 16 @args.AES1 { 17 type integer 18 } 19 @args.AES2 { 20 type integer 21 } 22 @args.AES3 { 23 type integer 24 } 25 type iec958 26 slave { 27 format IEC958_SUBFRAME_LE 28 pcm { 29 type hooks 30 slave.pcm { 31 type hw 32 card $CARD 33 device 0 34 } 35 hooks.0 { 36 type ctl_elems 37 hook_args [ 38 { 39 name "IEC958 Playback Default" 40 interface PCM 41 optional true 42 lock true 43 preserve true 44 value [ $AES0 $AES1 $AES2 $AES3 ] 45 } 46 ] 47 } 48 } 49 } 50 status [ $AES0 $AES1 $AES2 $AES3 ] 51 hdmi_mode true 52} 53 54# default with plug and softvol 55vc4-hdmi.pcm.default { 56 @args [ CARD ] 57 @args.CARD { 58 type string 59 } 60 type asym 61 playback.pcm { 62 type plug 63 slave.pcm { 64 type softvol 65 slave.pcm { 66 @func concat 67 strings [ 68 "cards.vc4-hdmi.pcm.hdmi.0:" 69 "CARD=" $CARD "," 70 "AES0=0x04," # IEC958_AES0_CON_NOT_COPYRIGHT | IEC958_AES0_CON_EMPHASIS_NONE 71 "AES1=0x82," # IEC958_AES1_CON_ORIGINAL | IEC958_AES1_CON_PCM_CODER 72 "AES2=0x00," # IEC958_AES2_CON_SOURCE_UNSPEC | IEC958_AES2_CON_CHANNEL_UNSPEC 73 "AES3=0x01" # IEC958_AES3_CON_FS_NOTID (iec958 plugin will fill in actual rate) 74 ] 75 } 76 control { 77 name "PCM Playback Volume" 78 card $CARD 79 } 80 } 81 } 82} 83