Coder Social home page Coder Social logo

homer-conferencing / homer-conferencing Goto Github PK

View Code? Open in Web Editor NEW
76.0 15.0 53.0 257.24 MB

Homer is a free cross-platform SIP softphone with video support.

Home Page: http://www.homer-conferencing.com

License: GNU General Public License v2.0

CMake 1.40% Makefile 0.08% Perl 0.39% C++ 97.64% Shell 0.05% C 0.44%
video-conferencing homer video-processing streaming real-time capture-screen playback video-recording

homer-conferencing's Introduction

Homer Conferencing software

Homer Conferencing (short: Homer) is a free SIP softphone with advanced audio and video support. The software is available for Windows, Linux and OS X. Homer was originally developed as tool for video conferences. Over the years the functions were extended for additional application areas. Hence, Homer can now be used for the following 4 application areas: video conferencing, streaming, recording, screencasting.

Video conferencing

By the help of Homer, one is able to contact other participants via the conference protocol SIP both in the local and global network. During such a session with other participants, chats as well as audio and video can be exchanged. Homer enables to hear and see the other participant, simultaneously. This is also valid for the opposite direction. Moreover, local audio and video data (files) can be transmitted in real-time to another participant. This function be used, e.g., for broadcasting movies or the local desktop picture. Each participant can send - depending on the software settings - comments and questions to all or single participants. of such a conference. For this kind of conferences an unlimited amount of participants is possible - a server is not needed. For contacting each other one must know solely either the current IP address or the DNS name of each desired participant. Additionally to this central mode, Homer also supports the often used central mode based on a SIP server (pbx box). Independent from the selected mode, Homer can exchange messages as well as audio and video data with each participant.

Streaming

If one wants to show parts of a local video to a participant simultaneously to an already running video conference in order to discuss its content, transmitting of single A/V streams separately has to be possible. For this purpose, Homer enables sending single A/V data in real-time (also without a simultaneously running video conference) via separate transmission channels. Infrastructure is not needed for this application. The remote station can directly receive the data and use it as input for further processing. In general, Homer uses known codecs for transmission for both video (H.261/3/4, HEVC, MPEG1/2/4,..) and audio data (MP3, aLAW, uLAW,..). The applied quality level for the A/V transmission can be adjusted by the help of the GUI. It is possible to transmit A/V stream both with very low and very high quality (e.g. HDTV). The actual possibilities are limited by the used hardware. But the software architecture of Homer is constructed for parallelization of internal processing steps. In order to enable high quality settings, as much as possible of the available CPU cores are used simultaneously.

Homer supports for the transmission of A/V stream basically both IPv4 and IPv6. The protocol version is selected automatically. For the transmission of A/V data, Homer does not only support the classic transport protocols TCP and UDP, but also alternative protocols, e.g., SCTP and UDP-Lite, are supported. The possibilities in this context are limited by the used operating system and the therefore available functions. Additionally to standard application, Homer is also used for experiments by some developers, and it therefore provides in the so called developer/debug mode some extra functions. For example, one can assign additional transmission requirements to an A/V stream. They could include QoS parameters or define that transmitted data has to be delivered to receiver side without any data loss. Homer is able to signal such transmission requirements towards the network. The possible impacts of such extra requirements depend on the used network API and can vary accordingly. Additionally, by the help of the GUI the maximum packet size of an A/V stream can be defined and therefore the behavior during packet creation can be influenced. However, the officially available release versions do not include an explicit support of experiments. The are limited to the standard case, which uses the known Berkeley sockets as interface towards the network. Only the packet size limitation is included and can be used for the optimization of the transmission quality.

Recording

For a delayed insertion of contents or for repeated playback, it is necessary to be able to record A/V streams locally on a hard disc or similar. For this purpose, each single incoming audio and video stream (from a file, from the network, from a device) can be recorded locally to the disc and therefore made available for a delayed post processing. For example, it is possible to capture the video from a webcam in real-time and record it directly to disc or similar. Alternatively, one can use this function to record a per network received A/V stream directly. For video recording known file formats (avi, m4v, mov, mp4, 3gp,..) are supported. Additionally, for audio recording also known file formats (mp3, wav,..) are supported.

Screencasting

