Show More
@@ -89,7 +89,8 b' class Audio(DisplayObject):' | |||
|
89 | 89 | """ |
|
90 | 90 | _read_flags = 'rb' |
|
91 | 91 | |
|
92 |
def __init__(self, data=None, filename=None, url=None, embed=None, rate=None, autoplay=False, normalize=True |
|
|
92 | def __init__(self, data=None, filename=None, url=None, embed=None, rate=None, autoplay=False, normalize=True, | |
|
93 | element_id=None): | |
|
93 | 94 | if filename is None and url is None and data is None: |
|
94 | 95 | raise ValueError("No audio data found. Expecting filename, url, or data.") |
|
95 | 96 | if embed is False and url is None: |
@@ -100,6 +101,7 b' class Audio(DisplayObject):' | |||
|
100 | 101 | else: |
|
101 | 102 | self.embed = True |
|
102 | 103 | self.autoplay = autoplay |
|
104 | self.element_id = element_id | |
|
103 | 105 | super(Audio, self).__init__(data=data, url=url, filename=filename) |
|
104 | 106 | |
|
105 | 107 | if self.data is not None and not isinstance(self.data, bytes): |
@@ -198,12 +200,13 b' class Audio(DisplayObject):' | |||
|
198 | 200 | |
|
199 | 201 | def _repr_html_(self): |
|
200 | 202 | src = """ |
|
201 | <audio controls="controls" {autoplay}> | |
|
203 | <audio {element_id} controls="controls" {autoplay}> | |
|
202 | 204 | <source src="{src}" type="{type}" /> |
|
203 | 205 | Your browser does not support the audio element. |
|
204 | 206 | </audio> |
|
205 | 207 | """ |
|
206 |
return src.format(src=self.src_attr(),type=self.mimetype, autoplay=self.autoplay_attr() |
|
|
208 | return src.format(src=self.src_attr(), type=self.mimetype, autoplay=self.autoplay_attr(), | |
|
209 | element_id=self.element_id_attr()) | |
|
207 | 210 | |
|
208 | 211 | def src_attr(self): |
|
209 | 212 | import base64 |
@@ -221,6 +224,12 b' class Audio(DisplayObject):' | |||
|
221 | 224 | return 'autoplay="autoplay"' |
|
222 | 225 | else: |
|
223 | 226 | return '' |
|
227 | ||
|
228 | def element_id_attr(self): | |
|
229 | if (self.element_id): | |
|
230 | return 'id="{element_id}"'.format(element_id=self.element_id) | |
|
231 | else: | |
|
232 | return '' | |
|
224 | 233 | |
|
225 | 234 | class IFrame(object): |
|
226 | 235 | """ |
General Comments 0
You need to be logged in to leave comments.
Login now