Home - Waterfall Grid T-Grid Console Builders Recent Builds Buildslaves Changesources - JSON API - About

Builder ffmpegsos-solaris10-i386 Build #14308

Results:

Failed

SourceStamp:

Projectffmpeg
Repositoryhttps://git.ffmpeg.org/ffmpeg.git
Branchmaster
Revision1b5041c785f1e735e14ef2db2c98a786ef180954
Changes14 changes

BuildSlave:

unstable10x

Reason:

The SingleBranchScheduler scheduler named 'schedule-ffmpegsos-solaris10-i386' triggered this build

Steps and Logfiles:

  1. git updating ( 6 secs )
    1. stdio
  2. shell  
    1. - no logs -
  3. shell_1  
    1. - no logs -
  4. shell_2  
    1. - no logs -
  5. shell_3  
    1. - no logs -
  6. shell_4  
    1. - no logs -
  7. shell_5  
    1. - no logs -

Build Properties:

NameValueSource
branch master Build
builddir /export/home/buildbot/slave/ffmpegsos-solaris10-i386 slave
buildername ffmpegsos-solaris10-i386 Builder
buildnumber 14308 Build
codebase Build
project ffmpeg Build
repository https://git.ffmpeg.org/ffmpeg.git Build
revision 1b5041c785f1e735e14ef2db2c98a786ef180954 Build
scheduler schedule-ffmpegsos-solaris10-i386 Scheduler
slavename unstable10x BuildSlave
workdir /export/home/buildbot/slave/ffmpegsos-solaris10-i386 slave (deprecated)

Forced Build Properties:

NameLabelValue

Responsible Users:

  1. Lynne

Timing:

StartSun Sep 20 08:44:41 2026
EndSun Sep 20 08:44:47 2026
Elapsed6 secs

All Changes:

