Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

Dronecatcher

macrumors 603
Jun 17, 2014
5,244
7,880
Lincolnshire, UK
@fra9000 Attached are the scripts that work slightly better than before and with 7.2.5 - all made and tested on my G3 iBook.

Loop filter adjustments are still there but frame dropping isn't - that was causing an issue with new Youtube.

Included is FFPlayer, which when placed in Applications and given a shortcut in the Dock, allows for drag and drop video playback.

Picture 1.png
 

Attachments

  • Archive.zip
    110.1 KB · Views: 129

fra9000

macrumors member
Aug 28, 2020
47
72
Italia
@Dronecatcher @alex_free Thank you both for the quick replies. You have done a great job here. I will probably have some time to test out the new script tomorrow. I will let you know.

Great idea if you can have some sort of PPCMC/Choob support on the go for next release.
 
  • Like
Reactions: alex_free

fra9000

macrumors member
Aug 28, 2020
47
72
Italia
@Dronecatcher
I've tried your new scripts and they work 👍🏻.
Just some considerations:
1. The download speed has become very very slow. I usually can download @1.3MByte/sec. I got 80kb/sec max. much slower than your videos with The Likes (btw great band)
2. you added a ".mp4" in the new scripts. Is that intentional?
3. Tried to make a 360p version hacking your file, but didn't succeed. I miss the meaning of some of the numbers over there. Could you provide the 360p version as well?

Thank you again for that.

@alex_free I have sent you the 2 files for comparison via PM. Let me know what you think it can be.

Take care.
 

Dronecatcher

macrumors 603
Jun 17, 2014
5,244
7,880
Lincolnshire, UK
@Dronecatcher
I've tried your new scripts and they work 👍🏻.
Just some considerations:
1. The download speed has become very very slow. I usually can download @1.3MByte/sec. I got 80kb/sec max. much slower than your videos with The Likes (btw great band)
2. you added a ".mp4" in the new scripts. Is that intentional?
3. Tried to make a 360p version hacking your file, but didn't succeed. I miss the meaning of some of the numbers over there. Could you provide the 360p version as well?

Thank you again for that.

@alex_free I have sent you the 2 files for comparison via PM. Let me know what you think it can be.

Take care.

I find download speed with youtube-dl can vary greatly.

I'm sure .mp4 was in the old scripts too - certainly was in the old ones I just checked.

I'll do the 360P soon as I can. The strange thing is, 360P (youtube format 18) videos from Youtube that have audio built in play much better than the separate 360P+audio files - problem is not every video has a format 18 clip.
 

fra9000

macrumors member
Aug 28, 2020
47
72
Italia
I find download speed with youtube-dl can vary greatly.

I'm sure .mp4 was in the old scripts too - certainly was in the old ones I just checked.

I'll do the 360P soon as I can. The strange thing is, 360P (youtube format 18) videos from Youtube that have audio built in play much better than the separate 360P+audio files - problem is not every video has a format 18 clip.
So I found the issue with the speed.
Basically it happens that sometimes the output files are not properly removed in the YouTube folder causing probably the file to be overwritten. In this case the speed is much lower plus I randomly experience script blocking (ctrl+C to terminate the terminal). As soon as I remove the files the next time I use your script I got the usual fast speed between 1 and 2 MB per second giving my iMac G3 real and usable YouTube capabilities. I feel my 700MHz can stand the chance to play the 360p properly.

@Dronecatcher:
additional thoughts on the scripts:
1. Have you thought to output the file to different filenames everytime.. something like "download" + timestamp from clock + ".mp4" in order to avoid the overwriting issue?
2. I notice most of the time is consumed by the cache cleanup at the beginning of the script. What happens if we don't clear it or if we do this at the end?
3. For the issue of not all videos having the 360p format, is there a way in script to catch the error (like the "try" keyword in other programming language) and cascade down to 240p?

Just some ideas for the future, nothing urgent here ;).
 

alex_free

