Jump to content

External player support


jscoys

Recommended Posts

Waw thx! Just to confirm, we just have to use "ms" variable in the command Line?

 

I am not an expert with your external player software. That's something you'll need to research.

Link to comment
Share on other sites

Any way to get powerdvd 16 to force to close like in the old ET everything else is working fine thanks for all the hard work

 

The old app registered a global back/stop button handler to force kill the external player. that's something we can look into in the future.

Link to comment
Share on other sites

solabc16

This is generic external player support, so it doesn't really know anything specific about MPC-HC. If a community member wants to build a plugin for MPC-HC, that would be fantastic because then it can communicate with the MPC web service to record progress and watched data.

 

What I can do is add the start position ms as an available token for the command line. That will at least allow you to resume, but it won't capture your playback progress.

 

Evening - would we consider this a viable starting place https://github.com/MediaBrowser/Emby.Theater.Plugins/tree/master/MediaBrowser.Plugins.MpcHc ?

 

- James

Link to comment
Share on other sites

Evening - would we consider this a viable starting place https://github.com/MediaBrowser/Emby.Theater.Plugins/tree/master/MediaBrowser.Plugins.MpcHc ?

 

- James

 

Yes, definitely. The difference is that you're looking at c#, a plugin for the new app would need to be in javascript. That should actually be even easier though. If you are interested, let me know.

 

Basically you would use the external player plugin as a starting point. You'd modify the config so that all they need to specify is the path to mpc. You can use similar code as external players in order to launch mpc, then you just need to add code to query the mpc web interface during playback so that you can report positioning and other things.

Link to comment
Share on other sites

solabc16

Evening

 

ISO playback via external player has stopped working this evening, looking in the ET logs I see the following, which suggests it is now trying to direct play the file using the internal player.

 

ET is still showing v2.2.4, but I have updated the server to v3.0.5933.0 this evening - so maybe this is a factor.

2016-04-29 20:19:24.7797 Info App: Application version: 2.2.4.0
2016-04-29 20:19:24.8397 Info App: Application configuration:
    {"EnableDebugLevelLogging":true,"EnableAutoUpdate":true,"SystemUpdateLevel":"Release","LogFileRetentionDays":3,"RunAtStartup":false,"IsStartupWizardCompleted":true,"EnableCustomPathSubFolders":false}
