J'ai un fichier qui se termine par .ts (par exemple, voici les 10 premiers Mo ). Je voudrais le convertir en un format de flux plus principal (par exemple, mp4, MPEG2-PS, etc.), de manière sans perte si possible (c'est-à-dire, le remuxage).
J'ai lu la Comment convertir des fichiers .ts en quelque chose d'utile? question. J'ai essayé avidemux
avec les paramètres "copy" pour les flux vidéo et audio et le format de conteneur "PS" pour MPEG. Cela a échoué avec le message d'erreur "Audio incompatible/Pour DVD, l'audio doit être au format 48 kHz MP2 (stéréo), AC3, DTS ou LPCM (stéréo)".
J'ai également essayé la commande CLI suggérée.
avconv -i 10MB.ts -vcodec copy -acodec copy 10MB.mpg
Le fichier de sortie a la bonne vidéo, mais pas de son, du moins lorsqu'il est lu avec VLC. Ceci est assez étonnant, car avconv
semble avoir correctement détecté le flux audio.
Input #0, mpegts, from '10MB.ts':
Duration: 00:00:06.36, start: 51523.824800, bitrate: 12563 kb/s
Program 37888
Stream #0.0[0x100]: Video: mpeg2video (Main), yuv420p, 1440x1080 [PAR 4:3 DAR 16:9], 20000 kb/s, 29.97 fps, 29.97 tbr, 90k tbn, 59.94 tbc
Stream #0.1[0x110]: Audio: aac, 0 channels, fltp, 144 kb/s
Stream #0.2[0x130]: Data: [6][0][0][0] / 0x0006
Stream #0.3[0x138]: Data: [6][0][0][0] / 0x0006
Stream #0.4[0x140]: Data: [13][0][0][0] / 0x000D
Stream #0.5[0x160]: Data: [13][0][0][0] / 0x000D
Stream #0.6[0x161]: Data: [13][0][0][0] / 0x000D
Stream #0.7[0x162]: Data: [13][0][0][0] / 0x000D
Stream #0.8[0x170]: Data: [13][0][0][0] / 0x000D
Stream #0.9[0x171]: Data: [13][0][0][0] / 0x000D
Stream #0.10[0x172]: Data: [13][0][0][0] / 0x000D
Output #0, mpeg, to '10MB.mpg':
Metadata:
encoder : Lavf54.20.4
Stream #0.0: Video: mpeg2video, yuv420p, 1440x1080 [PAR 4:3 DAR 16:9], q=2-31, 20000 kb/s, 90k tbn, 90k tbc
Stream mapping:
Stream #0:0 -> #0:0 (copy)
J'ai aussi essayé la commande CLI suggérée dans les commentaires de autre question .
avconv -i 10MB.ts -c:v copy -c:a libfaac 10MB.mp4
Encore une fois, pas de son dans le fichier de sortie.
EDIT: J'ai essayé VLC comme suggéré par @Daniel. C'était presque parfait. C'était rapide et convivial. Il me suffisait de cliquer sur "Convert/Save", d'ajouter le fichier d'entrée, de sélectionner le profil MP4, de configurer le codec vidéo et le codec audio sur "Conserver la piste audio/vidéo d'origine", de choisir un fichier de destination et de cliquer sur "Démarrer". La vidéo avait l'air parfaite, mais le son était légèrement corrompu, mais cela pouvait être causé par quelque chose d'assez exotique dans le flux audio de ma vidéo.
Ceci va copier le flux (re-mux) tous les flux:
ffmpeg -i input -map 0 -c copy output.mkv
L'option -map 0
est utilisée pour inclure tous les flux. Sinon, il utilisera le comportement par défaut sélection du flux qui ne résultera qu'en un seul flux sélectionné par type de flux. Étant donné que Matroska peut gérer la plupart des flux arbitraires, j'ai inclus -map 0
.
Ceci réencodera la vidéo au format H.264 et copiera le flux audio:
ffmpeg -i input.ts -c:v libx264 -c:a copy output.mp4
L'exemple suivant réencodera à la fois la vidéo et l'audio:
ffmpeg -i input.ts -c:v libx264 -c:a aac output.mp4
Exemple H.264 sans perte:
ffmpeg -i input.ts -c:v libx264 -crf 0 -c:a copy output.mp4
Les fichiers sans perte seront énormes.
Voir FFmpeg Wiki: H.264 pour plus d'informations.
VideoLAN (VLC - http://www.videolan.org/vlc/index.html ) convertira facilement n'importe quoi en n'importe quoi.
Donner un coup de feu. Il fonctionne sous Linux, Windows et Mac OS X et possède une interface très conviviale.