TWI554089B - 影音分享方法與系統 - Google Patents
影音分享方法與系統 Download PDFInfo
- Publication number
- TWI554089B TWI554089B TW103133740A TW103133740A TWI554089B TW I554089 B TWI554089 B TW I554089B TW 103133740 A TW103133740 A TW 103133740A TW 103133740 A TW103133740 A TW 103133740A TW I554089 B TWI554089 B TW I554089B
- Authority
- TW
- Taiwan
- Prior art keywords
- audio
- video
- sound data
- module
- application
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/61—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
- H04L65/612—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/75—Media network packet handling
- H04L65/765—Media network packet handling intermediate
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/04—Protocols specially adapted for terminals or networks with limited capabilities; specially adapted for terminal portability
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
- H04L67/125—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks involving control of end-device applications over a network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/565—Conversion or adaptation of application format or content
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Telephonic Communication Services (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Description
本發明是有關於一種影音分享技術,且特別是有關於一種影音分享方法及系統。
在摩爾定律影響下,硬體元件變得功能強大並且相對便宜。數位相機、數位攝影機漸漸成為一般大眾消費品,許多人以此攝製家庭影片、記錄生活片段、或是拍製微電影(Micro Film);無數的多媒體內容(Media Contents)被人們上傳到雲端伺服器,或是透過串流技術(Streaming Technology)將之分享、傳播、與他人交流。然而,管理這些已被上傳的多媒體內容,往往會受限於代管伺服器的業者、或是在隱私保護上受到侷限,例如,無法任意地限定某些個人擁有收視的權限、或是禁止特定對象收視。儘管如此,透過桌面分享技術(Desktop Sharing Technology),即使個人電腦,例如,一體成型個人電腦(All in One Personal Computer,AIO PC),也能用來將多媒體內容與他人共用、分享。
然而,在目前的影音分享技術中,其所擷取的音訊檔案
乃是輸出至揚聲器的音訊訊號。具體地說,若是主機中同時有許多應用程式開啟,並且每個應用程式皆有音訊訊號輸出至揚聲器,客戶裝置接收的音訊內容將會是主機上所有已開啟應用程式的綜合音訊內容,而不會是個別地音訊內容。因此,如何能正確傳送使用者指定應用程式的音訊內容,即為本發明努力尋求的目標。
本發明提供一種影音分享方法與系統,其能夠針對特定的應用程式擷取其音訊串流,並且在經過適當編碼之後,傳送此編碼後的影音串流以回應使用者裝置的要求。
根據本發明一範例實施例的影音分享方法包括:接收來自網路的第一影音分享請求;初始化多個音訊擷取模塊以回應多個應用程式;利用此些音訊擷取模塊之中的第一音訊擷取模塊擷取來自於第一應用程式的第一聲音資料並且利用此些音訊擷取模塊之中的第二音訊擷取模塊擷取來自於第二應用程式的第二聲音資料;以及依據從音訊引擎中接收的第一聲音資料來產生第一影音串流並且透過通訊模組發送第一影音串流以回應第一影音分享請求。
在本發明的一範例實施例中,上述的影音分享方法,更包括:依據從音訊引擎中接收的第一聲音資料與從圖形裝置介面模組接收的圖形資料來產生第一影音串流。
在本發明的一範例實施例中,上述的影音分享方法,更包括:從對應第一應用程式的端點緩衝器中獲取第一原始聲音資料;將第一原始聲音資料轉型為符合聲音格式的第一聲音資料;儲存第一聲音資料;以及,取出第一聲音資料並將所取出的第一聲音資料傳送至串流處理模組。
在本發明的一範例實施例中,上述的影音分享方法,更包括:行動電子裝置透過網路向伺服器傳送對應第一應用程式的第一影音分享請求。
在本發明的一範例實施例中,上述的影音分享方法,更包括:初始化此些音訊擷取模塊取得對應每一應用程式的處理識別碼;依據對應第一應用程式的處理識別碼,從此些音訊擷取模塊之中的第一音訊擷取模塊獲取第一聲音資料;以及產生第一影音串流並且將第一影音串流透過通訊模組經由網路傳送給行動電子裝置。
在本發明的一範例實施例中,上述的影音分享方法,更包括:從伺服器接收第一影音串流並播放第一影音串流。
在本發明的一範例實施例中,上述的影音分享方法,更包括:依據從音訊引擎中接收的第二聲音資料來產生第二影音串流並且透過通訊模組發送第一影音串流以回應第二影音分享請求。
在本發明的一範例實施例中,上述的影音分享方法,更包括:透過伺服器的音訊驅動器與揚聲器播放第二聲音資料,並
且不播放第一聲音資料。
根據本發明一範例實施例的影音分享系統包括:處理器單元、緩衝記憶體、通訊模組、音訊引擎以及串流處理模組。緩衝記憶體、通訊模組、音訊引擎以及串流處理模組分別地耦接至處理器單元。詳細地說,通訊模組用以連接至網路並且接收來自網路的第一影音分享請求。音訊引擎會初始化多個音訊擷取模塊以回應多個應用程式,並且音訊擷取模塊之中的第一音訊擷取模塊擷取來自於第一應用程式的第一聲音資料並且在此些音訊擷取模塊之中的第二音訊擷取模塊擷取來自於第二應用程式的第二聲音資料。串流處理模組依據從音訊引擎中接收的第一聲音資料來產生第一影音串流並且透過通訊模組發送第一影音串流以回應第一影音分享請求。
在本發明的一範例實施例中,上述的影音分享系統更包括圖形裝置介面(Graphics Device Interface)模組。圖形裝置介面模組處理來自於第一應用程式的圖形資料。此外,串流處理模組依據從音訊引擎中接收的第一聲音資料與從圖形裝置介面模組接收的圖形資料來產生第一影音串流。
在本發明的一範例實施例中,上述第一音訊擷取模塊從對應第一應用程式的端點緩衝器中獲取第一原始聲音資料,將第一原始聲音資料轉型為符合聲音格式的第一聲音資料,在緩衝記憶體中儲存第一聲音資料,以及從緩衝記憶體中取出第一聲音資料並將所取出的第一聲音資料傳送至串流處理模組。
在本發明的一範例實施例中,上述的影音分享系統更包括:伺服器以及行動電子裝置。上述之處理器單元、緩衝記憶體、通訊模組、音訊引擎與串流處理模組配置在此伺服器中。此外,行動電子裝置透過網路向伺服器傳送對應第一應用程式的第一影音分享請求。
在本發明的一範例實施例中,上述音訊引擎會初始化此些音訊擷取模塊取得對應每一應用程式的處理識別碼。而串流處理模組會依據對應第一應用程式的處理識別碼,從音訊擷取模塊之中的第一音訊擷取模塊獲取第一聲音資料。隨後,產生第一影音串流並且將第一影音串流透過通訊模組經由網路傳送給行動電子裝置。
在本發明的一範例實施例中,上述行動電子裝置從伺服器接收第一影音串流並播放第一影音串流。
在本發明的一範例實施例中,上述串流處理模組依據從音訊引擎中接收的第二聲音資料來產生第二影音串流並且透過通訊模組發送第一影音串流以回應第二影音分享請求。
在本發明的一範例實施例中,上述音訊引擎透過伺服器的音訊驅動器與揚聲器播放第二聲音資料,並且不播放第一聲音資料。
基於上述,本發明範例實施例提出一種影音分享系統及其影音分享方法,透過分別地對應用程式擷取音訊資料,克服桌面分享技術中無法將音訊分開的缺點。並且能將擷取的音訊資料
轉換適當聲音格式後輸出至使用者的電子裝置。
為讓本發明的上述特徵和優點能更明顯易懂,下文特舉實施例,並配合所附圖式作詳細說明如下。
10、500、900‧‧‧伺服器
1000‧‧‧影音分享系統
20‧‧‧網路
32、34、36、38‧‧‧電子裝置
102、502‧‧‧處理器單元
104、310、504‧‧‧緩衝記憶體
106、506‧‧‧通訊模組
108、508‧‧‧音訊引擎
110、510‧‧‧串流處理模組
202、302‧‧‧第一應用程式
204、304‧‧‧第二應用程式
202a‧‧‧第一聲音資料
204a‧‧‧第二聲音資料
202b、302b‧‧‧第一影音串流
204b、304b‧‧‧第二影音串流
206、306‧‧‧第一音訊擷取模塊
208、308‧‧‧第二音訊擷取模塊
312、314‧‧‧端點緩衝器
512‧‧‧圖形裝置介面模組
508a‧‧‧音訊擷取模塊
602‧‧‧應用程式
602a‧‧‧聲音資料
602b‧‧‧圖形資料
602c‧‧‧影音串流
700‧‧‧行動電子裝置
800‧‧‧網路
S101、S103、S105、S107、S109、S201、S203、S205、S207、S209、S211、S213、S301、S303、S305、S307、S309‧‧‧影音分享方法的步驟
圖1是根據本發明範例實施例所繪示之影音分享系統的示意圖。
圖2是依據第一範例實施例所繪製的影音分享系統之伺服器的方塊圖。
圖3是依據第一範例實施例所繪製的影音分享系統的使用示意圖。
圖4是依據第一範例實施例所繪製的影音分享方法的流程圖。
圖5是依據第二範例實施例所繪製的影音分享系統的使用示意圖。
圖6是依據第二範例實施例所繪製的影音分享方法的流程圖。
圖7是依據第三範例實施例所繪製的影音分享系統的方塊圖。
圖8是依據第三範例實施例所繪製的影音分享系統的使用示意圖。
圖9是依據第四範例實施例所繪製的影音分享系統的方塊示意圖。
圖10是依據第四範例實施例所繪製的影音分享方法的流程圖。
本發明透過分別地擷取不同應用程式的音訊資料以及圖形資料,再將轉換後的影音串流以封包傳送給不同的使用者電子裝置,因此使用者電子裝置所接收的影音串流將會是正確的音訊資料,而不會混合其他應用程式的音訊資料。
圖1是根據本發明範例實施例所繪示之影音分享系統的示意圖。
請參考圖1,影音分享系統包含伺服器10、網路20、電子裝置32、電子裝置34、電子裝置36以及電子裝置38。
伺服器10會裝載作業系統,並且有應用程式運行其上。此處的作業系統可以為微軟公司的視窗作業系統(Microsoft Windows)、蘋果公司的麥金塔系統(Apple Macintosh)或林納斯作業系統(Linux),本發明不限於此。
在本範例實施例中,伺服器10、電子裝置32、電子裝置34、電子裝置36以及電子裝置38是透過網路20連結。例如,在本範例實施例中,網路20是遵循網際網路通訊協定傳輸標準。例如,此網際網路通訊協定傳輸標準可以是網際網路通用傳輸協定
(Transmission Control Protocol/Internet Protocol,TCP/IP)或網際網路用戶數據報協定(User Datagram Protocol/Internet Protocol,UDP/IP)。然而,本發明不限於此,在本發明另一範例實施例中,網路20亦可以是依據區域網路通訊協定傳輸標準所建立的無線區域網路(Wi-Fi)。例如,此區域網路通訊協定傳輸標準為電機和電子工程師協會(Institute of Electrical and Electronics Engineers,IEEE)所制定的802.11系列。
在本範例實施例中,電子裝置32為平板電腦,電子裝置34為攜帶式電腦,電子裝置36為桌上型電腦或個人電腦並且電子裝置38為行動電話。然而,上述之電子裝置也可以是其他形式的電子裝置,本發明並不限制於其形式。特別是,在本範例實施例中,電子裝置32、電子裝置34、電子裝置36以及電子裝置38可以透過網路20向伺服器10傳送影音分享請求,而此影音分享請求是用以要求運行於伺服器10上之特定應用程式的影音分享。
以下將配合此影音分享概念對於本發明之各實施例作詳細的說明。
[第一範例實施例]
圖2是依據第一範例實施例所繪製的影音分享系統之伺服器的方塊圖。
請參考圖2,伺服器10包括處理器單元102、緩衝記憶體104、通訊模組106、音訊引擎108以及串流處理模組110。
在本範例實施例中,處理器單元102例如為中央處理單
元(Central Processing Unit,CPU)、可程式化之微處理器(Microprocessor)、數位訊號處理器(Digital Signal Processor,DSP)、可程式化控制器、特殊應用積體電路(Application Specific Integrated Circuits,ASIC)、可程式化邏輯裝置(Programmable Logic Device,PLD)或其他類似裝置。
緩衝記憶體104是用以儲存處理過程中的音訊資料或是圖形資料等各種資料。例如,緩衝記憶體104為隨機存取記憶體(Random Access Memory,RAM)、唯讀記憶體(Read-Only Memory,ROM)、快閃記憶體(Flash memory)等。
通訊模組106是耦接至處理器單元102。通訊模組106用以連接至網路20,並且採用與網路20相容的傳輸標準或通訊協定來運作。例如,通訊模組106可經由網路20傳送封包至電子裝置32、電子裝置34、電子裝置36以及電子裝置38,或者從電子裝置32、電子裝置34、電子裝置36以及電子裝置38中接收封包。
音訊引擎108是耦接至處理器單元102,用以擷取音訊資料。
串流處理模組110是耦接至處理器單元102。串流處理模組110用以依據音訊引擎108所擷取的音訊資料產生影音串流,並且藉由通訊模組106通過網路20以封包傳送此影音串流回應分享請求。例如,串流處理模組210會將音訊引擎108所擷取的音訊資料作聲音格式的轉型。此聲音格式例如為波形音頻格式(Waveform Audio Format,WAV)、第三代聲音文件壓縮格式
(Motion Picture Experts Group Audio Layer 3,MP3)、視窗媒體音頻格式(Windows Media Audio Format,WMA)、奧格格式(Ogging Format,OGG)或音頻視頻交錯格式(Audio Video Interleave Format,AVI)等等,並且,本發明不限於此。
圖3依據第一範例實施例所繪製的影音分享系統的使用示意圖。
請參考圖3,第一應用程式202以及第二應用程式204是運作在伺服器10上。例如,第一應用程式202以及第二應用程式204是被載入至緩衝記憶體104並且由處理器單元102來執行。特別是,在第一應用程式202與第二應用程式204運作時,第一應用程式202會產生第一聲音資料202a,並且第二應用程式204會產生第二聲音資料204a。
第一音訊擷取模塊206以及第二音訊擷取模塊208是包括在音訊引擎108中,並且當第一應用程式202以及第二應用程式204被運轉時,第一音訊擷取模塊206以及第二音訊擷取模塊208會被初始化以擷取音訊資料。在此,第一音訊擷取模塊206會被初始化以擷取第一應用程式202所產生的第一聲音資料202a,並且第二音訊擷取模塊208會初始化以擷取第二應用程式204所產生的第二聲音資料204a。
第一影音串流202b以及第二影音串流204b,是串流處理模組210依據從音訊引擎108中所接收的第一聲音資料202a以及第二聲音資料204a所產生。也就是說,串流處理模組210是依據
第一聲音資料202a產生第一影音串流202b,並且依據第二聲音資料204a產生第二影音串流204b。特別是,在本範例實施中,當伺服器10從電子裝置32、電子裝置34、電子裝置36或電子裝置38中接收到對第一應用程式202的分享請求時,串流處理模組110會依據從第一音訊擷取模塊206中接收所擷取之第一應用程式202的第一聲音資料202a來產生第一影音串流202b,且通訊模組106會傳送所產生的第一影音串流202b以回應對第一應用程式202的分享請求。
此外,值得一提的是,在傳送所產生的第一影音串流202b以回應對第一應用程式202的分享請求的同時,若從電子裝置32、電子裝置34、電子裝置36或電子裝置38中接收到對第二應用程式204的分享請求時,串流處理模組110也會依據從音訊引擎108中接收的第二聲音資料204a來產生對應第二應用程式204的第二影音串流204b,並且通訊模組106會發送對應第二應用程式204的第二影音串流204b以回應對第二應用程式204的影音分享請求。
圖4是依據第一範例實施例所繪製的影音分享方法的流程圖。
請參考圖4,首先,如步驟S101所示,通訊模組106會接收來自網路的第一影音分享請求。接著,如步驟S103所示,音訊引擎108會初始化數個音訊擷取模塊以回應多個應用程式。具體來說,在步驟S103中,音訊引擎108會初始化第一音訊擷取模
塊206以及第二音訊擷取模塊208。
例如,第一音訊擷取模塊206以及第二音訊擷取模塊208為sAPO。當進行音訊擷取時,第一音訊擷取模塊206以及第二音訊擷取模塊208會與音訊服務協商建立數據格式,其介面為IAudioProcessingObject::IsInputFormatSupported、IAudioProcessingObject::LockForProcess以及IAudioProcessingObjectConfiguration::UnlockForProcess介面。此外,第一音訊擷取模塊206以及第二音訊擷取模塊208透過INF檔案寫入資料,其定義如下:;;Property Keys PKEY_FX_PreMixClsid= "{D04E05A6-594B-4fb6-A80D-01AF5EED7D1D},1"
例如,在初始化第一音訊擷取模塊206以及第二音訊擷取模塊208的過程中,首先,會繼承CBaseAudioProcessingObject介面,並且透過PID建立Class。其次,利用IAudioProcessingObject::IsInputFormatSupported介面與音訊引擎互相溝通數據格式,並且利用IAudioProcessingObjectRT::APOProcess介面作音訊訊號處理。最後,透過ValidateAndCacheConnectionInfo介面儲存詳細的音訊格式信息。
在步驟S105中,第一音訊擷取模塊206會擷取第一應用程式202的第一聲音資料202a,並且第二音訊擷取模塊208會擷
取第二應用程式204的第二聲音資料204a。
例如,所接收的聲音資料的擷取透過以下程式來完成:IAudioProcessingObjectRT::APOProcess( UINT32 u32NumInputConnections, APO_CONNECTION_PROPERTY** ppInputConnections, UINT32 u32NumOutputConnections, APO_CONNECTION_PROPERTY** ppOutputConnections) 其中,APO_CONNECTION_PROPERTY** ppInputConnections就是應用程式的輸入聲音資料。
在步驟S107中,串流處理模組110依據從音訊引擎108中接收的第一聲音資料202a來產生對應第一應用程式202的第一影音串流202b,並且串流處理模組110依據從音訊引擎108中接收的第二聲音資料204a來產生對應第二應用程式204的第二影音串流204b。
在步驟S109中,通訊模組106會發送對應第一應用程式202的第一影音串流202b以回應對第一應用程式202的影音分享請求。
此外,在本發明另一範例實施例中,在步驟S107中,串流處理模組110也會依據從音訊引擎108中接收的第二聲音資料204a來產生對應第二應用程式204的第二影音串流204b。並且在步驟S109中,通訊模組106會發送對應第二應用程式204的第二影音串流204b回應對第二應用程式204的影音分享請求。
[第二範例實施例]
圖5是依據第二範例實施例所繪製的影音分享系統的使用示意圖。
請參考圖5,第二範例實施例的通訊模組、音訊引擎以及串流處理模組與圖2中相同標號的通訊模組、音訊引擎以及串流處理模組的結構以及功能本質上是相同的,在此相同處不多作贅述。
第一應用程式302、第二應用程式304、第一音訊擷取模塊306以及第二音訊擷取模塊308與圖3中第一應用程式202、第二應用程式204、第一音訊擷取模塊206以及第二音訊擷取模塊208之結構與作用本質上是相同的,在此相同處即不贅述。
在本範例實施例中,端點緩衝器312是對應第一應用程式302,並且用以儲存第一應用程式302的第一原始聲音資料(未繪示);端點緩衝器314則對應第二應用程式304,並且用以儲存第二應用程式304的第二原始聲音資料(未繪示)。
緩衝記憶體310是用以儲存接收自串流處理模組110的音訊資料。
具體來說,第一音訊擷取模塊306從端點緩衝器312擷取第一原始聲音資料之後,將其轉型為符合聲音格式的第一聲音資料並且儲存在緩衝記憶體310中。其次,第一聲音資料會從緩衝記憶體310傳送至串流處理模組110以產生第一影音串流302b。最後,通訊模組106傳送第一影音串流302b回應分享請求。
同理,對於第二應用程式304的分享請求,首先,第二音訊擷取模塊308從端點緩衝器314擷取第二原始聲音資料之後,將其轉型為符合聲音格式的第二聲音資料並且儲存在緩衝記憶體310中。其次,第二聲音資料會從緩衝記憶體310傳送至串流處理模組110以產生第二影音串流304b。最後,通訊模組106傳送第二影音串流304b回應分享請求。
詳細地說,轉型為符合聲音格式可透過下列程式來完成:FLOAT32 *pf32InputFrames, *pf32OutputFrames pf32InputFrames= reinterpret_cast<FLOAT32*>(ppInputConnections[0]->pBuffer)
而聲音資料從緩衝記憶體310中取出則是透過下列程式來完成:CopyMemory(pf32OutputFrames,pf32InputFrames, ppInputConnections[0]->u32ValidFrameCount * GetBytesPerSampleContainer() * GetSamplesPerFrame())
圖6是依據第二範例實施例所繪製的影音分享方法的流程圖。
請參考圖6,在步驟S201中,通訊模組106會接收來自網路的第一影音分享請求。在步驟S203中,音訊引擎108初始化第一音訊擷取模塊306以及第二音訊擷取模塊308,以回應對第一應用程式302以及對第二應用程式304的分享請求。
在步驟S205中,第一音訊擷取模塊306會從對應第一應
用程式302的端點緩衝器312中獲取第一原始聲音資料(未繪示),並且第二音訊擷取模塊308會從對應第二應用程式304的端點緩衝器314中獲取第二原始聲音資料(未繪示)。
在步驟S207中,第一音訊擷取模塊306會將第一原始聲音資料轉型符合聲音格式的第一聲音資料並且儲存至緩衝記憶體310中,並且第二音訊擷取模塊308會將第二原始聲音資料轉型符合聲音格式的第二聲音資料並且儲存至緩衝記憶體310中。
在步驟S209中,音訊引擎108會從緩衝記憶體310中取出第一聲音資料與第二聲音資料並且傳送至串流處理模組110。
在步驟S211中,串流處理模組110依據從音訊引擎108中接收的第一聲音資料來產生第一影音串流302b,並且串流處理模組110依據從音訊引擎108中接收的第二聲音資料來產生第二影音串流304b。
在步驟S213中,通訊模組106會分別地發送第一影音串流302b與第二影音串流304b至所對應的影音分享請求。
[第三範例實施例]
圖7是依據第三範例實施例所繪製的影音分享系統的方塊圖。
請參考圖7,在本範例實施例中,伺服器500包括:處理器單元502、緩衝記憶體504、通訊模組506、音訊引擎508、串流處理模組510以及圖形裝置介面模組512。
處理器單元502、緩衝記憶體504、通訊模組506、音訊
引擎508以及串流處理模組510之結構與圖2中處理器單元102、緩衝記憶體104、通訊模組106、音訊引擎108以及串流處理模組110之結構本質上是相同的,在此對於相同之處不再贅述。
圖形裝置介面模組512是耦接至處理器單元502,用以處理來自應用程式的圖形資料。
圖8是依據第三範例實施例所繪製的影音分享系統的使用示意圖。
請參考圖8,具體來說,當伺服器500接收到對於運作在伺服器500上應用程式602的分享請求時,音訊引擎508初始化音訊擷取模塊508a,並且音訊擷取模塊508a會用以擷取應用程式602的聲音資料602a,而圖形裝置介面模組512會擷取應用程式602中的圖形資料602b,所擷取出的聲音資料602a與圖形資料602b會傳送至串流處理模組510以產生影音串流602c,並且所產生的影音串流602c隨後會由通訊模組510傳送以回應對應用程式602的分享請求。
[第四範例實施例]
圖9是依據第四範例實施例所繪製的影音分享系統的示意圖。
請參考圖9,在本範例實施例中,影音分享系統1000包括伺服器900以及行動電子裝置700。在此範例實施例中,行動電子裝置700以及網路800與圖1中電子裝置32至電子裝置38以及網路20的功能本質上是相同的,在此對於相同處不再贅述。
在此,行動電子裝置700是透過網路800向伺服器900傳
送影音分享請求。
在本範例實施例中,伺服器900包括處理器單元902、緩衝記憶體904、通訊模組906、音訊引擎908以及串流處理模組910。此外,在本發明另一範例實施例中,伺服器900可更包括圖形裝置介面模組912。
處理器單元902、緩衝記憶體904、通訊模組906、音訊引擎908、串流處理模組910以及圖形裝置介面模組912之結構大致與圖7中處理器單元502、緩衝記憶體504、通訊模組506、音訊引擎508、串流處理模組510以及圖形裝置介面模組512之結構本質上是相同的,在此對於相同處不再贅述。
在本範例實施例中,當行動電子裝置700透過網路800向伺服器900傳送對應第一應用程式的影音分享請求時,音訊引擎908會初始化第一音訊擷取模塊並且取得第一應用程式的第一處理識別碼。隨後,串流處理模組910依據對應第一應用程式的第一處理識別碼,從第一音訊擷取模塊中獲取第一聲音資料,並產生第一影音串流。最後,通訊模組906會經由網路800將第一影音串流傳送行動電子裝置700。
此外,在本發明另一範例實施例中,行動電子裝置700在接收到對應伺服器900第一應用程式的第一影音串流之後,會播放第一影音串流。
特別是,在本發明一範例實施例中,音訊引擎908可透過伺服器900的音訊驅動器(未繪示)與揚聲器(未繪示)播放
第二聲音資料,但不播放第一聲音資料。
圖10是依據第四範例實施例所繪製的影音分享方法的流程圖。
請參考圖10,在步驟S301中,行動電子裝置700透過網路800向伺服器900傳送對應第一應用程式(未繪示)的第一影音分享請求。
在步驟S303中,音訊引擎908初始化音訊擷取模塊取得對應應用程式的處理識別碼。
在步驟S305中,串流處理模組910依據對應第一應用程式的處理識別碼,從音訊擷取模塊之中的第一音訊擷取模塊獲取第一聲音資料。
在步驟S307中,串流處理模組910產生第一影音串流並且將第一影音串流透過通訊模組906經由網路800傳送給行動電子裝置700。
在步驟S309中,行動電子裝置700從伺服器900接收第一影音串流並播放第一影音串流。
必須了解的是,在上述範例實施例中,使用一些程式碼來描述範例實施例的實作方式,然而,必須了解的是,此些程式碼僅為實作本發明的一範例並非限制本發明。
綜上所述,本發明範例實施例的影音分享方法與系統,透過分開擷取應用程式的音訊資料以及圖形資料,並且將此些資料適當編碼之後轉為影音串流,再將轉換後的影音串流以封包傳
送給使用者電子裝置,從而提供使用者較佳的影音分享品質與經驗。
雖然本發明已以實施例揭露如上,然其並非用以限定本發明,任何所屬技術領域中具有通常知識者,在不脫離本發明的精神和範圍內,當可作些許的更動與潤飾,故本發明的保護範圍當視後附的申請專利範圍所界定者為準。
S101、S103、S105、S107、S109‧‧‧影音分享方法的步驟
Claims (14)
- 一種影音分享方法,包括:接收來自一網路的一第一影音分享請求;初始化一音訊引擎的多個音訊擷取模塊以回應多個應用程式;利用該些音訊擷取模塊之中的一第一音訊擷取模塊擷取來自於一第一應用程式的一第一聲音資料並且利用該些音訊擷取模塊之中的一第二音訊擷取模塊擷取來自於一第二應用程式的一第二聲音資料;藉由一串流處理模組依據從該音訊引擎中接收的該第一聲音資料來產生一第一影音串流;以及發送該第一影音串流以回應該第一影音分享請求,其中利用該些音訊擷取模塊之中的該第一音訊擷取模塊擷取來自於該第一應用程式的該第一聲音資料的步驟包括:從對應該第一應用程式的一端點緩衝器中獲取一第一原始聲音資料;將該第一原始聲音資料轉型為符合一聲音格式的該第一聲音資料;儲存該第一聲音資料;以及取出該第一聲音資料並將所取出的該第一聲音資料傳送至該串流處理模組。
- 如申請專利範圍第1項所述之影音分享方法,更包括:依據從該音訊引擎中接收的該第一聲音資料與從一圖形裝置介面模組接收的該圖形資料來產生該第一影音串流。
- 如申請專利範圍第1項所述之影音分享方法,更包括:該行動電子裝置透過該網路向一伺服器傳送對應該第一應用程式的該第一影音分享請求。
- 如申請專利範圍第3項所述之影音分享方法,更包括:初始化該些音訊擷取模塊取得對應每一該些應用程式的一處理識別碼;依據對應該第一應用程式的處理識別碼,從該些音訊擷取模塊之中的該第一音訊擷取模塊獲取該第一聲音資料;以及產生該第一影音串流並且將該第一影音串流透過該通訊模組經由該網路傳送給該行動電子裝置。
- 如申請專利範圍第4項所述之影音分享方法,更包括:從該伺服器接收該第一影音串流並播放該第一影音串流。
- 如申請專利範圍第1項所述之影音分享方法,更包括:依據從該音訊引擎中接收的該第二聲音資料來產生一第二影音串流並且透過該通訊模組發送該第一影音串流以回應一第二影音分享請求。
- 如申請專利範圍第3項所述之影音分享方法,更包括:透過該伺服器的一音訊驅動器與一揚聲器播放該第二聲音資料,並且不播放該第一聲音資料。
- 一種影音分享系統,包括:一處理器單元;一緩衝記憶體,耦接至該處理器單元;一通訊模組,耦接至該處理器單元以及該緩衝記憶體,其中該通訊模組連接至一網路並且接收來自該網路的一第一影音分享請求;一音訊引擎,耦接至該處理器單元、該緩衝記憶體以及該通訊模組,其中該音訊引擎初始化多個音訊擷取模塊以回應多個應用程式,其中該些音訊擷取模塊之中的一第一音訊擷取模塊擷取來自於一第一應用程式的一第一聲音資料並且該些音訊擷取模塊之中的一第二音訊擷取模塊擷取來自於一第二應用程式的一第二聲音資料;以及一串流處理模組,耦接至該處理器單元、該緩衝記憶體、該通訊模組以及該音訊引擎,其中該串流處理模組依據從該音訊引擎中接收的該第一聲音資料來產生一第一影音串流並且透過該通訊模組發送該第一影音串流以回應該第一影音分享請求,其中該第一音訊擷取模塊從對應該第一應用程式的一端點緩衝器中獲取一第一原始聲音資料,將該第一原始聲音資料轉型為符合一聲音格式的該第一聲音資料,在該緩衝記憶體中儲存該第一聲音資料,並且從該緩衝記憶體中取出該第一聲音資料並將所取出的該第一聲音資料傳送至該串流處理模組。
- 如申請專利範圍第8項所述之影音分享系統,更包括一圖形裝置介面模組,該圖形裝置介面模組處理來自於該第一應用程式的一圖形資料,其中該串流處理模組依據從該音訊引擎中接收的該第一聲音資料與從該圖形裝置介面模組接收的該圖形資料來產生該第一影音串流。
- 如申請專利範圍第8項所述之影音分享系統,更包括:一伺服器,該處理器單元、該緩衝記憶體、該通訊模組、該音訊引擎與該串流處理模組配置在該伺服器中;以及一行動電子裝置,該行動電子裝置透過該網路向該伺服器傳送對應該第一應用程式的該第一影音分享請求。
- 如申請專利範圍第10項所述之影音分享系統,該音訊引擎初始化該些音訊擷取模塊取得對應每一該些應用程式的一處理識別碼,其中該串流處理模組依據對應該第一應用程式的處理識別碼,從該些音訊擷取模塊之中的該第一音訊擷取模塊獲取該第一聲音資料,產生該第一影音串流並且將該第一影音串流透過該通訊模組經由該網路傳送給該行動電子裝置。
- 如申請專利範圍第11項所述之影音分享系統,其中該行動電子裝置從該伺服器接收該第一影音串流並播放該第一影音串流。
- 如申請專利範圍第8項所述之影音分享系統,其中該串流處理模組依據從該音訊引擎中接收的該第二聲音資料來產生一第二影音串流並且透過該通訊模組發送該第一影音串流以回應一第二影音分享請求。
- 如申請專利範圍第10項所述之影音分享系統,其中該音訊引擎透過該伺服器的一音訊驅動器與一揚聲器播放該第二聲音資料,並且不播放該第一聲音資料。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW103133740A TWI554089B (zh) | 2014-09-29 | 2014-09-29 | 影音分享方法與系統 |
CN201410552486.XA CN105578202B (zh) | 2014-09-29 | 2014-10-17 | 影音分享方法与*** |
US14/542,678 US20160094603A1 (en) | 2014-09-29 | 2014-11-17 | Audio and video sharing method and system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW103133740A TWI554089B (zh) | 2014-09-29 | 2014-09-29 | 影音分享方法與系統 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201613357A TW201613357A (en) | 2016-04-01 |
TWI554089B true TWI554089B (zh) | 2016-10-11 |
Family
ID=55585758
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW103133740A TWI554089B (zh) | 2014-09-29 | 2014-09-29 | 影音分享方法與系統 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20160094603A1 (zh) |
CN (1) | CN105578202B (zh) |
TW (1) | TWI554089B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11461010B2 (en) * | 2015-07-13 | 2022-10-04 | Samsung Electronics Co., Ltd. | Data property-based data placement in a nonvolatile memory device |
US10282324B2 (en) | 2015-07-13 | 2019-05-07 | Samsung Electronics Co., Ltd. | Smart I/O stream detection based on multiple attributes |
US10509770B2 (en) | 2015-07-13 | 2019-12-17 | Samsung Electronics Co., Ltd. | Heuristic interface for enabling a computer device to utilize data property-based data placement inside a nonvolatile memory device |
US10186275B2 (en) * | 2017-03-31 | 2019-01-22 | Hong Fu Jin Precision Industry (Shenzhen) Co., Ltd. | Sharing method and device for video and audio data presented in interacting fashion |
CN112581976B (zh) * | 2019-09-29 | 2023-06-27 | 骅讯电子企业股份有限公司 | 以串流媒体为基础的歌唱评分方法和歌唱评分*** |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW200828109A (en) * | 2006-12-20 | 2008-07-01 | Asustek Comp Inc | Apparatus for operating multimedia streaming and method for transmitting multimedia streaming |
TW201344457A (zh) * | 2012-04-25 | 2013-11-01 | Awind Inc | 影音分享系統的遙控輸入方法及其應用程式 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060244839A1 (en) * | 1999-11-10 | 2006-11-02 | Logitech Europe S.A. | Method and system for providing multi-media data from various sources to various client applications |
US7742609B2 (en) * | 2002-04-08 | 2010-06-22 | Gibson Guitar Corp. | Live performance audio mixing system with simplified user interface |
US7574274B2 (en) * | 2004-04-14 | 2009-08-11 | Nvidia Corporation | Method and system for synchronizing audio processing modules |
US20070143801A1 (en) * | 2005-12-20 | 2007-06-21 | Madonna Robert P | System and method for a programmable multimedia controller |
US20070299983A1 (en) * | 2006-06-21 | 2007-12-27 | Brothers Thomas J | Apparatus for synchronizing multicast audio and video |
CN101267536B (zh) * | 2007-03-15 | 2012-06-27 | 微捷科技股份有限公司 | 影音分区独立播放与分享***及其方法 |
US9060094B2 (en) * | 2007-09-30 | 2015-06-16 | Optical Fusion, Inc. | Individual adjustment of audio and video properties in network conferencing |
WO2011072049A2 (en) * | 2009-12-08 | 2011-06-16 | Citrix Systems, Inc. | Systems and methods for a client-side remote presentation of a multimedia stream |
US8711736B2 (en) * | 2010-09-16 | 2014-04-29 | Apple Inc. | Audio processing in a multi-participant conference |
CN102447956A (zh) * | 2010-09-30 | 2012-05-09 | 北京沃安科技有限公司 | 手机视频分享的方法及*** |
US20140195675A1 (en) * | 2013-01-09 | 2014-07-10 | Giga Entertainment Media Inc. | Simultaneous Content Data Streaming And Interaction System |
US9118293B1 (en) * | 2013-09-18 | 2015-08-25 | Parallels IP Holdings GmbH | Method for processing on mobile device audio signals of remotely executed applications |
CN103617803A (zh) * | 2013-11-08 | 2014-03-05 | 中标软件有限公司 | 一种车载***上多音源自动切换方法及*** |
-
2014
- 2014-09-29 TW TW103133740A patent/TWI554089B/zh active
- 2014-10-17 CN CN201410552486.XA patent/CN105578202B/zh active Active
- 2014-11-17 US US14/542,678 patent/US20160094603A1/en not_active Abandoned
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW200828109A (en) * | 2006-12-20 | 2008-07-01 | Asustek Comp Inc | Apparatus for operating multimedia streaming and method for transmitting multimedia streaming |
TW201344457A (zh) * | 2012-04-25 | 2013-11-01 | Awind Inc | 影音分享系統的遙控輸入方法及其應用程式 |
Also Published As
Publication number | Publication date |
---|---|
CN105578202A (zh) | 2016-05-11 |
CN105578202B (zh) | 2019-08-09 |
TW201613357A (en) | 2016-04-01 |
US20160094603A1 (en) | 2016-03-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI554089B (zh) | 影音分享方法與系統 | |
TWI749426B (zh) | 用於媒體資料之嵌入式呈現引擎 | |
US9665336B2 (en) | Direct streaming for wireless display | |
US10140989B2 (en) | Method and system for speech recognition processing | |
EP2867849B1 (en) | Performance analysis for combining remote audience responses | |
US20140093100A1 (en) | User terminal apparatus, electronic device, and method for controlling the same | |
US20170075769A1 (en) | Method and apparatus for providing and receiving contents via network, method and apparatus for backing up data via network, backup data providing device, and backup system | |
US20160316243A1 (en) | Server device for sharing contents, client device, and method for sharing contents | |
US10285035B2 (en) | Communication apparatus and control method therefor | |
JP2015517709A (ja) | コンテキストに基づくメディアを適応配信するシステム | |
US20150067150A1 (en) | Systems and methods for proactive media data sharing | |
US20130335594A1 (en) | Enhancing captured data | |
US9445142B2 (en) | Information processing apparatus and control method thereof | |
WO2018089096A1 (en) | Compressed media with still images selected from a video stream | |
JP2022539299A (ja) | 中断可能な映像トランスコーディング | |
US10262693B2 (en) | Direct media feed enhanced recordings | |
EP4231200A1 (en) | Distributed machine learning inference | |
WO2016061890A1 (zh) | 一种资源共享方法、终端、***及计算机存储介质 | |
US9277261B2 (en) | Information processing apparatus and control method thereof | |
US9106802B2 (en) | Dual-type of playback for multimedia content | |
KR20160066274A (ko) | 클라우드 스트리밍 서비스 시스템, 어플리케이션 코드를 이용한 이미지 클라우드 스트리밍 서비스 방법 및 이를 위한 장치 | |
TWI581626B (zh) | 影音自動處理系統及方法 | |
KR20160087226A (ko) | 클라우드 스트리밍 서비스 시스템, 단말 성능을 고려한 이미지 클라우드 스트리밍 서비스 방법 및 이를 위한 장치 | |
CN106502938B (zh) | 用于实现图像和语音交互的方法和装置 | |
Hu et al. | Multimedia Resource Sharing based on UPnP protocol and embedded device |