SageTV Community  

Go Back   SageTV Community > SageTV Development and Customizations > SageTV Github Development
Forum Rules FAQs Community Downloads Today's Posts Search

Notices

SageTV Github Development Discussion related to SageTV Open Source Development. Use this forum for development topics about the Open Source versions of SageTV, hosted on Github.

Reply
 
Thread Tools Search this Thread Display Modes
  #1  
Old 12-16-2020, 03:48 PM
jvl711's Avatar
jvl711 jvl711 is offline
Sage Fanatic
 
Join Date: Jan 2004
Posts: 825
Smile SageTVTranscoder Plugin

This plugin is an updated version of the "CORE" SageTVTranscoder.exe that comes with SageTV. This version is based off of FFmpeg version 4.3.1. The project is being maintained as a fork to the FFmpeg project, so hopefully it will make it easier to upgrade to future versions.


Known Issues:
  1. Some of the built in transcoding profiles in SageTV use deprecated/removed command line arguments. You will need to add your own custom profiles at this time for the transcoding profiles that are not working.

Transcoding Profiles:

Some transcoding profiles that nyplayer posted. These will copy all audio and subtitles but transcode the video. The slower the encode the better the quality. You will need to shutdown SageTV server, and add these to the sage properties file.

Code:
transcoder/formats/MKV-H264\superfast\ MKV=f\=matroska;MCompressionDetails\=-c copy -preset superfast -c:v libx264;]
transcoder/formats/MKV-H264\veryfast\ MKV=f\=matroska;MCompressionDetails\=-c copy -preset veryfast -c:v libx264;]
transcoder/formats/MKV-H264\faster\ MKV=f\=matroska;MCompressionDetails\=-c copy -preset faster -c:v libx264;]
transcoder/formats/MKV-H264\fast\ MKV=f\=matroska;MCompressionDetails\=-c copy -preset fast -c:v libx264;]
transcoder/formats/MKV-H264\Medium\ MKV=f\=matroska;MCompressionDetails\=-c copy -preset medium -c:v libx264;]
transcoder/formats/MKV-H264\slow\ MKV=f\=matroska;MCompressionDetails\=-c copy -preset slow -c:v libx264;]
transcoder/formats/MKV-H264\slower\ MKV=f\=matroska;MCompressionDetails\=-c copy -preset slower -c:v libx264;]
transcoder/formats/MKV-H264\veryslow\ MKV=f\=matroska;MCompressionDetails\=-c copy -preset veryslow -c:v libx264;]
transcoder/formats/MKV-Remux\ MKV=f\=matroska;MCompressionDetails\=-c copy;]
FAQ:

Q: What does the SageTVTranscoder do in SageTV?
A: It is responsible for a number of different tasks:
  1. Realtime transcoding of video files that are either in an unsupported format, or because of bandwidth limitations
  2. Thumbnail generation of media files. This is how SageTV creates the thumbnail image for recordings
  3. Conversion of recordings/library content to different formats
  4. Media format detection for formats that require the external format detector. I believe that is every except for .ts/.ps, and mp3 files.

Q: Why should I care about this? Seems like this does the same thing as the original SageTVTranscoder.exe?
A: Good question, there are a number of enhancements from using the newer version of FFmpeg:
  1. Support for transcoding and encoding into h265 and other newere codecs
  2. Support for identifying newer codecs and containers
  3. Potential performance increases in all the areas SageTV utilizes the SageTVTranscoder
  4. Stability improvements because of years of bugfixes and enhancements made by the FFmpeg team

Q: How do I install this?
A: It is available under as a SageTV plugin under General. It is called SageTVTranscoder (FFmpeg) Windows x64/x32. Pick the version that is appropriate to your system.

Q: What do I do if I find an issue/bug, or have an enhancement request?
A: You are free to bring up, or discuss any issues/bugs or potential enhancements here, but I would like it if you would please enter an issue into the github repo for tracking purposes. You can do that here under issues: https://github.com/jvl711/SageTVTranscoder-FFmpeg

Q: Can I contribute to this project?
A: Why yes you can! The project is a fork of FFmpeg, and is written in C. I could use help maintaining this, and there is definitely some code I do not understand and could use assistance with. You can fork the repo and submit pull requests. You can reach out to me on the forums, patreon or github. If you are not a programmer I am sure you could help with guides and general support.

Github Link: https://github.com/jvl711/SageTVTranscoder-FFmpeg

