Downloads:
13,087
Downloads of v 3.29:
464
Last Update:
08 Feb 2022
Package Maintainer(s):
Software Author(s):
- A. S. Budden
- Alexey Tourbin
- Andrew Elwell
- Andy Bircumshaw
- Bill Boughton
- Caius Durling
- Chris Reed
- BBR
- Crispin Flowerday
- David Llewellyn-Jones
- David Woodhouse
- Edward Betts
- HenderHobbit
- Ian Praxil
- James
- James Laver
- James Ross
- James Teh
- John Henderson
- Jon Davies
- Jonathan Harris
- Jonathan Larmour
- Jonathan Wiltshire
- Matthew Boyle
- Mike Crowe
- Mike Fleetwood
- Murray
- Peter Oliver
- Phil Cole
- Ralf Baechle
- Sharon Kimble
- Shevek
- Steven Luo
- Stuart Henderson
- Vangelis forthnet
- Vangelis66
- Will Elwood
- dinkypumpkin
- fs ck
- fsck
- hintswen
- linuxcentrenet
- notnac
- wiehe
- willemw12
Tags:
iplayer admin bbc tv radio media video audio podcastgetiplayer (Install)
This is not the latest version of getiplayer (Install) available.
- 1
- 2
- 3
3.29 | Updated: 08 Feb 2022
Downloads:
13,087
Downloads of v 3.29:
464
Maintainer(s):
Software Author(s):
- A. S. Budden
- Alexey Tourbin
- Andrew Elwell
- Andy Bircumshaw
- Bill Boughton
- Caius Durling
- Chris Reed
- BBR
- Crispin Flowerday
- David Llewellyn-Jones
- David Woodhouse
- Edward Betts
- HenderHobbit
- Ian Praxil
- James
- James Laver
- James Ross
- James Teh
- John Henderson
- Jon Davies
- Jonathan Harris
- Jonathan Larmour
- Jonathan Wiltshire
- Matthew Boyle
- Mike Crowe
- Mike Fleetwood
- Murray
- Peter Oliver
- Phil Cole
- Ralf Baechle
- Sharon Kimble
- Shevek
- Steven Luo
- Stuart Henderson
- Vangelis forthnet
- Vangelis66
- Will Elwood
- dinkypumpkin
- fs ck
- fsck
- hintswen
- linuxcentrenet
- notnac
- wiehe
- willemw12
getiplayer (Install) 3.29
This is not the latest version of getiplayer (Install) available.
- 1
- 2
- 3
All Checks are Passing
3 Passing Tests
Deployment Method: Individual Install, Upgrade, & Uninstall
To install getiplayer (Install), run the following command from the command line or from PowerShell:
To upgrade getiplayer (Install), run the following command from the command line or from PowerShell:
To uninstall getiplayer (Install), run the following command from the command line or from PowerShell:
Deployment Method:
This applies to both open source and commercial editions of Chocolatey.
1. Enter Your Internal Repository Url
(this should look similar to https://community.chocolatey.org/api/v2/)
2. Setup Your Environment
1. Ensure you are set for organizational deployment
Please see the organizational deployment guide
2. Get the package into your environment
Option 1: Cached Package (Unreliable, Requires Internet - Same As Community)-
Open Source or Commercial:
- Proxy Repository - Create a proxy nuget repository on Nexus, Artifactory Pro, or a proxy Chocolatey repository on ProGet. Point your upstream to https://community.chocolatey.org/api/v2/. Packages cache on first access automatically. Make sure your choco clients are using your proxy repository as a source and NOT the default community repository. See source command for more information.
- You can also just download the package and push it to a repository Download
-
Open Source
-
Download the package:
Download - Follow manual internalization instructions
-
-
Package Internalizer (C4B)
-
Run: (additional options)
choco download getiplayer --internalize --version=3.29 --source=https://community.chocolatey.org/api/v2/
-
For package and dependencies run:
choco push --source="'INTERNAL REPO URL'"
- Automate package internalization
-
Run: (additional options)
3. Copy Your Script
choco upgrade getiplayer -y --source="'INTERNAL REPO URL'" --version="'3.29'" [other options]
See options you can pass to upgrade.
See best practices for scripting.
Add this to a PowerShell script or use a Batch script with tools and in places where you are calling directly to Chocolatey. If you are integrating, keep in mind enhanced exit codes.
If you do use a PowerShell script, use the following to ensure bad exit codes are shown as failures:
choco upgrade getiplayer -y --source="'INTERNAL REPO URL'" --version="'3.29'"
$exitCode = $LASTEXITCODE
Write-Verbose "Exit code was $exitCode"
$validExitCodes = @(0, 1605, 1614, 1641, 3010)
if ($validExitCodes -contains $exitCode) {
Exit 0
}
Exit $exitCode
- name: Install getiplayer
win_chocolatey:
name: getiplayer
version: '3.29'
source: INTERNAL REPO URL
state: present
See docs at https://docs.ansible.com/ansible/latest/modules/win_chocolatey_module.html.
chocolatey_package 'getiplayer' do
action :install
source 'INTERNAL REPO URL'
version '3.29'
end
See docs at https://docs.chef.io/resource_chocolatey_package.html.
cChocoPackageInstaller getiplayer
{
Name = "getiplayer"
Version = "3.29"
Source = "INTERNAL REPO URL"
}
Requires cChoco DSC Resource. See docs at https://github.com/chocolatey/cChoco.
package { 'getiplayer':
ensure => '3.29',
provider => 'chocolatey',
source => 'INTERNAL REPO URL',
}
Requires Puppet Chocolatey Provider module. See docs at https://forge.puppet.com/puppetlabs/chocolatey.
4. If applicable - Chocolatey configuration/installation
See infrastructure management matrix for Chocolatey configuration elements and examples.
Private CDN cached downloads available for licensed customers. Never experience 404 breakages again! Learn more...
This package was approved as a trusted package on 08 Feb 2022.
get_iplayer: BBC iPlayer/BBC Sounds Indexing Tool and PVR
Features
- Downloads TV and radio programmes from BBC iPlayer/BBC Sounds
- Allows multiple programmes to be downloaded using a single command
- Indexing of most available iPlayer/Sounds catch-up programmes from previous 30 days (not Red Button, iPlayer Exclusive, or Podcast-only)
- Caching of programme index with automatic updating
- Regex search on programme name
- Regex search on programme description and episode title
- Filter search results by channel
- Direct download via programme ID or URL
- PVR capability (may be used with cron or Task Scheduler)
- HTTP proxy support
- Perl 5.16+ required, plus LWP, LWPProtocolhttps, XML::LibXML, Mojolicious, and CGI modules
- Requires ffmpeg for conversion to MP4 and AtomicParsley for metadata tagging
- Runs on Linux/BSD (Ubuntu, Fedora, OpenBSD and others), macOS (10.10+), Windows (7/8/10)
NOTE:
- get_iplayer can only search for programmes that were scheduled for broadcast on BBC linear services within the previous 30 days, even if some are available for more than 30 days on the iPlayer/Sounds sites. BBC Three programmes, red button programmes, iPlayer box sets, web-only content, and BBC podcasts are not searchable. Old programmes that are still available after 30 days must be located on the iPlayer/Sounds sites and downloaded directly via PID or URL.
- get_iplayer does not support downloading news/sport videos, other embedded media, archive sites, special collections, educational material, programme clips or any content other than whole episodes of programmes broadcast on BBC linear services within the previous 30 days, plus episodes of BBC Three programmes posted within the same period. It is often possible to download other content such as red button programmes or iPlayer box sets directly via PID or URL. get_iplayer DOES NOT support live recording from BBC channels.
# Update get_iplayer to new version
import subprocess
import os
from shutil import copyfile
import requests
def replaceInTag(text, tag_name, new_inner):
start_tag, end_tag = '<' + tag_name + '>', '</' + tag_name + '>'
start_pos, end_pos = text.find(start_tag), nuspec.find(end_tag)
text = text[:start_pos] + start_tag + new_inner + text[end_pos:]
return text
# folders
user_dir = os.environ['USERPROFILE']
app_name = 'get_iplayer'
choco_name = 'getiplayer'
get_iplayer_folder = os.path.join(user_dir, 'GitHub', app_name)
wiki_folder = get_iplayer_folder + '_wiki'
choco_folder = os.path.join(user_dir, 'Documents', 'Scripts', choco_name)
# update GitHub + wiki folders (I think 'fetch' is correct)
assert subprocess.call('git fetch', cwd=get_iplayer_folder) == 0
assert subprocess.call('git fetch', cwd=wiki_folder) == 0
nuspec_filename = os.path.join(choco_folder, choco_name + '.nuspec')
nuspec = open(nuspec_filename, encoding='utf-8').read()
authors = open(os.path.join(get_iplayer_folder, 'CONTRIBUTORS')).read().replace('\n', ', ')[:-2]
nuspec = replaceInTag(nuspec, 'authors', authors)
release_notes = open(os.path.join(wiki_folder, 'releasenotes.md')).read().splitlines()
# find first link - should point to the newest version
for line in release_notes:
start_pos, mid_pos, end_pos = line.find('['), line.find(']('), line.find(')')
if -1 in (start_pos, mid_pos, end_pos):
continue
link_name = line[start_pos+1:mid_pos]
link_dest = line[mid_pos+2:end_pos]
if link_name.startswith(app_name):
version = link_name.split(' ')[1]
break
print(app_name + ' version ' + version)
nuspec = replaceInTag(nuspec, 'version', version)
# get info from readme
readme = open(os.path.join(get_iplayer_folder, 'README.md')).read().splitlines()
# get first two sections (title and 'Features')
description = ''
sections = 0
for line in readme:
if line.startswith('## '):
sections += 1
if sections > 2:
break
description += line.replace('<', '`').replace('>', '`') + '\n'
nuspec = replaceInTag(nuspec, 'description', description)
release_notes_file, link_name = link_dest.split('#')
release_notes = open(os.path.join(wiki_folder, release_notes_file + '.md'), encoding='utf-8').read().splitlines()
new_release_notes = ''
in_section = False
for line in release_notes:
if line.startswith('<a name="' + link_name + '"/>'):
in_section = True
continue
if in_section:
if line.startswith('<a name="'): # next section
break
new_release_notes += line.replace('<', '`').replace('>', '`') + '\n' # < and > need to be escaped
print(new_release_notes)
nuspec = replaceInTag(nuspec, 'releaseNotes', new_release_notes)
copyfile(nuspec_filename, nuspec_filename + '.bak')
open(nuspec_filename, 'w', encoding='utf-8').write(nuspec)
# get binary info
json = requests.get("https://api.github.com/repos/get-iplayer/get_iplayer_win32/releases/latest").content
release = eval(json.replace(b'false', b'False').replace(b'null', b'None').replace(b'true', b'True'))
for asset in release['assets']:
name = asset['name']
url = asset['browser_download_url']
if name.endswith('.exe'):
exe_url = url
elif name.endswith('.sha1'):
sha1 = requests.get(url).content.decode('utf-8').split(' ')[0]
elif name.endswith('.sha256'):
sha256 = requests.get(url).content.decode('utf-8').split(' ')[0]
# update the exe URL and checksums in the install file
install_file = os.path.join(choco_folder, 'tools', 'chocolateyinstall.ps1')
install = open(install_file, encoding='utf-8').read().splitlines()
new_install = ''
for line in install:
pos = line.find("'")
if line.startswith('$url'):
line = line[:pos] + "'" + exe_url + "'"
elif 'checksum ' in line:
line = line[:pos] + "'" + sha1 + "'"
elif 'checksum64' in line:
line = line[:pos] + "'" + sha256 + "'"
new_install += line + '\n'
open(install_file, 'w', encoding='utf-8').write(new_install)
# package and push to server
assert subprocess.call('choco pack', cwd=choco_folder) == 0
assert subprocess.call('choco push', cwd=choco_folder) == 0
# Updating get_iplayer on Chocolatey
1. Open getiplayer.nuspec in Notepad++
2. Command prompt
```powershell
c:
cd \Users\bjs54\GitHub\get_iplayer
git pull
cd ..\get_iplayer.wiki
git pull
cd ..\get_iplayer_win32
git pull
```
2. Update
- version
- authors: replace **\n** with **,** in [contributors](https://github.com/get-iplayer/get_iplayer/blob/master/CONTRIBUTORS)
- description
- just the first (Features) section of [README](https://raw.githubusercontent.com/get-iplayer/get_iplayer/master/README.md): replace **<** and **>** with **[** and **]**
- [releaseNotes](https://github.com/get-iplayer/get_iplayer/wiki/release320to329/_edit): put links in for previous release notes
- replace angle brackets with < and > (doesn't work within `code tags`, so replace and remove the ` characters)
3. Go to [release page](https://github.com/get-iplayer/get_iplayer_win32/releases/latest) to get URLs and checksums (inc 64 bit)
4. Open tools/chocolateyinstall.ps1 in Notepad++; update:
- `$url`
- `$url64`
- `checksum`
- `checksum64`
5. Admin command prompt
```powershell
c:
cd \Users\bjs54\Documents\Scripts\getiplayer
choco pack
del getiplayer.3.XX.nupkg <-- previous version
choco push
```
*The `push` command renders the below unnecessary:*
1. *[Login to Chocolatey](https://chocolatey.org/packages/getiplayer/)*
2. *Upload C:\Documents\Scripts\getiplayer\getiplayer.3.XX.nupkg*
## Summary
How do I create packages? See https://chocolatey.org/docs/create-packages
If you are submitting packages to the community feed (https://chocolatey.org)
always try to ensure you have read, understood and adhere to the create
packages wiki link above.
## Automatic Packaging Updates?
Consider making this package an automatic package, for the best
maintainability over time. Read up at https://chocolatey.org/docs/automatic-packages
## Shim Generation
Any executables you include in the package or download (but don't call
install against using the built-in functions) will be automatically shimmed.
This means those executables will automatically be included on the path.
Shim generation runs whether the package is self-contained or uses automation
scripts.
By default, these are considered console applications.
If the application is a GUI, you should create an empty file next to the exe
named 'name.exe.gui' e.g. 'bob.exe' would need a file named 'bob.exe.gui'.
See https://chocolatey.org/docs/create-packages#how-do-i-set-up-shims-for-applications-that-have-a-gui
If you want to ignore the executable, create an empty file next to the exe
named 'name.exe.ignore' e.g. 'bob.exe' would need a file named
'bob.exe.ignore'.
See https://chocolatey.org/docs/create-packages#how-do-i-exclude-executables-from-getting-shims
## Self-Contained?
If you have a self-contained package, you can remove the automation scripts
entirely and just include the executables, they will automatically get shimmed,
which puts them on the path. Ensure you have the legal right to distribute
the application though. See https://chocolatey.org/docs/legal.
You should read up on the Shim Generation section to familiarize yourself
on what to do with GUI applications and/or ignoring shims.
## Automation Scripts
You have a powerful use of Chocolatey, as you are using PowerShell. So you
can do just about anything you need. Choco has some very handy built-in
functions that you can use, these are sometimes called the helpers.
### Built-In Functions
https://chocolatey.org/docs/helpers-reference
A note about a couple:
* Get-BinRoot - this is a horribly named function that doesn't do what new folks think it does. It gets you the 'tools' root, which by default is set to 'c:\tools', not the chocolateyInstall bin folder - see https://chocolatey.org/docs/helpers-get-tools-location
* Install-BinFile - used for non-exe files - executables are automatically shimmed... - see https://chocolatey.org/docs/helpers-install-bin-file
* Uninstall-BinFile - used for non-exe files - executables are automatically shimmed - see https://chocolatey.org/docs/helpers-uninstall-bin-file
### Getting package specific information
Use the package parameters pattern - see https://chocolatey.org/docs/how-to-parse-package-parameters-argument
### Need to mount an ISO?
https://chocolatey.org/docs/how-to-mount-an-iso-in-chocolatey-package
### Environment Variables
Chocolatey makes a number of environment variables available (You can access any of these with $env:TheVariableNameBelow):
* TEMP = Overridden to the CacheLocation, but may be the same as the original TEMP folder
* ChocolateyInstall = Top level folder where Chocolatey is installed
* chocolateyPackageName = The name of the package, equivalent to the id in the nuspec (0.9.9+)
* chocolateyPackageVersion = The version of the package, equivalent to the version in the nuspec (0.9.9+)
* chocolateyPackageFolder = The top level location of the package folder
#### Advanced Environment Variables
The following are more advanced settings:
* chocolateyPackageParameters = (0.9.8.22+)
* CHOCOLATEY_VERSION = The version of Choco you normally see. Use if you are 'lighting' things up based on choco version. (0.9.9+)
- Otherwise take a dependency on the specific version you need.
* chocolateyForceX86 = If available and set to 'true', then user has requested 32bit version. (0.9.9+)
- Automatically handled in built in Choco functions.
* OS_PLATFORM = Like Windows, OSX, Linux. (0.9.9+)
* OS_VERSION = The version of OS, like 6.1 something something for Windows. (0.9.9+)
* OS_NAME = The reported name of the OS. (0.9.9+)
* IS_PROCESSELEVATED = Is the process elevated? (0.9.9+)
#### Experimental Environment Variables
The following are experimental or use not recommended:
* OS_IS64BIT = This may not return correctly - it may depend on the process the app is running under (0.9.9+)
* CHOCOLATEY_VERSION_PRODUCT = the version of Choco that may match CHOCOLATEY_VERSION but may be different (0.9.9+)
- it's based on git describe
* IS_ADMIN = Is the user an administrator? But doesn't tell you if the process is elevated. (0.9.9+)
* chocolateyInstallOverride = Not for use in package automation scripts. (0.9.9+)
* chocolateyInstallArguments = the installer arguments meant for the native installer. You should use chocolateyPackageParameters intead. (0.9.9+)
$ErrorActionPreference = 'Stop';
$packageName = 'getiplayer'
$softwareName = 'get_iplayer*'
$installerType = 'EXE'
$silentArgs = '/VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP-'
$validExitCodes = @(0, 3010, 1605, 1614, 1641)
if ($installerType -ne 'MSI') {
$silentArgs = '/S'
$validExitCodes = @(0)
}
$uninstalled = $false
[array]$key = Get-UninstallRegistryKey -SoftwareName $softwareName
if ($key.Count -eq 1) {
$key | % {
$file = "$($_.UninstallString)"
if ($installerType -eq 'MSI') {
$silentArgs = "$($_.PSChildName) $silentArgs"
$file = ''
}
Uninstall-ChocolateyPackage -PackageName $packageName `
-FileType $installerType `
-SilentArgs "$silentArgs" `
-ValidExitCodes $validExitCodes `
-File "$file"
}
} elseif ($key.Count -eq 0) {
Write-Warning "$packageName has already been uninstalled by other means."
} elseif ($key.Count -gt 1) {
Write-Warning "$key.Count matches found!"
Write-Warning "To prevent accidental data loss, no programs will be uninstalled."
Write-Warning "Please alert package maintainer the following keys were matched:"
$key | % {Write-Warning "- $_.DisplayName"}
}
Log in or click on link to see number of positives.
- getiplayer.3.29.nupkg (9d3262031163) - ## / 61
- get_iplayer-3.29.0-windows-x64-setup.exe (ffa3dd861fa0) - ## / 64
- get_iplayer-3.29.0-windows-x86-setup.exe (1cffdb4c1c99) - ## / 65
In cases where actual malware is found, the packages are subject to removal. Software sometimes has false positives. Moderators do not necessarily validate the safety of the underlying software, only that a package retrieves software from the official distribution point and/or validate embedded software against official distribution point (where distribution rights allow redistribution).
Chocolatey Pro provides runtime protection from possible malware.
Add to Builder | Version | Downloads | Last Updated | Status |
---|---|---|---|---|
getiplayer (Install) 3.35.0 | 192 | Monday, January 15, 2024 | Approved | |
getiplayer (Install) 3.34.0 | 186 | Monday, November 6, 2023 | Approved | |
getiplayer (Install) 3.33.0 | 141 | Thursday, October 12, 2023 | Approved | |
getiplayer (Install) 3.32.0 | 24 | Thursday, October 12, 2023 | Approved | |
getiplayer (Install) 3.31 | 363 | Tuesday, January 24, 2023 | Approved | |
getiplayer (Install) 3.30 | 38 | Tuesday, January 24, 2023 | Approved | |
getiplayer (Install) 3.29 | 464 | Tuesday, February 8, 2022 | Approved | |
getiplayer (Install) 3.28 | 270 | Thursday, December 9, 2021 | Approved | |
getiplayer (Install) 3.27.1 | 456 | Tuesday, February 16, 2021 | Approved | |
getiplayer (Install) 3.27 | 127 | Monday, February 15, 2021 | Approved | |
getiplayer (Install) 3.26 | 445 | Tuesday, June 30, 2020 | Approved | |
getiplayer (Install) 3.25 | 502 | Monday, February 3, 2020 | Approved | |
getiplayer (Install) 3.24 | 234 | Friday, January 10, 2020 | Approved | |
getiplayer (Install) 3.23 | 262 | Wednesday, December 4, 2019 | Approved | |
getiplayer (Install) 3.22 | 400 | Tuesday, August 20, 2019 | Approved | |
getiplayer (Install) 3.21 | 328 | Monday, July 15, 2019 | Approved | |
getiplayer (Install) 3.20 | 402 | Tuesday, February 26, 2019 | Approved | |
getiplayer (Install) 3.18 | 331 | Thursday, January 3, 2019 | Approved | |
getiplayer (Install) 3.16 | 488 | Friday, July 6, 2018 | Approved | |
getiplayer (Install) 3.15 | 293 | Thursday, July 5, 2018 | Approved | |
getiplayer (Install) 3.14 | 391 | Wednesday, May 9, 2018 | Approved | |
getiplayer (Install) 3.13 | 485 | Tuesday, March 27, 2018 | Approved | |
getiplayer (Install) 3.12 | 472 | Monday, January 15, 2018 | Approved | |
getiplayer (Install) 3.10 | 395 | Friday, January 12, 2018 | Approved | |
getiplayer (Install) 3.09 | 494 | Tuesday, January 2, 2018 | Approved | |
getiplayer (Install) 3.07 | 440 | Wednesday, November 29, 2017 | Approved | |
getiplayer (Install) 3.06 | 430 | Wednesday, November 1, 2017 | Approved | |
getiplayer (Install) 3.05 | 427 | Friday, October 13, 2017 | Approved | |
getiplayer (Install) 3.04 | 372 | Friday, October 13, 2017 | Approved | |
getiplayer (Install) 3.03 | 431 | Monday, October 2, 2017 | Approved | |
getiplayer (Install) 3.02 | 453 | Monday, August 21, 2017 | Approved | |
getiplayer (Install) 3.01 | 497 | Monday, May 8, 2017 | Approved | |
getiplayer (Install) 3.00 | 400 | Tuesday, May 2, 2017 | Approved | |
getiplayer (Install) 2.99.20170410 | 432 | Monday, April 10, 2017 | Approved | |
getiplayer (Install) 2.99 | 488 | Wednesday, February 22, 2017 | Approved | |
getiplayer (Install) 2.97 | 407 | Monday, October 31, 2016 | Approved |
2008-2010 Phil Lewis
Changes in 3.29
There is a breaking change in this release
Fixed bug that caused searches to fail when target episode title in cache contained vertical bar (
|
) characters. Vertical bars now converted to hyphens.Adjusted stream classification to accommodate BBC changes
- 960x540@25 streams are apparently no longer provided for programmes first broadcast after approximately 2021-12-05. The are still available for older programmes, including recent repeats.
- 960x540@25 streams for new programmes have been replaced by 960x540@50 streams with the same bit rate. get_iplayer now detects these lower-bitrate 50fps streams and classifies them appropriately. Use
--tv-lower-bitrate
to prefer those streams if they are available. The file sizes should be roughly the same as the previous 25fps streams. You do not need to change your preferences.
Restored BBC Three schedules to the programme indexing to accomodate its return as a broadcast channel. Perform a full rebuild of the TV programme index cache if you want to ensure it includes all supported BBC Three programmes:
get_iplayer --rebuild-cache
Ignore these warnings, as there were no BBC Three schedule listings for that week:
WARNING: Got 0 programmes for BBC Three schedule page (HTML): https://www.bbc.co.uk/schedules/p00fzl95/2022/w01
WARNING: Failed to parse BBC Three schedule page: https://www.bbc.co.uk/schedules/p00fzl95/2022/w01
Options related to recording quality have been changed
Some command iine parameters have been renamed:
Old New Option Key --modes --quality modes --tv-mode --tv-quality tvmode --radio-mode --radio-quality radiomode --fps25 --tv-lower-bitrate fps25 The old command-line option names are scheduled for removal in the next release. The option keys (used in preferences, presets, and PVR searches) remain the same, so recording quality settings in existing preferences, presets, and PVR searches will continue to work.
The possible recording quality settings have been reduced to:
Type Quality Settings Aliases Default TV fhd,hd,sd,web,mobile 1080p,720p,540p,396p,288p hd,sd,web,mobile Radio high,std,med,low 320k,128k,96k,48k high,std,med,low In the next release, it will be a fatal error to enter an invalid quality setting on the command line. Aliases can be used interchangeably with their corresponding alphabetic codes. The two substantive changes are the TV "high" quality is now "web", and TV "low" quality is now "mobile". This makes TV and radio quality settings distinct sets that can be mixed unambiguously for
--quality
and the Web PVR Manager. All recording quality settings that cannot be translated into values from the lists above are discarded. See Recording Quality for further information. See below for more information about the "fhd" quality setting.BREAKING CHANGE: Existing quality settings (or recording modes) saved in preferences, presets, and PVR searches will be translated into new quality settings in a backwards-compatible manner, with one exception. If your saved values have prefixes denoting stream format (hls,hvf.haf,dash,dvf,daf), or numeric suffixes for specific streams, those prefixes and suffixes are now stripped and ignored. You should never use numeric suffixes since they are non-deterministic. In the unlikely event you need to restrict the stream formats to record, use the new
--exclude-format
option.--exclude-format=dash
will exclude MPEG-DASH streams, and--exclude-format=hls
will exclude HLS streams.If you have not specifed at least one of
sd,web,high
with--tv-quality
when downloading an audiodescribed programme, get_iplayer will now insert those quality settings to ensure a stream is available. HD is not available for audiodescribed programmes.
Changes to programme metadata fields
- No longer included in XML/JSON metadata files: durations, geoblocked, modes, modesizes, unavailable, verpids, versions. Use
--info
to see available version-dependent metadata values. - Now included in XML/JSON metadata files: quality, verpid
- No longer displayed with
--info
unless--verbose
is also specified: modes, modesizes - Now displayed with
--info
: qualities, qualitysizes
- No longer included in XML/JSON metadata files: durations, geoblocked, modes, modesizes, unavailable, verpids, versions. Use
Changes to application options
--purge-files
has been removed.--trim-history
and--no-purge
are now ignored and will be removed in the next release. You can remove them from your preferences with:get_iplayer --prefs-del --trim-history=0 --no-purge
get_iplayer will no longer issue a warning to remove downloaded programmes more than 30 days old.
EXPERIMENTAL: Full HD streams (1080p)
Before anyone asks: UHD 4k streams are still not available to get_iplayer.
get_iplayer now attempts to generate 1920x1080@50 ("fhd") stream URLs for every programme that has 1280x720@50 ("hd") streams (so no audiodescribed programmes). The purpose of these 1080p streams is not known. They may be used for some smart TVs or set-top boxes, or they may be a BBC experiment.
It is not a bug if "fhd" streams are not available for a programme. Do not depend on the presence of these streams. They may disappear at any time. They are provided solely for you to experiment with if you find them useful. You may decide that the video quality of "fhd" streams does not justify their extra download and storage requirements.
The "fhd" streams are not included by default, nor are they included when expanding the obsolete "best" shortcut if it is saved in your preferences, presets, or PVR searches. You must request "fhd" downloads specifically with
--tv-quality=fhd
or--tv-quality=1080p
. This is done in part to avoid resource shock for the presumed majority of users who don't read release notes and documentation, but also because the quality of "fhd" streams varies greatly. If you wish to include "fhd" in your default settings, save it in your preferences:get_iplayer --prefs-add --tv-quality=fhd,hd,sd,web,mobile
The bit rates for the "fhd" streams can vary quite a bit between programmes. The maximum appears to be around 10 Mb/s (though most are far lower), so output files could be ~60% larger than their "hd" equivalents, in the region of 3.8 GB/hr for video.
Because of the method used to access the "fhd" streams, get_iplayer can't guess their actual bit rates, so it assumes 8 Mb/s, the value advertised in iPlayer metadata. Consequently, file size estimates and download progress reports may be quite far off.
It has been observed in initial testing that MPEG-DASH "fhd" downloads are much faster than HLS equivalents, so MPEG-DASH streams are tried first, while the opposite is true for non-"fhd" streams. This makes no difference to the output. The extra post-processing time required for MPEG-DASH is more than offset by the faster download. You can test the difference with
--tv-quality=fhd --exclude-format=hls
and--tv-quality=fhd --exclude-format=dash
.
Installation
See: get_iplayer wiki
More Information
See: get_iplayer wiki
This package has no dependencies.
Ground Rules:
- This discussion is only about getiplayer (Install) and the getiplayer (Install) package. If you have feedback for Chocolatey, please contact the Google Group.
- This discussion will carry over multiple versions. If you have a comment about a particular version, please note that in your comments.
- The maintainers of this Chocolatey Package will be notified about new comments that are posted to this Disqus thread, however, it is NOT a guarantee that you will get a response. If you do not hear back from the maintainers after posting a message below, please follow up by using the link on the left side of this page or follow this link to contact maintainers. If you still hear nothing back, please follow the package triage process.
- Tell us what you love about the package or getiplayer (Install), or tell us what needs improvement.
- Share your experiences with the package, or extra configuration or gotchas that you've found.
- If you use a url, the comment will be flagged for moderation until you've been whitelisted. Disqus moderated comments are approved on a weekly schedule if not sooner. It could take between 1-5 days for your comment to show up.