UK HD DVR, HDHR5-4DT HDHomeRun - Plex identifies as Progressive and not Interlaced?

Server Version#: 1.29.x (I can’t increase because of the transcoding issues)
Player Version#: Latest Android TV Client + Using Chrome Client

I’ve noted a few times now that Plex Media Server (PMS) doesn’t identify Interlaced HD TV DVR correctly? I’ve been recording and watching the Rugby Six Nations matches and I can see that BBC HD is being identified correctly as Interlaced, but ITV HD isn’t as it’s being identified as Progressive?

In normal TV recordings, it’s doesn’t really cause too many issues, it’s just an annoyance. But when trying to watch fast-moving sports, it’s just a blurred mess! And yes, I’m playing it at 1080 (n reference to 2mbps I mention below).

This screenshot is from a BBC HD recording, once it’s finished and ready to play. It clearly knows it’s Interlaced:

This is from an ITV HD recording, once it’s finished and ready to play. It clearly thinks it’s Progressive?

For effect, more than anything else, this is a screenshot taken while watching the ITV HD recording, with transcoding set to 2mbps. By having the lower mbps, you can clearly see the distortion in the image!

I’m not quite on the latest firmware version for HDHomeRun, but I’m only one release (I think) behind. If I try and watch live TV directly through HDHomeRun (and not via Plex), I see on issues with the image.

I did try and search the forum about this, and their are a few old posts talking about this. But nothing is recent, nor are there any solutions!?

I know there are lots of unrelated problems with the 1.3x.xx transcoder + NVidia, so I don’t want to burden things further. But is this something that can be looked at as it’s a PITA?

At the risk of getting drawn into a no-win scenario.

  1. You’re taking broadcast quality (interlaced) ((Not all “HD” is progressive))
  2. Deinterlacing it (which cuts the temporal resolution in half)
  3. Cutting it to 2 Mbps
  4. And wondering why it looks like it does ?

Of course it’s going to look bad.

ANY sporting event needs both video AND temporal resolution to look good.

Anything else is going to be a blurry or distorted mess.

Think about how “interlaced” works. In the CRT days, at 50 (or 60) hz, we get 1/2 the image on the first scan and the other half on the second scan. Therefore, our best temporal resolution is 25fps (at 50 hz) and 29.97 fps (at 59.94 hz) but it’s still going to have lost from the original.

In the US, we’re plagued with the same problems for all interlaced content.
The ONLY content which works well is when the source feed is already sent as Progressive.

What I see above shows 25 FPS and Interlaced. That’s NOT good.
Deinterlaced will probably be 13 fps. Personally, not what I would crank down to 2 Mbps.

C’mon – Football/Rugby deserves the bitrate, doesn’t it? :slight_smile:

1 Like

The 2mbps bitrate was purely to help show them problem​:rofl: I did mention this, as I’m watching it normally at 1080 (full bandwidth) :rofl:

It’s not all HD DVR channels, the BBC1 HD is fine. PMS recognises it as 1080i, so the player/Android TV sorts it all out, so there are no issues… But the ITV HD recordings are not being recognised as Interlaced, so when it’s played in the (Android) TV (at 1080/full bandwidth) you see the image being distorted. This is made worse when watching sport as there is a lot more movement.

So it seems to be be more of a channel + PMS miss-recognising the format? I ran VLC to run the ITV HD channel and it seems to know what’s what and seems to play ok. Sadly, it doesn’t actually say yes, or no, to if it’s interlaced or not :man_shrugging::cry:

@ChuckPa also, I know your busy with transcoding stuff. I’ve kept quiet on my other post as I can see you’re dealing with others with the same issue. I just wanted to recognise how busy you’ve been :scream_cat::wink::handshake:

I live in an area now where I need Cable TV.
Because of that, I no longer have my tuner to record with.

One thing I used to do with the HD-HDR3 (SD) was to simply open the tuner directly with curl (the URL contains the channel to select ) and it will tune the channel and start streaming to the output.

Something along the lines of

curl -o news.mpg http://10.0.0.91:5004/auto/v233

I recommend accessing the tuner manually via the web interface and seeing what you have (where channels are mapped by the tuner)