Versions:
v1.0.0 - Initial feature complete (Beta) release
v1.0.1 - Added x32 windows build
v1.0.2 - Fixed an issue with thumbnail generation on client machine. "stv://127.0.0.1/" translated to locally accessible path.
v1.0.3 - Fixed an issue with live tv transcoding and transitioning to a new program.
v1.0.4 - Added libx265 support
__________________
Projects I am currently maintaining
SageTV Andoid Client
Media Format Parser Plugin
JavaFFmpegLibrary
SageTVTranscoder

If you like the work I am doing and would like to support it you can become a Patreon member.

Last edited by jvl711; 07-18-2021 at 06:09 PM.
Reply With Quote
  #2  
Old 12-17-2020, 11:25 AM
wayner wayner is offline
SageTVaholic
 
Join Date: Jan 2008
Location: Toronto, ON
Posts: 7,491
A question regarding thumbnail generation - I believe that the thumbnail is created at an interval of something like 30 seconds after the start of the recording. Is that the case? And can this thumbnail time offset be changed by the user? In an ideal world it would be good to have the offset time be confifurable based on Show Title, just like the custom skip times plugin. For example, for sporting events you may want the thumbnail to be at 900 seconds into the recording.
__________________
New Server - Sage9 on unRAID 2xHD-PVR, HDHR for OTA
Old Server - Sage7 on Win7Pro-i660CPU with 4.6TB, HD-PVR, HDHR OTA, HVR-1850 OTA
Clients - 2xHD-300, 8xHD-200 Extenders, Client+2xPlaceshifter and a WHS which acts as a backup Sage server
Reply With Quote
  #3  
Old 12-17-2020, 12:43 PM
jvl711's Avatar
jvl711 jvl711 is offline
Sage Fanatic
 
Join Date: Jan 2004
Posts: 825
Quote:
Originally Posted by wayner View Post
A question regarding thumbnail generation - I believe that the thumbnail is created at an interval of something like 30 seconds after the start of the recording. Is that the case? And can this thumbnail time offset be changed by the user? In an ideal world it would be good to have the offset time be confifurable based on Show Title, just like the custom skip times plugin. For example, for sporting events you may want the thumbnail to be at 900 seconds into the recording.
Hi Wayner,

It will behave the way that SageTV does currently with thumbnail generation. I think there is a setting that you can choose the time for how far by default into a show the thumbnail is created. Any option you can configure in SageTV today should be supported...

This is attempting to be a one to one replacement of the current SageTVTranscoder, so all current functions "should" work the same.

I think it may makes sense to add something like this to the core SageTV to possibly allow the configuration on a favorite. I will tell you in my own system, that I do not even use the ones that come from SageTV. I actually pull them down from TMDB. They seem to be picked by the user base, and are a much better representation of the show.

Thanks,
Josh
__________________
Projects I am currently maintaining
SageTV Andoid Client
Media Format Parser Plugin
JavaFFmpegLibrary
SageTVTranscoder

If you like the work I am doing and would like to support it you can become a Patreon member.
Reply With Quote
  #4  
Old 12-17-2020, 02:33 PM
nyplayer nyplayer is offline
SageTVaholic
 
Join Date: Sep 2005
Posts: 4,997
I still get bad audio when testing to always transcode locally on all my devices ... It cracks and is distorted.... also when watching Comcast H264 with transcoding get no video.

Maybe somebody that has a FireTV can also test this.... see if they too suffer from distorted audio.
__________________
Channels DVR UBUNTU Server 2 Primes 3 Connects TVE SageTV Docker with input from Channels DVR XMLTV and M3U VIA Opendct.

Last edited by nyplayer; 12-17-2020 at 02:54 PM.
Reply With Quote
  #5  
Old 12-17-2020, 05:07 PM
jvl711's Avatar
jvl711 jvl711 is offline
Sage Fanatic
 
Join Date: Jan 2004
Posts: 825
Quote:
Originally Posted by nyplayer View Post
I still get bad audio when testing to always transcode locally on all my devices ... It cracks and is distorted.... also when watching Comcast H264 with transcoding get no video.

Maybe somebody that has a FireTV can also test this.... see if they too suffer from distorted audio.
I just ran thru this on my server, and it seems to be working fine. Can you confirm that you have the right version of the Sage.jar. The HD fixed transcoding will only work with my patched jar file.

From reviewing the logs you sent me, it looked like SageTV was not passing the correct options.

