this post was submitted on 02 Apr 2024
1046 points (95.8% liked)

Programming

17511 readers
273 users here now

Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!

Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.

Hope you enjoy the instance!

Rules

Rules

  • Follow the programming.dev instance rules
  • Keep content related to programming in some way
  • If you're posting long videos try to add in some form of tldr for those who don't want to watch videos

Wormhole

Follow the wormhole through a path of communities [email protected]



founded 1 year ago
MODERATORS
 

Microsoft employee:

Hi, This is a high priority ticket and the FFmpeg version is currently used in a highly visible product in Microsoft. We have customers experience issues with Caption during Teams Live Event. Please help

Maintainer's comment on twitter:

After politely requesting a support contract from Microsoft for long term maintenance, they offered a one-time payment of a few thousand dollars instead.

This is unacceptable.

And further:

The lesson from the xz fiasco is that investments in maintenance and sustainability are unsexy and probably won't get a middle manager their promotion but pay off a thousandfold over many years.

But try selling that to a bean counter

top 50 comments
sorted by: hot top controversial new old
[–] [email protected] 406 points 7 months ago (4 children)

FFMPEG is a core technology. You literally cannot do anything with video without touching FFMPEG at multiple places in the stack.

The fact that we have billions of dollars of revenue flowing through that software every day, but we rely on VOLUNTEERS to maintain it shows exactly how hollow the whole SV entrepreneur culture really is.

Bunch of fucking posers wouldn’t know performance code if it kicked them in the face.

[–] [email protected] 195 points 7 months ago (4 children)

The fact that we have billions of dollars of revenue flowing through that software every day, but we rely on VOLUNTEERS to maintain it shows exactly how hollow the whole SV entrepreneur culture really is.

Exactly: I'm not mad about important things being run by volunteers -- arguably, that's a good thing because it means project decisions are made uncorrupted by profit motive -- but I am mad about the profit being reaped elsewhere on the backs of their free labor.

[–] [email protected] 71 points 7 months ago (1 children)

@grue @vzq this is such an interesting space. The general public has no idea how much of their software relies on open source code and voluntary community contributions. There have been so many attempts to figure out a way to compensate these maintainers, but it doesn't seem like anything has really become the defacto solution. Open Collective and Tidelift are the closest things I can think of.

load more comments (1 replies)
load more comments (3 replies)
[–] [email protected] 39 points 7 months ago (1 children)

They're not going to invest in it if they don't own it, and frankly I'm happy they don't.

load more comments (1 replies)
load more comments (2 replies)
[–] [email protected] 279 points 7 months ago* (last edited 7 months ago) (5 children)

the FFmpeg version is currently used in a highly visible product in Microsoft. We have customers experience issues with Caption during Teams Live Event.

This seems like a "you" problem, Microsoft, and since you employ thousands of programmers with the experience to solve your problem and commit the change back to the FOSS project, I think this is also very easily a "you" solution as well.

[–] [email protected] 66 points 7 months ago* (last edited 7 months ago)

This is pretty funny, kinda suggests they have no faith in the engineers they work with... ffmpeg is an awesome piece of work, but if it's a bug they can repeat to some level, then like you said, it 100% a them problem!

E: oh, was thinking it was a pm raised it, but seems it was possibly one of their developers, brutal....

[–] [email protected] 36 points 7 months ago (1 children)

Use -data_field first as decoder option in CLI. Default value was changed from first to auto in latest FFmpeg version.

It seems like ffmpeg made a breaking change to their API, and I expect a lot of users to have problems.

[–] [email protected] 64 points 7 months ago

On one hand that's fair, but on the other hand Microsoft is the biggest name in software development and ffmpeg is a volunteer gig, this is probably a problem the megacorp can handle.

load more comments (3 replies)
[–] [email protected] 256 points 7 months ago (4 children)

It's so ridiculous that this isn't even brought up:

The Command you provided worked fine. Thank you so much for the help! Really appreciated! We are going to proceed to make a release today and test with customers. Will post the updates here.

Gotta love being a forced beta tester... I mean customer.

[–] [email protected] 134 points 7 months ago (1 children)

That does kind of admit what we all suspected about Microsoft's QA since they fired the whole testing team in 2014.

load more comments (1 replies)
[–] [email protected] 123 points 7 months ago* (last edited 7 months ago) (4 children)

If the live version is already broken, there isn't much to lose deploying the fix as soon as possible. Not sure what else they could have done here.

load more comments (4 replies)
load more comments (2 replies)
[–] [email protected] 234 points 7 months ago (3 children)

Can't reproduce bug. Closing ticket.

[–] [email protected] 120 points 7 months ago (2 children)

It's what Microsoft would do in the same situation. It's only fair

[–] [email protected] 138 points 7 months ago (4 children)

I understand you are having a problem with ffmpeg.

Firstly, I will need you to open a command prompt and run SFC /scannow.

And then reboot your PC.

And then run SFC /scannow again.

And reboot again.

Until you give up and reinstall Windows.

[–] [email protected] 45 points 7 months ago* (last edited 7 months ago)

-Microsoft MVP

[–] [email protected] 40 points 7 months ago

I tried all that but accidentally installed Linux at the last step, but it seems to have fixed the issue so I'm suggesting it as a functioning workaround to all of my colleagues

load more comments (2 replies)
load more comments (1 replies)
load more comments (2 replies)
[–] [email protected] 205 points 7 months ago (8 children)

Hi, This is a high priority ticket and the FFmpeg version is currently used in a highly visible product in Microsoft. We have customers experience issues with Caption during Teams Live Event. Please help,

Use -data_field first as decoder option in CLI. Default value was changed from first to auto in latest FFmpeg version. Or modify AVOption of same name in API for this decoder.

Thanks @Elon for the reply, This is the command we are currently using: ffmpeg.exe -f lavfi -i movie=flvdecoder_input223.flv[out+subcc] -y -map 0:1 ./output_p.srt

I will be looking to see any updates in the FFmpeg documentation. Can you please elaborate and provide pointers the right decoding options or the right FF command er can use. Thank you!

ffmpeg.exe -data_field first -f lavfi -i movie=flvdecoder_input223.flv[out+subcc] -y -map 0:1 ./output_p.srt

Got that's fucking brutal. This isn't even asking them to fix a bug, it's just basic help-desk shit.

I'm sure Microsoft has some good devs that are a net benefit to the open source projects they use, but this is not one of them.

[–] [email protected] 133 points 7 months ago* (last edited 7 months ago) (4 children)

If you've ever been forced to use Teams you must already know they scraped the bottom of their talent barrel for the team that works on it... The software is shit, riddled with bugs to the point where at one point I used to only be able to use teams on my browser because the desktop app just decided to never let me access the text chat, and the browser version I would load it would be a white screen and I would have to refresh 3 times for it to load. But at least it worked after those 3 refreshes. And it was exactly 3 refreshes every single time, never 2, never 4, and 5 was right out. It was always without fail 3 refreshes. Whether loading from Firefox, Chrome, or Edge. Fortunately we don't have too many meetings with people using Teams these days, so I haven't had to use it in a while, but its easily in my top 5 worst software I've been forced to deal with. Maybe Top 3. But its still miles behind Magento. Fuck Magento, just thinking of it right now gets my blood pumping and I refused to work with it ever again about 10 years ago... Fuck Magento. Teams is at least a distant 2nd or 3rd to that. Absolute crap.

[–] [email protected] 76 points 7 months ago (4 children)

I'm convinced it's the whole B-2-B software world at this point. The shit starts at MS (or any of the FAANGS) and rolls downhill to everyone else.

We're working on a huge Dynamics 365 thing at work, and one of the third parties we use for automated testing is just.... the product seems barebones, is clearly built on top of open source automated testing tool, and is riddled with indicators that barely anyone works there, from the AI help bot to the "submit a ticket and we'll assign it eventually" approach to all other interactions.

