Dropping by briefly for an update on HDMI to USB things.
First, properly fixed MS2109 audio was merged to the kernel earlier, both fixing the regression I introduced with the prior patch, and putting the channels in the right order (turns out the problem was more subtle).
Also I dropped in the quirk to make audio work on the Pioneer DDJ-RB DJ controller (that story from a year ago...) while I was submitting patches to the ALSA maintainers.
And now, this thing, which I bought a while ago but hadn't looked at yet:

TL;DR it's crap. Fake USB3.0 (connector & cable, but not internals). MJPEG only. And it *craps out* if the frame is too complex (gives up, refuses to stream), probably fixed qp MJPEG exceeding bandwidth?
It does seem to stream 1080p unblurred unlike the MS2109, when it works (plenty of MJPEG artifacts though), but you're much better off getting a real USB3.0 unit.

Internal topology is HDMI splitter -> Sil9293 -> FIC7618 (blacktopped as TC1860, but I was able to scrape it off)
FWIW here is the real USB3.0 unit that I paid *less* for than the fake one: aliexpress.com/item/400104487…
(As always, this is China, real things may become fake the next day, no guarantees)

• • •

Missing some Tweet in this thread? You can try to force a refresh

Keep Current with Hector Martin

Hector Martin Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!


Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

More from @marcan42

9 Jun
I just got one of these and I would've documented it, but @Ascii211 already did, so there you go.

It's surprisingly good bang/buck, though the MJPEG quality isn't great (esp. the chroma); definitely better on YUV but you lose framerate.

I have some USB3 units ordered. We'll see
And yes it eats up HDCP streams no problem.
Looks like you don't get all 1920 pixels horizontally, though. It seems to be more like half the horizontal res, due to some kind of filtering. You do get 1080 lines though. So 960x1080 effectively? First image is the cheap thing, second is an AverMedia LGP2 (crop of 1080p frame)
Read 15 tweets
28 Apr
Today in "ffmpeg's AAC encoder is still a embarrassment and nobody should ever use it": OBS on Windows using it, at 320kbps, makes music sound like a low bitrate mp3 (metallic hi-hats, etc). No problem with a custom OBS build on Gentoo with libfdk_aac enabled, at *160* kbps.
ffmpeg's terrible AAC encoder (and its documentation claiming it's not terrible) is literally responsible for basically every Twitch streamer's audio being crappy.

Also I'm pretty sure Twitter uses it too.
It's extremely sad that it's 2020 and internet streaming and Twitter video are stuck with 90s era 96kbps mp3 quality audio, **because of bad code**, and apparently nobody cares.
Read 5 tweets
25 Mar
By the way, if you're wondering what all this talk of a potential "overshoot" of COVID-19 cases in Tokyo is about, congratulations. You're witnessing the birth of a word of "wasei eigo", or "English made in Japan".
Of course, what they actually meant is an explosion in cases. "Overshoot" means something different (going too far, exceeding an intended target), and the Japanese transliteration オーバーシュート (ōbāshūto) meant the same thing, as far as I can tell. Until now.
Now that a public official has incorrectly used the word with a different meaning, and the media are going along with it, and since it is a word whose original meaning the general public would not be familiar with, it is now about to become the new common usage.
Read 8 tweets
12 Mar
Okay, @yubico, what the hell.


SQL injection. In a product by a security vendor. In 2020. And you fixed it with "data validation"?!?! Not prepared statements?!? Not even just escaping the params‽‽‽‽

This is downright criminally irresponsible code.
Please tell me that the people writing this PHP abomination have *nothing* to do with the people developing your hardware tokens. Please.

Maybe I should really start looking into alternative products...
Seriously, how incompetent do you have to be to not only write code like this, but also *once the bug is found, completely fail at educating yourself as to what the correct, sane, safe way to fix it is*?

I might excuse lack of knowledge, but not the utter inability to learn.
Read 8 tweets
2 Mar
Always keep in mind a clear distinction between needs of security and obscurity.

When we talk about security, we stress the need for proper cryptography.

Do not confuse that with obscurity. Proper cryptography is often a hindrance for obscurity.
Sometimes you can't do better than obscurity (DRM, "tamper detection", and other forms of "protect the software from the user"). Sometimes there are valid reasons to do that. I've been there and done that myself.
But when the entire purpose of your code falls apart as soon as people *understand* it, using well-documented algorithms is a hindrance. Nobody cares if your integrity hash algorithm is cryptographically secure if it means someone can just replace the hash.
Read 15 tweets
19 Dec 19
I just had a brief exchange on Reddit about DNA damage and failure modes, and it got me thinking about how most people don't have a good sense for how robust software is in the face of random damage.
We like to think of software as a fragile thing where if the hardware does something wrong or there is corruption everything explodes, but that is far from the case.

I think this is driven by most programmers being familiar with source code, where a typo means it won't compile.
Binaries are different. You can do an impressive amount of damage to a binary and still have it mostly or fully work. Try it, grab a binary - the more complex the better - flip some random bits (avoid file headers, focus on the code) and see if you can spot what breaks.
Read 8 tweets

Did Thread Reader help you today?

Support us! We are indie developers!

This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Too expensive? Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal Become our Patreon

Thank you for your support!

Follow Us on Twitter!