./net/get_iplayer, Search, index, record or stream BBC iPlayer broadcasts

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]


Branch: CURRENT, Version: 3.23, Package name: get_iplayer-3.23, Maintainer: shattered

This tool allows you to search, index and record/stream:

* BBC iPlayer TV
* BBC iPlayer TV subtitles
* BBC iPlayer Radio
* BBC Live TV
* BBC Live Radio
* BBC Podcasts


Required to run:
[textproc/p5-XML-LibXML] [www/p5-libwww] [www/p5-Mojolicious]

Required to build:
[pkgtools/cwrappers]

Master sites:

SHA1: 7f0050ffec7994659363d352f946e590dd44fbea
RMD160: 3d83cf10aafa2929c248c0fde21a2990f3cbd603
Filesize: 142.992 KB

Version history: (Expand)


CVS history: (Expand)


   2019-11-30 14:43:03 by Nia Alarie | Files touched by this commit (3) | Package updated
Log message:
get_iplayer: Update to 3.23

Changes in 3.23

    Adapted for BBC changes that caused "403 Forbidden" errors when \ 
attempting to download HLS streams (the default).
        The --hls-lq-audio option is now ignored and will be removed in the next \ 
release. 320k audio for TV programmes is no longer available, so the option has \ 
no effect.
        320k/96k HLS streams for radio programmes are no longer available, \ 
except for 96k HLS streams for some World Service programmes. DASH streams are \ 
still available for those bit rates. Some older programmes may still have \ 
320k/96k HLS streams available, but they should eventually disappear.
        If you use default settings for download quality (which should be the \ 
case for most users), you do not need to change anything. The best quality \ 
available will still be downloaded by default.
        If you don't use default settings, you may need to adjust your recording \ 
modes for radio programmes. The hafhigh and hafmed modes will still be accepted, \ 
but they likely will have no effect. Recording modes for TV programmes should \ 
not need changes.
    Added CBeebies Radio to programme indexing
    Radio button labels in Web PVR Manager are now clickable (@hintswen)
    Fixed a bug that caused get_iplayer to fail with Perl 5.16 (@llewelld)
    Fixed a bug that caused PVR searches for Proms programmes to download both \ 
TV and radio episodes even if --type=radio was specified.
   2019-09-04 18:39:13 by Nia Alarie | Files touched by this commit (2) | Package updated
Log message:
get_iplayer: Update to 3.22

Changes:

- Fixed schedule page parsing used for cache updates. This was broken by BBC \ 
changes and manifested as a series of “WARNING: Got 0 programmes...” \ 
messages during cache updates. Your cache will not update without this fix. If \ 
you find that some programmes are still missing from your cache, use \ 
`--cache-rebuild` to perform a full rebuild.
- get_iplayer now recognises previously-unknown programme versions (e.g., \ 
"legal") when the "default" pseudo-version is specified in \ 
the value of the `--versionlist` option.
- The `--pid-recursive-type` option is now applied when only downloading \ 
auxiliary resources (e.g., `--subtitles-only`).
- Fixed programme title extraction with `--pid-recursive` to prevent unwanted \ 
extra text being appended to title in episode listing (e.g., for Proms \ 
programmes).
   2019-07-19 10:32:42 by Nia Alarie | Files touched by this commit (2) | Package updated
Log message:
get_iplayer: Update to 3.21

