freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內容

畢業(yè)設計-基于java的mp3播放器的設計與實現-文庫吧資料

2025-01-19 02:25本頁面
  

【正文】 P3)) { //若為 mp3文件,則讀取 TAG獲取信息 try { FileInputStream fin = new FileInputStream(f)。 //創(chuàng)建一個未分配系統(tǒng)資源的播放器以便獲取播放總時間 ()。//格式 tempplayer=(new MediaLocator(file:+()))。//月 lastmodifiedd=()。//日期 lastmodifiedy=()+1900。//文件名 absolutepath=()。 private JCheckBox shuffleCheckBox = null。 private WindowDragControl windowDragControl = new WindowDragControl(this)。 private JButton sureButton = null。 private JPanel jContentPane3 = null。 private JButton mergeExecButton = null。 private JTextField mergedFilePath = null。 private JButton removeMergeButton = null。 private JButton cutExecButton = null。 private JTextField cutFilePath = null。 private JLabel jLabel = null。 private JSlider startSlider = null。 private int cutFrameState = 。 private int plstate = 。 private PlayerCTL playerCTL = new PlayerCTL()。 private HashMap songMap = new HashMap()。 private JFrame mergeFrame = null。 private JFrame cutFrame = null。 private JButton removeButton = null。 private List playList = null。 private JFrame playListFrame = null。 private JButton mergeButton = null。 private JButton nextButton = null。 private JButton playButton = null。 private JButton playlistButton = null。 private JPanel visualPanel = null。 private JLabel playLabel = null。 private JPanel headPanel = null。 private JSlider volumnSlider = null。//播放器開始播放 播放信息模塊詳細設計與實現 ( 1)播放信息模塊: 播放信息模塊主要負責記錄播放器的各種狀態(tài),并提供 get/set函數進讀取、設置,由于播放信息模塊包含著播放 列表模塊,因此播放信息模塊中包含著對播放列表的操作,當 ListController 播放列表控制模塊要對播放列表進行操作時,需要間接調用播放信息模塊的函數。 用播放狀態(tài)的當前播放文件創(chuàng)建一個分配好資源處于就緒狀態(tài)的播放器 ().getCurrentsonginfo().setTotalTime((().getSeconds() / 10E6) / )。播放命令由播放按鈕點擊產生單機事件形成播放命令 當播放器接收到播放命令后,會依次執(zhí)行下面的過程: 1:查播放器的當前狀態(tài)是否是暫停狀態(tài),即判斷暫停狀態(tài)布爾型變量 isPaused 的值。 播放控制模塊詳細設計與實現 放功能是媒體播放器所有控制功能中最重要的 一個功能,沒有了它,播放器不能播放,也就不能稱之為播放器了。 聽用戶 /播放器的事件 在 Eclipse啟動后,要真正用到某個插件是,該插件才會被動態(tài)載入內存,不再被使用的插件會在適當的時候被清出內存,本系統(tǒng)使用到的典型插件的例子就是用于開發(fā)圖形界面的 VisualEditor 用戶界面模塊詳細設計與實現 戶界面的主要有三大任務,即 Eclipse是一個開放源代碼的,基于 Java 的可擴展開發(fā)平臺,也同時是目前非常流行的跨平臺的自由集成開發(fā)環(huán)境( IDE)。 播放控制流程 器 Player 從建立之初到消亡,各有一系列已經在 JMF 中編寫好的方法可以調用。如果存在,則將其傳遞給歌詞控制模塊進行時間信息和歌詞文本的分離,然后返回播放控制模塊;如果此時返回的歌詞存在,則將其傳遞給歌詞顯示窗口進行顯示,并使用時間信息進行控制。 對歌詞文件的傳遞 詞的實時顯示作為本播放器的重要功能, LRC 歌詞文件的處理流程也就顯得至關重要,因為 LRC歌詞可能處于不同位置,所以其地址和數據處理流程要比音頻文件的處理流程要復雜 得多。 歌曲信息節(jié)點 1 歌曲信息節(jié)點 2 歌曲信息節(jié)點。各 面板關系如圖 33: 播放信息模塊 用戶界面模塊 播放控制模塊 播放列表控制模塊 歌詞控制模塊 播放列表 歌曲信息 圖 33 面板關系圖 播放信息模塊 放信息模塊由播放信息,播放列表,歌曲信息節(jié)點三個層次嵌套而成,如 34 所示: 圖 34 信息模塊關系圖 音頻文件播放邏輯 對音頻文件的傳遞 音頻文件的傳送主要是用在播放列表處理的過程中,當播放器的用戶想利用本播放器來播放一個音頻文件時,首先要做的就是將該音頻文件所在磁盤上的地址傳到播放列表模塊中,由 播放列表將信息傳遞給播放信息模塊進行數據更新。這些控件被按照功能分成了 3 組,它們分別是控制面板、播放列表面板和 LRC 面板。首先,給出該界面的組件組成。 播放列 表控制模塊 播放控制模塊 故將系統(tǒng)分為五大模塊進行構建,分別是 音頻文件信息顯示功能:將音頻文件的基本信息呈現給用戶,同時用戶自己可以設置一些信息。 媒體文件的播放控制功能:開始播放、暫停播放、停止播放和拖動播放等; 在這樣的情況下,對播放器的設計目標要求有如下功能的實現: 至少應該能夠對 音頻文件 進行播放、暫停、停止、 音量和進度 拖放操作等。相應地,本軟件也同樣使用 MVC 思想指導設計,做到模塊細化,分工明確,模塊間邏輯順序清晰的三大目標。只要 Controller 改變了Models 的數據或者屬性,所有以來的 View 都會自動更新。 三、系統(tǒng)架構和功能模塊分析 MVC 架構是“ ModelViewController”的縮寫, 即將“模型 視圖 控制”作為應用程序構成的三要素。Player 當從一個狀態(tài)轉為另一狀態(tài)時都會產生 transition events。( Player和 Processor 繼承于 Controller 類 所有的 Controller 事件, ControllerEvent 由 Controller(如 Player 或Processor)產生,可分為三類:改變通知( change notification),關閉事件( closed event),狀態(tài)轉變事件( transition event): 1 . 改 變 通 知 事 件 如 RateChangeEvent , DurationUpdateEvent ,FormatChangeEvent表明一些 Controller 的屬性的改變。為了能在某一 MediaEvent 事件發(fā)生時得到相應的通知,必須實現適當的偵聽接口以及在對應的類體中重寫該接口中處理MediaEvent事件的方法體,并通過調用 addListener方法來接收此 MediaEvent事件。 MediaEvent 的子類包括 ControllerEvern, DataSinkEvent, GainChangeEvent, RTPEvent。 事件模型 JMF 利用事件報告機制來使基于 JMF 的程序獲知媒體系統(tǒng)當前的狀態(tài),從而使程序能夠對相應狀態(tài)的改變作出相應的操作。 例如當你需要播放一個DataSource對象,你可以通過使用 Manager對象 createPlayer( )方法創(chuàng)建一個 Player 對象來播放它。 圖 23 表示 JMF 對音頻格式和視頻格式的定義: 圖 23 JMF的媒體數據格式 管理器( Manager) JMF 提供了下面四種管理器 ( Manager) : 在 AudioFormat 中,描述了音頻格式的 屬性,如采樣頻率、每次采樣的數據位數等等。只是描述了該格式的編碼名稱和數據類別。 數據格式( Format) 在 JMF 架構中,數據格式 ( Format) 對象中保存了媒體的格式( format)信息。一個特定的DataSink 或把數據輸出到一個文件,或通過網絡傳輸數據,或進行 RTP 廣播。 Configured:當完成數據源連接,獲得輸入數據格式的信息后,處理器對象就處于 Configured 狀態(tài)。在該狀態(tài)下處理器對象連接到數據源并獲取輸入數據的格式信息。 圖 21 處理器模型 如圖 22 所示,除了在播放器中提到了的 6 種狀態(tài)以外,處理器對象還包括兩種新的狀態(tài)。 MediaLocator 用來定位采集設備、本機的媒體文件、網絡上的媒體文件以及網絡 RTP 流。 媒體定位器( MediaLocator) DataSource 通常用兩種方式來定義,媒體定位器( MediaLocator)或 URL( Universal Resource Locator)。對于 DataSource對象,一旦你確定了它的位置和類型,對象中就包含了多媒體的位置信息和能夠播放該多媒體的軟件信息。 數據格式( Format) 處理器( Processor) 媒體定位器( MediaLocator) 包含可擴展的編碼器/解碼器媒體支持 JMF 常用類 JMF 的常用類包括以下幾個: 當前沒有與任何 JDK 一起提供 添加對音頻、視頻和其它基于時間的數據的支持 本身支持相對較少的音頻格式( AIFF、 WAV 和 AU) 與 JDK 及更高版本一起提供
點擊復制文檔內容
試題試卷相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1