Thanks,
Josh
__________________
Projects I am currently maintaining
SageTV Andoid Client
Media Format Parser Plugin
JavaFFmpegLibrary
SageTVTranscoder

If you like the work I am doing and would like to support it you can become a Patreon member.
Reply With Quote
  #6  
Old 12-18-2020, 08:39 AM
nyplayer nyplayer is offline
SageTVaholic
 
Join Date: Sep 2005
Posts: 4,997
Quote:
Originally Posted by jvl711 View Post
I just ran thru this on my server, and it seems to be working fine. Can you confirm that you have the right version of the Sage.jar. The HD fixed transcoding will only work with my patched jar file.

From reviewing the logs you sent me, it looked like SageTV was not passing the correct options.

Thanks,
Josh
I think that might be it I rebuilt it and did not get your Sage.jar maybe you should post your jar on the first page. There is no mention about the new jar.


Edit that was it ... maybe update your instructions that a new jar is needed and post where it can be downloaded.
__________________
Channels DVR UBUNTU Server 2 Primes 3 Connects TVE SageTV Docker with input from Channels DVR XMLTV and M3U VIA Opendct.

Last edited by nyplayer; 12-18-2020 at 09:12 AM.
Reply With Quote
  #7  
Old 12-18-2020, 01:52 PM
jvl711's Avatar
jvl711 jvl711 is offline
Sage Fanatic
 
Join Date: Jan 2004
Posts: 825
Quote:
Originally Posted by nyplayer View Post
I think that might be it I rebuilt it and did not get your Sage.jar maybe you should post your jar on the first page. There is no mention about the new jar.


Edit that was it ... maybe update your instructions that a new jar is needed and post where it can be downloaded.
I added a note and a link to the top of the Android Client post with a direct link to the file. I was holding on to seeing if we could get another SageTV release until I made a decision on if I am going to add the stream copy changes.
__________________
Projects I am currently maintaining
SageTV Andoid Client
Media Format Parser Plugin
JavaFFmpegLibrary
SageTVTranscoder

If you like the work I am doing and would like to support it you can become a Patreon member.
Reply With Quote
  #8  
Old 12-18-2020, 04:54 PM
nyplayer nyplayer is offline
SageTVaholic
 
Join Date: Sep 2005
Posts: 4,997
Quote:
Originally Posted by jvl711 View Post
I added a note and a link to the top of the Android Client post with a direct link to the file. I was holding on to seeing if we could get another SageTV release until I made a decision on if I am going to add the stream copy changes.
Ok thanks ... great work
__________________
Channels DVR UBUNTU Server 2 Primes 3 Connects TVE SageTV Docker with input from Channels DVR XMLTV and M3U VIA Opendct.
Reply With Quote
  #9  
Old 12-18-2020, 05:30 PM
KryptoNyte's Avatar
KryptoNyte KryptoNyte is offline
SageTVaholic
 
Join Date: Dec 2006
Posts: 2,754
This is fantastic!

I just connected a Firestick 4k over my phone's hotspot as a remote connection test (fixed, 3 mbps), then thrashed a recording FF, REW, auto compskip. After moving back and forth, no more odd green pixelated screens, the video/audio picks up quickly when replay starts - this is really great work.

Thank you!

Oh, and the installation of the plugin ... painless.
Reply With Quote
  #10  
Old 12-21-2020, 01:03 PM
jvl711's Avatar
jvl711 jvl711 is offline
Sage Fanatic
 
Join Date: Jan 2004
Posts: 825
Quote:
Originally Posted by KryptoNyte View Post
This is fantastic!

I just connected a Firestick 4k over my phone's hotspot as a remote connection test (fixed, 3 mbps), then thrashed a recording FF, REW, auto compskip. After moving back and forth, no more odd green pixelated screens, the video/audio picks up quickly when replay starts - this is really great work.

Thank you!

Oh, and the installation of the plugin ... painless.
Thank you for the feedback. That is good to hear!
__________________
Projects I am currently maintaining
SageTV Andoid Client
Media Format Parser Plugin
JavaFFmpegLibrary
SageTVTranscoder

If you like the work I am doing and would like to support it you can become a Patreon member.
Reply With Quote
  #11  
Old 12-21-2020, 01:05 PM
jvl711's Avatar
jvl711 jvl711 is offline
Sage Fanatic
 
Join Date: Jan 2004
Posts: 825
Hi All,

