For those having problems with playing videos over the internet

::UPDATE:: There is a better fix posted by two users after this post, I have provided links to each solution based on OS.



For Ubuntu 11.10 : nomnomnom’s post does work (tested for myself too!) ( Link )

For other users : Belgarth’s post may work ( Link )



Please post which OS’s (and versions) you are using and have tested this on, I will keep a list of compatible OS’s on this post.



My post below shows a workaround using an External player, the above fixes actually allow the internal player to work!! Great job guys!



::END UPDATE::



I was having an issue with playing media on local and non-local plex server via the current experimental builds for Ubuntu and did some digging around. I have pasted my log output after my workaround.



During my search I found that you can bypass the internal Plex media player and use an external media player. I chose to use Totem and am now able to watch videos remotely using the Plex client.



Create a file under .plex/userdata called “playercorefactory.xml” and paste the following contents into it.



<playercorefactory><br />
 <players><br />
   <player name="Totem" type="ExternalPlayer" audio="false" video="true"><br />
     <filename>/usr/bin/totem</filename><br />
     <args>"{1}"</args><br />
     <hidexbmc>false</hidexbmc><br />
     <hideconsole>false</hideconsole><br />
     <warpcursor>none</warpcursor><br />
   </player><br />
 </players><br />
 <rules action="prepend"><br />
  <rule video="true" player="Totem"><br />
  </rule><br />
  </rules><br />
</playercorefactory>



Start Plex, now when you choose a file to play it will use the Totem player and pop it up. This is a great work around until the kinks are fixed.


