I'm still downloading the SDK so am just looking at the raw *js files.
There are not many comments. Is there a place where you have an
overview of what each file is doing? Also, I found the code to move
around in the video:
case sf.key.REW:
OSD.showOSD(-3000);
plugin.JumpBackward(5);
break;
case sf.key.FF:
OSD.showOSD(7000);
plugin.JumpForward(5);
break;
But I do not understand where plugin.JumpForward is defined. Is plugin
part of the Samsung SDK?
In a real front end the jump forward is (I think) 3 times the size of
jump backwards. Here you are using 5 & 5. But the OSD values are not
symmetrical. Is there a reason for this?
When I use the arrow keys on my Samsung device, I have not seen the OSD
progress bar move backwards. Could there be many defines for the many
different types of Samsung remote arrow keys? (I have tried the >>,
|, <<, |<<, up, down, left & right keys on my remote and none appear
to reduce the size of the progress bar.)
-thanks
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hi Rick,
thank you. It's great getting some contribution to SMTV. Currently, there is no documentation about the project structure, but I can create one (maybe today).
Currently SMTV is configured as follows:
<< jumps back 5 seconds
>> jumps forward 5 seconds
left key jumps back 30 seconds
right key jumps forward 60 seconds
down key jumps back 150 (?) seconds
up key jumps forward 300 seconds
showOSD has a parameter that defines when the OSD should disappear relatively to the (old) stream position. Currently it is configured to disappear 2 seconds after skipping.
Stream position to disappear = jump + 2000ms
Last edit: steffen 2014-11-06
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Currently SMTV is configured as follows:
<< jumps back 5 seconds
jumps forward 5 seconds
left key jumps back 30 seconds
right key jumps forward 60 seconds
down key jumps back 150 (?) seconds
up key jumps forward 300 seconds
Yes, but how does the code know where to jump to? I had though the myth
data base needed to be asked. I think that the myth recordings are
variably compressed and jumping a fixed number of "bytes" results in
inconsistent results.
showOSD has a parameter that defines when the OSD show disappear
relative to the (old) stream position. Currently it is configured to
disappear 2 seconds after skipping.
Stream position to disappear = jump + 2000ms
Yes I realize this. But I still do not see the bar-graph of the OSD
reduce in size no matter which button I press. I will try this again.
Other question...
Is this the code to access the myth mysql data base to get the
information regarding the recording? I am trying to understand how the
myth mysql data base is accessed from smartmythtv:
Is this where the URL of the back end is set? I am wondering if it
should be set from the data base instead when smarthmythtv is used in a
multiple back end myth network:
if (Data.URL == null) {
Data.URL = sf.core.localData("serverip");
}
-thanks
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Yes, but how does the code know where to jump to? I had though the myth
data base needed to be asked. I think that the myth recordings are
variably compressed and jumping a fixed number of "bytes" results in
inconsistent results.
SMTV uses the (new) MythTV Service Api: https://www.mythtv.org/wiki/Services_API . It uses streaming over HTTP.
Jumping should work without additional information of the database.
Yes I realize this. But I still do not see the bar-graph of the OSD
reduce in size no matter which button I press. I will try this again.
The bar should be updated by the Samsung (SDK) Video Player when it receives the jump commands.
Is this the code to access the myth mysql data base to get the
information regarding the recording? I am trying to understand how the
myth mysql data base is accessed from smartmythtv:
Is this where the URL of the back end is set? I am wondering if it
should be set from the data base instead when smarthmythtv is used in a
multiple back end myth network:
if (Data.URL == null) {
Data.URL = sf.core.localData("serverip");
}
It's the URL of the Service API for API calls.
Last edit: steffen 2014-11-06
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I too started to look at all the code to see if i can figure out this jump issue with my HD videos (recorded via mythbackend and HDHomerun+cablecard). From what I can tell, Player.js is using JumpBackward and JumpForward to actually move through the file. Aren't these Samsung SmartTV Player plugin APIcalls, not Myth API calls?
Even more surprisingly - jumps backward in effect produce jumps forward."
The responder said it is an issue with the content, not the API. That seems odd to me, but it could be a subtle issue/incompatibility with the content coming from the HDHomerun/myth recording methods. I'd try transcoding automatically to see if the transcoded content still does it but my backend is way too slow. May try that with a small sample recording. If i could easily transcode though I'd probably just use Plex's player.
So long story short, I think it's a TV/content issue, not at all a SMTV issue. I am going to keep looking and attempt to try some debug when I get a chance.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I too started to look at all the code to see if i can figure out this jump issue with
my HD videos (recorded via mythbackend and HDHomerun+cablecard). From what I can
tell, Player.js is using JumpBackward and JumpForward to actually move through the
file. Aren't these Samsung SmartTV Player plugin APIcalls, not Myth API calls?
Yes, JumpBackward and JumpForward are Samsung API calls.
Does your video content work using DLNA on Samsung TV?
The responder said it is an issue with the content, not the API. That seems odd to
me, but it could be a subtle issue/incompatibility with the content coming from the
HDHomerun/myth recording methods. I'd try transcoding automatically to see if the
transcoded content still does it but my backend is way too slow. May try that with
a small sample recording. If i could easily transcode though I'd probably just use
Plex's player.
So long story short, I think it's a TV/content issue, not at all a SMTV issue. I am
going to keep looking and attempt to try some debug when I get a chance.
Thank you for your effort. Keep us updated.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I too started to look at all the code to see if i can figure out this jump issue with
my HD videos (recorded via mythbackend and HDHomerun+cablecard). From what I can
tell, Player.js is using JumpBackward and JumpForward to actually move through the
file. Aren't these Samsung SmartTV Player plugin APIcalls, not Myth API calls?
Yes, JumpBackward and JumpForward are Samsung API calls.
Does your video content work using DLNA on Samsung TV?
The responder said it is an issue with the content, not the API. That seems odd to
me, but it could be a subtle issue/incompatibility with the content coming from the
HDHomerun/myth recording methods. I'd try transcoding automatically to see if the
transcoded content still does it but my backend is way too slow. May try that with
a small sample recording. If i could easily transcode though I'd probably just use
Plex's player.
So long story short, I think it's a TV/content issue, not at all a SMTV issue. I am
going to keep looking and attempt to try some debug when I get a chance.
Thank you for your effort. Keep us updated. Btw. are you using the latest firmware on your TV?
Last edit: steffen 2014-11-06
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
If I go to my Myth server in the Source menu and browse to recordings and play a file this way, the right arrow skips 10 seconds forward. Left skips 10 seconds back. I assume this is the DLNA player?
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
the menu is located in scences: Recording, Vidoes, Upcoming, Settings
scences/Player.js (and the experimental HTML5 version HtmlPlayer.js) are the actual players that use the Samsung API to play MPEG2 and MPEG4 Videos delivered via HTML.
ServiceAPIjson.js (and the old XML version ServiceAPI.js) are the interface to access videos and recording listings from MythBackend
Data.js stores some configuration and dynamic data
OSD.js is the OSD implementation that shows video processing after pressing a key
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Steffen - how is HtmlPlayer.js used? I am assuming that the Player.js is loading to play my videos. How/when does the HTML variant come into play? Thanks
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
steffen,
I'm still downloading the SDK so am just looking at the raw *js files.
There are not many comments. Is there a place where you have an
overview of what each file is doing? Also, I found the code to move
around in the video:
But I do not understand where plugin.JumpForward is defined. Is plugin
part of the Samsung SDK?
In a real front end the jump forward is (I think) 3 times the size of
jump backwards. Here you are using 5 & 5. But the OSD values are not
symmetrical. Is there a reason for this?
When I use the arrow keys on my Samsung device, I have not seen the OSD
progress bar move backwards. Could there be many defines for the many
different types of Samsung remote arrow keys? (I have tried the >>,
-thanks
Hi Rick,
thank you. It's great getting some contribution to SMTV. Currently, there is no documentation about the project structure, but I can create one (maybe today).
Currently SMTV is configured as follows:
<< jumps back 5 seconds
>> jumps forward 5 seconds
left key jumps back 30 seconds
right key jumps forward 60 seconds
down key jumps back 150 (?) seconds
up key jumps forward 300 seconds
showOSD has a parameter that defines when the OSD should disappear relatively to the (old) stream position. Currently it is configured to disappear 2 seconds after skipping.
Stream position to disappear = jump + 2000ms
Last edit: steffen 2014-11-06
Hi Steffen,
Yes, but how does the code know where to jump to? I had though the myth
data base needed to be asked. I think that the myth recordings are
variably compressed and jumping a fixed number of "bytes" results in
inconsistent results.
Yes I realize this. But I still do not see the bar-graph of the OSD
reduce in size no matter which button I press. I will try this again.
Other question...
Is this the code to access the myth mysql data base to get the
information regarding the recording? I am trying to understand how the
myth mysql data base is accessed from smartmythtv:
SceneGroups.prototype.getRecording = function() {
};
Is this where the URL of the back end is set? I am wondering if it
should be set from the data base instead when smarthmythtv is used in a
multiple back end myth network:
-thanks
SMTV uses the (new) MythTV Service Api:
https://www.mythtv.org/wiki/Services_API . It uses streaming over HTTP.
Jumping should work without additional information of the database.
The bar should be updated by the Samsung (SDK) Video Player when it receives the jump commands.
It only accesses MythTV by the Service API.
It's the URL of the Service API for API calls.
Last edit: steffen 2014-11-06
Great info.
I too started to look at all the code to see if i can figure out this jump issue with my HD videos (recorded via mythbackend and HDHomerun+cablecard). From what I can tell, Player.js is using JumpBackward and JumpForward to actually move through the file. Aren't these Samsung SmartTV Player plugin APIcalls, not Myth API calls?
I came across this link which seems to be the issue I am seeing.
http://www.samsungdforum.com/SamsungDForum/ForumView/f0cd8ea6961d50c3?forumID=9d65c502d5a6974a
From the link:
"So for example if I am on 1 minute and do jump forward 30 seconds - it actually lands on 2 minutes; the next jump from 2 minutes - on 4 minutes and so on until it reaches the end of file.
Even more surprisingly - jumps backward in effect produce jumps forward."
The responder said it is an issue with the content, not the API. That seems odd to me, but it could be a subtle issue/incompatibility with the content coming from the HDHomerun/myth recording methods. I'd try transcoding automatically to see if the transcoded content still does it but my backend is way too slow. May try that with a small sample recording. If i could easily transcode though I'd probably just use Plex's player.
So long story short, I think it's a TV/content issue, not at all a SMTV issue. I am going to keep looking and attempt to try some debug when I get a chance.
Yes, JumpBackward and JumpForward are Samsung API calls.
Does your video content work using DLNA on Samsung TV?
Thank you for your effort. Keep us updated.
Yes, JumpBackward and JumpForward are Samsung API calls.
Does your video content work using DLNA on Samsung TV?
Thank you for your effort. Keep us updated. Btw. are you using the latest firmware on your TV?
Last edit: steffen 2014-11-06
Yup I just updated the software on the TV last night hoping it was just an old library/API issue, but the problem persisted.
I'll check how the content plays (jump/ff/rew/etc) in the DLNA player tonight.
If I go to my Myth server in the Source menu and browse to recordings and play a file this way, the right arrow skips 10 seconds forward. Left skips 10 seconds back. I assume this is the DLNA player?
SMTV is structured as follow:
the menu is located in scences: Recording, Vidoes, Upcoming, Settings
scences/Player.js (and the experimental HTML5 version HtmlPlayer.js) are the actual players that use the Samsung API to play MPEG2 and MPEG4 Videos delivered via HTML.
ServiceAPIjson.js (and the old XML version ServiceAPI.js) are the interface to access videos and recording listings from MythBackend
Data.js stores some configuration and dynamic data
OSD.js is the OSD implementation that shows video processing after pressing a key
Steffen - how is HtmlPlayer.js used? I am assuming that the Player.js is loading to play my videos. How/when does the HTML variant come into play? Thanks