Android Compresser la Vidéo avant de la Télécharger vers le Serveur
Comment puis-je compresser un fichier vidéo dans Android avant de les télécharger sur un serveur distant? Je ne suis pas à la recherche de compresser le fichier, parce que je ne pense pas que beaucoup d'aide. Je veux compresser la vidéo et de le ré-encoder avec une baisse du débit ou de la résolution. L'idée est d'obtenir un standard 360х480, 30 FPS fichier vidéo à partir de chaque appareil. De cette façon, je peux éviter aux utilisateurs de meilleures caméras étant forcé de télécharger énormes fichiers vidéo.
Je sais iOS en fait assez simple à force de fichier vidéo résolutions. 10 deuxième vidéo enregistrée sur iPhone 4:
- élevé (1280х720) = ~14MB = ~11 mbit/s
- 640 (640х480) = ~4 MO = ~3.2 Mbit/s
- moyen (360х480) = ~1MO = ~820Kbit/s
- faible (144х192) = ~ses 208 ko = ~170Kbit/s
Est-il un moyen facile de le faire dans Android? Dois-je besoin de trouver une bibliothèque externe qui me permettra de ré-encoder le fichier vidéo, puis l'enregistrer sur la carte SD (ou écraser l'ancien fichier vidéo), puis télécharger ce fichier? Principalement à la recherche pour la direction générale ici et pas de code à copier et coller, bien que rien de est utile.
Qui n'a pas l'air utile. Je vais vérifier. Merci.
si vous trouvez la solution, alors s'il vous plaît mettez votre code source merci
OriginalL'auteur Kyle Clegg | 2012-07-03
Vous devez vous connecter pour publier un commentaire.
j'ai eu un problème similaire.où j'ai dû télécharger la vidéo en serveur ayant une taille à l'intérieur de 5.4 mb.bt en raison des différentes résolutions d'appareil de téléphones différents,il y avait un problème.ce sont les solutions que j'ai opté
mediaRecorder.setProfile(CamcorderProfile.get(CamcorderProfile.QUALITY_HIGH));
mediaRecorder.setVideoEncodingBitRate(690000 );
espérons que ces va vous aider à
OriginalL'auteur user1859771
Nous avons décidé d'enregistrer cette fonctionnalité pour une autre itération du projet. Nous avons opté pour avertir les utilisateurs de la grande charge utile de données (surtout si ils ne sont pas sur Wi-Fi). Je suis sûr que cela peut être fait, et le lien fourni par tabbykitten est le meilleur SI les post que j'ai trouvé sur ce sujet à cette date.
href="https://stackoverflow.com/questions/4725773/ffmpeg-on-android">stackoverflow.com/questions/4725773/ffmpeg-on-android
OriginalL'auteur Kyle Clegg
À partir d'Android 18 ans vous avez directement l'API android pour faire de l'Encodage Vidéo, mais si vous ciblez Moins que l'API de niveau 18 il pas droit devant
le lien ci-dessous ne l'encodage
https://github.com/google/grafika/blob/master/src/com/android/grafika/VideoEncoderCore.java
OriginalL'auteur surya
L'un de l'app que j'ai travaillé sur les précédents a cette exigence de l'envoi du fichier vidéo après la compression. Voici les étapes que j'ai suivi et qui a travaillé:
Compresser le fichier à l'aide d'un Silicompressor bibliothèque dans android. Exécutez la tâche de compression sur un thread d'arrière-plan.
Le format de fichier de sortie sera le type mime "vidéo/raw". Vous pouvez le vérifier dans le logcat. Donc, vous avez besoin d'ajouter le type mime dans votre serveur, de sorte que le format de fichier compressé téléchargé avec succès.
Après ceci est fait, en essayant d'envoyer le fichier compressé et cela devrait fonctionner.
Assurez-vous que le type mime du fichier à télécharger vers le serveur est acceptée par le serveur.
OriginalL'auteur VIVEK CHOUDHARY