From there, given you’re at the known start of a frame, you can use any of the inspection tools to see exactly what you’re getting.

If Plex is misreading the stream, we’ll be able to compare the headers (mediainfo) and FFMPEG analysis (not just FFMPEG reading the header)

Yes, I’m dealing with the transcoder issues as well (general Linux stuff).
I saw this post and thought I could share a bit of what I know to help point in a direction. If you can do this bit of investigation for us, it’s a huge help.

My goal for the weekend is to definitively pin down a “shady , tough to catch” transcoder bug when switching output resolutions.
(It left my transcoder spinning 2.3 cores (233% CPU) needlessly last night. I will find out why)

EDIT: At O’-dark thirty - caught it doing exactly what it shouldn’t do. Console and PMS logs collected and submitted. Mission Accomplished

1 Like

Freeview HD can dynamically switch between interlaced and progressive during a programme.

List of HD channels in the United Kingdom - Wikipedia

Can’t say I’ve noticed an issue with anything I’ve watched across the channels, I watch MOTD and other football stuff via the LG Plex app and generally it’s ok.

1 Like

Thanks for the info, I presumed that might end up being the case (potentially switching between formats).

We barely watch regular TV these days, and from what we do watch, it’s always from from recordings/ PMS-DVR. I’ve noticed the wrong use between interlaced and progressive mainly on the ITV HD shows we records for a long time (few years probably), but it really doesn’t cause many/any problems, until we were watching the fast moving rugby camera shots… When you switch from one match from BBC HD to ITV, you notice it straight away, it’s makes you feel like you’re watching SD rather than HD.

PMS seems to do a great job in recognising the BBC HD recordings (from my 1st post screenshot(s)), but it’s clearly getting it wrong with the ITV ones :man_shrugging:? So the question is, what can be done to address this?

@ChuckPa I’ll attempt to see what I can work-out from your previous post :wink:

@ChuckPa You think you’ve get something figured out? Jeeeeeez Louise, that would be a mojor win. Cudos to you if you’ve get it nailed down. I’ll have a scan over the open threads/posts to get caught up :+1::wink::blush:

Blockquote EDIT: At O’-dark thirty - caught it doing exactly what it shouldn’t do. Console and PMS logs collected and submitted. Mission Accomplished

@Minxster

Yes, I caught it red-handed, chocolate all over its grubby fingers, fingers in the cookie jar.

:rofl:

IF I understand the logs correctly (I’ll let the engineer make her own determination).

  1. PMS has a transcode session
  2. That session terminates for the resolution switch
  3. PMS probes for the new resolution test
  4. PMS creates new transcode session
  5. SIMULTANEOUSLY, cleaning up old transcode sessions

Appears as if, in it’s “cleanup”, it deletes the NEW session buffers instead of just its own (Over aggressive)

This explains the “404” errors we see in the logs.

This is just my “opinion” :rofl:
We’ll see what comes back after tomorrow’s meeting

1 Like

@ChuckPa :rofl: :joy: :rofl: :joy: :rofl:

That’s pretty much what I saw in my logs… Though I know you’ll be delving far deeper than me! :wink:

… You just need to hit that transcoder with a hammer before it tries to eat more cookies from the cookie jar! :crazy_face: :rofl:

Here’s what else I saw which is timestamped to allow correlating with logs.

[chuck@glockner Logs.2016]$ date ; nvidia-smi
Sat 18 Mar 2023 11:52:25 PM EDT
Sat Mar 18 23:52:25 2023       
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 525.60.13    Driver Version: 525.60.13    CUDA Version: 12.0     |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|                               |                      |               MIG M. |
|===============================+======================+======================|
|   0  Quadro P2200        On   | 00000000:07:00.0 Off |                  N/A |
| 55%   53C    P0    27W /  75W |    626MiB /  5120MiB |      0%      Default |
|                               |                      |                  N/A |
+-------------------------------+----------------------+----------------------+
                                                                               
