Skip to content
This repository was archived by the owner on Jan 12, 2021. It is now read-only.
This repository was archived by the owner on Jan 12, 2021. It is now read-only.

请问,通过recordPacket对mp4文件进行hls切片,切片后ts文件数量正常,但是m3u8文件里每片的时长不对 #6

@bug-rabbit

Description

@bug-rabbit

hls切片时间设置的是5s,一个29s的mp4视频,切片后,切片数量是5 正常,也能正常播放,但是m3u8文件里每片时长只有1s左右,导致播放器显示的总时长不对:
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-TARGETDURATION:1
#EXT-X-MEDIA-SEQUENCE:0
#EXTINF:0.766667,
out0.ts
#EXTINF:0.644444,
out1.ts
#EXTINF:1.016667,
out2.ts
#EXTINF:0.416667,
out3.ts
#EXTINF:1.288889,
out4.ts
#EXT-X-ENDLIST

以下是代码
`public static void packetRecord(String inputFile, String outputFile) throws FrameGrabber.Exception, FrameRecorder.Exception {

    FFmpegFrameGrabber grabber = new FFmpegFrameGrabber(inputFile);
    FFmpegFrameRecorder recorder = new FFmpegFrameRecorder(outputFile, 1280, 720, 2);

    grabber.start();
    
    recorder.setOption("hls_list_size", "0");
    recorder.setOption("hls_time", "5");
    recorder.start(grabber.getFormatContext());

    AVPacket packet;

    while ((packet = grabber.grabPacket()) != null) {
        recorder.recordPacket(packet);

    }

    recorder.stop();
    grabber.stop();
}`

packetRecord("F:\\beixiyan.mp4","out.m3u8");

请问该如何避免该问题,万分感谢

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions