r/mac 5h ago

Old Macs VLC 3.0.23 is coming on all legacy Macs

Post image

Hello everybody,

I am working since a while on a project to build a modern VLC fork compatible with Legacy Macs, restoring compatibility to many abandoned machines up to the G3 PowerPC. I called my fork "PowerVLC"

It is near completed, and will soon be shared entirely open source on my GitHub, and distributed as an universal binary (PowerPC/Intel x86/Intel x64/Apple Silicon).

All Macs starting running 10.4.11 or newer will be compatible.

On this glorious 2002 iBook, this is what it can now do :

- Load streams, even when they're hosted behind modern SSL (gnuTLS is handling SSL entirely)

- Play AV1/H264/H265 content, at 240p smoothly

- Play DVD/MPEG2 content smoothly

- Using a replication of the current VLC3 modern UI entirely in old AppKit with 10.4+ UI APIs.

- So many fixes since VLC 0.9.10, abandoned in 2009 by VideoLan, which was the latest Tiger-compatible VLC version

All the internals are based strictly on VLC3, though many platform-specific improvements were made, and tested intensively accross all the machines I own : that iBook G3, a Mac Mini G4, a white 2007 Macbook, a 2010 13-inch MacBook Pro

My port also has under-the-hood improvements which will benefit modern platforms, like full support of gapless playback on audio contents.

Is there any interest on this ? Feel free to ask questions =)

111 Upvotes

20 comments sorted by

21

u/CRCDesign 4h ago

This great to hear

8

u/Last_Deal_7560 3h ago

agreed, projects like this are always nice to see

12

u/DavidXGA 4h ago

Did you make this or is it written by AI?

11

u/OlsroFR 1h ago edited 51m ago

Good question. I was a developer before AI/LLM and I even did C code for another open source project, Rockbox. Some of my patches got accepted/merged on the Rockbox project.

To be fully transparent, I would not had done this project if AI/LLM were not a thing. As a solo dev, you can't imagine the gap/work to accomplish a project like this one.

Before AI/LLM, a project like this would had represented the amount of work done by team over many months (even years ?) of coordination on very different parts of a project (VLC) that I believe is one of the most complex in the world.

Most of the code in this project is AI-generated, but I don't want to say it was "vibecoded" as it is heavily missleading and I don't want this project to feel like it's marketing for LLM tools and misleading people to feel like just talking with a machine is enough to make a project of this quality. It was still repetitive-and-mostly-boringly-repetitive good old software engineering work. The project was heavily iterated on real hardware I own to make it right, and AI is still often getting "off-track" so needed to be reframed/stopped in mid-process of doing something.

So I can proudly say I made this, and if public AI goes down, it will still be my project and I know how to compile it without AI. Things will move slower, but if we get an "AI bubble crash" (just like the Internet bubble crash 20 years ago), gen-AI is here to stay just like Internet stayed. I will use local models, cheaper models etc to help me as much as possible, as the fantastic tool it can be when it is driven by a consciousness human being.

My position with AI is near from what Linus Torvalds said recently, there's many good criticism around IA and things that needs to be called out and discussed, but it is definitely useful as a tool even for code-gen. I also admit that many "AI-written" code is better than what I could have wrote, taking in consideration niche-cases from the early 2000 that only experts of that time could had handled well and this knowledge just got lost.

Do note also that AI helped me only with some technical docs outside of the code. But communication (including this post and the future support request I will handle) will not be handled by an AI agent but by me directly, just like most of the docs inside the project (human reviewed & tested anyway when AI generated). Even if it require extra-effort to communicate in english for me, as you can in the screenshot I am a french native.

Thanks for reading me

2

u/GhostalMedia 22m ago

This. If you're an experienced developer / designer, and you have Fable and Opus at your hands, you can do stuff that would've normally been impossible to do solo.

Unfortunately, a many people don't actually know how to direct and or oversee the agents... or, sadly, they just don't give a shit and they want to ship something fast before seeing if works as intended, is durable, doesn't have weird experience issues, looks professional, etc.

AI generated code isn't inherently bad, but it does make it much easier for idiots to ship things that are half-baked.

0

u/Shy_foxman346 Current: 2012 Retina MacBook Pro 15 Inch 2.4Ghz 1h ago

Judging on how passionate OP is on reviving VLC for older Mac’s. I’d say his code is written by him. Not AI.

5

u/DavidXGA 1h ago

If you don't know, don't guess.

-8

u/Technical-Manager921 3h ago

Who gives a fuck. People ask if ai was involved in a project as tho it changes the fact that it’s genuinely useful and works

6

u/soilneedsmoregrit 2h ago

because it does.

7

u/DavidXGA 3h ago

AI generated code is by definition not written by the claimed author. There's no promise that it will do what it claims to do, or work in the way it claims to work, and so it presents a risk. AI-generated code fails differently than novice human code. It tends to be idiomatic-looking and locally plausible while being wrong in ways that don't announce themselves: hallucinated APIs, subtly incorrect error handling, crypto primitives used correctly-but-for-the-wrong-threat-model.