+-----------------------------------------------------------------------------+
| Processes:                                                                  |
|  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
|        ID   ID                                                   Usage      |
|=============================================================================|
|    0   N/A  N/A   2493451      C   ...diaserver/Plex Transcoder      622MiB |
+-----------------------------------------------------------------------------+
[chuck@glockner Logs.2017]$ date ; nvidia-smi
Sat 18 Mar 2023 11:52:30 PM EDT
Sat Mar 18 23:52:30 2023       
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 525.60.13    Driver Version: 525.60.13    CUDA Version: 12.0     |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|                               |                      |               MIG M. |
|===============================+======================+======================|
|   0  Quadro P2200        On   | 00000000:07:00.0 Off |                  N/A |
| 55%   52C    P0    27W /  75W |    696MiB /  5120MiB |      3%      Default |
|                               |                      |                  N/A |
+-------------------------------+----------------------+----------------------+
                                                                               
+-----------------------------------------------------------------------------+
| Processes:                                                                  |
|  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
|        ID   ID                                                   Usage      |
|=============================================================================|
|    0   N/A  N/A   2480956      C   ...aserver/Plex Media Server       68MiB |
|    0   N/A  N/A   2493451      C   ...diaserver/Plex Transcoder      622MiB |
+-----------------------------------------------------------------------------+
[chuck@glockner Logs.2017]$ date ; nvidia-smi
Sat 18 Mar 2023 11:52:35 PM EDT
Sat Mar 18 23:52:35 2023       
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 525.60.13    Driver Version: 525.60.13    CUDA Version: 12.0     |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|                               |                      |               MIG M. |
|===============================+======================+======================|
|   0  Quadro P2200        On   | 00000000:07:00.0 Off |                  N/A |
| 55%   51C    P5     5W /  75W |      4MiB /  5120MiB |      0%      Default |
|                               |                      |                  N/A |
+-------------------------------+----------------------+----------------------+
                                                                               
+-----------------------------------------------------------------------------+
| Processes:                                                                  |
|  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
|        ID   ID                                                   Usage      |
|=============================================================================|
|  No running processes found                                                 |
+-----------------------------------------------------------------------------+
[chuck@glockner Logs.2017]$ 

To me, this looks like it’s shooting itself.

For those of you who are UK with the “Interlaced being reported as Progressive” problem.

Something like this:

curl -o filename.ext http://192.168.1.9:5004/auto/v102?duration=30

Reference:

2 Likes

As per my previous reply, I am not sure if there is an issue or not.

Programmes can dynamically change between progressive and interlaced during transmission, so bringing up the media info details in PMS will just present whatever was detected at the precise single time interval the programme was scanned by PMS?

I use an HD Homerun with Plex and watch on an Apple TV in the UK. Plex shows and records everything as progressive (or at least at 25fps not 50). The Channels app on the Apple TV from the same HD Homerun feed will play and record anything that runs at 50hz at that frame rate.

I’ve always assumed it’s because Plex aren’t that interested in non 30fps territories…

1 Like

My understanding has always been that in the UK all HD transmissions are sent in 1080i, it’s only when it get’s to the viewing device that it’s converted to 1080p (such as a television).

Don’t believe that is the case for Freeview HD as per that BBC link I posted

Here you go, first output from BBC HD showing progressive and second output from ITV showing interlaced:

Video
ID                                       : 6601 (0x19C9)
Menu ID                                  : 17540 (0x4484)
Format                                   : AVC
Format/Info                              : Advanced Video Codec
Format profile                           : High@L4
Format settings                          : CABAC / 4 Ref Frames
Format settings, CABAC                   : Yes
Format settings, Reference frames        : 4 frames
Codec ID                                 : 27
Duration                                 : 29 s 680 ms
Width                                    : 1 920 pixels
Height                                   : 1 080 pixels
Display aspect ratio                     : 16:9
Frame rate                               : 25.000 FPS
Color space                              : YUV
Chroma subsampling                       : 4:2:0
Bit depth                                : 8 bits
Scan type                                : Progressive
Color range                              : Limited
Color primaries                          : BT.709
Transfer characteristics                 : BT.709
Matrix coefficients                      : BT.709
Video
ID                                       : 201 (0xC9)
Menu ID                                  : 17605 (0x44C5)
Format                                   : AVC
Format/Info                              : Advanced Video Codec
Format profile                           : High@L4
Format settings                          : CABAC / 4 Ref Frames
Format settings, CABAC                   : Yes
Format settings, Reference frames        : 4 frames
Codec ID                                 : 27
Duration                                 : 29 s 920 ms
Width                                    : 1 920 pixels
Height                                   : 1 080 pixels
Display aspect ratio                     : 16:9
Frame rate                               : 25.000 FPS
Color space                              : YUV
Chroma subsampling                       : 4:2:0
Bit depth                                : 8 bits
Scan type                                : MBAFF
Scan type, store method                  : Interleaved fields
Scan order                               : Top Field First
Color range                              : Limited
Color primaries                          : BT.709
Transfer characteristics                 : BT.709
Matrix coefficients                      : BT.709

