У меня есть эта проблема в моем videoView при потоковой передаче видео с URL
Я хочу транслировать ссылки rstp в Videoview, на экране появляется сообщение об ошибке «Не удается воспроизвести это видео», а в logcat
Медиаплеер QCMediaPlayer НЕ присутствует
04-09 21:45:11.855 326-1960 /? E / NuPlayer: NuPlayer Не удалось создать экземпляр прокси-клиента
04-09 21: 45: 11.865 326-4215 /? E / IMediaHTTPConnection: запрошено 65536, получено 4294967295
04-09 21: 45: 11.865 326-4215 /? E / NuCachedSource2: источник вернул ошибку -1008, осталось 10 попыток
Ниже приведен мой код, я перепробовал много ссылок, и я могу его скачать и просмотреть.
public class FragmentSports extends FragmentChannels {
private String videoURL = "http://www.androidbegin.com/tutorial/AndroidCommercial.3gp";
// Declare some variables
private ProgressDialog pDialog;
VideoView videoview;
public static FragmentSports newInstance() {
FragmentSports fragment = new FragmentSports();
return fragment;
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState){
View v = inflater.inflate(R.layout.sports_fragment, container, false);
VideoView videoView = v.findViewById(R.id.vv_live);
videoview = (VideoView) v.findViewById(R.id.vv_live);
// Execute StreamVideo AsyncTask
new StreamVideo().execute();
return v;
}
private class StreamVideo extends AsyncTask<Void, Void, Void> {
@Override
protected void onPreExecute() {
super.onPreExecute();
// Create a progressbar
pDialog = new ProgressDialog(getActivity());
// Set progressbar title
pDialog.setTitle("Android Video Streaming Tutorial");
// Set progressbar message
pDialog.setMessage("Buffering...");
pDialog.setIndeterminate(false);
// Show progressbar
pDialog.show();
}
@Override
protected Void doInBackground(Void... params) {
// TODO Auto-generated method stub
return null;
}
@Override
protected void onPostExecute(Void args) {
try {
// Start the MediaController
MediaController mediacontroller = new MediaController(
getContext());
mediacontroller.setAnchorView(videoview);
// Get the URL from String VideoURL
Uri video = Uri.parse(videoURL);
videoview.setMediaController(mediacontroller);
videoview.setVideoURI(video);
videoview.requestFocus();
videoview.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
// Close the progress bar and play the video
public void onPrepared(MediaPlayer mp) {
pDialog.dismiss();
videoview.start();
}
});
} catch (Exception e) {
pDialog.dismiss();
Log.e("Error", e.getMessage());
e.printStackTrace();
}
}
}
}