000webhost

Web hosting

Saturday, July 4, 2015

Python Decompilation, Max4Live Programming, Ableton Push Colour Calibration, Automated DJ'ing and More

I was recently discussing with someone how Ableton programming/scripting works. This was particularly within the context of the Ableton Push device and possible hacking of other devices to allow for more sophisticated functionality. Apparently, many of the core scripts use Python. They need to be decompiled to allow you to have a proper look at them though. Obviously, some of the scripts are non-tricial and will require a sufficient understanding of both music as well as programming to be useful.

A decompilation of all files in the following directory,
C:\ProgramData\Ableton\Live9Suite\Resources\MIDI Remote Scripts\
is available here. The reason why I've done it is because others who have previously done it have removed it from their websites.

http://julienbayle.net/ableton-live-9-midi-remote-scripts/
http://blogs.bl0rg.net/netzstaub/2008/08/15/writing-ableton-control-surface-scripts/
http://remotescripts.blogspot.com.au/
http://julienbayle.net/PythonLiveAPI_documentation/Live9.0.6.xml

The decompilation was achieved using two small scripts which I created available here and use uncompyle2, https://github.com/Mysterie/uncompyle2 at their core. Since the current code contains an error which doesn't allow for a successful RPM build I've had to make a small modification.

For those who want to know the uncompyle2 currently only works with Python 2.7. To get it running in a Debian based environment I had to change a symlink so that /usr/bin/python -> python2.7 as opposed to /usr/bin/python -> python2.6

To get the RPM build working I had to copy README.rst to README.
Running 'python setup.py bdist_rpm' would give me an RPM package. Running 'alien' allows conversion of the RPM to a DEB package for easy installation on a Debian based platform.
http://sourceforge.net/projects/easypythondecompiler/
http://stackoverflow.com/questions/8189352/decompile-python-2-7-pyc
http://depython.com/
http://reverseengineering.stackexchange.com/questions/1701/decompiling-pyc-files

Successful RPM and DEB packages are available from my website, https://sites.google.com/site/dtbnguyen/
The following ZIP archive contains updated code, RPM, and DEB packages.
The following ZIP archive contains the decompiled code and scripts to automate decompilation of the Ableton code.

For those who are interested, Max4Live programming looks rather interesting for building devices and effects. It also looks like a perfect choice for those who may be on a limited budget and looking to extend Ableton's capabilities.
https://www.ableton.com/en/blog/programming-in-max-for-live/
http://www.youtube.com/playlist?list=PLasl9I6VeCCrNLAoOiKibDqJc1rsjLSDi
http://www.patrickmuller.de/n-e-w-s/max-msp-programming/
https://docs.cycling74.com/max5/vignettes/intro/doclive.html
https://www.ableton.com/en/help/article/how-get-started-max-live-9/
http://www.abletonop.com/2012/07/sell-your-live-devices-on-abletonop/
http://www.synthtopia.com/content/2009/11/24/5-reasons-to-avoid-max-for-live/
http://roberthenke.com/technology/m4l.html
https://cycling74.com/support/faq-maxforlive/
http://community.akaipro.com/akai_professional/topics/apc-mini-sequencers
https://www.youtube.com/watch?v=bmn8eJYEe9s
http://www.maxforlive.com/library/device.php?id=877

