Jump to content

External player support


jscoys

Recommended Posts

solabc16

Ok, I've put an MKV file in the library to test with. This is what I see in the log, although the external player does not even attempt to launch. (and it doesn't try to play using the internal player)

 

57153cf7ed4d2_ext_test2.png

 

I've had a look through some other titles and see the same behaviour for ISOs where no media information has been detected.

 

Here's the external player config:-

 

57153d24a976c_ext_test1.png

2016-04-18 20:49:09.4550 Info App: Profile: Unknown Profile, Path: \\JFK\EmbyServer\Movies\DVDs\The Help (2011)\The Help (2011).mkv, isEligibleForDirectPlay: True, isEligibleForDirectStream: True2016-04-18 20:49:09.4550 Info App: Profile: Unknown Profile, Path: \\JFK\EmbyServer\Movies\DVDs\The Help (2011)\The Help (2011).mkv, isEligibleForDirectPlay: True, isEligibleForDirectStream: True2016-04-18 20:49:09.4553 Info App: Profile: Unknown Profile, Path: \\JFK\EmbyServer\Movies\DVDs\The Help (2011)\The Help (2011).mkv, isEligibleForDirectPlay: True, isEligibleForDirectStream: True2016-04-18 20:49:09.4553 Debug ProviderManager: Saving /volume1/EmbyServer/Movies/DVDs/The Help (2011)/The Help (2011).mkv to Nfo.2016-04-18 20:49:09.4577 Info HttpServer: HTTP Response 200 to 192.168.236.108. Time: 8ms. http://192.168.236.105:8096/emby/Items/948899ec12dfe6b9f7699611a107fcf1/PlaybackInfo?UserId=0e338bf82b684e2e9601d46c1ec78c68&StartTimeTicks=0

****

e.g. a title showing no media info will attempt to launch the external player, albeit with the {path} being a transcoded source.

 

57153cdc44c09_ext_test3.png

 

e.g. a title with media info, will not do anything with the external player configured for ISO and VIDEO.

 

57153cc5e0d33_ext_test4.png

 

Best

- James

Edited by solabc16
Link to comment
Share on other sites

solabc16

Hello

 

After some more digging, the issues seems a little less clear than this. Launching a batch/command script (i.e. .bat or .cmd) appear to be very unreliable.

 

Running a process monitor, I can see that the cmd.exe is started on only a handful of occasions.

 

As a test, I changed the configuration to simply launch makemkv.exe, which worked with 100% reliability.

 

I then switched it to try and launch a command prompt by configuring the player to 'C:\Windows\System32\cmd.exe', this did not work; the process is never created.

 

How is the external player being launched by ET, are there any restrictions implicit or explicit?

 

No problems testing the same with MB Theatre, the script is launched reliably 100% of the time.

 

- James

Link to comment
Share on other sites

solabc16

Yes, 'Max streaming bitrate' is set to Auto in Playback Settings -> Advanced.

 

With MB Theater (v3.0.5859.23399)I get the expected result reliably, as below...

 

Pass Direct

 

5715486744615_mbt1.png

 

Mount

 

5715494347272_mbt2.png

 

The latter being what I will replicate in the script before launching the external player.

 

- James

Edited by solabc16
Link to comment
Share on other sites

Try it again. I pushed an update. The external player should always direct play now as long as the machine running Emby Theater can directly access the path.

  • Like 1
Link to comment
Share on other sites

soundsnake8

Hi all,
For anyone wanting to use Powerdvd 15 or 16 to playback 3D ISO's, I found a method that works on both of my machines. I put my virtual optical drive (C:\Program Files (x86)\Elaborate Bytes\VirtualCloneDrive\VCDMount.exe) in the player path and the argument {path} only. I changed the association of the ISO's from Virtual Clone Drive to open with Powerdvd 16 and it works just great. I do have to manually hit the play button once Powerdvd pops up. I seems to be fairly fast.

  • Like 1
Link to comment
Share on other sites

solabc16

Evening

 

Luke - which version is this in? I've just loaded up ET and it's still running v2.2.2, which is the version I was running yesterday.

2016-04-19 20:20:52.6885 Info App: Application version: 2.2.2.0
2016-04-19 20:20:55.9115 Info App: Executing Check for application updates
2016-04-19 20:20:55.9425 Info App: HttpClientManager GET: https://api.github.com/repos/MediaBrowser/Emby.Theater.Windows/releases
2016-04-19 20:20:55.9895 Info App: Http POST windowsize
2016-04-19 20:20:57.2436 Debug App: No application update available.
2016-04-19 20:20:57.2436 Info App: Check for application updates Completed after 0 minute(s) and 1 seconds