:

  1. Change #282274

    Category ffmpeg
    Changed by Lynne <devohnoyoudont@lynne.ee>
    Changed at Sun 20 Sep 2026 07:45:46
    Repository https://git.ffmpeg.org/ffmpeg.git
    Project ffmpeg
    Branch master
    Revision daa210cfd7b166e01a231264ad3bdec281b8788d

    Comments

    h264: correct the comment on the field POCs of frame_num gap dummies
    Hwaccels submit the field POCs of a picture, not its frame POC.

    Changed files

    • libavcodec/h264_slice.c
  2. Change #282275

    Category ffmpeg
    Changed by Lynne <devohnoyoudont@lynne.ee>
    Changed at Sun 20 Sep 2026 07:45:50
    Repository https://git.ffmpeg.org/ffmpeg.git
    Project ffmpeg
    Branch master
    Revision 0ae15fffefd66d78828902176da25d19ae652a0e

    Comments

    vulkan_decode: do not bind the current picture twice when its slot is active
    When decoding the second field of a pair, the picture is already bound as
    an active reference at its DPB slot, since the first field made it one.
    Appending it again as an inactive slot duplicates the picture resource
    within the coding scope, which is not allowed
    (VUID-vkCmdBeginVideoCodingKHR-pPictureResource-07238).

    Changed files

    • libavcodec/vulkan_decode.c
  3. Change #282276

    Category ffmpeg
    Changed by Lynne <devohnoyoudont@lynne.ee>
    Changed at Sun 20 Sep 2026 07:45:52
    Repository https://git.ffmpeg.org/ffmpeg.git
    Project ffmpeg
    Branch master
    Revision 2f0c34b10e02df29a707cdc4d16a29044fbbe2bd

    Comments

    vulkan_h264: only bind reference fields that were decoded into their slot
    A Vulkan DPB slot only becomes active once a decode operation sets it up,
    and from then on holds exactly the picture resource that was decoded into
    it. The H.264 decoder however hands us references that never went through
    the hwaccel: the dummies it synthesizes to fill frame_num gaps and to stand
    in for missing references, and fields lost to a seek. Binding those as
    active slots fails validation (VUIDs 07239, 07265, 07266, 07151), and since
    the slot lookup for long-term references only searched the first 16
    pictures and fell back to slot 0, a resource could end up bound twice
    (07238, 07264).
    
    Track, per picture, which fields were actually decoded into its slot, and
    bind only the references, and only the fields of them, that were:
    vk_h264_fill_pict returns 1 when it bound the picture and 0 when it cannot
    be bound, and the reference loops advance by that. Use the picture's index
    in the DPB as its slot directly instead of searching for it, and describe
    the setup slot by the structure of the picture being decoded rather than by
    its reference marking, which does not describe the slot's contents while
    decoding the second field of a pair.

    Changed files

    • libavcodec/vulkan_h264.c
  4. Change #282277

    Category ffmpeg
    Changed by Lynne <devohnoyoudont@lynne.ee>
    Changed at Sun 20 Sep 2026 07:45:56
    Repository https://git.ffmpeg.org/ffmpeg.git
    Project ffmpeg
    Branch master
    Revision 82a2875192b6e6d45ee3ed8d0baf03e91dcca532

    Comments

    vulkan_h264: give each picture a persistent DPB slot instead of its DPB index
    A frame_num gap dummy shares the duplicated picture's hwaccel state, and
    with it the DPB slot that picture was decoded into, which can differ from
    the dummy's own index into h->DPB: the dummy and the picture it duplicates
    are distinct H264Picture entries. Deriving the Vulkan slot from the DPB
    index, as before, could then bind the dummy at an index nothing was ever
    decoded into, or one currently in use by an unrelated picture.
    
    Assign the slot once, when a picture is first decoded, to the lowest index
    no current reference holds, and keep it for as long as the picture (or a
    dummy sharing its state) remains referenced. ff_ctz(0) is undefined, so
    guard the case where every slot is taken rather than fall into it.
    
    A slot can still end up requested twice in the same scope: once for the
    original picture, once for a dummy sharing its state. Detect that by
    identity on the shared hwaccel state rather than by DPB index, since the
    two no longer coincide.

    Changed files

    • libavcodec/vulkan_h264.c
  5. Change #282284

    Category ffmpeg
    Changed by Lynne <devohnoyoudont@lynne.ee>
    Changed at Sun 20 Sep 2026 08:13:01
    Repository https://git.ffmpeg.org/ffmpeg.git
    Project ffmpeg
    Branch master
    Revision 9a69dc787de7ec6a5a17c74247eaadd46b7a5066

    Comments

    vulkan/prores_idct: clip values to maximum allowed range
    This matches the software decoder.

    Changed files

    • libavcodec/vulkan/prores_idct.comp.glsl
  6. Change #282286

    Category ffmpeg
    Changed by Lynne <devohnoyoudont@lynne.ee>
    Changed at Sun 20 Sep 2026 09:45:55
    Repository https://git.ffmpeg.org/ffmpeg.git
    Project ffmpeg
    Branch master
    Revision 8cf5b8b0b335ba8d524a14542027c3593e6d3bfe

    Comments

    vulkan_prores: undo quant matrix permutation
    The quantization matrix gets immediately permuted for the assembly.
    But the Vulkan decoder uses it in regular standard order.

    Changed files

    • libavcodec/vulkan_prores.c
  7. Change #282288

    Category ffmpeg
    Changed by Lynne <devohnoyoudont@lynne.ee>
    Changed at Sun 20 Sep 2026 09:45:57
    Repository https://git.ffmpeg.org/ffmpeg.git
    Project ffmpeg
    Branch master
    Revision 083bf5cecb1bdbe3d5f9ba28e558d38511000874

    Comments

    vulkan_prores_raw: undo potential quant matrix permutation
    Same as last commit, except this is done just in case someone
    introduces a ProRes RAW iDCT.

    Changed files

    • libavcodec/vulkan_prores_raw.c
  8. Change #282289

    Category ffmpeg
    Changed by Lynne <devohnoyoudont@lynne.ee>
    Changed at Sun 20 Sep 2026 09:45:59
    Repository https://git.ffmpeg.org/ffmpeg.git
    Project ffmpeg
    Branch master
    Revision 3110b21964fa8317abd1a33975ae6233a30c1e7c

    Comments

    vulkan_apv: remove unnecessary image clear
    We moved to using a dedicated buffer for the intermediate data.

    Changed files

    • libavcodec/vulkan/apv_decode.comp.glsl
    • libavcodec/vulkan_apv.c
  9. Change #282290

    Category ffmpeg
    Changed by Lynne <devohnoyoudont@lynne.ee>
    Changed at Sun 20 Sep 2026 09:46:03
    Repository https://git.ffmpeg.org/ffmpeg.git
    Project ffmpeg
    Branch master
    Revision fe06105c8a9ab4e873efdbea7cd00da1d0e1295c

    Comments

    prores_raw: parse the frame before honouring skip_frame
    The decoder returned before parsing anything when skip_frame was
    AVDISCARD_ALL, yet advertises FF_CODEC_CAP_SKIP_FRAME_FILL_PARAM, so it
    never set the pixel format and dimensions while probing. Probing gives up
    after probesize, and ProRes RAW frames are larger than the default, so
    ffmpeg failed to open such files at all with "Could not find codec
    parameters ... unspecified pixel format". Parse up to the tile table, which
    sets every stream parameter, before skipping the frame.

    Changed files

    • libavcodec/prores_raw.c
  10. Change #282291

    Category ffmpeg
    Changed by Lynne <devohnoyoudont@lynne.ee>
    Changed at Sun 20 Sep 2026 09:46:07
    Repository https://git.ffmpeg.org/ffmpeg.git
    Project ffmpeg
    Branch master
    Revision bc1cf21643f6cb63c0756268f61bf33ebd0b8712

    Comments

    prores_raw: end a component at 32 zero bits, like the reference decoder
    The reference decoder reads every symbol from a 32-bit window that is
    zero-filled past the end of the component's data, and stops decoding the
    component as soon as that window is all zero. Both our decoders checked for
    remaining bits instead, and near the end of the data decoded a zero symbol
    from a short window and stored spurious coefficients of magnitude 1 at the
    end of the last blocks of a tile. The software decoder also ran one
    coefficient past the end of the block array. Decode the way the reference
    does, in both, so their coefficients match it, and each other.

    Changed files

    • libavcodec/prores_raw.c
    • libavcodec/vulkan/prores_raw_decode.comp.glsl
  11. Change #282292

    Category ffmpeg
    Changed by Lynne <devohnoyoudont@lynne.ee>
    Changed at Sun 20 Sep 2026 10:19:11
    Repository https://git.ffmpeg.org/ffmpeg.git
    Project ffmpeg
    Branch master
    Revision e9e698f482589285049a58ee7a3286f9af37405c

    Comments

    vulkan: clamp GET_BITS_SMEM refills to the end of the bitstream
    FILL_SMEM read up to 16*GET_BITS_SMEM bytes past the end of the buffer.
    At the default depth of 4 that is exactly AV_INPUT_BUFFER_PADDING_SIZE,
    so it only worked by coincidence; deeper windows faulted.
    
    Clamp lines past the end onto the last line; nothing reads them. Issuing
    each line as its own load is also ~3% faster than one indexed fetch.

    Changed files

    • libavcodec/vulkan/common.glsl
  12. Change #282293

    Category ffmpeg
    Changed by Lynne <devohnoyoudont@lynne.ee>
    Changed at Sun 20 Sep 2026 10:19:16
    Repository https://git.ffmpeg.org/ffmpeg.git
    Project ffmpeg
    Branch master
    Revision e99556134446a7672915a82c6a6a425eb875f908

    Comments

    vulkan_prores_raw: pick the bitstream prefetch depth per device
    With the packet host-mapped, the decode shader is bound by fetch
    latency over the bus: 5.49 ms per frame for the VLD alone, versus
    0.21 ms from a device-local buffer.
    
    Make GET_BITS_SMEM a specialization constant: 64 lines (1 KB) per
    invocation on discrete GPUs reading host-mapped packets, 4 otherwise.
    Integrated GPUs get slower with every extra line.
    
    5.7K ProRes RAW on an RX 6900 XT: 145 -> 249 fps (non-HQ), 98 -> 154
    fps (HQ), bit-identical output. Intel Iris Xe unchanged.

    Changed files

    • libavcodec/vulkan/prores_raw_decode.comp.glsl
    • libavcodec/vulkan_prores_raw.c
  13. Change #282294

    Category ffmpeg
    Changed by Lynne <devohnoyoudont@lynne.ee>
    Changed at Sun 20 Sep 2026 10:19:22
    Repository https://git.ffmpeg.org/ffmpeg.git
    Project ffmpeg
    Branch master
    Revision e3654ccab4e19ffbbaf1a73b534ad44bdfcaac72

    Comments

    vulkan/ffv1: initialize the version 4 slice header fields on older streams
    slice_reset_contexts, remap and remap_count were only set on version 4
    streams. The slice context buffer is pooled and never cleared, so on
    older streams the reset shader read stale memory as the reset flag and
    wiped the range coder state carried over from the previous frame.
    
    Non-keyframes of pre-version-4 streams intermittently decoded to
    garbage, with the slice CRCs still passing.

    Changed files

    • libavcodec/vulkan/ffv1_dec_setup.comp.glsl
  14. Change #282295

    Category ffmpeg
    Changed by Lynne <devohnoyoudont@lynne.ee>
    Changed at Sun 20 Sep 2026 10:19:28
    Repository https://git.ffmpeg.org/ffmpeg.git
    Project ffmpeg
    Branch master
    Revision 1b5041c785f1e735e14ef2db2c98a786ef180954

    Comments

    vulkan: keep the iDCT scale factors separable
    The 8x8 scale table was 64 specialization constants indexed per
    coefficient. The index is divergent, so nothing folds and every
    coefficient costs a load from the constant-data segment.
    
    The table is an outer product, s[y]*s[x], so pass the eight 1D factors
    instead: the x factor hoists out of the coefficient loop and the y
    factor folds once the loop is unrolled. ProRes RAW's gain of 8 becomes
    a literal in its shader.
    
    Reassociation moves a few samples in ten thousand by an LSB or so,
    well below the existing float iDCT error; PSNR versus software is
    unchanged.

    Changed files

    • libavcodec/vulkan/apv_idct.comp.glsl
    • libavcodec/vulkan/dct.glsl
    • libavcodec/vulkan/prores_idct.comp.glsl
    • libavcodec/vulkan/prores_raw_idct.comp.glsl
    • libavcodec/vulkan_apv.c
    • libavcodec/vulkan_prores.c
    • libavcodec/vulkan_prores_raw.c