2016-04-29 20:19:24.8397 Info App: Loading MediaBrowser.Model, Version=3.0.5867.23148, Culture=neutral, PublicKeyToken=null
2016-04-29 20:19:24.8397 Info App: Loading MediaBrowser.Common, Version=3.0.5867.23147, Culture=neutral, PublicKeyToken=null
2016-04-29 20:19:24.8397 Info App: Loading MediaBrowser.Common.Implementations, Version=3.0.5867.23144, Culture=neutral, PublicKeyToken=null
2016-04-29 20:19:24.8397 Info App: Loading Emby.Theater, Version=2.2.4.0, Culture=neutral, PublicKeyToken=null
2016-04-29 20:19:24.9897 Info App: Core startup complete
2016-04-29 20:19:24.9897 Info App: xxxxxx
2016-04-29 20:19:25.4577 Info App: attempting to load pfx:
2016-04-29 20:19:25.4577 Error App: Secure requested, but no certificate found at:
2016-04-29 20:19:25.5077 Info App: Setting window state to Normal
2016-04-29 20:19:25.5077 Info App: SyncWindowSize Top=160 Left=320 Width=1280 Height=720
2016-04-29 20:19:25.6288 Debug URCOMLoader: URCOMLoader Initialized
2016-04-29 20:19:25.6288 Debug URCOMLoader: EnsureObjects: block: False redownload: False
2016-04-29 20:19:25.6288 Debug URCOMLoader: EnsureObjects needsCheck: False
2016-04-29 20:19:25.6288 Debug URCOMLoader: EnsureObjects needsRestart: False
2016-04-29 20:19:27.9858 Info App: StartupTrigger fired for task: Check for application updates
2016-04-29 20:19:27.9858 Info App: Queueing task SystemUpdateTask
2016-04-29 20:19:27.9858 Info App: Executing Check for application updates
2016-04-29 20:19:28.0548 Info App: HttpClientManager GET: https://api.github.com/repos/MediaBrowser/Emby.Theater.Windows/releases
2016-04-29 20:19:28.7289 Info App: Http POST windowsize
2016-04-29 20:19:29.6419 Debug App: No application update available.
2016-04-29 20:19:29.6419 Info App: Check for application updates Completed after 0 minute(s) and 1 seconds
2016-04-29 20:19:48.7380 Debug App: Exiting HttpConnection.OnReadInternal because nread=0. ConnectionId: 634fddeb89104bdb94f3cd3e96d21764
2016-04-29 20:20:19.0677 Info App: Http POST fileexists
2016-04-29 20:20:19.4218 Info App: Http POST directshowplayer/play
2016-04-29 20:20:19.7188 Info DirectShowPlayerBridge: Playing media source {"Protocol":"File","Id":"c9a17211003f8044638a63cdcfd75f4b","Path":"\\\\JFK\\EmbyServer\\Movies\\DVDs\\About a Boy (2002)\\About a Boy (2002).iso","Type":"Default","Container":"iso","Name":"DVD/480P/MPEG2VIDEO/AC3","RunTimeTicks":58225920000,"ReadAtNativeFramerate":false,"SupportsTranscoding":true,"SupportsDirectStream":false,"SupportsDirectPlay":true,"RequiresOpening":false,"RequiresClosing":false,"VideoType":"Iso","IsoType":"Dvd","MediaStreams":[{"Codec":"mpeg2video","IsInterlaced":false,"BitRate":6868553,"RefFrames":1,"IsDefault":false,"IsForced":false,"Height":576,"Width":720,"AverageFrameRate":25,"RealFrameRate":25,"Profile":"Main","Type":"Video","AspectRatio":"16:9","Index":1,"IsExternal":false,"IsTextSubtitleStream":false,"SupportsExternalStream":false,"PixelFormat":"yuv420p","Level":8,"IsAnamorphic":false},{"Codec":"ac3","IsInterlaced":false,"ChannelLayout":"5.1","BitRate":384000,"Channels":6,"SampleRate":48000,"IsDefault":false,"IsForced":false,"Type":"Audio","Index":2,"IsExternal":false,"IsTextSubtitleStream":false,"SupportsExternalStream":false,"Level":0},{"Codec":"ac3","IsInterlaced":false,"ChannelLayout":"stereo","BitRate":192000,"Channels":2,"SampleRate":48000,"IsDefault":false,"IsForced":false,"Type":"Audio","Index":3,"IsExternal":false,"IsTextSubtitleStream":false,"SupportsExternalStream":false,"Level":0},{"Codec":"dvdsub","IsInterlaced":false,"IsDefault":false,"IsForced":false,"Type":"Subtitle","Index":4,"IsExternal":false,"DeliveryMethod":"Encode","IsTextSubtitleStream":false,"SupportsExternalStream":false,"Level":0},{"Codec":"dvdsub","IsInterlaced":false,"IsDefault":false,"IsForced":false,"Type":"Subtitle","Index":5,"IsExternal":false,"DeliveryMethod":"Encode","IsTextSubtitleStream":false,"SupportsExternalStream":false,"Level":0}],"PlayableStreamFileNames":["vts_01_1.vob","vts_01_2.vob","vts_01_3.vob","vts_01_4.vob","vts_01_5.vob"],"Formats":[],"Bitrate":6868553,"RequiredHttpHeaders":{},"TranscodingUrl":"/videos/c9a17211003f8044638a63cdcfd75f4b/stream.mkv?DeviceId=endor&MediaSourceId=c9a17211003f8044638a63cdcfd75f4b&VideoCodec=h264&AudioCodec=ac3&AudioStreamIndex=2&VideoBitrate=99552000&AudioBitrate=448000&PlaySessionId=01ac59075ec0480886143397eb54e2d4&api_key=4bd17bfd58bb4d76a402e6290cd5cb82&CopyTimestamps=false&ForceLiveStream=false","TranscodingContainer":"mkv","DefaultAudioStreamIndex":2}
2016-04-29 20:20:19.7188 Info InternalDirectShowPlayer: Playing About a Boy. Audio Renderer: Default, Madvr: False, xySubFilter: True, ParentID: 671da55ca58909d214f42d477db8ed84
2016-04-29 20:20:19.7188 Info InternalDirectShowPlayer: Playing Path \\JFK\EmbyServer\Movies\DVDs\About a Boy (2002)\About a Boy (2002).iso
2016-04-29 20:20:19.7188 Debug InternalDirectShowPlayer: IsFullScreen: W: 1280 H: 720 Top: 0 Bottom: 1080 Left: 0 Right: 1920
2016-04-29 20:20:19.7408 Debug InternalDirectShowPlayer: Initializing dvd player to play \\JFK\EmbyServer\Movies\DVDs\About a Boy (2002)\About a Boy (2002).iso
2016-04-29 20:20:19.8248 Error InternalDirectShowPlayer: InvokeOnPlayerThread
    The parameter is incorrect.
    
    System.Runtime.InteropServices.COMException
       at System.Windows.Forms.Control.MarshaledInvoke(Control caller, Delegate method, Object[] args, Boolean synchronous)
       at System.Windows.Forms.Control.Invoke(Delegate method, Object[] args)
       at System.Windows.Forms.Control.Invoke(Delegate method)
       at Emby.Theater.DirectShow.InternalDirectShowPlayer.InvokeOnPlayerThread(Action action, Boolean throwOnError)
    
