_speaker.py 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851
  1. '''
  2. Python script for notes generation
  3. # coding: utf-8
  4. # Python script for notes generation
  5. from typing import List
  6. note_names: List = ['C', 'CS', 'D', 'DS', 'E', 'F', 'FS', 'G', 'GS', 'A', 'AS', 'B']
  7. for octave in range(9):
  8. for name in note_names:
  9. print("SPEAKER_NOTE_%s%s: float" % (name, octave))
  10. print('\'\'\'')
  11. print('The musical note %s\\ :sub:`0` as frequency in `Hz`.\n' % (name if len(name) == 1 else (name[0]+'#')))
  12. print('.. versionadded:: 1.2.0')
  13. print('\'\'\'\n')
  14. '''
  15. SPEAKER_NOTE_C0: float
  16. '''
  17. The musical note C\ :sub:`0` as frequency in `Hz`.
  18. .. versionadded:: 1.2.0
  19. '''
  20. SPEAKER_NOTE_CS0: float
  21. '''
  22. The musical note C#\ :sub:`0` as frequency in `Hz`.
  23. .. versionadded:: 1.2.0
  24. '''
  25. SPEAKER_NOTE_D0: float
  26. '''
  27. The musical note D\ :sub:`0` as frequency in `Hz`.
  28. .. versionadded:: 1.2.0
  29. '''
  30. SPEAKER_NOTE_DS0: float
  31. '''
  32. The musical note D#\ :sub:`0` as frequency in `Hz`.
  33. .. versionadded:: 1.2.0
  34. '''
  35. SPEAKER_NOTE_E0: float
  36. '''
  37. The musical note E\ :sub:`0` as frequency in `Hz`.
  38. .. versionadded:: 1.2.0
  39. '''
  40. SPEAKER_NOTE_F0: float
  41. '''
  42. The musical note F\ :sub:`0` as frequency in `Hz`.
  43. .. versionadded:: 1.2.0
  44. '''
  45. SPEAKER_NOTE_FS0: float
  46. '''
  47. The musical note F#\ :sub:`0` as frequency in `Hz`.
  48. .. versionadded:: 1.2.0
  49. '''
  50. SPEAKER_NOTE_G0: float
  51. '''
  52. The musical note G\ :sub:`0` as frequency in `Hz`.
  53. .. versionadded:: 1.2.0
  54. '''
  55. SPEAKER_NOTE_GS0: float
  56. '''
  57. The musical note G#\ :sub:`0` as frequency in `Hz`.
  58. .. versionadded:: 1.2.0
  59. '''
  60. SPEAKER_NOTE_A0: float
  61. '''
  62. The musical note A\ :sub:`0` as frequency in `Hz`.
  63. .. versionadded:: 1.2.0
  64. '''
  65. SPEAKER_NOTE_AS0: float
  66. '''
  67. The musical note A#\ :sub:`0` as frequency in `Hz`.
  68. .. versionadded:: 1.2.0
  69. '''
  70. SPEAKER_NOTE_B0: float
  71. '''
  72. The musical note B\ :sub:`0` as frequency in `Hz`.
  73. .. versionadded:: 1.2.0
  74. '''
  75. SPEAKER_NOTE_C1: float
  76. '''
  77. The musical note C\ :sub:`0` as frequency in `Hz`.
  78. .. versionadded:: 1.2.0
  79. '''
  80. SPEAKER_NOTE_CS1: float
  81. '''
  82. The musical note C#\ :sub:`0` as frequency in `Hz`.
  83. .. versionadded:: 1.2.0
  84. '''
  85. SPEAKER_NOTE_D1: float
  86. '''
  87. The musical note D\ :sub:`0` as frequency in `Hz`.
  88. .. versionadded:: 1.2.0
  89. '''
  90. SPEAKER_NOTE_DS1: float
  91. '''
  92. The musical note D#\ :sub:`0` as frequency in `Hz`.
  93. .. versionadded:: 1.2.0
  94. '''
  95. SPEAKER_NOTE_E1: float
  96. '''
  97. The musical note E\ :sub:`0` as frequency in `Hz`.
  98. .. versionadded:: 1.2.0
  99. '''
  100. SPEAKER_NOTE_F1: float
  101. '''
  102. The musical note F\ :sub:`0` as frequency in `Hz`.
  103. .. versionadded:: 1.2.0
  104. '''
  105. SPEAKER_NOTE_FS1: float
  106. '''
  107. The musical note F#\ :sub:`0` as frequency in `Hz`.
  108. .. versionadded:: 1.2.0
  109. '''
  110. SPEAKER_NOTE_G1: float
  111. '''
  112. The musical note G\ :sub:`0` as frequency in `Hz`.
  113. .. versionadded:: 1.2.0
  114. '''
  115. SPEAKER_NOTE_GS1: float
  116. '''
  117. The musical note G#\ :sub:`0` as frequency in `Hz`.
  118. .. versionadded:: 1.2.0
  119. '''
  120. SPEAKER_NOTE_A1: float
  121. '''
  122. The musical note A\ :sub:`0` as frequency in `Hz`.
  123. .. versionadded:: 1.2.0
  124. '''
  125. SPEAKER_NOTE_AS1: float
  126. '''
  127. The musical note A#\ :sub:`0` as frequency in `Hz`.
  128. .. versionadded:: 1.2.0
  129. '''
  130. SPEAKER_NOTE_B1: float
  131. '''
  132. The musical note B\ :sub:`0` as frequency in `Hz`.
  133. .. versionadded:: 1.2.0
  134. '''
  135. SPEAKER_NOTE_C2: float
  136. '''
  137. The musical note C\ :sub:`0` as frequency in `Hz`.
  138. .. versionadded:: 1.2.0
  139. '''
  140. SPEAKER_NOTE_CS2: float
  141. '''
  142. The musical note C#\ :sub:`0` as frequency in `Hz`.
  143. .. versionadded:: 1.2.0
  144. '''
  145. SPEAKER_NOTE_D2: float
  146. '''
  147. The musical note D\ :sub:`0` as frequency in `Hz`.
  148. .. versionadded:: 1.2.0
  149. '''
  150. SPEAKER_NOTE_DS2: float
  151. '''
  152. The musical note D#\ :sub:`0` as frequency in `Hz`.
  153. .. versionadded:: 1.2.0
  154. '''
  155. SPEAKER_NOTE_E2: float
  156. '''
  157. The musical note E\ :sub:`0` as frequency in `Hz`.
  158. .. versionadded:: 1.2.0
  159. '''
  160. SPEAKER_NOTE_F2: float
  161. '''
  162. The musical note F\ :sub:`0` as frequency in `Hz`.
  163. .. versionadded:: 1.2.0
  164. '''
  165. SPEAKER_NOTE_FS2: float
  166. '''
  167. The musical note F#\ :sub:`0` as frequency in `Hz`.
  168. .. versionadded:: 1.2.0
  169. '''
  170. SPEAKER_NOTE_G2: float
  171. '''
  172. The musical note G\ :sub:`0` as frequency in `Hz`.
  173. .. versionadded:: 1.2.0
  174. '''
  175. SPEAKER_NOTE_GS2: float
  176. '''
  177. The musical note G#\ :sub:`0` as frequency in `Hz`.
  178. .. versionadded:: 1.2.0
  179. '''
  180. SPEAKER_NOTE_A2: float
  181. '''
  182. The musical note A\ :sub:`0` as frequency in `Hz`.
  183. .. versionadded:: 1.2.0
  184. '''
  185. SPEAKER_NOTE_AS2: float
  186. '''
  187. The musical note A#\ :sub:`0` as frequency in `Hz`.
  188. .. versionadded:: 1.2.0
  189. '''
  190. SPEAKER_NOTE_B2: float
  191. '''
  192. The musical note B\ :sub:`0` as frequency in `Hz`.
  193. .. versionadded:: 1.2.0
  194. '''
  195. SPEAKER_NOTE_C3: float
  196. '''
  197. The musical note C\ :sub:`0` as frequency in `Hz`.
  198. .. versionadded:: 1.2.0
  199. '''
  200. SPEAKER_NOTE_CS3: float
  201. '''
  202. The musical note C#\ :sub:`0` as frequency in `Hz`.
  203. .. versionadded:: 1.2.0
  204. '''
  205. SPEAKER_NOTE_D3: float
  206. '''
  207. The musical note D\ :sub:`0` as frequency in `Hz`.
  208. .. versionadded:: 1.2.0
  209. '''
  210. SPEAKER_NOTE_DS3: float
  211. '''
  212. The musical note D#\ :sub:`0` as frequency in `Hz`.
  213. .. versionadded:: 1.2.0
  214. '''
  215. SPEAKER_NOTE_E3: float
  216. '''
  217. The musical note E\ :sub:`0` as frequency in `Hz`.
  218. .. versionadded:: 1.2.0
  219. '''
  220. SPEAKER_NOTE_F3: float
  221. '''
  222. The musical note F\ :sub:`0` as frequency in `Hz`.
  223. .. versionadded:: 1.2.0
  224. '''
  225. SPEAKER_NOTE_FS3: float
  226. '''
  227. The musical note F#\ :sub:`0` as frequency in `Hz`.
  228. .. versionadded:: 1.2.0
  229. '''
  230. SPEAKER_NOTE_G3: float
  231. '''
  232. The musical note G\ :sub:`0` as frequency in `Hz`.
  233. .. versionadded:: 1.2.0
  234. '''
  235. SPEAKER_NOTE_GS3: float
  236. '''
  237. The musical note G#\ :sub:`0` as frequency in `Hz`.
  238. .. versionadded:: 1.2.0
  239. '''
  240. SPEAKER_NOTE_A3: float
  241. '''
  242. The musical note A\ :sub:`0` as frequency in `Hz`.
  243. .. versionadded:: 1.2.0
  244. '''
  245. SPEAKER_NOTE_AS3: float
  246. '''
  247. The musical note A#\ :sub:`0` as frequency in `Hz`.
  248. .. versionadded:: 1.2.0
  249. '''
  250. SPEAKER_NOTE_B3: float
  251. '''
  252. The musical note B\ :sub:`0` as frequency in `Hz`.
  253. .. versionadded:: 1.2.0
  254. '''
  255. SPEAKER_NOTE_C4: float
  256. '''
  257. The musical note C\ :sub:`0` as frequency in `Hz`.
  258. .. versionadded:: 1.2.0
  259. '''
  260. SPEAKER_NOTE_CS4: float
  261. '''
  262. The musical note C#\ :sub:`0` as frequency in `Hz`.
  263. .. versionadded:: 1.2.0
  264. '''
  265. SPEAKER_NOTE_D4: float
  266. '''
  267. The musical note D\ :sub:`0` as frequency in `Hz`.
  268. .. versionadded:: 1.2.0
  269. '''
  270. SPEAKER_NOTE_DS4: float
  271. '''
  272. The musical note D#\ :sub:`0` as frequency in `Hz`.
  273. .. versionadded:: 1.2.0
  274. '''
  275. SPEAKER_NOTE_E4: float
  276. '''
  277. The musical note E\ :sub:`0` as frequency in `Hz`.
  278. .. versionadded:: 1.2.0
  279. '''
  280. SPEAKER_NOTE_F4: float
  281. '''
  282. The musical note F\ :sub:`0` as frequency in `Hz`.
  283. .. versionadded:: 1.2.0
  284. '''
  285. SPEAKER_NOTE_FS4: float
  286. '''
  287. The musical note F#\ :sub:`0` as frequency in `Hz`.
  288. .. versionadded:: 1.2.0
  289. '''
  290. SPEAKER_NOTE_G4: float
  291. '''
  292. The musical note G\ :sub:`0` as frequency in `Hz`.
  293. .. versionadded:: 1.2.0
  294. '''
  295. SPEAKER_NOTE_GS4: float
  296. '''
  297. The musical note G#\ :sub:`0` as frequency in `Hz`.
  298. .. versionadded:: 1.2.0
  299. '''
  300. SPEAKER_NOTE_A4: float
  301. '''
  302. The musical note A\ :sub:`0` as frequency in `Hz`.
  303. .. versionadded:: 1.2.0
  304. '''
  305. SPEAKER_NOTE_AS4: float
  306. '''
  307. The musical note A#\ :sub:`0` as frequency in `Hz`.
  308. .. versionadded:: 1.2.0
  309. '''
  310. SPEAKER_NOTE_B4: float
  311. '''
  312. The musical note B\ :sub:`0` as frequency in `Hz`.
  313. .. versionadded:: 1.2.0
  314. '''
  315. SPEAKER_NOTE_C5: float
  316. '''
  317. The musical note C\ :sub:`0` as frequency in `Hz`.
  318. .. versionadded:: 1.2.0
  319. '''
  320. SPEAKER_NOTE_CS5: float
  321. '''
  322. The musical note C#\ :sub:`0` as frequency in `Hz`.
  323. .. versionadded:: 1.2.0
  324. '''
  325. SPEAKER_NOTE_D5: float
  326. '''
  327. The musical note D\ :sub:`0` as frequency in `Hz`.
  328. .. versionadded:: 1.2.0
  329. '''
  330. SPEAKER_NOTE_DS5: float
  331. '''
  332. The musical note D#\ :sub:`0` as frequency in `Hz`.
  333. .. versionadded:: 1.2.0
  334. '''
  335. SPEAKER_NOTE_E5: float
  336. '''
  337. The musical note E\ :sub:`0` as frequency in `Hz`.
  338. .. versionadded:: 1.2.0
  339. '''
  340. SPEAKER_NOTE_F5: float
  341. '''
  342. The musical note F\ :sub:`0` as frequency in `Hz`.
  343. .. versionadded:: 1.2.0
  344. '''
  345. SPEAKER_NOTE_FS5: float
  346. '''
  347. The musical note F#\ :sub:`0` as frequency in `Hz`.
  348. .. versionadded:: 1.2.0
  349. '''
  350. SPEAKER_NOTE_G5: float
  351. '''
  352. The musical note G\ :sub:`0` as frequency in `Hz`.
  353. .. versionadded:: 1.2.0
  354. '''
  355. SPEAKER_NOTE_GS5: float
  356. '''
  357. The musical note G#\ :sub:`0` as frequency in `Hz`.
  358. .. versionadded:: 1.2.0
  359. '''
  360. SPEAKER_NOTE_A5: float
  361. '''
  362. The musical note A\ :sub:`0` as frequency in `Hz`.
  363. .. versionadded:: 1.2.0
  364. '''
  365. SPEAKER_NOTE_AS5: float
  366. '''
  367. The musical note A#\ :sub:`0` as frequency in `Hz`.
  368. .. versionadded:: 1.2.0
  369. '''
  370. SPEAKER_NOTE_B5: float
  371. '''
  372. The musical note B\ :sub:`0` as frequency in `Hz`.
  373. .. versionadded:: 1.2.0
  374. '''
  375. SPEAKER_NOTE_C6: float
  376. '''
  377. The musical note C\ :sub:`0` as frequency in `Hz`.
  378. .. versionadded:: 1.2.0
  379. '''
  380. SPEAKER_NOTE_CS6: float
  381. '''
  382. The musical note C#\ :sub:`0` as frequency in `Hz`.
  383. .. versionadded:: 1.2.0
  384. '''
  385. SPEAKER_NOTE_D6: float
  386. '''
  387. The musical note D\ :sub:`0` as frequency in `Hz`.
  388. .. versionadded:: 1.2.0
  389. '''
  390. SPEAKER_NOTE_DS6: float
  391. '''
  392. The musical note D#\ :sub:`0` as frequency in `Hz`.
  393. .. versionadded:: 1.2.0
  394. '''
  395. SPEAKER_NOTE_E6: float
  396. '''
  397. The musical note E\ :sub:`0` as frequency in `Hz`.
  398. .. versionadded:: 1.2.0
  399. '''
  400. SPEAKER_NOTE_F6: float
  401. '''
  402. The musical note F\ :sub:`0` as frequency in `Hz`.
  403. .. versionadded:: 1.2.0
  404. '''
  405. SPEAKER_NOTE_FS6: float
  406. '''
  407. The musical note F#\ :sub:`0` as frequency in `Hz`.
  408. .. versionadded:: 1.2.0
  409. '''
  410. SPEAKER_NOTE_G6: float
  411. '''
  412. The musical note G\ :sub:`0` as frequency in `Hz`.
  413. .. versionadded:: 1.2.0
  414. '''
  415. SPEAKER_NOTE_GS6: float
  416. '''
  417. The musical note G#\ :sub:`0` as frequency in `Hz`.
  418. .. versionadded:: 1.2.0
  419. '''
  420. SPEAKER_NOTE_A6: float
  421. '''
  422. The musical note A\ :sub:`0` as frequency in `Hz`.
  423. .. versionadded:: 1.2.0
  424. '''
  425. SPEAKER_NOTE_AS6: float
  426. '''
  427. The musical note A#\ :sub:`0` as frequency in `Hz`.
  428. .. versionadded:: 1.2.0
  429. '''
  430. SPEAKER_NOTE_B6: float
  431. '''
  432. The musical note B\ :sub:`0` as frequency in `Hz`.
  433. .. versionadded:: 1.2.0
  434. '''
  435. SPEAKER_NOTE_C7: float
  436. '''
  437. The musical note C\ :sub:`0` as frequency in `Hz`.
  438. .. versionadded:: 1.2.0
  439. '''
  440. SPEAKER_NOTE_CS7: float
  441. '''
  442. The musical note C#\ :sub:`0` as frequency in `Hz`.
  443. .. versionadded:: 1.2.0
  444. '''
  445. SPEAKER_NOTE_D7: float
  446. '''
  447. The musical note D\ :sub:`0` as frequency in `Hz`.
  448. .. versionadded:: 1.2.0
  449. '''
  450. SPEAKER_NOTE_DS7: float
  451. '''
  452. The musical note D#\ :sub:`0` as frequency in `Hz`.
  453. .. versionadded:: 1.2.0
  454. '''
  455. SPEAKER_NOTE_E7: float
  456. '''
  457. The musical note E\ :sub:`0` as frequency in `Hz`.
  458. .. versionadded:: 1.2.0
  459. '''
  460. SPEAKER_NOTE_F7: float
  461. '''
  462. The musical note F\ :sub:`0` as frequency in `Hz`.
  463. .. versionadded:: 1.2.0
  464. '''
  465. SPEAKER_NOTE_FS7: float
  466. '''
  467. The musical note F#\ :sub:`0` as frequency in `Hz`.
  468. .. versionadded:: 1.2.0
  469. '''
  470. SPEAKER_NOTE_G7: float
  471. '''
  472. The musical note G\ :sub:`0` as frequency in `Hz`.
  473. .. versionadded:: 1.2.0
  474. '''
  475. SPEAKER_NOTE_GS7: float
  476. '''
  477. The musical note G#\ :sub:`0` as frequency in `Hz`.
  478. .. versionadded:: 1.2.0
  479. '''
  480. SPEAKER_NOTE_A7: float
  481. '''
  482. The musical note A\ :sub:`0` as frequency in `Hz`.
  483. .. versionadded:: 1.2.0
  484. '''
  485. SPEAKER_NOTE_AS7: float
  486. '''
  487. The musical note A#\ :sub:`0` as frequency in `Hz`.
  488. .. versionadded:: 1.2.0
  489. '''
  490. SPEAKER_NOTE_B7: float
  491. '''
  492. The musical note B\ :sub:`0` as frequency in `Hz`.
  493. .. versionadded:: 1.2.0
  494. '''
  495. SPEAKER_NOTE_C8: float
  496. '''
  497. The musical note C\ :sub:`0` as frequency in `Hz`.
  498. .. versionadded:: 1.2.0
  499. '''
  500. SPEAKER_NOTE_CS8: float
  501. '''
  502. The musical note C#\ :sub:`0` as frequency in `Hz`.
  503. .. versionadded:: 1.2.0
  504. '''
  505. SPEAKER_NOTE_D8: float
  506. '''
  507. The musical note D\ :sub:`0` as frequency in `Hz`.
  508. .. versionadded:: 1.2.0
  509. '''
  510. SPEAKER_NOTE_DS8: float
  511. '''
  512. The musical note D#\ :sub:`0` as frequency in `Hz`.
  513. .. versionadded:: 1.2.0
  514. '''
  515. SPEAKER_NOTE_E8: float
  516. '''
  517. The musical note E\ :sub:`0` as frequency in `Hz`.
  518. .. versionadded:: 1.2.0
  519. '''
  520. SPEAKER_NOTE_F8: float
  521. '''
  522. The musical note F\ :sub:`0` as frequency in `Hz`.
  523. .. versionadded:: 1.2.0
  524. '''
  525. SPEAKER_NOTE_FS8: float
  526. '''
  527. The musical note F#\ :sub:`0` as frequency in `Hz`.
  528. .. versionadded:: 1.2.0
  529. '''
  530. SPEAKER_NOTE_G8: float
  531. '''
  532. The musical note G\ :sub:`0` as frequency in `Hz`.
  533. .. versionadded:: 1.2.0
  534. '''
  535. SPEAKER_NOTE_GS8: float
  536. '''
  537. The musical note G#\ :sub:`0` as frequency in `Hz`.
  538. .. versionadded:: 1.2.0
  539. '''
  540. SPEAKER_NOTE_A8: float
  541. '''
  542. The musical note A\ :sub:`0` as frequency in `Hz`.
  543. .. versionadded:: 1.2.0
  544. '''
  545. SPEAKER_NOTE_AS8: float
  546. '''
  547. The musical note A#\ :sub:`0` as frequency in `Hz`.
  548. .. versionadded:: 1.2.0
  549. '''
  550. SPEAKER_NOTE_B8: float
  551. '''
  552. The musical note B\ :sub:`0` as frequency in `Hz`.
  553. .. versionadded:: 1.2.0
  554. '''
  555. SPEAKER_VOLUME_MIN: float
  556. '''
  557. The minimal volume value.
  558. .. versionadded:: 1.2.0
  559. '''
  560. SPEAKER_VOLUME_MAX: float
  561. '''
  562. The maximum volume value.
  563. .. versionadded:: 1.2.0
  564. '''
  565. def speaker_start(frequency: float, volume: float) -> bool:
  566. '''
  567. Output a steady tone of a defined frequency and volume on the Flipper's speaker.
  568. This is a non-blocking operation. The tone will continue until you call :func:`speaker_stop`.
  569. The ``volume`` parameter accepts values from :py:const:`SPEAKER_VOLUME_MIN` (silent) up to :py:const:`SPEAKER_VOLUME_MAX` (very loud).
  570. :param frequency: The frequency to play in `Hz <https://en.wikipedia.org/wiki/Hertz>`_.
  571. :param volume: The volume to use.
  572. :returns: :const:`True` if the speaker was acquired.
  573. .. versionadded:: 1.0.0
  574. .. code-block::
  575. import flipperzero as f0
  576. f0.speaker_start(50.0, 0.8)
  577. '''
  578. pass
  579. def speaker_set_volume(volume: float) -> bool:
  580. '''
  581. Set the speaker's volume while playing a tone. This is a non-blocking operation.
  582. The tone will continue until you call :func:`speaker_stop`.
  583. The ``volume`` parameter accepts values from 0.0 (silent) up to 1.0 (very loud).
  584. :param volume: The volume to use.
  585. :returns: :const:`True` if the speaker was acquired.
  586. .. versionadded:: 1.0.0
  587. This function can be used to play `nice` sounds:
  588. .. code-block::
  589. import time
  590. import flipperzero as f0
  591. volume = 0.8
  592. f0.speaker_start(100.0, volume)
  593. for _ in range(0, 150):
  594. volume *= 0.9945679
  595. f0.speaker_set_volume(volume)
  596. time.sleep_ms(1)
  597. f0.speaker_stop()
  598. '''
  599. pass
  600. def speaker_stop() -> bool:
  601. '''
  602. Stop the speaker output.
  603. :returns: :const:`True` if the speaker was successfully released.
  604. .. versionadded:: 1.0.0
  605. '''
  606. pass