@@ -138,6 +138,43 @@ const mp_obj_property_t audioio_wavefile_sample_rate_obj = {
138138 (mp_obj_t )& mp_const_none_obj },
139139};
140140
141+ //| .. attribute:: bits_per_sample
142+ //|
143+ //| Bits per sample. (read only)
144+ //|
145+ STATIC mp_obj_t audioio_wavefile_obj_get_bits_per_sample (mp_obj_t self_in ) {
146+ audioio_wavefile_obj_t * self = MP_OBJ_TO_PTR (self_in );
147+ raise_error_if_deinited (common_hal_audioio_wavefile_deinited (self ));
148+ return MP_OBJ_NEW_SMALL_INT (common_hal_audioio_wavefile_get_bits_per_sample (self ));
149+ }
150+ MP_DEFINE_CONST_FUN_OBJ_1 (audioio_wavefile_get_bits_per_sample_obj , audioio_wavefile_obj_get_bits_per_sample );
151+
152+ const mp_obj_property_t audioio_wavefile_bits_per_sample_obj = {
153+ .base .type = & mp_type_property ,
154+ .proxy = {(mp_obj_t )& audioio_wavefile_get_bits_per_sample_obj ,
155+ (mp_obj_t )& mp_const_none_obj ,
156+ (mp_obj_t )& mp_const_none_obj },
157+ };
158+
159+ //| .. attribute:: channel_count
160+ //|
161+ //| Number of audio channels. (read only)
162+ //|
163+ STATIC mp_obj_t audioio_wavefile_obj_get_channel_count (mp_obj_t self_in ) {
164+ audioio_wavefile_obj_t * self = MP_OBJ_TO_PTR (self_in );
165+ raise_error_if_deinited (common_hal_audioio_wavefile_deinited (self ));
166+ return MP_OBJ_NEW_SMALL_INT (common_hal_audioio_wavefile_get_channel_count (self ));
167+ }
168+ MP_DEFINE_CONST_FUN_OBJ_1 (audioio_wavefile_get_channel_count_obj , audioio_wavefile_obj_get_channel_count );
169+
170+ const mp_obj_property_t audioio_wavefile_channel_count_obj = {
171+ .base .type = & mp_type_property ,
172+ .proxy = {(mp_obj_t )& audioio_wavefile_get_channel_count_obj ,
173+ (mp_obj_t )& mp_const_none_obj ,
174+ (mp_obj_t )& mp_const_none_obj },
175+ };
176+
177+
141178STATIC const mp_rom_map_elem_t audioio_wavefile_locals_dict_table [] = {
142179 // Methods
143180 { MP_ROM_QSTR (MP_QSTR_deinit ), MP_ROM_PTR (& audioio_wavefile_deinit_obj ) },
@@ -146,6 +183,8 @@ STATIC const mp_rom_map_elem_t audioio_wavefile_locals_dict_table[] = {
146183
147184 // Properties
148185 { MP_ROM_QSTR (MP_QSTR_sample_rate ), MP_ROM_PTR (& audioio_wavefile_sample_rate_obj ) },
186+ { MP_ROM_QSTR (MP_QSTR_bits_per_sample ), MP_ROM_PTR (& audioio_wavefile_bits_per_sample_obj ) },
187+ { MP_ROM_QSTR (MP_QSTR_channel_count ), MP_ROM_PTR (& audioio_wavefile_channel_count_obj ) },
149188};
150189STATIC MP_DEFINE_CONST_DICT (audioio_wavefile_locals_dict , audioio_wavefile_locals_dict_table );
151190
0 commit comments