← Back to team overview

openlp-core team mailing list archive

[Bug 963955] Re: VLC backend for Mac OS X

 

Default architecture
on universal vlc
python ./vlc.py /Users/brianmeyerdesign/Movies/Annual_Conference_2012_--_Church_of_the_Brethren_by_Enten_El.mp4 
Press q to quit, ? to get help.
[0x1018558f0] main video output error: video output creation failed
[0x100a142f0] main decoder error: failed to create video output
Audio plays

on 32bit vlc
python ./vlc.py /Users/brianmeyerdesign/Movies/Annual_Conference_2012_--_Church_of_the_Brethren_by_Enten_El.mp4 
Traceback (most recent call last):
  File "./vlc.py", line 120, in <module>
    dll, plugin_path  = find_lib()
  File "./vlc.py", line 107, in find_lib
    dll = ctypes.CDLL(p)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/ctypes/__init__.py", line 365, in __init__
    self._handle = _dlopen(self._name, mode)
OSError: dlopen(/Applications/VLC.app/Contents/MacOS/lib/libvlc.dylib, 6): no suitable image found.  Did find:
	/Applications/VLC.app/Contents/MacOS/lib/libvlc.dylib: mach-o, but wrong architecture

32bit architecture ( prefix on command line does this )
on 32bit vlc
arch -i386 /opt/local/bin/python ./vlc.py /Users/brianmeyerdesign/Movies/Annual_Conference_2012_--_Church_of_the_Brethren_by_Enten_El.mp4 
[0xa4ec98] main video output error: video output creation failed
[0x1800098] main decoder error: failed to create video output
Audio plays

on universal vlc
arch -i386 /opt/local/bin/python ./vlc.py /Users/brianmeyerdesign/Movies/Annual_Conference_2012_--_Church_of_the_Brethren_by_Enten_El.mp4 
[0x1803e98] main video output error: video output creation failed
[0x9ece98] main decoder error: failed to create video output
Audio Plays


documents write to set prefs ( no effect, used arch command above instead to test )
defaults write  org.openlp.OpenLP.plist  Prefer-32-Bit -bool yes
defaults write com.apple.versioner.python Prefer-32-Bit -bool yes

determining architecture commands
Meyer:movie-content-editor-read-only brianmeyerdesign$ which python/opt/local/bin/python
Meyer:movie-content-editor-read-only brianmeyerdesign$ file /opt/local/bin/python/opt/local/bin/python: Mach-O universal binary with 2 architectures
/opt/local/bin/python (for architecture x86_64):	Mach-O 64-bit executable x86_64
/opt/local/bin/python (for architecture i386):	Mach-O executable i386


$ arch -i386 /opt/local/bin/python -v ./vlc.py /Users/brianmeyerdesign/Movies/Annual_Conference_2012_--_Church_of_the_Brethren_by_Enten_El.mp4 


This actually is kind of nice way to start the app, shows messages in terminal, running as 32 bit does not affect the issue
$ arch -i386 /Applications/OpenLP.app/Contents/MacOS/OpenLP
Dynamic session lookup supported but failed: launchd did not provide a socket path, verify that org.freedesktop.dbus-session.plist is loaded!
WARNING: bool Phonon::FactoryPrivate::createBackend() phonon backend plugin could not be loaded 
WARNING: bool Phonon::FactoryPrivate::createBackend() phonon backend plugin could not be loaded 
WARNING: bool Phonon::FactoryPrivate::createBackend() phonon backend plugin could not be loaded 
WARNING: bool Phonon::FactoryPrivate::createBackend() phonon backend plugin could not be loaded 
WARNING: bool Phonon::FactoryPrivate::createBackend() phonon backend plugin could not be loaded 
WARNING: bool Phonon::FactoryPrivate::createBackend() phonon backend plugin could not be loaded 
WARNING: Phonon::createPath: Cannot connect  Phonon::MediaObject ( no objectName ) to  Phonon::AudioOutput ( no objectName ). 
[0x11ed098] main video output error: video output creation failed
[0x1270a98] main decoder error: failed to create video output

export QT_PLUGIN_PATH=/Applications/OpenLP.app/Contents/MacOS/
This caused serious errors, conflicts with core libraries which have same function names

Tried this...
http://stackoverflow.com/questions/6149673/class-foo-is-implemented-in-both-myapp-and-myapptestcase-one-of-the-two-will-be

$ export QT_PLUGIN_PATH=/Applications/OpenLP.app/Contents/MacOS/
$ arch -i386 /Applications/OpenLP.app/Contents/MacOS/OpenLP

when i did this, it started to be consistent regardless of vlc version
with openlp as well

http://www.qtcentre.org/threads/15759-Phonon-and-Mac

useful commands
file /Applications/OpenLP.app/Contents/MacOS/OpenLP

-- 
You received this bug notification because you are a member of OpenLP
Core, which is subscribed to OpenLP.
https://bugs.launchpad.net/bugs/963955

Title:
  VLC backend for Mac OS X

Status in OpenLP - Worship Presentation Software:
  Confirmed

Bug description:
  VLC backend does not work on Mac. Instructing OpenLP to use vlc
  backend causes OpenLP to stuck and the application is not responding.

  Video playback starts when not trying reset video playback in openly.
  However the issue is that playback start in an external window and not
  in openly window.

  Getting vlc backend to work is platform specific thing and this needs
  to be implemented specifically for Mac.

  The issue is: Force vlc backend to render video inside a Qt window of
  OpenLP.

  To fi this we will need implement similar code like the following file:
  http://code.google.com/p/movie-content-editor/source/browse/trunk/VLCMacVideo.py

  Technically speaking wrapping native Mac OS X NSView window into class
  QtGui.QMacCocoaViewContainer.

  Links:

  http://groups.google.com/group/wxpython-mac/browse_thread/thread/550a4f93c1e498bd/ec8197dfa78a8201
  http://www.videolan.org/developers/vlc/projects/macosx/framework/Sources/VLCVideoView.m
  https://developer.apple.com/library/mac/#documentation/Cocoa/Reference/ApplicationKit/Classes/nsview_Class/Reference/NSView.html

To manage notifications about this bug go to:
https://bugs.launchpad.net/openlp/+bug/963955/+subscriptions


References