Mam plik z rozszerzeniem .ts (np. Tutaj jest pierwsze 10 MB ). Chciałbym przekonwertować go na bardziej główny format strumienia (np. Mp4, MPEG2-PS ...), w miarę możliwości bezstratnie (tj. Remuxing).
Przeczytałem Jak przekonwertować pliki .ts na coś przydatnego? pytanie. Próbowałem avidemux
z ustawieniami „kopiuj” dla strumieni wideo i audio oraz formatem kontenera „PS” dla MPEG. Nie powiodło się to z komunikatem o błędzie „Niezgodny dźwięk / DVD, dźwięk musi być 48 kHz MP2 (stereo), AC3, DTS lub LPCM (stereo)”.
Próbowałem także sugerowanego polecenia CLI.
avconv -i 10MB.ts -vcodec copy -acodec copy 10MB.mpg
Plik wyjściowy ma właściwe wideo, ale bez dźwięku, przynajmniej podczas odtwarzania z VLC. Jest to dość zagadkowe, ponieważ avconv
wydaje się, że poprawnie wykrył strumień 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)
Próbowałem także polecenia CLI sugerowanego w komentarzach do innego pytania .
avconv -i 10MB.ts -c:v copy -c:a libfaac 10MB.mp4
Ponownie brak dźwięku w pliku wyjściowym.
EDYCJA: Próbowałem VLC zgodnie z sugestią @Daniel. To było prawie idealne. To było szybkie i przyjazne dla użytkownika. Musiałem tylko kliknąć opcję „Konwertuj / zapisz”, dodaj plik wejściowy, wybierz profil MP4, skonfiguruj kodek wideo i kodek audio do „Zachowaj oryginalną ścieżkę wideo / audio”, wybierz plik docelowy i kliknij „Start”. Film wyglądał idealnie, ale dźwięk był w jakiś sposób nieco uszkodzony, ale może to być spowodowane czymś egzotycznym w strumieniu audio mojego wideo.
ffmpeg
.Odpowiedzi:
Matroska (MKV)
Spowoduje to skopiowanie (ponowne zmiksowanie) wszystkich strumieni:
-map 0
Opcja służy do obejmują wszystkie strumienie. W przeciwnym razie użyje domyślnego zachowania wyboru strumienia, co spowoduje, że zostanie wybrany tylko jeden strumień na typ strumienia. Ponieważ Matroska może obsłużyć większość dowolnych strumieni, które zawarłem-map 0
.MP4
Spowoduje to skopiowanie (ponowne zmiksowanie) wszystkich strumieni:
Spowoduje to ponowne zakodowanie wideo do H.264 i przesyłanie strumieniowe dźwięku:
Następny przykład przekoduje zarówno wideo, jak i audio:
Przykład bezstratnego H.264:
Pliki bezstratne będą ogromne.
Aby uzyskać więcej informacji, zobacz FFmpeg Wiki: H.264 .
źródło
ffmpeg -i 10MB.ts -c copy output.mkv
. Dostaniesz błąd:Error parsing AAC extradata, unable to determine samplerate
. Dlatego mój przykład MKV ponownie zakodował dźwięk. Zobacz także # 4472: Kopiowanie AAC ze strumienia bez kodowania kończy się niepowodzeniem i lavf / mkv: Napraw remuxing AAC . Jednak żaden z tych elementów nie może dotyczyć dużego, nieskalowanego pliku wejściowego i może działać zgodnie z oczekiwaniami.ffmpeg -i input -c:v copy -c:a aac output.mkv
działał idealnie. Wideo zostało przemienione, a dźwięk brzmi tak dobrze, jak oryginał, bez lekkiego zepsucia, które dostałem podczas konwersji za pomocą VLC.VideoLAN (VLC - http://www.videolan.org/vlc/index.html ) z łatwością przekształci niemal wszystko w cokolwiek.
Spróbuj. Działa w systemach Linux, Windows i Mac OS X i ma bardzo przyjazny interfejs użytkownika.
źródło
Jako uzupełnienie drugiej odpowiedzi @llogan - i tak preferowana jest kopia strumieniowa:
Od dłuższego czasu używam niektórych poleceń do wyodrębniania dźwięku bez zmiany nazw plików, które można dostosować do przedstawionych tutaj, aby zintegrować je z menu kontekstowymi menedżerów plików.
Zatem do „demultipleksowania i multipleksowania” bez zmiany nazwy pliku użyj:
Dodałem to do niestandardowych akcji Thunara i narzędzia konfiguracji akcji FileManager (Nautilus, Nemo, Caja, PCManFM), jak:
ograniczając go do „* .ts” w Thunar i akcjach FileManager
video/mp2t
.źródło