2016-04-29 20:20:19.8248 Error InternalDirectShowPlayer: Error beginning playback
    The parameter is incorrect.
    
    System.Runtime.InteropServices.COMException
       at Emby.Theater.DirectShow.InternalDirectShowPlayer.InvokeOnPlayerThread(Action action, Boolean throwOnError)
       at Emby.Theater.DirectShow.InternalDirectShowPlayer.PlayTrack(String path, Int64 startPositionTicks, Boolean isVideo, BaseItemDto item, MediaSourceInfo mediaSource, String forcedVideoRenderer)
       at Emby.Theater.DirectShow.InternalDirectShowPlayer.Play(String path, Int64 startPositionTicks, Boolean isVideo, BaseItemDto item, MediaSourceInfo mediaSource, String forcedVideoRenderer)
    

- James

Link to comment
Share on other sites

solabc16

Yes, definitely. The difference is that you're looking at c#, a plugin for the new app would need to be in javascript. That should actually be even easier though. If you are interested, let me know.

 

Basically you would use the external player plugin as a starting point. You'd modify the config so that all they need to specify is the path to mpc. You can use similar code as external players in order to launch mpc, then you just need to add code to query the mpc web interface during playback so that you can report positioning and other things.

 

Ok, sounds good - fine with C# or JavaScript; any references/links you can gives me as a heads-up appreciated.

 

I'll start having a look and getting my head around it over the next couple of days.

 

- James

Link to comment
Share on other sites

solabc16

Waw thx! Just to confirm, we just have to use "ms" variable in the command Line?

 

Hi jscoys, JMGNYC

 

This is the configuration you would need (assumes x64 in this case):-

 

5723c4a3907d0_mpcstartmsconfig.png

 

However, see below...

 

I am not an expert with your external player software. That's something you'll need to research.

 

Hi Luke

 

There appears to be a problem in the way that the arguments are being quoted that prevents this from working...

 

5723c4df6211e_mpcstartmserror.png

 

Which is caused by the quotes around the "/start ms" argument, as seen here...

 

5723c5140b99a_mpcstartmsprocmon.png

"C:\Program Files\MPC-HC\mpc-hc64.exe" "\\JFK\EmbyServer\Movies\DVDs\The Help (2011)\The Help (2011).mkv" "/start 0" /fullscreen /play /close

I had a (admittedly brief) look on GitHub for where the external player implementation resides, but drew a blank. I'll have a look again tomorrow when I start looking into http://emby.media/community/index.php?/topic/31284-external-player-support/?p=325577. I'll see if I can resolve this as a starter http://emby.media/co...pport/?p=323410.

 

EDIT

 

I can see ET loading the following resources, but couldn't locate them doing a quick search of the repository - I'll test my eyes again in the morning.

http://mediabrowser.github.io/Emby.Web/plugins/externalplayer/externalplayer.js?t=1461963147521
http://mediabrowser.github.io/Emby.Web/plugins/externalplayer/externalplayer.html?v=1461963149444

- James

Edited by solabc16
  • Like 1
Link to comment
Share on other sites

GhostRider

Hi

 

Just a quick note to confirm that the external player support works with PowerDVD 15. Many thanks for adding this option to Theater as it will make the migration to Windows 10 so much easier. Looks like the end of WMC for me in the near future.

Link to comment
Share on other sites

Hi

 

Just a quick note to confirm that the external player support works with PowerDVD 15. Many thanks for adding this option to Theater as it will make the migration to Windows 10 so much easier. Looks like the end of WMC for me in the near future.

 

Well done.

Link to comment
Share on other sites

solabc16

Ok, sounds good - fine with C# or JavaScript; any references/links you can gives me as a heads-up appreciated.

 

I'll start having a look and getting my head around it over the next couple of days.

 

- James

 

Morning

 

I've had a read through the Emby docs (e.g. https://github.com/MediaBrowser/Emby/wiki/Playback-Check-ins)and looked at pulling the information needed from the MPC-HC web interface.

 