For the demonstration of processes on the desktop it would be interesting to be able to either record or to stream via network a live video of the activities on the desktop. For both applications, the needed functions are provided by the software. For example, Homer can be used for recording a screencast or for presenting software processes via a live broadcast of the desktop picture. Like other video sources, the desktop picture can also be used during a video conference and therefore being showed to all participants for discussing in real-time. However, a non wished observation or control of the local desktop by a remote station are not possible.

Minimum system requirements

  • 32/64 bit processor with 2 Ghz (4 cores with 3 Ghz are recommended for high qualitative video streaming), the OS X version can only be used on 64 bit prozessors
  • for Windows: Windows 2003 (Windows 7 recommended, Windows XP is NOT supported)
  • for Linux: Linux kernel 2.6 (Linux kernel >= 3.1 recommended)
  • for Mac Hardware: OS X Lion (OS X Mountain Lion recommended)

The project

Find further information

Contribute to the project

homer-conferencing's People

Contributors

art-udav avatar erazor83 avatar mape2k avatar marionline avatar scimbe avatar thomasvolkert avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

homer-conferencing's Issues

Newbie homer intallation

Hi all..
My name is Diky i am from Indonesia, i would like to ask about homer installation, is there any special thing should i prepared on my PC linux or windows (currently i use Ubuntu 12.04) to make Homer working ?
I have downloaded homer from web, i took linux 32 version .. and i extracted tar bz file to some place, i only saw start and homer files which i can execute.. so i tried to use both files..homer displayed but why my camera didn't work ? eventhough it has been detected, homer only displayed "waiting for data".

Same thing happen in windows, i tried it in XP used both installer and zip version, but camera still not working and also i got some error which tell somehthing about "JIT debugger error "..the only thing i can do with homer untill now is chatting between pc. I have tried to find tutorial in homer's website, but i could not find what i need.. i appreciate your best support, and i'm sorry for my poor english.

Current rev (dl today) not compatible w 10.6.8?

Just downloaded latest version from Sourceforge today, fired it up and got this error message:

Homer-Conferencing cannot be opened because of a problem.
Check with the developer to make sure Homer-Conferencing works with this version of Mac OS X. You may need to reinstall the application. Be sure to install any available updates for the application and Mac OS X.

I'm running OS 10.6.8 (10K549). This might help:

Dyld Error Message:
Symbol not found: _kCFWebServicesProviderDefaultDisplayNameKey
Referenced from: /Applications/Homer-Conferencing.app/Contents/Resources/lib/libQtWebKit.dylib
Expected in: /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation

Should I be installing an older version of Homer-Conferencing? Thanks.

Gentoo ebuilds for Homer-Conferencing in my overlay.

Not quite an issue, but good news for all Gentoo users. :-)

In my Overlay, https://github.com/tkurbad/tkurbad-overlay, there's now an ebuild for Homer-Conferencing available for testing.

To be able to emerge net-voip/homer-conferencing, you have to:

USE="git" emerge layman

Edit /etc/layman/layman.cfg. Under overlays: add the following line:

https://raw.github.com/tkurbad/tkurbad-overlay/master/overlay.xml

Now, enter

layman -a tkurbad

If all went well, you may now

emerge net-voip/homer-conferencing

To install the latest release of Homer.

Additionally, there exists a Gentoo bugreport available here. That's the place where you should show your support, if you'd like to see the ebuild included in Gentoo's official portage tree.

Feel free to discuss any issues with the ebuild(s) via the github issue tracker in my overlay.

Packet loss of audio/video streams

Too many packets are lost on Windows. The Windows core drops UDP packets more often than Linux/ OS X does. At the moment, this problem is avoided on Windows - as far as possible - by a bigger fragment buffer and a bigger socket send/receive buffer per stream.

Use libraries provides from Linux distro

In cmake compile process Homer use static libraries provides from source package. Is it possible to use development libraries provides from a Linux distro (for example)?

General Windows support

The source is mainly developed on Linux and OS X. Before each release the main important aspects of the software are tested on Windows. If errors occur, they are solved in order to reach the stability like on Linux/OS X. Things would improve, if someone concentrates on Windows and develops only for this system.

Whiteboard support (vyew.com)

Hey,

you should add a whiteboard functionality with a PDF-Export function.

At the moment I'm using Skype + Vyew.com which is everything but ideal.

As far as I know there is no free software which combines the functionality of Skype and vyew.

Regards