Just wanted to let you guys know that windows 32 bit build is coming soon. I was able to get it to build, and I have updated my build scripts. I hope to release at some point this week, time allowing.

Thanks,
Josh
__________________
Projects I am currently maintaining
SageTV Andoid Client
Media Format Parser Plugin
JavaFFmpegLibrary
SageTVTranscoder

If you like the work I am doing and would like to support it you can become a Patreon member.
Reply With Quote
  #12  
Old 12-21-2020, 03:50 PM
nyplayer nyplayer is offline
SageTVaholic
 
Join Date: Sep 2005
Posts: 4,997
Quote:
Originally Posted by jvl711 View Post
Hi All,

Just wanted to let you guys know that windows 32 bit build is coming soon. I was able to get it to build, and I have updated my build scripts. I hope to release at some point this week, time allowing.

Thanks,
Josh
Thanks it has been rock solid thanks for your work you have put in to keep sagetv going.
__________________
Channels DVR UBUNTU Server 2 Primes 3 Connects TVE SageTV Docker with input from Channels DVR XMLTV and M3U VIA Opendct.
Reply With Quote
  #13  
Old 12-21-2020, 04:36 PM
AlphaCrew AlphaCrew is offline
Sage Aficionado
 
Join Date: May 2010
Location: Whosevile
Posts: 303
So this only applies to the android app, and not the PC client/server?
Reply With Quote
  #14  
Old 12-21-2020, 06:38 PM
Telecore's Avatar
Telecore Telecore is offline
Sage Aficionado
 
Join Date: Oct 2010
Location: Allen, TX
Posts: 347
First of all - jvl711 thanks for all of your efforts - I found a potential problem that I want to relay after I changed out the jar file and installed the plugin; unfortunately I don't recall all the details (and I have since uninstalled), but I am certain my HEVC-10 encoded MKV files with DTS soundtracks would not play and an error message appeared indicating that there was an audio error. This happened both on FireTV 4K and the Nvidia Shield. What I am not certain about is whether the HEVC-10 MKVs with AC-3 soundtracks worked or not. Both DTS and AC-3 work with the old jar and without the plugin on android clients. Anyways wanted to let everyone know and see if someone else encountered the same problem. I only have the 1 system so I had to restore it to make sure everything is working for my family.
__________________
SageTV-V9(64bit): Win10/i3-4370/OpenDCT/HDHR-Quatro (OTA)
AndroidTV+Miniclient: Nvidia Shield(x3)/FireTV-4K(x8)
Channels-DVR:Win10/i3-4340/HDHR Quatro 4K/TVE(YTTV)

Last edited by Telecore; 12-21-2020 at 10:03 PM.
Reply With Quote
  #15  
Old 12-22-2020, 06:44 AM
jvl711's Avatar
jvl711 jvl711 is offline
Sage Fanatic
 
Join Date: Jan 2004
Posts: 825
Quote:
Originally Posted by AlphaCrew View Post
So this only applies to the android app, and not the PC client/server?
This applies to all of SageTV. See Q AND A on first post.

Thanks,
Josh
__________________
Projects I am currently maintaining
SageTV Andoid Client
Media Format Parser Plugin
JavaFFmpegLibrary
SageTVTranscoder

If you like the work I am doing and would like to support it you can become a Patreon member.
Reply With Quote
  #16  
Old 12-22-2020, 06:49 AM
jvl711's Avatar
jvl711 jvl711 is offline
Sage Fanatic
 
Join Date: Jan 2004
Posts: 825
Quote:
Originally Posted by Telecore View Post
First of all - jvl711 thanks for all of your efforts - I found a potential problem that I want to relay after I changed out the jar file and installed the plugin; unfortunately I don't recall all the details (and I have since uninstalled), but I am certain my HEVC-10 encoded MKV files with DTS soundtracks would not play and an error message appeared indicating that there was an audio error. This happened both on FireTV 4K and the Nvidia Shield. What I am not certain about is whether the HEVC-10 MKVs with AC-3 soundtracks worked or not. Both DTS and AC-3 work with the old jar and without the plugin on android clients. Anyways wanted to let everyone know and see if someone else encountered the same problem. I only have the 1 system so I had to restore it to make sure everything is working for my family.
Hi Telecore,

What were you attempting to do? Where you applying fixed transcoding? Why did you add the new Sage.jar. Where you expecting to test a feature? Can you post the SageTVTranscoder.log file.

