@@ -138,6 +138,43 @@ const mp_obj_property_t audioio_wavefile_sample_rate_obj = {
138
138
(mp_obj_t )& mp_const_none_obj },
139
139
};
140
140
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
+
141
178
STATIC const mp_rom_map_elem_t audioio_wavefile_locals_dict_table [] = {
142
179
// Methods
143
180
{ 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[] = {
146
183
147
184
// Properties
148
185
{ 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 ) },
149
188
};
150
189
STATIC MP_DEFINE_CONST_DICT (audioio_wavefile_locals_dict , audioio_wavefile_locals_dict_table );
151
190
0 commit comments