Markus

make install

There is not a make install target to help the install process of homer-conferencing.

beta test homer version 0.23

Today I discovered this problem during video conferencing with Homer:
(00:23.45) ERROR: Homer::Multimedia::RTP(1219): Packet loss detected (last SN$
(00:26.57) ERROR: Homer::Multimedia::RTP(1219): Packet loss detected (last SN$
(00:59.32) ERROR: Homer::Multimedia::RTP(1219): Packet loss detected (last SN$
(01:50.19) ERROR: Homer::Multimedia::RTP(1219): Packet loss detected (last SN$
(03:00.26) ERROR: Homer::Multimedia::RTP(1219): Packet loss detected (last SN$
(04:26.48) ERROR: Homer::Multimedia::RTP(1219): Packet loss detected (last SN$
terminate called after throwing an instance of 'std::length_error'
what(): basic_string::_S_create
Aborted

Local repo is too much big

The Homer Conferencing source code is just a few MB. The complete repo is really big.
git gc, git prune and git repack should help to cleanup the repository from unnecessary files. Could you check them?

Windows: User Chat Fenster

Version Beta 0.19 unter Windos-7 64bit:

Nach dem schliesen eines Teilnehmerfensters kann dieses nicht wieder durch doppelklick auf den Nutzernamen in der Kontaktliste (oder sonst wie) geöffnet werden ohne Neustart des gesamten Programmes.<

Windows: Fullscreen

Version Beta 0.19 unter Windos-7 64bit:

Fullscreen des Videobildes auf zweitem Monitor nicht möglich<

Application bundle

At the moment only archives are available for OSX. For good usability, OSX applications bundles must be supported by the build system.

error: no matching function for call to 'Homer::Gui::MainWindow::OpenPlaybackDevice()'

Hi Thomas,

while trying to create the promised Gentoo ebuild for Homer, I stumbled upon a build error on my machine:

[ 74%] Building CXX object Homer/bin/CMakeFiles/Homer.dir//src/Widgets/LinkedPixmapLabel.cpp.o
[ 74%] Building CXX object Homer/bin/CMakeFiles/Homer.dir/
/src/Widgets/MessageHistory.cpp.o
/var/tmp/portage/net-voip/homer-conferencing-9999/work/homer-conferencing-9999/Homer/src/MainWindow.cpp: In constructor 'Homer::Gui::MainWindow::MainWindow(QStringList, QString)':
/var/tmp/portage/net-voip/homer-conferencing-9999/work/homer-conferencing-9999/Homer/src/MainWindow.cpp:145:28: error: no matching function for call to 'Homer::Gui::MainWindow::OpenPlaybackDevice()'
/var/tmp/portage/net-voip/homer-conferencing-9999/work/homer-conferencing-9999/Homer/src/MainWindow.cpp:145:28: note: candidate is:
In file included from /var/tmp/portage/net-voip/homer-conferencing-9999/work/homer-conferencing-9999/Homer/bin/../include/Widgets/AudioWidget.h:43:0,
from /var/tmp/portage/net-voip/homer-conferencing-9999/work/homer-conferencing-9999/Homer/bin/../include/MainWindow.h:35,
from /var/tmp/portage/net-voip/homer-conferencing-9999/work/homer-conferencing-9999/Homer/src/MainWindow.cpp:30:
/var/tmp/portage/net-voip/homer-conferencing-9999/work/homer-conferencing-9999/Homer/bin/../include/AudioPlayback.h:46:18: note: virtual void Homer::Gui::AudioPlayback::OpenPlaybackDevice(QString)
/var/tmp/portage/net-voip/homer-conferencing-9999/work/homer-conferencing-9999/Homer/bin/../include/AudioPlayback.h:46:18: note: candidate expects 1 argument, 0 provided
make[3]: *** [Homer/bin/CMakeFiles/Homer.dir/__/src/MainWindow.cpp.o] Error 1
make[3]: *** Waiting for unfinished jobs....
make[2]: *** [Homer/bin/CMakeFiles/Homer.dir/all] Error 2
make[1]: *** [all] Error 2
make: *** [default] Error 2

Can you please have a look, what's wrong here?

Is QT > 4.6 supported (I've got 4.8.3 installed)

Thanks in advance,
Torsten

PS: You should list portaudio as dependency in INSTALL :-)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.