Force transcoding for other clients?

I know in the Channels clients you can force transcoding for local clients with the Streaming Quality/Home Streaming setting. Is there a way to force transcoding if using a different client?

What do you mean? What other clients are you referring to?

I prefer to use Android TV/Live Channels/PVR Live as my client (Quite frankly, I get frustrated every time I use the Channels android client....but that's maybe better in another thread).

The Live Channels player sometimes has problems with the commercial transitions in TVE streams, and I'm wondering if feeding it a transcoded stream would help.

How are you accessing the Channels feeds for those sources? Which URL/endpoint are you using?

Non-transcoded/original streams are delivered via the devices/DeviceID/channels/####/stream.mpg, where DeviceID is the internal ID of the source (or ANY), and #### is the channel number in Channels.

If you use any other URL, chances are the DVR server is transcoding using the "Web Client" settings in the DVR server.

To verify, look at your Channels DVR server logs while streaming to one of these other "clients".

Already verified they are not transcoded in the logs.

PVRLive takes the http m3u and epg/xml as inputs.

I understand that, but what is the URL for an individual channel in that playlist? Also, if you include the few lines in the logs that occur when you start a stream to another client, that would be helpful.

(We can't help you if you don't provide details. Otherwise, everything is a guess.)

It's the m3u retrieved directly from the Channels DVR server....

http://192.168.1.101:8089/devices/ANY/channels.m3u?format=ts

maybe a different parm other than format=ts, or is there a parm that can be added.

Here's an example playlist entry
#EXTINF:-1 channel-id="9127" tvg-chno="9127" tvg-logo="http://images.pluto.tv/channels/5f988934a507de00075d9ae7/colorLogoPNG.png" tvc-guide-stationid="showtime-selects" tvg-name="Showtime Selects" group-title="Favorites",Showtime Selects
http://127.0.0.1:8089/devices/ANY/channels/9127/stream.mpg?format=ts

Adding this parameter to generate the playlist will create entries with the original stream, bypassing transcoding. You need to use the /devices/ANY/channels.m3u enpoint to generate your playlist to get one that uses transcoding.

Alternatively, you can go through the generated playlist, and replace this portion of the URL with hls/master.m3u8 to get a stream that will transcode. The proper URL for a transcoded stream from a channel is:

http://X.X.X.X:8089/devices/ANY/channels/####/hls/master.m3u8

The transcoding for these streams is the same as for using the DVR's web player. Set the quality desired in the DRV's web UI under Settings > Web Player.

1 Like

Perfect! Thanks. Leaving off the the '?format=ts' results in the transcoding URL you listed (actually it ends with a dangling '?' in the generated m3u, but it doesn't seem to cause a problem).

Now to run for a while and see how Live Channels behaves.
Thanks again.

Just thought I'd pass on that forcing transcoding seems to have fixed things up for me.
The stream is now showing as being remux'ed and ffmpeg is detecting and 'fixing' DTS sequence errors.
Here's an example....this is the SciGo SCIENCE channel.

2021/04/07 10:33:05.691284 [HLS] ffmpeg: ch6110-dTVE-Philo-ip2600-8800-xxxx-xxxx-xxxx-xxxx-xxxx-xxxx-remux: [mpegts @ 000000000061be00] DTS 35212748 < 172909736 out of order
2021/04/07 10:43:52.431518 [HLS] ffmpeg: ch6110-dTVE-Philo-ip2600-8800-xxxx-xxxx-xxxx-xxxx-xxxx-xxxx-remux: [mpegts @ 000000000061be00] DTS 52689270 < 93234020 out of order
2021/04/07 10:43:52.431518 [HLS] ffmpeg: ch6110-dTVE-Philo-ip2600-8800-xxxx-xxxx-xxxx-xxxx-xxxx-xxxx-remux: [hls @ 000000000061c540] Non-monotonous DTS in output stream 0:0; previous: 93244079, current: 93243351; changing to 93244080. This may result in incorrect timestamps in the output file.
2021/04/07 10:44:52.289042 [HLS] ffmpeg: ch6110-dTVE-Philo-ip2600-8800-xxxx-xxxx-xxxx-xxxx-xxxx-xxxx-remux: [mpegts @ 000000000061be00] DTS 58103679 < 98630714 out of order
2021/04/07 10:44:52.307043 [HLS] ffmpeg: ch6110-dTVE-Philo-ip2600-8800-xxxx-xxxx-xxxx-xxxx-xxxx-xxxx-remux: [hls @ 000000000061c540] Non-monotonous DTS in output stream 0:0; previous: 98662912, current: 98660660; changing to 98662913. This may result in incorrect timestamps in the output file.