I will appreciate your advice on the following. I'am developing a video converter which based on FFmpeg's libavformat, and I need to implement an accurate seeking API. First of all, I developed an indexer of video stream which just saves a presentation timestamps(PTS) of every packet. And then my encoder uses this index to seek the video file. Before this operations, I remux file to mp4 container, for example. Remux is needed for videos which have no correct index inside, or video has no index at all. I need to implement seeking by bytes, of course with previously built index. I tried many ways to implement this, but without any success. Maybe you know how to implement an accurate seeking by bytes in FFmpeg? Best regards.
Related Questions in FFMPEG
- I need an azure product that executes my intensive ffmpeg command then dies, and i only get charged for the delta. Any Tips?
- Converting MP3/MP4 to WAV in the Frontend Using ffmpegwasm with Next.js Results in Module Not Found Error
- Get remote MKV file metadata using nodejs
- After using ffmpeg to remove some streams in mkv file, it takes much longer to open the media file in potplayer in Windows
- Implementing trim and fade filters with ffmpeg - MP3
- Merge Azure mp4 blobs via API (Preferred Azure)
- Overlaying frame number with ffmpeg
- Merge (concat) all video file present in '43. DP (Part1)' and put it into '43. DP (Part1)' and give name merged (concat) file to folder name
- I get an error when republishing the image I shot with ros2 run ffmpeg
- libav audio latency / cannot set audio_buffer_size
- An error occurred after encoding with h264_nvenc
- ffmpeg - excerpt from a large video file, preserving its additional streams
- Babel Loader error when using ffmpeg.wasm in CRA react app
- define the input FPS of a stream using ffmpeg-python
- NodeJS stream MKV as MP4 video
Related Questions in SEEK
- Python Seek Function with an offset exceeding the file size
- file.tell() after a write is not correct in append mode?
- Wrong Id node BFS
- I'm trying to find out what seek does in Python using powershell
- VBA - why does goal seek give marginally different answer to VBA for a simple (single cell optimization) problem?
- Why won't my video seek on my website whether I use video.js or not?
- Need a formula for additional quantity needed at a set price to bring down cost avg to equal as close to said price
- Gstreamer: Seek does not always work with playbin
- Optimizing frame iteration in OpenCV capture: Seeking a faster alternative to the 'set' function
- Crossplatform File::write_at()?
- AttributeError: 'bytes' object has no attribute 'seek'
- Do failures seeking backwards in a gzip.GzipFile mean it's broken?
- Remove first line using seek in Python
- How to determine if a file is seekable in Rust?
- How to disable auto commit in kafka using mule 4
Related Questions in LIBAVCODEC
- Retrieving VUI after AVC/HEVC decoding from *.yuv file?
- FLAC created using libavformat/avcodec doesn't contain meta information
- libav: Store h264 frames in mp4 container
- How to call av_read_frame() when streamed data is not yet available?
- Getting libavcodec.so.58 not found error when trying to launch retroarch on the pi 5
- How can I install FFmpeg so that pkg-config can find it?
- ffmpeg avcodec_send_packet fail after several frames
- Is raw audio in AVFrame->data the same as LPCM?
- Do I need an AVFormatContext for decoding raw audio data?
- Libav FFv1 read_quant_table decoding errors
- Why is the last frame not showing in an MP4 generated by libav?
- Bad src image ptrs converting YUV to RGB after H264 decoding with libav and c++
- Read existing MP4 File and write into a new MP4 file using libavcodec
- First/single frame encoded with ffmpeg/libavcodec library cannot be immediately decoded
- PKG_CONFIG_PATH A required package was not found
Related Questions in FSEEK
- Error writes wrong buffer to file using ftell and fseek (C)
- How to flag the last struct in a binary file as "DELETED" in binary files, C
- Reading the same file using multiple file streams for multithread applications
- How to change a line after read a line in file?
- Complexity of fseek operation
- Do `fseek`, `fsetpos`, and `rewind` flush the buffer in C?
- What types/functions should I use to track a file position for random access?
- `fseek` issue when printing last $N$ lines to a file using C++
- I have a trouble in counting amount of "items" in binary file. C
- Why do I need to add one more fseek() function in my code after fgetc() function?
- fseek is returning -1 in "w" mode and making file blank in C program
- What is the use of zero offset in fseek() function with SEEK_CUR?
- Strange return of fseek & ftell for special folder
- Reading and editing structs with fscanf() and fseek()
- Understanding fseek() in C
Related Questions in LIBAVFORMAT
- avio_tell() return value doesn't change after avformat_seek_file()
- FLAC created using libavformat/avcodec doesn't contain meta information
- libav: Store h264 frames in mp4 container
- How to call av_read_frame() when streamed data is not yet available?
- Is raw audio in AVFrame->data the same as LPCM?
- Do I need an AVFormatContext for decoding raw audio data?
- Why is the last frame not showing in an MP4 generated by libav?
- libavformat - Using custom writing callbacks
- When using libva* (ffmpeg) encoded GIF images, an error is reported when compiling the demo
- Why does ffmpeg parses an entire file beforehand
- How to Manually Process Muxing h264 to mp4?
- avformat_write_header() changes my stream's time_base
- avformat_open_input returns -48
- Speed problems with realtime recording with libavcodec and libavformat
- Ffmpeg transcoding to H264 MP4 is not producing smooth video
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Yury! You must seek until you meet the correct frame in the GOP area in where is destination frame. Before that you have to decode two both GOP in where are first frame and last frame of segment and save their positions. This position values will use finding your correct frames.
I've found that matters in two years ago. If you don't have correct understood, I'll give you new algorithm. Best regards.