Opened 5 years ago

Closed 5 years ago

#11283 closed bug (fixed)

[MediaPlayer] plays h264 file twice as fast

Reported by: diver Owned by: colin
Priority: normal Milestone: R1
Component: Audio & Video/Codecs Version: R1/Development
Keywords: Cc:
Blocked By: Blocking:
Has a Patch: no Platform: All

Description

hrev47902.

MediaPlayer plays attached 8 sec video twice as fast. The last 4 seconds there's just darkness.

~> MediaPlayer keymap_button.mov
open playlist item: keymap_button.mov
[h264 @ 0x1900a058] Increasing reorder buffer to 1
MediaTrackVideoSupplier::_SwitchFormat() - preferred color space: B_YUV420
MediaTrackVideoSupplier::_SwitchFormat() -  codec changed colorspace of decoded format (B_YUV420 -> B_RGB32)!
should skip -1 lines at bottom!
VideoConsumer::CreateBuffers - ERROR CREATING VIDEO RING BUFFER (Index 0 Width 978 Height 578 Colorspace 8: Out of memory
VideoConsumer::Connected - COULDN'T CREATE BUFFERS
BMediaRoster::Connect: aborting after BBufferConsumer::Connected, status = 0x80000000
VideoProducer::Connect() - consumer error: Out of memory
BMediaRoster::Connect: aborted
Can't connect the video source to the video window... trying without overlays, error: Out of memory
running without audio node
[h264 @ 0x19009440] Increasing reorder buffer to 1

[4 seconds passed, video turnes black]

BMediaTrack::ReadFrames: decoder returned error 0x80004007 (Last buffer)
[h264 @ 0x19009038] Increasing reorder buffer to 1
BMediaTrack::ReadFrames: decoder returned error 0x80004007 (Last buffer)
BMediaTrack::ReadFrames: decoder returned error 0x80004007 (Last buffer)
BMediaTrack::ReadFrames: decoder returned error 0x80004007 (Last buffer)
BMediaTrack::ReadFrames: decoder returned error 0x80004007 (Last buffer)
BMediaTrack::ReadFrames: decoder returned error 0x80004007 (Last buffer)
BMediaEventLooper: SchedulingLatency is 100
BMediaTrack::ReadFrames: decoder returned error 0x80004007 (Last buffer)

Media info:

~> ffmpeg -i keymap_button.mov
ffmpeg version 0.10.14 Copyright (c) 2000-2014 the FFmpeg developers
  built on Jul 28 2014 12:15:28 with gcc 2.95.3-haiku-2013_08_15
  configuration: --prefix=/packages/ffmpeg-0.10.14-1/.self --bindir=/packages/ffmpeg-0.10.14-1/.self/bin --datadir=/packages/ffmpeg-0.10.14-1/.self/data/ffmpeg --incdir=/packages/ffmpeg-0.10.14-1/.self/develop/headers --libdir=/packages/ffmpeg-0.10.14-1/.self/lib --shlibdir=/packages/ffmpeg-0.10.14-1/.self/lib --mandir=/packages/ffmpeg-0.10.14-1/.self/documentation/man --disable-debug --enable-shared --enable-libvorbis --enable-libspeex --enable-libtheora --enable-libvpx
  libavutil      51. 35.100 / 51. 35.100
  libavcodec     53. 61.100 / 53. 61.100
  libavformat    53. 32.100 / 53. 32.100
  libavdevice    53.  4.100 / 53.  4.100
  libavfilter     2. 61.100 /  2. 61.100
  libswscale      2.  1.100 /  2.  1.100
  libswresample   0.  6.100 /  0.  6.100
[h264 @ 0x183636d0] Increasing reorder buffer to 1
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/boot/home/Desktop/keymap_button.mov':
  Metadata:
    major_brand     : qt  
    minor_version   : 0
    compatible_brands: qt  
    creation_time   : 2014-09-23 13:41:17
  Duration: 00:00:08.28, start: 0.016667, bitrate: 301 kb/s
    Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 978x578, 298 kb/s, SAR 1:1 DAR 489:289, 9.76 fps, 60 tbr, 6k tbn, 50 tbc
    Metadata:
      creation_time   : 2014-09-23 13:41:17
      handler_name    : 
At least one output file must be specified

Attachments (1)

keymap_button.mov (304.8 KB ) - added by diver 5 years ago.

Download all attachments as: .zip

Change History (5)

by diver, 5 years ago

Attachment: keymap_button.mov added

comment:1 by diver, 5 years ago

The same file doesn't play at all in WebPositive.

comment:2 by diver, 5 years ago

Owner: changed from nobody to colin
Status: newassigned

comment:3 by pulkomandy, 5 years ago

One of the videos from #4512 (wheelie.mp4) has the same issue, much worse since it tries to play the video at 30000 FPS instead of 30.

The problem is the new "variable frame rate" support introduced by Colin to handle DVB-T streams. I have a fix that breaks these changes, but I'm trying a solution that should allow both correct and variable frame rate.

comment:4 by pulkomandy, 5 years ago

Resolution: fixed
Status: assignedclosed

Fixed in hrev48469.

Note: See TracTickets for help on using tickets.