Форум сайта python.su
Спасибо за ссылку, интересная вешь. Вот с помошбё её начал делатью Хотел открыть фаил изменить все ьиты звука, и сохранить в новый. Но чтоб система продолжала думать что это звук. Нашкл что информация собственно озвуе в wav файле распологается после 44 бита.
f2.write(f.read(44))
l = len(f.read())
a = array.ArrayType('c')
a.fromfile(f,l)
for x in a:
x = chr((int(x.encode('hex'))+1))
Traceback (most recent call last):
File "<pyshell#31>", line 2, in <module>
x = chr((int(x.encode('hex'))+1))
ValueError: invalid literal for int() with base 10: '2e' # вот тут проблем.Получается я представил фаил вовсе не в 16-ричном виде.
good = 0
fuck = 0
or x in a:
try:
x = chr((int(x.encode('hex'))+1))
good=good+1
except :
fuck+=1
>>> fuck
148815
>>> good
196145 # при чём таких не шестнадцатиричных значений, почти половина!
f2.seek(44)
a.write(f2)
f2.close()
Офлайн
А что мешает использовать array.array('h') для 16 битного звука?
Более того, хотите работать со звуком - используйте спец библиотеки, знающие о различных звуковых форматах.
Я когда-то работал с pymedia. Уверен, сегодня есть лучшие альтернативы.
Офлайн
Alex_KutsanДля wav все вообще элементарно. Читается и пишется стандартной библиотекой wave. Повторюсь, с mp3 такие штуки как с wav не пройдут, так же как и не сможете прочитать сжатый файл, открыв zip архив функцией open.
Нашкл что информация собственно озвуе в wav файле распологается после 44 бита.
Офлайн