- Revision log -
v1.3 [r159] - 2016-02-07
  • "walkie-talkie" mode ("<BROADCAST>")
    • only works in Local Area Networks;
    • no audio negotiation is carried out;
    • automatically reconnect on network error;
  • P2T activation beep;
  • send "trill" function ("Chat" panel);
  • three-state P2T (push-to-talk): if state = "partially-checked" (blue check-mark) mute audio-output when talking (reduce echoes, only implemented if QT>=5, i.e. just on Android for now);
  • UDP port scanning: with some dirty port scanning ("Port range" field) can eventually punch even a misbehaving mobile-network router!
  • fixed some audio issues (wake up idle audio-input upon push-to-talk;
  • auto restart audio-output when stopped on error);
  • UI improvements/corrections:
    - better connection management through "Line" panel,
    - moved "Log" view to a new specific panel,
    - added easy reachable large P2T button in "Audio" panel,
    - new refresh button for service local ip,
    - new copy button for service local address data,
    - new clear-log and clear-chat buttons,
    - save both UDP ports in history if UDP hole punching on,
    - handle android back button with moveTaskToBack,
    - async DNS queries, STUN keep-alive, etc etc etc).
v1.2 [r125] - 2016-01-21 (Android only)
  • Android Wake Lock (now can also work in the background)!
  • apk signature (uninstall-reinstall v1.1- needed)
  • Log level setting
  • lowered hung-up.wav pitch
  • slightly bigger buttons (based on screen width)
  • bug fixing (invert color default settings on OSX, socket errors etc)

v1.1 [r121] - 2015-09-12
  • UDP punching: with this popular technique no router configuration is neaded on both sides to connect;
  • STUN client: a well-established method to discover your public UDP port numbers;
  • copy/paste full end-point data [IP:port1] (will be auto splitted in text fields);
  • Android Screen Lock: keeps screen on avoiding app going idle;
  • bug fix: play-tones settings dind't save (ViaVoip.data file will be auto-updated);

v1.0 [r106] - 2015-05-09
  • enable outgoing call when receiver started (receiver paused during call, restored on close);
  • remember last receiver status on app start;
  • hang-up tone;
  • play tones configuration for each tone separately;
  • dial volume control (qt >= 5.0, i.e. android | mac os x);
  • startup default settings by platform;
  • multi option history delete (selected | all | all but last per IP);
  • minor ui corrections (history panel buttons icons when inverted-colors[off]);

v0.9 [r98] - 2015-04-25
  • android:
    • fixed file paths: sound files (ringer tones) and data file are now ok;
    • fixed layout metrics: with some abbrev. and a few #ifdef now layout is (almost) ok.
  • linux deployment: for deployment easy on most linux distro, at the moment I decided to stuck to qt4, and stripped away all inessential dependencies (as a side effect for now no ringer/message tones can be played on linux as they relied on NAS (Network Audio System) that cannot be found on most distro). Everything's has been tested succesfully on a Lubuntu fresh install without any additional setup. As soon as I get enough space for a qt5 static build on my HD I'll try to deploy it :)
  • save as (name) in history: all call associated with that ip (starting from the time of the selected row on) will be associated with the specified name;
  • search history by ip or name;
  • history info displayed in incoming call dialog;
  • invert colors;
  • codec status now reflected by level-meter color:
    • green = compression on
    • yellow = compression off
    • red = invalid sampling-rate for selected codec (only for 'opus' codec)
  • pull/push mode also in audio in;
  • settable push timer interval in audio in and out;
  • advanced settings: opus (compression) frame size ms;
  • udp "light-punch": a (just a bit) smarter audio connection, that takes into account peer's NAT assigning a different port number to UDP socket (added also "(local)" field in the "Line" panel to better monitor this);
  • fixed qaudiooutput_alsa_p.cpp: I've slightly modified the qt-4.8.6/src/multimedia/audio/qaudiooutput_alsa_p.cpp source file, that crashed if audio device was stopped for an error;
  • save last public ip in data (if current != saved, alert icon in refresh button)
  • invert_colors
  • NetProbe: to address develop/test/monitor most network related issues, wrote this very *trivial* network test tool -> http://sourceforge.net/projects/netprobe/.

v0.8 [r78] - 2015-04-10
  • welcome opus!
    Build notes:
    Windows: compiled with vc90 (project/properties/general/platform toolset). NB: I had to copy stdint.h from the vc10 to the vc9 include dir)
    Android: qmake build with ndk arm7 toolkit, subversion repository: opus-1.1
  • web helper service
  • traffic counters
  • history
  • audio 'overclocking': the possibility to select unsupported sampling rates and sizes (specifically: that supported by opus codec)
  • fixed bug in audio negotiation (load_settings ignored ack settings)
  • version check
  • fixed an issue in restoring interrupted file transfer (starting at filepos) when the file-receiver was the caller-peer;
  • double buffering audio output: this is a much more effective way to "pour" data from the network stream to the output device.
  • help documentation

v0.7 [r51] - 2015-03-24
  • bit depth audio switch
  • settings management
  • push to talk
  • chat send on enter
  • audio settings negotiation
  • protocol version header in helo + datafile version
  • for future backward compatibility
  • restore last audio (on/off) state when disabling push2talk
  • clear log context menu
  • static build also on linux

v0.6 [r36] - 2015-03-16
  • "push mode" in audio output

v0.5.1 [r30] - 2015-03-16
  • audio output buffer

v0.5 [r29] - 2015-03-14
  • chat message notify
  • html formatted chat view
  • codec and sample-rate settings
  • first linux + android (4.4.2 arm7 + 4.4.2 atom) release

v0.4 [r22] - 2015-03-09
  • inverted filenames: ring-in.waw <-> ring-out.wav.
  • removed wav files from the bin resources (not worth it) and put them in the deploy dir. (so, if you like, you can put your custom sounds, provided file names are keeped identical)

v0.3 [r17] - 2015-03-07
  • incoming call accept dialog
  • ringer tones
  • remember last server status after call finisched

v0.2.1 [r15] - 2015-01-07
  • First published prototype
Copyright © 2015 Attilio Pavone <tilly@utillyty.eu>