macrumors 65816
Original poster
Feb 24, 2020
1,084
2,312
So I found the issue with the speed.
Basically it happens that sometimes the output files are not properly removed in the YouTube folder causing probably the file to be overwritten. In this case the speed is much lower plus I randomly experience script blocking (ctrl+C to terminate the terminal). As soon as I remove the files the next time I use your script I got the usual fast speed between 1 and 2 MB per second giving my iMac G3 real and usable YouTube capabilities. I feel my 700MHz can stand the chance to play the 360p properly.

@Dronecatcher:
additional thoughts on the scripts:
1. Have you thought to output the file to different filenames everytime.. something like "download" + timestamp from clock + ".mp4" in order to avoid the overwriting issue?
2. I notice most of the time is consumed by the cache cleanup at the beginning of the script. What happens if we don't clear it or if we do this at the end?
3. For the issue of not all videos having the 360p format, is there a way in script to catch the error (like the "try" keyword in other programming language) and cascade down to 240p?

Just some ideas for the future, nothing urgent here ;).
Hmm this is interesting. AFAIK @Dronecatcher , every YouTube video is guaranteed to have format 18. PPCMC7 uses format 18 to stream all videos.
Code:
    else if actionChoice is "Stream YouTube Video" then
        get_url()
        set format to "18" as text
        get_real_link()
        do shell script "" & video_p & " \"" & qtLink & "\" > /dev/null 2>&1 &"
       
    else if actionChoice is "Stream YouTube Video In QuickTime" then
        get_url()
        set format to "18" as text
        get_real_link()
       
        try
            tell application "QuickTime Player"
                activate
                getURL qtLink
            end tell
        end try

PPCMC7 itself when downloading 360p however uses 134+140 and merges them:

Code:
        else if actionChoice is "360p" then
            get_url()
            mktemp()
            date_folder()
            term()
            tell application "Terminal"
                do script "clear; mkdir -p ~/.ppcmcTemp/" & rdmString & "/;  echo -e \"
\"; echo -e \"
Downloading Video @360p...\"; sleep 1; echo -e \"
\"; export SSL_CERT_FILE=/Applications/PPCMC.app/certs/cacert.pem; export REQUESTS_CA_BUNDLE=/Applications/PPCMC.app/certs/cacert.pem; /Applications/PPCMC.app/bin/python3.6 /Applications/PPCMC.app/bin/youtube-dl/youtube_dl/__main__.py --prefer-ffmpeg --ffmpeg-location=/Applications/PPCMC.app/bin/ffmpeg -f 134+140 -o ~/.ppcmcTemp/" & rdmString & "/\"%(title)s.%(ext)s\" '" & pageURL & "'; mv -f ~/.ppcmcTemp/" & rdmString & "/* ~/Desktop/PPCMC\\ Downloads\\ " & dateCurrent & "/ &> /dev/null; rm -R ~/.ppcmcTemp/" & rdmString & "/; find ~/Desktop/PPCMC\\ Downloads\\ " & dateCurrent & "/ -exec " & setFileExe & " -a -E '{}' \\; &> /dev/null;  echo -e \"
\"; echo -e \"
- Download Complete -\"; sleep 1; echo -e \"
\"" in w1
            end tell
PPCMC7 can very wildly on download speed, and it clears the downloads and moves them before doing another one. You can seem to get a ‘bad connection’, CTRL-C, and get a good connection and download speed the next try. I’m not really sure how to prevent this right now.

Also, a way to automatically find a lower format available when the requested one isn’t has been on the todo list forever.

I think the weird thing about the ad on having more compatible videos then PPCMC7 in the ancient VLC is due to the latest FFMPEG merging the separate 134 video stream and 140 audio in some kind of way VLC hates. Format 18, the only guaranteed video+audio all in on stream shouldn’t have this problem and would be faster to download since no merge is required anyways, so that will be changed…
 
Last edited:
  • Like
Reactions: fra9000

alex_free

macrumors 65816
Original poster
Feb 24, 2020
1,084
2,312
PPCMC 7.2.6 NOW AVAILABLE

