{'track': '1', 'title': 'A Brain In A Bottle', 'album': "Tomorrow's Modern Boxes", 'track_total': None, 'year': '2014', 'audio_offset': 149068, 'duration': 284.2590281195418, 'bitrate': 320.0, 'genre': 'Electronic', 'artist': 'Thom Yorke', 'filesize': 11370354, 'samplerate': 44100}
         143262 function calls (143252 primitive calls) in 0.086 seconds

   Ordered by: internal time

   ncalls  tottime  percall  cumtime  percall filename:lineno(function)
       20    0.051    0.003    0.076    0.004 tinytag.py:213(_determine_duration)
    69660    0.014    0.000    0.014    0.000 {method 'read' of '_io.BufferedReader' objects}
    23020    0.008    0.000    0.008    0.000 {method 'seek' of '_io.BufferedReader' objects}
        2    0.005    0.002    0.005    0.002 {built-in method compile}
    23200    0.003    0.000    0.003    0.000 {built-in method unpack}
    23496    0.001    0.000    0.001    0.000 {built-in method len}
      220    0.001    0.000    0.002    0.000 tinytag.py:314(_parse_frame)
       20    0.000    0.000    0.080    0.004 tinytag.py:60(get)
      360    0.000    0.000    0.001    0.000 {built-in method decode}
      340    0.000    0.000    0.001    0.000 tinytag.py:348(_decode_string)
       20    0.000    0.000    0.003    0.000 tinytag.py:275(_parse_id3v2)
       20    0.000    0.000    0.000    0.000 {built-in method open}
      240    0.000    0.000    0.000    0.000 tinytag.py:373(_calc_size)
        2    0.000    0.000    0.000    0.000 {built-in method dumps}
       11    0.000    0.000    0.000    0.000 {built-in method __build_class__}
       38    0.000    0.000    0.000    0.000 {built-in method stat}
       20    0.000    0.000    0.000    0.000 tinytag.py:300(_parse_id3v1)
      340    0.000    0.000    0.000    0.000 tinytag.py:142(_unpad)
      240    0.000    0.000    0.001    0.000 tinytag.py:107(_set_field)
        2    0.000    0.000    0.000    0.000 {built-in method replace}
        1    0.000    0.000    0.086    0.086 tinytagperf.py:1(<module>)
        2    0.000    0.000    0.000    0.000 {built-in method listdir}
       20    0.000    0.000    0.003    0.000 tinytag.py:269(_parse_tag)
        5    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:1621(get_data)
      205    0.000    0.000    0.000    0.000 {method 'get' of 'dict' objects}
      255    0.000    0.000    0.000    0.000 {built-in method getattr}
        3    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:2016(find_spec)
       80    0.000    0.000    0.000    0.000 {built-in method utf_16_decode}
       20    0.000    0.000    0.079    0.004 tinytag.py:95(load)
      140    0.000    0.000    0.000    0.000 {method 'index' of 'str' objects}
        3    0.000    0.000    0.005    0.002 <frozen importlib._bootstrap>:1534(get_code)
        2    0.000    0.000    0.000    0.000 {method 'write' of '_io.FileIO' objects}
       20    0.000    0.000    0.000    0.000 tinytag.py:33(__init__)
        1    0.000    0.000    0.000    0.000 {built-in method loads}
       80    0.000    0.000    0.000    0.000 utf_16.py:15(decode)
        2    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:99(_write_atomic)
      142    0.000    0.000    0.000    0.000 {built-in method setattr}
        1    0.000    0.000    0.000    0.000 tinytag.py:88(__str__)
        5    0.000    0.000    0.000    0.000 {method 'read' of '_io.FileIO' objects}
       20    0.000    0.000    0.000    0.000 genericpath.py:48(getsize)
       20    0.000    0.000    0.000    0.000 tinytag.py:53(has_all_tags)
      103    0.000    0.000    0.000    0.000 {method 'endswith' of 'str' objects}
        3    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:599(_validate_bytecode_header)
       20    0.000    0.000    0.000    0.000 tinytag.py:365(_parse_track)
        3    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:2147(_find_spec)
        2    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:666(_code_to_bytecode)
      3/2    0.000    0.000    0.006    0.003 <frozen importlib._bootstrap>:2207(_find_and_load_unlocked)
       19    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:52(<listcomp>)
        2    0.000    0.000    0.000    0.000 __init__.py:69(search_function)
      100    0.000    0.000    0.000    0.000 {method 'lower' of 'str' objects}
       40    0.000    0.000    0.000    0.000 {method 'tell' of '_io.BufferedReader' objects}
        6    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:437(cache_from_source)
        2    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:2061(_fill_cache)
       20    0.000    0.000    0.000    0.000 tinytag.py:204(__init__)
       14    0.000    0.000    0.000    0.000 {built-in method hasattr}
       19    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:50(_path_join)
        3    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:274(_get_module_lock)
        2    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:1641(set_data)
        2    0.000    0.000    0.000    0.000 __init__.py:42(normalize_encoding)
        3    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:1019(init_module_attrs)
      3/2    0.000    0.000    0.006    0.003 <frozen importlib._bootstrap>:2234(_find_and_load)
      3/2    0.000    0.000    0.006    0.003 <frozen importlib._bootstrap>:1186(_load_unlocked)
        1    0.000    0.000    0.000    0.000 tinytag.py:26(<module>)
       10    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:78(_path_is_mode_type)
        2    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:1853(_path_hooks)
       21    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:518(_verbose_message)
        2    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:1979(__init__)
        3    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:739(__exit__)
        3    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:192(acquire)
        8    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:56(_path_split)
       18    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:68(_path_stat)
        3    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:1902(_get_spec)
        3    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:217(release)
      4/1    0.000    0.000    0.086    0.086 {built-in method exec}
        2    0.000    0.000    0.000    0.000 codecs.py:92(__new__)
       12    0.000    0.000    0.000    0.000 {method 'format' of 'str' objects}
        2    0.000    0.000    0.000    0.000 {built-in method __import__}
        3    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:129(_new_module)
        6    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:824(cached)
        3    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:884(spec_from_file_location)
        1    0.000    0.000    0.000    0.000 utf_16.py:8(<module>)
       27    0.000    0.000    0.000    0.000 {method 'join' of 'str' objects}
        6    0.000    0.000    0.000    0.000 {method 'extend' of 'list' objects}
        3    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:1870(_path_importer_cache)
        1    0.000    0.000    0.005    0.005 __init__.py:3(<module>)
        3    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:261(__enter__)
        9    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:2120(__enter__)
       44    0.000    0.000    0.000    0.000 {method 'rstrip' of 'str' objects}
       24    0.000    0.000    0.000    0.000 {method 'rpartition' of 'str' objects}
        1    0.000    0.000    0.000    0.000 {built-in method print}
      3/2    0.000    0.000    0.006    0.003 <frozen importlib._bootstrap>:1465(exec_module)
        3    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:1099(create)
        3    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:172(__init__)
        1    0.000    0.000    0.000    0.000 latin_1.py:41(getregentry)
        4    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:40(_w_long)
        1    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:654(_compile_bytecode)
      5/3    0.000    0.000    0.005    0.002 <frozen importlib._bootstrap>:313(_call_with_frames_removed)
        2    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:2102(path_hook_for_FileFinder)
        3    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:2011(_get_spec)
       20    0.000    0.000    0.000    0.000 {method 'startswith' of 'str' objects}
        3    0.000    0.000    0.000    0.000 {built-in method any}
       21    0.000    0.000    0.000    0.000 {method 'items' of 'dict' objects}
       20    0.000    0.000    0.000    0.000 {built-in method all}
        3    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:790(__init__)
        1    0.000    0.000    0.000    0.000 tinytag.py:146(ID3)
        3    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:1934(find_spec)
        3    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:842(parent)
        2    0.000    0.000    0.005    0.002 <frozen importlib._bootstrap>:1526(source_to_code)
        1    0.000    0.000    0.000    0.000 tinytag.py:31(TinyTag)
       13    0.000    0.000    0.000    0.000 tinytag.py:89(<genexpr>)
        9    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:2124(__exit__)
      3/2    0.000    0.000    0.006    0.003 <frozen importlib._bootstrap>:1122(_exec)
        4    0.000    0.000    0.000    0.000 {method 'to_bytes' of 'int' objects}
        3    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:288(cb)
        4    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:92(_path_isdir)
        1    0.000    0.000    0.000    0.000 utf_16.py:146(getregentry)
        8    0.000    0.000    0.000    0.000 {built-in method isinstance}
        3    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:257(__init__)
        4    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:45(_r_long)
        3    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:1631(path_stats)
        2    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:1636(_cache_bytecode)
        2    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:506(_calc_mode)
        3    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:268(__exit__)
        3    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:732(__enter__)
        3    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:850(has_location)
        3    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:728(__init__)
        3    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:534(_check_name_wrapper)
        3    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:1336(find_spec)
       16    0.000    0.000    0.000    0.000 {method 'append' of 'list' objects}
       16    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:1985(<genexpr>)
        3    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:1591(__init__)
        3    0.000    0.000    0.000    0.000 {built-in method is_frozen}
        4    0.000    0.000    0.000    0.000 {built-in method from_bytes}
        3    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:1000(__init__)
       12    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:742(<genexpr>)
        3    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:1616(get_filename)
        4    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:2264(_handle_fromlist)
        2    0.000    0.000    0.000    0.000 {built-in method __new__ of type object at 0x7f55c0607080}
        1    0.000    0.000    0.000    0.000 tinytag.py:393(Ogg)
        1    0.000    0.000    0.000    0.000 utf_16.py:53(IncrementalDecoder)
        1    0.000    0.000    0.000    0.000 utf_16.py:104(StreamWriter)
        1    0.000    0.000    0.000    0.000 tinytag.py:593(Wma)
        9    0.000    0.000    0.000    0.000 {built-in method acquire_lock}
        6    0.000    0.000    0.000    0.000 {built-in method allocate_lock}
        1    0.000    0.000    0.000    0.000 {method 'replace' of 'str' objects}
        1    0.000    0.000    0.000    0.000 utf_16.py:18(IncrementalEncoder)
        1    0.000    0.000    0.000    0.000 {built-in method is_builtin}
        1    0.000    0.000    0.000    0.000 tinytag.py:486(Wave)
        6    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:87(_path_isfile)
        1    0.000    0.000    0.000    0.000 utf_16.py:124(StreamReader)
        3    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:1266(find_spec)
        6    0.000    0.000    0.000    0.000 {method 'extend' of 'bytearray' objects}
       16    0.000    0.000    0.000    0.000 {method 'isalnum' of 'str' objects}
        6    0.000    0.000    0.000    0.000 {built-in method get_ident}
        1    0.000    0.000    0.000    0.000 {built-in method _fix_co_filename}
       40    0.000    0.000    0.000    0.000 {built-in method ord}
        1    0.000    0.000    0.000    0.000 tinytag.py:383(StringWalker)
        2    0.000    0.000    0.000    0.000 {built-in method id}
       12    0.000    0.000    0.000    0.000 {built-in method release_lock}
        3    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:34(_relax_case)
        1    0.000    0.000    0.000    0.000 {method 'disable' of '_lsprof.Profiler' objects}
        1    0.000    0.000    0.000    0.000 tinytag.py:523(Flac)


