标签: video-processing

用于在java中操纵视频的库/教程

我需要在Java应用程序中进行一些简单的视频编辑,但我发现的框架(JMFFMJ)看起来很陈旧,到目前为止我还没有找到任何可以实际编辑视频的证据.我需要的操作类型是:裁剪,编辑部分和提取剪辑.

我之前从未使用过任何实际视频,所以我可能只是误解了FMJ/JMF所做的事情,但我仍然担心这些工具最近发布的时代.

人们用什么做这种事情?我应该使用哪些关键字来获得更相关的结果?

(视频的具体格式对我来说并不是特别重要 - 任何常见的东西都很好.)

java video-processing

11
推荐指数
2
解决办法
3万
查看次数

11
推荐指数
3
解决办法
4万
查看次数

视频文件转换/转码Google App Engine

我想用一个简单的任务来启动一个云计算项目:

  1. 接收上传的视频文件
  2. 做一些转码/转换它们
  3. 允许用户下载/流式传输生成的文件

我在想ffmpeg作为一个集成在一个外部命令行工具Java/Google App engine Application.由于很难确定框架的局限性,有人可以告诉我这是否可行?

先感谢您!

java google-app-engine ffmpeg video-processing blobstore

11
推荐指数
1
解决办法
3332
查看次数

Android 6.0 - 使用PlaybackParams设置视频速度

我有关于如何实现PlaybackParams来设置视频速度的问题:

public PlaybackParams getPlaybackParams ()

在API级别23
中添加使用PlaybackParams获取播放速率.

PlaybackParams setSpeed (float speed) //Sets the speed factor.
Run Code Online (Sandbox Code Playgroud)

返回:
正在使用的播放速率.
引发IllegalStateException:
如果内部同步引擎或音频轨道尚未初始化.

这是我的代码:

mVideoView.setOnPreparedListener(new MediaPlayer.OnPreparedListener() 
{
    @Override
    public void onPrepared(MediaPlayer mp) 
    {
        mp.setPlaybackParams(new PlaybackParams().setSpeed(1.f));

        if (mPlaybackState == PlaybackState.PLAYING) { mVideoView.start();}
    }
});
Run Code Online (Sandbox Code Playgroud)

java video android video-processing android-mediaplayer

11
推荐指数
1
解决办法
1647
查看次数

在cvSetCaptureProperty中使用CV_CAP_PROP_POS_FRAMES获取单个帧

我试图通过设置CV_CAP_PROP_POS_FRAMES属性跳转到特定的框架,然后像这样读取框架:

cvSetCaptureProperty( input_video, CV_CAP_PROP_POS_FRAMES, current_frame );
frame = cvQueryFrame( input_video );
Run Code Online (Sandbox Code Playgroud)

我面临的问题是,OpenCV 2.1为12个连续值返回相同的帧,current_frame而我想读取每个单独的帧,而不仅仅是关键帧.谁能告诉我有什么问题?


我做了一些研究,发现问题是由解压缩算法引起的.

类似MPEG的算法(包括HD等)不会分别压缩每个帧,而是不时地保存关键帧,然后只保存最后一帧和后续帧之间的差异.

您报告的问题是由于,当您选择一个帧时,解码器(可能是ffmpeg)会自动前进到下一个关键帧.

那么,有没有办法解决这个问题呢?我不只想要关键帧,而是每个帧.

c opencv video-processing

10
推荐指数
2
解决办法
1万
查看次数

在iPhone上录制的Android上播放视频

我正在为iOS和Android编写基于视频的社交应用程序(WinPhone正在等待中).我在iPhone上使用AVFoundation框架以mov格式录制视频并将其上传到服务器.它可以在iPhone客户端上下载和播放.但是在Android设备上,下载的视频无法播放,因为它的格式在Android上不受支持.支持多个移动设备平台的视频录制和播放的最佳解决方案是什么?

iphone android video-capture video-processing avfoundation

10
推荐指数
1
解决办法
1万
查看次数

从视频中获取图像

我正在尝试编写一个应用程序,它可以访问连接到PC的摄像机,录制视频并从视频中获取图像.我使用AForge.NET库来访问摄像头:http://www.aforgenet.com/framework/