--- ---
**Log Output that helped me determine a workaround**
--- ---
13:33:51 T:2789436272 M: 0% INFO: Plex Server Manager: Running connectivity check.
13:33:51 T:2789436272 M: 0% INFO: Plex Server Manager: There is no worthy server.
13:33:51 T:2789436272 M: 0% INFO: SERVERS:
13:33:51 T:3077830448 M: 0% DEBUG: ------ Window Deinit (DialogContextMenu.xml) ------
13:33:51 T:3077830448 M: 0% DEBUG: new file set audiostream:0
13:33:51 T:3077830448 M: 0% DEBUG: Background music theme changed to:
13:33:51 T:3077830448 M: 0% DEBUG: CPlayerCoreFactory::GetPlayers(http://:32400/library/parts/836/file.avi?X-Plex-Token=)
13:33:51 T:3077830448 M: 0% DEBUG: CPlayerSelectionRule::GetPlayers: considering rule: system rules
13:33:51 T:3077830448 M: 0% DEBUG: CPlayerSelectionRule::GetPlayers: matches rule: system rules
13:33:51 T:3077830448 M: 0% DEBUG: CPlayerSelectionRule::GetPlayers: considering rule: pms
13:33:51 T:3077830448 M: 0% DEBUG: CPlayerSelectionRule::GetPlayers: considering rule: rtv
13:33:51 T:3077830448 M: 0% DEBUG: CPlayerSelectionRule::GetPlayers: considering rule: hdhomerun/myth/rtmp/mms/udp
13:33:51 T:3077830448 M: 0% DEBUG: CPlayerSelectionRule::GetPlayers: considering rule: lastfm/shout
13:33:51 T:3077830448 M: 0% DEBUG: CPlayerSelectionRule::GetPlayers: considering rule: rtsp
13:33:51 T:3077830448 M: 0% DEBUG: CPlayerSelectionRule::GetPlayers: considering rule: streams
13:33:51 T:3077830448 M: 0% DEBUG: CPlayerSelectionRule::GetPlayers: matches rule: streams
13:33:51 T:3077830448 M: 0% DEBUG: CPlayerSelectionRule::GetPlayers: considering rule: flv/aacp/sdp
13:33:51 T:3077830448 M: 0% DEBUG: CPlayerSelectionRule::GetPlayers: considering rule: mp2
13:33:51 T:3077830448 M: 0% DEBUG: CPlayerSelectionRule::GetPlayers: considering rule: dvd
13:33:51 T:3077830448 M: 0% DEBUG: CPlayerSelectionRule::GetPlayers: considering rule: dvdfile
13:33:51 T:3077830448 M: 0% DEBUG: CPlayerSelectionRule::GetPlayers: considering rule: dvdimage
13:33:51 T:3077830448 M: 0% DEBUG: CPlayerSelectionRule::GetPlayers: considering rule: sdp/asf
13:33:51 T:3077830448 M: 0% DEBUG: CPlayerSelectionRule::GetPlayers: considering rule: nsv
13:33:51 T:3077830448 M: 0% DEBUG: CPlayerCoreFactory::GetPlayers: matched 0 rules with players
13:33:51 T:3077830448 M: 0% DEBUG: CPlayerCoreFactory::GetPlayers: adding videodefaultplayer (1)
13:33:51 T:3077830448 M: 0% DEBUG: CPlayerCoreFactory::GetPlayers: for video=1, audio=0
13:33:51 T:3077830448 M: 0% DEBUG: CPlayerCoreFactory::GetPlayers: for video=1, audio=1
13:33:51 T:3077830448 M: 0% DEBUG: CPlayerCoreFactory::GetPlayers: adding player: DVDPlayer (1)
13:33:51 T:3077830448 M: 0% DEBUG: CPlayerCoreFactory::GetPlayers: adding player: PMSPlayer (4)
13:33:51 T:3077830448 M: 0% DEBUG: CPlayerCoreFactory::GetPlayers: added 2 players
13:33:51 T:3077830448 M: 0% NOTICE: DVDPlayer: Opening: http://:32400/library/parts/836/file.avi?X-Plex-Token=
13:33:51 T:3077830448 M: 0% WARNING: CDVDMessageQueue(player)::Put MSGQ_NOT_INITIALIZED
13:33:51 T:3077830448 M: 0% DEBUG: ------ Window Init (DialogBusy.xml) ------
13:33:51 T:3077830448 M: 0% DEBUG: Alloc resources: 0.01ms (0.00 ms skin load)
13:33:51 T:2893851504 M: 0% DEBUG: thread start, auto delete: 0
13:33:51 T:2893851504 M: 0% NOTICE: PlexDirectory::GetDirectory(http://:32400/library/metadata/863?X-Plex-Token=)
13:33:51 T:2692721520 M: 0% DEBUG: thread start, auto delete: 0
13:33:51 T:2692721520 M: 0% DEBUG: FileCurl::Open(0xac7c8fc8) http://:32400/library/metadata/863?X-Plex-Token=
13:33:51 T:2880211824 M: 0% DEBUG: thread start, auto delete: 1
13:33:51 T:2880211824 M: 0% DEBUG: Thread 2880211824 terminating (autodelete)
13:33:51 T:2851072880 M: 0% DEBUG: thread start, auto delete: 1
13:33:51 T:2851072880 M: 0% DEBUG: Thread 2851072880 terminating (autodelete)
13:33:51 T:2692721520 M: 0% DEBUG: FileCurl::Close(0xac7c8fc8) http://:32400/library/metadata/863?X-Plex-Token=
13:33:51 T:2692721520 M: 0% DEBUG: Thread 2692721520 terminating
13:33:51 T:2893851504 M: 0% INFO: Asked to check whether [] is localhost => 0
13:33:51 T:2893851504 M: 0% INFO: Transcode URL for remote content: http://:32400/video/:/transcode/segmented/start.m3u8?url=http%3a%2f%2f127%2e0%2e0%2e1%3a32400%2flibrary%2fparts%2f836%2ffile%2eavi&quality=3&session=01f23c1b-abaf-4fd6-b77e-e651da582c74&X-Plex-Token=&X-Plex-Access-Key=KQMIY6GATPC63AIMC4R2&X-Plex-Access-Time=1324406031&X-Plex-Access-Code=YsYQujFoMA6jvs1l87ZimylR4cgHkhdoCG0gl6C%2Fn1Y%3D
13:33:51 T:2893851504 M: 0% NOTICE: Creating InputStream
13:33:51 T:2893851504 M: 0% DEBUG: CFileCache::Open - opening using cache
13:33:51 T:2893851504 M: 0% DEBUG: FileCurl::Open(0x9ce2a40) http://:32400/video/:/transcode/segmented/start.m3u8?url=http%3a%2f%2f127%2e0%2e0%2e1%3a32400%2flibrary%2fparts%2f836%2ffile%2eavi&quality=3&session=01f23c1b-abaf-4fd6-b77e-e651da582c74&X-Plex-Token=&X-Plex-Access-Key=KQMIY6GATPC63AIMC4R2&X-Plex-Access-Time=1324406031&X-Plex-Access-Code=YsYQujFoMA6jvs1l87ZimylR4cgHkhdoCG0gl6C%2Fn1Y%3D
13:33:51 T:2692721520 M: 0% DEBUG: thread start, auto delete: 0
13:33:51 T:2692721520 M: 0% INFO: CFileCache::Process - Hit eof.
**13:33:51 T:2893851504 M: 0% NOTICE: Creating Demuxer
13:33:51 T:2893851504 M: 0% DEBUG: SECTION:LoadDLL(special://xbmcbin/system/players/dvdplayer/avcodec-52-i486-linux.so)
13:33:51 T:2893851504 M: 0% DEBUG: Loading: /usr/local/lib/xbmc/system/players/dvdplayer/avcodec-52-i486-linux.so
13:33:51 T:2893851504 M: 0% ERROR: Unable to load /usr/local/lib/xbmc/system/players/dvdplayer/avcodec-52-i486-linux.so, reason: /usr/local/lib/xbmc/system/players/dvdplayer/avcodec-52-i486-linux.so: undefined symbol: NeAACDecOpen
13:33:51 T:2893851504 M: 0% ERROR: CDVDDemuxFFmpeg::Open - failed to load ffmpeg libraries
13:33:51 T:2893851504 M: 0% ERROR: OpenDemuxStream - Error creating demuxer
13:33:51 T:2893851504 M: 0% NOTICE: CDVDPlayer::OnExit()**
13:33:51 T:2893851504 M: 0% NOTICE: CDVDPlayer::OnExit() deleting input stream
13:33:51 T:2692721520 M: 0% DEBUG: Thread 2692721520 terminating
13:33:51 T:2893851504 M: 0% DEBUG: FileCurl::Close(0x9ce2a40) http://:32400/video/:/transcode/segmented/start.m3u8?url=http%3a%2f%2f127%2e0%2e0%2e1%3a32400%2flibrary%2fparts%2f836%2ffile%2eavi&quality=3&session=01f23c1b-abaf-4fd6-b77e-e651da582c74&X-Plex-Token=&X-Plex-Access-Key=KQMIY6GATPC63AIMC4R2&X-Plex-Access-Time=1324406031&X-Plex-Access-Code=YsYQujFoMA6jvs1l87ZimylR4cgHkhdoCG0gl6C%2Fn1Y%3D
13:33:51 T:2893851504 M: 0% DEBUG: Thread 2893851504 terminating
13:33:51 T:3077830448 M: 0% DEBUG: CGUIAudioManager::DeInitialize
13:33:53 T:3077830448 M: 0% DEBUG: CAnnouncementManager - Announcement: PlaybackEnded from xbmc
13:33:53 T:3077774192 M: 0% DEBUG: FileCurl::Open(0xb77300bc) http://:32400/:/progress?X-Plex-Token=&key=863&identifier=com.plexapp.plugins.library&time=0&state=stopped
13:33:53 T:3077830448 M: 0% DEBUG: CGUIAudioManager::Initialize
13:33:53 T:3077830448 M: 0% DEBUG: ------ Window Deinit (DialogBusy.xml) ------
13:33:53 T:3077830448 M: 0% NOTICE: CDVDPlayer::CloseFile()
13:33:53 T:3077830448 M: 0% WARNING: CDVDMessageQueue(player)::Put MSGQ_NOT_INITIALIZED
13:33:53 T:3077830448 M: 0% NOTICE: DVDPlayer: waiting for threads to exit
13:33:53 T:3077830448 M: 0% NOTICE: DVDPlayer: finished waiting
13:33:53 T:3077774192 M: 0% DEBUG: FileCurl::Close(0xb77300bc) http://:32400/:/progress?X-Plex-Token=&key=863&identifier=com.plexapp.plugins.library&time=0&state=stopped
13:33:53 T:3077774192 M: 0% NOTICE: Plex Media Server Queue: http://:32400/:/progress?X-Plex-Token=&key=863&identifier=com.plexapp.plugins.library&time=0&state=stopped
13:33:59 T:3077830448 M: 0% INFO: CheckIdle - Closing session to http:// (easy=0xa27ac148, multi=(nil))

I have a similar problem, but with ALL videos. I’ve pointed PMC to an external player, but end up losing all the keyboard/mouse settings since it’s going to another player. I have the exact same error messages showing up in my logs – all I can see is that it’s related to faad, which I have updated and installed dev packages. Any idea what’s going on with this?



Same here, Ubuntu 11.10.

At least it means that the system is working, it as to be a player problem.

Could you use VLC instead of Totem?



Just change the filename and player name to suit what you want to use then make sure the

<args>"{1}"</args>

section fits with the players’ arguments.

This is currently set to pass a quoted URI as the first argument to Totem, if VLC works the same without flags etc you should be good to go.

Another workaround:

add

export LD_PRELOAD="/usr/lib/libfaad.so"

after

export PLEX_HOME="/usr/local/share/xbmc"

inside of /usr/local/bin/pmc




Fixed my playback issues. Thanks!


In order to get this to work in lubuntu 11.10 I had to make a slight change:

**export PLEX_HOME="/usr/local/share/xbmc"
export LD_PRELOAD="/usr/lib/libbz2.so:/usr/lib/libfaad.so"**


Before this I had tried:

export PLEX_HOME="/usr/local/share/xbmc"
export LD_PRELOAD="/usr/lib/libfaad.so"
export LD_PRELOAD="/usr/lib/libbz2.so"

This resulted in the following error:

Unable to load /usr/local/lib/xbmc/system/players/dvdplayer/avcodec-52-i486-linux.so, reason: /usr/local/lib/xbmc/system/players/dvdplayer/avcodec-52-i486-linux.so: undefined symbol: NeAACDecOpen

I then tried loading libbz2 before libfaad like so:

export PLEX_HOME="/usr/local/share/xbmc"
export LD_PRELOAD="/usr/lib/libbz2.so"
export LD_PRELOAD="/usr/lib/libfaad.so"

This changed the error to:

Unable to load /usr/local/lib/xbmc/system/players/dvdplayer/avformat-52-i486-linux.so, reason: /usr/local/lib/xbmc/system/players/dvdplayer/avformat-52-i486-linux.so: undefined symbol: BZ2_bzDecompressInit

Solution inspired by this post:
http://forum.xbmc.org/showthread.php?tid=79278&pid=595109#pid595109

Awesome... fixed my problems in Ubuntu 11.10!! :D

Thank you for sharing that!!

Works with VLC:

<br />
<playercorefactory><br />
 <players><br />
   <player name="VLC" type="ExternalPlayer" audio="false" video="true"><br />
     <filename>/usr/bin/vlc</filename><br />
     <args>"{1}"</args><br />
     <hidexbmc>false</hidexbmc><br />
     <hideconsole>false</hideconsole><br />
     <warpcursor>none</warpcursor><br />
   </player><br />
 </players><br />
 <rules action="prepend"><br />
  <rule video="true" player="VLC"><br />
  </rule><br />
  </rules><br />
</playercorefactory><br />




Thanks for this information about using Totem, very easy to modify to use VLC instead
Now plays all formats using VLC (ubuntu 12.04 desktop)

Hello!



I hope I’m not digging up too much of an old thread here, but…



I’ve been trying to install pmc on my linux box. The one unusual thing about this box is that’s it’s actually an XBMCbuntu install, and I’ve a hunch that might be the problem.



Basically, whether I compile or install from the deb on another thread I get the same result: the install looks perfect, music works, but no video will play. I always get this in the log:



20:21:37 T:2884631408 M: 0%  NOTICE: Creating Demuxer<br />
20:21:37 T:2884631408 M: 0%   DEBUG: SECTION:LoadDLL(special://xbmcbin/system/players/dvdplayer/avcodec-52-i486-linux.so)<br />
20:21:37 T:2884631408 M: 0%   DEBUG: Loading: /usr/local/lib/xbmc/system/players/dvdplayer/avcodec-52-i486-linux.so<br />
20:21:37 T:2884631408 M: 0%   ERROR: Unable to load /usr/local/lib/xbmc/system/players/dvdplayer/avcodec-52-i486-linux.so, reason: /usr/local/lib/xbmc/system/players/dvdplayer/avcodec-52-i486-linux.so: undefined symbol: DtsStopDecoder<br />
20:21:37 T:2884631408 M: 0%   ERROR: CDVDDemuxFFmpeg::Open - failed to load ffmpeg libraries<br />
20:21:37 T:2884631408 M: 0%   ERROR: OpenDemuxStream - Error creating demuxer



now before you point me to the fixes on this thread and elsewhere, I've tried them all. The only one that worked was making the videos launch in VLC, but that fix is no good for me.

If anyone here could find the time to walk me through fixing this problem, I'd be verrryyyy greatful!