欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

在基于iOS的移動電話上實現(xiàn)通話錄音的方法和裝置制造方法

文檔序號:7771514閱讀:3105來源:國知局
在基于iOS的移動電話上實現(xiàn)通話錄音的方法和裝置制造方法
【專利摘要】本發(fā)明公開了一種在基于iOS的移動電話上實現(xiàn)通話錄音的方法和裝置,其中的通話錄音的方法包括:監(jiān)聽基于iOS的移動電話的通話事件;基于MobileSubstrate框架,截獲所述基于iOS的移動電話的操作系統(tǒng)中的音頻數(shù)據(jù)處理函數(shù);在根據(jù)所述通話事件的監(jiān)聽結(jié)果判斷出所述基于iOS的移動電話當前處于通話狀態(tài),且在根據(jù)用戶的錄音設(shè)置信息判斷出當前通話為需要進行錄音的通話的情況下,從截獲到的所述音頻數(shù)據(jù)處理函數(shù)的輸入?yún)?shù)中獲取當前通話的音頻數(shù)據(jù);將所述音頻數(shù)據(jù)存儲到當前通話對應(yīng)的音頻文件中。
【專利說明】在基于iOS的移動電話上實現(xiàn)通話錄音的方法和裝置
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及移動電話,特別是涉及一種在基于iOS的移動電話上實現(xiàn)通話錄音的方法和裝置。
【背景技術(shù)】
[0002]iOS是蘋果公司的iPhone移動電話的操作系統(tǒng)。
[0003]由于iOS是一個封閉的操作系統(tǒng),因此,應(yīng)用開發(fā)者只能使用蘋果公司對外公開提供的開發(fā)接口進行應(yīng)用軟件的開發(fā);從而針對ios的應(yīng)用軟件所能夠?qū)崿F(xiàn)的功能會受制于這些開發(fā)接口。
[0004]針對語音通話,用戶常常會有通話錄音需求,然而,目前蘋果公司并沒有針對語音通話內(nèi)容(即語音數(shù)據(jù))提供相關(guān)的接口,因此,應(yīng)用開發(fā)者無法獲取語音通話過程中的語音數(shù)據(jù),從而也就無法開發(fā)出通話錄音的應(yīng)用軟件。而蘋果公司只能給用戶提供語音通話的概要信息,例如,語音通話何時開始、何時結(jié)束以及通話對方的移動電話號碼等。
[0005]目前,針對iPhone移動電話,通常通過間接錄音方式來實現(xiàn)語音通話的錄音,下面例舉幾種通過間接錄音方式實現(xiàn)語音通話錄音的方法:
[0006]方法1、用戶采用免提方式進行語音通話,并使用iPhone移動電話中的錄音軟件或者其他錄音工具來錄制iPhone移動電話外放的通話對方的通話聲音以及iPhone移動電話的使用者的通話聲音。
[0007]方法2、用戶通過帶錄音功能的藍牙耳機對語音通話進行錄音。
[0008]方法3、iPhone移動電話先呼叫具有錄音功能的第三方,再由第三方自動呼叫語音通話對方,然后,在iPhone移動電話與語音通話對方之間通話過程中,由第三方進行語首通話錄首。
[0009]發(fā)明人在實現(xiàn)本發(fā)明過程中發(fā)現(xiàn),上述方法一會存在錄制話音不清晰的問題,而且大多數(shù)人在進行語音通話時并不習慣開啟免提方式;上述方法二需要另外購置藍牙耳機,且使用藍牙耳機進行錄音也存在使用不便之處;上述方法三需要具有自動撥號以及錄音功能的第三方參與,實現(xiàn)成本較高,且錄音內(nèi)容保存在第三方,也會涉及隱私問題。

【發(fā)明內(nèi)容】

[0010]鑒于上述問題,提出了本發(fā)明,以便提供一種克服上述問題或者至少部分地解決上述問題的在基于ios的移動電話上實現(xiàn)通話錄音的方法和相應(yīng)的在基于iOS的移動電話上實現(xiàn)通話錄音的裝置。
[0011]依據(jù)本發(fā)明的一個方面,提供了在基于iOS的移動電話上實現(xiàn)通話錄音的方法,該方法包括:監(jiān)聽基于ios的移動電話的通話事件;基于MobileSubstrate框架,截獲所述基于iOS的移動電話的操作系統(tǒng)中的音頻數(shù)據(jù)處理函數(shù);在根據(jù)所述通話事件的監(jiān)聽結(jié)果判斷出所述基于iOS的移動電話當前處于通話狀態(tài),且在根據(jù)用戶的錄音設(shè)置信息判斷出當前通話為需要進行錄音的通話的情況下,從截獲到的所述音頻數(shù)據(jù)處理函數(shù)的輸入?yún)?shù)中獲取當前通話的音頻數(shù)據(jù);將所述音頻數(shù)據(jù)存儲到當前通話對應(yīng)的音頻文件中。
[0012]可選地,在上述方法中,所述根據(jù)所述通話事件的監(jiān)聽結(jié)果判斷出所述基于iOS的移動電話當前處于通話狀態(tài)包括:在監(jiān)聽到通話開始事件的情況下,判斷出所述基于ios的移動電話當前處于通話狀態(tài)。
[0013]可選地,在上述方法中,所述監(jiān)聽基于iOS的移動電話的通話事件包括:在監(jiān)聽到通話開始事件的情況下,將預(yù)先設(shè)置的通話狀態(tài)標志位的取值設(shè)置為第一預(yù)定值;在監(jiān)聽到通話結(jié)束事件的情況下,將預(yù)先設(shè)置的通話狀態(tài)標志位的取值設(shè)置為第二預(yù)定值;且所述根據(jù)所述通話事件的監(jiān)聽結(jié)果判斷出所述基于ios的移動電話當前處于通話狀態(tài)包括:在每次截獲到所述音頻數(shù)據(jù)處理函數(shù)的情況下,查詢所述通話狀態(tài)標志位的當前取值,并在所述通話狀態(tài)標志位的當前取值為第一預(yù)定值時,判斷出基于ios的移動電話當前處于通話狀態(tài)。
[0014]可選地,在上述方法中,所述截獲所述基于iOS的移動電話的操作系統(tǒng)中的音頻數(shù)據(jù)處理函數(shù)包括:在所述操作系統(tǒng)中的進程需要調(diào)用所述音頻數(shù)據(jù)處理函數(shù)時,預(yù)先設(shè)置的通話錄音函數(shù)被所述進程調(diào)用,且由所述通話錄音函數(shù)調(diào)用所述音頻數(shù)據(jù)處理函數(shù),以截獲所述音頻數(shù)據(jù)處理函數(shù)。
[0015]可選地,在上述方法中,所述方法還包括:根據(jù)用戶的錄音設(shè)置信息設(shè)置錄音標志位的取值;且所述根據(jù)用戶的錄音設(shè)置信息判斷出當前通話為需要進行錄音的通話包括:在每次截獲到所述音頻數(shù)據(jù)處理函數(shù)時,查詢所述錄音標志位的當前取值,并根據(jù)所述錄音標志位的當前取值判斷出當前通話為需要進行錄音的通話。
[0016]可選地,在上述方法中,所述根據(jù)用戶的錄音設(shè)置信息判斷出當前通話為需要進行錄音的通話包括:
[0017]根據(jù)用戶的錄音設(shè)置信息將所有的當前通話均確定為需要進行錄音的通話;或者
[0018]在當前通話為撥入通話的情況下,根據(jù)用戶的錄音設(shè)置信息判斷出當前通話為需要進行錄音的通話;或者
[0019]在當前通話為針對預(yù)定通話對方的撥入通話的情況下,根據(jù)用戶的錄音設(shè)置信息判斷出當前通話為需要進行錄音的通話;或者
[0020]在當前通話為撥出通話的情況下,根據(jù)用戶的錄音設(shè)置信息判斷出當前通話為需要進行錄音的通話;或者
[0021]在當前通話為針對預(yù)定通話對方的撥出通話的情況下,根據(jù)用戶的錄音設(shè)置信息判斷出當前通話為需要進行錄音的通話;或者
[0022]在當前通話為針對預(yù)定通話對方的通話的情況下,根據(jù)用戶的錄音設(shè)置信息判斷出當前通話為需要進行錄音的通話;或者
[0023]在當前通話過程中,根據(jù)用戶點擊錄音按鍵所產(chǎn)生的臨時錄音設(shè)置信息判斷出當前通話為需要進行錄音的通話。
[0024]可選地,在上述方法中,所述用戶的錄音設(shè)置信息包括:對所有通話進行錄音的設(shè)置信息、對所有撥入通話進行錄音的設(shè)置信息、針對預(yù)定通話對方的所有撥入通話進行錄音的設(shè)置信息、對所有撥出通話進行錄音的設(shè)置信息、針對預(yù)定通話對方的所有撥出通話進行錄音的設(shè)置信息、針對預(yù)定通話對方的所有通話進行錄音的設(shè)置信息以及用戶針對當前通話觸發(fā)基于ios的移動電話顯示的錄音按鍵所產(chǎn)生的臨時錄音設(shè)置信息中的至少一個。
[0025]可選地,在上述方法中,所述將所述音頻數(shù)據(jù)存儲到當前通話對應(yīng)的音頻文件中包括:對所述音頻數(shù)據(jù)的格式進行識別;根據(jù)音頻數(shù)據(jù)的格式的識別結(jié)果在判斷出所述音頻數(shù)據(jù)為通話對方的音頻數(shù)據(jù)時,將所述音頻數(shù)據(jù)存儲在通話對方單聲道音頻文件中;根據(jù)音頻數(shù)據(jù)的格式的識別結(jié)果在判斷出所述音頻數(shù)據(jù)為通話本方的音頻數(shù)據(jù)時,將所述音頻數(shù)據(jù)存儲在通話本方單聲道音頻文件中。
[0026]可選地,在上述方法中,所述方法還包括:
[0027]在播放通話錄音時,同時播放所述通話對方單聲道音頻文件和通話本方單聲道音頻文件;或者
[0028]在播放通話錄音時,將所述通話對方單聲道音頻文件和通話本方單聲道音頻文件合成為雙聲道音頻文件,并播放所述雙聲道音頻文件。
[0029]可選地,在上述方法中,該方法還包括:對通話對方的音頻數(shù)據(jù)進行音量放大調(diào)