I looked them up on Linked In and 12 people work there. 8 of them have C-suite or VP titles, and 4 of them are interns from a local university. This is the state of all modern tech: a board room full of investors, a website, and a product barely glued together from FOSS parts by interns. If you wonder why everything feels like a scam now it's because it is.

load more comments (4 replies)
[–] [email protected] 35 points 7 months ago* (last edited 7 months ago) (2 children)

There's a reason Teams is/was shit.

The first teams was written in AngularJS (which is a slow to run resource hog, but fast to develop) wrapped in Electron. It was kind of a minimum viable product, just to build something quickly to get some feedback and stats on what people needed.

The plan was to build a new native version of teams and build it into the next windows while having an web fallback (built on react) for everyone else.

They stopped working on the original teams and started working on the new versions.

They got half-way through working on the native and react versions when suddenly, covid happened.

They couldn't keep working on the new versions because they wouldn't be ready for a while, so they had to go back and resume development on the old one, introducing patch after patch to quickly get more features in there (like more than 2 webcam streams per call).

Eventually covid subsided and they were able to resume development on the new teams versions.

Windows 11 launched with a native teams version (which has less features but runs super quick), and the new react based teams (which can now be downloaded in a webview2 wrapper) has been in open beta since late last year (if you've seen the "Try the new Teams" toggle, then you've seen this). The React+Webview2 teams will replace the AngularJS+Electron version as the default on July 7th.

load more comments (2 replies)
load more comments (2 replies)
[–] kakes 44 points 7 months ago

Lmao even after providing a well explained answer, they still had to manually add the flag to their command for them.

[–] [email protected] 32 points 7 months ago (3 children)

You got this dumbass at MS and then you've got the other MS guy who's a god damn hero that very well might have saved the world atm lmao

load more comments (3 replies)
load more comments (5 replies)
[–] [email protected] 187 points 7 months ago (1 children)
load more comments (1 replies)
[–] [email protected] 107 points 7 months ago (3 children)

Hilariously the issue was just a setting change in the update, that you can easily change via a command option. They saw thing didn't work, and didn't read the change log at all before asking to pay a one time fee to guarantee it be maintained for them.

load more comments (3 replies)
[–] [email protected] 106 points 7 months ago (4 children)

"A failure to plan on your part does not constitute an emergency on my part." -Someone hopefully working on ffmpeg.

load more comments (4 replies)
[–] [email protected] 104 points 7 months ago (9 children)

I don't get why they don't propose a fix themselves.

[–] [email protected] 35 points 7 months ago

99% morons, that's why...

load more comments (8 replies)
[–] [email protected] 74 points 7 months ago (1 children)

Maybe microsoft should try reinstalling windows.

load more comments (1 replies)
[–] TheMightyHUG 71 points 7 months ago (14 children)

Can someone enlighten me why a one-time payment of a few thousand for a bugfix is unacceptable? I feel like I'm missing something.

[–] BaskinRobbins 122 points 7 months ago* (last edited 7 months ago) (54 children)

I think the maintainer just viewed the bug report as tone deaf. Microsoft is a trillion dollar company and apparently relying on this library without a support contract. Then they a open a high priority bug item. The maintainer saying it's unacceptable is them basically saying they won't prioritize any work unless there's an existing support contract and that they don't do one off payments for bug fixes, which I think is fair.

load more comments (54 replies)
[–] protozoan_ninja 44 points 7 months ago* (last edited 7 months ago) (3 children)

There was no bug to fix, the PM didn't keep up with developments in an (apparently) core dependency and was passing outdated arguments to ffmpeg. The fix was for the project to update how it was passing flags to ffmpeg. They'd rather spend the time opening a ticket on ffmpeg's bugtracker and spend thousands of company money begging ffmpeg to help them, when MS is a massive corporation, is apparently relying on ffmpeg, yet has hitherto established no support relationship and also has developed no internal expertise on ffmpeg

