java视频播放器几种
java视频播放器源代码

import java.awt.*;import java.io.*;import java.util.*;import javax.media.*;import javax.media.format.*;import javax.swing.*;public class VideoPlayer implements ControllerListener {Vector audioCapDevList = null;Vector videoCapDevList = null;CaptureDeviceInfo audioCapDevInfo = null;CaptureDeviceInfo videoCapDevInfo = null;MediaLocator audioCapDevLoc = null;MediaLocator videoCapDevLoc = null;Player audioPlayer;Player videoPlayer;public void initAudioCapDevLoc() {//这里可以填写其它的音频编码格式,具体请看AudioFormat类audioCapDevList = CaptureDeviceManager.getDeviceList(new AudioFormat(AudioFormat.LINEAR));if ((audioCapDevList.size() > 0)) {//或许有几个CaptureDevice,这里取第一个audioCapDevInfo = (CaptureDeviceInfo) audioCapDevList.elementAt(0);audioCapDevLoc = audioCapDevInfo.getLocator();} else {System.out.println("找不到音频采集设备");System.exit(0);}}public void initVideoCapDevLoc() {//这里可以填写其它的编码视频格式,具体请看VideoFormat类videoCapDevList = CaptureDeviceManager.getDeviceList(new VideoFormat(VideoFormat.YUV));if ((videoCapDevList.size() > 0)) {//或许有几个CaptureDevice,这里取第一个videoCapDevInfo = (CaptureDeviceInfo)videoCapDevList.elementAt(0);videoCapDevLoc = videoCapDevInfo.getLocator();} else {System.out.println("找不到视频采集设备");System.exit(0);}}public void initAudioPlayer() {try {audioPlayer = Manager.createPlayer(audioCapDevLoc);} catch (NoPlayerException ex) {} catch (IOException ex) {}//增加一个侦听器,侦听player状态的改变audioPlayer.addControllerListener(this);audioPlayer.realize();}public void initVideoPlayer() {try {videoPlayer = Manager.createPlayer(videoCapDevLoc);} catch (NoPlayerException ex) {} catch (IOException ex) {}//增加一个侦听器,侦听player状态的改变videoPlayer.addControllerListener(this);videoPlayer.realize();}public void stopAndClosePlayer(){audioPlayer.stop();audioPlayer.close();videoPlayer.stop();videoPlayer.close();}public synchronized void controllerUpdate(ControllerEvent ce) { Player p = (Player) ce.getSourceController();JFrame jFrame = new JFrame();Component com;if (p == null) {return;}//如果player的状态变为Realizedif (ce instanceof RealizeCompleteEvent) {if ((com = p.getControlPanelComponent()) != null) {jFrame.add(com, BorderLayout.SOUTH);}if ((com = p.getVisualComponent()) != null) {jFrame.add(com, BorderLayout.NORTH);}jFrame.setVisible(true);jFrame.pack();jFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); p.start();}}public static void main(String args[]) {V ideoPlayer cap = new VideoPlayer();cap.initAudioCapDevLoc();cap.initVideoCapDevLoc();cap.initAudioPlayer();cap.initVideoPlayer();try {Thread.currentThread().sleep(20000);//20秒后停止并关闭播放器 } catch (InterruptedException ex) {}cap.stopAndClosePlayer();}}。
javaplayer总结

javaplayer总结JavaPlayer 是一个流行的 Java 视频播放器,它支持多种视频格式和播放模式,可以让用户在 Java 应用程序中方便地播放视频。
下面是 JavaPlayer 总结:1. 评分最高的内容:JavaPlayer 的评分最高的内容是其优秀的性能和易用性。
JavaPlayer 可以播放各种类型的视频文件,包括 MKV、AVI、MOV、MP4 等,而且它具有简单易用的 API,使得开发人员可以轻松地集成视频播放功能到他们的 Java 应用程序中。
2. 拓展:JavaPlayer 还可以进行一些有趣的拓展。
例如,开发人员可以使用 JavaPlayer 的 API 创建自己的视频播放器,支持自定义视频格式、字幕、音频、进度条等。
此外,JavaPlayer 还支持在视频中嵌入广告,为开发人员提供更多的商业机会。
3. 支持多种格式:JavaPlayer 支持多种视频格式,包括 MKV、AVI、MOV、MP4 等。
这是因为 JavaPlayer 使用了开源的 FFmpeg 库来处理视频文件,允许开发人员轻松地将视频文件格式转换为 JavaPlayer 支持的格式。
4. 播放模式:JavaPlayer 支持多种播放模式,例如自动播放、暂停、快进、快退、音量调节等。
此外,JavaPlayer 还支持全屏模式和缩放模式,使得用户可以更加舒适地观看视频。
5. 性能:JavaPlayer 的性能非常好,因为它使用了优化的视频编解码器和解码器。
此外,JavaPlayer 还支持多线程处理,使得它可以同时处理多个视频流,提高视频播放的流畅度。
6. 支持 Web 浏览器:JavaPlayer 还可以在 Web 浏览器中运行,允许用户通过互联网观看视频。
这是因为 JavaPlayer 是一个跨平台的应用程序,可以在不同的操作系统和浏览器中运行。
JavaPlayer 是一个非常流行的 Java 视频播放器,它提供了许多有用的功能和易用性,使得开发人员可以轻松地集成视频播放功能到他们的 Java 应用程序中。
用JMF构建媒体播放器(1)

try { //准备一个要播放的视频文件的URL url = new URL("file:/d:/2.mpg"); } catch (MalformedURLException e) { e.printStackTrace(); } try { //通过调用Manager的createPlayer方法来创建一个Player的对象 //这个对象是媒体播放的核心控制对象 player = Manager.createPlayer(url); } catch (NoPlayerException e1) { e1.printStackTrace(); } catch (IOException e1) { e1.printStackTrace(); }
JMF(Java Media Frame ,rk)即Java媒体框架, 是sun公司推出的一个应用程序接口,可 以实现音频、视频信号的采集、存储、 和传输,支持压缩的媒体流及存储媒体 的同步、控制、处理和播放。JBuilder x是 Borland公司推出的可视化Java语言编程工 具,它提供了一个功能强大的集成开发 环境,可以方便地创建各种Java应用程和 小应用程
实例代码:
package com.bird.jmf; import java.awt.BorderLayout; import ponent; import java.awt.Dimension; import java.awt.Frame; import java.awt.Panel; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; import java.io.IOException; import .MalformedURLException; import .URL; import javax.media.CannotRealizeException; import javax.media.ControllerEvent; import javax.media.ControllerListener; import javax.media.EndOfMediaEvent; import javax.media.Manager; import javax.media.MediaLocator; import javax.media.NoPlayerException; import javax.media.Player; import javax.media.PrefetchCompleteEvent; import javax.media.RealizeCompleteEvent; import javax.media.Time;
5个免费Web视频及音频播放器

5个免费Web视频及音频播放器COMSHARP CMS写道"在线视频,在线音频越来越流行,即使你的网站成不了YouTube,也不妨在上面部署一些可以直接在线播放的视频,在Web上播放媒体,如今最可靠方案莫过于Flash。
本文介绍5个免费的,简单易用的,可以嵌入任意网页的 FLV视频与MP3音频播放器,它们都基于Flash技术(完整图文版)。
1. FlowplayerFlowplayer是一个开源(GPL3 许可)Web 视频播放器,可以将视频嵌入到你的网页。
2. JW FLV PlayerJW FLV Player是最流行,最灵活的 Web 媒体播放器,它可以播放 Flash 所支持的所有格式,包括 FLV, MP4, MP3, AAC, JPG, PNG 以及GIF。
还支持RTMP, HTTP 直播媒体流,支持多种播放列表格式。
还提供 JavaScript API。
3. Flash Video Player Plugin for WordPressFlash Video Player是一个 WordPress 插件,可以将视频快速嵌入你的 WordPress 博客,支持自定义皮肤,水印 Logo 等。
将该播放器放到WordPress 插件目录(wpcontent/plubins)并在系统管理中激活该插件即可使用。
详细资料...4. WP Audio PlayerWP Adudio Player是一个 WordPress 插件,可以直接在 Web 上播放 MP3 文件。
很容易使用和定制。
在非 WordPress 站点,该播放器也可以使用,这里有一个教程。
5. XSPF Web Music PlayerXSPF Web Music Player是一个基于 Flash 的 Web 程序,使用XSPF 播放列表格式播放 mp3 音频。
XSPF 是一个 XML 格式的播放列表格式,该程序是用 Actionscript 2 设计的。
ijkplayer基本使用 简书

ijkplayer基本使用简书(原创实用版)目录1.ijkplayer 简介2.ijkplayer 的基本使用方法3.在简书上使用 ijkplayer 的步骤正文【1.ijkplayer 简介】ijkplayer 是一款基于 Java 的开源视频播放器,其支持多种格式的视频文件播放,如 mp4、mkv、avi 等。
由于其开源特性,许多开发者将其集成到自己的应用程序中,以提供视频播放功能。
【2.ijkplayer 的基本使用方法】在使用 ijkplayer 时,需要先下载并导入其 SDK。
具体步骤如下:1.下载 ijkplayer SDK,可以通过其官网或 GitHub 仓库获取。
2.将下载的 SDK 导入到自己的 Java 项目中。
3.在项目中创建一个视频播放界面,并设置好视频播放控件的属性。
4.在代码中初始化 ijkplayer,并设置好相关参数,如视频文件路径、播放模式等。
5.调用 ijkplayer 的播放方法,开始播放视频。
【3.在简书上使用 ijkplayer 的步骤】由于简书是一个基于 Web 的写作平台,本身不支持本地程序的运行,因此需要通过一些第三方工具来实现在简书上使用 ijkplayer。
1.首先,你需要在你的本地机器上安装一个视频播放器,如 VLC、PotPlayer 等。
2.然后,下载并安装一个屏幕录像软件,如 OBS、屏幕录像专家等。
3.使用屏幕录像软件,将播放的视频录制下来。
4.将录制好的视频文件上传到你的简书文章中。
5.在简书文章中,使用 HTML 代码,嵌入一个视频播放器,如“<video>”标签,并设置好相关的属性。
6.调用浏览器的播放功能,观看视频。
第1页共1页。
javplayer用法

javplayer用法JavPlayer是一款用于播放和管理Jav(日本成人影片)的播放器软件。
它提供了一系列强大的功能和工具,方便用户浏览、组织和享受Jav 影片。
以下是JavPlayer的详细使用方法的介绍。
2. 导入Jav影片首次启动JavPlayer后,点击"文件"菜单中的"导入"选项。
在弹出的对话框中,选择Jav影片所在的文件夹,点击"确定"按钮。
JavPlayer会自动扫描并导入影片信息和封面。
3.浏览和导入影片后,可以通过影片列表进行浏览。
默认情况下,影片会按照导入时间进行排序。
用户可以点击列表头部的不同列进行排序,也可以使用框输入关键词进行。
通过右上角的筛选菜单可以按照不同的条件(如演员、片商、分类等)进行筛选。
4.播放影片在影片列表中选择一部影片,双击即可播放。
JavPlayer支持多种影片格式(如MP4、AVI、MKV等)的播放,并且可以自动加载相应的字幕文件。
在播放过程中,用户可以使用常见的播放控制按钮(如播放、暂停、快进、快退等)自由控制影片进度。
另外,JavPlayer还内置了一些快捷键(如空格键控制播放/暂停),方便用户进行操作。
5.影片信息和封面7.字幕设置对于带有字幕的影片,JavPlayer会自动加载相应的字幕文件。
用户可以在主界面的字幕区域中选择字幕文件,或者通过右键菜单中的"选择字幕"选项进行手动选择。
另外,用户还可以通过右键菜单中的"字幕设置"选项,自定义字幕的字体、颜色、大小等参数。
8.设置和偏好JavPlayer提供了一些设置选项,用户可以根据自己的喜好进行调整。
点击"工具"菜单中的"设置"选项,进入设置界面。
在设置界面中,用户可以选择影片信息的显示方式、调整字幕参数、设置播放器外观、设置默认影片文件夹等。
9.升级和更新以上是JavPlayer的基本使用方法的介绍。
java vlc 参数

java vlc 参数在Java中使用VLCJ库时,可以通过以下参数来配置VLC媒体播放器的行为:1.media:指定要播放的媒体文件的路径或URL。
2.width和height:指定播放器窗口的宽度和高度。
3.fullscreen:指定是否以全屏模式播放媒体。
4.autoplay:指定是否自动播放媒体。
5.loop:指定是否循环播放媒体。
6.volume:指定播放器的音量级别。
7.position:指定媒体播放的起始位置(以秒为单位)。
8.subtitle-file:指定要显示的字幕文件的路径。
9.audio-stereo-mode:指定音频的立体声模式。
10.其他VLC命令行参数:可以通过将其他VLC命令行参数传递给VLCJ来配置VLC的行为。
例如,可以使用--no-video-title-show参数来隐藏视频标题。
下面是一个使用VLCJ播放本地视频文件的示例代码:java复制代码importuk.co.caprica.vlcj.factory.MediaPlayerFactory;import uk.co.caprica.vlcj.player.base.MediaPlayer;importponent.EmbeddedMediaPlayerC omponent;import javax.swing.*;public class VLCPlayerExample {public static void main(String[] args) {// Create JFrame and set it as the application's main windowJFrame frame = new JFrame("VLCJ Example");frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE) ;frame.setSize(640, 480);// Create a media player component and add it to the frameEmbeddedMediaPlayerComponent mediaPlayerComponent = new EmbeddedMediaPlayerComponent();frame.setContentPane(mediaPlayerComponent);// Create a media player and set the media to be playedMediaPlayer mediaPlayer =mediaPlayerComponent.mediaPlayer();mediaPlayer.media().play("file:///path/to/your/video /file.mp4");// Display the frameframe.setVisible(true);}}在这个示例中,我们创建了一个JFrame窗口,并在其中添加了一个EmbeddedMediaPlayerComponent。
教你利用VC++和JAVA 设计视频播放器的详细步骤

利用VC++设计视频播放器一 需求分析制作一个视频播放器,能够播放多种格式的多媒体文件:CD 音乐曲目(.cda )、数字化波形声音(.WAV )、MIDI 文件(. mid, .rmi, .midi )、Windows Media 文件(. asf, .wm, .wma )、电影文件(. mpeg , . mpg , .mp3)、视频文件(.avi , . wmv )、音频文件(. wav , . snd , .au , .aif )等。
能够有用户自己选择文件,提供媒体播放控制:打开、播放、暂停、停止、全屏能控制播放音量的大小。
应用程序界面美观,使用方便,有完善的操控按钮或进度指示条等。
本课题对软硬件平台要求不高,操作系统可选择Windows2000/Window XP 。
在Visual C++ 6.0下用ActiveMovie 控件来实现。
本课程设计用例如图1所示,用户使用播放器,播放器完成媒体播放和音量调节两大功能。
<< use>> 用户图1 视频播放器UML 用例图二 对象分析由于播放器主要围绕实现以上两大功能,可以建立如表1所示的对象。
表1 播放器所建对象列表对象 属性 方法操作界面媒体文件、路径,媒体播放进度、状态,音量信息 显示媒体文件信息(文件名、路径) 媒体播放控制:打开文件、播放、暂停、停止、退出、全屏 显示播放信息(播放进度、状态)、控制音量 媒体播放媒体文件名、路径,控制命令 打开文件、播放、暂停、停止、退出、全屏 音量控制 音量调节 放大音量,减小音量音量控制和媒体播放对象对界面管理存在依赖关系,这两个对象要从界面获取控制指令,它们的属性要在界面上显示。
本播放器的类图如图2所示。
媒体播放 音量调节 播放器图2 播放器类图三 界面设计界面应满足以下要求:1. 界面首先要布置一系列按钮控件实现所有要实现的功能;2. 设置“播放进度条”来指示媒体文件的播放进度,还应该可以用鼠标拖动进度条来改变播放进度;3. 设置音量控制按钮(包括增大和减小);4. 界面应尽量美观;根据以上描述,程序运行时效果如图3所示。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
package com.bird.jmf;import java.awt.*;import java.awt.event.*;import java.io.*;import .*;import javax.swing.*;import javax.media.*;// 视频播放程序public class VideoPlayDemo extends JFrame {private Player player; // 播放器对象private Component visualMedia; // 视频显示组件private Component mediaControl; // 视频播放控制组件private Container container; // 主容器private File mediaFile; //媒体文件private URL fileURL; //媒体文件URL地址public VideoPlayDemo() { // 构造函数super("视频播放程序"); //调用父类构造函数container = getContentPane(); //得到窗口容器JToolBar toobar = new JToolBar(); //实例化工具栏JButton openFile = new JButton("打开媒体文件"); //实例化按钮toobar.add(openFile); //增加按钮到工具栏JButton openURL = new JButton("打开网络地址");toobar.add(openURL);container.add(toobar, BorderLayout.NORTH); //设置工具栏openFile.addActionListener(new ActionListener() { //打开文件按钮事件处理public void actionPerformed(ActionEvent event) {JFileChooser fileChooser = new JFileChooser(); //实例化文件选择器fileChooser.setFileSelectionMode(JFileChooser.FILES_ONLY);//设置文件打开模式为仅打开文件int result =fileChooser.showOpenDialog(VideoPlayDemo.this);//显示对话框if (result == JFileChooser.APPROVE_OPTION) { //得到用户行为mediaFile = fileChooser.getSelectedFile(); //得到选择的文件}if (mediaFile != null) {try {fileURL = mediaFile.toURL(); //得到文件的URL地址 } catch (MalformedURLException ex) {ex.printStackTrace(); //输出错误信息showMessage("打开错误"); //显示错误信息}startPlayer(fileURL.toString()); //开始播放打开的文件 }}});openURL.addActionListener(new ActionListener() { //打开URL按钮事件处理public void actionPerformed(ActionEvent event) {String addressName=JOptionPane.showInputDialog(VideoPlayDemo.this, "输入URL地址");if (addressName != null)startPlayer(addressName); //开始播放打开的URL}});Manager.setHint(Manager.LIGHTWEIGHT_RENDERER, Boolean.TRUE);setSize(300, 200); //设置窗口大小setVisible(true); //设置窗口为可视setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //关闭窗口时退出程序}//初始化播放器public void startPlayer(String mediaLocation) {if (player != null)//如果播放器非空则移去先前的播放器组件if (visualMedia != null)container.remove(visualMedia); //如果对象visualMedia非空则移去if (mediaControl != null) {container.remove(mediaControl); //如果对象mediaControl非空则移去player.close(); //关闭播放器}MediaLocator mediaLocator = new MediaLocator(mediaLocation); //媒体定位器if (mediaLocator == null) {showMessage("打开文件错误"); //显示错误信息return;}try {player = Manager.createPlayer(mediaLocator); //得到播放器实例 player.addControllerListener(new PlayerEventHandler()); //增加播放控制器player.realize();} catch (Exception ex) {ex.printStackTrace();showMessage("打开错误"); //显示错误信息}}//取得媒体组件//Download by public void getMediaComponents() {visualMedia = player.getVisualComponent(); //取得视频显示组件//如果对象visualMedia非空则加入到窗口内容窗格if (visualMedia != null) {container.add(visualMedia, BorderLayout.CENTER);pack();}mediaControl = player.getControlPanelComponent(); //取得播放控制组件//如果对象visualMedia非空则加入到窗口内容窗格if (mediaControl != null)container.add(mediaControl, BorderLayout.SOUTH);}//播放器事件处理private class PlayerEventHandler extends ControllerAdapter {public void realizeComplete(RealizeCompleteEvent realizeDoneEvent) {player.prefetch(); //预取媒体数据}//完成预取媒体数据后,开始播放媒体public void prefetchComplete(PrefetchCompleteEvent prefetchDoneEvent) {getMediaComponents();validate();player.start(); //开始播放媒体}//如果媒体播放完毕,重新设置媒体时间并停止媒体播放器public void endOfMedia(EndOfMediaEvent mediaEndEvent) { player.setMediaTime(new Time(0)); //重新设置媒体时间 player.stop(); // 停止媒体播放}}public void showMessage(String s) {JOptionPane.showMessageDialog(this, s); //显示提示信息}public static void main(String args[]) {new VideoPlayDemo();}}第二个源码事例import java.awt.BorderLayout;import ponent;import java.awt.FileDialog;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.awt.event.ItemEvent;import java.awt.event.ItemListener;import java.awt.event.WindowAdapter;import java.awt.event.WindowEvent;import javax.media.ControllerClosedEvent;import javax.media.ControllerEvent;import javax.media.ControllerListener;import javax.media.EndOfMediaEvent;import javax.media.Manager;import javax.media.MediaLocator;import javax.media.NoPlayerException;import javax.media.Player;import javax.media.PrefetchCompleteEvent;import javax.media.RealizeCompleteEvent;import javax.media.Time;import javax.swing.JCheckBoxMenuItem;import javax.swing.JFrame;import javax.swing.JMenu;import javax.swing.JMenuBar;import javax.swing.JMenuItem;import javax.swing.SwingUtilities;import javax.swing.UIManager;public class JMFMediaPlayer extends JFrame implements ActionListener, ControllerListener, ItemListener {// JMF的播放器Player player;// 播放器的视频组件和控制组件Component vedioComponent;Component controlComponent;// 标示是否是第一次打开播放器boolean first = true;// 标示是否需要循环boolean loop = false;// 文件当前目录String currentDirectory;// 构造方法public JMFMediaPlayer(String title) {super(title);addWindowListener(new WindowAdapter() {public void windowClosing(WindowEvent e){// 用户点击窗口系统菜单的关闭按钮// 调用dispose以执行windowCloseddispose();}public void windowClosed(WindowEvent e){if (player != null){// 关闭JMF播放器对象player.close();}System.exit(0);}});// 创建播放器的菜单JMenu fileMenu = new JMenu("文件");JMenuItem openMemuItem = new JMenuItem("打开"); openMemuItem.addActionListener(this);fileMenu.add(openMemuItem);// 添加一个分割条fileMenu.addSeparator();// 创建一个复选框菜单项JCheckBoxMenuItem loopMenuItem = new JCheckBoxMenuItem("循环", false); loopMenuItem.addItemListener(this);fileMenu.add(loopMenuItem);fileMenu.addSeparator();JMenuItem exitMemuItem = new JMenuItem("退出");exitMemuItem.addActionListener(this);fileMenu.add(exitMemuItem);JMenuBar menuBar = new JMenuBar();menuBar.add(fileMenu);this.setJMenuBar(menuBar);this.setSize(200, 200);try {// 设置界面的外观,为系统外观UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); SwingUtilities.updateComponentTreeUI(this);} catch (Exception e) {e.printStackTrace();}this.setVisible(true);}/*** 实现了ActionListener接口,处理组件的活动事件*/public void actionPerformed(ActionEvent e) {if (e.getActionCommand().equals("退出")) {// 调用dispose以便执行windowCloseddispose();return;}FileDialog fileDialog = new FileDialog(this, "打开媒体文件", FileDialog.LOAD); fileDialog.setDirectory(currentDirectory);fileDialog.setVisible(true);// 如果用户放弃选择文件,则返回if (fileDialog.getFile() == null){return;}currentDirectory = fileDialog.getDirectory();if (player != null){// 关闭已经存在JMF播放器对象player.close();}try {// 创建一个打开选择文件的播放器player = Manager.createPlayer(new MediaLocator("file:"+ fileDialog.getDirectory() + fileDialog.getFile()));} catch (java.io.IOException e2) {System.out.println(e2);return;} catch (NoPlayerException e2) {System.out.println("不能找到播放器.");return;}if (player == null) {System.out.println("无法创建播放器.");return;}first = false;this.setTitle(fileDialog.getFile());// 播放器的控制事件处理player.addControllerListener(this);// 预读文件内容player.prefetch();}/*** 实现ControllerListener接口的方法,处理播放器的控制事件*/public void controllerUpdate(ControllerEvent e) {// 调用player.close()时ControllerClosedEvent事件出现。