H265 should not need to be transcoded on the Firestick 4k. It should just playback. So transcoding should not be involved unless this is a low bandwidth, or you forced transcoding with always encode.

Thanks,
Josh
__________________
Projects I am currently maintaining
SageTV Andoid Client
Media Format Parser Plugin
JavaFFmpegLibrary
SageTVTranscoder

If you like the work I am doing and would like to support it you can become a Patreon member.
Reply With Quote
  #17  
Old 12-22-2020, 03:01 PM
Telecore's Avatar
Telecore Telecore is offline
Sage Aficionado
 
Join Date: Oct 2010
Location: Allen, TX
Posts: 347
Not testing transcoding - just (1) regression testing to see if anything got broke and (2) trying to see what could be gained (outside of transcoding) from your list of enhancements (I was hoping to make SageTV more aware of HEVC content); in any event wanted to let you know that something broke in a non-transcoding use case
__________________
SageTV-V9(64bit): Win10/i3-4370/OpenDCT/HDHR-Quatro (OTA)
AndroidTV+Miniclient: Nvidia Shield(x3)/FireTV-4K(x8)
Channels-DVR:Win10/i3-4340/HDHR Quatro 4K/TVE(YTTV)
Reply With Quote
  #18  
Old 12-23-2020, 09:16 AM
jvl711's Avatar
jvl711 jvl711 is offline
Sage Fanatic
 
Join Date: Jan 2004
Posts: 825
Quote:
Originally Posted by Telecore View Post
Not testing transcoding - just (1) regression testing to see if anything got broke and (2) trying to see what could be gained (outside of transcoding) from your list of enhancements (I was hoping to make SageTV more aware of HEVC content); in any event wanted to let you know that something broke in a non-transcoding use case
Thanks Telecore.

Let me know if you have a chance to look into this more. I am not able to repro on my side. I would need some logs from you to look into it closer. It is possible it is detecting something a little differently on your side that Sage is not liking.

Thanks,
Josh
__________________
Projects I am currently maintaining
SageTV Andoid Client
Media Format Parser Plugin
JavaFFmpegLibrary
SageTVTranscoder

If you like the work I am doing and would like to support it you can become a Patreon member.
Reply With Quote
  #19  
Old 12-23-2020, 11:56 AM
AlphaCrew AlphaCrew is offline
Sage Aficionado
 
Join Date: May 2010
Location: Whosevile
Posts: 303
Quote:
Originally Posted by jvl711 View Post
This applies to all of SageTV. See Q AND A on first post.

Thanks,
Josh
So I installed the PI (Server), rebooted machine and tried to convert a video to H264 MKV and as it always has, it failed.

I don't see any difference in the SageTV client as it pertains to transcoding or it's options.

Does the PI need to be installed in the client as well?
Attached Images
File Type: png 2020-12-23_12-53-21.png (723.2 KB, 180 views)
Reply With Quote
  #20  
Old 12-23-2020, 03:13 PM
nyplayer nyplayer is offline
SageTVaholic
 
Join Date: Sep 2005
Posts: 4,997
Quote:
Originally Posted by AlphaCrew View Post
So I installed the PI (Server), rebooted machine and tried to convert a video to H264 MKV and as it always has, it failed.

I don't see any difference in the SageTV client as it pertains to transcoding or it's options.

Does the PI need to be installed in the client as well?
I also tried to transcode a recording to mkv in Windows server and it failed I think new profiles will have to be added.
__________________
Channels DVR UBUNTU Server 2 Primes 3 Connects TVE SageTV Docker with input from Channels DVR XMLTV and M3U VIA Opendct.
Reply With Quote
Reply


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
SageTVTranscoder.exe from 6.5.14 Stuntman SageTV Beta Test Software 2 05-13-2009 08:17 AM
What does SageTVtranscoder.exe do? autoboy SageTV Software 5 04-23-2008 01:55 PM
sagetvtranscoder.exe always at 50% showson1 SageTV Software 3 03-30-2008 01:46 AM
SageTVTranscoder.exe jgsouthard SageTV Beta Test Software 40 11-03-2007 01:13 PM
SageTvTranscoder.exe ?? mike_15 SageTV Software 4 10-21-2007 09:42 PM


All times are GMT -6. The time now is 11:13 AM.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2023, vBulletin Solutions Inc.
Copyright 2003-2005 SageTV, LLC. All rights reserved.