Testing the new Experimental Transcoder (for improved remote viewing of recorded content)

Please see here re Erics response:

I understand the transcoder issue, but I would like to know what FireTV device you are using and why you need an always transcode option.

If i dont transcode the video the image quality for the main HD tv channels (1080i) (bbc, itv, channel 4) is horrific and virtually unwatchable.

The hardware deinterlacing does not work and whenever there is fast moving motion the picture breaks up in interlaced lines.

The app also does not switch framerate / resolution so everything is delivered in 1080p even though the non transcoded stream is 1080i

Basically forcing 720p 6mb and using old transcoder fixes all issues and plays back ok at the stuck 1080p with no artefacts (except for audio sync issues occasionally)

Using new transcoder works some times until it decides not to transcode and the all the interlacing issues return.

Regardless of source / transcoder etc, the app never switches from 1080p 60hz (even though 50hz is default here in uk)

Hope that helps

1 Like

Which fire tv model are you using?

FireTv 4k stick

(I.e the one that used to crash when playing 1080i)

Now it seems to switch to software (or no) deinterlacing instead of crashing, which is unwatchable for medium to fast motion on screen

Watching something like F1 racing is lots of interlaced lines everywhere and looks terrible

When transcoded at 720p - perfect

@timellert If you still have one of these F1 recordings with lots of interlacing artifacts, could you send the video to [email protected]? I just got a new Fire TV 4k Stick and would like to replicate what you're seeing.

Sure, i dont have any previous recordings but will send over the next one this coming saturday :slight_smile:

I’ll even take Free Practice 1. :smile:

Sadly we only get quali and the main gp on channel 4 here!

I will try recording the football instead tonight to see if that has the same issues and send over tomorrow if it does

1 Like

hey Eric.. some recordings winging their way to you via email... all have massive interlacing artefacts when played at normal res on fireTv 4k via channels... especially the F1 quali which is mainly a blur of interlaced lines

1 Like

This is great. I was totally able to see what you're talking about. We'll figure out what the best steps forward are for this.

1 Like

As a follow-up to this work, I've just released a new experimental setting to provide automatic bandwidth adjustment for Live TV watching. You can read about it here:

Running 2019.12.26.0206 currently (update about once a week)

I have a remote (liveTV) stream that is choppy. Is this due to the new transcoder option?

My remote site (AppleTV) is set to 720p @ 3mbps
My remote site has 100mbps download
My local site has 200mbps download/20mbps upload

My DVR server is running in a Virtualbox which has 4 cores (AMD Ryzen 2400G) and 4GB dedicated to it.

2019/12/27 07:26:35 [ENC] Starting encoder for ch6.1 in /mnt/data/apps/dvr/storage/Streaming/ch6.1-dANY-ip192.168.100.54/encoder-1-827911728 at 1 (0.000000) (encoder=libx264, resolution=720, deinterlacer=blend, bitrate=3744 segment_size=0.01)
2019/12/27 07:27:18 [ENC] Segment 29 has unexpected duration: inputs=30 expected=1.5015 actual=2.002 expected_pts=43.443399-44.944899 actual_pts=42.952444-44.921078
2019/12/27 07:27:21 [ENC] Segment 31 has unexpected duration: inputs=33 expected=1.2012 actual=1.5015 expected_pts=46.446399-47.647599 actual_pts=46.489311-47.957444
2019/12/27 07:27:26 [ENC] Segment 34 has unexpected duration: inputs=37 expected=1.234567 actual=1.5015 expected_pts=50.650599-51.885166 actual_pts=50.693511-52.161644
2019/12/27 07:27:28 [ENC] Segment 36 has unexpected duration: inputs=40-41 expected=1.5015 actual=1.568233 expected_pts=53.386666-54.888166 actual_pts=53.362844-54.897711
2019/12/27 07:27:31 [ENC] Segment 38 has unexpected duration: inputs=43 expected=1.4014 actual=1.5015 expected_pts=56.389666-57.791066 actual_pts=56.432578-57.900711
2019/12/27 07:27:36 [ENC] Segment 41 has unexpected duration: inputs=47 expected=0.533867 actual=1.735067 expected_pts=61.027632-61.561499 actual_pts=60.803611-62.505311
2019/12/27 07:27:42 [ENC] Segment 45 has unexpected duration: inputs=52 expected=0.6006 actual=1.5015 expected_pts=65.965899-66.566499 actual_pts=66.008811-67.476944
2019/12/27 07:27:44 [ENC] Segment 47 has unexpected duration: inputs=54 expected=1.8018 actual=1.9019 expected_pts=68.468399-70.270199 actual_pts=68.110911-69.979444

Since the errors all look to be about problems with PTS in the stream, it looks like the problem was most likely with errors in the broadcast stream.