我不知道名为AForge.Video.NewFrameEventHandler的事件是如何工作的.在此代码中,事件将null返回到位图而不是视频中的新帧,或者不调用该事件.我希望每次都能从视频中获取帧到一个图片框,以制作类似于视频流的内容,点击停止按钮后,我希望最后一个图像保持显示在图片框中.有谁知道怎么样?为什么我的代码不起作用?

码:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using AForge.Video.DirectShow;
using System.Drawing;
using AForge.Video;

namespace CameraDevice
{
    public class CameraImaging
    {
        // enumerate video devices
        public FilterInfoCollection videoDevices = new FilterInfoCollection(FilterCategory.VideoInputDevice );
        //camera
        public VideoCaptureDevice videoSource;
        //screen shot
        public Bitmap bitmap;
        public CameraImaging()
        {
            // create video source
            VideoCaptureDevice videoSource = new VideoCaptureDevice(videoDevices[0].MonikerString );
            // set NewFrame event handler
            videoSource.NewFrame += new NewFrameEventHandler( video_NewFrame );
        }
        public void StartVideo(VideoCaptureDevice videoSource)
        {
            // start the video …
Run Code Online (Sandbox Code Playgroud)

.net c# video-processing aforge

10
推荐指数
1
解决办法
1万
查看次数

使用gstreamer解码mp4视频

我想在Gstreamer中播放mp4视频,但是我找不到x264dec的错误.我写了这个管道

  gst-launch filesrc \
     location=/media/thesis/Gstreamer/pub_Irma.mp4 \
   ! qtdemux name=demux demux. ! queue ! faad \
   ! audioconvert ! audioresample ! autoaudiosink demuxer. \
   ! queue ! x264dec ! ffmpegcolorspace ! autovideosink 
Run Code Online (Sandbox Code Playgroud)

在此步骤之后,我的目标是生成mp4视频解码的执行跟踪.我不知道x264dec的问题在哪里.

video-processing decoding gstreamer h.264 x264

10
推荐指数
3
解决办法
6万
查看次数

如何使用硬件视频缩放器?

现代图形卡具有硬件视频缩放器,例如作为AMD Avivo,NVIDIA PureVideo或Intel ClearVideo的一部分.例如,AMD的Avivo白皮书说:

"图像输出缩放器支持多达6个垂直滤波器抽头和多达10个水平滤波器抽头.这些缩放器是高度可编程的高精度多相缩放器;它们适用于几乎任何比例的放大,或最多4个缩小:1".

问题: 如何从Windows程序中使用视频缩放器硬件?

假设已经存在解码的视频帧,例如在a中IDirect3DSurface9,并且目标是使用硬件缩放器在屏幕上显示该视频帧.我想使用像Media Foundation或DirectShow这样的Windows API,而不是使用特定于供应商的API.我主要兴趣倍增通过一个相当大的因素左右1.5-3x.

第二个问题是,如何控制视频缩放器硬件参数?(例如,上述多相滤波器中的滤波器系数)

编辑:赏金开始了.请提供在视频卡中使用视频缩放器硬件的任何方式的示例(这可能是特定于供应商的,或使用任何版本的DirectX/DirectShow/Media Foundation API).

编辑:更新:使用视频缩放器硬件的程序的一些示例:WinDVD,PowerDVD,madVR.我想知道如何完成他们的工作,即使用GPU的内置视频硬件缩放器,而不是使用D3D着色器和纹理采样器实现的缩放器.

windows directx video image video-processing

10
推荐指数
1
解决办法
3745
查看次数

HTML5视频的字节范围请求(伪流)如何工作?

如果您为接受范围请求的服务器上托管的视频播放HTML5视频,那么当您尝试提前查看视频的非缓冲部分时,您会从网络流量中注意到浏览器发出一个字节范围请求.我假设浏览器通过提前知道总视频大小并假设一个恒定的比特率来计算字节(如果你在进度条中点击一半,那么它将在中途点请求字节).但特别是如果视频是可变比特率的,那么它所请求的字节似乎不太可能真正对应于用户点击的时间点,并且该字节可能落在帧的中间.

一旦它开始在某个任意字节读取,浏览器如何知道下一帧的开头是什么?

video video-processing video-streaming html5-video

10
推荐指数
1
解决办法
8690
查看次数