Short:        yt.rexx with MorphOS adjustments
Author:       Michael Trebilcock, Thomas Igracki
Uploader:     Thomas Igracki de
Type:         util/rexx
Version:      3.4
Architecture: m68k-amigaos; ppc-morphos
Distribution: Aminet
Kurz:         yt.rexx mit MorphOS Anpassungen

This  is the MorphOS version of the YouTube URL extractor v3.4 from Michael
Trebilcock from os4depot.
****** THANKS MICHAEL FOR CREATING IT AND UPDATING IT REGULARY! ******

I  made  some changes to be able to use this script under MorphOS and added
some requesters to choose the video format and the name of the saved video.
MagicBeacon  is  used  under MorphOS instead of Ringhio, and the comment of
the saved video is set to the youtube url.

I  also  added  a small yt-search script, to search for youtube videos from
the shell:
  Example: s:yt-search "Greedium"


Installation:
  Copy ALL sys/ sys:

  Because  the  default  "rexx:"  assign  points  to  "s:", you may (if not
  already done) make sure that "rexx:" is also assigned to "sys:rexx/"!
  Add the next line to your s:user-startup file:
    Assign rexx: sys:rexx ADD

  To integrate it in OWB, see the picture: OWB_Contextmenus.png

  To integrate it in Wayfarer, you have to install SmartClipboad.sbar
  then copy a url from a Youtube video from the contextmenu in Wayfarer to
  the clipboard.
  Here is a short video http://igracki.square7.ch/tmp/YtUE-Wayfarer.mp4

Note:
  Since  Youtube  seems  to always use https urls for their videos nowadays
  and  MPlayer can't stream https urls you have to first download the video
  to play it!
  I  added  a  requester  to  ask  if  you  want  to  play  the video while
  downloading it if you use the SAVE option.

  MPlayer will be opened after 500.000 bytes were downloaded of the video!
  Or earlier, if the video is shorter than 500.000 bytes.
  You can change this value in yt.cfg, search for "PWDL_MinSize".
  Default is 500K, e.g. 500000 bytes.
  
  After  MPlayer gets closed a requester will ask you if you want to delete
  the just downloaded video.
  If  the  download  is  not  finished  after you close MPlayer, it will be
  aborted to be able to delete the video!

  I  also put ffmpeg and lame into this archive to have all needed programs
  available!
  Every user should already have MPlayer so I didn't included it.

See "yt.rexx" for the changelog.

History
========
17-Apr-2025
updated ytSearch.hwa to v0.7
- chg: I don't need rexx:YTS_ParseLine.rexx anymore, jPV has sent me a massive
       optimized Hoolywood version of it which I'm now using, its now as fast
       as the ARexx version although I extract many extra data now!
- new: draw the length of the video in the bottom, right corner of a video
- new: the tooltip/helpbubble now shows more infos (length, pubTime, viewCount,
        owner and descr)
- added ViewWebImage to sys/c/

16-Apr-2025
 - made changes from original v3.4
 - Added ytSearch.hwa to the archive, a Hollywood Applet to search for 
   Youtube videos, it uses the yt.rexx script to play the videos
   Just double click it in an Ambient lister or start it from shell with
   "Open ytSearch.hwa"

04-Sep-2024
 - made changes from original v3.1

19-Aug-2024
 - made changes from original v3.0

16-Aug-2024
 - added curl v7.53.1 to the archive because this v2.9 seems to need curl v7.53.1
   curl 7.43.0 or curl v8.2.1 from latest SDK doesn't work!?
   (At least with one specific yt video)

29-Jul-2024
 - made changes from original v2.7

23-Jan-2024
 - made changes from original v2.5

06-Jun-2021
 - made changes from original v2.2 from 25.05.21, youtube now works again! Thanks Michael!
 - removed sys/c/ffmpeg, because there is a newer version in https://www.morphos-storage.net/

28-Apr-2020, not released yet
 - now using SimpleTouch, to be able to touch files containing "(", because they are wildcards
   and c:Touch supports wildcards, so it was easier to write a Touch w/o wildcards support
 - if a video couldn't be downloaded, e.g. wget returns "ERROR 403: Forbidden", the file was created
   but with a filesize of 0, and the script just checks for existence not for the filesize, so it 
   thought that the file was downloaded, now it checks the filesize (with c:Fileinfo)
   the created script t:yt_pwdl also checks for the filesize before starting video player!

05-Apr-2020
  - added a ">NIL:" to the Break command, to have no output if the video is completely downloaded
    before you close MPlayer
  - "Touch" the downloaded video so it gets current date and time after it was downloaded,
    previously the date/time was set to the original date/time

09-Mar-2002, v2.1c
  - added the "Okay" script to sys/s, needed for s/DumpAudioAsMP3
  - sys/s/yt-search: YTS_ParseLine.rexx is now called with fullpath (rexx:)
  - reworked the readme file
  - Breaking downloading if you quit MPlayer before download is completed 
    didn't worked anymore (don't know why, this definately worked earler..)
    (now I build a script with the commands instead concatenate the commands)
  - added support for AutoPlay for MorphOS (set AutoPlay="1" in yt.cfg)
    this works like normal "save play" option (playing while downloading) but
    without requesters

24-Feb-2020, v2.1b
  I added my additional settings to YT.cfg, you may have to change them to
  your needs!

12-Mar-2018
  v1.6  of the original yt.rexx script uses duktape instead of spidermonkey
  as javascript interpreter (js).
  So  I compiled the current (2017-09-23) duktape v2.2.0 (same as os4 uses)
  for MorphOS.
  It  seems  to  work  quiet  good,  although  I  only  tried  the included
  mandel.js,  and  with  Spidermonkey-js  it  takes  about  38  miliseconds
  calculate  the  ascii  mandebrot.   With  duktape  it  only takes about 6
  miliseconds!
  So duktape is the default javascript interpreter (sys/c/js)!
  The Spidermonkey-js is still present in sys/c as "js_spidermonkey"