Still drawing a blank though finding the right repository for ET over at https://github.com/MediaBrowser to read through and understand the approach needed to build this plugin for ET.

 

- James

Link to comment
Share on other sites

Heuer

I have MPC-HC working perfectly as an external player using the arguments detailed above. One small irritation though is that whilst MPC-HC will close at the end of playback, pressing 'stop' on the remote does not return me to ET, Only way to do that is to use the 'exit' key. However Emby for WMC using MPC-HC as an external player does return me after hitting 'stop'. I can't find an argument on Github that will do this - how is it implemented in E4WMC?

Link to comment
Share on other sites

dimitrik

On build 2.2.5, I'm still getting MPC-HC playing in the background always on my HTPC (Win7 x64, Radeon 7850, Catalyst Omega 14.12), while on my desktop (Win 10 x64, Nvidia GTX 660, 365.10 drivers) it works fine.

 

MPC-HC is configured as per the messages earlier in the thread ({path}, /play, /fullscreen, /close)

 

What I've tried so far (nothing's worked):

 

Switching ET's display mode from Auto to TV to desktop and back. 

Changing from MPC-HC x64 to the 32-bit edition

Played around with MPC-HC's internal settings, then reset them.

 

The only thing that works, is not running ET in fullscreen mode; if it only fills in the middle of the screen then the external player maintains the focus. But then again, you do want a 10-foot UI like ET to be full screen while you're using it...

 

Any advice? Is there a new build in the pipeline addressing the issue, maybe by minimizing the ET UI when playback is activated?

Link to comment
Share on other sites

Heuer

Radeon, Catalyst, Win7? I have Win10, x64, GTX650i on my HTPC and MPC-HC works fine with no loss of focus.

Link to comment
Share on other sites

dimitrik

Radeon, Catalyst, Win7? I have Win10, x64, GTX650i on my HTPC and MPC-HC works fine with no loss of focus.

 

Forgive me, but in what way is this relevant or helpful? Did you even read my post?

Link to comment
Share on other sites

Heuer

"I'm still getting MPC-HC playing in the background always on my HTPC (Win7 x64, Radeon 7850, Catalyst Omega 14.12), while on my desktop (Win 10 x64, Nvidia GTX 660, 365.10 drivers) it works fine."

 

Ergo it could be "Win7 x64, Radeon 7850, Catalyst Omega 14.12" if, as you say: "Win 10 x64, Nvidia GTX 660, 365.10 drivers works fine". My own similar setup to your desktop also works fine. Simple problem determination would be to eliminate those items from the system that fails and/or replace them with items that are known to work!

 

Did you even read my post, or indeed what you wrote?

Link to comment
Share on other sites

I have MPC-HC working perfectly as an external player using the arguments detailed above. One small irritation though is that whilst MPC-HC will close at the end of playback, pressing 'stop' on the remote does not return me to ET, Only way to do that is to use the 'exit' key. However Emby for WMC using MPC-HC as an external player does return me after hitting 'stop'. I can't find an argument on Github that will do this - how is it implemented in E4WMC?

 

Emby for WMC has it's own feature to kill the player if you press the stop button. Perhaps we will add that in the future.

Link to comment
Share on other sites

Heuer

Thanks Luke, nice to have sometime in the future but for now the workaround is easy once you know it is there.

Link to comment
Share on other sites

johnecb

Can anybody help me with 3D? I'm feeling like I am being stupid, so I'm sure you'll point it out! I use stereoscopic player for my 3D but I can't get it to work on 3D ONLY. If I tick video files and 3D I get the batch file running for all my movies (they are all mkv with the 3D movies mvc ) with 3D only ticked it never runs my external batch file. The file name has -3D.mvc in it and in meta manager the film I am testing has 'mvc' listed under 3D format.

 

What am I missing?

 

Thanks

Link to comment
Share on other sites

solabc16

On build 2.2.5, I'm still getting MPC-HC playing in the background always on my HTPC (Win7 x64, Radeon 7850, Catalyst Omega 14.12), while on my desktop (Win 10 x64, Nvidia GTX 660, 365.10 drivers) it works fine.

 

MPC-HC is configured as per the messages earlier in the thread ({path}, /play, /fullscreen, /close)

 

What I've tried so far (nothing's worked):

 

Switching ET's display mode from Auto to TV to desktop and back. 

Changing from MPC-HC x64 to the 32-bit edition

Played around with MPC-HC's internal settings, then reset them.

 

The only thing that works, is not running ET in fullscreen mode; if it only fills in the middle of the screen then the external player maintains the focus. But then again, you do want a 10-foot UI like ET to be full screen while you're using it...

 