iF.0
[0030]可選地,在上述方法中,該方法還包括:所述基于iOS的移動電話中存儲有錄音提示音頻數(shù)據(jù),在當前通話為需要進行錄音的通話的情況下,在當前通話過程中播放所述錄音提示音頻數(shù)據(jù)。
[0031]根據(jù)本發(fā)明的另一方面,提供了在基于iOS的移動電話上實現(xiàn)通話錄音的裝置,該裝置包括:
[0032]監(jiān)聽模塊,用于監(jiān)聽基于iOS的移動電話的通話事件;
[0033]截獲模塊,用于基于MobileSubstrate框架,截獲所述基于iOS的移動電話的操作系統(tǒng)中的音頻數(shù)據(jù)處理函數(shù);
[0034]獲取模塊,用于在根據(jù)所述通話事件的監(jiān)聽結(jié)果判斷出所述基于iOS的移動電話當前處于通話狀態(tài),且在根據(jù)用戶的錄音設(shè)置信息判斷出當前通話為需要進行錄音的通話的情況下,從截獲到的所述音頻數(shù)據(jù)處理函數(shù)的輸入?yún)?shù)中獲取當前通話的音頻數(shù)據(jù);
[0035]存儲模塊,用于將所述音頻數(shù)據(jù)存儲到當前通話對應(yīng)的音頻文件中。
[0036]可選地,在上述裝置中,所述獲取模塊具體用于:在監(jiān)聽到通話開始事件的情況下,判斷出所述基于iOS的移動電話當前處于通話狀態(tài)。
[0037]可選地,在上述裝置中,所述監(jiān)聽模塊具體用于:在監(jiān)聽到通話開始事件時,將預(yù)先設(shè)置的通話狀態(tài)標志位的取值設(shè)置為第一預(yù)定值;在監(jiān)聽到通話結(jié)束事件時,將預(yù)先設(shè)置的通話狀態(tài)標志位的取值設(shè)置為第二預(yù)定值;且所述獲取模塊具體用于:在截獲模塊每次截獲到所述音頻數(shù)據(jù)處理函數(shù)時,獲取模塊查詢所述通話狀態(tài)標志位的當前取值,并在所述通話狀態(tài)標志位的當前取值為第一預(yù)定值時,判斷出基于ios的移動電話當前處于通話狀態(tài)。
[0038]可選地,在上述裝置中,所述截獲模塊、獲取模塊和存儲模塊設(shè)置于預(yù)先設(shè)置的通話錄音函數(shù)中,且在所述操作系統(tǒng)中的進程需要調(diào)用所述音頻數(shù)據(jù)處理函數(shù)時,所述通話錄音函數(shù)被所述進程調(diào)用,且由所述截獲模塊調(diào)用所述音頻數(shù)據(jù)處理函數(shù),以截獲所述音頻數(shù)據(jù)處理函數(shù)。
[0039]可選地,在上述裝置中,所述裝置還包括:錄音標志位設(shè)置模塊,用于根據(jù)用戶的錄音設(shè)置信息設(shè)置錄音標志位的取值;[0040]且所述獲取模塊具體用于:在每次截獲到所述音頻數(shù)據(jù)處理函數(shù)時,查詢所述錄音標志位的當前取值,并根據(jù)所述錄音標志位的當前取值判斷出當前通話為需要進行錄音的通話。
[0041]可選地,在上述裝置中,所述獲取模塊具體用于:
[0042]根據(jù)用戶的錄音設(shè)置信息將所有的當前通話均確定為需要進行錄音的通話;或者
[0043]在當前通話為撥入通話的情況下,根據(jù)用戶的錄音設(shè)置信息判斷出當前通話為需要進行錄音的通話;或者
[0044]在當前通話為針對預(yù)定通話對方的撥入通話的情況下,根據(jù)用戶的錄音設(shè)置信息判斷出當前通話為需要進行錄音的通話;或者
[0045]在當前通話為撥出通話的情況下,根據(jù)用戶的錄音設(shè)置信息判斷出當前通話為需要進行錄音的通話;或者
[0046]在當前通話為針對預(yù)定通話對方的撥出通話的情況下,根據(jù)用戶的錄音設(shè)置信息判斷出當前通話為需要進行錄音的通話;或者
[0047]在當前通話為針對預(yù)定通話對方的通話的情況下,根據(jù)用戶的錄音設(shè)置信息判斷出當前通話為需要進行錄音的通話;或者
[0048]在當前通話過程中,根據(jù)用戶點擊錄音按鍵所產(chǎn)生的臨時錄音設(shè)置信息判斷出當前通話為需要進行錄音的通話。
[0049]可選地,在上述裝置中,所述用戶的錄音設(shè)置信息包括:對所有通話進行錄音的設(shè)置信息、對所有撥入通話進行錄音的設(shè)置信息、針對預(yù)定通話對方的所有撥入通話進行錄音的設(shè)置信息、對所有撥出通話進行錄音的設(shè)置信息、針對預(yù)定通話對方的所有撥出通話進行錄音的設(shè)置信息、針對預(yù)定通話對方的所有通話進行錄音的設(shè)置信息以及用戶針對當前通話觸發(fā)基于ios的移動電話顯示的錄音按鍵所產(chǎn)生的臨時錄音設(shè)置信息中的至少一個。
[0050]可選地,在上述裝置中,所述存儲模塊具體用于:對所述音頻數(shù)據(jù)的格式進行識別;根據(jù)音頻數(shù)據(jù)的格式的識別結(jié)果在判斷出所述音頻數(shù)據(jù)為通話對方的音頻數(shù)據(jù)時,將所述音頻數(shù)據(jù)存儲在通話對方單聲道音頻文件中;根據(jù)音頻數(shù)據(jù)的格式的識別結(jié)果在判斷出所述音頻數(shù)據(jù)為通話本方的音頻數(shù)據(jù)時,將所述音頻數(shù)據(jù)存儲在通話本方單聲道音頻文件中。
[0051]可選地,在上述裝置中,所述裝置還包括:錄音播放模塊,用于在播放通話錄音時,同時播放所述通話對方單聲道音頻文件和通話本方單聲道音頻文件;或者,用于在播放通話錄音時,將所述通話對方單聲道音頻文件和通話本方單聲道音頻文件合成為雙聲道音頻文件,并播放所述雙聲道音頻文件。
[0052]可選地,在上述裝置中,該裝置還包括:音量放大模塊,用于對通話對方的音頻數(shù)據(jù)進行音量放大調(diào)整。
[0053]可選地,在上述裝置中,該裝置還包括:錄音提示模塊,用于存儲有錄音提示音頻數(shù)據(jù),在當前通話為需要進行錄音的通話的情況下,在當前通話過程中播放所述錄音提示音頻數(shù)據(jù)。
[0054]根據(jù)本發(fā)明實施例提供的在基于iOS的移動電話上實現(xiàn)通話錄音的方法和裝置,通過利用MobileSubstrate框架可以截獲到基于iOS的移動電話的iOS操作系統(tǒng)的音頻數(shù)據(jù)處理函數(shù)(如mediaserverd進程所調(diào)用的音頻數(shù)據(jù)處理函數(shù)),這樣,在判斷出該基于iOS的移動電話處于通話狀態(tài)且當前通話需要錄音時,可以方便的從截獲到的音頻數(shù)據(jù)處理函數(shù)的輸入?yún)?shù)中獲取到當前通話的音頻數(shù)據(jù),并將這些音頻數(shù)據(jù)存儲為可播放的音頻文件格式,從而后續(xù)可以通過播放相應(yīng)的音頻文件來回放對應(yīng)的通話;本發(fā)明提供的方法和裝置勿需添加任何附加設(shè)備,且具有使用方便、對基于iOS的移動電話的通話無任何影響以及易于應(yīng)用推廣等特點。
[0055]上述說明僅是本發(fā)明技術(shù)方案的概述,為了能夠更清楚的了解本發(fā)明的技術(shù)手段,而可依照說明書的內(nèi)容予以實施,并且為了讓本發(fā)明的上述和其它目的、特征和優(yōu)點能夠更明顯易懂,以下特舉本發(fā)明的【具體實施方式】。
【專利附圖】

