Nagrywam wideo z FFmpeg i chciałbym, aby liczba klatek na sekundę, w której została zapisana, była co najmniej w odpowiednim parku. Teraz biorę liczbę klatek na sekundę, którą moje wejście twierdzi, i używam jej do ustawienia szybkości klatek (time_base) dla mojego wyjściowego strumienia wideo. Czasami jednak różni się to od rzeczywistej liczby klatek na sekundę, jaką otrzymuję (widziałem strumień, który żąda 50 fps, ale publikuje przy 9 fps).Nagrywanie wideo o nieznanej liczbie klatek na sekundę za pomocą FFmpeg
Chciałbym użyć upływającego timera i policzyć klatki, które nagrywam, aby obliczyć rzeczywistą liczbę klatek na sekundę zarejestrowaną w momencie zakończenia nagrywania. Wydaje mi się jednak, że szybkość odtwarzania jest ustawiona w moim AVStream jest używany w avcodec_open2 przed napisaniem jakichkolwiek ramek. Jeśli ustawię to później (na przykład podczas pisania ramek), podczas gdy ffplay może je odtwarzać (narzekając, że bity przyrostowe wynoszą 6, a nie 4), inne odtwarzacze wideo nie mogą tego zrobić. Czy istnieje sposób ustawiania liczby klatek na sekundę dla całego pliku po napisaniu klatek na? Jeśli nie, to czy istnieje sposób na określenie ramek jako pewnego rodzaju znacznika czasu lub liczby klatek na sekundę, podczas gdy ja nagrywam, co spowoduje powstanie ważnego nagranego pliku?
Witam, będę wyglądać bardziej, ale po prostu chciałem zapytać o avconv. znalazł go po szybkim wyszukiwaniu w Google, wygląda na to, że może zmienić szybkość klatek pliku. może mógłbyś napisać plik z dowolną liczbą klatek na sekundę, a następnie po wykryciu realnej stawki, zakończyć pisanie i uruchomić avconv z nową stawką? tylko myśl, a nie prawdziwa odpowiedź;) nadal będzie wyglądać. daj mi znać. – nephi12
avconv to nazwa binarna projektu libav. (http://superuser.com/questions/507386/why-would-i-choose-libav-over-ffmpeg- or-is-there-even-a-difference) ma całkiem przyzwoite podsumowanie wszystkich nazw, które jestem zdezorientowany od dłuższego czasu. Cokolwiek avconv powinno być możliwe z bibliotekami, których używa. – Chris