This is the request/response from a protocol capture when hitting play, the external player isn't launched...

POST http://192.168.236.105:8096/emby/Items/e7b99dcf587d322e6f65a8e77a779ef6/PlaybackInfo?UserId=0e338bf82b684e2e9601d46c1ec78c68&StartTimeTicks=0 HTTP/1.1
Host: 192.168.236.105:8096
Connection: keep-alive
Content-Length: 1041
accept: application/json
x-mediabrowser-token: 4bd17bfd58bb4d76a402e6290cd5cb82
User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) EmbyTheater/2.2.2 Chrome/49.0.2623.75 Electron/0.37.6 Safari/537.36
x-emby-authorization: MediaBrowser Client="Emby Theater", Device="endor", DeviceId="endor", Version="2.2.2", UserId="0e338bf82b684e2e9601d46c1ec78c68"
Origin: http://mediabrowser.github.io
content-type: application/json
Referer: http://mediabrowser.github.io/Emby.Web/index.html?v=1461096697197
Accept-Encoding: gzip, deflate

{"DeviceProfile":{"MaxStreamingBitrate":225882353,"MaxStaticBitrate":100000000,"MusicStreamingTranscodingBitrate":192000,"DirectPlayProfiles":[{"Container":"m4v,3gp,ts,mpegts,mov,xvid,vob,mkv,wmv,asf,ogm,ogv,m2v,avi,mpg,mpeg,mp4,webm,wtv,dvr-ms,iso","Type":"Video"},{"Container":"aac,mp3,mpa,wav,wma,mp2,ogg,oga,webma,ape,opus,flac","Type":"Audio"}],"TranscodingProfiles":[{"Container":"mkv","Type":"Video","AudioCodec":"aac,mp3,ac3","VideoCodec":"h264","Context":"Streaming"},{"Container":"mp3","Type":"Audio","AudioCodec":"mp3","Context":"Streaming","Protocol":"http"}],"ContainerProfiles":[],"CodecProfiles":[],"SubtitleProfiles":[{"Format":"srt","Method":"Embed"},{"Format":"subrip","Method":"Embed"},{"Format":"ass","Method":"Embed"},{"Format":"ssa","Method":"Embed"},{"Format":"pgs","Method":"Embed"},{"Format":"pgssub","Method":"Embed"},{"Format":"dvdsub","Method":"Embed"},{"Format":"vtt","Method":"Embed"},{"Format":"sub","Method":"Embed"},{"Format":"idx","Method":"Embed"},{"Format":"smi","Method":"Embed"}],"ResponseProfiles":[]}}

HTTP/1.1 200 OK
X-UA-Compatible: IE=Edge
X-Frame-Options: SAMEORIGIN
Vary: Accept-Encoding
X-Powered-By: ServiceStack/4.00 Unix/Mono
Access-Control-Allow-Origin: *
Access-Control-Allow-Methods: GET, POST, PUT, DELETE, OPTIONS
Access-Control-Allow-Headers: Content-Type, Authorization, Range, X-MediaBrowser-Token, X-Emby-Authorization
Expires: -1
Server: Mono-HTTPAPI/1.1, UPnP/1.0 DLNADOC/1.50
Content-Type: application/json; charset=utf-8
Date: Tue, 19 Apr 2016 20:16:56 GMT
Content-Length: 882

{"MediaSources":[{"Protocol":"File","Id":"e7b99dcf587d322e6f65a8e77a779ef6","Path":"\\\\JFK\\EmbyServer\\Movies\\BDs\\Alien (1979)\\Alien (1979).iso","Type":"Default","Container":"iso","Name":"ISO","ReadAtNativeFramerate":false,"SupportsTranscoding":true,"SupportsDirectStream":false,"SupportsDirectPlay":false,"RequiresOpening":false,"RequiresClosing":false,"VideoType":"Iso","MediaStreams":[],"PlayableStreamFileNames":[],"Formats":[],"RequiredHttpHeaders":{},"TranscodingUrl":"/videos/e7b99dcf587d322e6f65a8e77a779ef6/stream.mkv?DeviceId=endor&MediaSourceId=e7b99dcf587d322e6f65a8e77a779ef6&VideoCodec=h264&AudioCodec=aac&VideoBitrate=225754353&AudioBitrate=128000&PlaySessionId=6bfd7a1659b74b0f96c877a3ea66c08c&api_key=4bd17bfd58bb4d76a402e6290cd5cb82&CopyTimestamps=false&ForceLiveStream=false","TranscodingContainer":"mkv"}],"PlaySessionId":"6bfd7a1659b74b0f96c877a3ea66c08c"}