144p 3GP YouTube streaming using QuickTime on a Mac OS X 10.3.9 iBook G3 300MHz Clamshell with 544MBs of RAM is working in 2021!

Changes In Version 7.2.6:​

  • Removed YouTube-dl and replaced it with YouTube-dlp as it is now vastly superior in speed, reliability, and accessibility to content.
  • Added streaming of 144p (3GP), and 720p (MP4) for all YouTube videos. FFplay, QuickTime, VLC, and Mplayer all support this.
  • Intel Mac OS X 10.4.8-10.5.8 are now supported by the new Intel native build.
  • Rewrote the Play Media File function to be faster and to fix a bug where certain file names would cause a video to not play.
  • YouTube live streams that are not live and have ended can now be played back by the Stream YouTube Video or Stream YouTube Video In QuickTime options.
  • PPCMC7 now automatically applies a different FFplay configuration for ppc, ppc750, and ppc7400 Macs to boost performance over quality (thanks Dronecatcher). For ppc7450, an option is to do so is available.
  • Fixed/Updated the 720p format used for streaming YouTube live streams to format 300.
  • New build system rewritten for portability, faster development/modification, and enhanced functionality.
  • Updated FFmpeg/FFprobe/FFplay to the latest version, 4.4.1.
  • Updated OpenSSL to the latest version of the 1.1.1 branch, 1.1.1l.
  • Updated the CA certificates to the latest extraction of 10-26-2021.
  • Updated CDRdao to the latest version, 1.2.4.
  • Updated Python to the latest version of Python 3.6, version 3.6.15.
  • Updated cURL to the latest version, 7.80.0.
  • Updated Git to the latest version, 2.34.1.
  • Removed TenFourFox box support due to a bug with URLs being not updated.
  • Updated the web interface to support Python 3.6/yt-dlp.
  • Added YASM to the build tools to enable all X86 assembly optimizations available in FFmpeg for Intel Macs.
  • Optimized PPCMC.app to take up less space by removing unnecessary files.
 

MacFoxG4

macrumors 6502
Nov 22, 2019
447
623
So, first off I just want to say that I think it is really cool that you have the option to optimize playback for slower PPC Macs. I just streamed a 360p MP4 video on my dual USB iBook G3 running PPCMC 7.2.6 under Tiger and using ffplay as my player and the video played great!



I did try PPCMC 7.2.6 on my 1.5ghz Sawtooth (which has a Radeon 9000, a non-CI GPU) under Sorbet Leopard using ffplay as my video player and that didn’t work out as well. The video would just freeze partway through and with no way to unfreeze it. I had this problem before with PPCMC 7.2.5’s ffplay under vanilla Leopard and the only solution was to put in a CI-capable GPU. 7.2.5’s ffplay does not have any issues under Sorbet, so I’m sticking with that version for now on the Sawtooth.



Haven’t tried the Intel version yet, but when I do I will post about it in the Early Intel subforum.
 
  • Like
Reactions: alex_free

alex_free

macrumors 65816
Original poster
Feb 24, 2020
1,084
2,312
So, first off I just want to say that I think it is really cool that you have the option to optimize playback for slower PPC Macs. I just streamed a 360p MP4 video on my dual USB iBook G3 running PPCMC 7.2.6 under Tiger and using ffplay as my player and the video played great!



I did try PPCMC 7.2.6 on my 1.5ghz Sawtooth (which has a Radeon 9000, a non-CI GPU) under Sorbet Leopard using ffplay as my video player and that didn’t work out as well. The video would just freeze partway through and with no way to unfreeze it. I had this problem before with PPCMC 7.2.5’s ffplay under vanilla Leopard and the only solution was to put in a CI-capable GPU. 7.2.5’s ffplay does not have any issues under Sorbet, so I’m sticking with that version for now on the Sawtooth.



Haven’t tried the Intel version yet, but when I do I will post about it in the Early Intel subforum.
Interesting. So since your sawtooth has a ppc7450, it gave you the option to optimize right? Its automatically done for anything lower but its a choice for 7450 and not done on anything higher. With or without optimization, this happens? Besides that configuration change, the only thing different is FFplay is now v4.4.1 not v4.4.

