# # ChangeLog for /trunk # # Generated by Trac 0.10.4 # 03/29/24 08:03:47 # 02/03/12 03:15:10 jwoithe [2033] * trunk/libffado/src/rme/fireface_settings_ctrls.cpp (modified) * trunk/libffado/src/rme/fireface_settings_ctrls.h (modified) * trunk/libffado/src/rme/rme_avdevice.cpp (modified) * trunk/libffado/src/rme/rme_avdevice.h (modified) * trunk/libffado/src/rme/rme_avdevice_settings.cpp (modified) * trunk/libffado/support/mixer-qt4/ffado/mixer/rme.py (modified) * trunk/libffado/support/mixer-qt4/ffado/mixer/rme.ui (modified) rme: implement SPDIF output option control via ffado-mixer. Again, I haven't the means to confirm whether these settings have the desired effect on the SPDIF bitstream yet. 02/03/12 02:35:02 jwoithe [2032] * trunk/libffado/src/rme/fireface_settings_ctrls.cpp (modified) * trunk/libffado/src/rme/rme_avdevice.cpp (modified) * trunk/libffado/src/rme/rme_avdevice.h (modified) * trunk/libffado/src/rme/rme_avdevice_settings.cpp (modified) * trunk/libffado/support/mixer-qt4/ffado/mixer/rme.py (modified) * trunk/libffado/support/mixer-qt4/ffado/mixer/rme.ui (modified) rme: implement SPDIF input mode selection via ffado-mixer. Whether this has the desired effect on the device remains to be seen - I do not have anything to test the mode of the optical port right now. 02/02/12 04:36:30 jwoithe [2031] * trunk/libffado/support/mixer-qt4/ffado/widgets/matrixmixer.py (modified) matrixmixer: don't allow column headers to expand beyond the size required to fit the text. Otherwise the vertical size of the column headers can be very large in the case where a matrix has only a few rows. 02/02/12 04:19:11 jwoithe [2030] * trunk/libffado/support/mixer-qt4/ffado/widgets/matrixmixer.py (modified) matrixmixer: comment out debug output 02/02/12 04:18:37 jwoithe [2029] * trunk/libffado/support/mixer-qt4/ffado/widgets/matrixmixer.py (modified) matrixmixer: include graphical indicators for mute and invert status. Muted faders are displayed with a dark gray background, while inverted channels have a phi (the universally recognised phase symbol) in the top left corner. 02/02/12 03:33:52 jwoithe [2028] * trunk/libffado/src/rme/fireface_hw.cpp (modified) * trunk/libffado/src/rme/rme_avdevice_settings.cpp (modified) rme: remove mixer debug output which is no longer required 02/02/12 02:38:03 jwoithe [2027] * trunk/libffado/support/mixer-qt4/ffado/mixer/rme.py (modified) rme: add mute/invert controls to playback mixer faders, and mute controls to the output faders 02/02/12 02:23:55 jwoithe [2026] * trunk/libffado/README (modified) Minor updates to MOTU references in README. The official spelling of Traveler uses the US convention (ie: one l). Remove references to the qt3 mixer since that's no longer in trunk. 02/01/12 13:18:59 adi [2025] * trunk/libffado/README (modified) Update requirements in README Patch provided by Stefan Richter. He writes: While libraw1394 v1.3.0 is indeed the minimum build requirement, and v2.0.5 the minimum runtime requirement in absence of the raw1394 kernel driver of kernel 2.6.36 and older, the only realistic requirement today is libraw1394 v2.0.7. The older versions lack bug fixes that are important for use with FFADO. Not sure whether the current libiec61883 v1.2.0 contains anything relevant to FFADO, compared to v1.1.0. 02/01/12 09:24:55 adi [2024] * trunk/libffado/support/tools/ffado-diag.in (modified) ffado-diag: check the juju device IDs and group membership 02/01/12 09:24:44 adi [2023] * trunk/libffado/support/tools/ffado_diag_helpers.py (modified) ffado-diag: helper functions for juju device permissions and group membership 02/01/12 09:24:32 adi [2022] * trunk/libffado/support/tools/ffado_diag_helpers.py (modified) ffado-diag: [cosmetics] remove code duplication 01/30/12 05:02:09 jwoithe [2021] * trunk/libffado/src/rme/fireface_hw.cpp (modified) * trunk/libffado/src/rme/rme_avdevice.cpp (modified) * trunk/libffado/src/rme/rme_avdevice_settings.cpp (modified) * trunk/libffado/support/mixer-qt4/ffado/mixer/rme.py (modified) * trunk/libffado/support/mixer-qt4/ffado/widgets/matrixmixer.py (modified) matrixmixer: complete initial implementation of optional mute functionality. A graphical indication of mute state (beyond the toggled menu item) is still needed. matrixmixer: implement optional phase inversion interface. Again, a graphical indication of this state is still required. rme: make use of the mute/invert functionality of the matrix mixer. Currently this is only connected for the input faders. 01/19/12 10:09:35 adi [2020] * trunk/libffado/.gitignore (deleted) Remove .gitignore. This file is only necessary in the git repository. 01/11/12 00:54:59 jwoithe [2019] * trunk/libffado/src/bebob/bebob_dl_mgr.cpp (modified) * trunk/libffado/src/ffadodevice.cpp (modified) * trunk/libffado/src/fireworks/fireworks_device.cpp (modified) * trunk/libffado/src/libieee1394/IsoHandlerManager.cpp (modified) * trunk/libffado/src/libutil/PosixSharedMemory.cpp (modified) * trunk/libffado/support/dbus/test-dbus.cpp (modified) From Orcan via trac ticket #344. Writes Orcan: It is that time of the year that the gcc folks decide to impose the standards at a higher level. Attached is a trivial patch that will make libffado compile against new gcc. Thanks for the patch Orcan. 12/21/11 14:00:37 jwoithe [2018] * trunk/libffado/support/mixer-qt4/ffado/mixer/saffire.py (modified) Apply fix to mono Saffire mixer as suggested by John Vaites. Logically this seems like the correct thing to do but as I don't have a Saffire I can't test this myself. If this breaks other interfaces please revert and apply something more appropriate. The error this fixes in John's case is "AttributeError: 'SaffireMixerMono' object has no attribute 'sldIN1Out910'". 12/20/11 03:41:58 jwoithe [2017] * trunk/libffado/support/mixer-qt4/ffado/widgets/matrixmixer.py (modified) matrixmixer: more infrastructure to permit control of muting if supported by the hardware 12/19/11 04:17:30 jwoithe [2016] * trunk/libffado/src/rme/fireface_def.h (modified) * trunk/libffado/src/rme/fireface_hw.cpp (modified) * trunk/libffado/src/rme/fireface_settings_ctrls.cpp (modified) * trunk/libffado/src/rme/fireface_settings_ctrls.h (modified) * trunk/libffado/src/rme/rme_avdevice.cpp (modified) * trunk/libffado/src/rme/rme_avdevice.h (modified) * trunk/libffado/src/rme/rme_avdevice_settings.cpp (modified) * trunk/libffado/support/mixer-qt4/ffado/widgets/matrixmixer.py (modified) rme: refine mute hardware mute controls. Add mute support for mixer outputs. Create dbus mixer objects to control channel muting and inversion. matrixmixer: prepare infrastructure to allow channel muting to be controlled if enabled by the caller. 12/09/11 03:33:05 jwoithe [2015] * trunk/libffado/src/motu/motu_avdevice.cpp (modified) * trunk/libffado/support/mixer-qt4/ffado/widgets/matrixmixer.py (modified) motu: more 828mk1 debugging 12/08/11 15:03:59 jwoithe [2014] * trunk/libffado/src/libstreaming/motu/MotuReceiveStreamProcessor.cpp (modified) motu: additional debug output to aid ongoing exploration of the 828mk1 12/06/11 03:34:53 jwoithe [2013] * trunk/libffado/src/motu/motu_avdevice.cpp (modified) * trunk/libffado/support/mixer-qt4/ffado/widgets/matrixmixer.py (modified) motu: fix a typo introduced in r2012 12/06/11 02:34:16 jwoithe [2012] * trunk/libffado/src/motu/motu_avdevice.cpp (modified) motu: allocate the send iso channel before the receive channel to see if the 828mk1 - as currently set up - is sensitive to the precise channels allocated. If an 828mk1 is in use, show the iso control register value as read from the device for debug purposes. 12/05/11 04:19:21 jwoithe [2011] * trunk/libffado/src/motu/motu_avdevice.cpp (modified) * trunk/libffado/src/rme/fireface_settings_ctrls.cpp (modified) * trunk/libffado/support/mixer-qt4/ffado/mixer/rme.py (modified) * trunk/libffado/support/mixer-qt4/ffado/mixer/rme.ui (modified) rme: implement the output fader controls in ffado-mixer. There's still some work to do on sizing and labelling but the basic fader functionality is there. 12/05/11 04:03:40 jwoithe [2010] * trunk/libffado/support/mixer-qt4/ffado/widgets/matrixmixer.py (modified) matrixmixer GUI: was there any reason why the column count was used as the number of rows, and vice versa? This has been fixed, subject to feedback from others. 12/02/11 04:34:58 jwoithe [2009] * trunk/libffado/src/motu/motu_avdevice.cpp (modified) * trunk/libffado/src/motu/motu_avdevice.h (modified) MOTU: fix G1 monitor-in control bit defines (what *was* I thinking when I coded those the first time around?). Clarify the registers used with various G1 defines in the header file. At present the original 828 streams successfully but the physical inputs and outputs are muted; enable an additional 2 control register bits when streaming is started to see if the device is unmuted by these. 11/22/11 04:21:59 jwoithe [2008] * trunk/libffado/src/rme/fireface_def.h (modified) * trunk/libffado/src/rme/fireface_hw.cpp (modified) * trunk/libffado/src/rme/fireface_settings_ctrls.cpp (modified) * trunk/libffado/src/rme/rme_avdevice.h (modified) * trunk/libffado/src/rme/rme_avdevice_settings.cpp (modified) * trunk/libffado/support/mixer-qt4/ffado/mixer/rme.py (modified) * trunk/libffado/support/mixer-qt4/ffado/mixer/rme.ui (modified) rme: refine input matrix mixer channel names. Add low level support for mixer channel phase inversion and muting (untested). Add playback mixer to RME ffado-mixer. 11/22/11 01:37:38 jwoithe [2007] * trunk/libffado/support/mixer-qt4/ffado/widgets/matrixmixer.py (modified) matrixmixer widget: label channels starting at channel 1 rather than 0, since this almost certainly corresponds better with channel labels used on almost all interfaces. If there's a problem let me know. 11/21/11 04:26:26 jwoithe [2006] * trunk/libffado/src/rme/fireface_settings_ctrls.cpp (modified) * trunk/libffado/support/mixer-qt4/ffado/mixer/rme.py (modified) * trunk/libffado/support/mixer-qt4/ffado/mixer/rme.ui (modified) * trunk/libffado/support/mixer-qt4/ffado/widgets/matrixmixer.py (modified) * rme: implement a first cut at the input matrix mixer. This permits inputs to be mixed to outputs directly in the device for latency-free monitoring applications. The playback matrix mixer and output fader controls will follow soon now this initial proof-of-concept is done. * matrixmixer: added new optional parameter to the this widget's constructor allowing the control maximums to be set. If not given the default is 65536/+12dB as before. 11/20/11 03:25:56 jwoithe [2005] * trunk/libffado/src/rme/rme_avdevice.cpp (modified) * trunk/libffado/support/mixer-qt4/ffado/mixer/rme.py (modified) rme: initial experiments to hook the MatrixMixer widget into the RME ffado-mixer module. More to be done. 11/18/11 04:28:04 jwoithe [2004] * trunk/libffado/src/rme/fireface_def.h (modified) * trunk/libffado/src/rme/fireface_hw.cpp (modified) * trunk/libffado/src/rme/fireface_settings_ctrls.cpp (modified) * trunk/libffado/src/rme/rme_avdevice.cpp (modified) * trunk/libffado/src/rme/rme_avdevice.h (modified) * trunk/libffado/src/rme/rme_avdevice_settings.cpp (modified) rme: complete mixer glue code. Create dbus controls for the onboard matrix mixer (these will ultimately be used by ffado-mixer). 11/17/11 03:54:44 jwoithe [2003] * trunk/libffado/src/rme/fireface_settings_ctrls.cpp (modified) * trunk/libffado/src/rme/fireface_settings_ctrls.h (modified) * trunk/libffado/src/rme/rme_avdevice.h (modified) * trunk/libffado/src/rme/rme_avdevice_settings.cpp (modified) rme: implement some glue needed to make mixer controls available via ffado-mixer 11/07/11 05:08:55 jwoithe [2002] * trunk/libffado/configuration (modified) Add configuration entry for Presonus Firestudio Mobile. Thanks to "Pule" for the forum post with this information. 11/04/11 04:21:08 jwoithe [2001] * trunk/libffado/src/motu/motu_avdevice.cpp (modified) motu: add debugging output to assist in tracking down issues with the 828mk1 10/29/11 14:39:24 adi [2000] * trunk/libffado/src/libstreaming/amdtp/AmdtpReceiveStreamProcessor.cpp (modified) Fix copy&paste error in debug message. 10/10/11 00:10:52 adi [1999] * trunk/libffado/src/debugmodule/debugmodule.cpp (modified) * trunk/libffado/src/debugmodule/debugmodule.h (modified) Fix segfault upon termination. Kudos to David Henningsson for the patch. Closes: #329 10/05/11 12:07:21 adi [1998] * trunk/libffado/src/libstreaming/StreamProcessorManager.cpp (modified) Fix spelling mistake "usefull" 10/05/11 12:04:39 adi [1997] * trunk/libffado/src/bebob/bebob_avplug.cpp (modified) * trunk/libffado/src/libavc/general/avc_unit.cpp (modified) Fix spelling mistake "connnection" 10/05/11 12:02:51 adi [1996] * trunk/libffado/src/SConscript (modified) Set compiler define when using EXPAT. 09/12/11 17:22:20 jwoithe [1995] * trunk/libffado/src/libieee1394/IsoHandlerManager.cpp (modified) Ensure the IsoHandler disable lock is initialised regardless of which constructor is called. Its omission from these was a big oversight of mine in r1985, and probably explains the ongoing problems noted by various people in issue 306 after r1985 was committed. A big thanks to Holger Dehnhardt for lending his eyes to the problem and spotting my silly obvious error. 09/12/11 16:05:55 jwoithe [1994] * trunk/libffado/configuration (modified) Add configuration entry for Phonic HelixBoard 24 Universal, provided by Steffen Klein. With this entry this device is reported by Steffen to "work flawlessly". 09/04/11 05:03:42 jwoithe [1993] * trunk/libffado/src/libstreaming/rme/RmeTransmitStreamProcessor.cpp (modified) * trunk/libffado/src/rme/fireface_flash.cpp (modified) * trunk/libffado/src/rme/fireface_hw.cpp (modified) * trunk/libffado/src/rme/rme_avdevice.cpp (modified) rme: clean up debug output by replacing "temporary" printf() calls with debugOutput(). Remove unnecessary register reads used during early stages of development. 08/18/11 05:29:54 jwoithe [1992] * trunk/libffado/src/rme/fireface_hw.cpp (modified) rme: removal of commented out tests which are no longer required. 08/09/11 22:44:17 jwoithe [1991] * trunk/libffado/configuration (modified) Add configuration info for Presonus StudioLive 16.4.2, thanks to Johan Landman 07/28/11 08:24:17 adi [1990] * trunk/libffado/.gitignore (added) git: Ignore autogenerated files. 07/28/11 08:24:08 adi [1989] * trunk/libffado/tests/SConscript (modified) Enable unmute-ozonic in tests/SConscript 07/28/11 08:23:59 adi [1988] * trunk/libffado/tests/unmute-ozonic.cpp (added) Add utility to unmute M-Audio Ozonic Patch provided by Mark Brand (orania). Re: #341 07/28/11 08:23:50 adi [1987] * trunk/libffado/support/mixer-qt4/ffado/mixer/ozonic.py (added) * trunk/libffado/support/mixer-qt4/ffado/mixer/ozonic.ui (added) Add mixer for M-Audio Ozonic Patch provided by Mark Brand (orania). Re: #341 07/28/11 08:23:38 adi [1986] * trunk/libffado/configuration (modified) Add configuration entry for M-Audio Ozonic Patch provided by Mark Brand (orania). Re: #341 05/22/11 05:52:01 jwoithe [1985] * trunk/libffado/src/libieee1394/IsoHandlerManager.cpp (modified) * trunk/libffado/src/libieee1394/IsoHandlerManager.h (modified) Fix double-free on exit under the new firewire stack. It seems that with the new kernel firewire stack, raw1394_destroy_handle() can take upwards of 20 milliseconds(!) to return. Therefore the IsoHandler's disable() call invoked by the IsoTask (FW_ISORCV or FW_ISOXMT) may not have completed before the "jackd" thread calls ~IsoHandler(). ~IsoHandler() thus infers that the handler is still running and calls disable() itself. The practical upshot is that raw1394_destroy_handle() gets called on the same object twice, and a double-free results. The fix I've implemented is a touch crude, but it appears to work. A mutex is introduced to track the progress of disable(), and this is checked by ~IsoHandler() before the state of the handler is tested. Any in-progress disable() call is allowed to complete before ~IsoHandler() tests the state. This prevents the second call of raw1394_destroy_handle() and therefore the double-free cannot occur. Perhaps as a result of the delays caused by raw1394_destroy_handle(), it seems the handler list can be altered by other threads while updateShadowMapHelper() (called by the IsoTask threads) is running. A crude test has been added to this function to prevent out-of-range exceptions in most cases. None of this is particularly elegant but it should work around the double-free issue for the moment. The correct approach is to work out precisely why these concurrency issues are occuring and fix them. However, given that all this will be obsoleted by the in-kernel streaming work at some point in the future, it's arguable that the solution in this patch is sufficient in practice. 05/16/11 03:59:13 jwoithe [1984] * trunk/libffado/src/motu/motu_avdevice.cpp (modified) * trunk/libffado/src/motu/motu_avdevice.h (modified) MOTU: tweaks to streaming startup on G1 devices to see if there's a trick to getting audio out of the physical outputs. 04/17/11 06:30:58 jwoithe [1983] * trunk/libffado/src/libstreaming/rme/RmeReceiveStreamProcessor.cpp (modified) * trunk/libffado/src/libstreaming/rme/RmeReceiveStreamProcessor.h (modified) * trunk/libffado/src/libstreaming/rme/RmeTransmitStreamProcessor.cpp (modified) RME: big cleanup of streaming code, removing old debug tests and so on. At least in theory the driver is now ready for wider testing. 04/16/11 08:04:18 jwoithe [1982] * trunk/libffado/src/libstreaming/rme/RmeReceiveStreamProcessor.cpp (modified) RME: tweaks to timing synthesis to improve stability of operation at 44.1k. 04/16/11 07:41:26 jwoithe [1981] * trunk/libffado/src/libutil/TimestampedBuffer.cpp (modified) When calculating the difference signal in the receive DLL, allow the actual and predicted timestamps to wrap at slightly different times. For most interfaces, the chances of hitting a problem without this allowance is extremely small since the DLL tracks the incoming timestamp tightly. However for RME devices the difference is grossly miscalculated at every wraparound without this fix due to the way the timestamp is synthesised for these devices. 04/14/11 05:54:02 jwoithe [1980] * trunk/libffado/src/rme/rme_avdevice.cpp (modified) RME: make the bandwidth limit have the desired effect on the channels created. Note that there is presently a separate issue at 2x rates which is yet to be worked through (it's associated with the full channel list we now have). 04/08/11 10:07:21 adi [1979] * trunk/libffado/src/libstreaming/amdtp/AmdtpReceiveStreamProcessor.h (modified) [cosmetics] Fix compiler warning By moving mb_head's and mb_tail's declaration further down, a compiler warning about initialization order can be avoided. 04/08/11 09:59:54 adi [1978] * trunk/libffado/src/libstreaming/amdtp/AmdtpReceiveStreamProcessor.cpp (modified) [cosmetics] Replace AND mask by modulo operation. The assembler output is the same, so let's not complicate things by using bitmasks together with negations. 04/08/11 09:50:33 adi [1977] * trunk/libffado/src/libstreaming/amdtp/AmdtpReceiveStreamProcessor.cpp (modified) More unlikely() in midi decoding. We don't expect any 2X/3X data to be present, hence it's utterly unlikely to hit this branch. Let's give a hint to the compiler so he can properly optimize. 04/08/11 08:39:07 adi [1976] * trunk/libffado/src/libstreaming/amdtp/AmdtpReceiveStreamProcessor.cpp (modified) Remove just another leftover printf statement 04/08/11 08:32:56 adi [1975] * trunk/libffado/src/libstreaming/amdtp/AmdtpReceiveStreamProcessor.cpp (modified) Fix leftover printf statement. 04/08/11 08:31:11 adi [1974] * trunk/libffado/src/libstreaming/amdtp/AmdtpReceiveStreamProcessor.cpp (modified) [cosmetics] Code beautification, no semantic change. 04/08/11 08:27:05 adi [1973] * trunk/libffado/src/libstreaming/amdtp/AmdtpReceiveStreamProcessor.cpp (modified) * trunk/libffado/src/libstreaming/amdtp/AmdtpReceiveStreamProcessor.h (modified) Fix MIDI receive on DICE (Re: #330) Code more or less copied from MOTU. It seems MIDI bytes in the input buffer might occur at all locations, not just 8-sample-aligned, so we'll have to step through each incoming quadlet and see if it's MIDI. On the jackd side, we'll have to obey the 8-sample-alignment rule. An upcoming patch will indent the code, just for reviewing, I decided to have no whitespace fixes. 04/05/11 05:48:58 jwoithe [1972] * trunk/libffado/src/libstreaming/generic/StreamProcessor.cpp (modified) * trunk/libffado/src/libstreaming/generic/StreamProcessor.h (modified) * trunk/libffado/src/libstreaming/rme/RmeReceiveStreamProcessor.cpp (modified) * trunk/libffado/src/libstreaming/rme/RmeTransmitStreamProcessor.cpp (modified) * trunk/libffado/src/libstreaming/StreamProcessorManager.cpp (modified) * trunk/libffado/src/libstreaming/StreamProcessorManager.h (modified) * trunk/libffado/src/libutil/TimestampedBuffer.cpp (modified) * trunk/libffado/src/libutil/TimestampedBuffer.h (modified) - Parameterise selected low-level error detection thresholds. The default values are those which have been used up to now, so no functional changes should result from this. - RME: attempt to use the main DLL without a smoothing DLL in front of it since this may track the current timestamp better. Broaden various lower level error thresholds of RME objects accordingly. Testing continues. 04/03/11 06:50:41 adi [1971] * trunk/libffado/src/libutil/PosixThread.cpp (modified) Set fThread to 0 instead of NULL fThread is of type pthread_t which is unsigned long int, at least according to /usr/include/bits/pthreadtypes.h. This commit fixes a compiler warning: src/libutil/PosixThread.cpp:199:19: warning: converting to non- pointer type 'pthread_t' from NULL 04/03/11 06:44:45 adi [1970] * trunk/libffado/src/libieee1394/IsoHandlerManager.cpp (modified) Fix compiler warning When the default branch in the switch-case statement is taken, receive_mode would be uninitialised. src/libieee1394/IsoHandlerManager.cpp:754:40: warning: 'receive_mode' may be used uninitialized in this functio Let's at least assign something to it. 04/03/11 06:41:02 adi [1969] * trunk/libffado/src/bebob/focusrite/focusrite_saffirepro.cpp (modified) Remove duplicate code. When compiling, this line caused a warning: src/bebob/focusrite/focusrite_saffirepro.cpp:1163:16: warning: converting 'false' to pointer type Obviously, the default branch in the switch-case statement does everything, so the code in question looks like a leftover. 03/22/11 05:14:39 jwoithe [1968] * trunk/libffado/src/rme/rme_avdevice.cpp (modified) RME: first pass at creating ports for all audio channels. Copyright year addition. 03/21/11 05:43:06 jwoithe [1967] * trunk/libffado/config.h.in (modified) * trunk/libffado/src/libstreaming/rme/RmeReceiveStreamProcessor.cpp (modified) RME: more streaming stability fixes. Further extended testing is needed across all sample rates, but initial indications are that the streaming system is finally approaching a state of stability. 03/19/11 06:53:42 jwoithe [1966] * trunk/libffado/src/libstreaming/rme/RmeReceiveStreamProcessor.cpp (modified) * trunk/libffado/src/libstreaming/rme/RmeTransmitStreamProcessor.cpp (modified) RME: more work on improving robustness of streaming. 48k and 192k seem to work reasonably reliably now. 96k can take some time to stabilise but seems good once this has occurred. 44.1k still has issues, most of which are still to be investigated. 03/11/11 07:32:51 jwoithe [1965] * trunk/libffado/src/libstreaming/generic/StreamProcessor.cpp (modified) * trunk/libffado/src/libstreaming/rme/RmeReceiveStreamProcessor.cpp (modified) * trunk/libffado/src/libstreaming/rme/RmeTransmitStreamProcessor.cpp (modified) - RME: further tweaks to the streaming system to make it more reliable (finally some progress is being made). - Generic: reset timestamps in StreamProcessor::doDryRunning() in case the stream processor has previously been running (eg: before an xrun). Timestamps acquired during a previous run won't apply once the processor starts again. This change makes sense to me and helps xrun recovery on RME devices but there may be subtleties I don't see - so please double check the reasoning and behaviour with other interfaces. 03/04/11 04:57:40 jwoithe [1964] * trunk/libffado/src/digidesign/digidesign_avdevice.cpp (modified) * trunk/libffado/src/digidesign/digidesign_avdevice.h (modified) * trunk/libffado/src/libstreaming/digidesign/DigidesignReceiveStreamProcessor.cpp (modified) * trunk/libffado/src/libstreaming/digidesign/DigidesignTransmitStreamProcessor.cpp (modified) digidesign: fix bug identified by compile-testing the new skeleton driver 03/04/11 04:40:38 jwoithe [1963] * trunk/libffado/SConstruct (modified) * trunk/libffado/src/SConscript (modified) digidesign: integrate into build system 03/04/11 04:31:36 jwoithe [1962] * trunk/libffado/config.h.in (modified) digidesign: add configuration options for the skeleton digidesign driver 03/04/11 04:29:41 jwoithe [1961] * trunk/libffado/src/libstreaming/digidesign (added) * trunk/libffado/src/libstreaming/digidesign/DigidesignPort.cpp (added) * trunk/libffado/src/libstreaming/digidesign/DigidesignPort.h (added) * trunk/libffado/src/libstreaming/digidesign/DigidesignPortInfo.cpp (added) * trunk/libffado/src/libstreaming/digidesign/DigidesignPortInfo.h (added) * trunk/libffado/src/libstreaming/digidesign/DigidesignReceiveStreamProcessor.cpp (added) * trunk/libffado/src/libstreaming/digidesign/DigidesignReceiveStreamProcessor.h (added) * trunk/libffado/src/libstreaming/digidesign/DigidesignTransmitStreamProcessor.cpp (added) * trunk/libffado/src/libstreaming/digidesign/DigidesignTransmitStreamProcessor.h (added) digidesign: further foundational work for the digidesign driver skeleton. This revision adds in the streaming-related objects. Coming next will be integration of this new driver into the build system and compile-testing. 03/03/11 11:06:05 arnonym [1960] * trunk/libffado/support/mixer-qt4/ffado/mixer/generic_dice_eap.py (modified) Rename the tabs of the generic dice mixer to make it a bit more clear which one provides the mixer and which is the router. 03/03/11 04:21:40 jwoithe [1959] * trunk/libffado/src/digidesign (added) * trunk/libffado/src/digidesign/digidesign_avdevice.cpp (added) * trunk/libffado/src/digidesign/digidesign_avdevice.h (added) * trunk/libffado/src/libutil/Configuration.h (modified) digidesign: the incomplete beginnings of a skeleton driver for Digidesign interfaces. This revision includes the base-level device object. Skeleton port and streaming objects will follow when they're ready, as will the addition of this new driver into the build system. 02/25/11 01:48:51 adi [1958] * trunk/libffado/src/libstreaming/amdtp/AmdtpTransmitStreamProcessor.cpp (modified) Fix garbage in transmitted CIP headers Patch by Clemens Ladisch. TNX. 02/22/11 01:32:41 adi [1957] * trunk/libffado/configuration (modified) Remove 'U' from Onyx configuration entry According to Holger, 'U' is causing a parse error. 02/16/11 13:23:09 adi [1956] * trunk/libffado/configuration (modified) Fix Onyx-i series. It was broken after r1945 (and maybe also r1950), but according to Holger Dehnhardt, overriding the transfer delay make it work again. 02/16/11 01:11:42 adi [1955] * trunk/libffado/src/dice/dice_eap.cpp (modified) Make missing EAP a warning instead of an error. Closes: #322 02/11/11 03:05:32 jwoithe [1954] * trunk/libffado/configuration (modified) Add configuration entry for the TC Electronic Studio Konnekt 48 device. Thanks to "Juanramon" for the information. 02/10/11 06:33:51 jwoithe [1953] * trunk/libffado/src/libstreaming/rme/RmeReceiveStreamProcessor.cpp (modified) RME: more testing to get reliable timestamp synthesis. 02/10/11 04:06:06 adi [1952] * trunk/libffado/src/libstreaming/amdtp/AmdtpReceiveStreamProcessor.cpp (modified) Allow Echo Audiofire Pre8 to work above 48kHz Patch provided by Euan in ticket #310. Confirmed to work on my Alesis io14 (DICE). If it breaks other devices, we might need to revert the change. 02/02/11 14:51:32 arnonym [1951] * trunk/libffado/support/dbus/SConscript (modified) Print a message when the dbus service file can not be installed... 01/27/11 01:22:25 adi [1950] * trunk/libffado/config.h.in (modified) Fix AMDTP_TRANSMIT_TRANSFER_DELAY As pointed out bx Clemens Ladisch in #321, we had 125us too much. 01/23/11 01:53:26 adi [1949] * trunk/libffado/src/libavc/general/avc_plug.cpp (modified) * trunk/libffado/src/libavc/general/avc_plug.h (modified) Fix MIDI channel detection on Echo AF series Patch provided in #233 01/16/11 09:01:31 adi [1948] * trunk/libffado/tests/test-ffado.cpp (modified) Fix ListDevices on Juju stack Patch by Stefan Richter. He writes: The fix is straightforward: Let ListDevices continue at the next node ID when the configuration ROM of a lower node could not be fetched or parsed successfully. 01/14/11 07:53:13 adi [1947] * trunk/libffado/src/libstreaming/generic/StreamProcessor.h (modified) Fix typo. 01/14/11 06:28:09 adi [1946] * trunk/libffado/src/libavc/general/avc_plug.cpp (modified) Finally enable Mackie Onyx i series. The previous commit did all the infrastructure work, this is a small quirk required only for the Mackie. Since I don't have devices at hand to test, this commit might well break other things. If so, revert it and special case for onyx. 01/14/11 06:17:19 adi [1945] * trunk/libffado/configuration (modified) * trunk/libffado/src/libstreaming/amdtp-oxford/AmdtpOxfordReceiveStreamProcessor.cpp (modified) * trunk/libffado/src/libstreaming/generic/StreamProcessor.h (modified) Infrastructure for Mackie Onyx i. Original patch provided by Holger Dehnhardt. Note that this commit alone isn't sufficient to make the Onyx work. The next commit to avc_plug.cpp will be required, but I wanted to separate commits just in case the next one breaks something. 12/31/10 09:02:29 adi [1944] * trunk/libffado/support/xdg/ffado.org-ffadomixer.desktop (modified) Add Russian translation to desktop file Thanks to prokoudine for providing the updated file Re: #316 Closes: #316 12/20/10 05:39:11 jwoithe [1943] * trunk/libffado/src/libieee1394/IsoHandlerManager.cpp (modified) * trunk/libffado/src/libieee1394/IsoHandlerManager.h (modified) * trunk/libffado/src/libstreaming/rme/RmeReceiveStreamProcessor.cpp (modified) * trunk/libffado/src/libstreaming/rme/RmeTransmitStreamProcessor.cpp (modified) RME: fix for lengthy startup delay which prevented reliable startup in approximately 20% attempts. This may not be the approach adopted long-term since there seems to be something amiss with the way iso handlers are started in general (in short, the start cycle - m_switch_on_cycle in IsoHandler - is never set to anything other than zero). 12/14/10 13:32:48 arnonym [1942] * trunk/libffado/configuration (modified) Add preliminary support for the saffire pro14. The extended mixer is not enabled yet, that needs work inside libffado. But the generic dice-stuff should just work. Of course it will show a to high number of channels in the router... 12/13/10 06:31:30 jwoithe [1941] * trunk/libffado/src/libstreaming/rme/RmeReceiveStreamProcessor.cpp (modified) * trunk/libffado/src/libstreaming/rme/RmeTransmitStreamProcessor.cpp (modified) RME: more debugging of streaming system. 12/10/10 04:40:57 jwoithe [1940] * trunk/libffado/src/libstreaming/rme/RmeReceiveStreamProcessor.cpp (modified) RME: incidental changes for further debugging 12/07/10 08:32:38 adi [1939] * trunk/libffado/src/dice/dice_avdevice.cpp (modified) * trunk/libffado/src/dice/dice_avdevice.h (modified) Refactor startStreamByIndex and stopStreamByIndex. 12/07/10 08:17:21 adi [1938] * trunk/libffado/src/dice/dice_avdevice.cpp (modified) Refactor stopStreamByIndex. 12/07/10 07:45:07 adi [1937] * trunk/libffado/src/dice/dice_avdevice.cpp (modified) * trunk/libffado/src/dice/dice_avdevice.h (modified) Heavy refactoring. I moved writeFunc and readFunc to .h and merged the two for-loops in prepare(). This code is actually now in prepareSP(), prepare() only contains the calling loops. Note that in contrast to the previous code, I conditionally set dll_bw depending whether it's RX or TX. I guess it was a copy-and-paste error before. (I'm talking about line 1001 in r1936) Works for my Alesis device. 12/07/10 05:29:51 adi [1936] * trunk/libffado/src/dice/dice_avdevice.cpp (modified) Refactor startStreamByIndex. A lot of code in dice_avdevice.cpp violates the DRY principle (don't repeat yourself), thus making development unnecessary hard and error-prone. This is a first attempt to improve the situation. Clearly, there are more parts to be refactored. 12/07/10 03:50:47 adi [1935] * trunk/libffado/src/dice/dice_avdevice.cpp (modified) Remove obsolete vendor-specific hacks. The code wasn't active for a while, it's not necessary anymore. 12/07/10 03:45:52 adi [1934] * trunk/libffado/support/mixer-qt4/ffado/configuration.py (modified) * trunk/libffado/support/mixer-qt4/ffado/dbus_util.py (modified) * trunk/libffado/support/mixer-qt4/ffado/logginghandler.py (modified) * trunk/libffado/support/mixer-qt4/ffado/mixer/nodevice.py (modified) * trunk/libffado/support/mixer-qt4/ffado/panelmanager.py (modified) * trunk/libffado/support/mixer-qt4/ffado/registration.py (modified) * trunk/libffado/support/mixer-qt4/ffado/widgets/matrixmixer.py (modified) * trunk/libffado/support/tools/ffado_diag_helpers.py (modified) * trunk/libffado/support/tools/helpstrings.py (modified) Shebang-line cleanup. Closes: #292 Patch provided by Orcan Ogetbil (Fedora).