(Please correct me if I'm wrong.)

I’ve made some improvements to the latest DVR beta to hopefully fix what your seeing. Can you upgrade and try that?

Also, with this new system, if it’s working correctly you should be able to keep your streaming quality at 8mbps and the client will adjust up and down based on how much available bandwidth it sees.

Could you see if it handles everything correctly after you’ve upgraded?

I have just upgraded. I'll try in a bit and report back...

1 Like

Here is the latest remote live TV session...

2019/12/27 18:35:19 [HLS] Starting transcoder for channel 13.1 from 192.168.100.54 (encoder=remux, resolution=, deinterlacer=, bitrate=0)

2019/12/27 18:35:20 [HLS] Probed live stream in 519.985619ms: mpeg2video 1280x720 progressive 11311676bps

2019/12/27 18:35:21 [ENC] Starting encoder for ch13.1 in /mnt/data/apps/dvr/storage/Streaming/ch13.1-dANY-ip192.168.100.54/encoder-1-450247875 at 1 (0.434289) (encoder=libx264, resolution=720, deinterlacer=blend, bitrate=3744 segment_size=0.01)

2019/12/27 18:44:21 [ENC] Segment 540 has unexpected duration: inputs=2163-2167 expected=1.000667 actual=1.051044 expected_pts=538.972289-539.956611 actual_pts=538.976944-540.011311

2019/12/27 18:45:16 [ENC] Segment 595 has unexpected duration: inputs=2390-2394 expected=1.000667 actual=1.1011 expected_pts=594.027289-595.011611 actual_pts=593.981889-595.066311

2019/12/27 18:45:19 [ENC] Segment 598 has unexpected duration: inputs=2403-2407 expected=1.000667 actual=1.051044 expected_pts=597.030289-598.014611 actual_pts=597.034944-598.069311

2019/12/27 18:45:30 [ENC] Segment 609 has unexpected duration: inputs=2450-2454 expected=1.000667 actual=1.1011 expected_pts=608.041289-609.025611 actual_pts=607.995889-609.080311

2019/12/27 18:48:52 [ENC] Segment 811 has unexpected duration: inputs=3267-3271 expected=1.000667 actual=1.084422 expected_pts=809.993044-810.977356 actual_pts=809.964322-811.032056

2019/12/27 18:49:16 [ENC] Segment 835 has unexpected duration: inputs=3372-3376 expected=1.000667 actual=1.084422 expected_pts=834.017044-835.001356 actual_pts=833.988322-835.056056

2019/12/27 18:49:22 [ENC] Segment 841 has unexpected duration: inputs=3397-3401 expected=1.000667 actual=1.084422 expected_pts=840.023044-841.007356 actual_pts=839.994322-841.062056

2019/12/27 18:49:24 [ENC] Segment 843 has unexpected duration: inputs=3406-3410 expected=1.000667 actual=1.084422 expected_pts=842.025044-843.009356 actual_pts=841.996322-843.064056

2019/12/27 18:49:44 [ENC] Segment 863 has unexpected duration: inputs=3489-3493 expected=1.000667 actual=1.084422 expected_pts=862.045044-863.029356 actual_pts=862.016322-863.084056

2019/12/27 18:49:52 [ENC] Segment 871 has unexpected duration: inputs=3522-3526 expected=1.000667 actual=1.084422 expected_pts=870.053044-871.037356 actual_pts=870.024322-871.092056

2019/12/27 18:50:22 [ENC] Segment 901 has unexpected duration: inputs=3644-3648 expected=1.000667 actual=1.084422 expected_pts=900.083044-901.067356 actual_pts=900.054322-901.122056

2019/12/27 18:51:07 [ENC] Segment 946 has unexpected duration: inputs=3829-3833 expected=1.000667 actual=1.084422 expected_pts=945.128044-946.112356 actual_pts=945.099322-946.167056

2019/12/27 18:51:32 [ENC] Segment 971 has unexpected duration: inputs=3932-3936 expected=1.000667 actual=1.084422 expected_pts=970.153044-971.137356 actual_pts=970.124322-971.192056

2019/12/27 18:52:03 [ENC] Segment 1002 has unexpected duration: inputs=4062-4066 expected=1.000667 actual=1.084422 expected_pts=1001.184044-1002.168356 actual_pts=1001.155322-1002.223056

2019/12/27 18:56:01 [ENC] Segment 1240 has unexpected duration: inputs=5023-5027 expected=1.000667 actual=1.051044 expected_pts=1239.171789-1240.156111 actual_pts=1239.176444-1240.210811

2019/12/27 18:56:46 [ENC] Segment 1286 has unexpected duration: inputs=5213-5217 expected=1.000667 actual=1.084422 expected_pts=1284.967544-1285.951856 actual_pts=1284.938822-1286.006556

2019/12/27 18:57:22 [ENC] Segment 1322 has unexpected duration: inputs=5367-5371 expected=1.000667 actual=1.051056 expected_pts=1321.003544-1321.987856 actual_pts=1321.008189-1322.042556

2019/12/27 18:58:18 [SNR] Statistics for ch6.1 WCSH-HD: ss=100% snq=100%,87%-100% seq=100% bps=11914688,5552768-14567744 pps=1132,527-1383

2019/12/27 18:58:18 [TNR] Closed connection to 10706583/0 for ch6.1 WCSH-HD

2019/12/27 18:58:29 [HLS] Stopping transcoder session ch13.1-dANY-ip192.168.100.54 (out: 23m10.005822s, finished: false)

2019/12/27 18:58:29 [ENC] Stopped encoder for ch13.1 in /mnt/data/apps/dvr/storage/Streaming/ch13.1-dANY-ip192.168.100.54/encoder-1-450247875 after encoding 1 to 1388

2019/12/27 18:58:29 [TNR] Closed connection to 10706583/1 for ch13.1 CBS

2019/12/27 18:58:30 [TNR] Opened connection to 10706583/0 for ch13.1 CBS

2019/12/27 18:58:30 [HLS] Starting transcoder for channel 13.1 from 192.168.100.54 (encoder=remux, resolution=, deinterlacer=, bitrate=0)

2019/12/27 18:58:31 [HLS] Probed live stream in 512.307549ms: mpeg2video 1280x720 progressive 4802941bps

2019/12/27 18:58:34 [TNR] Opened connection to 10706583/1 for ch8.1 WMTW-HD

2019/12/27 18:58:34 [HLS] Starting transcoder for channel 8.1 from 192.168.100.54 (encoder=remux, resolution=, deinterlacer=, bitrate=0)

2019/12/27 18:58:35 [HLS] Probed live stream in 1.301917055s: mpeg2video 1920x1080 progressive 9032865bps

2019/12/27 18:58:37 [ENC] Starting encoder for ch8.1 in /mnt/data/apps/dvr/storage/Streaming/ch8.1-dANY-ip192.168.100.54/encoder-1-959975586 at 1 (2.029956) (encoder=libx264, resolution=720, deinterlacer=blend, bitrate=3744 segment_size=0.01)

2019/12/27 18:58:50 [ENC] Segment 7 has unexpected duration: inputs=7-8 expected=2.118644 actual=2.185511 expected_pts=11.756344-13.841756 actual_pts=11.777678-13.929822

2019/12/27 18:58:55 [ENC] Segment 11 has unexpected duration: inputs=12-13 expected=1.151078 actual=1.251256 expected_pts=18.346256-19.464044 actual_pts=18.367589-19.568789

2019/12/27 18:59:02 [ENC] Segment 16 has unexpected duration: inputs=20-21 expected=1.868422 actual=1.951945 expected_pts=23.601511-25.436678 actual_pts=23.622844-25.541422

2019/12/27 18:59:04 [HLS] Stopping inactive session ch13.1-dANY-ip192.168.100.54

2019/12/27 18:59:04 [HLS] Stopping transcoder session ch13.1-dANY-ip192.168.100.54 (out: 33.558s, finished: false)

2019/12/27 18:59:04 [TNR] Closed connection to 10706583/0 for ch13.1 CBS

2019/12/27 18:59:09 [ENC] Segment 21 has unexpected duration: inputs=27-28 expected=1.868411 actual=1.918578 expected_pts=30.558456-32.393622 actual_pts=30.629844-32.498378

2019/12/27 18:59:11 [ENC] Segment 24 has unexpected duration: inputs=32 expected=1.434767 actual=1.5015 expected_pts=34.996222-36.397622 actual_pts=35.017556-36.485689

2019/12/27 18:59:34 [ENC] Segment 39 has unexpected duration: inputs=47 expected=1.434767 actual=1.5015 expected_pts=57.251789-58.653189 actual_pts=57.273122-58.741256

2019/12/27 18:59:44 [ENC] Segment 45 has unexpected duration: inputs=54-55 expected=1.468133 actual=1.534867 expected_pts=66.160689-67.595456 actual_pts=66.182022-67.683522

2019/12/27 18:59:45 [HLS] Stopping transcoder session ch8.1-dANY-ip192.168.100.54 (out: 1m11.799667s, finished: false)

2019/12/27 18:59:45 [ENC] Stopped encoder for ch8.1 in /mnt/data/apps/dvr/storage/Streaming/ch8.1-dANY-ip192.168.100.54/encoder-1-959975586 after encoding 1 to 45

2019/12/27 18:59:45 [TNR] Closed connection to 10706583/1 for ch8.1 WMTW-HD

2019/12/27 18:59:46 [TNR] Opened connection to 10706583/0 for ch8.1 WMTW-HD

2019/12/27 18:59:46 [HLS] Starting transcoder for channel 8.1 from 192.168.100.54 (encoder=remux, resolution=, deinterlacer=, bitrate=0)

2019/12/27 18:59:46 [HLS] Probed live stream in 518.316471ms: mpeg2video 1920x1080 tt 7524624bps

2019/12/27 19:00:19 [HLS] Stopping inactive session ch8.1-dANY-ip192.168.100.54

2019/12/27 19:00:19 [HLS] Stopping transcoder session ch8.1-dANY-ip192.168.100.54 (out: 33.093567s, finished: false)

[mpegts @ 0x555555920fc0] 2019/12/27 19:00:19 [TNR] Closed connection to 10706583/0 for ch8.1 WMTW-HD

Dropped corrupted packet (stream = 1)

[mpegts @ 0x555555920fc0] Dropped corrupted packet (stream = 2)

How was the playback? Did it play cleanly or did you have issues?