There have has been some grumbles regarding Ableton Push quality control (Novaton has sort of had similar problems with their Launchpad series but it hasn't been as obvious because most current models have only relied on a limited set of colours. Note to others this issue isn't actually covered by warranty either and it's a difficult problem to fix from a manufacturing perpsective. Hence, the need for this particular solution.) with regards to inconsitent colouring of LEDs. There was a small application that was created but wasn't publicly released. It's called, 'PUSH_RGB_Calibration_Tool.zip' and basically allows for calibration of white on the device by altering internal colour balance of primary colours. It's available on some file sharing websites. You'll require firmware version 1.7 tor it to run.
https://forum.ableton.com/viewtopic.php?f=55&t=191939&start=45
https://www.ableton.com/en/help/article/push-firmware-release-notes/
https://archive.is/zLbnS
http://filepi.com/i/J9mGlId
https://www.virustotal.com/en/file/687a48127a65226eaae13ded393aafaccee46e445cec33a63964ece921fddb51/analysis/

Someone recently asked me about automated DJ options. I've seen a few but they seem to be becoming increasingly sophisticated.
https://www.youtube.com/results?search_query=how+to+dj
How To DJ - Phil K (Intermediate Level)
https://www.youtube.com/watch?v=4r3Pw8VJtq0
http://www.mixmeister.com/products-comparison.php
http://forum.djtechtools.com/showthread.php?t=21834
http://www.virtualdj.com/wiki/Automix.html
https://www.native-instruments.com/forum/threads/is-there-an-auto-dj-function.28501/
http://djtechtools.com/2012/08/06/what-controller-is-right-for-you-all-in-one-vs-modular-dj-set-ups/

Apparently, some of my ideas and perspectives regarding the modern world and capitalism are similar to that of Thomas Piketty. However, the way in which we would set about rebalancing global economics to ensure a more fair and just global economic system for all is somewhat different. More on this in time...
http://www.smh.com.au/world/pushing-back-on-socialism-ecuador-vents-its-presidential-ire-on-the-streets-20150702-gi3ew2.html
https://en.wikipedia.org/wiki/Thomas_Piketty
https://en.wikipedia.org/wiki/Capital_in_the_Twenty-First_Century
http://blog.melbournemusiccentre.com.au/2011/07/why-are-the-same-or-similar-items-cheaper-overseas/

Some options for puchasing used music equipment locally.
http://www.musicswopshop.com.au/
http://www.yourinstrument.com.au/
http://www.musosales.com.au/
http://melbourneexchange.com.au/
http://www.quicksales.com.au/

In case you've ever wanted to download videos from various websites, there are quite a few options out there.
http://www.clipconverter.cc/
http://keepvid.com/
http://www.flvdown.com/
http://www.flvdown.com/docs.php?doc=api
https://addons.mozilla.org/en-us/firefox/addon/flashgot/
http://sourceforge.net/projects/ytd2/
http://stackoverflow.com/questions/4032766/how-to-download-videos-from-youtube-on-java
http://superuser.com/questions/114196/how-to-find-the-stream-behind-a-flash-player

If you've had minor scratches on your optical discs you know that they can be extraordinarily frustrating. There are quite a few solutions out there for it though.
http://www.wisebread.com/quickly-removing-scratches-from-cds-and-dvds
http://www.wikihow.com/Fix-a-Scratched-CD
http://www.apartmenttherapy.com/7-bizarre-home-remedies-that-r-152502
http://howto.wired.com/wiki/Fix_a_Scratched_CD
http://www.instructables.com/id/Re-surfacing-CDs-so-they-work-again./

If you ever have to use automated imaging/partitioning software sometimes things don't turn out perfectly. Hidden partitions appear when they shouldn't wreaking havoc with links throughout your system. Changing the partition type is the solution though the actual 'type/code/number' may vary depending on the circumstances.
https://forums.lenovo.com/t5/Lenovo-P-Y-and-Z-series/Disk-Partitioning-and-OneKey-Recovery-Feature/td-p/8036
https://forums.lenovo.com/t5/Windows-7-Discussion/How-to-re-hide-OEM-partition/td-p/278948
https://forums.lenovo.com/t5/Lenovo-U-and-S-Series-Notebooks/help-me-with-OKR/m-p/133135#M11494
http://www.smh.com.au/digital-life/digital-life-news/meet-australian-company-ipechelon-one-of-the-biggest-antipiracy-operations-in-the-world-20150430-1mw93k.html

Options for locking down a device in case it is lost or stolen are increasingly popular nowadays even in consumer class devices. It's interesting how far, some companies are willing to take this and what their implementation is like.
http://www.computerworld.com/article/2481347/endpoint-security/the-down-side-of-hard-drive-passwords.html
http://www.tomshardware.com/forum/258614-32-access-password-protected-caddy
http://www.sevenforums.com/hardware-devices/246015-toshiba-hdd-locked.html
http://www.computing.net/answers/hardware/how-to-clear-hard-drive-password/48527.html
http://forum.thinkpads.com/viewtopic.php?t=104873
http://www.freakyacres.com/remove_computrace_lojack
http://en.wikipedia.org/wiki/LoJack_for_Laptops
http://www.pcworld.com/product/1344774/acer-aspire-s3-951-2634g25nss-ultrabook.html
http://www.manualslib.com/manual/546525/Acer-Aspire-S5-391.html?page=56
https://www.technibble.com/forums/threads/unlockhd-exe-help.42725/
http://www.experts-exchange.com/Hardware/Laptops_Notebooks/Q_26614042.html
http://www.allservice.ro/forum/viewtopic.php?p=7958&sid=6d91be00086c530afa8311af27da81c5
http://www.allservice.ro/acer/
http://www.tomsguide.com/forum/61372-35-locked-laptop-harddrive
http://www.techrepublic.com/pictures/cracking-open-acer-aspire-s3-ultrabook/
http://www.techrepublic.com/blog/cracking-open/acer-aspire-s3-teardown-good-hardware-lackluster-construction/

Help evaluate, test, and design Windows 10.
https://insider.windows.com/

If Only Hiring Were So Simple, Random Stuff, and More

- you read some of the articles out there about recruitment practices and things sound so simple... I've watched the recruitment proces...