Comments (2)
Looked into that today, and I believe the 6th frame is produced by the FPS filter. The test asks for "P720p30fps16x9" profile, but the input video is 25FPS (which I checked ffprobe -show_frames -unit
: frame duration is 0.04s or 40ms). Now converting from 25FPS to 30FPS requires adding 5 frames per second, or one additional frame every five original frames. This is what I believe happens here. To be more precise, these are original video timestamps:
pkt_pts_time=1.480000 s
pkt_pts_time=1.520000 s
pkt_pts_time=1.560000 s
pkt_pts_time=1.600000 s
pkt_pts_time=1.640000 s
So original video has 5 frames over 0.16s
And transcoded video timestamps:
pkt_pts_time=1.466016 s
pkt_pts_time=1.499349 s
pkt_pts_time=1.532682 s
pkt_pts_time=1.566016 s
pkt_pts_time=1.599349 s
pkt_pts_time=1.632682 s
So transcoded video has 5 frames over 0.166666s. Not sure why the timestamps are shifted (I mean why the first frame of transcoded video doesn't repeat the timestamp of the first frame of original video), but I guess this is how filter works.
I also verified my theory by invoking the test with "P720p25fps16x9" profile, thus getting rid of FPS filter. The results were as expected, 5 output frames. My conclusion is: this is not really a bug, transcoder is behaving properly.
What do you think @AlexKordic ?
from lpms.
Good point! This is then false report from my side
from lpms.
Related Issues (20)
- TestTranscoder_DetectionFreq failing in CI HOT 4
- Transcoding performance issue on specialized hardware HOT 12
- Single IDR frame segment as input HOT 19
- Undefined constant or missing '(' in 'high' error when transcoding certain segments using NETINT HOT 12
- Failing test - potential DNN filter issue HOT 1
- TestTranscoder_FormatOptions fails due to .flv muxer not being available HOT 1
- TestTranscoder_StreamCopyAndDrop fails because of .md5 "muxer" not being available. HOT 1
- There are some audio missed segments during transcoding HOT 3
- B gets some broken mpeg7 hash files when comparison of two hashes HOT 2
- Document HW session re-initialization behavior when switching from no audio to audio segment HOT 1
- P3 - Make sure LPMS works without video HOT 4
- Scaling bugs when using HW encoder HOT 4
- `GetCodecInfo()` returns resolution of 0x0 HOT 2
- Only mark CUDA_ERROR_ILLEGAL_ADDRESS errors as unrecoverable errors HOT 3
- P2 - Add docs for running transcode test using failed segment bucket
- P2 - Clear all segments that can be transcoded from the livepeer-production-failed-transcodes bucket HOT 1
- Add rotation step after decoder and before outputs video filtergrapth HOT 3
- LPMS_USE_NEW_TRANSCODE places sentinel frames in output HOT 1
- Transcoder produces corrupt frames HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from lpms.