TW201728150A - 適用於安卓系統的無間隙錄音方法 - Google Patents
適用於安卓系統的無間隙錄音方法 Download PDFInfo
- Publication number
- TW201728150A TW201728150A TW105102537A TW105102537A TW201728150A TW 201728150 A TW201728150 A TW 201728150A TW 105102537 A TW105102537 A TW 105102537A TW 105102537 A TW105102537 A TW 105102537A TW 201728150 A TW201728150 A TW 201728150A
- Authority
- TW
- Taiwan
- Prior art keywords
- driver
- audio
- external microphone
- microphone
- smart device
- Prior art date
Links
Landscapes
- Circuit For Audible Band Transducer (AREA)
- Telephone Function (AREA)
Abstract
本發明提供一種適用於安卓系統的無間隙錄音方法,所述安卓系統安裝於智能裝置,所述智能裝置具有內置麥克風,所述無間隙錄音方法用於智能裝置進行錄音的過程,此方法包括:智能裝置的驅動程式判斷智能裝置是否已插入外接麥克風;當驅動程式判斷智能裝置已插入外接麥克風時,驅動程式依據控制命令延遲將音訊路徑由內置麥克風切換為外接麥克風;智能裝置的驅動程式判斷智能裝置是否已拔除外接麥克風;以及當驅動程式判斷智能裝置已拔除外接麥克風時,驅動程式立即將音訊路徑由外接麥克風切換為內置麥克風。藉此,達到無間隙錄音的效果。
Description
本發明有關於一種無間隙錄音方法,且特別是一種適用於安卓系統的無間隙錄音方法。
請參照圖1,圖1是傳統的安卓(Android)系統架構控制與管理錄音的示意圖。安裝安卓系統的裝置可被稱之為智能裝置(smart device),例如智能手持裝置。常見的智能手持裝置如智能手機、平板電腦。安卓系統由框架層(framework)100、硬體抽象層(Hardware Abstraction Layer,HAL)200與核心層(Kernel)300所建構。當應用於錄音時,音訊AU的來源可能是內置的麥克風或者是外接的麥克風。在當外接麥克風插拔時,往往會造成錄音中斷的問題。
詳細的說,依據安卓系統的設計,驅動程式(driver)31偵測到耳機麥克風插入的訊號時,驅動程式31通知系統(驅動程式31通知音訊硬體抽象層(audio HAL)21,然後音訊硬體抽象層21通知音訊管理器11)有外接麥克風插入,經過一段軟硬體的運算時間之後,驅動程式31才收到系統切換音訊路徑的控制命令SS,驅動程式31因此才能將音訊AU的來源由原本的內置麥克風切換到外接麥克風。簡言之,當外接麥克風插入智能裝置,安卓系統是在經過運算延遲的時間之後,產生控制命令SS以控制驅動程式31將音訊路徑由內置麥克風切換到外接麥克風。然而,當外接麥克風插入但未完全插入之前,可能音訊路徑已切換到外接麥克風,
故外接麥克風未完全插入之前仍有可能錄不到外接麥克風的聲音。在相反的情況,當外接麥克風拔出時,驅動程式31通知系統,系統會先通知各個應用程式,並通常在經過系統的運算延遲並再加上一個設定的延遲時間(如延遲一秒鐘)之後,才產生控制命令SS以通知驅動程式31進行音訊路徑的切換。然而,在這段期間,由於外接麥克風已經拔出,導致系統產生延遲的這段時間內,因為音訊AU的來源仍然是設定為外接麥克風,如此會記錄不到音訊AU的內容。
本發明實施例提供一種適用於安卓系統的無間隙錄音方法,不論外接麥克風是否插拔皆可達到無間隙錄音的效果。
本發明實施例提供一種適用於安卓系統的無間隙錄音方法,所述安卓系統安裝於智能裝置,所述智能裝置具有內置麥克風,所述無間隙錄音方法用於智能裝置進行錄音的過程,此方法包括:智能裝置的驅動程式判斷智能裝置是否已插入外接麥克風;當驅動程式判斷智能裝置已插入外接麥克風時,驅動程式依據控制命令延遲將音訊路徑由內置麥克風切換為外接麥克風,以確保外接麥克風完全插入智能裝置後才開始錄音;智能裝置的驅動程式判斷智能裝置是否已拔除外接麥克風;以及當驅動程式判斷智能裝置已拔除外接麥克風時,驅動程式立即將音訊路徑由外接麥克風切換為內置麥克風。
綜上所述,本發明實施例提供一種適用於安卓系統的無間隙錄音方法,不論在外接麥克風插入或拔除時,系統都可以持續錄音。使用者使用安卓系統進行錄音時,不會因為切換錄音的裝置而間斷錄音的音訊內容。因此,不會有錄音中斷而造成失去重要的資訊的問題。此外,利用所述無間隙錄音方法,因為錄音的內容是連續沒有音訊中斷的情況,如此也可避免使用者聽到重播的錄音時因聲音中斷變化而產生的不適感。
為使能更進一步瞭解本發明之特徵及技術內容,請參閱以下有關本發明之詳細說明與附圖,但是此等說明與所附圖式僅係用來說明本發明,而非對本發明的權利範圍作任何的限制。
100‧‧‧框架層
11‧‧‧音訊管理器
200‧‧‧硬體抽象層
21‧‧‧音訊硬體抽象層
300‧‧‧核心層
31‧‧‧驅動程式
AU‧‧‧音訊
SS‧‧‧控制命令
4‧‧‧智能裝置
5‧‧‧外接麥克風
INT‧‧‧中斷訊號
S110、S120、S130、S140、S510、S520、S530、S540、S550、S610、S620、S630、S640‧‧‧步驟
圖1是傳統的安卓系統架構控制與管理錄音的示意圖。
圖2是本發明實施例的安卓系統架構應用於控制與管理錄音的示意圖。
圖3是本發明實施例提供的智能裝置與外接麥克風的示意圖。
圖4是本發明實施例提供的適用於安卓系統的無間隙錄音方法的流程圖。
圖5是本發明另一實施例提供的適用於安卓系統的無間隙錄音方法在判斷是否插入外接麥克風的一種應用情況的流程圖。
圖6是本發明另一實施例提供的適用於安卓系統的無間隙錄音方法在判斷是否拔除外接麥克風的一種應用情況的流程圖。
請參照圖2,圖2是本發明實施例的安卓系統架構應用於控制與管理錄音的示意圖。適用於安卓系統的無間隙錄音方法,所述安卓系統安裝於智能裝置,所述智能裝置具有內置麥克風。所述智能裝置例如為智能手持裝置,如智能手機或平板電腦,但本發明並不因此限定。請一併參照圖3,圖3是本發明實施例提供的智能裝置與外接麥克風的示意圖。當本實施例的無間隙錄音方法應用於使用安卓系統的智能裝置4時,智能裝置4為智能手持裝置,如智能手機。外接麥克風5例如是耳機麥克風(ear microphone),但本發明並不因此限定。本發明也不限定外接麥克風的種類。
安卓系統包括框架層(framework)100、硬體抽象層(Hardware Abstraction Layer,HAL)200與核心層(Kernel)300。對於錄音的功能而言,框架層100具有音訊管理器11,抽象層200具有音訊硬體抽象層21,核心層300具有驅動程式31。位於核心層300的驅動程式接收麥克風裝置的音訊AU,音訊AU的來源依據所切換使用的麥克風裝置而決定。所述麥克風裝置包括內置麥克風與外接麥克風5,在圖3中未繪示智能裝置4的內置麥克風,因為通常內置麥克風為隱藏式設計。外接麥克風5的插拔會使得音訊連接端子的電性狀態產生改變,音訊連接端子的電性狀態在外接麥克風5插入時和拔除時兩者並不相同。音訊連接端子電性連接驅動程式31,使得驅動程式31獲得中斷訊號(interrupt)INT,依據中斷訊號的內容驅動程式31可知外接麥克風5是插入或者是拔除。驅動程式31則可依據中斷訊號INT而決定並切換音訊路徑。驅動程式31將音訊AU傳遞至位於硬體抽象層200的音訊硬體抽象層21,再傳送至位於框架層100的音訊管理器11。此外,當驅動程式31判斷智能裝置4已插入或拔除外接麥克風5時,驅動程式31通知音訊管理器11音訊裝置變動,驅動程式31也可依據來自音訊硬體抽象層21的控制命令SS而切換音訊路徑。音訊管理器11產生傳送控制命令SS至音訊硬體抽象層21,再傳送至驅動程式31藉此控制驅動程式31以切換音訊路徑。簡單的說,音訊管理器11可用於經由音訊硬體抽象層21控制驅動程式31切換音訊路徑,並接收且紀錄經由音訊路徑所傳達的音訊。然而,使用本實施例的無間隙錄音方法,在外接麥克風5插入智能裝置4時,驅動程式31延遲切換音訊路徑,且在外接麥克風(5)拔除時,驅動程式31不需等待來自上層的控制命令SS而立即切換音訊路徑。詳細的實施方式請參照以下的說明。
請同時參照圖2與圖4,圖4是本發明實施例提供的適用於安卓系統的無間隙錄音方法的流程圖。所述無間隙錄音方法用於智
能裝置進行錄音的過程,此方法包括以下步驟。在步驟S110中,智能裝置位於核心層300的驅動程式31判斷智能裝置是否已插入外接麥克風。當驅動程式31判斷智能裝置已插入外接麥克風時,進行步驟S120,驅動程式31依據控制命令延遲將音訊路徑由內置麥克風切換為外接麥克風。所述控制命令是圖2的來自音訊管理器11並通過音訊硬體抽象層21所傳達的控制命令SS。所述驅動程式31的延遲是設定用於等待外接麥克風完全插入至智能裝置的等待時間,但本發明並不限定驅動程式31的延遲時間長度,其可以依據設計需要而調整。透過此驅動程式適當的延遲,使外接麥克風插入的過程中(即收到中斷訊號INT)時,到外接麥克風完全插入前,系統維持以內置麥克風進行錄音,而不會有錄音中斷的情況,且在外接麥克風完全插入後,才以外接麥克風進行錄音。另外,當在步驟S110中,驅動程式31判斷智能裝置未插入外接麥克風時,重複步驟S110,以持續進行判斷。
在步驟S120之後,接著進行步驟S130,智能裝置的驅動程式31判斷智能裝置是否已拔除外接麥克風。當驅動程式31判斷智能裝置已拔除外接麥克風時,進行步驟S140,驅動程式31立即將音訊路徑由外接麥克風切換為內置麥克風。反之,當驅動程式31判斷智能裝置尚未拔除外接麥克風時,重複步驟S130,以持續進行判斷。詳細的說,在步驟S130中,當驅動程式偵測到外接麥克風拔除時所產生的中斷訊號INT,驅動程式31通知系統的上層(框架層100與硬體抽象層200),即驅動程式31通知音訊管理器11音訊裝置變動,但是也立即切換音訊路徑由外接麥克風到內置麥克風。基於安卓系統的架構,除了系統運算時間之外,大約經過1~2秒鐘後,系統上層的音訊管理器11才產生控制命令SS通知驅動程式31切換音訊路徑。然而,在驅動程式31接收到控制命令SS前,驅動程式31已先將音訊路徑切換到內置麥克風,以避免錄音中斷的情況。另外,當驅動程式31接收到音訊管理器11
的控制命令SS後,也可再根據控制命令SS調整音訊的參數,例如調整音訊的強度或音質等等。藉此,可做音訊的微調。由此可知,當外接麥克風由智能裝置拔出時,驅動程式31對於音訊路徑的切換不會因等待系統上層的控制命令SS而產生延遲(包括系統運算延遲與1~2秒鐘的延遲),進而造成錄音中斷。依據上述,本實施例的驅動程式31可依據外接麥克風拔除的中斷訊號INT立即切換音訊路徑,即不須透過如圖2的音訊管理器11及音訊硬體抽象層21的控制命令SS來切換音訊路徑。故在外接麥克風拔除時,音訊路徑立即被切換至內置麥克風,藉此,外接麥克風拔除的過程中所錄到的聲音並不會有所中斷。
值得一提的是,圖4的流程中的步驟S110用於判斷外接麥克風是否已插入,而步驟S130用於判斷外接麥克風是否已拔除,在實際應用時,步驟S110和S130的次序並不因此限定。當無外接麥克風時,智能裝置的驅動程式31可以反覆地進行步驟S110以持續判斷是否有外接麥克風插入。當智能裝置已插入外接麥克風時,驅動程式31可以反覆地進行步驟S130以持續判斷外接麥克風是否被拔除。圖4的流程架構用以說明本發明的步驟流程的主要精神,本發明並不因此限定步驟S110和步驟S130的使用次序和執行時機。基於圖4的流程架構,以下將分別以外接麥克風插入和外接麥克風拔除這兩種應用情況分別提供兩個實施例以幫助說明。
請同時參照圖2與圖5,圖5是本發明另一實施例提供的適用於安卓系統的無間隙錄音方法在判斷是否插入外接麥克風的一種應用情況的流程圖。在步驟S510中,驅動程式31判斷是否接收到中斷訊號INT。若接收到中斷訊號INT並確認中斷訊號是代表外接麥克風已插入,則進行步驟S520,通知系統(的上層)音訊裝置變動,也就是通知硬體抽象層21然後再經由硬體抽象層21通知音訊管理器11。接著,進行步驟S530,判斷系統(的上層)是否
通知將音訊路徑切換至外接麥克風。若系統要通知驅動程式將音訊路徑切換至外接麥克風,則進行步驟S540,驅動程式延遲切換,然後才進行步驟S550,驅動程式將音訊路徑切換至外接麥克風。步驟S540的驅動程式延遲是設定用於等待外接麥克風完全插入至智能裝置的等待時間,其可以依據設計需要而調整,本發明並不限定此驅動程式延遲的時間長度。此驅動程式延遲切換,目的在使外接麥克風插入的過程(即收到中斷訊號INT)時,到外接麥克風完全插入前,系統維持以內置麥克風進行錄音,且在外接麥克風完全插入後,才以外接麥克風進行錄音。
接著,請同時參照圖2與圖6,圖6是本發明另一實施例提供的適用於安卓系統的無間隙錄音方法在判斷是否拔除外接麥克風的一種應用情況的流程圖。在步驟S610中,驅動程式31判斷是否接收到中斷訊號INT。若接收到中斷訊號INT並確認中斷訊號是代表外接麥克風已被拔除,則進行步驟S620,驅動程式31通知系統的音訊管理器11音訊裝置變動,且將音訊路徑立即切換至內置麥克風。接著,進行步驟S630,判斷系統(的上層)是否通知切換至內置麥克風。若系統通知要切換至內置麥克風,則音訊管理器11傳送控制命令SS至驅動程式31,接著,再進行步驟S640。然而,在驅動程式31接收到音訊管理器11傳送的控制命令SS前,在步驟S620中驅動程式31已將音訊路徑切換至內置麥克風,以使錄到的聲音不會中斷。在步驟S640中,可根據控制命令SS調整音訊參數,諸如音訊的強度或音質等等。詳細的說,音訊管理器11傳送的控制命令SS中可以包括讓驅動程式31調整音訊的參數的命令。然而,本發明不限定調整音訊的控制命令的內容與格式。
由以上圖5和圖6的兩個實施例可以明顯知道,本實施例的無間隙錄音方法的驅動程式31在外接麥克風插入時延遲切換音訊路徑以等待外接麥克風完全插入,且在外接麥克風拔除時不需等
待上層的控制命令SS即可先行切換音訊路徑。驅動程式31也能依據上層的控制命令調整音訊參數。
綜上所述,本發明實施例所提供的適用於安卓系統的無間隙錄音方法不論在外接麥克風插入或拔除時,都可以讓安卓系統持續錄音。因為驅動程式在外接麥克風插入時延遲切換音訊路徑以等待外接麥克風完全插入,且在外接麥克風拔除時不需等待系統上層的命令才做音訊路徑的切換,讓使用者使用安卓系統進行錄音時,不會因為切換錄音的裝置(外接麥克風或內置麥克風)而間斷錄音的音訊內容,藉此達到全程錄音。因此,不會有錄音中斷而造成失去重要的資訊的問題。此外,利用所述無間隙錄音方法,因為錄音的內容是連續沒有音訊中斷的情況,故也可避免使用者聽到重播的錄音時因聲音中斷變化而產生的不適感。
以上所述僅為本發明之實施例,其並非用以侷限本發明之專利範圍。
S110、S120、S130、S140‧‧‧步驟
Claims (10)
- 一種適用於安卓系統的無間隙錄音方法,該安卓系統安裝於一智能裝置,該智能裝置具有一內置麥克風,該無間隙錄音方法用於該智能裝置進行錄音的過程,該無間隙錄音方法包括:該智能裝置的一驅動程式判斷該智能裝置是否已插入一外接麥克風;以及當該驅動程式判斷該智能裝置已插入該外接麥克風時,該驅動程式依據一控制命令延遲將一音訊路徑由該內置麥克風切換為該外接麥克風。
- 根據請求項第1項所述之適用於安卓系統的無間隙錄音方法,還包括:該智能裝置的該驅動程式判斷該智能裝置是否已拔除該外接麥克風;以及當該驅動程式判斷該智能裝置已拔除該外接麥克風時,該驅動程式立即將該音訊路徑由該外接麥克風切換為該內置麥克風。
- 根據請求項第1項所述之適用於安卓系統的無間隙錄音方法,其中該控制命令由一音訊管理器產生,且經由一音訊硬體抽象層傳送至該驅動程式。
- 根據請求項第3項所述之適用於安卓系統的無間隙錄音方法,其中該音訊管理器位於該安卓系統的一框架層。
- 根據請求項第3項所述之適用於安卓系統的無間隙錄音方法,其中該音訊硬體抽象層位於該安卓系統的一硬體抽象層。
- 根據請求項第1項所述之適用於安卓系統的無間隙錄音方法,更包括:當該驅動程式判斷該智能裝置已插入該外接麥克風時,該驅動程式通知一音訊管理器音訊裝置變動。
- 根據請求項第2項所述之適用於安卓系統的無間隙錄音方法,更包括: 當該驅動程式判斷該智能裝置已拔除該外接麥克風時,該驅動程式通知一音訊管理器音訊裝置變動。
- 根據請求項第7項所述之適用於安卓系統的無間隙錄音方法,在當該驅動程式判斷該智能裝置已拔除該外接麥克風時,該驅動程式通知該音訊管理器音訊裝置變動的步驟之後,更包括:該音訊管理器傳送該控制命令至該驅動程式以調整音訊的參數。
- 根據請求項第1項所述之適用於安卓系統的無間隙錄音方法,其中該外接麥克風是耳機麥克風。
- 根據請求項第1項所述之適用於安卓系統的無間隙錄音方法,其中該智能裝置是智能手持裝置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW105102537A TWI618390B (zh) | 2016-01-27 | 2016-01-27 | 適用於安卓系統的無間隙錄音方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW105102537A TWI618390B (zh) | 2016-01-27 | 2016-01-27 | 適用於安卓系統的無間隙錄音方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201728150A true TW201728150A (zh) | 2017-08-01 |
TWI618390B TWI618390B (zh) | 2018-03-11 |
Family
ID=60186496
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW105102537A TWI618390B (zh) | 2016-01-27 | 2016-01-27 | 適用於安卓系統的無間隙錄音方法 |
Country Status (1)
Country | Link |
---|---|
TW (1) | TWI618390B (zh) |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101778333B (zh) * | 2010-01-27 | 2013-01-16 | 杭州华三通信技术有限公司 | 一种麦克风状态的检测方法和装置 |
TWI521980B (zh) * | 2013-03-22 | 2016-02-11 | 瑞昱半導體股份有限公司 | 麥克風偵測暨選擇電路及方法 |
KR102094392B1 (ko) * | 2013-04-02 | 2020-03-27 | 삼성전자주식회사 | 복수의 마이크로폰들을 구비하는 사용자 기기 및 그 동작 방법 |
-
2016
- 2016-01-27 TW TW105102537A patent/TWI618390B/zh active
Also Published As
Publication number | Publication date |
---|---|
TWI618390B (zh) | 2018-03-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108509176B (zh) | 一种播放音频数据的方法、装置、存储介质及智能终端 | |
EP3267437B1 (en) | Interactive peripheral device for television karaoke. | |
US9930438B2 (en) | Electronic device and method for controlling audio input/output | |
WO2017181708A1 (zh) | 终端的音频切换方法、装置和电子设备 | |
WO2015055053A1 (zh) | 一种切换播放模式的方法、装置和终端 | |
CN110087215B (zh) | 基于蓝牙连接的信息播报方法、装置、终端及存储介质 | |
KR101874888B1 (ko) | 휴대 단말기의 이어폰 인식 방법 및 장치 | |
CN115002934B (zh) | 音频业务处理系统、电子设备及蓝牙耳机 | |
WO2020038344A1 (zh) | 一种音画同步方法和装置及显示设备 | |
JP2018509110A (ja) | マルチビューストリーミングサービス提供方法及び装置 | |
WO2017148270A1 (zh) | 一种音量控制方法和装置、及终端 | |
CN107621933B (zh) | 一种音频播放方法和装置和相关介质产品 | |
WO2015106515A1 (zh) | 一种在分屏终端进行声音控制的方法、系统和计算机存储介质 | |
CN103324459A (zh) | 一种实现usb耳麦设备的方法及系统 | |
JP2018512813A (ja) | イヤホンステータス検出方法および端末 | |
CN107018465A (zh) | 适用于安卓系统的无间隙录音方法 | |
CN107209378B (zh) | 头戴式显示设备及头戴式显示系统 | |
WO2017176728A1 (en) | Streaming synchronized media content to separate devices | |
TWI618390B (zh) | 適用於安卓系統的無間隙錄音方法 | |
CN104254027A (zh) | 一种兼容圆孔接口和usb接口的耳机使用方法及系统 | |
TWI583168B (zh) | 手機及其通話過程中播放音樂的系統及方法 | |
CN115802087A (zh) | 音画同步处理方法及其相关设备 | |
CN107360495B (zh) | 适用于安卓系统的减少外接麦克风插拔噪音的方法 | |
TW201426527A (zh) | Hdmi訊號處理系統及方法 | |
JPWO2017179600A1 (ja) | コネクタ、電子機器および電子機器の制御方法 |