|
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. |
|
Thread Tools | Search this Thread | Display Modes |
#1
|
||||
|
||||
Format Detector Plugin for SageTV
Hi,
I have worked with Narflex to add some new features to SageTV. 1. Added forced as a property to subtitle tracks 2. Added 4k resolution to the pretty resolutions 3. Added HEVC (H.265) as a known media format 4. Added the ability to have a custom Format Detector Plugin to SageTV I have created a JNI Wrapper around FFmpeg for SageTV use https://github.com/jvl711/JavaFFmpegLibrary I have created a new format detector plugin based on the JNI wrapper library https://github.com/jvl711/MediaFormatParserPlugin I was hoping to see if I could get help from the community on two items. 1. Beta testers. I need users who are comfortable with the risk of testing this. 2. I could use a developers help with the JNI wrapper library. I would like to make it so the project can compile for both windows and linux. I am a Java/C# developer, so that aspect is a little foreign to me. Let me know if there is any interest. I still have some work to do before anyone could test. FYI. I have been using the format detector code on my personal server for a few months. I feel pretty confident on it's stability at this point. Installation instructions and additional information https://github.com/jvl711/MediaForma...ster/README.md If you would like to support my work you can become a supporter here Patreon Thanks, Josh Last edited by jvl711; 08-20-2020 at 08:19 AM. |
#2
|
||||
|
||||
Holy smokes, a new plugin!!! Awesome.
I'd be happy to beta test, just let me know what I need to do to get it installed on my server and then how I would test something like this. I do have some 4k drone video, and I could probably find some 4k samples to download, but I do not have any other 4k content. |
#3
|
|||
|
|||
Hey this is great! I would also be happy to test.
|
#4
|
|||
|
|||
I will beta test.
__________________
Channels DVR UBUNTU Server 2 Primes 3 Connects TVE SageTV Docker with input from Channels DVR XMLTV and M3U VIA Opendct. |
#5
|
|||
|
|||
I'm curious if this means forced subtitle tracks in mkv files will now be respected even over extenders?
|
#6
|
||||
|
||||
Quote:
The track needs to be marked with the language that you have configured as your audio language, and be marked as forced. Josh |
#7
|
||||
|
||||
I am glad to see there is interest!
Please give me a few days to create some release packages in github for all of the packages. I will also need to make pull all of the items into one package with installation instructions. I will update the top post with that info once I have completed those steps. Thanks, Josh |
#8
|
||||
|
||||
That went a little quicker than I thought. Please review the install directions and let me know if it makes sense. I am hoping after the initial alpha/beta testing I can attempt to package this into a plugin of some sort.
If you feel comfortable with the directions you can try to install and test. If there are any questions about the instructions please let me know and I will try and clear them up. If you do the full reindex you will see something like the following in your log file for every file. Code:
Wed 4/29 15:31:50.482 [main@65b54208] MediaFormatParserPlugin processing complete: \\egypt\tv\Gotham\Season 04\Gotham - S04E21 - A Dark Knight One Bad Day.mkv Wed 4/29 15:31:50.498 [main@65b54208] Redetecting format for TV file because it changed:MediaFile[id=943 A[951,950,"Gotham",0@1028.17:05,43,T V] mask=TV host=Development encodedBy= format=MATROSKA 0:43:46 1468 kbps [#0 Video[HEVC 23.976025 fps 1920x1080 16:9 progressive]#1 Audio[AAC 48000 Hz 6 channels idx=1 eng]#2 Subpic[SRT eng]{MediaType=TV, metadata.tmdb.id=60708, metadata.lastupdated=1583358208346}] \\egypt\tv\Gotham\Season 04\Gotham - S04E22 - A Dark Knight No Man's Land.mkv, Seg0[Sun 10/28 17:05:04.133-Sun 10/28 17:48:50.833]] Wed 4/29 15:31:50.535 [main@65b54208] Using the format detector plugin Wed 4/29 15:31:50.536 [main@65b54208] MediaFormatParserPlugin processing: \\egypt\tv\Gotham\Season 04\Gotham - S04E22 - A Dark Knight No Man's Land.mkv Wed 4/29 15:31:50.537 [main@65b54208] Find stream info called Wed 4/29 15:31:50.542 [main@65b54208] MediaFormatParserPlugin processing complete: \\egypt\tv\Gotham\Season 04\Gotham - S04E22 - A Dark Knight No Man's Land.mkv Josh |
#9
|
|||
|
|||
Quote:
looking good .... MediaFormatParserPlugin processing: \\EDSYNOLOGY\Public\Playon\TVShows\Star Trek_ Voyager\Season 6\Star Trek_ Voyager - s06e10 - Pathfinder.mp4
__________________
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; 04-29-2020 at 04:26 PM. |
#10
|
||||
|
||||
Quote:
I would be interested to know if it is properly identifying 4k content now. Specifically with HEVC (h.265). I would also like to know if it now can detect files with forced subtitles, and it they are automatically selected when you play a media file, when applicable. As much varied material we can run through it the better! Thanks for testing. I am pretty sure I have worked with you a number of times over the years. You are always one of the first to want to test something! Thanks, Josh |
#11
|
|||
|
|||
Quote:
__________________
Channels DVR UBUNTU Server 2 Primes 3 Connects TVE SageTV Docker with input from Channels DVR XMLTV and M3U VIA Opendct. |
#12
|
||||
|
||||
Quote:
My code seems to be detecting files in msecs, Where sage can on occasion take seconds to identify. Sage is still doing Mpeg2/PS and TS files itself. Sage has its own format detection code for those codecs. |
#13
|
|||
|
|||
Quote:
__________________
Channels DVR UBUNTU Server 2 Primes 3 Connects TVE SageTV Docker with input from Channels DVR XMLTV and M3U VIA Opendct. |
#14
|
||||
|
||||
Quote:
How much faster do you think it is? |
#15
|
|||
|
|||
Quote:
Code:
Wed 4/29 16:16:29.898 [AsyncWatch@c8e6c66] Doing pre-emptive file format detection on recording MediaFile....D:\SAGETEMP\The Carbonaro Effect Inside Carbonaro - S01E25 - A Problem With Chocolate Turtles and Seeds - 2489194-0.ts Wed 4/29 16:16:29.898 [VideoFrame-444443564441@4d4e3c63] VF processing job null nPlayin=true Wed 4/29 16:16:29.898 [VideoFrame-444443564441@4d4e3c63] isRec=false rd=157216 base=156218 eos=true Wed 4/29 16:16:29.899 [VideoFrame-444443564441@4d4e3c63] VF thread is now waiting for 0:00:00.200 Wed 4/29 16:16:29.902 [AsyncWatch@c8e6c66] Using internal format detector first for: D:\SAGETEMP\The Carbonaro Effect Inside Carbonaro - S01E25 - A Problem With Chocolate Turtles and Seeds - 2489194-0.ts Wed 4/29 16:16:29.903 [AsyncWatch@c8e6c66] AV Format:Ret:0 Program:1 Duration:1107a57 Format:AV-INF|f=MPEG2-TS;br=2884000;[bf=vid;f=H.264;fps=59.940060;fpsn=60000;fpsd=1001;ar=1.777778;arn=16;ard=9;w=1280;h=720;lace=0;main=yes;tag=0100;pid=256;index=0;];[bf=aud;f=AC3;sr=48000;ch=6;br=384000;main=yes;lang=eng;tag=0101;pid=257;index=1;];(0:0:01.785'711.1) Wed 4/29 16:16:29.903 [AsyncWatch@c8e6c66] File Format Parsed-2a D:\SAGETEMP\The Carbonaro Effect Inside Carbonaro - S01E25 - A Problem With Chocolate Turtles and Seeds - 2489194-0.ts=MPEG2-TS 0:00:01 2884 kbps [#0 Video[H.264 59.94006 fps 1280x720 16:9 progressive id=0100]#1 Audio[AC3 48000 Hz 6 channels 384 kbps MAIN idx=1 id=0101 eng]] Wed 4/29 16:16:29.903 [AsyncWatch@c8e6c66] File Format Parsed-2b D:\SAGETEMP\The Carbonaro Effect Inside Carbonaro - S01E25 - A Problem With Chocolate Turtles and Seeds - 2489194-0.ts=MPEG2-TS 0:00:01 2884 kbps [#0 Video[H.264 59.94006 fps 1280x720 16:9 progressive id=0100]#1 Audio[AC3 48000 Hz 6 channels 384 kbps MAIN idx=1 id=0101 eng]] Wed 4/29 16:16:29.904 [AsyncWatch@c8e6c66] VF.submitJob(VFJob[WatchMF r=0.0 t=0 file=MediaFile[id=2931029 A[2489194,2486954,"The Carbonaro Effect: Inside Carbonaro",65717@0429.16:00,30,T] mask=TV host=NYPLAYERVIVO encodedBy=DCT-HDHomeRun Prime Tuner 13147C7B-2 on 127.0.0.1:9000 TRUTVHP format=MPEG2-TS 0:00:01 2884 kbps [#0 Video[H.264 59.94006 fps 1280x720 16:9 progressive id=0100]#1 Audio[AC3 48000 Hz 6 channels 384 kbps MAIN idx=1 id=0101 eng]] D:\SAGETEMP\The Carbonaro Effect Inside Carbonaro - S01E25 - A Problem With Chocolate Turtles and Seeds - 2489194-0.ts, Seg0[Wed 4/29 16:16:25.394-Wed 12/31 16:00:00.000]] ifn=null])
__________________
Channels DVR UBUNTU Server 2 Primes 3 Connects TVE SageTV Docker with input from Channels DVR XMLTV and M3U VIA Opendct. |
#16
|
|||
|
|||
I believe this is a H265 file ....
Code:
Wed 4/29 16:22:46.755 [LibraryImporter@7e4ee54] Using internal format detector first for: \\EDSYNOLOGY\Public\Playon\TVShows\Law & Order\Season 08\S08E02-Denial.mpg Wed 4/29 16:22:46.770 [LibraryImporter@7e4ee54] AV Format:Ret:0 Program:1 Duration:751aa3400 Format:AV-INF|f=MPEG2-TS;br=384000;audioonly=1;[bf=aud;f=AC3;sr=48000;ch=2;br=384000;main=yes;lang=eng;tag=0100;pid=256;index=0;];(0:52:23.488'000.0) Wed 4/29 16:22:46.771 [LibraryImporter@7e4ee54] File Format Parsed-2a \\EDSYNOLOGY\Public\Playon\TVShows\Law & Order\Season 08\S08E02-Denial.mpg=MPEG2-TS 0:52:23 384 kbps [#0 Audio[AC3 48000 Hz 2 channels 384 kbps MAIN idx=0 id=0100 eng]] Wed 4/29 16:22:46.771 [LibraryImporter@7e4ee54] File Format Parsed-2b \\EDSYNOLOGY\Public\Playon\TVShows\Law & Order\Season 08\S08E02-Denial.mpg=MPEG2-TS 0:52:23 384 kbps [#0 Audio[AC3 48000 Hz 2 channels 384 kbps MAIN idx=0 id=0100 eng]] Wed 4/29 16:22:46.772 [LibraryImporter@7e4ee54] Using external format detector because we only detected audio on the internal format... Wed 4/29 16:22:46.772 [LibraryImporter@7e4ee54] Using the format detector plugin Wed 4/29 16:22:46.772 [LibraryImporter@7e4ee54] MediaFormatParserPlugin processing: \\EDSYNOLOGY\Public\Playon\TVShows\Law & Order\Season 08\S08E02-Denial.mpg Wed 4/29 16:22:46.774 [LibraryImporter@7e4ee54] Find stream info called 0 Wed 4/29 16:22:46.784 [LibraryImporter@7e4ee54] MediaFormatParserPlugin processing complete: \\EDSYNOLOGY\Public\Playon\TVShows\Law & Order\Season 08\S08E02-Denial.mpg Wed 4/29 16:22:46.786 [LibraryImporter@7e4ee54] Added:MediaFile[id=2931031 A[2931034,2931032,"S08E02-Denial",0@0429.16:17,0,V] mask=V host=NYPLAYERVIVO encodedBy= format=MPEG2-TS -2562047788:00:54 893 kbps [#0 Audio[AC3 48000 Hz 2 channels 384 kbps idx=0 eng]#1 Video[HEVC 29.97003 fps 720x480 3:2 progressive]] \\EDSYNOLOGY\Public\Playon\TVShows\Law & Order\Season 08\S08E02-Denial.mpg, Seg0[Wed 4/29 16:17:46.228-Wed 4/29 16:17:46.229]] num=1407 Wed 4/29 16:22:46.786 [LibraryImporter@7e4ee54] New Library File MediaFile[id=2931031 A[2931034,2931032,"S08E02-Denial",0@0429.16:17,0,V] mask=V host=NYPLAYERVIVO encodedBy= format=MPEG2-TS -2562047788:00:54 893 kbps [#0 Audio[AC3 48000 Hz 2 channels 384 kbps idx=0 eng]#1 Video[HEVC 29.97003 fps 720x480 3:2 progressive]] \\EDSYNOLOGY\Public\Playon\TVShows\Law & Order\Season 08\S08E02-Denial.mpg, Seg0[Wed 4/29 16:17:46.228-Wed 4/29 16:17:46.229]]
__________________
Channels DVR UBUNTU Server 2 Primes 3 Connects TVE SageTV Docker with input from Channels DVR XMLTV and M3U VIA Opendct. |
#17
|
||||
|
||||
Quote:
|
#18
|
|||
|
|||
H265 file did not play on HD300 sound no picture but played fine on my FireTV mini Client.
__________________
Channels DVR UBUNTU Server 2 Primes 3 Connects TVE SageTV Docker with input from Channels DVR XMLTV and M3U VIA Opendct. |
#19
|
||||
|
||||
I was thinking that h.265 on an HD300 would never be possible due to the hardware limitations. Is that correct?
|
#20
|
||||
|
||||
That is correct, but sage could in theory be programmed to transcode. Especially since it now knows what the files are.
|
Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Commercial Detector Plugin Disabled | LJSSageUser | Phoenix | 5 | 03-09-2014 05:34 PM |
Plugin: MizookLCD (Alternate SageTV LCDSmartie Plugin) | cslatt | SageTV Customizations | 48 | 06-11-2012 10:44 AM |
Plugin request for SageTV Windows Client: Autofrequency plugin | mkanet | SageTV v7 Customizations | 3 | 11-12-2011 09:33 AM |
Do I have to format my WHS to use SageTV? | blackcows | General Discussion | 9 | 10-13-2009 06:51 PM |
IR Code (Pronto Format) as in UIRT Helper --> SageTV Format as in Sagetv.properties | krasev | Hardware Support | 0 | 09-12-2006 10:56 PM |