Don't Download on Duration Mismatch
#1
The use case for this feature is best demonstrated in short programmes, e.g. Prayer for the Day and Bells on Sunday. Both of these appear on Iplayer straight away after broadcast and the recordings typically last somewhere between 3 minutes 30 and 5 minutes. The programme itself is only 2 minutes long, which is reflected in the metadata.

Eventually (within a few hours on weekdays, but on the next working day at weekends), revised copies get uploaded to Iplayer which have been properly cropped, so they are much closer to the advertised 2 minutes (usually 1 minute 55 or something like that). I want Get_Iplayer to wait until the revised copy gets uploaded before it attempts a download.

This can currently be achieved using the "before" option, but it needs to be set very high (around 55) to account for the weekend. It would be better if Get_Iplayer could ascertain the duration of the file it is about to download, compare it with the advertised duration and, if there is a difference, abort the download. For the option to be most effective it would need to be an offset rather than an exact match, and I would be adding it to individual PVR jobs rather than my preferences file!

Example: the advertised programme duration is 2 minutes.
--duration-offset=20
Only files with a duration between 1 minute 40 and 2 minutes 20 will be downloaded. Files outside these limits will be ignored and the programme will not be added to the download history, so it will be tried again next time the PVR runs.

I am assuming the file duration can be calculated prior to download using information in the headers. Obviously, if this is not possible then I understand that the option cannot be implemented.
#2
Sorry, but it's a no from me. Few people would use this, and I'm not willing to support it. You can't get an estimate of the actual duration of a programme without parsing the stream data, which would be a waste for something that would not be useful for very many programmes. It sounds like you just want to wait until a later edit is available. EDIT: Removed suggestion to use --available-since to target Bells on Sunday edit - it doesn't always work. Use --before to hold off until edit is available.