Articles of android video player

在旋转时更改MediaController位置

我正在尝试在方向更改时动态更改MediaController的锚点。 经过我的所有尝试后,这根本不能正常工作。 也许你可以指出我的错误。 简单来说: 肖像模式: weightSum = 1。 SurfaceView重量:0.4 MediaController和HorizontalScrollView权重:0.6 MediaController始终可见而不是隐藏 景观模式: SurfaceView重量:0.0(全屏) MediaControlls = View.Gone (我需要将其锚点更改为SurfaceView 。并popuponTouch。但是如何?) 代码: player.xml: 转换代码: @Override public void onConfigurationChanged(Configuration newConfig) { super.onConfigurationChanged(newConfig); if (Global.getScreenOrientation(this) == Configuration.ORIENTATION_LANDSCAPE) { //hide action bar getSupportActionBar().hide(); if (myGallery != null) { //hide HorizontalScrollView myGallery.setVisibility(View.GONE); } //make surface fullscreen surfaceWrapper.setLayoutParams(new LinearLayout.LayoutParams(FrameLayout.LayoutParams.MATCH_PARENT, FrameLayout.LayoutParams.MATCH_PARENT, 0f)); controlsWrapper.setLayoutParams(new LinearLayout.LayoutParams(FrameLayout.LayoutParams.MATCH_PARENT, […]

如何在android中创建video预览?

我的SD卡中有一个video文件。 我想在我的ImageView中展示这个video的预览。 请告诉我如何在Android中执行此操作。 谢谢你的帮助和时间。

调整video大小以适应VideoView

我正在使用AbsoluteLayout定位VideoView(我需要在特定位置的屏幕上的几个位置显示它)。 public void showVideo(RectF bounds, final String videoUrl) { AbsoluteLayout.LayoutParams params = (AbsoluteLayout.LayoutParams) video.getLayoutParams(); params.width = (int) bounds.width(); params.height = (int) bounds.height(); params.x = (int) bounds.left; params.y = (int) bounds.top; video.requestLayout(); video.setVisibility(View.VISIBLE); video.setFocusable(true); video.setFocusableInTouchMode(true); video.requestFocus(); File file = new File(videoUrl); video.setVideoPath(file.getAbsolutePath()); video.start(); } 但video没有调整到我指定的范围。 有小费吗? 另一个相关的问题是,如何通过VideoView使MediaController显示?

是否可以从android中的videourl生成缩略图

我正在制作video应用。 我正在从服务器链接流式传输video,我是否可以在不下载video的情况下从URL生成video缩略图。

Android – 打开和关闭屏幕时,覆盖在全屏video最后一帧上的视图无法正确重绘

我有一个以纵向模式播放的video。 在video结束时,我需要显示一些视图。 这到目前为止工作正常。 但是,我有一个问题,即在关闭屏幕,然后重新打开,然后解锁屏幕后返回活动时,video最后一帧的视图无法正确重绘。 我所观察到的是,当屏幕重新亮起并且我解锁时。 我的video和图像首先在全屏模式之外呈现(状态栏仍然显示),然后屏幕将进入全屏模式,将所有视图向上移动并导致伪像。 看起来这些视图在渲染后通过向全屏的过渡转移到视图边界之外。 我真的很难过如何防止这种情况发生。 这是github上的沙箱项目,以避免使这个post充满代码。 该项目的基本设置如下: 片段活动在其布局上有video视图和按钮视图。 然后它将一个片段添加到contentView容器中。 contentView在video播放结束前1秒内淡出。 一切顺利,问题在于打开和关闭屏幕电源后返回应用程序。 此外,有时video将完全退出,使视图位于黑色背景上。 提前感谢您提供的任何帮助。 这是当您关闭,重新打开和解锁屏幕时发生的伪像。 请注意,我必须拍一张照片。 在DDMS上,屏幕截图工具可以正确查看图像。

将实时video流式传输到Android

如何将实时video流式传输到Android(2.1及更高版本),我有两个链接: m3u8和f4m (据我所知,不支持f4m)。 从我在stackoverflow上看到的,有一种方法来流式传输m3u8与vitamio(但链接不起作用)。 还有其他方法来播放m3u8video吗? 也许我还可以使用其他格式? 谢谢。

VideoView内部片段导致黑屏轻弹

我们在Android API 4.0上运行了一个Android应用程序。 其中一个活动的布局将屏幕分为两部分。 在左侧,我们有一个带有一些按钮的静态部分。 在右侧,我们有一个FrameLayout,它将根据按下的按钮切换到相应的片段。 问题:右侧的一个片段包含VideoView。 当用户点击按钮显示该片段时,显示片段并且video立即开始播放:在渲染该片段时,整个屏幕以黑色闪烁,这非常烦人。 以下是VideoFragment类的一些代码: public class VideoFragment extends Fragment { public VideoView videoView; private ExternalVideo mVideo; private boolean mVideoExists; private String mDestination; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); mDestination = ApplicationParams.MEDIA_STORAGE_PATH + “videos/” + FilenameUtils.getBaseName(((DetailActivity)getActivity()).getProduct().getVideoUrl()) + “.” + FilenameUtils.getExtension(((DetailActivity) getActivity()).getProduct().getVideoUrl()); File file = new File(mDestination); mVideoExists = file.exists() && […]

Androidvideo播放器使用NDK,OpenGL ES和FFmpeg

好的,这就是我到目前为止所拥有的。 我在android上构建了FFmpeg并且能够很好地使用它。 在从java端传递所选文件名后,我已经能够将video加载到FFmpeg中。 为了节省性能,我在NDK中编写video播放器,而不是通过JNI将帧从FFmpeg传递到java。 我想将video中的帧发送到OpenGL表面。 我无法弄清楚如何获取每帧video并将其渲染到OpenGL表面上。 我一直坚持试图解决这个问题几个星期,现在没有运气。 希望有人可以指出我正确的方向。 谢谢!

Android ExoPlayer:它是否解决了Android Media Player的无缝/无缝播放问题

有没有人尝试使用ExoPlayer来实现这一目标? 我尝试在线查看但没有成功。 当我说无缝播放时,我指的是使用媒体播放器背靠背播放本地video的问题。 在完成第一个video播放后,在第二个video开始之前会有明显的1秒延迟。 希望这个问题有助于进一步理解这个问题。 如需参考,请查看以下问题: Android:MediaPlayer无间隙或无缝video播放

如何添加video播放和资源到android应用程序

我在onriod应用上遇到了问题。 我想在其中播放video,但我不想从interenet下载。 在其他情况下,我想要在设备上。 所以,人从android市场下载它,并可以播放video,而无需下载。 我已经想出了一些解决scheme,但没有一个是好的。 首先是将其添加到应用程序资源,但是你不能在那里有video。 第二个是在安装过程中添加或更好地创build文件夹(更多specyfic第一个onCreate方法),然后从应用程序复制那里video。 好吧,不是那么糟糕的select(你可以例如下载一次只有video从networking使用后台服务),但我不知道如何删除在卸载,因为你的应用程序不知道什么时候它是非受阻。 那么有没有人知道或有任何想法呢?