def build_filters(self, filters=None): if filters is None: filters = {} orm_filters = super(MediaResource, self).build_filters(filters) if "code" in filters: print 'CODE FILTER!!!' ids = [] code = filters['code'] # code = "eJyFmGFyLSkIhbckoALLUYH9L2GO99XUncpUfH--JNptIxxA0xqdag9ke4CZXujxgu4XvL2w1gNC_QU-D_QmL_B4Ye4XfDxAoS9UPMCaL6zzQvID0uoFni_IfqBfgfyOYS_seuEa_iso7AHmfGH0F_S8sNoL214ofUCavSD-Qt8vlD3QmV849gCd8ULNB7jTCyYvvKNw1gPSxgtXtr9D9IFu-4WjD9DOF2K9kPUAd3nhL_XZX_iE8TdIOy9wvVDjgX4f-RUU-ULJA-zrhd1e-Dj7N_yll8kLnfwBinih2gOs9oI_ceYLtR4Q5NLv6GwvvPPomSm3uz_wF2_UC29vZD4g17Rf0Ru_cPP0F6w0tTTeOYee3dbuNRivma44vdZANtGa3HW5dRP3WTOqxprSSFDDbXuWkRl5p2nQ6mSUJCXp6TL3PNY9SudY2_dE58Zq5bK8K9fAUkzV5-hk-Mhw47mTd-fwtVkHw0rxSsfXko-c4IlHs3mklLriS21iOZwYpm5mPue4s_Q1HY0xdK1xJg3CGhHCF3b6aDGJl9FaanBFjo7V-qJhI1rvB9tvsnLHOjhq8vaavWQuZnxybCEO3nBS3zyIczTG7s2xnXl4c_bzRWLB-DH2BWxGTYNI4ELv3Sdcx7OndZKhe-vUglsHJYni7FojuOkyCMOP3jc8kzZ6Juxny8yRH7lPDPpkWjvaUZ258T0Sn7FWzX10NARm-qHTjBGKPWil11BpiwIHUh1zLzupQ4YX49Vuqej7EYgmnut6ihGBLXEmks_ERFW7cd8YLhjtkm2mbCneelSSGRJRM-ypsimsX2NjDG_OLpCW3-1xO_ibJnYMFS_fuUkJUoVooCOeAnES9LS_yOr_G_sCAT8axW3uW54Szl7ITKWoNeHPI4kNQufjtCVTMszZDEYfHgtn994p4YzDMuC14ataGp4k-AJaObmRrNdyDxf4VO9dgrmoSM-oQ4p4YHG43eAIpO5CreszHZJejBXbZnJl8xastAo-wzHKGAkB_Qy4TpCie1ENOIdtnW1YvKoRkoeWhpKTsjSsCcPWhrkN2q9CuBKKEBg00RU6fJEwmkWxQyVaYtERByyGXDDInqt3rHxu1FscKAJRNdiKiIXrmWOU8lCLsF1feLZsP8a-2Lqa_FFh94QX4OKY4lCIITu7b4e_8zZUFCFGf-O8t5uYyDT8WYRD2ph9hAfurXMgo3E3CuiTGiw7tSng0rZa0NzaG3yfeZwmp9hop_o-AR3KHGbTEzmYV8VwK-4zhA1EIAr-qXrRBt7TPhBr6ljl-nIICc0mWgiSIqS-GNcZ7OemRKjBKycnrx51rGBvxm7IzKDdkHy4JVZ2LKG3KrlVEYzZfdayWV-45V4_xr5AiBB7GOqI4RlIuOFqK9HVlZ1zK3JIy5ajbM8VeyHtAw6E-AIu6ltHDyNq1BcK2YEIba5EGR8lfmxsQy2KvkX3iGrbUYTQKRjqpp6wtoseum-jTmIaphRSvbvObR2z5megKkBCLScux-h0CcWNg0rmKBlIah0buYGGEVl5DlwDWYegiBI6C6ScTNlMkdeCM9ZE8ToOC1C0BmqOKmoRkqR91rtyGLFLdJ1z773_gg7C_mPsizaX5kLwUZ_ufQlVbG2Z7Mh37w1dYC_R7oTSgM5gyDD86pCmioTdGAR6SHUKRrF1C-y3rXXrjlhCj3MJ8u9mOT6zXQoK1PvfAmQzRGsbXff-M4Qp9qibA734dLRphEJrGqNn3YYPGfVczuNOoSPshC2EPSNm-UXd5vdj7D9wtFHDTlhR_NEiES38RPnL0zWQDkh4BMFVjDLxdb_9Db1yMpIyIJGO2ml7dB4nJuo81pqQ12dx3GZC0EB5QlUQtxREtftATZ2mECbK-XJsP-jUGeZ-fIwhFTglIKXRB7EEMmkGB3adiqdQAxJveuIYEg3dQw0JdO0hOFxT5JbRBfOhcNQKmV_4zPVz7AtEkJGSt9vJGijfiW8W4o4aMRwyO7AD7bM6zhqaSBRG6_nz2o_ZQLvVmyOMMMGOO4uQJyVO4vGdrcV1GubGZ9YQcP7MKpIoP7Mbxwt0vo3I31l4uPTe1wINAZ-6K0OIKGHor__5xucNnKJw4rzLozIe5Bf62Befvf0Y--Ify8EFSw==" res = fp.best_match_for_query(code_string=code, elbow=10) #res = fp.query_fp(code_string=code) print 'RREESS!!!' try: if res.match(): print res.match() ids = [int(res.TRID), ] orm_filters["pk__in"] = ids else: orm_filters["pk__in"] = () except Exception, e: print '****************' print e print '****************' pass
def id_by_echoprint(self, file): from ep.API import fp from lib.analyzer.echoprint import Echoprint e = Echoprint() code, version, duration, echoprint = e.echoprint_from_path(file.path, offset=10, duration=100) # print code # code = fp.decode_code_string(code) try: res = fp.best_match_for_query(code_string=code) print 'ECHOPRINT!!!!!!!!!!' print 'TRID' print res.TRID print 'END TRID' if res.match(): print res.message() print res.match() print res.score print res.TRID #ids = [int(res.TRID),] return int(res.TRID) except Exception, e: print e pass
def build_filters(self, filters=None): if filters is None: filters = {} orm_filters = super(MediaResource, self).build_filters(filters) if "code" in filters: ids = [13010, 13021] ids = [] code = filters['code'] # code = "eJyFmGFyLSkIhbckoALLUYH9L2GO99XUncpUfH--JNptIxxA0xqdag9ke4CZXujxgu4XvL2w1gNC_QU-D_QmL_B4Ye4XfDxAoS9UPMCaL6zzQvID0uoFni_IfqBfgfyOYS_seuEa_iso7AHmfGH0F_S8sNoL214ofUCavSD-Qt8vlD3QmV849gCd8ULNB7jTCyYvvKNw1gPSxgtXtr9D9IFu-4WjD9DOF2K9kPUAd3nhL_XZX_iE8TdIOy9wvVDjgX4f-RUU-ULJA-zrhd1e-Dj7N_yll8kLnfwBinih2gOs9oI_ceYLtR4Q5NLv6GwvvPPomSm3uz_wF2_UC29vZD4g17Rf0Ru_cPP0F6w0tTTeOYee3dbuNRivma44vdZANtGa3HW5dRP3WTOqxprSSFDDbXuWkRl5p2nQ6mSUJCXp6TL3PNY9SudY2_dE58Zq5bK8K9fAUkzV5-hk-Mhw47mTd-fwtVkHw0rxSsfXko-c4IlHs3mklLriS21iOZwYpm5mPue4s_Q1HY0xdK1xJg3CGhHCF3b6aDGJl9FaanBFjo7V-qJhI1rvB9tvsnLHOjhq8vaavWQuZnxybCEO3nBS3zyIczTG7s2xnXl4c_bzRWLB-DH2BWxGTYNI4ELv3Sdcx7OndZKhe-vUglsHJYni7FojuOkyCMOP3jc8kzZ6Juxny8yRH7lPDPpkWjvaUZ258T0Sn7FWzX10NARm-qHTjBGKPWil11BpiwIHUh1zLzupQ4YX49Vuqej7EYgmnut6ihGBLXEmks_ERFW7cd8YLhjtkm2mbCneelSSGRJRM-ypsimsX2NjDG_OLpCW3-1xO_ibJnYMFS_fuUkJUoVooCOeAnES9LS_yOr_G_sCAT8axW3uW54Szl7ITKWoNeHPI4kNQufjtCVTMszZDEYfHgtn994p4YzDMuC14ataGp4k-AJaObmRrNdyDxf4VO9dgrmoSM-oQ4p4YHG43eAIpO5CreszHZJejBXbZnJl8xastAo-wzHKGAkB_Qy4TpCie1ENOIdtnW1YvKoRkoeWhpKTsjSsCcPWhrkN2q9CuBKKEBg00RU6fJEwmkWxQyVaYtERByyGXDDInqt3rHxu1FscKAJRNdiKiIXrmWOU8lCLsF1feLZsP8a-2Lqa_FFh94QX4OKY4lCIITu7b4e_8zZUFCFGf-O8t5uYyDT8WYRD2ph9hAfurXMgo3E3CuiTGiw7tSng0rZa0NzaG3yfeZwmp9hop_o-AR3KHGbTEzmYV8VwK-4zhA1EIAr-qXrRBt7TPhBr6ljl-nIICc0mWgiSIqS-GNcZ7OemRKjBKycnrx51rGBvxm7IzKDdkHy4JVZ2LKG3KrlVEYzZfdayWV-45V4_xr5AiBB7GOqI4RlIuOFqK9HVlZ1zK3JIy5ajbM8VeyHtAw6E-AIu6ltHDyNq1BcK2YEIba5EGR8lfmxsQy2KvkX3iGrbUYTQKRjqpp6wtoseum-jTmIaphRSvbvObR2z5megKkBCLScux-h0CcWNg0rmKBlIah0buYGGEVl5DlwDWYegiBI6C6ScTNlMkdeCM9ZE8ToOC1C0BmqOKmoRkqR91rtyGLFLdJ1z773_gg7C_mPsizaX5kLwUZ_ufQlVbG2Z7Mh37w1dYC_R7oTSgM5gyDD86pCmioTdGAR6SHUKRrF1C-y3rXXrjlhCj3MJ8u9mOT6zXQoK1PvfAmQzRGsbXff-M4Qp9qibA734dLRphEJrGqNn3YYPGfVczuNOoSPshC2EPSNm-UXd5vdj7D9wtFHDTlhR_NEiES38RPnL0zWQDkh4BMFVjDLxdb_9Db1yMpIyIJGO2ml7dB4nJuo81pqQ12dx3GZC0EB5QlUQtxREtftATZ2mECbK-XJsP-jUGeZ-fIwhFTglIKXRB7EEMmkGB3adiqdQAxJveuIYEg3dQw0JdO0hOFxT5JbRBfOhcNQKmV_4zPVz7AtEkJGSt9vJGijfiW8W4o4aMRwyO7AD7bM6zhqaSBRG6_nz2o_ZQLvVmyOMMMGOO4uQJyVO4vGdrcV1GubGZ9YQcP7MKpIoP7Mbxwt0vo3I31l4uPTe1wINAZ-6K0OIKGHor__5xucNnKJw4rzLozIe5Bf62Befvf0Y--Ify8EFSw==" res = fp.best_match_for_query(code_string=code) if res.match(): print res.message() print res.match() print res.score print res.TRID ids = [ int(res.TRID), ] orm_filters["pk__in"] = ids return orm_filters
def id_by_echoprint(self, file): from ep.API import fp from lib.analyzer.echoprint import Echoprint e = Echoprint() code, version, duration, echoprint = e.echoprint_from_path(file.path, offset=10, duration=100) try: res = fp.best_match_for_query(code_string=code) if res.match(): log.info('echoprint match - score: %s trid: %s' % (res.score, res.TRID)) #print res.message() #print res.match() #print res.score #print res.TRID return int(res.TRID) except Exception, e: log.warning('echoprint error: %s' % (e))
obj.echoprint_data = {'track_id': res['track_id'], 'score': res['score']} obj.save() except Exception, e: print e pass m = None if obj.status == '4' or obj.status == 4: print 'pre fingerprinted entry' code = obj.echoprintfp['code'] print 'pre q' res = fp.best_match_for_query(code_string=code) print 'post q' print res.match() if res.match(): print res.message() print res.score print res.TRID obj.dummy_result = res.TRID if res.TRID: try: id = int(res.TRID) m = Media.objects.get(pk=id)
if audiofile.seconds_length() > 20: p = subprocess.Popen([ 'ffmpeg', '-loglevel', 'quiet', '-i', full_path, '-ac', '1', '-ar', '11025', '-f', 's16le', '-t', '%s' % sample_duration, '-ss', '10', '-', ], stdout=subprocess.PIPE) samples = [] while True: sample = p.stdout.read(2) if sample == '': break samples.append(struct.unpack('h', sample)[0] / 32768.0) d = echoprint.codegen(samples) res = fp.best_match_for_query(d['code']) if res.match(): print 'Track already in database' skip_media = True else: print 'New track, continue with import' if not skip_media: media, media_created = Media.objects.get_or_create(name=track_name, tracknumber=tracknumber, artist=artist, release=release)
'score': res['score'] } obj.save() except Exception, e: print e pass m = None if obj.status == '4' or obj.status == 4: print 'pre fingerprinted entry' code = obj.echoprintfp['code'] print 'pre q' res = fp.best_match_for_query(code_string=code) print 'post q' print res.match() if res.match(): print res.message() print res.score print res.TRID obj.dummy_result = res.TRID if res.TRID: try: id = int(res.TRID) m = Media.objects.get(pk=id)