=================================================
-Telemeta: open web audio platform with semantics
+Collaborative multimedia asset management system
=================================================
|version| |downloads| |travis_master| |coverage_master|
Overview
=========
-Telemeta is a free and open source web audio archiving software which introduces useful and secure methods to backup, index, transcode, analyse and publish any digitalized audio file with extensive metadata. It is dedicated to collaborative media archiving projects, research laboratories and digital humanities - and especially in ethnomusicological use cases - who wants to easily organize, backup and publish documented sound collections of audio files, CDs, digitalized vinyls and magnetic tapes over a strong database, in accordance with open web standards.
+Telemeta is a free and open source collaborative multimedia asset management software which introduces useful and secure methods to archive, backup, transcode, analyse, annotate and publish any digitalized video or audio file with extensive metadata. It is dedicated to collaborative media archiving projects, research laboratories and digital humanities - especially in ethno-musicological use cases - who need to easily organize and publish documented sound collections of audio files, CDs, digitalized vinyls and magnetic tapes over a strong database, in a secure platform and in accordance with open web standards.
Key features:
This web audio CMS is exclusively based on open source modules and can be run on any Unix or Linux system.
It is mostly written in Python and JavaScript.
-The processing engine of Telemeta is a separate project called `TimeSide <https://github.com/yomguy/timeside/>`_ as an open web audio pocessing framework written in Python.
+The processing engine of Telemeta is provided by `TimeSide <https://github.com/yomguy/timeside/>`_, an open web audio processing framework written in Python.
Changes
sh $app/deploy/wait.sh
# waiting for available database
-# python $app/wait.py
+python $app/wait.py
# django init
python $manage syncdb --noinput
up = False
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "sandbox.settings")
+i = 0
while not up:
try:
call_command('syncdb', interactive=False)
up = True
except:
+ i += 1
+ print 'initialization...'
+ if i > 2:
+ raise
time.sleep(1)
db:
image: mysql
volumes:
- - ./data/var/lib/mysql/:/var/lib/mysql
- - ./data/var/log/mysql/:/var/log/mysql
- ./scripts/:/srv/scripts
volumes_from:
- data
extra['results_page'] = self.results_per_page
return extra
+ def save_search(self, request):
+ user = request.user
+ if user:
+ if user.is_authenticated():
+ search = Search(username=user)
+ search.save()
+ if criteria:
+ for key in criteria.keys():
+ value = criteria[key]
+ if key == 'ethnic_group':
+ try:
+ group = EthnicGroup.objects.get(value=value)
+ value = group.id
+ except:
+ value = ''
+ criter = Criteria(key=key, value=value)
+ criter.save()
+ search.criteria.add(criter)
+ search.save()
+
+
#def auto_complete(request):
#content = SearchQuerySet().autocomplete(content_auto=request.POST.get('seatch_text', ''))
-
#return render_to_response('', {'content' : content])
+
class HaystackAdvanceSearch(SearchView):
def __call__(self, request, type=None):
#overwrite the get_query for begin search with any form
if self.form.is_valid():
return self.form.cleaned_data
-
return ''
def get_results(self):