Articles of videoview

旋转的手机在Android上重新启动video

嘿家伙,当我旋转我的手机,我的活动重新启动。 我有一个video播放video,我旋转和video重新启动。 现在我发现把这个添加到我在清单中的活动中 <activity android:name="Vforum" android:configChanges="orientation"></activity> 现在的问题是,video控制不会重新绘制,直到它们消失并返回,从而使从横向模式到纵向模式的真正的长控制或者从纵向到横向的控制变得非常短。 一旦他们消失,然后我点击让他们回来,那么他们正确的大小。 有没有更好的方法来做到这一点?

如何在ListView中播放video,如Instagram和Vine?

我是新的android开发,我想在一个列表视图中播放多个video。 目前,每个listview行项目是一个VideoView。 当我开始滚动时,这种方法没有起作用,因为VideoViews的行为exception。 我在这里研究了这里 ,发现VideoViews和TextureViews在ListViews和ScrollViews中不能很好地工作。 像vine和instagram这样的应用程序如何能够在列表视图中播放video? 任何帮助是极大的赞赏?

Android:无法将VideoView背景设置为透明

我有一个VideoView播放形状不是矩形的video(即圆angular圆柱体)。 videoview显示在具有背景色的LinearLayout中。 我希望videoview的背景是透明的,以便使圆柱体在背景颜色的顶部旋转而没有任何黑angular。 这是我得到的: 这就是我想要得到的: 当然,你可以问,为什么我不把video的背景颜色设置为与容器的背景颜色相匹配,但我想达到这个目的的原因是因为我的下一步是要有一个图像或模式作为容器的背景。 我的布局xml如下: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:background="#00aaff" android:orientation="vertical" > <VideoView android:id="@+id/surface_view" android:layout_width="254dp" android:layout_height="200px" /> </LinearLayout> 在尝试的时候,我试图为videoview设置一个背景,但是这样做导致完全遮蔽了videoview。 谢谢。

android内播放电影里面的扩展文件

我的应用程序试图向用户提供大量的内容,所以应用程序的大小远远大于50mb。 我们无法减less或删除部分内容,所以我们决定采用扩展方法。 我正在尝试按照这个教程: Android APK扩展文件 ,并成功地将扩展文件放入我的设备进行testing。 我可以在扩展中获得任何video文件的inputstream。 但是当我尝试为videoView设置VideoUri时,它开始崩溃。 这里是一些代码: ZipFileContentProvider contentProvider = new ZipFileContentProvider(); String contentPath = "content://"; File root = Environment.getExternalStorageDirectory(); String EXP_PATH = File.separator + "Android" + File.separator + "obb" + File.separator; String path = root.toString() + EXP_PATH + context.getPackageName() + File.separator + "main.1.com.c4e1.in2cricket.obb"; String zipFileName = contentPath + path + "/" + […]

MediaController定位 – 绑定到VideoView

关于如何定位MediaController已经有很多讨论,大多数答案都是使用setAnchorView 。 乍一看这种解决scheme似乎工作,但在我的情况下,它不。 根据这篇文章, setAnchorView只作为MediaController初始定位的参考,但实际上在上面创build一个新的浮动Window 。 所以我想要的是一个真正绑定到父View的MediaController (例如VideoView)。 例如,如果在ScrollView有一个LinearLayout ,并且必须向下滚动到连接了MediaController的VideoView ,那么MediaController应该连接到此VideoView以便MediaController随着VideoView一起滚动。 这里讨论了这个问题的另一个用例,在ViewPager使用MediaController 。 那么如何实现MediaController这种行为呢?

Android VideoView在特定时间后停止播放

