【问题标题】:I am working on videoview in android some specific videos are not working in video view我正在使用 android 中的 videoview 一些特定的视频在视频视图中不起作用
【发布时间】:2017-04-06 04:01:46
【问题描述】:

几乎每个视频都在我的视频视图中播放,但某些特定 URL 并非每次都在我的视频视图中播放,而它们在系统网络浏览器和移动网络浏览器中完美运行:

这是我的错误代码:

MediaPlayer: Couldn't open file on client side, trying server side
11-22 16:28:15.269 15589-15609/com.videodemo E/MediaPlayer: error (1, -2147483648)
11-22 16:28:15.269 15589-15589/com.videodemo E/MediaPlayer: Error (1,-2147483648)

【问题讨论】:

标签: android android-videoview universal android-video-player


【解决方案1】:
            MediaController mediacontroller = new MediaController(this);
            mediacontroller.setAnchorView(videoview);
            Uri video = Uri.parse("android.resource://your package name/" + R.raw.Your Video);
            videoview.setMediaController(mediacontroller);
            videoview.setVideoURI(video);
            }
            catch (Exception e)
            {
            Log.e("Error", e.getMessage());
            e.printStackTrace();
            }
            videoview.requestFocus();
            videoview.setOnPreparedListener(new MediaPlayer.OnPreparedListener()
            {
            public void onPrepared(MediaPlayer mp)
            {
            videoview.start();
            }
            });
       `

【讨论】:

    【解决方案2】:

    经过一番调查,我认为问题出在您的视频编解码器格式上。由于 android videoview 不支持现有的各种编解码器,因此您尝试播放的视频很可能不受 android-sdk 支持。

    虽然 android-sdk 可以给出一个特定的错误,以便我们可以 了解视频无法播放的原因。

    【讨论】:

      【解决方案3】:
      Please check with this.:---
      
              // Find your VideoView in your video_main.xml layout
          videoview = (VideoView) findViewById(R.id.VideoView);
          // Execute StreamVideo AsyncTask
      
          // Create a progressbar
          pDialog = new ProgressDialog(VideoViewActivity.this);
          // Set progressbar title
          pDialog.setTitle("Android Video Streaming Tutorial");
          // Set progressbar message
          pDialog.setMessage("Buffering...");
          pDialog.setIndeterminate(false);
          pDialog.setCancelable(false);
          // Show progressbar
          pDialog.show();
      
          try {
              // Start the MediaController
              MediaController mediacontroller = new MediaController(
                      VideoViewActivity.this);
              mediacontroller.setAnchorView(videoview);
              // Get the URL from String VideoURL
              Uri video = Uri.parse(VideoURL);
              videoview.setMediaController(mediacontroller);
              videoview.setVideoURI(video);
      
          } catch (Exception e) {
              Log.e("Error", e.getMessage());
              e.printStackTrace();
          }
      
          videoview.requestFocus();
          videoview.setOnPreparedListener(new OnPreparedListener() {
              // Close the progress bar and play the video
              public void onPrepared(MediaPlayer mp) {
                  pDialog.dismiss();
                  videoview.start();
              }
          });
      
      }
      

      【讨论】:

      • 仍然显示相同的错误:11-22 08:45:10.227 14039-14055/com.videoplayertask E/MediaPlayer: error (1, -2147483648) 11-22 08:45:10.330 14039- 14039/com.videoplayertask E/MediaPlayer:错误(1,-2147483648)
      猜你喜欢
      • 1970-01-01
      • 2011-06-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-07-26
      • 2016-10-21
      相关资源
      最近更新 更多