summaryrefslogtreecommitdiff
path: root/shared-module
AgeCommit message (Collapse)Author
2020-03-05rename routines to be clearer; fix wiznet arg typesDan Halbert
2020-02-28new pin validation routines; don't use mp_const_none if NULL will doDan Halbert
2020-02-23Fix incorrect initialisation of default UARTDave Marples
2020-02-18Addition of RS485 supportDave Marples
2020-02-18Addition of RTS/CTS/RS485 UART functionalityDave Marples
2020-02-13Merge pull request #2581 from jamesbowman/masterScott Shawcroft
First draft of eveL, the low-level module of the Gameduino bindings
2020-02-12Added fix to allow remount when usb enabled but msc is ejectedGadi Rotenberg
2020-02-10Correct the BitmapTransform operations.James Bowman
Correct argument order better argument naming fix copypaste bug on C and F arguments
2020-02-07Move _eve module declarations into shared-bindings headerJames Bowman
2020-02-07Split into shared-module and shared-bindingsJames Bowman
2020-01-30Merge remote-tracking branch 'adafruit/master' into tweak_pixelbufScott Shawcroft
2020-01-30circuitpython-stage: allow choosing background colorRadomir Dopieralski
2020-01-29Merge commit 'b36b24' into tweak_pixelbufScott Shawcroft
2020-01-29Merge branch 'master' into stm32-meowbithierophect
2020-01-28Implement requested changesLucian Copeland
2020-01-27Don't allocate the pre brightness buffer if brightness is 1.0 stillScott Shawcroft
2020-01-24Encapsulate buffers inside PixelBuf and refactor it.Scott Shawcroft
2020-01-24Simplify the flash-display conflict fixLucian Copeland
2020-01-24Fix flash-display conflict errorLucian Copeland
2020-01-20Mixer: rename function based on review commentJeff Epler
2020-01-20Mixer: use MP_LIKELY macro instead of locally brewed oneJeff Epler
2020-01-16Mixer: Rework for performance, particularly of the S16 caseJeff Epler
This removes downscaling (halving-add) when multiple voices are being mixed. To avoid clipping, and get similar behavior to before, set the "level" of each voice to (1/voice_count). Slow paths that were applicable to only M0 chips were removed. As a side effect, the internal volume representation is now 0 .. 0x8000 (inclusive), which additionally makes a level of exactly 0.5 representable. Testing performed, on PyGamer: For all 4 data cases, for stereo and mono, for 1 and 2 voices, play pure sign waves represented as RawSamples and view the result on a scope and through headphones. Also, scope the amount of time spent in background tasks. Code size: growth of +272 bytes Performance (time in background task when mixing 2 stereo 16-bit voices): 76us per down from 135us (once per ~2.9ms long term average) (Decrease from 4.7% to 2.4% of all CPU time)
2020-01-16mixer: factor out mix_one_voiceJeff Epler
2020-01-08Merge pull request #2445 from jepler/mp3-jeplayer-fixes5.0.0-beta.3Scott Shawcroft
Fixes for JEplayer
2020-01-06Fix more build problemsJeff Epler
2020-01-06audiomp3: rename to MP3DecoderJeff Epler
2020-01-02MP3File: Add rms_level propertyJeff Epler
This lets a music player show it vu-meter style
2019-12-29Merge branch 'master' into pixelbuf-subscr-changeRoy Hooper
2019-12-24MP3File: tweak buffer handlingJeff Epler
After adding the ability to change files in an existing MP3File object, it became apparent that at the beginning of a track some part of an existing buffer was playing first. I noticed that in get_buffer, the just-populated buffer wasn't being returned, but the other one was. But still after fixing this, I heard wrong audio at the beginning of a track, so I took the heavy duty approach and zeroed the buffers out. That means there's a remaining bug to chase, which is merely hidden by the memset()s.
2019-12-23MP3File: whitespaceJeff Epler
2019-12-23MP3File: Add a settable ".file" propertyJeff Epler
This enables jeplayer to allocate just one MP3File at startup, rather than have to make repeated large allocations while the application is running. The buffers have to be allocated their theoretical maximum, but that doesn't matter much as all the real-life MP3 files I checked needed that much allocation anyway.
2019-12-16displayio: make 'rotation' property settableJeff Epler
2019-12-13MP3: look harder for frame infoJeff Epler
Apparently sometimes, a proper "frame info" block is not found after a "sync word". Keep looking for one as needed, instead of giving up after one try. This was one reason that the "bartlebeats" mp3s would not play.
2019-12-13MP3: skip ID3V2 metadataJeff Epler
This was one reason that the "bartlebeats" mp3s would not play.
2019-12-13audiocore: The arguments to reset_buffer went missingJeff Epler
In conversion I missed these arguments were being passed, but noticed it when an implausible value for audio_channel was sent to mp3's reset_buffer method. It's not clear whether there was any negative impact to this, but it should be fixed!
2019-12-13Revert subscr signature changeRoy Hooper
2019-12-13Merge branch 'master' into new-pixelbuf-apiRoy Hooper
2019-12-12MP3File: Fix stereo playback on samd AudioOutJeff Epler
There were several problems with the way this worked -- the read_count approach was too complicated and I made a mistake "simplifying" it from WaveFile. And when the right channel was returned, it was off by 1 byte, making it into static. Instead, directly track which is the "other" channel that has data available, and by using the right data type make the "+ channel" arithmetic give the right result. This requires a double cast (int16_t*)(void*) due to an alignment warning; the alignment is now ensured manually, but the compiler doesn't make the necessary inference that the low address bit must be clear.
2019-12-11MP3File: Avoid crash in get_buffer when deinittedJeff Epler
When a playing mp3 is deinitted, it's possible to reach get_buffer, but all the internal pointers are NULL. This would lead to a hard fault. Avoid it by returning GET_BUFFER_ERROR instead.
2019-12-10Merge branch 'master' into new-pixelbuf-apiRoy Hooper
2019-12-10Fix slice step.Roy Hooper
2019-12-10audiocore: Add MP3File using Adafruit_MP3 libraryJeff Epler
2019-12-09Merge pull request #2353 from jepler/audiosample-protocolScott Shawcroft
Convert audiosamples to use micropython "protocols" (safely)
2019-12-06audiocore: use mp_obj_t in prototypesJeff Epler
2019-12-05audiocore: restore the prototypes of audiosample_xxx functionsJeff Epler
2019-12-05Define polarity and phase in FourwireHierophect
2019-12-04audiosample: convert to use a protocolJeff Epler
This eases addition of new sample sources, since the manual virtual function dispatch functions are just calls via a protocol
2019-12-02Merge branch 'master' into new-pixelbuf-apiRoy Hooper
2019-11-29Merge remote-tracking branch 'origin/master' into tick-refactorJeff Epler
2019-11-27make UART.write be blocking on SAMD; add timeout propertyDan Halbert