- Added --release-check option to check for new releases
-   If used on the command line (get_iplayer --release-check) an immediate check \ 
is made.
-   If added to preferences (get_iplayer --prefs-add --release-check) a weekly \ 
check is made. The modification time on the "release_check" file in \ 
your profile directory is used to determine when a check is due.
-   Accesses release feeds from GitHub repositories.
-   get_iplayer is NOT automatically updated with --release-check . It only \ 
prints a message notifying you that a new release is available.
- Added --cuesheet and --cuesheet-only options to download track information in \ 
the form of a cue sheet (.cue file).
-   Applies to radio programmes only. Only useful with radio programmes that \ 
publish track lists on BBC site.
-   You cannot assume cue sheets to be accurate since track data is often wrong. \ 
You must correct cue sheets as needed if you use them to play back or edit \ 
downloaded programmes.
-   get_iplayer makes no attempt to identify air breaks between tracks. You must \ 
set track end times manually if you use cue sheets to edit downloaded \ 
programmes.
-   You will need to add a UTF-8 BOM (byte order mark) to cue sheets so that \ 
non-ASCII characters are displayed properly in some applications, e.g., \ 
foobar2000. This can be done with any capable text editor, or in the Notepad \ 
"Save" dialog with Encoding = "UTF-8 with BOM" (Windows 10) \ 
or Encoding = "UTF-8" (Windows 7).
- --subs-embed now implies --subs-mono. If you use --subs-embed, you no longer \ 
need to use --subs-mono.
-   Embedded subtitles are rendered in a single colour, so this change ensures \ 
that embedded subtitles have leading hyphens to denote changes of speaker.
-   This change also ensures that the external SRT file is formatted the same as \ 
the embedded subtitles. If you wish to create an external SRT file with colour \ 
subtitles along with embedded subtitles, use --subtitles-only --no-subs-embed \ 
--no-subs-mono --overwrite to re-download colour subtitles and replace the SRT \ 
file.
- Added --metadata=json option to create metadata file in JSON format (.json \ 
file). Content is the same as default XML-format metadata files (produced by \ 
--metadata without format value specified).
- Added --pid-recursive-type option to limit recursive downloads to programmes \ 
of specified type (radio or tv) when series includes both radio and TV \ 
programmes. Option value is not reflected in listings from --pid-recursive-list, \ 
nor is it applied when only downloading auxiliary resources (e.g., \ 
--metadata-only). Requires --pid-recursive.
- Added <sesortx> substitution parameter. See definition in Substitution \ 
Parameters. This parameter provides an additional option for constructing \ 
sortable file names with --file-prefix.
- The --pid option can no longer be saved in the default options file, where it \ 
could break subsequent downloads. It can still be saved in presets and used with \ 
--pvr-queue.
- The installer-supplied wrapper script that launches a standalone Web PVR \ 
Manager server has been renamed from get_iplayer.cgi to get_iplayer_cgi (macOS) \ 
and from get_iplayer.cgi.cmd to get_iplayer_cgi.cmd (Windows).
- Implemented a workaround for a deficiency in Windows Perl that caused \ 
"Wide character in print" warnings.
- Implemented a workaround to avoid Can't locate object method \ 
"subtitles_available" error when using --pid-recursive with \ 
--subtitles or --subtitles-only with mixed TV/radio series.
- Fixed a bug that caused the channel name to be tagged as "BBC \ 
iPlayer" when downloading individual programmes with --pid.
- Fixed a bug that caused downloads to fail when using default settings if the \ 
only available version of a radio programme was "podcastX" (where X = \ 
2,3,...).
   2019-07-06 21:57:52 by Nia Alarie | Files touched by this commit (2) | Package updated
Log message:
get_iplayer: Update to 3.20

Changes in 3.20

    Fixed a bug in v3.19 that caused a "Can't use an undefined value as an \ 
ARRAY reference" error when using --pid-recursive or --pid-recursive-list \ 
with programmes that have no available episodes

    Fixed a bug in v3.19 that prevented Windows users from viewing and editing \ 
PVR searches in the Web PVR Manager.

    EDIT: If you find that BBC Scotland programmes of interest are missing from \ 
search results, force all available BBC Scotland programmes to be indexed and \ 
cached with (ignore any 404 errors):

      get_iplayer --refresh --refresh-include="BBC Scotland" \ 
--refresh-limit=30

v3.20 was released soon after v3.19, which was withdrawn. See the get_iplayer \ 
3.19 release notes for other recent changes.

Changes in 3.19

    Fixed a bug that caused one-off PVR searches created with --pvr-queue to be \ 
deleted when run with --test (thanks @wiehe).

    Replaced BBC Two Scotland with BBC Scotland in programme indexing. If a \ 
cache update extends back before the week of 2019-02-18, it will produce errors \ 
because a BBC Scotland schedule does not exist for earlier dates. The error can \ 
be ignored. EDIT: If you find that BBC Scotland programmes of interest are \ 
missing from search results, force all available BBC Scotland programmes to be \ 
indexed and cached with (ignore any 404 errors):

      get_iplayer --refresh --refresh-include="BBC Scotland" \ 
--refresh-limit=30

    Adapted --pid-recursive and --pid-recursive-list functionality for the \ 
change in layout of programme episode lists on the iPlayer site. The switch to \ 
series-by-series listings for many programmes meant that get_iplayer would only \ 
display episodes from the earliest series listed. This almost exclusively \ 
affected CBBC and CBeebies programmes, but could affect any programme.

    The episode ordering with --pid-recursive and --pid-recursive-list is now \ 
always oldest to newest (as determined by the order of the listings on the \ 
iPlayer site). This ensures a consistent order regardless of the source of the \ 
episode lists, and it is generally consistent with how search results are \ 
ordered by default. Use --sort-reverse to list episodes from newest to oldest.

    Added <senumx> substitution parameter to format series and episode \ 
numbers as ##x## instead of s##e## as with <senum>. As with <senum>, \ 
<senumx> may be absent.

    Added --expires-after option for use with --expires-before to bracket \ 
