Kodi Community Forum

Full Version: transcoding with deinterlacing??
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
does tvheadend support transcoding + ffmpeg yadif deinterlacing?
I believe to do this you need to use the pipe:// IPTV input type.
ok, thanks, this helps a lot!

i checked this page under the transocding section:
https://tvheadend.org/projects/tvheadend...G-TS_Input

Quote:Transcoding
YMMV with different ffmpeg/libav versions. In Red Hat's (Fedora/Centos) build of ffmpeg, aac transcoding is experimental, so you have to enable -strict -2

pipe:///usr/bin/ffmpeg -loglevel fatal -i INPUTLINK -vcodec libx264 -acodec aac -strict -2 -mbd rd -copyinkf -flags +ilme+ildct -fflags +genpts
-metadata service_provider=STRING -metadata service_name=STRING -f mpegts -tune zerolatency pipe:1
Try to transcode as little as possible, since it will impact your cpu usage. And if you're using tvheadend to re-transcode... well..

So if your channel already has aac audio, maybe you only need to transcode the video stream.

pipe:///usr/bin/ffmpeg -loglevel fatal -i INPUTLINK -vcodec libx264 -acodec copy -mbd rd -copyinkf -flags +ilme+ildct -fflags +genpts
-metadata service_provider=STRING -metadata service_name=STRING -f mpegts -tune zerolatency pipe:1

it this the pipe i need? i need to add the ffmpeg f:v yadif=1 option somewhere...
this is all new to me (allthough using tvh for a very long time), where do i configure this in tvh?
I'm beginning to understand... I think...
I think i have to refeed the tvh channel urls to an ip tv stream in tvh... By meansof pipe:// . But can i also use the epg from eit?
I believe so, but I am not certain if EIT EPG entries are dependent upon a DVB input, since to do the de-interlacing your inputs will be IPTV not DVB
I would also like to try that, even if my backend is a Raspberry Pi 3 Big Grin.... who knows?!
my backend is a .... 24 core xeon.
my goal is to drastically lower my client hardware footprint, e.g. small android box with hw h264 decoding.
You can do the above with pipe:// and yes, that can work. But that means that you will be transcoding everything on the input side - so everything coming in will be transcoded.

However, if you already have a working setup, all you really need to do is configure a stream profile (or multiple ones to choose for different clients). Set the stream profile to transcode, and yes, it does deinterlace using ffmpeg's yadif. Then on your client side, tell it what stream profile you want to use.

Documentation, you too can read it. https://tvheadend.readthedocs.io/en/stab...amprofile/
(2016-08-25, 14:00)puithove Wrote: [ -> ]You can do the above with pipe:// and yes, that can work. But that means that you will be transcoding everything on the input side - so everything coming in will be transcoded.

However, if you already have a working setup, all you really need to do is configure a stream profile (or multiple ones to choose for different clients). Set the stream profile to transcode, and yes, it does deinterlace using ffmpeg's yadif. Then on your client side, tell it what stream profile you want to use.

Documentation, you too can read it. https://tvheadend.readthedocs.io/en/stab...amprofile/
Although there currently is a bug with stream profiles and recorded content: TVH does not honor your stream profile for playing back a recording.
(2016-08-25, 14:00)puithove Wrote: [ -> ]You can do the above with pipe:// and yes, that can work. But that means that you will be transcoding everything on the input side - so everything coming in will be transcoded.

However, if you already have a working setup, all you really need to do is configure a stream profile (or multiple ones to choose for different clients). Set the stream profile to transcode, and yes, it does deinterlace using ffmpeg's yadif. Then on your client side, tell it what stream profile you want to use.

Documentation, you too can read it. https://tvheadend.readthedocs.io/en/stab...amprofile/

Ok thats good news!
So by using streaming profiles i can deinterlace the stream, but where can i enter the deinterlacing properties? See here: https://ffmpeg.org/ffmpeg-filters.html#yadif-1