SageTV Community  

Go Back   SageTV Community > SageTV Development and Customizations > SageTV Clients Development

Notices

SageTV Clients Development This forum is for discussions relating to SageTV Open Source Clients Development.

Reply
 
Thread Tools Search this Thread Display Modes
  #541  
Old 02-14-2021, 07:01 AM
jvl711's Avatar
jvl711 jvl711 is offline
Sage Expert
 
Join Date: Jan 2004
Posts: 699
Quote:
Originally Posted by tvmaster2 View Post
The key mappings in the MiniClient software, or the SageTV server software? I turned it OFF in the Miniclients Settings menu, or to NONE, but no change in behavior.
Thanks
Yes in the android client is what I was talking about. It seems to be working in Pixel 3xl. I can check on a oneplus 6. I think there might be differences in how the volume rocker registers it's action to android in different hardware.

Could you try the volume keys when the overlay menu is open (the one with the media controls and other action buttons). It might work when that is visible. If it does that might point me in a direction.
__________________
Projects I am currently maintaining
SageTV Andoid Client
Media Format Parser Plugin
JavaFFmpegLibrary

If you like the work I am doing and would like to support it you can become a Patreon member.
Reply With Quote
  #542  
Old 02-14-2021, 08:32 AM
KryptoNyte's Avatar
KryptoNyte KryptoNyte is offline
Sage Icon
 
Join Date: Dec 2006
Posts: 2,460
Volume is also working on Samsung Note 20. Key mapping is set to NONE
Reply With Quote
  #543  
Old 02-14-2021, 09:21 AM
tvmaster2's Avatar
tvmaster2 tvmaster2 is online now
SageTVaholic
 
Join Date: Jun 2005
Location: tarana
Posts: 3,872
Quote:
Originally Posted by jvl711 View Post
Yes in the android client is what I was talking about. It seems to be working in Pixel 3xl. I can check on a oneplus 6. I think there might be differences in how the volume rocker registers it's action to android in different hardware.

Could you try the volume keys when the overlay menu is open (the one with the media controls and other action buttons). It might work when that is visible. If it does that might point me in a direction.
Hi. Yes, Samsung S7 volume controls work when the overlay is open. Also, when the overlay ISN’T open, the phone’s volume controls work if other things beside ‘NONE’ are mapped to them, like ‘Up & Down’, just not volume operations. Go figure.
So, that’s kinda good, at least I can turn it down now as long as the overlay is up. thanks
__________________
Sage 9 server = Gigabyte AMD quad-core - 4 gigs - integrated ATI HD4200 chipset - SSD boot, Hitachi Deskstar show drives. HD-PVR - Colossus - Win7 32 bit. HD200/300’s networked. HDHomerun tuner. "If you've given up on Weird Al, you've given up on life" - Homer Simpson
Reply With Quote
  #544  
Old 02-14-2021, 04:23 PM
davidk21770 davidk21770 is offline
Sage Aficionado
 
Join Date: Mar 2006
Location: Maryland
Posts: 489
Quote:
Originally Posted by tvmaster2 View Post
The key mappings in the MiniClient software, or the SageTV server software? I turned it OFF in the Miniclients Settings menu, or to NONE, but no change in behavior.
Thanks
Oops...
I realized that it's been a while since I tried just using the buttons and found that they are working just fine! I do not need to swip-down the android's quick menu to make them work.
Sorry for any confusion .
__________________
HDHomeRun x2
Cable Box via Hauppauge HD PVR and USB-UIRT
2 SageTV's HD300

Intel Core 2 Quad Q9650 @4025 MHz, 8G G.Skill Performance
DFI Lanparty DK X48-T2RS Plus; SilverStone Decathlon DA1000 (died - back to an ancient enermax)
eVGA 7900 GT KO RoHS -- Zalman VP900CU Cooling
Synology NAS 22TB

Last edited by davidk21770; 02-15-2021 at 04:01 PM. Reason: I was incorrect. Buttons working!
Reply With Quote
  #545  
Old 02-17-2021, 08:16 PM
gexi gexi is offline
Sage User
 
Join Date: Aug 2007
Posts: 72
Issue with 1.7.1

With the latest 1.7.1 version on a firetv stick and firetv integrated tv I seem to be getting a lot of exo2player errors on files that used to work. Mostly mkv and certain avi files. Is there a place I can download the 1.7.0 version to see if it is something that happened with the upgrade vs my machine?
Reply With Quote
  #546  
Old 02-17-2021, 08:37 PM
thopkin1 thopkin1 is offline
Sage User
 