Any advice? Is there a new build in the pipeline addressing the issue, maybe by minimizing the ET UI when playback is activated?

 

Evening dimitrik

 

My suspicion, given the varying experiences we are seeing, is that the graphics drivers are likely to be playing a role here; it wouldn't be without precedent.

 

My first thought would be, can you update to v16.15.2211 and see if the problem perists?

 

Here's the link - http://support.amd.com/en-us/download/desktop?os=Windows+7+-+64)

 

- James

Link to comment
Share on other sites

dimitrik

"I'm still getting MPC-HC playing in the background always on my HTPC (Win7 x64, Radeon 7850, Catalyst Omega 14.12), while on my desktop (Win 10 x64, Nvidia GTX 660, 365.10 drivers) it works fine."

 

Ergo it could be "Win7 x64, Radeon 7850, Catalyst Omega 14.12" if, as you say: "Win 10 x64, Nvidia GTX 660, 365.10 drivers works fine". My own similar setup to your desktop also works fine. Simple problem determination would be to eliminate those items from the system that fails and/or replace them with items that are known to work!

 

Did you even read my post, or indeed what you wrote?

 

I did. OK, so to be clear: I'm trying to solve the problem on my existing configuration. Changing the hardware or the operating system is not an option. I already know it runs fine on Win10 with nvidia. 

If you were running a similar configuration to me, we would have something to talk about. As it is we don't. But thanks.

 

 

Evening dimitrik

 

My suspicion, given the varying experiences we are seeing, is that the graphics drivers are likely to be playing a role here; it wouldn't be without precedent.

 

My first thought would be, can you update to v16.15.2211 and see if the problem perists?

 

Here's the link - http://support.amd.com/en-us/download/desktop?os=Windows+7+-+64)

 

- James

 

Thanks James I will give that a try. Fingers crossed, though my worry is it may have to do with windows desktop composition which is very different under Win 7 vs Win 10.

Link to comment
Share on other sites

soundsnake8

I am using VCD for player path and {path} to pass to Windows 10 autoplay. I use Powerdvd for 3D ISO's. It works fairly well. My question, is there a way to substitute Pismo file mount for VCD ? The reason I ask is that it works amazingly well in the old Emby Theater and it does not need AnyDVD-HD to play cinavia discs it mounts lightning fast. It is by far my favorite feature in MBT. Great job on the look and feel of the new Emby Theater it has traveled light years since you introduced it just a few months ago.....WAY TO GO !

Link to comment
Share on other sites

you could probably install pismo and learn it's command line. it has changed a little so for us to embed it again in some ways we'd need to learn it all over again. If there's enough uses for it then maybe. So for instance, if it could end up helping games then that makes it more likely.

Link to comment
Share on other sites

solabc16

Yes, definitely. The difference is that you're looking at c#, a plugin for the new app would need to be in javascript. That should actually be even easier though. If you are interested, let me know.

 

Basically you would use the external player plugin as a starting point. You'd modify the config so that all they need to specify is the path to mpc. You can use similar code as external players in order to launch mpc, then you just need to add code to query the mpc web interface during playback so that you can report positioning and other things.

 

Morning @@Luke - following up on this.

 

- James

Link to comment
Share on other sites

solabc16

Morning

 

Here's a workaround for http://emby.media/community/index.php?/topic/31284-external-player-support/?p=325600, with the incorrect quoting of non-path arguments.

 

Put the /start value on a seperate line, perhaps less obvious what's going on at first glance, but gets us going.

 

572b120beb7e8_startms_workaround.png

 

10:24:57.0023235    electron.exe    11720    Process Create    C:\Program Files\MPC-HC\mpc-hc64.exe    SUCCESS    PID: 12148, Command line: "C:\Program Files\MPC-HC\mpc-hc64.exe" "\\JFK\EmbyServer\Movies\DVDs\The Help (2011)\The Help (2011).mkv" /start 0 /fullscreen /play /close
 

- James

Link to comment
Share on other sites

Heuer

I did. OK, so to be clear: I'm trying to solve the problem on my existing configuration. Changing the hardware or the operating system is not an option. I already know it runs fine on Win10 with nvidia. 

If you were running a similar configuration to me, we would have something to talk about. As it is we don't. But thanks.

Just tried putting Emby Theatre on an i5 running Win 7 and it works as designed using the onboard graphics. Then I tried installing a Nvidia 650Ti and Theatre worked correctly so it may well be your GPU or its drivers. Why not try removing/disabling your GPU and see if the problem is gone when using the onbard graphics?

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...