日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
創(chuàng)新互聯(lián)Python教程:chunk —- 讀取 IFF 分塊數(shù)據(jù)

chunk —- 讀取 IFF 分塊數(shù)據(jù)

源代碼: Lib/chunk.py

專注于為中小企業(yè)提供網(wǎng)站建設(shè)、網(wǎng)站制作服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)中山免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動(dòng)了1000+企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。

從版本 3.11 開始標(biāo)記為過時(shí),將在版本 3.13 中移除。: chunk 模塊已被棄用(請(qǐng)參閱 PEP 594 了解詳情)。


本模塊提供了一個(gè)讀取使用 EA IFF 85 分塊的數(shù)據(jù)的接口chunks. 1 這種格式使用的場(chǎng)合有 Audio Interchange File Format (AIFF/AIFF-C) 和 Real Media File Format (RMFF) 等。 與它們密切相關(guān)的 WAVE 音頻文件也可使用此模塊來讀取。

一個(gè)分塊具有以下結(jié)構(gòu):

0

4

區(qū)塊ID

4

4

大端字節(jié)順序的塊大小,不包括頭

8

n

數(shù)據(jù)字節(jié),其中 n 是前一字段中給出的大小

8 + n

0 或 1

如果 n 為奇數(shù)且使用塊對(duì)齊,則需要填充字節(jié)

偏移

長度

目錄

ID是一個(gè)4字節(jié)的字符串,用于標(biāo)識(shí)塊的類型。

大小字段(32 位的值,使用大端字節(jié)序編碼)給出分塊數(shù)據(jù)的大小,不包括 8 字節(jié)的標(biāo)頭。

使用由一個(gè)或更多分塊組成的 IFF 類型文件。 此處定義的 Chunk 類的建議使用方式是在每個(gè)分塊開始時(shí)實(shí)例化一個(gè)實(shí)例并從實(shí)例讀取直到其末尾,在那之后可以再實(shí)例化新的實(shí)例。 到達(dá)文件末尾時(shí),創(chuàng)建新實(shí)例將會(huì)失敗并引發(fā) EOFError 異常。

class chunk.Chunk(file, align=True, bigendian=True, inclheader=False)

代表一個(gè)分塊的類。 file 參數(shù)預(yù)期為一個(gè)文件類對(duì)象。 特別地也允許該類的實(shí)例。 唯一必需的方法是 read()。 如果存在 seek() 和 tell() 方法并且沒有引發(fā)異常,它們也會(huì)被使用。 如果存在這些方法并且引發(fā)了異常,則它們不應(yīng)改變目標(biāo)對(duì)象。 如果可選參數(shù) align 為真值,則分塊應(yīng)當(dāng)以 2 字節(jié)邊界對(duì)齊。 如果 align 為假值,則不使用對(duì)齊。 此參數(shù)默認(rèn)為真值。 如果可選參數(shù) bigendian 為假值,分塊大小應(yīng)當(dāng)為小端序。 這對(duì)于 WAVE 音頻文件是必須的。 此參數(shù)默認(rèn)為真值。 如果可選參數(shù) inclheader 為真值,則分塊標(biāo)頭中給出的大小將包括標(biāo)頭的大小。 此參數(shù)默認(rèn)為假值。

Chunk 對(duì)象支持下列方法:

  • getname()

    返回分塊的名稱(ID)。 這是分塊的頭 4 個(gè)字節(jié)。

  • getsize()

    返回分塊的大小。

  • close()

    關(guān)閉并跳轉(zhuǎn)到分塊的末尾。 這不會(huì)關(guān)閉下層的文件。

在 close() 方法已被調(diào)用后其余方法將會(huì)引發(fā) OSError。 在 python 3.3 之前,它們?cè)鴷?huì)引發(fā) IOError,現(xiàn)在這是 OSError 的一個(gè)別名。

  • isatty()

    返回 False。

  • seek(pos, whence=0)

    設(shè)置分塊的當(dāng)前位置。 whence 參數(shù)為可選項(xiàng)并且默認(rèn)為 0 (絕對(duì)文件定位);其他值還有 1 (相對(duì)當(dāng)前位置查找) 和 2 (相對(duì)文件末尾查找)。 沒有返回值。 如果下層文件不支持查找,則只允許向前查找。

  • tell()

    將當(dāng)前位置返回到分塊。

  • read(size=- 1)

    從分塊讀取至多 size 個(gè)字節(jié)(如果在獲得 size 個(gè)字節(jié)之前已到達(dá)分塊末尾則讀取的字節(jié)會(huì)少于此數(shù)量)。 如果 size 參數(shù)為負(fù)值或被省略,則讀取所有字節(jié)直到分塊末尾。 當(dāng)立即遇到分塊末尾則返回空字節(jié)串對(duì)象。

  • skip()

    跳到分塊末尾。此后對(duì)分塊再次調(diào)用 read() 將返回 b''。 如果你對(duì)分塊的內(nèi)容不感興趣,則應(yīng)當(dāng)調(diào)用此方法以使文件指向下一分塊的開頭。

備注

1

“EA IFF 85” 交換格式文件標(biāo)準(zhǔn), Jerry Morrison, Electronic Arts, 1985 年 1 月。


當(dāng)前文章:創(chuàng)新互聯(lián)Python教程:chunk —- 讀取 IFF 分塊數(shù)據(jù)
網(wǎng)站地址:http://www.dlmjj.cn/article/dpdhcdo.html