Join Date: Sep 2010
Location: Cleveland, OH
Posts: 31
I am also seeing the exoplayer errors with version 1.7.1 that I didn't see in version 1.7.0. I am also using the transcoding plug-in and while it worked great with 1.7.0 it seems since the upgrade to 1.7.1 it has problems when programs change (meaning one show ends and the next begins without changing channels). Often the show just stops/freezes and I have to stop it and retune the channel to get it playing again. Would be happy to help debug or install 1.7.0 if I can a copy of it. Thanks!
Reply With Quote
  #547  
Old 02-19-2021, 08:59 AM
jvl711's Avatar
jvl711 jvl711 is offline
Sage Expert
 
Join Date: Jan 2004
Posts: 699
SageTV Transcoder Issue

Hi All,

I might need to post this in the GitHub area, but I wanted to see what you guys are seeing.

I am working on trying to develop the "Stream Fix" for the Android Client. To accomplish that I am using the SageTVTranscoder to do a remux of the file into a new container without reencoding the audio or video. This is working well, but I think I may have possibly identified a bug in Sage.

When SageTV is using the SageTVTranscoder to transcode (Fixed/Dynamic/Low Bandwidth) livetv streams, when the program is over and it switches to the next program it freezes, and is not able to transition to the next file. The timebar keeps ticking up, but the video/audio are frozen. SageTV shows some logs that indicate that it is trying to switch, but I am not sure where the issue might be. I would like to know if you guys are all seeing the same behavior, and it this is a known issue. And if so, if anyone knows where I might look to fix it.

I hesitant to move forward with the "Steam Fix" if this issue is real. I feel like it would be to big of a step backwards.

Thanks for your input.

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

If you like the work I am doing and would like to support it you can become a Patreon member.
Reply With Quote
  #548  
Old 02-19-2021, 09:01 AM
jvl711's Avatar
jvl711 jvl711 is offline
Sage Expert
 
Join Date: Jan 2004
Posts: 699
Quote:
Originally Posted by thopkin1 View Post
I am also seeing the exoplayer errors with version 1.7.1 that I didn't see in version 1.7.0. I am also using the transcoding plug-in and while it worked great with 1.7.0 it seems since the upgrade to 1.7.1 it has problems when programs change (meaning one show ends and the next begins without changing channels). Often the show just stops/freezes and I have to stop it and retune the channel to get it playing again. Would be happy to help debug or install 1.7.0 if I can a copy of it. Thanks!
I just saw this after I posted my post. Are you sure this was working? My testing is showing this as a core SageTV issue. Maybe I am wrong.

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

If you like the work I am doing and would like to support it you can become a Patreon member.
Reply With Quote
  #549  
Old 02-19-2021, 09:05 AM
jvl711's Avatar
jvl711 jvl711 is offline
Sage Expert
 
Join Date: Jan 2004
Posts: 699
Quote:
Originally Posted by gexi View Post
With the latest 1.7.1 version on a firetv stick and firetv integrated tv I seem to be getting a lot of exo2player errors on files that used to work. Mostly mkv and certain avi files. Is there a place I can download the 1.7.0 version to see if it is something that happened with the upgrade vs my machine?
Older versions are available in GitHub to sideload.

FYI, avi files were not supported in ExoPlayer. I changed the config to tell SageTV that ExoPlayer does not support AVI so that it could be transcoded. If you are using Dynamic streaming mode your millage may vary.

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

If you like the work I am doing and would like to support it you can become a Patreon member.
Reply With Quote
  #550  
Old 02-19-2021, 01:12 PM
wnjj wnjj is offline
Sage Icon
 
Join Date: Jan 2009
Posts: 1,326
Quote:
Originally Posted by jvl711 View Post
Hi All,

I might need to post this in the GitHub area, but I wanted to see what you guys are seeing.

I am working on trying to develop the "Stream Fix" for the Android Client. To accomplish that I am using the SageTVTranscoder to do a remux of the file into a new container without reencoding the audio or video. This is working well, but I think I may have possibly identified a bug in Sage.

When SageTV is using the SageTVTranscoder to transcode (Fixed/Dynamic/Low Bandwidth) livetv streams, when the program is over and it switches to the next program it freezes, and is not able to transition to the next file. The timebar keeps ticking up, but the video/audio are frozen. SageTV shows some logs that indicate that it is trying to switch, but I am not sure where the issue might be. I would like to know if you guys are all seeing the same behavior, and it this is a known issue. And if so, if anyone knows where I might look to fix it.

I hesitant to move forward with the "Steam Fix" if this issue is real. I feel like it would be to big of a step backwards.

