專利名稱:一種有聲圖片的計算機實現(xiàn)方法
技術領域:
一種有聲圖片的計算機實現(xiàn)方法。
背景技術:
電腦技 術突飛猛進,已經(jīng)走過了多媒體時代,進入了互聯(lián)網(wǎng)時代,人們能夠很方便的在網(wǎng)絡上搜索查看圖片、音頻或者是影音。如今,互聯(lián)網(wǎng)逐漸進入互動與分享時代,國外風靡的臉譜網(wǎng)facebook,推特twitter和國內(nèi)風靡的人人網(wǎng)、微博、微信等已經(jīng)大面積得到用戶的認可和喜愛,很多人甚至成了“人人控”、“微博控”,用戶有著強烈的自我展示意識或者分享情結,今天吃的午飯會拍下來發(fā)到微博叫朋友圍觀,或者分享一首好聽的歌給大家,更或者是發(fā)送一條微信給親密的人。有聲圖片的發(fā)明人意在為人們提供一種“照片配音”的多媒體形式,用于人們在互聯(lián)網(wǎng)上分享自己拍下的瞬間以及記錄的音頻,這比傳統(tǒng)的影音更有意義?,F(xiàn)有的視頻拍攝技術結合了圖片和聲音,但是拍攝與制作過程復雜,分享也不方便。拍攝過后的視頻原始數(shù)據(jù)需要經(jīng)過編碼,目前有AVI、RM等主流視頻編碼,制作視頻文件的設備和軟件許可使用費用昂貴,對制作者的專業(yè)技能要求高,制作出的視頻文件數(shù)據(jù)量大,可編輯性差,而且?guī)б纛l的視頻文件在電視、電影等媒體播放載體上為人們所熟知,吸引力減弱。此外,視頻文件通常很難直接在網(wǎng)頁上播放,現(xiàn)有的主流網(wǎng)頁瀏覽器通常是使用FLASH播放器插件來播放視頻,而許多格式的視頻文件,如AVI,RM格式的視頻文件都不能利用FLASH播放器播放。
發(fā)明內(nèi)容
本發(fā)明提供一種有聲圖片的計算機實現(xiàn)方法。本發(fā)明的技術方案包括如下步驟
a.數(shù)據(jù)準備步驟準備需要合成的圖像數(shù)據(jù)和音頻數(shù)據(jù);如果這些圖像和音頻數(shù)據(jù)已經(jīng)是二進制格式,則跳過步驟b直接進入步驟c ;如果不是,則進入步驟b;
b.第一編碼步驟將圖像數(shù)據(jù)和音頻數(shù)據(jù)編碼為二進制原始信息,即圖像二進制原始信息和音頻二進制原始信息;
c.第二編碼步驟將a或b步驟中得到的圖像二進制原始信息和音頻二進制原始信息進行編碼和壓縮,得到待輸入圖像數(shù)據(jù)Pi和待輸入音頻數(shù)據(jù)Si ;
d.合成壓縮步驟創(chuàng)建一個字節(jié)數(shù)組BI,將文件頭字符串、圖片標識字符串、C步驟中得出的待輸入圖像數(shù)據(jù)PU音頻判斷有效數(shù)據(jù)、音頻標識字符串、C步驟中得出的待輸入音頻數(shù)據(jù)SI按預先設定的地址和數(shù)據(jù)的對應關系輸入這個字節(jié)數(shù)組BI ;輸入完成后壓縮該字節(jié)數(shù)組;所述文件頭字符串為定義輸出文件格式的二進制數(shù)據(jù),圖片標識字符串為描述圖像數(shù)據(jù)格式的二進制數(shù)據(jù),音頻判斷有效數(shù)據(jù)為判斷有音頻文件的二進制數(shù)據(jù),音頻標識字符串為標識音頻數(shù)據(jù)格式的二進制數(shù)據(jù);e.輸出數(shù)據(jù)步驟將d步驟中壓縮后的字節(jié)數(shù)組輸出為有聲圖片的數(shù)據(jù)文件B3并存
儲;
f.解壓播放步驟將e步驟中得到的有聲圖片的數(shù)據(jù)文件B3進行解壓和解碼播放。利用上述步驟即可得到本發(fā)明所述的有聲圖片的輸出文件,并對有聲圖片的輸出文件進行播放。優(yōu)選的,在c.第二 編碼步驟中將a或b步驟中得到的圖像二進制原始信息進行編碼和壓縮以得到待輸入圖像數(shù)據(jù)Pl的實現(xiàn)過程為通過PNG或者JPEG編碼器編碼壓縮為PNG或者JPEG格式的待輸入圖像數(shù)據(jù)Pl。對音頻二進制原始信息進行編碼和壓縮以得到待輸入音頻數(shù)據(jù)SI的實現(xiàn)過程為通過WAV編碼器編碼為WAV格式的數(shù)據(jù),再將WAV格式的數(shù)據(jù)通過MP3編碼器壓縮為MP3格式的待輸入音頻數(shù)據(jù)SI。通過使用PNG,JPEG, WAV,MP3等業(yè)內(nèi)公知的成熟的軟件壓縮技術可以提高本發(fā)明所述的有聲圖片文件的壓縮效率,減小數(shù)據(jù)存儲空間。也可以使用OBJECTIVE-C計算機語言編程實現(xiàn),0BJECTIVE-C是擴充C語言的面向對象編程語言,目前美國蘋果公司的IPhone和iPad開發(fā)應用的編程語言
另一種優(yōu)選的實施方式d.合成壓縮步驟和/或f.解壓播放步驟是使用計算機語言JAVA或C++編程實現(xiàn)的。C++編程效率聞,而JAVA語目具有跨平臺性,方便移植。使用這些計算機語言編程時,只要在f.解壓播放步驟中對應的進行計算機語言編程解壓解碼,就可以實現(xiàn)既在本地或者服務器上播放,也可以在裝有解壓解碼軟件的網(wǎng)頁瀏覽器上播放。d.合成壓縮步驟和/或f.解壓播放步驟也可以使用Objective-C計算機語言編程實現(xiàn),Objective-C是擴充C語言的面向對象編程語言,也是目前美國蘋果公司的IPhone和iPad開發(fā)應用的編程語言,使用Objective-C語言編寫,便于在IPhone和iPad上使用。再一種優(yōu)選的實施方式d.合成壓縮步驟是使用計算機語言Action Script3. O編程實現(xiàn)的,f.解壓播放步驟直接使用FLASH播放器軟件實現(xiàn)。由于FLASH播放器軟件在主流網(wǎng)頁瀏覽器軟件中的廣泛使用,本實施例實際實現(xiàn)了本發(fā)明所述的有聲圖片文件在網(wǎng)頁上的直接播放。當用戶沒有音頻文件或者不希望播放圖片時有聲音同時播放時,本發(fā)明提供的有聲圖片的計算機實現(xiàn)方法的d.合成壓縮步驟為創(chuàng)建一個字節(jié)數(shù)組B2,將文件頭字符串、圖片標識字符串、c步驟中得出的待輸入圖像數(shù)據(jù)P2、音頻判斷無效數(shù)據(jù)按預先設定的地址和數(shù)據(jù)的對應關系輸入這個字節(jié)數(shù)組B2 ;輸入完成后壓縮該字節(jié)數(shù)組;所述文件頭字符串為定義輸出文件格式的二進制數(shù)據(jù),圖片標識字符串為描述圖像數(shù)據(jù)格式的二進制數(shù)據(jù),所述音頻判斷無效數(shù)據(jù)為判斷無音頻文件的二進制數(shù)據(jù)。由此得到的是只有圖片而沒有聲音的數(shù)據(jù)和播放效果。本發(fā)明關于有聲圖片的計算機實現(xiàn)方法簡單,對軟硬件要求環(huán)境均不高,使用各種計算機語言都可以編程實現(xiàn)對本發(fā)明所述的有聲圖片數(shù)據(jù)文件的制作和播放,操作簡便,由于對圖片和音頻文件進行合成壓縮步驟,得到的有聲圖片的數(shù)據(jù)量小,不僅占用存儲空間小,而且有利于在網(wǎng)速有限的網(wǎng)絡上快速傳輸和播放。在f.解壓播放步驟中,使用任意一種計算機語言編寫的軟件程序對有聲圖片的數(shù)據(jù)進行解壓解碼播放,既可以在計算機上本地播放,也可以在網(wǎng)絡上播放,只要在網(wǎng)頁瀏覽器上攜帶了這種用于解壓解碼的軟件插件,就可以實現(xiàn)在網(wǎng)頁瀏覽器上的播放。
優(yōu)選的,本發(fā)明所述的技術方案當d步驟采用Action Script3. O語言編程實現(xiàn)時,得到的有聲圖片的輸出文件可以直接在帶有FLASH播放器插件的網(wǎng)頁上直接播放。
說明書附圖示出本發(fā)明所述有聲圖片的計算機實現(xiàn)方法的步驟框圖。
具體實施例方式下面結合附圖,對本發(fā)明的具體實施方式
作進一步的詳細說明。附圖示出本發(fā)明所述的有聲圖片的計算機實現(xiàn)方法,包括如下步驟
a.數(shù)據(jù)準備步驟準備需要合成的圖像數(shù)據(jù)和音頻數(shù)據(jù);如果這些圖像和音頻數(shù)據(jù)已經(jīng)為二進制格式,則跳過步驟b直接進入步驟c ;如果不是,則進入步驟b;
b.第一編碼步驟將圖像數(shù)據(jù)和音頻數(shù)據(jù)編碼為二進制原始信息,即圖像二進制原始信息和音頻二進制原始信息;
c.第二編碼步驟將a或b步驟中得到的圖像二進制原始信息和音頻二進制原始信息進行編碼和壓縮,得到待輸入圖像數(shù)據(jù)Pi和待輸入音頻數(shù)據(jù)Si ;
d.合成壓縮步驟創(chuàng)建一個字節(jié)數(shù)組BI,將文件頭字符串、圖片標識字符串、C步驟中得出的待輸入圖像數(shù)據(jù)PU音頻判斷有效數(shù)據(jù)、音頻標識字符串、C步驟中得出的待輸入音頻數(shù)據(jù)SI按預先設定的地址和數(shù)據(jù)的對應關系輸入這個字節(jié)數(shù)組BI ;輸入完成后壓縮該字節(jié)數(shù)組;所述文件頭字符串為定義輸出文件格式的二進制數(shù)據(jù),圖片標識字符串為描述圖像數(shù)據(jù)格式的二進制數(shù)據(jù),音頻判斷有效數(shù)據(jù)為判斷有音頻文件的二進制數(shù)據(jù),音頻標識字符串為標識音頻數(shù)據(jù)格式的二進制數(shù)據(jù);
e.輸出數(shù)據(jù)步驟將d步驟中壓縮后的字節(jié)數(shù)組輸出為有聲圖片的數(shù)據(jù)文件B3并存
儲;
f.解壓播放步驟將e步驟中得到的有聲圖片的數(shù)據(jù)文件B3進行解壓和解碼播放。下面對本發(fā)明的具體實施方式
以及優(yōu)選技術方案進行闡述
a.數(shù)據(jù)準備步驟中可以通過各種方式,例如掃描、數(shù)碼拍攝、數(shù)碼錄音或者選擇以任意格式保存的圖片文件和音頻文件來作為需要合成的圖片數(shù)據(jù)和音頻數(shù)據(jù)。由于后續(xù)c步驟需要二進制格式的文件,因此如果a步驟中得到的不是二進制格式的圖片和音頻數(shù)據(jù),那么進入b步驟將其轉化為二進制格式,如果a步驟中得到的已經(jīng)是二進制格式的圖片和音頻數(shù)據(jù),那么不需要進行b步驟而直接進入c步驟。二進制格式的數(shù)據(jù)存儲方式是計算機對數(shù)據(jù)進行存儲的基本存儲方式,在幾乎所有計算機上都可以實現(xiàn)所述b.第一編碼步驟,即將圖像數(shù)據(jù)和音頻數(shù)據(jù)編碼為二進制原始信息,即圖像二進制原始信息和音頻二進制原始信息
c.第二編碼步驟可以采用各種常用的壓縮處理格式對圖像和音頻數(shù)據(jù)進行編碼壓縮,得到待輸入圖像數(shù)據(jù)Pl和待輸入音頻數(shù)據(jù)Si,對數(shù)據(jù)的壓縮處理希望壓縮量越大、保真度越高越好。對圖像數(shù)據(jù)優(yōu)選的選用PNG和JPEG格式進行編碼壓縮,可以實現(xiàn)對圖像數(shù)據(jù)的最大壓縮量和高保真度,對圖像數(shù)據(jù)的處理選擇PNG還是JPEG編碼決定于要處理的圖像是否有透明通道,即PNG格式可以處理有透明背景的圖片,而JPEG則不能處理透明背景的圖片。出于同樣的原因,優(yōu)選采用WAV編碼器對音頻數(shù)據(jù)編碼為WAV格式的數(shù)據(jù),再將所述WAV格式的數(shù)據(jù)通過MP3編碼器壓縮為MP3格式以最大化壓縮數(shù)據(jù)。PNG和JPEG都是一種對圖像數(shù)據(jù)按照一定規(guī)律進行編碼壓縮后輸出的一種文件存儲格式,具備高壓縮量和高保真度。WAV為微軟公司開發(fā)的一種聲音文件壓縮軟件,也用來命名壓縮后的文件格式,即WAV格式,MP3是一種音頻壓縮技術,其全稱是Moving Picture Experts Group Audio LayerIII,簡稱為MP3,可以將音頻文件大幅壓縮成數(shù)據(jù)量小的文件,壓縮后的文件也稱為MP3,本發(fā)明利用這些公知成熟的軟件技術來提高文件壓縮效果。d.合成壓縮步驟中,將圖片和音頻數(shù)據(jù)的格式,也就是圖片標識字符串和音頻標識字符串;和數(shù)據(jù)本身的信息,也就是待輸入圖像數(shù)據(jù)Pi和待輸入音頻數(shù)據(jù)Si以及輸出文件的文件頭信息等存儲進一個字節(jié)數(shù)組,存 儲這些信息時,需要按照一定的地址對應關系將上述各種數(shù)據(jù)輸入進這個數(shù)組,以便在后續(xù)的解壓解碼步驟中能夠從這個字節(jié)數(shù)組按照地址位置準確的讀出圖片和音頻數(shù)據(jù)信息,并定義輸出文件的擴展名。在d.合成壓縮步驟中,如果不需要音頻文件,那么不再輸入音頻判斷有效數(shù)據(jù),而改為輸入音頻判斷無效數(shù)據(jù),并且后續(xù)的音頻標識字符串和待輸入音頻數(shù)據(jù)也不再輸入。這樣最終得到的文件在播放時將只有圖片顯示而沒有音頻播放。例如當需要輸入音頻文件時,音頻判斷有效數(shù)據(jù)輸入1,而不需要輸入音頻文件時,輸入音頻判斷無效數(shù)據(jù)O。數(shù)據(jù)合成完畢后,輸出的數(shù)據(jù)就是本發(fā)明所述的有聲圖片數(shù)據(jù)文件,將這個數(shù)據(jù)存儲在本地計算機的硬盤上或者服務器上,用戶播放這個文件時,只需要對這個輸出的數(shù)據(jù)文件進行解壓解碼即可,解壓解碼的過程在f.解壓播放步驟通過計算機語言編程來實現(xiàn)。d.合成壓縮步驟和f.解壓播放步驟分別對輸入的文件進行編碼壓縮和解壓解碼播放,這個過程可以利用各種主流計算機語言編程實現(xiàn),例如使用目前大量使用的JAVA和C++計算機語目,使用C++語目編程效率聞,使用JAVA語目則可以在多種設備上實現(xiàn)編碼,具有跨平臺性。d步驟和f步驟可以采用相同的計算機語言編程,但也可以采用不同的計算機語言實現(xiàn),只要能對數(shù)據(jù)進行編碼和解壓解碼即可。例如d步驟采用JAVA,f步驟采用C++編程實現(xiàn)。d.合成壓縮步驟和/或f.解壓播放步驟也可以使用Objective-C計算機語言編程實現(xiàn),Objective-C是擴充C語言的面向對象編程語言,也是目前美國蘋果公司的數(shù)碼產(chǎn)品IPhone和iPad開發(fā)應用的編程語言,使用Objective-C語言編寫,便于在IPhone和iPad上使用。對應的,在f.解壓播放步驟中,使用任意一種計算機語言編寫的軟件程序對有聲圖片的數(shù)據(jù)進行解壓解碼播放,既可以在計算機上本地播放,也可以在網(wǎng)絡上播放,只要在網(wǎng)頁瀏覽器上攜帶了這種用于解壓解碼的軟件插件,就可以實現(xiàn)在網(wǎng)頁瀏覽器上的播放。本發(fā)明優(yōu)選的在d.合成壓縮步驟中使用Action Script3. O計算機語言,簡稱AS3. O語目進彳了編程實現(xiàn),AS3. O語目是針對Adobe Flash Player軟件程序,也就是通常簡稱的FLASH播放器軟件運行環(huán)境的編程語言,它在Flash內(nèi)容和應用程序中實現(xiàn)了交互性、數(shù)據(jù)處理以及其它許多功能。在d.合成壓縮步驟中使用AS3. O語言編程實現(xiàn),在f.解壓播放步驟中就無須另外使用解碼器,而直接使用FLASH播放器軟件播放即可,而FLASH播放器插件目前在主流的網(wǎng)頁瀏覽器中大量使用,用戶直接通過帶有FLASH播放器插件的網(wǎng)頁就可以播放本發(fā)明所述的有聲圖片的數(shù)據(jù)文件,方便使用。本發(fā)明實現(xiàn)了一種多媒體展示形式,即在計算機上顯示帶聲音的圖片的實現(xiàn)方法,本發(fā)明關于有聲圖片的計算機實現(xiàn)方法簡單,對軟硬件要求環(huán)境均不高,使用各種計算機語言都可以編程實現(xiàn)對本發(fā)明所述的有聲圖片數(shù)據(jù)文件的制作和播放,操作簡便,所得到的合成后的帶圖片和音頻信息的數(shù)據(jù)文件由于采用高壓縮比的圖像以及音頻編碼格式,再進行合成壓縮處理,編碼后數(shù)據(jù)體積很小,例如當畫面分辨率1000x600以上、10秒聲音時只有不到300KB,不僅存儲空間小,而且易于在網(wǎng)速一定的網(wǎng)絡上快速傳輸以及播放。
以上所述的僅為本發(fā)明的優(yōu)選實施例,所述實施例并非用以限制本發(fā)明的專利保護范圍,因此凡是運用本發(fā)明的 說明書及附圖內(nèi)容所作的原理相同,具體實現(xiàn)方式不同的變化,同理均應包含在本發(fā)明的保護范圍內(nèi)。
權利要求
1.一種有聲圖片的計算機實現(xiàn)方法,包括如下步驟 a.數(shù)據(jù)準備步驟準備需要合成的圖像數(shù)據(jù)和音頻數(shù)據(jù);如果這些圖像和音頻數(shù)據(jù)已經(jīng)是二進制格式,則跳過步驟b直接進入步驟c ;如果不是,則進入步驟b; b.第一編碼步驟將圖像數(shù)據(jù)和音頻數(shù)據(jù)編碼為二進制原始信息,即圖像二進制原始信息和音頻二進制原始信息; c.第二編碼步驟將a或b步驟中得到的圖像二進制原始信息和音頻二進制原始信息進行編碼和壓縮,得到待輸入圖像數(shù)據(jù)Pi和待輸入音頻數(shù)據(jù)Si ; d.合成壓縮步驟創(chuàng)建一個字節(jié)數(shù)組BI,將文件頭字符串、圖片標識字符串、C步驟中得出的待輸入圖像數(shù)據(jù)P1、音頻判斷有效數(shù)據(jù)、音頻標識字符串、C步驟中得出的待輸入音頻數(shù)據(jù)SI按預先設定的地址和數(shù)據(jù)的對應關系輸入這個字節(jié)數(shù)組BI ;輸入完成后壓縮該字節(jié)數(shù)組;所述文件頭字符串為定義輸出文件格式的二進制數(shù)據(jù),圖片標識字符串為描述圖像數(shù)據(jù)格式的二進制數(shù)據(jù),音頻判斷有效數(shù)據(jù)為判斷有音頻文件的二進制數(shù)據(jù),音頻標識字符串為標識音頻數(shù)據(jù)格式的二進制數(shù)據(jù); e.輸出數(shù)據(jù)步驟將d步驟中壓縮后的字節(jié)數(shù)組輸出為有聲圖片的數(shù)據(jù)文件B3并存儲; f.解壓播放步驟將e步驟中得到的有聲圖片的數(shù)據(jù)文件B3進行解壓和解碼播放。
2.如權利要求I所述的一種有聲圖片的計算機實現(xiàn)方法,其特征在于所述c.第二編碼步驟中將a或b步驟中得到的圖像二進制原始信息進行編碼和壓縮以得到待輸入圖像數(shù)據(jù)Pl的實現(xiàn)過程為通過PNG或者JPEG編碼器編碼壓縮為PNG或者JPEG格式的待輸入圖像數(shù)據(jù)Pl。
3.如權利要求I所述的一種有聲圖片的計算機實現(xiàn)方法,其特征在于所述c.第二編碼步驟中將a或b步驟中得到的音頻二進制原始信息進行編碼和壓縮以得到待輸入音頻數(shù)據(jù)SI的實現(xiàn)過程為通過WAV編碼器編碼為WAV格式的數(shù)據(jù),再將WAV格式的數(shù)據(jù)通過MP3編碼器壓縮為MP3格式的待輸入音頻數(shù)據(jù)SI。
4.如權利要求I所述的有聲圖片的計算機實現(xiàn)方法,其特征在于所述d.合成壓縮步驟和/或f.解壓播放步驟是使用計算機語言JAVA或C++或Objective-C編程實現(xiàn)的。
5.如權利要求I所述的有聲圖片的計算機實現(xiàn)方法,其特征在于所述d.合成壓縮步驟是使用計算機語言Action Script3. O編程實現(xiàn)的,所述f.解壓播放步驟直接使用FLASH播放器軟件實現(xiàn)。
6.如權利要求1-5任意一項所述的一種有聲圖片的計算機實現(xiàn)方法,其特征在于所述d.合成壓縮步驟為創(chuàng)建一個字節(jié)數(shù)組B2,將文件頭字符串、圖片標識字符串、c步驟中得出的待輸入圖像數(shù)據(jù)P2、音頻判斷無效數(shù)據(jù)按預先設定的地址和數(shù)據(jù)的對應關系輸入這個字節(jié)數(shù)組B2 ;輸入完成后壓縮該字節(jié)數(shù)組;所述文件頭字符串為定義輸出文件格式的二進制數(shù)據(jù),圖片標識字符串為描述圖像數(shù)據(jù)格式的二進制數(shù)據(jù),所述音頻判斷無效數(shù)據(jù)為判斷無音頻文件的二進制數(shù)據(jù)。
全文摘要
本發(fā)明涉及一種有聲圖片的計算機實現(xiàn)方法,包括如下步驟:a.數(shù)據(jù)準備步驟;b.第一編碼步驟;c.第二編碼步驟;d.合成壓縮步驟;e.數(shù)據(jù)輸出步驟;f.解壓播放步驟。利用上述步驟即可得到本發(fā)明所述的有聲圖片的輸出文件,并對有聲圖片的輸出文件進行播放。所述合成壓縮步驟和解壓播放步驟可以采用各種不同的計算機語言編程實現(xiàn),都可以實現(xiàn)在計算機本地或者網(wǎng)絡上的有聲圖片的播放。
文檔編號G06T9/00GK102819851SQ20121028030
公開日2012年12月12日 申請日期2012年8月8日 優(yōu)先權日2012年8月8日
發(fā)明者王敬, 龔書 申請人:成都思珩網(wǎng)絡科技有限公司