【附圖說明】
[0056]通過閱讀下文優(yōu)選實施方式的詳細描述,各種其他的優(yōu)點和益處對于本領(lǐng)域普通技術(shù)人員將變得清楚明了。附圖僅用于示出優(yōu)選實施方式的目的,而并不認為是對本發(fā)明的限制。而且在整個附圖中,用相同的參考符號表示相同的部件。在附圖中:
[0057]圖1示出了根據(jù)本發(fā)明一實施例的在基于iOS的移動電話上實現(xiàn)通話錄音方法流程圖;
[0058]圖2示出了根據(jù)本發(fā)明一實施例的在基于iOS的移動電話上實現(xiàn)通話錄音裝置示意圖;
[0059]圖3示出了根據(jù)本發(fā)明另一實施例的在基于iOS的移動電話上實現(xiàn)通話錄音裝置示意圖;
[0060]圖4示出了圖3示出的裝置所執(zhí)行的部分操作流程圖。
【具體實施方式】
[0061]下面將參照附圖更詳細地描述本公開的示例性實施例。雖然附圖中顯示了本公開的示例性實施例,然而應(yīng)當理解,可以以各種形式實現(xiàn)本公開而不應(yīng)被這里闡述的實施例所限制。相反,提供這些實施例是為了能夠更透徹地理解本公開,并且能夠?qū)⒈竟_的范圍完整的傳達給本領(lǐng)域的技術(shù)人員。
[0062]實施例一、在基于iOS的移動電話上實現(xiàn)通話錄音的方法。該方法的流程如圖1所示。下面以iPhone移動電話為基于iOS的移動電話為例對本方法實施例進行說明。
[0063]圖1中,S100、監(jiān)聽iPhone移動電話的通話事件。
[0064]具體的,本發(fā)明實施例監(jiān)聽iPhone移動電話的通話事件主要是為了確定iPhone移動電話當前是否處于通話狀態(tài),如在監(jiān)聽到通話開始事件時,表示iPhone移動電話接通電話,當前處于通話狀態(tài),而后續(xù)在監(jiān)聽到通話結(jié)束事件時,表示iPhone移動電話已掛斷當前的通話,從而其不再處于通話狀態(tài)。
[0065]為了便于后續(xù)對iPhone移動電話當前是否處于通話狀態(tài)進行判斷,本發(fā)明實施例可以針對通話狀態(tài)設(shè)置標志位,即通話狀態(tài)標志位,通話狀態(tài)標志位的當前取值可以明確的表示出iPhone移動電話當前是否處于通話狀態(tài);例如,在監(jiān)聽到通話開始事件時,將通話狀態(tài)標志位的取值設(shè)置為第一預(yù)定值(如1),表示iPhone移動電話當前處于通話狀態(tài);而在監(jiān)聽到通話結(jié)束事件時,將通話狀態(tài)標志位的取值設(shè)置為第二預(yù)定值(如0),表示iPhone移動電話當前并未處于通話狀態(tài)。該通話狀態(tài)標志位可以在應(yīng)用初始化流程過程中被設(shè)置為第二預(yù)定值,而應(yīng)用初始化流程可以在iPhone移動電話每次開機后被激活執(zhí)行。
[0066]S110、基于MobileSubstrate框架,截獲iPhone移動電話的操作系統(tǒng)中的音頻數(shù)據(jù)處理函數(shù)。
[0067]具體的,針對具有MobileSubstrate框架的iPhone移動電話而言,可以通過利用MobileSubstrate框架來截獲操作系統(tǒng)中的進程所調(diào)用的函數(shù),從而可以獲取到操作系統(tǒng)所產(chǎn)生的全部原始數(shù)據(jù)。
[0068]本發(fā)明實施例可以基于MobileSubstrate框架來設(shè)置通話錄音函數(shù),該通話錄音函數(shù)的主要作用在于,截獲操作系統(tǒng)的進程所調(diào)用的音頻數(shù)據(jù)處理函數(shù),并適時的從截獲的音頻數(shù)據(jù)處理函數(shù)的輸入?yún)?shù)中獲取通話的音頻數(shù)據(jù),然后,將其獲取的音頻數(shù)據(jù)存儲起來。
[0069]在基于MobileSubstrate框架設(shè)置了通話錄音函數(shù)后,在操作系統(tǒng)中的進程需要調(diào)用音頻數(shù)據(jù)處理函數(shù)時,本發(fā)明實施例中的通話錄音函數(shù)會被該進程調(diào)用,并由通話錄音函數(shù)來調(diào)用音頻數(shù)據(jù)處理函數(shù),從而可以截獲到操作系統(tǒng)中的音頻數(shù)據(jù)處理函數(shù)。
[0070]一個具體的例子,mediaserverd是一個在iPhone移動電話的操作系統(tǒng)(iOS操作系統(tǒng))上運行的系統(tǒng)進程,該進程負責對移動電話的音頻數(shù)據(jù)進行處理;而在通話過程中,mediaserverd進程也會對各通話方的音頻數(shù)據(jù)進行處理,因此,本發(fā)明實施例可以通過截獲mediaserverd進程所調(diào)用的相應(yīng)函數(shù)(即音頻數(shù)據(jù)處理函數(shù))來獲取通話過程中的通話音頻數(shù)據(jù),通過將這些音頻數(shù)據(jù)存儲為可播放的音頻文件格式,從而可以實現(xiàn)通話錄音功倉泛。
[0071]需要說明的是,雖然上述S100和SllO是按照順序先后說明的,但是在實際應(yīng)用中,兩者之間并沒有先后執(zhí)行順序,兩者通常是并行執(zhí)行的。
[0072]S120、在根據(jù)通話事件的監(jiān)聽結(jié)果判斷出iPhone移動電話當前處于通話狀態(tài),且在根據(jù)用戶的錄音設(shè)置信息判斷出當前通話為需要進行錄音的通話的情況下,從截獲到的音頻數(shù)據(jù)處理函數(shù)的輸入?yún)?shù)中獲取當前通話的音頻數(shù)據(jù)。
[0073]具體的,iPhone移動電話的操作系統(tǒng)在需要對音頻數(shù)據(jù)進行處理時,通常會由mediaserverd進程調(diào)用音頻數(shù)據(jù)處理函數(shù),因此,本發(fā)明實施例截獲的音頻數(shù)據(jù)處理函數(shù)的輸入?yún)?shù)中的音頻數(shù)據(jù)并不一定是通話過程中的音頻數(shù)據(jù);另外,有些通話也許并不是用戶需要進行錄音的通話,因此,本發(fā)明實施例在每次截獲到音頻數(shù)據(jù)處理函數(shù)時,均應(yīng)進行iPhone移動電話當前是否為通話狀態(tài)以及當前通話是否為需要錄音的通話的判斷操作。該判斷操作可以由通話錄音函數(shù)來執(zhí)行,即在通話錄音函數(shù)被進程調(diào)用后,通話錄音函數(shù)需要執(zhí)行上述判斷操作,如果判斷的結(jié)果為iPhone移動電話當前不處于通話狀態(tài),或者當前通話不是需要進行錄音的通話,則通話錄音函數(shù)不會執(zhí)行后續(xù)的獲取音頻數(shù)據(jù)以及存儲的操作,可以僅調(diào)用音頻數(shù)據(jù)處理函數(shù)即可。
[0074]本發(fā)明實施例中的當前通話是否為需要錄音的通話的判斷操作可以基于錄音標志位來實現(xiàn)。上述錄音標志位的取值是根據(jù)用戶的錄音設(shè)置信息來設(shè)置的。上述用戶的錄音設(shè)置信息可以具體包括:對所有通話進行錄音的設(shè)置信息、對所有撥入通話進行錄音的設(shè)置信息、針對預(yù)定通話對方的所有撥入通話進行錄音的設(shè)置信息、對所有撥出通話進行錄音的設(shè)置信息、針對預(yù)定通話對方的所有撥出通話進行錄音的設(shè)置信息、針對預(yù)定通話對方的所有通話進行錄音的設(shè)置信息以及用戶針對當前通話觸發(fā)iPhone移動電話顯示的錄音按鍵所產(chǎn)生的臨時錄音設(shè)置信息等等。上述用戶的錄音設(shè)置信息可以通過iPhone移動電話中通話錄音應(yīng)用等提供的設(shè)置通話錄音參數(shù)的界面來設(shè)置。
[0075]如果用戶設(shè)置了對所有通話進行錄音的設(shè)置信息,則上述錄音標志位的當前取值可以始終被設(shè)置為第三預(yù)定值。
[0076]如果用戶設(shè)置了對所有撥入通話進行錄音的設(shè)置信息,則在監(jiān)聽到通話開始事件時,應(yīng)判斷出當前通話是撥入通話還是撥出通話,如果是撥入通話則將錄音標志位的當前取值設(shè)置為第三預(yù)定值,否則,將錄音標志位的當前取值設(shè)置為第四預(yù)定值。
[0077]如果用戶設(shè)置了針對預(yù)定通話對方的所有撥入通話進行錄音的設(shè)置信息,則在監(jiān)聽到通話開始事件時,可以先判斷當前通話是撥入通話還是撥出通話,如果是撥入通話,可以再繼續(xù)判斷該撥入通話是否為預(yù)定通話對方的撥入通話,如果是預(yù)定通話對方的撥入通話,則將錄音標志位的當前取值設(shè)置為第三預(yù)定值,否則,將錄音標志位的當前取值設(shè)置為第四預(yù)定值。
[0078]如果用戶設(shè)置了對所有撥出通話進行錄音的設(shè)置信息,則在監(jiān)聽到通話開始事件時,應(yīng)判斷當前通話是撥入通話還是撥出通話,如果當前通話是撥出通話,則將錄音標志位的當前取值設(shè)置為第三預(yù)定值,否則,將錄音標志位的當前取值設(shè)置為第四預(yù)定值。
[0079]如果用戶設(shè)置了針對預(yù)定通話對方的所有撥出通話進行錄音的設(shè)置信息,則在監(jiān)聽到通話開始事件時,可以先判斷當前通話是撥入通話還是撥出通話,如果是撥出通話,再繼續(xù)判斷該撥出通話是否為針對預(yù)定通話對方的撥出通話,如果是針對預(yù)定通話對方的撥出通話,則將錄音標志位的當前取值設(shè)置為第三預(yù)定值,否則,將錄音標志位的當前取值設(shè)置為第四預(yù)定值。
[0080]如果用戶設(shè)置了針對預(yù)定通話對方的所有通話進行錄音的設(shè)置信息,則在監(jiān)聽到通話開始事件時,應(yīng)判斷當前通話的通話對方是否為預(yù)先設(shè)置的預(yù)定通話對方,如果是預(yù)定通話對方,則將錄音標志位的當前取值設(shè)置為第三預(yù)定值,否則,將錄音標志位的當前取值設(shè)置為第四預(yù)定值。
[0081]如果在監(jiān)聽到通話開始事件時,已經(jīng)判斷出當前通話不需要錄音,則錄音標志位的當前取值被設(shè)置為第四預(yù)定值,然而,如果用戶在當前通話過程中臨時點擊了 iPhone移動電話顯示畫面中的錄音按鍵,則應(yīng)將錄音標志位的當前取值修改為第三預(yù)定值,之后,如果用戶在當前通話過程中臨時點擊了 iPhone移動電話顯示畫面中的停止錄音按鍵,則應(yīng)將錄音標志位的當前取值更改為第四預(yù)定值。
[0082]該錄音標志位可以在應(yīng)用初始化流程過程中被設(shè)置為第四預(yù)定值,而應(yīng)用初始化流程可以在iPhone移動電話每次開機后被激活執(zhí)行。
[0083]在設(shè)置了通話狀態(tài)標志位以及錄音標志位的情況下,本發(fā)明實施例可以在每次截獲到音頻數(shù)據(jù)處理函數(shù)時,查詢通話狀態(tài)標志位的當前取值以及錄音標志位的當前取值,如果查詢到的通話狀態(tài)標志位的當前取值為第一預(yù)定值(如1),且錄音標志位的當前取值為第三預(yù)定值(如1),則可以判斷出iPhone移動電話當前處于通話狀態(tài)且當前通話為需要進行錄音的通話,從而應(yīng)從截獲的音頻數(shù)據(jù)處理函數(shù)的輸入?yún)?shù)中獲取音頻數(shù)據(jù),否則,無論通話狀態(tài)標志位和錄音標志位的當前取值為I和0還是0和I,亦或是0和0,均不執(zhí)行從截獲的音頻數(shù)據(jù)處理函數(shù)的輸入?yún)?shù)中獲取音頻數(shù)據(jù)的操作。[0084]另外,需要說明的是,在判斷出需要對當前通話進行錄音的情況下,可以在通話過程中播放預(yù)先存儲的錄音提示音的音頻數(shù)據(jù);該錄音提示音的音頻數(shù)據(jù)可以為提示通話對方“當前通話會被錄音”的音頻數(shù)據(jù);也可以是每隔預(yù)定間隔而播放的諸如“滴”的一聲響的音頻數(shù)據(jù)(如每5秒播放0.3秒的滴滴聲),以提示通話本方,當前通話正在被錄音;當然,也可以是其他需要警示的提示音的音頻數(shù)據(jù)。
[0085]還有,雖然上述S100、S110和S120是按照順序先后說明的,但是在實際應(yīng)用中,根據(jù)用戶的錄音設(shè)置信息設(shè)置錄音標志位的取值的過程與SlOO和SllO之間可以沒有先后執(zhí)行順序。
[0086]S130、將音頻數(shù)據(jù)存儲到當前通話對應(yīng)的音頻文件中。
[0087]具體的,本發(fā)明實施例可以將獲取的音頻數(shù)據(jù)存儲到當前通話對應(yīng)的單聲道音頻文件中,這里的單聲道音頻文件有兩個,即通話對方單聲道音頻文件和通話本方單聲道音頻文件;單聲道音頻文件的文件名可以與通話時間以及通話對方的標識相關(guān)。
[0088]本發(fā)明實施例可以通過對獲取的音頻數(shù)據(jù)的數(shù)據(jù)格式進行識別,來判斷當前獲取到的音頻數(shù)據(jù)是通話對方的音頻數(shù)據(jù)(即基于speaker拾取的音頻數(shù)據(jù)),還是通話本方的音頻數(shù)據(jù)(即基于麥克拾取的音頻數(shù)據(jù)),從而通過數(shù)據(jù)格式的識別可以實現(xiàn)將當前獲取到的音頻數(shù)據(jù)存儲到通話對方單聲道音頻文件或者通話本方單聲道音頻文件中。
[0089]另外,本發(fā)明實施例可以在通話結(jié)束時,對已存儲的通話對方的音頻數(shù)據(jù)進行音量放大調(diào)整,以使該通話錄音在回放時,通話對方和通話本方的音頻數(shù)據(jù)的播放音量基本相同,以便于錄音回放時更夠更真實的還原通話時的場景;當然,本發(fā)明實施例也可以在播放通話錄音時,對通話對方的音頻數(shù)據(jù)進行音量放大調(diào)整;或者,本發(fā)明實施例也可以在音頻數(shù)據(jù)的存儲過程中進行音量放大調(diào)整。本發(fā)明實施例不限制執(zhí)行音量放大調(diào)整操作的具體實現(xiàn)時機。
[0090]需要說明的是,在音量放大調(diào)整過程中,本發(fā)明實施例可以參照通話本方的音頻數(shù)據(jù)的音量屬性來調(diào)整通話對方的音頻數(shù)據(jù)的音量,以便于在通話錄音回放過程中,通話本方的音量與通話對方的音量基本一致。當然,本發(fā)明實施例也可以根據(jù)經(jīng)驗預(yù)先設(shè)置通話對方的音頻數(shù)據(jù)的音量調(diào)整倍數(shù),這樣,可以直接根據(jù)該音量調(diào)整倍數(shù)對通話對方的音頻數(shù)據(jù)進行音量調(diào)整。
[0091]S140、根據(jù)用戶的選擇播放相應(yīng)的通話錄音。
[0092]具體的,用戶可以通過iPhone移動電話中的錄音播放畫面選擇其需要播放的通話錄音。在上述存儲的音頻數(shù)據(jù)為兩個單聲道音頻文件的情況下,如果上述音頻數(shù)據(jù)是以通話對方單聲道音頻文件和通話本方單聲道音頻文件的形式存儲的,則可以在播放通話錄音時,同時播放該通話對方單聲道音頻文件和通話本方單聲道音頻文件;也可以在播放通話錄音時,先將兩個單聲道音頻文件合成一個雙聲道音頻文件,然后,再播放該雙聲道音頻文件。該雙聲道音頻文件可以是能夠在計算機中播放的音頻文件。
[0093]另外,本發(fā)明實施例也可以在存儲音頻數(shù)據(jù)的時候,對音頻數(shù)據(jù)進行格式轉(zhuǎn)換,這樣,可以直接將截獲到的音頻數(shù)據(jù)存儲為雙聲道音頻文件,從而在通話錄音的回放時,可以直接播放該雙聲道音頻文件即可。
[0094]需要說明的是,本發(fā)明實施例可以在被錄音的通話結(jié)束時,存儲與該通話相關(guān)的概要信息,如通話開始時間、通話結(jié)束時間、通話對方的號碼/姓名以及該通話為撥出/撥入電話等。該概要信息可以有助于用戶選擇其需要播放的通話錄音。上述與通話相關(guān)的概要信息可以存儲于數(shù)據(jù)庫或者表中。
[0095]實施例二、在基于iOS的移動電話上實現(xiàn)通話錄音的裝置。該裝置如圖2所示。下面以iPhone移動電話為基于iOS的移動電話為例對本裝置的實施例進行說明。
[0096]圖2中,該裝置主要包括:監(jiān)聽模塊200、截獲模塊210、獲取模塊220以及存儲模塊230,另外,該裝置還可以包括:錄音標志位設(shè)置模塊240、錄音播放模塊250、音量放大模塊260以及錄音提示模塊270。其中,上述截獲模塊210、獲取模塊220以及存儲模塊230可以通過下述的通話錄音函數(shù)來實現(xiàn)。
[0097]監(jiān)聽模塊200與獲取模塊220連接。監(jiān)聽模塊200主要用于監(jiān)聽iPhone移動電話的通話事件。
[0098]具體的,監(jiān)聽模塊200主要是為了確定iPhone移動電話當前是否處于通話狀態(tài),為了便于獲取模塊220對iPhone移動電話當前是否處于通話狀態(tài)進行判斷,本發(fā)明實施例可以針對通話狀態(tài)設(shè)置標志位(即通話狀態(tài)標志位),通話狀態(tài)標志位的當前取值可以明確的表示出iPhone移動電話當前是否處于通話狀態(tài);例如,在監(jiān)聽模塊200監(jiān)聽到通話開始事件時,監(jiān)聽模塊200將通話狀態(tài)標志位的取值設(shè)置為第一預(yù)定值(如I ),表示iPhone移動電話當前處于通話狀態(tài);而在監(jiān)聽模塊200監(jiān)聽到通話結(jié)束事件時,監(jiān)聽模塊200將通話狀態(tài)標志位的取值設(shè)置為第二預(yù)定值(如0),表示iPhone移動電話當前并未處于通話狀態(tài)。該通話狀態(tài)標志位可以在應(yīng)用初始化流程過程中被設(shè)置為第二預(yù)定值,而應(yīng)用初始化流程可以在iPhone移動電話每次開機后被激活執(zhí)行。
[0099]截獲模塊210與獲取模塊220連接。截獲模塊210主要用于基于MobileSubstrate框架,截獲iPhone移動電話的操作系統(tǒng)中的音頻數(shù)據(jù)處理函數(shù)。
[0100]具體的,針對具有MobileSubstrate框架的iPhone移動電話而言,截獲模塊210可以通過利用MobileSubstrate框架來截獲操作系統(tǒng)中的進程所調(diào)用的函數(shù),從而可以獲取到操作系統(tǒng)所產(chǎn)生的全部原始數(shù)據(jù)。
[0101]本發(fā)明實施例的截獲模塊210可以設(shè)置于通話錄音函數(shù)中,這樣,在操作系統(tǒng)中的進程需要調(diào)用音頻數(shù)據(jù)處理函數(shù)時,本發(fā)明實施例中的通話錄音函數(shù)會被該進程調(diào)用,并由通話錄音函數(shù)來調(diào)用音頻數(shù)據(jù)處理函數(shù),從而截獲模塊210可以截獲到音頻數(shù)據(jù)處理函數(shù)。
[0102]獲取模塊220與監(jiān)聽模塊200、截獲模塊210以及錄音標志位設(shè)置模塊240分別連接。獲取模塊220主要用于在根據(jù)通話事件的監(jiān)聽結(jié)果(如監(jiān)聽模塊200設(shè)置的通話狀態(tài)標志位)判斷出iPhone移動電話當前處于通話狀態(tài),且在根據(jù)用戶的錄音設(shè)置信息判斷出當前通話為需要進行錄音的通話(如根據(jù)錄音標志位的當前取值進行判斷)的情況下,從截獲模塊210截獲到的音頻數(shù)據(jù)處理函數(shù)的輸入?yún)?shù)中獲取當前通話的音頻數(shù)據(jù)。
[0103]具體的,在監(jiān)聽模塊200設(shè)置了通話狀態(tài)標志位以及錄音標志位設(shè)置模塊240設(shè)置了錄音標志位的情況下,獲取模塊220可以在截獲模塊210每次截獲到音頻數(shù)據(jù)處理函數(shù)時,查詢通話狀態(tài)標志位的當前取值以及錄音標志位的當前取值,如果通話狀態(tài)標志位的當前取值為第一預(yù)定值(如1),且錄音標志位的當前取值為第三預(yù)定值(如1),則獲取模塊220可以判斷出iPhone移動電話當前處于通話狀態(tài)且當前通話為需要進行錄音的通話,從而應(yīng)從截獲模塊210截獲的音頻數(shù)據(jù)處理函數(shù)的輸入?yún)?shù)中獲取音頻數(shù)據(jù),否則,無論通話狀態(tài)標志位和錄音標志位的當前取值為I和O還是O和I,亦或是O和0,獲取模塊220均不執(zhí)行從截獲模塊210截獲的音頻數(shù)據(jù)處理函數(shù)的輸入?yún)?shù)中獲取音頻數(shù)據(jù)的操作。
[0104]存儲模塊230與獲取模塊220連接。存儲模塊230主要用于將獲取模塊220獲取到的音頻數(shù)據(jù)存儲到當前通話對應(yīng)的音頻文件中。
[0105]具體的,存儲模塊230可以將獲取模塊220獲取的音頻數(shù)據(jù)存儲到當前通話對應(yīng)的單聲道音頻文件中,這里的單聲道音頻文件有兩個,即通話對方單聲道音頻文件和通話本方單聲道音頻文件;單聲道音頻文件的文件名可以與通話時間以及通話對方的標識相關(guān)。
[0106]存儲模塊230可以通過對獲取模塊220獲取的音頻數(shù)據(jù)的數(shù)據(jù)格式進行識別,來判斷當前獲取到的音頻數(shù)據(jù)是通話對方的音頻數(shù)據(jù)(即基于speaker拾取的音頻數(shù)據(jù)),還是通話本方的音頻數(shù)據(jù)(即基于麥克拾取的音頻數(shù)據(jù)),從而存儲模塊230通過數(shù)據(jù)格式的識別可以實現(xiàn)將當前獲取到的音頻數(shù)據(jù)存儲到通話對方單聲道音頻文件或者通話本方單聲道音頻文件中。另外,存儲模塊230在存儲音頻數(shù)據(jù)時,也可以將其獲取到的所有音頻數(shù)據(jù)均轉(zhuǎn)換為雙聲道音頻文件的格式的音頻數(shù)據(jù),并將轉(zhuǎn)換后的音頻數(shù)據(jù)存儲在雙聲道音頻文件中。
[0107]錄音標志位設(shè)置模塊240與獲取模塊220連接。錄音標志位設(shè)置模塊240主要用于根據(jù)用戶的錄音設(shè)置信息設(shè)置錄音標志位的取值,該錄音標志位的取值是獲取模塊220執(zhí)行判斷操作的一個依據(jù)。
[0108]具體的,上述用戶的錄音設(shè)置信息可以具體包括:對所有通話進行錄音的設(shè)置信息、對所有撥入通話進行錄音的設(shè)置信息、針對預(yù)定通話對方的所有撥入通話進行錄音的設(shè)置信息、對所有撥出通話進行錄音的設(shè)置信息、針對預(yù)定通話對方的所有撥出通話進行錄音的設(shè)置信息、針對預(yù)定通話對方的所有通話進行錄音的設(shè)置信息以及用戶針對當前通話觸發(fā)iPhone移動電話顯示的錄音按鍵所產(chǎn)生的臨時錄音設(shè)置信息等等。上述用戶的錄音設(shè)置信息可以通過設(shè)置模塊(圖2中未示出)為用戶提供的設(shè)置通話錄音參數(shù)的界面來設(shè)置,錄音標志位設(shè)置模塊240根據(jù)用戶的錄音設(shè)置信息設(shè)置錄音標志位的取值的具體例子如上述方法實施例中的描述,在此不再詳細說明。
[0109]該錄音標志位可以在應(yīng)用初始化流程過程中被設(shè)置為第四預(yù)定值,而應(yīng)用初始化流程可以在iPhone移動電話每次開機后被激活執(zhí)行。
[0110]錄音播放模塊250與存儲模塊230連接。錄音播放模塊250主要用于回放通話錄音。具體的,在通話錄音為兩個單聲道音頻文件的情況下,錄音播放模塊250在根據(jù)用戶的選擇播放相應(yīng)的通話錄音時,可以同時播放通話對方單聲道音頻文件和通話本方單聲道音頻文件;也可以先將通話對方單聲道音頻文件和通話本方單聲道音頻文件合成為雙聲道音頻文件,然后,再播放該雙聲道音頻文件。另外,如果存儲模塊230在存儲音頻數(shù)據(jù)時,已經(jīng)將該音頻數(shù)據(jù)已雙聲道音頻文件的格式存儲,則錄音播放模塊250可以直接播放該雙聲道首頻文件。
[0111]音量放大模塊260與存儲模塊230連接。音量放大模塊260主要用于在當前通話結(jié)束時,對存儲模塊230存儲的通話對方的音頻數(shù)據(jù)進行音量放大調(diào)整,以使該通話錄音在回放時,通話對方和通話本方的音頻數(shù)據(jù)的播放音量基本相同,以便于錄音回放時更夠更真實的還原通話時的場景。當然,音量放大模塊260也可以在錄音播放模塊250播放通話錄音時,對通話對方的音頻數(shù)據(jù)進行音量放大調(diào)整;或者,音量放大模塊260也可以在音頻數(shù)據(jù)的存儲過程中進行音量放大調(diào)整。本發(fā)明實施例不限制音量放大模塊260執(zhí)行音量放大調(diào)整操作的具體實現(xiàn)時機。
[0112]在音量放大調(diào)整過程中,音量放大模塊260可以參照通話本方的音頻數(shù)據(jù)的音量屬性來調(diào)整通話對方的音頻數(shù)據(jù)的音量,以便于在通話錄音回放過程中,通話本方的音量與通話對方的音量基本一致。當然,音量放大模塊260中可以存儲有根據(jù)經(jīng)驗預(yù)先設(shè)置通話對方的音頻數(shù)據(jù)的音量調(diào)整倍數(shù),這樣,音量放大模塊260可以直接根據(jù)該音量調(diào)整倍數(shù)對通話對方的音頻數(shù)據(jù)進行音量調(diào)整。
[0113]錄音提示模塊270與獲取模塊220連接。錄音提示模塊270主要用于在需要對當前通話進行錄音的情況下,可以在通話過程中播放預(yù)先存儲的錄音提示音的音頻數(shù)據(jù);該錄音提示音的音頻數(shù)據(jù)可以為提示通話對方“當前通話會被錄音”的音頻數(shù)據(jù);也可以是每隔預(yù)定間隔而播放的諸如“滴”的一聲響的音頻數(shù)據(jù),以提示通話本方,當前通話正在被錄音;當然,也可以是其他需要警示的提示音的音頻數(shù)據(jù)。
[0114]實施例三、在基于iOS的移動電話上實現(xiàn)通話錄音的裝置。該裝置如圖3所示。
[0115]圖3中,該裝置主要包括:音頻數(shù)據(jù)處理模塊300、錄音按鍵顯示模塊310、設(shè)置模塊320以及錄音文件瀏覽模塊330。
[0116]音頻數(shù)據(jù)處理模塊300 (包括上述監(jiān)聽模塊200、截獲模塊210、獲取模塊220、存儲模塊230、錄音標志位設(shè)置模塊240、音量放大模塊260以及錄音提示模塊270)主要用于截獲音頻數(shù)據(jù)以及保存音頻數(shù)據(jù)等。
[0117]錄音按鍵顯示模塊310主要用于在通話的界面顯示錄音按鍵(如紅色的錄音按鍵),該錄音按鍵可以提示用戶當前的錄音狀態(tài)。
[0118]設(shè)置模塊320主要用于對用戶的通話錄音的參數(shù)進行設(shè)定,如是否開啟通話錄音功能、是否自動錄制所有通話、是否只錄制呼出通話、是否只錄制呼入通話以及是否開啟手動通話錄音。另外,設(shè)置模塊320還可以設(shè)置是否播放錄音警告音以及錄音提示音等。上述設(shè)置的用戶的通話錄音的參數(shù)可以存儲于錄音配置文件中。
[0119]錄音文件瀏覽模塊330 (包括上述錄音播放模塊250)主要用于為用戶展示已經(jīng)錄制好的通話錄音的概要信息,在用戶點擊收聽相應(yīng)的通話錄音的概要信息時,為用戶播放相應(yīng)的通話內(nèi)容。另外,錄音文件瀏覽模塊330也可以實現(xiàn)將相應(yīng)通話錄音的音頻文件導(dǎo)出到電腦上或者將相應(yīng)的通話錄音的音頻文件通過電子郵件的附件發(fā)送出去。
[0120]該裝置實現(xiàn)通話錄音的一個具體例子如下:
[0121]通過MobileSubstrate框架,音頻數(shù)據(jù)處理模塊300截獲進程mediaserverd中處理音頻數(shù)據(jù)處理函數(shù),并監(jiān)聽系統(tǒng)的通話事件。
[0122]通過MobileSubstrate框架,錄音按鍵顯示模塊310截獲id分別為"com.apple.mobilephone"(系統(tǒng)電話進程)和"com.apple, springboard"(系統(tǒng)桌面進程)中顯示默認通話界面函數(shù)。
[0123]當有電話接通時,音頻數(shù)據(jù)處理模塊300檢測用戶通過設(shè)置模塊320設(shè)置于錄音配置文件中的通話錄音參數(shù),以根據(jù)其檢測的參數(shù)而執(zhí)行相應(yīng)的操作;具體的,如果用戶未開啟通話錄音功能,則音頻數(shù)據(jù)處理模塊300不進行獲取音頻數(shù)據(jù)并存儲等操作。如果用戶開啟了通話錄音功能,且用戶選擇的通話錄音模式是錄制所有通話,或者只錄制撥出通話且當前通話是撥出通話狀態(tài),或者只錄制撥入通話且當前通話是撥入通話狀態(tài),則音頻數(shù)據(jù)處理模塊300開始收集通過移動電話的speaker發(fā)出的音頻數(shù)據(jù),以及通過移動電話的麥克(mic)接收的音頻數(shù)據(jù),并以“移動電話號碼-電話接通時間.caf”為文件名,分別將這兩種音頻數(shù)據(jù)保存到兩個單聲道音頻文件中;同時,音頻數(shù)據(jù)處理模塊300通知錄音按鍵顯示模塊310顯示錄音按鍵動畫(如紅色錄音按鍵閃爍的動畫),以提示用戶此時正在錄音;否則,音頻數(shù)據(jù)處理模塊300通知錄音按鍵顯示模塊310顯示一個靜止的錄音按鍵(如紅色錄音按鍵),表示此時尚未錄音(如圖4所示的流程)。在當前通話結(jié)束時,音頻數(shù)據(jù)處理模塊300應(yīng)對通過移動電話speaker發(fā)出的音頻數(shù)據(jù)對應(yīng)的文件中的音頻數(shù)據(jù)進行音量放大處理,使兩種音頻數(shù)據(jù)的音量范圍基本一致。
[0124]需要說明的是,用戶可以通過點擊錄音按鍵(如點擊紅色按鍵),以通知音頻數(shù)據(jù)處理模塊300開始對當前通話錄音。且在用戶點擊了該錄音按鍵(如點擊紅色按鍵)的情況下,則錄音按鍵顯示模塊310應(yīng)顯示紅色按鍵閃爍的動畫,以提示用戶此時正在錄音。
[0125]本發(fā)明實施例還提供了 Al、一種在基于iOS的移動電話上實現(xiàn)通話錄音的方法,其中,該方法包括:
[0126]監(jiān)聽基于iOS的移動電話的通話事件;
[0127]基于MobileSubstrate框架,截獲所述基于iOS的移動電話的操作系統(tǒng)中的音頻數(shù)據(jù)處理函數(shù);
[0128]在根據(jù)所述通話事件的監(jiān)聽結(jié)果判斷出所述基于iOS的移動電話當前處于通話狀態(tài),且在根據(jù)用戶的錄音設(shè)置信息判斷出當前通話為需要進行錄音的通話的情況下,從截獲到的所述音頻數(shù)據(jù)處理函數(shù)的輸入?yún)?shù)中獲取當前通話的音頻數(shù)據(jù);
[0129]將所述音頻數(shù)據(jù)存儲到當前通話對應(yīng)的音頻文件中。
[0130]A2、如Al所述的方法,其中,所述根據(jù)所述通話事件的監(jiān)聽結(jié)果判斷出所述基于ios的移動電話當前處于通話狀態(tài)包括:
[0131]在監(jiān)聽到通話開始事件的情況下,判斷出所述基于iOS的移動電話當前處于通話狀態(tài)。
[0132]A3、如Al所述的方法,其中,所述監(jiān)聽基于iOS的移動電話的通話事件包括:
[0133]在監(jiān)聽到通話開始事件的情況下,將預(yù)先設(shè)置的通話狀態(tài)標志位的取值設(shè)置為第
一預(yù)定值;
[0134]在監(jiān)聽到通話結(jié)束事件的情況下,將預(yù)先設(shè)置的通話狀態(tài)標志位的取值設(shè)置為第
二預(yù)定值;
[0135]且所述根據(jù)所述通話事件的監(jiān)聽結(jié)果判斷出所述基于iOS的移動電話當前處于通話狀態(tài)包括:
[0136]在每次截獲到所述音頻數(shù)據(jù)處理函數(shù)的情況下,查詢所述通話狀態(tài)標志位的當前取值,并在所述通話狀態(tài)標志位的當前取值為第一預(yù)定值時,判斷出基于ios的移動電話當前處于通話狀態(tài)。
[0137]A4、如Al所述的方法,其中,所述截獲所述基于iOS的移動電話的操作系統(tǒng)中的音頻數(shù)據(jù)處理函數(shù)包括:
[0138]在所述操作系統(tǒng)中的進程需要調(diào)用所述音頻數(shù)據(jù)處理函數(shù)時,預(yù)先設(shè)置的通話錄音函數(shù)被所述進程調(diào)用,且由所述通話錄音函數(shù)調(diào)用所述音頻數(shù)據(jù)處理函數(shù),以截獲所述音頻數(shù)據(jù)處理函數(shù)。
[0139]A5、如Al所述的方法,其中,所述方法還包括:
[0140]根據(jù)用戶的錄音設(shè)置信息設(shè)置錄音標志位的取值;
[0141]且所述根據(jù)用戶的錄音設(shè)置信息判斷出當前通話為需要進行錄音的通話包括:
[0142]在每次截獲到所述音頻數(shù)據(jù)處理函數(shù)時,查詢所述錄音標志位的當前取值,并根據(jù)所述錄音標志位的當前取值判斷出當前通話為需要進行錄音的通話。
[0143]A6、如Al所述的方法,其中,所述根據(jù)用戶的錄音設(shè)置信息判斷出當前通話為需要進行錄音的通話包括:
[0144]根據(jù)用戶的錄音設(shè)置信息將所有的當前通話均確定為需要進行錄音的通話;或者
[0145]在當前通話為撥入通話的情況下,根據(jù)用戶的錄音設(shè)置信息判斷出當前通話為需要進行錄音的通話;或者
[0146]在當前通話為針對預(yù)定通話對方的撥入通話的情況下,根據(jù)用戶的錄音設(shè)置信息判斷出當前通話為需要進行錄音的通話;或者
[0147]在當前通話為撥出通話的情況下,根據(jù)用戶的錄音設(shè)置信息判斷出當前通話為需要進行錄音的通話;或者
[0148]在當前通話為針對預(yù)定通話對方的撥出通話的情況下,根據(jù)用戶的錄音設(shè)置信息判斷出當前通話為需要進行錄音的通話;或者
[0149]在當前通話為針對預(yù)定通話對方的通話的情況下,根據(jù)用戶的錄音設(shè)置信息判斷出當前通話為需要進行錄音的通話;或者
[0150]在當前通話過程中,根據(jù)用戶點擊錄音按鍵所產(chǎn)生的臨時錄音設(shè)置信息判斷出當前通話為需要進行錄音的通話。
[0151]A7、如Al所述的方法,其中,所述用戶的錄音設(shè)置信息包括:對所有通話進行錄音的設(shè)置信息、對所有撥入通話進行錄音的設(shè)置信息、針對預(yù)定通話對方的所有撥入通話進行錄音的設(shè)置信息、對所有撥出通話進行錄音的設(shè)置信息、針對預(yù)定通話對方的所有撥出通話進行錄音的設(shè)置信息、針對預(yù)定通話對方的所有通話進行錄音的設(shè)置信息以及用戶針對當前通話觸發(fā)基于iOS的移動電話顯示的錄音按鍵所產(chǎn)生的臨時錄音設(shè)置信息中的至少一個。
[0152]AS、如AAl所述的方法,其中,所述將所述音頻數(shù)據(jù)存儲到當前通話對應(yīng)的音頻文件中包括:
[0153]對所述音頻數(shù)據(jù)的格式進行識別;
[0154]根據(jù)音頻數(shù)據(jù)的格式的識別結(jié)果在判斷出所述音頻數(shù)據(jù)為通話對方的音頻數(shù)據(jù)時,將所述音頻數(shù)據(jù)存儲在通話對方單聲道音頻文件中;
[0155]根據(jù)音頻數(shù)據(jù)的格式的識別結(jié)果在判斷出所述音頻數(shù)據(jù)為通話本方的音頻數(shù)據(jù)時,將所述音頻數(shù)據(jù)存儲在通話本方單聲道音頻文件中。
[0156]A9、如A8所述的方法,其中,所述方法還包括:
[0157]在播放通話錄音時,同時播放所述通話對方單聲道音頻文件和通話本方單聲道音頻文件;或者
[0158]在播放通話錄音時,將所述通話對方單聲道音頻文件和通話本方單聲道音頻文件合成為雙聲道音頻文件,并播放所述雙聲道音頻文件。[0159]A10、如Al至9中任一所述的方法,其中,該方法還包括:
[0160]對通話對方的音頻數(shù)據(jù)進行音量放大調(diào)整。
[0161]AU、如Al至A9中任一所述的方法,其中,該方法還包括:
[0162]所述基于iOS的移動電話中存儲有錄音提示音頻數(shù)據(jù),在當前通話為需要進行錄音的通話的情況下,在當前通話過程中播放所述錄音提示音頻數(shù)據(jù)。
[0163]本發(fā)明實施例還提供了 B12、一種在基于iOS的移動電話上實現(xiàn)通話錄音的裝置,其中,該裝置包括:
[0164]監(jiān)聽模塊,用于監(jiān)聽基于iOS的移動電話的通話事件;
[0165]截獲模塊,用于基于MobileSubstrate框架,截獲所述基于iOS的移動電話的操作系統(tǒng)中的音頻數(shù)據(jù)處理函數(shù);
[0166]獲取模塊,用于在根據(jù)所述通話事件的監(jiān)聽結(jié)果判斷出所述基于iOS的移動電話當前處于通話狀態(tài),且在根據(jù)用戶的錄音設(shè)置信息判斷出當前通話為需要進行錄音的通話的情況下,從截獲到的所述音頻數(shù)據(jù)處理函數(shù)的輸入?yún)?shù)中獲取當前通話的音頻數(shù)據(jù);
[0167]存儲模塊,用于將所述音頻數(shù)據(jù)存儲到當前通話對應(yīng)的音頻文件中。
[0168]B13、如B12所述的裝置,其中,所述獲取模塊具體用于:
[0169]在監(jiān)聽到通話開始事件的情況下,判斷出所述基于iOS的移動電話當前處于通話狀態(tài)。
[0170]B14、如B12所述的裝置,其中,所述監(jiān)聽模塊具體用于:
[0171]在監(jiān)聽到通話開始事件時,將預(yù)先設(shè)置的通話狀態(tài)標志位的取值設(shè)置為第一預(yù)定值;
[0172]在監(jiān)聽到通話結(jié)束事件時,將預(yù)先設(shè)置的通話狀態(tài)標志位的取值設(shè)置為第二預(yù)定值;
[0173]且所述獲取模塊具體用于:
[0174]在截獲模塊每次截獲到所述音頻數(shù)據(jù)處理函數(shù)時,獲取模塊查詢所述通話狀態(tài)標志位的當前取值,并在所述通話狀態(tài)標志位的當前取值為第一預(yù)定值時,判斷出基于iOS的移動電話當前處于通話狀態(tài)。
[0175]B15、如B12所述的裝置,其中,所述截獲模塊、獲取模塊和存儲模塊設(shè)置于預(yù)先設(shè)置的通話錄音函數(shù)中,且在所述操作系統(tǒng)中的進程需要調(diào)用所述音頻數(shù)據(jù)處理函數(shù)時,所述通話錄音函數(shù)被所述進程調(diào)用,且由所述截獲模塊調(diào)用所述音頻數(shù)據(jù)處理函數(shù),以截獲所述音頻數(shù)據(jù)處理函數(shù)。
[0176]B16、如B12所述的裝置,其中,所述裝置還包括:
[0177]錄音標志位設(shè)置模塊,用于根據(jù)用戶的錄音設(shè)置信息設(shè)置錄音標志位的取值;
[0178]且所述獲取模塊具體用于:
[0179]在每次截獲到所述音頻數(shù)據(jù)處理函數(shù)時,查詢所述錄音標志位的當前取值,并根據(jù)所述錄音標志位的當前取值判斷出當前通話為需要進行錄音的通話。
[0180]B17、如B12所述的裝置,其中,所述獲取模塊具體用于:
[0181]根據(jù)用戶的錄音設(shè)置信息將所有的當前通話均確定為需要進行錄音的通話;或者
[0182]在當前通話為撥入通話的情況下,根據(jù)用戶的錄音設(shè)置信息判斷出當前通話為需要進行錄音的通話;或者[0183]在當前通話為針對預(yù)定通話對方的撥入通話的情況下,根據(jù)用戶的錄音設(shè)置信息判斷出當前通話為需要進行錄音的通話;或者
[0184]在當前通話為撥出通話的情況下,根據(jù)用戶的錄音設(shè)置信息判斷出當前通話為需要進行錄音的通話;或者
[0185]在當前通話為針對預(yù)定通話對方的撥出通話的情況下,根據(jù)用戶的錄音設(shè)置信息判斷出當前通話為需要進行錄音的通話;或者
[0186]在當前通話為針對預(yù)定通話對方的通話的情況下,根據(jù)用戶的錄音設(shè)置信息判斷出當前通話為需要進行錄音的通話;或者
[0187]在當前通話過程中,根據(jù)用戶點擊錄音按鍵所產(chǎn)生的臨時錄音設(shè)置信息判斷出當前通話為需要進行錄音的通話。
[0188]B18、如B12所述的裝置,其中,所述用戶的錄音設(shè)置信息包括:對所有通話進行錄音的設(shè)置信息、對所有撥入通話進行錄音的設(shè)置信息、針對預(yù)定通話對方的所有撥入通話進行錄音的設(shè)置信息、對所有撥出通話進行錄音的設(shè)置信息、針對預(yù)定通話對方的所有撥出通話進行錄音的設(shè)置信息、針對預(yù)定通話對方的所有通話進行錄音的設(shè)置信息以及用戶針對當前通話觸發(fā)基于iOS的移動電話顯示的錄音按鍵所產(chǎn)生的臨時錄音設(shè)置信息中的至少一個。
[0189]B19、如B12所述的裝置,其中,所述存儲模塊具體用于:
[0190]對所述音頻數(shù)據(jù)的格式進行識別;
[0191]根據(jù)音頻數(shù)據(jù)的格式的識別結(jié)果在判斷出所述音頻數(shù)據(jù)為通話對方的音頻數(shù)據(jù)時,將所述音頻數(shù)據(jù)存儲在通話對方單聲道音頻文件中;
[0192]根據(jù)音頻數(shù)據(jù)的格式的識別結(jié)果在判斷出所述音頻數(shù)據(jù)為通話本方的音頻數(shù)據(jù)時,將所述音頻數(shù)據(jù)存儲在通話本方單聲道音頻文件中。
[0193]B20、如B19所述的裝置,其中,所述裝置還包括:
[0194]錄音播放模塊,用于在播放通話錄音時,同時播放所述通話對方單聲道音頻文件和通話本方單聲道音頻文件;或者
[0195]用于在播放通話錄音時,將所述通話對方單聲道音頻文件和通話本方單聲道音頻文件合成為雙聲道音頻文件,并播放所述雙聲道音頻文件。
[0196]B21、如B12至20中任一所述的裝置,其中,該裝置還包括:
[0197]音量放大模塊,用于對通話對方的音頻數(shù)據(jù)進行音量放大調(diào)整。
[0198]B22、如B12至20中任一所述的裝置,其中,該裝置還包括:
[0199]錄音提示模塊,用于存儲有錄音提示音頻數(shù)據(jù),在當前通話為需要進行錄音的通話的情況下,在當前通話過程中播放所述錄音提示音頻數(shù)據(jù)。
[0200]在此提供的算法和顯示不與任何特定計算機、虛擬系統(tǒng)或者其它設(shè)備固有相關(guān)。各種通用系統(tǒng)也可以與基于在此的示教一起使用。根據(jù)上面的描述,構(gòu)造這類系統(tǒng)所要求的結(jié)構(gòu)是顯而易見的。此外,本發(fā)明也不針對任何特定編程語言。應(yīng)當明白,可以利用各種編程語言實現(xiàn)在此描述的本發(fā)明的內(nèi)容,并且上面對特定語言所做的描述是為了披露本發(fā)明的最佳實施方式。
[0201]在此處所提供的說明書中,說明了大量具體細節(jié)。然而,能夠理解,本發(fā)明的實施例可以在沒有這些具體細節(jié)的情況下實踐。在一些實例中,并未詳細示出公知的方法、結(jié)構(gòu)和技術(shù),以便不模糊對本說明書的理解。
[0202]類似地,應(yīng)當理解,為了精簡本公開并幫助理解各個發(fā)明方面中的一個或多個,在上面對本發(fā)明的示例性實施例的描述中,本發(fā)明的各個特征有時被一起分組到單個實施例、圖、或者對其的描述中。然而,并不應(yīng)將該公開的方法解釋成反映如下意圖:即所要求保護的本發(fā)明要求比在每個權(quán)利要求中所明確記載的特征更多的特征。更確切地說,如下面的權(quán)利要求書所反映的那樣,發(fā)明方面在于少于前面公開的單個實施例的所有特征。因此,遵循【具體實施方式】的權(quán)利要求書由此明確地并入該【具體實施方式】,其中每個權(quán)利要求本身都作為本發(fā)明的單獨實施例。
[0203]本領(lǐng)域那些技術(shù)人員可以理解,可以對實施例中的設(shè)備中的模塊進行自適應(yīng)性地改變并且把它們設(shè)置在與該實施例不同的一個或多個設(shè)備中??梢园褜嵤├械哪K或單元或組件組合成一個模塊或單元或組件,以及此外可以把它們分成多個子模塊或子單元或子組件。除了這樣的特征和/或過程或者單元中的至少一些是相互排斥之外,可以采用任何組合對本說明書(包括伴隨的權(quán)利要求、摘要和附圖)中公開的所有特征以及如此公開的任何方法或者設(shè)備的所有過程或單元進行組合。除非另外明確陳述,本說明書(包括伴隨的權(quán)利要求、摘要和附圖)中公開的每個特征可以由提供相同、等同或相似目的的替代特征來代替。
[0204]此外,本領(lǐng)域的技術(shù)人員能夠理解,盡管在此所述的一些實施例包括其它實施例中所包括的某些特征而不是其它特征,但是不同實施例的特征的組合意味著處于本發(fā)明的范圍之內(nèi)并且形成不同的實施例。例如,在下面的權(quán)利要求書中,所要求保護的實施例的任意之一都可以以任意的組合方式來使用。
[0205]本發(fā)明的各個部件實施例可以以硬件實現(xiàn),或者以在一個或者多個處理器上運行的軟件模塊實現(xiàn),或者以它們的組合實現(xiàn)。本領(lǐng)域的技術(shù)人員應(yīng)當理解,可以在實踐中使用微處理器或者數(shù)字信號處理器(DSP)來實現(xiàn)根據(jù)本發(fā)明實施例的網(wǎng)絡(luò)接入設(shè)備、服務(wù)器以及主控終端設(shè)備中的一些或者全部部件的一些或者全部功能。本發(fā)明還可以實現(xiàn)為用于執(zhí)行這里所描述的方法的一部分或者全部的設(shè)備或者裝置程序(例如,計算機程序和計算機程序產(chǎn)品)。這樣的實現(xiàn)本發(fā)明的程序可以存儲在計算機可讀介質(zhì)上,或者可以具有一個或者多個信號的形式。這樣的信號可以從因特網(wǎng)網(wǎng)站上下載得到,或者在載體信號上提供,或者以任何其他形式提供。
[0206]應(yīng)該注意的是,上述實施例對本發(fā)明進行的詳細說明并不是對本發(fā)明進行限制,并且本領(lǐng)域技術(shù)人員在不脫離所附權(quán)利要求的范圍的情況下可設(shè)計出替換實施例。在權(quán)利要求中,不應(yīng)將位于括號之間的任何參考符號構(gòu)造成對權(quán)利要求的限制。單詞“包含”不排除存在未列在權(quán)利要求中的元件或步驟。位于元件之前的單詞“一”或“一個”不排除存在多個這樣的元件。本發(fā)明可以借助于包括有若干不同元件的硬件以及借助于適當編程的計算機來實現(xiàn)。在列舉了若干裝置的單元權(quán)利要求中,這些裝置中的若干個可以是通過同一個硬件項來具體體現(xiàn)。單詞第一、第二、以及第三等的使用不表示任何順序。可將這些單詞解釋為名稱。
【權(quán)利要求】
1.一種在基于ios的移動電話上實現(xiàn)通話錄音的方法,其中,該方法包括: 監(jiān)聽基于iOS的移動電話的通話事件; 基于MobileSubstrate框架,截獲所述基于iOS的移動電話的操作系統(tǒng)中的音頻數(shù)據(jù)處理函數(shù); 在根據(jù)所述通話事件的監(jiān)聽結(jié)果判斷出所述基于iOS的移動電話當前處于通話狀態(tài),且在根據(jù)用戶的錄音設(shè)置信息判斷出當前通話為需要進行錄音的通話的情況下,從截獲到的所述音頻數(shù)據(jù)處理函數(shù)的輸入?yún)?shù)中獲取當前通話的音頻數(shù)據(jù); 將所述音頻數(shù)據(jù)存儲到當前通話對應(yīng)的音頻文件中。
2. 如權(quán)利要求1所述的方法,其中,所述根據(jù)所述通話事件的監(jiān)聽結(jié)果判斷出所述基于iOS的移動電話當前處于通話狀態(tài)包括: 在監(jiān)聽到通話開始事件的情況下,判斷出所述基于iOS的移動電話當前處于通話狀態(tài)。
3.如權(quán)利要求1所述的方法,其中,所述監(jiān)聽基于iOS的移動電話的通話事件包括: 在監(jiān)聽到通話開始事件的情況下,將預(yù)先設(shè)置的通話狀態(tài)標志位的取值設(shè)置為第一預(yù)定值; 在監(jiān)聽到通話結(jié)束事件的情況下,將預(yù)先設(shè)置的通話狀態(tài)標志位的取值設(shè)置為第二預(yù)定值; 且所述根據(jù)所述通話事件的監(jiān)聽結(jié)果判斷出所述基于ios的移動電話當前處于通話狀態(tài)包括: 在每次截獲到所述音頻數(shù)據(jù)處理函數(shù)的情況下,查詢所述通話狀態(tài)標志位的當前取值,并在所述通話狀態(tài)標志位的當前取值為第一預(yù)定值時,判斷出基于ios的移動電話當前處于通話狀態(tài)。
4.如權(quán)利要求1所述的方法,其中,所述截獲所述基于iOS的移動電話的操作系統(tǒng)中的音頻數(shù)據(jù)處理函數(shù)包括: 在所述操作系統(tǒng)中的進程需要調(diào)用所述音頻數(shù)據(jù)處理函數(shù)時,預(yù)先設(shè)置的通話錄音函數(shù)被所述進程調(diào)用,且由所述通話錄音函數(shù)調(diào)用所述音頻數(shù)據(jù)處理函數(shù),以截獲所述音頻數(shù)據(jù)處理函數(shù)。
5.如權(quán)利要求1所述的方法,其中,所述方法還包括: 根據(jù)用戶的錄音設(shè)置信息設(shè)置錄音標志位的取值; 且所述根據(jù)用戶的錄音設(shè)置信息判斷出當前通話為需要進行錄音的通話包括: 在每次截獲到所述音頻數(shù)據(jù)處理函數(shù)時,查詢所述錄音標志位的當前取值,并根據(jù)所述錄音標志位的當前取值判斷出當前通話為需要進行錄音的通話。
6.如權(quán)利要求1所述的方法,其中,所述根據(jù)用戶的錄音設(shè)置信息判斷出當前通話為需要進行錄音的通話包括: 根據(jù)用戶的錄音設(shè)置信息將所有的當前通話均確定為需要進行錄音的通話;或者在當前通話為撥入通話的情況下,根據(jù)用戶的錄音設(shè)置信息判斷出當前通話為需要進行錄音的通話;或者 在當前通話為針對預(yù)定通話對方的撥入通話的情況下,根據(jù)用戶的錄音設(shè)置信息判斷出當前通話為需要進行錄音的通話;或者在當前通話為撥出通話的情況下,根據(jù)用戶的錄音設(shè)置信息判斷出當前通話為需要進行錄音的通話;或者 在當前通話為針對預(yù)定通話對方的撥出通話的情況下,根據(jù)用戶的錄音設(shè)置信息判斷出當前通話為需要進行錄音的通話;或者 在當前通話為針對預(yù)定通話對方的通話的情況下,根據(jù)用戶的錄音設(shè)置信息判斷出當前通話為需要進行錄音的通話;或者 在當前通話過程中,根據(jù)用戶點擊錄音按鍵所產(chǎn)生的臨時錄音設(shè)置信息判斷出當前通話為需要進行錄音的通話。
7.如權(quán)利要求1所述的方法,其中,所述用戶的錄音設(shè)置信息包括:對所有通話進行錄音的設(shè)置信息、對所有撥入通話進行錄音的設(shè)置信息、針對預(yù)定通話對方的所有撥入通話進行錄音的設(shè)置信息、對所有撥出通話進行錄音的設(shè)置信息、針對預(yù)定通話對方的所有撥出通話進行錄音的設(shè)置信息、針對預(yù)定通話對方的所有通話進行錄音的設(shè)置信息以及用戶針對當前通話觸發(fā)基于iOS的移動電話顯示的錄音按鍵所產(chǎn)生的臨時錄音設(shè)置信息中的至少一個。
8.如權(quán)利要求1所述的方法,其中,所述將所述音頻數(shù)據(jù)存儲到當前通話對應(yīng)的音頻文件中包括: 對所述音頻數(shù)據(jù)的格式進行識別; 根據(jù)音頻數(shù)據(jù)的格式的識別結(jié)果在判斷出所述音頻數(shù)據(jù)為通話對方的音頻數(shù)據(jù)時,將所述音頻數(shù)據(jù)存儲在通話對方單聲道音頻文件中; 根據(jù)音頻數(shù)據(jù)的格式的識別結(jié)果在判斷出所述音頻數(shù)據(jù)為通話本方的音頻數(shù)據(jù)時,將所述音頻數(shù)據(jù)存儲在通話本方單聲道音頻文件中。
9.一種在基于iOS的移動電話上實現(xiàn)通話錄音的裝置,其中,該裝置包括: 監(jiān)聽模塊,用于監(jiān)聽基于ios的移動電話的通話事件; 截獲模塊,用于基于MobileSubstrate框架,截獲所述基于iOS的移動電話的操作系統(tǒng)中的音頻數(shù)據(jù)處理函數(shù); 獲取模塊,用于在根據(jù)所述通話事件的監(jiān)聽結(jié)果判斷出所述基于iOS的移動電話當前處于通話狀態(tài),且在根據(jù)用戶的錄音設(shè)置信息判斷出當前通話為需要進行錄音的通話的情況下,從截獲到的所述音頻數(shù)據(jù)處理函數(shù)的輸入?yún)?shù)中獲取當前通話的音頻數(shù)據(jù); 存儲模塊,用于將所述音頻數(shù)據(jù)存儲到當前通話對應(yīng)的音頻文件中。
10.如權(quán)利要求9所述的裝置,其中,所述獲取模塊具體用于: 在監(jiān)聽到通話開始事件的情況下,判斷出所述基于ios的移動電話當前處于通話狀態(tài)。
【文檔編號】H04M1/656GK103491252SQ201310439472
【公開日】2014年1月1日 申請日期:2013年9月24日 優(yōu)先權(quán)日:2013年9月24日
【發(fā)明者】劉斌 申請人:北京奇虎科技有限公司, 奇智軟件(北京)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
伊吾县| 咸宁市| 曲周县| 原阳县| 三门峡市| 西乌珠穆沁旗| 威远县| 祁阳县| 普兰店市| 克什克腾旗| 清远市| 黄平县| 巩义市| 新竹县| 璧山县| 青海省| 滦平县| 清丰县| 大英县| 武冈市| 郧西县| 英超| 沙雅县| 大埔县| 金阳县| 独山县| 盐津县| 桦南县| 红桥区| 凌云县| 安福县| 浪卡子县| 大理市| 呼图壁县| 清新县| 永定县| 万全县| 巴林右旗| 漠河县| 巴里| 齐河县|