Thanks for your input.

Josh
The file/show switchover code is in Seeker.java. There is also the concept of fast mux switch on capture devices that can change the file name without stopping and restarting. Prehaps that is causing your issue? If you look through the log file you should see what type of switch it was doing. I spent some time in this area with a bug involving file time stamps so may be able to help you some.

The setting to turn off fast switch is “seeker/fast_mux_switch=false” in case that helps.
__________________
Windows Installer
Reply With Quote
  #551  
Old 02-19-2021, 01:44 PM
nyplayer nyplayer is offline
SageTVaholic
 
Join Date: Sep 2005
Posts: 4,413
Quote:
Originally Posted by wnjj View Post
The file/show switchover code is in Seeker.java. There is also the concept of fast mux switch on capture devices that can change the file name without stopping and restarting. Prehaps that is causing your issue? If you look through the log file you should see what type of switch it was doing. I spent some time in this area with a bug involving file time stamps so may be able to help you some.

The setting to turn off fast switch is “seeker/fast_mux_switch=false” in case that helps.
Cause this be causing a playlist not to play the next file ... I seem to be having this problem ... of playlist stopping at the end of the first show.
__________________
Windows 10 I3 Dual Core 3.0 Server, SageTV9... OpenDCT with 2 HDHRPrimes and 4 HDHRconnects for a total of 14 Tuners.
Reply With Quote
  #552  
Old 02-19-2021, 03:12 PM
jvl711's Avatar
jvl711 jvl711 is offline
Sage Expert
 
Join Date: Jan 2004
Posts: 699
Quote:
Originally Posted by wnjj View Post
The file/show switchover code is in Seeker.java. There is also the concept of fast mux switch on capture devices that can change the file name without stopping and restarting. Prehaps that is causing your issue? If you look through the log file you should see what type of switch it was doing. I spent some time in this area with a bug involving file time stamps so may be able to help you some.

The setting to turn off fast switch is “seeker/fast_mux_switch=false” in case that helps.
I think you hit the nail right on the head here. I did not do a ton of testing yet, but it seems with fast_mux_switch=true it freezes. If I have it = false it seems to work some of the time. I am not sure where I need to go with this. I might need to do a lot more code review and debug to understand what is going on.

I can post some logs if you think you might be able to help.

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

If you like the work I am doing and would like to support it you can become a Patreon member.
Reply With Quote
  #553  
Old 02-19-2021, 11:28 PM
wnjj wnjj is offline
Sage Icon
 
Join Date: Jan 2009
Posts: 1,326
Quote:
Originally Posted by nyplayer View Post
Cause this be causing a playlist not to play the next file ... I seem to be having this problem ... of playlist stopping at the end of the first show.
I’m not sure but I think fast mux switching is only for live TV. Without fast mux mode, there’s a slight delay/freeze when the show changes to the next one.
__________________
Windows Installer
Reply With Quote
  #554  
Old 02-19-2021, 11:28 PM
wnjj wnjj is offline
Sage Icon
 
Join Date: Jan 2009
Posts: 1,326
Quote:
Originally Posted by jvl711 View Post
I think you hit the nail right on the head here. I did not do a ton of testing yet, but it seems with fast_mux_switch=true it freezes. If I have it = false it seems to work some of the time. I am not sure where I need to go with this. I might need to do a lot more code review and debug to understand what is going on.

I can post some logs if you think you might be able to help.

Thanks,
Josh
It couldn’t hurt to post some if I find the time. If it’s gets too messy we can move to email.
__________________
Windows Installer
Reply With Quote
  #555  
Old 02-20-2021, 10:17 AM
jvl711's Avatar
jvl711 jvl711 is offline
Sage Expert
 
Join Date: Jan 2004
Posts: 699
Quote:
Originally Posted by wnjj View Post
It couldn’t hurt to post some if I find the time. If it’s gets too messy we can move to email.
So, with fast_mux_switching = false and some minor code changes to the client I have been able to get this to work well.

The two below actions seem critical to the switch over to the new stream. the pusher thread needs to tell the client that there is no more data, than the client needs to tell the server it has no more data. This was not happening consistently.

Code:
Sat 2/20 10:45:00.344 [Pusher@7d1ee92e] Pushing EOS to decoder-1
Sat 2/20 10:45:00.348 [Pusher@7d1ee92e] Received eos from client
I added some code which I believe is helping this situation. I am able to get consistent stream switches when using the transcoder. I check how much data is available in the buffer, and if it is 0 I send back EOS to the server.