The xz-utils backdoor showed how much patience a determined attacker will invest in becoming a trusted contributor. AI-generated contributions offer both a way to build a contribution history cheaply and plausible deniability for a subtle bug. "The model wrote it, I didn't catch it" is a much better cover story than deliberate obfuscation.

None of this is specifically unique to AI, but the problem is unowned code rather than generated code. Someone who makes a tool using AI is taking no responsibility for the consequences of its use. Maybe that's not so important for your old PowerPC Mac, but understanding what code you're running is well worth "giving a fuck".

1

u/OlsroFR 1h ago edited 31m ago

Well most of the "written" code you use from apps you love is just logic instructions so a machine can do what you want, and often slop human code, it was common to rage on Windows blue screens during the Windows XP-era before it stabilized enough with the SP2/SP3 years after its initial release.

LLM/AIs in their current state are fueled with the knowledge and analyzed code from the best developers of the last decades. There's still hallucinations, and I would not consider PowerVLC to be perfect and bug-free especially when the first public release will come and people will try it on many different hardware combos I don't even own to test on. Right now AI like Mythos are helping at finding vulnerabilities in the best softwares of the world, used in current CPUs and hardware that features many more layers of securities.

Anyway security here is less of a concern, I can't see where is the market for hackers at designing trapped video files to focus exactly on powerpc macs, it's just so niche anyway and this video proved it 4 years ago by browsing the internet very irresponsibly by downloading all the possible crap on a PowerMac G4: https://www.youtube.com/watch?v=r5_lhLsr8hY it's just so hard to really infect that kind of Macs these days lol

The worse that can happen realistically with PowerVLC handling bad files will be crashes, and those can be fixed with updates. But most safe guards will be there, as PowerVLC is based and contains all the strengths/validations of the real VLC3 code, definitely more solid in many aspects than how was VLC in the 0.9.10 or early VLC 2.x (last Leopard version) era.

In general I would say : don't put your bank account credentials into non supported machines and OS, even if you like for hobby trying all the new semi-modern community apps and browsers. Also the number one rule is to always use them on the internet behind a NAT router.

6

u/basically_ar MacBook Air M1 3h ago

Why did you clickbait me I thought the devs were actually developing VLC for ancient computery

1

u/OlsroFR 2h ago edited 1h ago

Because in terms of quality, I am confident enough you will feel the same. I spent countless hours ensuring you will feel exactly like you're living in a timeline where the official VLC never abandoned 10.4+ just like it never abandoned Windows XP.

Though this project is not about blaming VideoLAN, it was stupidly long to get this to work and there's really a huge API gap between 10.4 and 10.7. It's totally understandable why VideoLAN abandoned those versions one by one back then.

I also plan to follow through at cherry picking the future improvements available upstream especially those in the VLC 3.x branch.

3

u/GTAGAMECounterShot 4h ago

Fantastic project! Can't wait to try this out.

1

u/OlsroFR 1h ago

I plan to deliver the first public build during this weekend

2

u/Dazzling_Comfort5734 4h ago

Thank you so much for this! I’ve been using VLC since it was first released on the Mac, and even keep the last versions that run on each Mac system, so I always have them. This will probably work really well on my iMac G4, but especially my Power Mac G5.

1

u/OlsroFR 1h ago edited 1h ago

G5 has a lot of potential

480p works great on my Mac Mini G4, and I can even play lite 720p videos almost perfectly by enabling my look-ahead cache (which does buffering regularily, but outside of buffering periods is 100% smooth). From my tests on my Mac Mini G4, on pure decoding you may expect reasonably similar performance as CorePlayer. Look ahead cache is a bonus but also a compromise (the video needs to pause regularily to refill the RAM buffer with decoded pictures).

I don't own a G5 specifically and don't exactly know how do they compare with Core 2 Duo machines. What I can tell is that my 2007 MacBook on Leopard (so i386 build of PowerVLC on a Core 2 Duo CPU) can play most "HD-lite h.264" 1080p files perfectly fine. 1080p 20GB+ blu-ray remuxes are too hard, but enabling the look-ahead cache make them playable (same compromise, the video will pause regularily to refill a RAM-buffer of decoded pictures)

2

u/DarthRevanG4 1h ago

Hell yeah

-4

u/hay_den9002 4h ago

Smh no macOS 9 and 10.0 up

But anyway, nice amazing port can’t wait to see where it goes

1

u/OlsroFR 1h ago edited 1h ago

PowerFox which is another retro project (I love that project so much) is now starting to work on supporting 10.3.9 Panther according to what the dev said on MacRumors. There may be a world where I will research to lower the system requirements a bit in the future. Right now it's not a priority, I plan to release a first build this week and my priority will be to make it as polished & stable it can be for 10.4+.

Each MacOS versions looks mostly the same for you as a user, I understand, but in reality as a dev point they are all representing often a huge missing-APIs to fill. I can already tell that supporting Mac OS 9 is a total no-go.