- James

Edited by solabc16
Link to comment
Share on other sites

solabc16

I've had a look to see what's going on when launching batch/command scripts, here's what the issue is:-

22:00:17.7478114    cmd.exe    3544    Process Start        SUCCESS    Parent PID: 8992, Command line: C:\Windows\system32\cmd.exe /c "C:\Program Files (x86)\Emby-Theater\EpLaunch.cmd" "\\JFK\EmbyServer\Movies\BDs\Alien (1979)\Alien (1979).iso"

22:00:17.7478193    cmd.exe    3544    Thread Create        SUCCESS    Thread ID: 2892

22:00:17.7798574    cmd.exe    3544    QueryDirectory    C:\Program.*    NO SUCH FILE    Filter: Program.*

22:00:17.7799633    cmd.exe    3544    QueryDirectory    C:\Program    NO SUCH FILE    Filter: Program

The entire parameter passed to /C, which includeds any additional arguements (e.g. in this case {PATH}, needs to be quoted. With this information, the problem can be recreated easily in a command window:-

 

5716a152b4418_cmdexe1.png

 

The command line needs to be constructed as:-

C:\Windows\system32\cmd.exe /C ""C:\Program Files (x86)\Emby-Theater\EpLaunch.cmd" "\\JFK\EmbyServer\Movies\BDs\Alien (1979)\Alien (1979).iso""

As a cross-reference and sanity check, if I ask the OS to execute "C:\Program Files (x86)\Emby-Theater\EpLaunch.cmd" "\\JFK\EmbyServer\Movies\BDs\Alien (1979)\Alien (1979).iso", the OS creates the cmd.exe process automatically as follows with the correct quoting:-

22:49:54.3099615    cmd.exe    2692    Process Start        SUCCESS    Parent PID: 5476, Command line: C:\Windows\system32\cmd.exe /c ""C:\Program Files (x86)\Emby-Theater\EpLaunch.cmd" "\\JFK\EmbyServer\Movies\BDs\Alien (1979)\Alien (1979).iso""

I've tried some kludges to get around this in the external player configuration, but without any luck so far as the quotes are getting escaped in the arguments.

 

- James

Edited by solabc16
Link to comment
Share on other sites

dimitrik

I set my "Display" to Auto and the problem went away and the external player stays in front now. So I'd say it is an ET problem not the PC or OS. 

 

 

I set my display to auto as well, but the external player stays behind the ET interface. The only way to avoid the issue, is to set ET to not run full screen. But of course that defeats the purpose.

 

Anybody else having this issue?

Link to comment
Share on other sites

solabc16

Hi dimitrik

 

I've just had a play with VLC and it worked correctly with ET running windowed and full screen on my system (Win7 x64) - this was with v2.2.2 of ET.

 

Here's the setup I was using for the external player:-

 

5716bcbddd1f1_vlcsetup.png

 

Which external player were you using? If I've got it, I'll test and see what happens here and let you know.

 

- James

  • Like 2
Link to comment
Share on other sites

Della Dog

I set my display to auto as well, but the external player stays behind the ET interface. The only way to avoid the issue, is to set ET to not run full screen. But of course that defeats the purpose.

 

Anybody else having this issue?

Yes, and it's infuriating. I can mount an ISO and load powerdvd but it always returns back to Emby screen hiding the player behind it. Any suggestions @@Luke?

 

Windows 10

Edited by Della Dog
Link to comment
Share on other sites

jscoys

+1 I already mentioned that point. Maybe when the external player's launched Emby could minimize itself? After playback it could mazimize itself? Don't know if it is possible because ET have to monitor the instance of external player...

@@Luke : is implementation of my proposal possible?

Link to comment
Share on other sites

Hi dimitrik

 

I've just had a play with VLC and it worked correctly with ET running windowed and full screen on my system (Win7 x64) - this was with v2.2.2 of ET.

 

Here's the setup I was using for the external player:-

 

5716bcbddd1f1_vlcsetup.png

 

Which external player were you using? If I've got it, I'll test and see what happens here and let you know.

 

- James

 

Well done!

Link to comment
Share on other sites

@@Luke : is implementation of my proposal possible?

 

well before we even worry about that we have to start by not having it take back focus after the external player is launched.

  • Like 1
Link to comment
Share on other sites

i can't reproduce the focus change after a few seconds. But I do see one thing in that when fullscreen, the Theater window is marked as always on top, so that needs to be disabled when the external player opens. currently the external player opens behind theater when in fullscreen. after switching manually, it's all fine from there. in the meantime if the player you're using has an on top argument, then you could try using that.

Link to comment
Share on other sites

soundsnake8

Yes, and it's infuriating. I can mount an ISO and load powerdvd but it always returns back to Emby screen hiding the player behind it. Any suggestions @@Luke?

 

Windows 10

Yes I have the same problem powerdvd behind ET.  As far as setting Powerdvd 16 "always on top" I did that and no improvement ET will not give up focus.  

Link to comment
Share on other sites

Garbonzo17

 I have posted twice about external player for 3D iso's, I am currently using PowerDVD 15. This feature would be a very welcome addition to ET. I am a 3D addict. Right now though EMC is my first choice. I am running Windows 10 and have no problems it seems to run smoother for me than Windows 7.

Link to comment
Share on other sites

solabc16

Morning

 

Any ideas (Luke?) on why ET doesn't create the external process correctly when the external player specificed is a batch script?

 

[see http://emby.media/community/index.php?/topic/31284-external-player-support/?p=323032]

 

I've just run MBT with a process monitor this morning and this confirms that the external player implementation in this version does this correctly.

09:15:11.0533496    cmd.exe    9348    Process Start        SUCCESS    Parent PID: 1260, Command line: C:\Windows\system32\cmd.exe /c ""C:\Program Files (x86)\Emby-Theater\EpLaunch.cmd" "\\JFK\EmbyServer\Movies\DVDs\About a Boy (2002)\About a Boy (2002).iso""

09:15:11.0533594    cmd.exe    9348    Thread Create        SUCCESS    Thread ID: 3220

- James

Link to comment
Share on other sites

solabc16

Yes I have the same problem powerdvd behind ET.  As far as setting Powerdvd 16 "always on top" I did that and no improvement ET will not give up focus.  

 

Morning

 

I just tried PowerDVD 15 here and it behaved as expected, so something else other than or in addition to the 'always on top' setting for the window is at play.

 

Video here https://www.dropbox.com/s/aevm0z3w2zo20qv/powerdvdcinema.mp4?dl=0

 

- James

Link to comment
Share on other sites

jscoys

i can't reproduce the focus change after a few seconds. But I do see one thing in that when fullscreen, the Theater window is marked as always on top, so that needs to be disabled when the external player opens. currently the external player opens behind theater when in fullscreen. after switching manually, it's all fine from there. in the meantime if the player you're using has an on top argument, then you could try using that.

I use Splash 2.0 and always on top is checked in this video player.

When launching it opens behind ET. I have to reduce ET to see the movie...

Link to comment
Share on other sites

Della Dog

Is there something that allows us to "record" or monitor ET events. I ask because for some of us ET must be firing some event after a short period that cases it to be the main focus. PowerDvd will launch on top, and after a short delay, ET presents itself on top - what possible fired event causes this?

Link to comment
Share on other sites

dimitrik

Hi dimitrik

 

I've just had a play with VLC and it worked correctly with ET running windowed and full screen on my system (Win7 x64) - this was with v2.2.2 of ET.

 

Here's the setup I was using for the external player:-

 

5716bcbddd1f1_vlcsetup.png

 

Which external player were you using? If I've got it, I'll test and see what happens here and let you know.

 

- James

 

Thanks James. I'm using MPC-HC configured with MadVR, Full Screen Exclusive mode.

The arguments I'm using are:

{path}

/play

/close

/fullscreen

 

i can't reproduce the focus change after a few seconds. But I do see one thing in that when fullscreen, the Theater window is marked as always on top, so that needs to be disabled when the external player opens. currently the external player opens behind theater when in fullscreen. after switching manually, it's all fine from there. in the meantime if the player you're using has an on top argument, then you could try using that.

 

Sadly MPC HC doesn't have anything like that. It has a /nofocus flag to open in the background only ;-)

However, as it is configured to use FSE with MadVR, it really shouldn't lose focus, but like the other players mentioned, it does.

Link to comment
Share on other sites

ronsws6

Try it again. I pushed an update. The external player should always direct play now as long as the machine running Emby Theater can directly access the path.

This seemed to fix my issues with VLC! Thanks so much!

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...