searches based on programme expiration date.

    Added --pid-index option. The programme index cache is no longer used by \ 
default with --pid, whether in a PVR search or from the command line. For an \ 
indexed programme, the cache entry provides a backup source of basic metadata, \ 
but it is not required. If you notice incomplete metadata or output file names \ 
with missing components, use --pid-index to ensure the cache is updated and used \ 
with --pid. This would only be of help with indexed programmes from the past 30 \ 
days.

    Added --no-merge-versions option. get_iplayer now attempts to merge media \ 
streams from programme versions with the same name and duration (e.g., editorial \ 
and editorial2). There are some extremely rare cases where you may not want to \ 
do so because broken streams may be included in the result due to problems with \ 
BBC metadata. In that case, use --no-merge-versions to prevent merging and pick \ 
out the specific version you want with --versions.

    Performed final removal of --hls-hq-audio, --no-dash-remux and --stream-http \ 
options

Changes in 3.18

    Fixed a bug that caused unnecessary cache updates when --refresh-future was used.

    Fixed a bug that prevented a stale cache from being updated with --pvr when \ 
first PVR search was PID-based. EDIT: This change will refresh both TV and radio \ 
programme index caches when PID-based PVR searches are used, even if \ 
--type=radio is not defined in preferences or the PVR searches. This is to \ 
ensure availability of at least minimal metadata for indexed programmes found \ 
with PID-based PVR searches. If you want to avoid ever indexing any radio \ 
programmes, delete the radio.cache file in your profile directory and use \ 
--refresh-exclude-groups-radio=local,regional,national to exclude all radio \ 
stations from indexing. You will have a radio.cache file, but it will contain no \ 
entries.

    Added --hls-lq-audio option to download lower-quality audio with HLS video \ 
streams. Use this if 320k audio is too rich for your diet. You will get the same \ 
audio as DASH streams (128k or 96k, depending on the stream).

    Added --available-before option for use with --available-since to bracket \ 
searches based on programme availability date.

    The --no-subtitles option on the command line will now override all \ 
--subs-{embed,mono,raw,required} options saved in preferences. Those options no \ 
longer imply --subtitles (Web PVR: "Download subtitles" in \ 
"Recording" tab), which is now required with any of them.

    get_iplayer no longer looks for a local options file under the current \ 
working directory (in ./.get_iplayer/options). That could cause problems when \ 
using --profile-dir while working in user's home directory if a default profile \ 
directory had been created. Use a preset instead. EDIT: This functionality was \ 
never documented and thus you are extremely unlikely to be affected by its \ 
removal.

    The --test option will only show lists of matching episodes with PVR \ 
searches and --pid-recursive. Download and parsing of media stream data will \ 
only occur with --test if --get or standalone --pid is specified.

    Changes to substitution parameters:

        Added <sebcast>, <sebcastdate>, <sebcasttime>, \ 
<sesort>. See definitions in Substitution Parameters. These parameters \ 
provide additional options for constructing sortable file names with \ 
--file-prefix.

        A value for <episodenum> must now be found in programme metadata \ 
in order for <senum> to be populated. A value of "1" is no \ 
longer synthesised for some TV programmes. A value of "1" is still \ 
synthesised for <seriesnum> if <episodenum> is populated and no \ 
series number is found in programme metadata.

        The episode number prepended to <episode> is now zero-padded to 2 \ 
digits. This is reflected in the default output file prefix. EDIT: If you use \ 
the default file prefix and you mistakenly use --force for a programme you do \ 
not wish to re-download, or you mistakenly attempt to re-download a programme \ 
you already have that has been removed from your download history, it is likely \ 
that you will end up with a duplicate because the zero-padding generates a \ 
different file name (assuming an episode number is present). To revert to the \ 
previous default file prefix without zero-padding, use:

          get_iplayer --prefs-add --file-prefix="<name> - \ 
<episodenum. ><episodeshort> <pid> <version>"

        If you use a custom file prefix that contains <episode>, replace \ 
it with <episodenum. ><episodeshort> to achieve the same effect.

        Conditional separators can now be used as suffixes. See example in \ 
Filenames and Directories.

    The functionality of the options below has been removed. The options are now \ 
ignored and will be completely removed in the next release. A warning message \ 
will be printed if any of these options is found in your preferences.
        --hls-hq-audio: Now essentially useless and could lead to audio sync \ 
problems.
        --no-dash-remux: If you prefer DASH media streams for some reason you \ 
can no longer produce potentially unusable output files, at the cost of some \ 
extra time in post-processing downloads.
        --stream-http: get_iplayer will now automatically look for HTTP media \ 
