2012-02-29 27 views
6

Tôi đang làm việc trên một ứng dụng cần mã hóa các tệp video đang hoạt động khá tốt. Nhưng phương pháp tôi đang sử dụng để giải mã sẽ trả về video như trong mảng Byte. Vì vậy, có anyway mà tôi có thể chơi video bằng cách sử dụng mảng mà không cần tạo một tập tin mới.Cách phát video từ mảng Byte?

Phương pháp của tôi giải mã:

private static byte[] decrypt(byte[] raw, byte[] encrypted) throws EncrypterException { 
SecretKeySpec skeySpec = new SecretKeySpec(raw, "AES"); 
try { 
    final Cipher cipher = Cipher.getInstance("AES"); 
    cipher.init(Cipher.DECRYPT_MODE, skeySpec); 

    return cipher.doFinal(encrypted); 

} catch (Exception e) { 
    throw new EncrypterException(e); 
} 
} 

Xin hãy giúp tôi, tôi đang mắc kẹt ở đây?

Trả lời

1

Bạn thường phát video như thế nào? Bạn gửi InputStrem bản sao cho trình phát. Vì vậy, bạn ByteArrayInputStream kết thúc tốt mảng byte của bạn và gửi cho trình phát.

+0

ok nhưng làm cách nào để sử dụng ByteArrayInputStream với VideoView.? – Navdroid

+0

@Navdroid: Một ByteArrayInputStream là một InputStream. –

+1

Nhưng tôi muốn sử dụng nó VideoView .. Làm thế nào tôi có thể sử dụng nó mà không cần tạo một tập tin mới – Navdroid

0

Bạn không nên nạp VideoView với tệp tĩnh mà có luồng. Cách tạo luồng này? Tham khảo Android Supported Media Formats. Đơn giản nhất có thể là máy chủ http địa phương. LocalSingleHttpServer là một ví dụ về một thành phần thư viện thực hiện loại giải pháp này.

1

Sau nhiều tìm kiếm, câu trả lời này có thể là tổng hợp. Tất cả các khoản tín dụng nên đi các chủ sở hữu giải pháp.

VideoView chỉ chấp nhận URL hoặc Tệp, chúng tôi có hai giải pháp;

Giải pháp 1; Tạo tệp tạm thời bằng luồng và cung cấp tệp đó cho videoView.

Ref; https://stackoverflow.com/a/21549067/1847645

Giải pháp 2; Tạo máy chủ phương tiện trên Hệ thống Địa phương Android và cung cấp luồng tới máy chủ phương tiện nơi videoView được chuyển hướng đến máy chủ cục bộ để phát trực tuyến.

Ref; https://stackoverflow.com/a/9096241/1847645

Ref khác; Điều này rất hữu ích, nhờ vào sự thoải mái; https://stackoverflow.com/a/15668803/1847645

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