2011-11-04 43 views
8

Tôi đã tìm kiếm tất cả các giải pháp cho điều này (bao gồm SO), tuy nhiên vẫn chưa tìm thấy giải pháp.Rất tiếc, không thể phát video này - phát trực tuyến mp4 sang android

Tôi cần phát lại video đơn giản trong ứng dụng của mình. Nó hơi đơn giản hơn một cửa sổ đơn giản với một video. Đơn giản, tôi có hai bố trí trên màn hình của tôi, một trong đó có chứa một số công cụ khác và một là để có cửa sổ video. Ngoài ra còn có một nút để chuyển đổi giữa hai người. Điều này tất cả các công trình tốt, sau khi tôi đã tìm ra rằng các videoview không thể có mặt trên một cái nhìn với khả năng hiển thị 'đi' - do đó tôi thêm/loại bỏ nó vào/từ bố trí container khi cần thiết.

Tuy nhiên, tôi gặp sự cố với quá trình phát lại video thực tế. Khi tôi cố gắng kích hoạt nó, tôi nhận được lỗi đáng sợ Sorry, this video cannot be played. Một trong những câu hỏi ở đây là SO thảo luận về các định dạng video (Android -- Can't play any videos (mp4/mov/3gp/etc.)?) - tuy nhiên tôi đã có định dạng đúng, với chiều rộng 320px và mọi thứ khác. Một trong những câu trả lời trên chuỗi đó đề cập đến các video từ here "chắc chắn hoạt động". Tôi đã thử một cặp vợ chồng từ đó - nhưng tôi có một con thú khác: Sorry, this video is not valid for streaming to this device.

Xin lưu ý rằng tôi đang thử nghiệm trên thiết bị thực, vì phát lại video không hoạt động trong trình mô phỏng. Cũng lưu ý rằng giải pháp phải hoạt động trên Android 1.6 trở lên (yêu cầu của khách hàng). Thiết bị tôi đang thử nghiệm là LG GT540 Optimus với Android 2.1 (hiện tại tôi không có bất kỳ thiết bị nào khác có sẵn).

Từ những gì tôi đã tìm ra, nếu tôi không sử dụng qt-faststart trên các đoạn video, tôi nhận được lỗi Sorry, this video is not valid for streaming to this device. Nếu tôi sử dụng qt-faststart, sau đó tôi nhận được Sorry, this video cannot be played.

Dưới đây là mã của tôi cho việc trình chiếu:

VideoViewer videoPlayer = new VideoViewer(this); 
MediaController mediaController = new MediaController(this); 
mediaController.setAnchorView(videoPlayer); 
videoPlayer.setMediaController(mediaController); 
videoPlayer.setVideoURI(Uri.parse(object.getVideoURL())); 
LinearLayout container = (LinearLayout)ObjectInfo.this.findViewById(R.id.VideoContainer); 
container.setVisibility(VISIBLE); 
container.addView(videoPlayer, new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT)); 
videoPlayer.requestFocus(); 
videoPlayer.start(); 

Bây giờ, video tôi đang cố gắng để chơi là phải tiến-download từ HTTP: object.getVideoURL() lợi nhuận http://www.ooklnet.com/files/381/381489/video.mp4

ai có thể vui lòng giúp tôi loại này ngoài? Đây là điều cuối cùng tôi cần phải hoàn thành trước khi toàn bộ ứng dụng đã sẵn sàng.

Rất cám ơn!

Chỉnh sửa: Tôi đã thử sử dụng MediaPlayer - nhưng thậm chí còn có kết quả tồi tệ hơn so với VideoView, vì vậy hãy quay lại VideoView. Bây giờ, trong giả lập, tôi nhận được một màn hình màu đen với điều khiển lơ lửng trên nó và âm thanh của video đang chơi tốt, cũng là tiến độ được điều chỉnh khi phát lại tiếp tục. Tuy nhiên trên thiết bị thực tế của tôi, tôi vẫn gặp phải lỗi Sorry, this video cannot be played.

+0

Làm cách nào để thiết lập URL của bạn từ máy chủ để phát video ?? Tôi cần URL của tôi để phát video của tôi giống như của bạn nhưng nó không hoạt động :(Nếu tôi sử dụng video của bạn trong trình duyệt hoặc ứng dụng Android, nó hoạt động hoàn hảo.Nếu tôi thử URL của tôi (http://XXX.XXX.XXX.XXX/srv/ProductVideos/[email protected]/s/s_7s.MP4) nó không hoạt động –

Trả lời

6

Đã xảy ra sự cố với định dạng của video (cụ thể là các thông số tôi đã sử dụng với ffmpeg để tạo video MP4). Tôi đảm bảo rằng các video là baseline H.264 - và mọi thứ hoạt động bình thường. Xem this question để biết thêm chi tiết.

+0

tôi có thể có url mà bạn đang chơi không? Tôi đang mắc kẹt trong một vấn đề tương tự và không thể phát video trong Samsung Galaxy 551 của tôi có hệ điều hành 2.2. Vui lòng cho tôi liên kết url của bạn để thử nghiệm. Cảm ơn –

+0

@ Rashmi.B Đây là một ứng dụng phát hoàn toàn tốt trên điện thoại LG của tôi: http://www.ooklnet.com/files/368/368007/video.mp4 –

+0

@Aleks G, tôi đang cố gắng phát url .move được chuyển hướng đến url .3gp hoặc đôi khi .mp4 URL. Galaxy s v2.3.x chơi url .mov nhưng đối với bất kỳ thiết bị nào khác (4.01, 2.2 hoặc bất kỳ thiết bị nào khác ngoại trừ 2.3.x), trước hết tôi phải nhận url chuyển hướng rtsp để phát video. Url rtsp được chuyển hướng cũng phát ngẫu nhiên. Bạn có thể đề xuất một số giải pháp? cũng làm thế nào để video cơ sở phù hợp với khả năng tương thích của điện thoại di động? –

1

Có thể bạn cần thay đổi cách thiết lập MediaPlayer. Tôi chỉ cần cắm url của video mẫu của bạn vào ví dụ apidemos và nó hoạt động tốt.

Xem: http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/media/MediaPlayerDemo_Video.html

Hy vọng rằng sẽ giúp.

+0

Ví dụ này sử dụng MediaPlayer, trong khi tôi đang cố gắng sử dụng VideoView . Tôi đoán, tôi sẽ thử sử dụng MediaPlayer thay vào đó và xem những gì xảy ra sau đó. –

Các vấn đề liên quan