Edit: I’ll see if I can load into PMS and compare what that reports to the mediainfo output above…

1 Like

Don’t believe that is the case for Freeview HD as per that BBC link I posted

The link you posted relates to a software update back in 2011, but no transmissions ever did utilise that update and nor did any of the Freeview boxes.

The development of Freeview has been stuck for many years and I think it maybe too late for any changes as going forward the investments may go into streaming services instead.

Edit: Having just spoken to a very good friend of mine in the industry, he stated that there maybe differences with BBC HD as the BBC are currently switching over to regional HD services instead of SD, which would result in the shutdown of the BBC HD channel, but having the main BBC1 channel in HD. At present there doesn’t seem to be a regional timeline when this will be complete.

I’m currently AFK, but here are a few things I’ve noticed as I did some more DVR recorded file checks as well as the curl (using wget) tests as @ChuckPa suggested.

  • PMS may (not verified) be recognising interlaced recorded files correctly
  • Can’t yet verify if Freeview does actually switch streaming types in-flight
  • Is the more about the client app not deinterlacing

The last item, about the client, seems to be true as the wget files I created had PMS say “they’re interlaced”, but they displayed incorrectly both on my Android TV + Chrome browser. I also see no options in clients to ask it to deal with deinterlace. My Sony/Android TV is obviously capable of deinterlacing as watching live TV, outside of Plex, shows zero issue no matter what channel I use (this stream time).

I need to do some more specific testing as one DVR file BBC 1 HD as “progressive” yet a wget for 60s, showed the recording as Interlaced. BUT, BBC 1 HD hasn’t been the issue, ITV 1 HD has been the main problem. This could be streams could change format (as previously suggested).

In my mind, it’s about proving/understanding what PMS does recognise, or not, then have a bank of files to play on clients and see how they’re actually handled.

Lots of people don’t notice the slight fuzzyness of not deinterlacing, especially at 1080, and more at higher Hz/FPS. Sadly I’m one that does notice these, but kept quite until the recent rugby six nations (I don’t watch any other sport) when even my partner said “why is this fuzzy”.

Again, as I’m AFK (hopefully back later today or tomorrow) I’m not able to flesh things out more. But at the very least I have files that PMS knows are interlaced, and two repeatable clients that do not display the image correctly. Whether that is a client issue, or if PMS should recode/transcode before transmission I’m not too sure!?

@ChuckPa what is your understanding of how Plex (both server and client) is supposed to handle interlaced files? :thinking::slightly_smiling_face:

I suspect the client used may have a large impact re. deinterlacing, I use the LG Plex app and FireTV 4K Plex apps.

Yes, showing/proving the streams switching between GOP may be difficult, but I have no reason to doubt it does not do this. Clearly from the data I gathered there was interlaced and progressive streams being transmitted.

ALL:

Just finished team meeting.

MAIN

Can you please provide a 10-15 second sample (Small file) from BBC and ITV.

There are potentially 4 samples:

  1. Raw capture of BBC in .ts output
  2. Raw capture of ITV in .ts output
  3. Tuner-transcoded capture of BBC in .mkv output
  4. Tuner-transcoded capture of ITV in .mkv output

While all 4 are welcome to ensure scanning these files is correct, the .ts files are most critical.

BONUS :slight_smile:

I’ve also been informed, The intro commercials are often Progressive scan while the event is Interlaced. (team member who lives in Portugal)

  • If there is an event and the commercial can be caught, please do so.
  • Please capture the commercial and the transition back into the main program.

Thanks.

1 Like