`
chilongxph
  • 浏览: 138273 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

Java将视频转换为flash

阅读更多
Java将视频转换为flash
为这个问题头痛了好久,今天看到这个帖子,感觉有点茅塞顿开,所以拿来转帖。换了新工作比较忙是一个原因。最近的工作是做一个素材管理的系统,其中有个要求做视频预览,将用户上传的视频转换并在网页上预览。在网页上看视频,现在大多数视频网站都是采用flv流媒体文件,用flash做的播放器播放,我们也采用了这种方式。流程大概主要:用户上传文件->后台转换文件成flv格式->flv播放器调用flv文件。
    转换视频、音频文件到flv格式可以使用mencoder或者ffmpeg,我们采用了mencoder,在linux上的安装参考这里,安装结束后记的设置环境变量:export LD_LIBRARY_PATH=/usr/local/lib:LD_LIBRARY_PATH
    java调用的话就是通过Process:

Process process = runtime.exec(cmd);

mencoder转换视频音频成flv命令:
mencoder 源文件 -o 目标文件.flv -of lavf    -lavfopts i_certify_that_my_video_stream_does_not_use_b_frames -oac mp3lame -lameopts abr:br=56 -ovc lavc -lavcopts vcodec=flv:vbitrate=400:mbd=2:mv0:trell:v4mv:cbp:last_pred=3:dia=4:cmp=6:vb_strategy=1 -vf scale=200:-3 -ofps 12 -srate 22050

取视频元信息命令(视频比特率、长宽等信息):
mplayer -identify 文件名 -ao null -vo null -frames 0

切割视频命令:
mencoder -ss 开始时间 -oac copy -ovc copy -endpos 终止时间 文件名 -o 目标文件名

    操作flv文件(给视频打上信息、切割之类)可以采用flvtool2。
   
    需要注意的是通过java调用的话,一定要处理标准输出和标准错误输出,不然进程会挂在那结束不了,可以开个线程取处理。在网页播放的话,可以考虑用这个播放器,具体参数看它的说明。最后一个问题,IE6的flash控件需要激活,这个问题的解决可以采用swfobject.js。
    有兴趣的老大们可以考虑自己搭个“土豆网”,说不定哪天拿了风投.....浮云

====================================================



视频网用户上传了视频有很多种格式如rm,wmv,mpg,avi等等
如何把这些格式的视频统一转换成flash 文件swf
用java如何实现 呢?

解决方案一:
java调用ffmpeg执行视频转换
ffmpeg.exe能解析的格式:(asx,asf,mpg,wmv,3gp,mp4,mov,avi,flv等)
对ffmpeg.exe无法解析的文件格式(wmv9,rm,rmvb等),
可以先用别的工具(mencoder)转换为avi(ffmpeg能解析的)格式;
mencoder.exe;drv43260.dll;pncrt.dll这3个文件是为文件格式(wmv9,rm,rmvb等)
转换为avi(ffmpeg能解析的)格式准备的;再把转换好的avi文件再用ffmpeg.exe转换成flv格式的视频文件。。。
缺点: 要装第三方东西,麻烦

解决方案二
用jmf。编程以前,你需要安装JMF。麻烦
而且 jmf 不支持 所有平台

解决方案三:
   ...........

方案一就最好了,虽然编程稍微麻烦一点,但是没有什么后患。类似方案二是在JVM进程内部进行解码和运算,会创建大量的Java对象,极易造成内存泄漏,到时候就麻烦了。
分享到:
评论

相关推荐

    java web ffmpeg memcoder视频转换为flash

    Java Web开发中,将视频转换为Flash格式是一个常见的需求,特别是在构建在线视频平台时。这里主要涉及的技术点包括FFmpeg、Memcoder以及如何在Java Web环境中整合这些工具。以下是对这些知识点的详细解释: 1. ...

    java视频格式转换

    Java视频格式转换是一种常见的技术需求,特别是在开发网页流媒体服务时,为了使视频能在不同的浏览器或设备上流畅播放,往往需要将多种视频格式转化为统一的标准,例如FLV(Flash Video)。FLV是Adobe Flash Player...

    java把各种视频格式转化为flv

    在本场景中,我们关注的是如何使用Java将各种视频格式转换为FLV(Flash Video)格式。FLV是Adobe Flash Player支持的一种流式视频格式,常见于在线视频分享平台。 要实现这个功能,我们通常会借助于外部工具或库,...

    Java实现视频网站的视频上传及视频播放功能编程资料

    本案例中,我们需要将上传的视频转码为FLV格式,以便于在Web端播放。 ##### 3. 数据库设计 为了存储视频信息,我们创建了一个名为`db_mediaplayer`的数据库,并在其中建立了`tb_media`表。该表包含以下字段: - `id...

    java网页视频播放

    例如,通过使用Java的多媒体库如JMF(Java Media Framework)或Xuggler,可以进行视频处理和格式转换。 在Eclipse环境中,开发者可能会使用Java Web框架,如Spring MVC,来构建服务器端逻辑。这些框架提供了一种...

    JAVA系统下的FLASH,FLV视频应用解决方案.doc )

    ### JAVA系统下的FLASH,FLV视频应用解决方案 #### 一、引言 随着互联网技术的发展,视频内容在网络上变得越来越流行。FLV(Flash Video)作为一种流媒体格式,因其基于Flash播放器而广受青睐。本文章旨在探讨如何在...

    Java视频转换FLV

    Java视频转换FLV是一项在IT领域中常见的任务,主要用于将不同格式的视频文件转换为FLV(Flash Video)格式,这种格式广泛应用于网络流媒体播放。在这个过程中,我们通常会用到开源工具FFmpeg,它是一个强大的命令行...

    视频格式转换 为flash

    在IT行业中,视频格式转换是一项常见的...总的来说,将不同视频格式转换为Flash格式涉及对多种视频格式的理解,选择合适的Java库,以及编写处理和转换的代码。这个过程既需要技术知识,也需考虑实际应用的场景和需求。

    java调用ffmpeg转换视频格式为flv

    Java调用FFmpeg转换视频格式为FLV是一个常见的任务,特别是在开发媒体处理应用程序时。FFmpeg是一个强大的跨平台命令行工具,用于处理音频和视频文件,包括转换、编码、解码、分割等操作。在Java中,我们通常通过...

    java程序实现print2flash转swf

    本文将深入探讨如何使用Java程序实现`print2flash`来将内容转换为SWF文件,并结合`jacob`库进行更高效的操作。 首先,`print2flash`是一个实用工具,允许用户将打印输出转换为Adobe Flash(SWF)文件。在Java中,...

    javaCV将socket获取的视频流推到流媒体(RTMP)服务器jar

    3. **RTMP (Real-Time Messaging Protocol)**: RTMP是一种专为音频、视频数据实时传输而设计的协议,常用于将视频流推送至流媒体服务器,如Adobe Flash Media Server或开源的Nginx-RTMP模块。JavaCV可以实现将接收到...

    纯java代码实现各种视频转flv格式,支持在线播放。

    本文将深入探讨如何使用纯Java代码实现视频转码至FLV(Flash Video)格式,并支持在线播放,而不依赖任何第三方库,从而确保高效、快速的转码过程。 首先,我们需要了解FLV格式。FLV是一种流行的网络流媒体格式,...

    pdf2swf pdf转化为flash的软件 支持Java等程序调用

    pdf2swf pdf转化为flash的软件 支持Java等程序调用

    JAVA 视频转码FLV

    将视频转码为FLV格式,可以确保在多种浏览器和设备上顺畅播放。在JAVA中,通过FFmpeg库可以实现这一转换,包括设置编码参数如比特率、分辨率、帧率等。 **2. 支持视频截图** 视频截图是指从视频中提取特定帧作为...

    java源码转换FLV

    总结来说,这个Java源码转换FLV的项目是利用Java编程语言和相关库实现的视频转换工具,它可以将源视频文件转化为适用于网络播放的FLV格式。理解和使用这个项目,你需要熟悉Java编程、视频处理概念以及可能涉及的第三...

    java PDF转换flash

    Java PDF转换Flash技术是将PDF文档转换为SWF(ShockWave Flash)文件的过程,以便在Web上以交互式和动态的方式展示文档。这种技术在在线文档预览、教育材料演示和电子阅读等领域广泛应用,比如百度文库就采用了类似...

    ffmpeg 视频转换工具,java 版本,适合多种视频转化

    在Java中使用FFmpeg进行视频转换,首先需要将FFmpeg命令行工具集成到项目中,通常通过添加对应的依赖库(如:ffmpeg-java或javacpp-presets)来实现。然后,可以编写Java代码调用FFmpeg提供的API,指定输入视频文件...

    Java实现视频网址的视频上传

    - **转码**:利用FFmpeg将上传的视频文件转换为FLV格式,以满足Flash Player的播放需求。 - **截图**:抽取视频的关键帧作为缩略图,便于用户快速了解视频内容。 ##### 3.3 数据库交互 - **实体类设计**:定义`...

    Java上传视频和转码的编程思路

    - 在Java中调用FFmpeg进行转码,需要使用命令行接口或者Java的FFmpeg库(如JAVE、Xuggler等)来执行转换操作,将上传的视频转码为FLV格式,因为Flash播放器支持此格式。 4. **视频关键帧抽图**: - 从视频中抽取...

    print2flash.exejava例子

    在提供的描述中,我们可以看到一个Java程序的例子,它利用`print2flash.exe`将内容转换为SWF。以下是这个过程的关键知识点: 1. **Java与外部程序交互**:Java可以调用操作系统上的外部程序,这通常通过`Runtime....

Global site tag (gtag.js) - Google Analytics