adamgreig[m] has quit [Quit: Idle timeout reached: 172800s]
AdamHord- has joined #rust-embedded
diondokter[m] has quit [Ping timeout: 276 seconds]
Rahix_ has quit [Ping timeout: 276 seconds]
adamgreig_ has quit [Ping timeout: 276 seconds]
diondokter[m] has joined #rust-embedded
AdamHorden has quit [Read error: Connection reset by peer]
adamgreig_ has joined #rust-embedded
Rahix has joined #rust-embedded
ivche has quit [Ping timeout: 244 seconds]
ivche has joined #rust-embedded
i509vcb[m] has joined #rust-embedded
<i509vcb[m]>
Before I wind up binding libraries or reinventing the wheel, has someone here been working on audio codec libraries for embedded targets in Rust?
<i509vcb[m]>
I of course am trying to make sure I don't turn a "oh writing a FLAC decoder probably isn't that hard" into a 3 month project
<i509vcb[m]>
My slightly more lazy option is to heavily borrow code from Symphonia
<i509vcb[m]>
Which is acceptable for me since the final binary for my audio stuff is going to be GPL anyways...
<i509vcb[m]>
Yes it is MPL 2.0
M9names[m] has joined #rust-embedded
<M9names[m]>
you know symphonia isn't gpl licensed, right?
<i509vcb[m]>
But even MPL 2.0 isn't an issue for me
<i509vcb[m]>
Although running out of compute is probably my larger concern...
<i509vcb[m]>
I potentially be may be doing decode from flac and encode to lc3 at the same time...
<thejpster[m]>
Although apparently they don’t do any editing and just leave in nine seconds of dead air? Wild.
<thejpster[m]>
I hope t-libs don’t come at me for claiming they chose performance over code size in the standard library.
<diondokter[m]>
thejpster[m]: No, they'd agree
<diondokter[m]>
That's why the 'optimize_for_size' flag now exists (unstably)
<thejpster[m]>
I’m pretty sure Vin was quoting from that Danish programming language study that I recall was problematic but I didn’t remember why so I didn’t want to get into it.
<JamesMunns[m]>
IIRC item 2 was REALLY important for compile times in the early days of rust, monomorphizing every print made things go really exponentially bad
<thejpster[m]>
I sent them a set of questions but they didn’t really ask any of them, so I had to do all this on my feet.
dne has quit [Remote host closed the connection]
dne has joined #rust-embedded
pcs38 has joined #rust-embedded
sroemer has quit [Quit: WeeChat 4.4.3]
<cr1901>
I wish it more tractable to figure out why in deeply embedded environments without an output sink for text, rustc/LLVM thinks there's a possibility that the panic/format strings can be seen by a user
<JamesMunns[m]>
Because at some point it became advantageous to allow the optimizer to run out of fuel
<cr1901>
format stuff taking dyn object probably doesn't help
<cr1901>
I aesthetically dislike the various "don't bring in the formatting machinery at all" bandaids (immediate_abort, optimize_for_size), but when I think about "why doesn't C have this problem?", well... C probably would have this same problem if formatting machinery were opt-out rather than opt-in :P
<JamesMunns[m]>
yeah, I think it's decently hard to "prove" to the optimizer that nothing is using the dyn formatting machinery
<diondokter[m]>
Optimize for size makes fmt a little bit smaller. For example, integers up to usize are all formatted as usize iirc. The float fmt normally has two algo's. A fast one that can fail and a slow fallback one. With optimize for size it always uses the fallback
<diondokter[m]>
So, no trickery there!
dngrs[m] has joined #rust-embedded
<dngrs[m]>
on a related note I'd really like to have more sophisticated tools for auditing potential panic sites
<dngrs[m]>
auditing and also flagging as e.g. #[may_panic]
<Darryl[m]>
Any Cashapp? Chime? Zelle? Btc? Usdt?Skrill? Apple Pay? Paypal? Venmo? BOA? Wells Fargo? Join my channel
<Darryl[m]>
Got any of these Chase? BOA? Wells Fargo? Navy federal? Capital one? Truist? Att &t? PNC? TD bank? Credit union? M&T bank? Santander bank? Northwest bank? Or any other local Bank JOIN THE CHANNEL NOW TO GET PAID💯 ✅
Darryl[m] has left #rust-embedded [#rust-embedded]
pcs38 has quit [Quit: leaving]
DavidBrown[m] has quit [Quit: Idle timeout reached: 172800s]