https://github.com/andrewtyw/ffmpeg-reverse-playback
A demo of using ffmpeg to play a video in reverse.
https://github.com/andrewtyw/ffmpeg-reverse-playback
cpp ffmpeg qt
Last synced: 3 months ago
JSON representation
A demo of using ffmpeg to play a video in reverse.
- Host: GitHub
- URL: https://github.com/andrewtyw/ffmpeg-reverse-playback
- Owner: andrewtyw
- Created: 2022-06-06T06:54:48.000Z (about 3 years ago)
- Default Branch: main
- Last Pushed: 2023-08-03T03:33:03.000Z (almost 2 years ago)
- Last Synced: 2025-03-24T16:11:06.021Z (4 months ago)
- Topics: cpp, ffmpeg, qt
- Language: C
- Homepage:
- Size: 2.56 MB
- Stars: 8
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Video-reverse-playing
A pretty easy demo of using FFmpeg to play video in reverse## Environment
- Qt 5.14 MinGW 64-bit
- ffmpeg n4.4.2-20220415## How it works?
- I use the producer-consumer design pattern. The video decoder will decode video frames into a blocking queue. Once the queue is non-empty, the frame render will be notified and then retrieve frames from the buffer and render them on the screen.## Important classes:
- `ReverseDisplay` in `/reverse_v3/reversedisplay.h`, rendering thread.
- `ReverseDecode` in `/reverse_v3/reversedecode.h`, video-decoding thread.
- `Controller` in `/reverse_v3/utils.h`, a structure that contains a blocking queue to control the rendering and decoding thread.