| # | |
| # Configuration for the VC4-HDMI sound card using software IEC958 | |
| # subframe conversion | |
| # | |
| vc4-hdmi.pcm.hdmi.0 { | |
| @args [ CARD AES0 AES1 AES2 AES3 ] | |
| @args.CARD { | |
| type string | |
| } | |
| @args.AES0 { | |
| type integer | |
| } | |
| @args.AES1 { | |
| type integer | |
| } | |
| @args.AES2 { | |
| type integer | |
| } | |
| @args.AES3 { | |
| type integer | |
| } | |
| type iec958 | |
| slave { | |
| format IEC958_SUBFRAME_LE | |
| pcm { | |
| type hooks | |
| slave.pcm { | |
| type hw | |
| card $CARD | |
| device 0 | |
| } | |
| hooks.0 { | |
| type ctl_elems | |
| hook_args [ | |
| { | |
| name "IEC958 Playback Default" | |
| interface PCM | |
| optional true | |
| lock true | |
| preserve true | |
| value [ $AES0 $AES1 $AES2 $AES3 ] | |
| } | |
| ] | |
| } | |
| } | |
| } | |
| status [ $AES0 $AES1 $AES2 $AES3 ] | |
| hdmi_mode true | |
| } | |
| # default with plug and softvol | |
| vc4-hdmi.pcm.default { | |
| @args [ CARD ] | |
| @args.CARD { | |
| type string | |
| } | |
| type asym | |
| playback.pcm { | |
| type plug | |
| slave.pcm { | |
| type softvol | |
| slave.pcm { | |
| @func concat | |
| strings [ | |
| "cards.vc4-hdmi.pcm.hdmi.0:" | |
| "CARD=" $CARD "," | |
| "AES0=0x04," # IEC958_AES0_CON_NOT_COPYRIGHT | IEC958_AES0_CON_EMPHASIS_NONE | |
| "AES1=0x82," # IEC958_AES1_CON_ORIGINAL | IEC958_AES1_CON_PCM_CODER | |
| "AES2=0x00," # IEC958_AES2_CON_SOURCE_UNSPEC | IEC958_AES2_CON_CHANNEL_UNSPEC | |
| "AES3=0x01" # IEC958_AES3_CON_FS_NOTID (iec958 plugin will fill in actual rate) | |
| ] | |
| } | |
| control { | |
| name "PCM Playback Volume" | |
| card $CARD | |
| } | |
| } | |
| } | |
| } |