Code:
public int getBufferLeft()
    {


        if (dataSource instanceof HasPushBuffer)
        {
            if (state == EOS_STATE || eos)
            {
                log.error("getBufferLeftCalled MediaPlayer in EOS_STATE");
                return -1;
            }

            //Buffers are empty, and Server has already informed us of EOS.
            // I think this assumes that buffer would never be 0 if there was data left for us to read.
            if(((HasPushBuffer) dataSource).getEOS() && ((HasPushBuffer) dataSource).dataAvailable() == 0)
            {
                log.error("getBufferLeftCalled MediaPlayer bufferAvailable is 0, setting EOS and returning EOS");
                state = EOS_STATE;
                return -1;
            }

            log.error("getBufferLeftCalled bufferAvailable: " + ((HasPushBuffer) dataSource).bufferAvailable());

            return ((HasPushBuffer) dataSource).bufferAvailable();
        }
        else
        {
            return PushBufferDataSource.PIPE_SIZE;
        }
    }
Now I want to set the fast_mux_swtich back on and see if I can figure that out. Maybe fast_mux_switch path should not be executed when the transcoder is in use? I am not sure. Let me know if you think I might be on the right track.
__________________
Projects I am currently maintaining
SageTV Andoid Client
Media Format Parser Plugin
JavaFFmpegLibrary

If you like the work I am doing and would like to support it you can become a Patreon member.
Reply With Quote
  #556  
Old 02-20-2021, 11:04 AM
wnjj wnjj is offline
Sage Icon
 
Join Date: Jan 2009
Posts: 1,326
My first instinct is to agree that fast mux switch should be off when transcoding. Now it may be possible to support it if the transcoder can seamlessly stop transcoding one file, and the start the next without interrupting the stream of frames but that may take a bunch of work.

I know that the seeker code calls into an encoder function called “supportsFastMuxSwitch” to discover if the particular encoder in use supports it. Finding a way to block/alter that response seems like the cleanest way to override it if transcoding does not support it.

You may try PM’ing Narflex as to his thoughts on this.
__________________
Windows Installer
Reply With Quote
  #557  
Old 02-20-2021, 07:26 PM
nyplayer nyplayer is offline
SageTVaholic
 
Join Date: Sep 2005
Posts: 4,413
Quote:
Originally Posted by wnjj View Post
I’m not sure but I think fast mux switching is only for live TV. Without fast mux mode, there’s a slight delay/freeze when the show changes to the next one.
I fixed it by deleting and recreating new Playlist guess somehow some of them got corrupted.
__________________
Windows 10 I3 Dual Core 3.0 Server, SageTV9... OpenDCT with 2 HDHRPrimes and 4 HDHRconnects for a total of 14 Tuners.
Reply With Quote
  #558  
Old 02-22-2021, 03:10 PM
jvl711's Avatar
jvl711 jvl711 is offline
Sage Expert
 
Join Date: Jan 2004
Posts: 699
Quote:
Originally Posted by wnjj View Post
My first instinct is to agree that fast mux switch should be off when transcoding. Now it may be possible to support it if the transcoder can seamlessly stop transcoding one file, and the start the next without interrupting the stream of frames but that may take a bunch of work.

I know that the seeker code calls into an encoder function called “supportsFastMuxSwitch” to discover if the particular encoder in use supports it. Finding a way to block/alter that response seems like the cleanest way to override it if transcoding does not support it.

You may try PM’ing Narflex as to his thoughts on this.

So I added some code into seeker to check to see if there is a client that is currently transcoding the current media file and the capture device is being controlled by a client. If those are both true than I am cancelling fastMuxSwitch. This seems to be working really well so far. I need to do a lot more testing, but I am happy to report, that for the first time in a long time the placeshifter was able to switch from one airing to another without freezing!

So I have two changes currently for the Android Client and SageTV Core to make timeshift work properly while transcoding.

I also PMed Narflex to see if he had another path suggestion.

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

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


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

Advanced Search
Display Modes

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
SageTV MiniClient for Android Indiegogo Campaign (Thanks) stuckless SageTV Clients Development 13 10-27-2020 01:49 PM
Android MiniClient 1.4.3 stuckless SageTV Clients Development 20 03-25-2019 10:32 AM
Android MiniClient 1.2.9 stuckless SageTV Clients Development 53 04-16-2018 07:30 AM
Android Miniclient and UK TV rickgillyon SageTV Clients Development 6 12-01-2016 05:58 PM
Android Miniclient on Mi Box Crashing SageTV Server v9 mackb SageTV Clients Development 9 11-27-2016 07:28 PM


All times are GMT -6. The time now is 10:16 AM.


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