I think i can change some ffplay args and mess with this.
 
Last edited:

MacFoxG4

macrumors 6502
Nov 22, 2019
447
623
Interesting. So since your sawtooth has a ppc7450, it gave you the option to optimize right? Its automatically done for anything lower but its a choice for 7450 and not done on anything higher. With or without optimization, this happens? Besides that configuration change, the only thing different is FFplay is now v4.4.1 not v4.4.

I think i can change some ffplay args and mess with this.
Correct. The freezing happens whether or not the optimization is turned on, though the freezing happens later in the video when optimization is turned on.

That would be cool if you could alter the ffplay args, but don't stress yourself out just because of my quirky setup.
 
  • Love
Reactions: alex_free

alex_free

macrumors 65816
Original poster
Feb 24, 2020
1,084
2,312
Correct. The freezing happens whether or not the optimization is turned on, though the freezing happens later in the video when optimization is turned on.

That would be cool if you could alter the ffplay args, but don't stress yourself out just because of my quirky setup.
I literally make PPCMC7 for myself and people exactly like you. I'm not sure yet what needs to be modified but if I can I'd like to figure out what's going on. In the future can I message you with some tests to possibly figure this out?

I really feel like infinite buffer size would fix this (it should already happen for streams but who knows, some stackoverflow answers say otherwise). Could also be a change in FFplay but not sure...
 

MacFoxG4

macrumors 6502
Nov 22, 2019
447
623
I literally make PPCMC7 for myself and people exactly like you. I'm not sure yet what needs to be modified but if I can I'd like to figure out what's going on. In the future can I message you with some tests to possibly figure this out?

I really feel like infinite buffer size would fix this (it should already happen for streams but who knows, some stackoverflow answers say otherwise). Could also be a change in FFplay but not sure...
Sure, you can message me, though I just tried the same video again with ffplay and 7.2.6 on this Mac and it didn't freeze at all like it did earlier, so now I feel foolish for even bringing it up in the first place.
 
  • Like
Reactions: alex_free
I was compelled to graft two mixes of Murder Of Love together....


Already this is light years better than the “Murdered Mix” and “Beloved Mix” — whose origins are still unknown to me but I know they were acquired together. It sounds like the grafts came from “Loved (2)” on Wishful Thinking and the album version.

The period-correct reverb and compression on your graft does it for me (no idea whether that was your doing or the sources’ doings, but either way, I love love love it).

I’ve never tinkered with any of Propaganda/Act/Famous Fairbanks/Brücken stuff before, insofar as remixing. I might want to reconsider that and try something eventually! At most, all I’ve ever done is thrown together a quick sleeve for their unreleased 1998 album to have something for a visual placeholder in my library:

1642765022432.png
 

Dronecatcher

macrumors 603
Jun 17, 2014
5,244
7,880
Lincolnshire, UK
Already this is light years better than the “Murdered Mix” and “Beloved Mix” — whose origins are still unknown to me but I know they were acquired together.
Thanks :)
It's a bit of a misnomer for me to say remix, I just wanted to hear that plaintive piano intro on Loved together with the original track for my own listening but decided to upload anyway (and designed a graphic.)
I ran it through some compression filters (in OS9 no less) to ramp up those gated drums and bass, although that is lost a little by Youtube's processing.
(Original attached)
 

Attachments

  • The Murder Of Love.zip
    11.7 MB · Views: 87
  • Like
Reactions: B S Magnet
Thanks :)
It's a bit of a misnomer for me to say remix, I just wanted to hear that plaintive piano intro on Loved together with the original track for my own listening but decided to upload anyway (and designed a graphic.)
I ran it through some compression filters (in OS9 no less) to ramp up those gated drums and bass, although that is lost a little by Youtube's processing.
(Original attached)

Thank you! This is wonderful! :)
 
  • Like
Reactions: Dronecatcher
PPCMC 7.2.6 NOW AVAILABLE