They easily could have opened up the code and looked around to find the problem, or checked the changelog since an update broke it, or just rolled back to the last-known working version until they had time to figure it out, instead they just dumped it on ffmpeg's doorstep like their hair was on fire. FFMPEG's development model is explicitly that they iterate quickly and there are very likely to be poorly documented breaking changes between versions. It's not one you pull a new version of casually.

load more comments (3 replies)
[–] [email protected] 42 points 7 months ago (1 children)

A trillion dollar company using your product in one of their flagship products without a support contract can fuck right off.

Microsoft should be putting up money via the support contract to support the creators in maintaining and further development of their product.

A one off payment might be technically sufficient, it is not ethically or morally sufficient. And to put it in terms shareholders understand.. support contract is cheaper than the cost of an alternative.

load more comments (1 replies)
[–] [email protected] 34 points 7 months ago (2 children)

The maintainer is a human that needs to eat every day, and not just whenever their services are needed. So at least, the sum of money would need to be a few times higher than whatever labour the fix takes.

But then, the maintainer's ability to fix these bugs doesn't come from nowhere. They worked on this project for likely a long time, which would also need to be taken into account when agreeing on a sum.

Further, this would be business to business. And those contracts often include the value that the client gets out of the software. So if Microsoft makes billions from this open source library, then the maintainer's - as a business - should receive a payment that reflects this for the fix.

All that implies that a few thousand is not nearly enough. Maybe 100k and the maintainer would budge.

load more comments (2 replies)
load more comments (10 replies)
[–] [email protected] 58 points 7 months ago (5 children)

I love how that PM brings up the fact that this is needed for a product launch. Like who cares?

load more comments (5 replies)
[–] [email protected] 57 points 7 months ago (5 children)

Tasteless! MSFT can have their armies of skilled people do this instead of leeching off FOSS contributions. It’s just not an acceptable move from a profit-driven entity to expect free labor, regardless of the FOSS philosophy of the project!

[–] [email protected] 48 points 7 months ago* (last edited 7 months ago) (5 children)

To be fair, I'm sure this is a lone developer at Microsoft, not Microsoft as a company. A lot of this still absolutely applies, but it's not Microsoft as a company making an official decision to go ask the FFMEPG guys for free shit.

It'd be nice if the guy had an avenue to go to leadership, tell them about the issue, and just ask them to actually fund the guys to work on it.

load more comments (5 replies)
load more comments (4 replies)
[–] [email protected] 55 points 7 months ago (3 children)

Old issue, so why post it now make it sound like MS demands something?

Opened 11 months ago Last modified 11 months ago

It's a regression, so ffmpeg should fix a regression.

load more comments (3 replies)
[–] [email protected] 54 points 7 months ago (2 children)

I wonder if these trillion dollar companies offer support contracts for astroturfing on social media on their behalf. I can't think of any other way so many people are supporting their sociopathic attitude.

load more comments (2 replies)
[–] [email protected] 53 points 7 months ago

Good, tell leech corporations and specially Microsoft to fuck right off. Pay for it or do it yourselves.

[–] [email protected] 42 points 7 months ago (3 children)

I am confused. I realize this is just a flag change not even a dev problem but PEBKAC, still - in the event of an actual bug, why wouldn't Microsoft have a dev contribute to the project and fix it instead of just opening a ticket?

[–] [email protected] 42 points 7 months ago (1 children)

Filling an issue quickly is good etiquette. Then you can discuss in the ticket the best way to solve/work around.

load more comments (1 replies)
load more comments (2 replies)
[–] matlag 34 points 7 months ago

Alternative answer: "We understand your issue and will fix it as time and priorities allow. Please note that customers paying for support always get higher priority. Given MS contributions to the project, this ticket was ranked 42nd in our priority list.

Have a pleasant day! FFMPEG support team"

[–] [email protected] 33 points 7 months ago (2 children)

lmao Elon is a FFMPEG maintainer?

load more comments (2 replies)
load more comments
view more: next ›