playlist URLs if no HTTPS URLs are found.

    You can remove these obsolete options from your preferences (whether or not \ 
they are actually defined) with:

      get_iplayer --prefs-del --hls-hq-audio --no-dash-remux --stream-http

    A get_iplayer profile directory (containing programme index caches, pvr \ 
searches, preset definitions, download history) can now be shared between \ 
Windows and Linux/BSD/macOS. get_iplayer on all platforms now processes any CRLF \ 
line endings (default for text files on Windows) when reading files from the \ 
profile directory. Files will still be written with native line endings (CRLF on \ 
Windows, LF on other platforms), so different files may have different line \ 
endings if you share them between platforms. This also means that the \ 
"download_history" file will have mixed line endings if written on \ 
different platforms. The different line endings shouldn't affect get_iplayer, \ 
but be aware of them if editing those files directly.
        If you only use get_iplayer on Windows, or only on Linux/BSD/macOS, you \ 
should notice no difference.
        Warning for Linux/BSD/macOS users: This only works with get_iplayer 3.18 \ 
or higher. Once you have CRLF line endings in your files, you cannot use \ 
get_iplayer versions before 3.18 unless you first change all line endings in all \ 
files to LF and then never again write to those files in Windows.
   2018-11-10 20:39:19 by Patrick Welche | Files touched by this commit (2) | Package updated
Log message:
Update get_iplayer to 3.17

Many changes listed at
https://github.com/get-iplayer/get_ipla … leasenotes
   2018-04-02 10:20:17 by Patrick Welche | Files touched by this commit (2) | Package updated
Log message:
Update get_iplayer to 3.13

Many fixes including:
 * Restored cache updating, which was broken by changes to BBC web
   sites. If you find search results missing programmes from the week
   of 19 Feb, rebuild your cache with --rebuild-cache to fill any
   holes.
 * Fixed a bug that generated incorrect schedule URLs (used for cache
   refresh) for the first calendar week of 2018 (and some future
   years). (@welwood08)
   2017-12-06 01:11:47 by Patrick Welche | Files touched by this commit (2) | Package updated
Log message:
Update get_iplayer to 3.07

Highlights:
* get_iplayer no longer lists all programmes when invoked without a
  search argument. If you wish to list all programmes, you must now
  explicitly specify a wildcard search: get_iplayer ".*" - note the
  quotes. The Web PVR Manager does that by default. Also remember to
  use --refresh for ad hoc cache updates.
* get_iplayer no longer automatically attempts to add higher-quality
  audio to "hls" mode downloads (functionality introduced in v3.03).
  Some output files were being produced with audio and video out of
  sync. get_iplayer should never produce output worse that what is
  offered by iPlayer, so that functionality is now optional. Use the
  new --hls-hq-audio option to enable it, and heed the warning that
  you may need to edit your output files to sync audio and video. The
  --no-hq-audio option is now ignored and will be removed in the next
  release. If you added it to your preferences, remove it now with
  get_iplayer --prefs-del --no-hq-audio. (@notnac)
* Added --audio-only option to download only the audio stream for a
  TV programme. It is intended to enable users with visual
  impairments to skip downloading the video stream for programmes
  with audio description, but it can be used for any programme. It
  does not work with "hls" modes, however, so do not try to use it
  with --tvmode=hlshd, for example. Use of --audio-only also enables
  --force so that you can re-download a different audio track for a
  previously-downloaded TV programme. That will also produce an
  additional entry in your download history for the audio file.
  Audio-only downloads produce .m4a files.
* Web PVR: Updated to support HTTPS URLs for Quick URL recording. The
  BBC has begun redirecting iPlayer episode pages to secure
  equivalents, and Web PVR limitations have required changing
  "https:" to "http:" for pages used in the Quick URL box. \ 
This did
  not affect the CLI or recording from search results in Web PVR.
* Added support for World Service programme PIDs beginning with "w".
  These WS programmes released since 11 Aug could not be downloaded
  because their PIDs were not recognised by get_iplayer.

https://github.com/get-iplayer/get_ipla … leasenotes
   2017-05-17 16:39:38 by Patrick Welche | Files touched by this commit (2) | Package updated
Log message:
Update get_iplayer to 3.01

 * Fix "Segment not available from server" errors
 * The --cache-init option. Use --cache-rebuild instead when upgrading.
 * The SRT subtitles produced by get_iplayer now include <font> tags to
   preserve the colour information from the TTML originals.
 * get_iplayer now supports the BBC "bidi" CDN, so additional streams
   are available for TV programmes.
 * hvf modes (the default) for TV programmes will now produce files
   with 320k audio, if available. 320k audio is not available for hls
   or dvf modes.

Full release notes available fromt:

  https://github.com/get-iplayer/get_ipla … release301