144p 3GP YouTube streaming using QuickTime on a Mac OS X 10.3.9 iBook G3 300MHz Clamshell with 544MBs of RAM is working in 2021!

Changes In Version 7.2.6:​

  • Removed YouTube-dl and replaced it with YouTube-dlp as it is now vastly superior in speed, reliability, and accessibility to content.
  • Added streaming of 144p (3GP), and 720p (MP4) for all YouTube videos. FFplay, QuickTime, VLC, and Mplayer all support this.
  • Intel Mac OS X 10.4.8-10.5.8 are now supported by the new Intel native build.
  • Rewrote the Play Media File function to be faster and to fix a bug where certain file names would cause a video to not play.
  • YouTube live streams that are not live and have ended can now be played back by the Stream YouTube Video or Stream YouTube Video In QuickTime options.
  • PPCMC7 now automatically applies a different FFplay configuration for ppc, ppc750, and ppc7400 Macs to boost performance over quality (thanks Dronecatcher). For ppc7450, an option is to do so is available.
  • Fixed/Updated the 720p format used for streaming YouTube live streams to format 300.
  • New build system rewritten for portability, faster development/modification, and enhanced functionality.
  • Updated FFmpeg/FFprobe/FFplay to the latest version, 4.4.1.
  • Updated OpenSSL to the latest version of the 1.1.1 branch, 1.1.1l.
  • Updated the CA certificates to the latest extraction of 10-26-2021.
  • Updated CDRdao to the latest version, 1.2.4.
  • Updated Python to the latest version of Python 3.6, version 3.6.15.
  • Updated cURL to the latest version, 7.80.0.
  • Updated Git to the latest version, 2.34.1.
  • Removed TenFourFox box support due to a bug with URLs being not updated.
  • Updated the web interface to support Python 3.6/yt-dlp.
  • Added YASM to the build tools to enable all X86 assembly optimizations available in FFmpeg for Intel Macs.
  • Optimized PPCMC.app to take up less space by removing unnecessary files.

Bleh update:

I see that youtube-dlp also has issues with “age-gated” videos:

1645367276462.png


The clip in question is a 37-year-old music video from Belouis Some. —_—

The thing I realized is, via youtube-dlp, there’s no way to signal to YT that one has logged in to their account (on a browser) which would be able to get beyond the “age-gate” wall.

And in YT’s many inconsistencies, Belouis Some has his own channel with said music video (albeit in SD only), and it is not age-gated at all.
 
  • Like
Reactions: Amethyst1

alex_free

macrumors 65816
Original poster
Feb 24, 2020
1,084
2,312
Bleh update:

I see that youtube-dlp also has issues with “age-gated” videos:

View attachment 1961798

The clip in question is a 37-year-old music video from Belouis Some. —_—

The thing I realized is, via youtube-dlp, there’s no way to signal to YT that one has logged in to their account (on a browser) which would be able to get beyond the “age-gate” wall.

And in YT’s many inconsistencies, Belouis Some has his own channel with said music video (albeit in SD only), and it is not age-gated at all.
When I released 7.2.6 age gate was fixed. This was broke soon after release as this continues to be a cat and mouse game with google breaking the workarounds.

You actually can sign in and use a browser cookie with dlp in general, this isnt a user facing feature in PPCMC7 currently (I also refuse to have a google account so my interest in this is quite low).

I also wouldn't call 7.2.6 bleh. 720p and 144p streaming was added in it for YouTube.
 
  • Like
Reactions: whiskersld
When I released 7.2.6 age gate was fixed. This was broke soon after release as this continues to be a cat and mouse game with google breaking the workarounds.

You actually can sign in and use a browser cookie with dlp in general, this isnt a user facing feature in PPCMC7 currently (I also refuse to have a google account so my interest in this is quite low).

I also wouldn't call 7.2.6 bleh. 720p and 144p streaming was added in it for YouTube.

PPCMC/eIMC is anything but “bleh”. It’s outstanding.

What was “bleh” was the situation I ran into. This doesn’t subtract from the work you’ve done.
 
  • Love
Reactions: alex_free
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.