我正在从Android中的这个url播放直播stream 到目前为止,我已经设法在videoView中播放video,问题是video在23秒后停止,所以我已经使用videoview方法setOnCompletionListener (…)来再次启动video,但是这提供了不好的体验对于观众来说,因为它每23秒停一次又重新开始,也会错过几帧。 所以我的问题是“如何在播放当前缓冲video的同时制作videoView缓冲器的下一部分video。 这是我的代码 public class TvActivity extends Activity { // Declare variables ProgressDialog pDialog; VideoView videoview; // Insert your Video URL String VideoURL = ""; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // Get the layout from video_main.xml setContentView(R.layout.videoview_main); // Find your VideoView in your video_main.xml layout videoview = (VideoView) findViewById(R.id.VideoView); // Execute […]

“表面已经释放”错误

我正在为在线video创build媒体播放器,但是当我尝试运行它时,出现此错误:“表面已经释放”。 这是我的代码: public class VideoSample1 extends Activity implements Callback, OnPreparedListener, OnCompletionListener, OnClickListener, OnSeekCompleteListener, android.view.SurfaceHolder.Callback { public String video_path = "My video URL"; private SurfaceView surfaceViewFrame; private MediaPlayer player; private SurfaceHolder holder; private Bundle extras; private static final String TAG = "log_tag"; private boolean b =false; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.customvideoview); extras = […]

Android 4.1 – 使用VideoView和MediaController的RTSP

开发一个简单的应用程序在Android 4.1上播放RTSPstream,但无法这样做 更新 如果我使用BigBuckBunny_115k.mov,我能够玩 Uri video = Uri.parse("rtsp://184.72.239.149/vod/mp4:BigBuckBunny_115k.mov"); 但我尝试了很多这里和这里 提到的RTSPstream,但没有工作:( ****问题:在手机上看不到任何stream,只有黑屏可见。一段时间后,出现一个对话框“无法播放此video”。 我尝试了很多RTSPstream,但结果相同,所以提到的所有stream都有问题吗? 或.sdp不正确parsing? 代码段中缺less什么东西? **** public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); VideoView videoView = (VideoView) findViewById(R.id.video); MediaController mediaController = new MediaController(this); mediaController.setAnchorView(videoView); mediaController.setMediaPlayer(videoView); Uri video = Uri.parse("rtsp://ss1c6.idc.mundu.tv:554/prf0/cid_29.sdp"); videoView.setMediaController(mediaController); videoView.setVideoURI(video); videoView.start(); } <VideoView android:id="@+id/video" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_alignParentBottom="true" android:layout_alignParentLeft="true" […]

Xamarin Android播放器 – 无法播放此video

我正在使用Android的VideoView在我的应用中播放embedded的video。 它在我的设备上工作正常,但我一直在Xamarin Android播放器中收到“无法播放此video”消息和黑屏。 相应的错误日志如下所示: Unable to play video [MediaPlayer] Error (1,-38) [VideoView] Error: 1,-38 我发现了一些关于这个错误的post,但是他们都没有帮我解决这个问题,我无法find这个状态码的正确描述。 我的C#代码如下所示: videoView = new VideoView (Context); base.SetNativeControl (videoView); videoView.SetOnErrorListener (new ErrorListener ()); string fileName = e.NewElement.FileSource; fileName = fileName.ToLower ().Substring (0, fileName.LastIndexOf (".")); int resourceID = Context.Resources.GetIdentifier (fileName, "raw", Context.PackageName); var fullPath = String.Format ("android.resource://{0}/{1}", Context.PackageName, resourceID); videoView.SetVideoPath (fullPath); videoView.RequestFocus […]

如何确定Android上的video宽度和高度

我有一个video文件,我想获得video的宽度和高度。 我不想玩,只是为了得到大小。 我试过使用MediaPlayer: MediaPlayer mp = new MediaPlayer(); mp.setDataSource(uriString); mp.prepare(); int width = mp.getVideoWidth(); int height = mp.getVideoHeight(); 但是它的宽度和高度返回0,因为VideoSizeChangedEvent还没有激发。 我怎样才能获得video的宽度和高度? UPD:我需要API版本7