]> git.nihav.org Git - nihav-player.git/log
nihav-player.git
28 hours agofix clippy warnings master
Kostya Shishkov [Wed, 4 Feb 2026 21:15:55 +0000 (22:15 +0100)]
fix clippy warnings

28 hours agovideoplayer: rework OSD
Kostya Shishkov [Wed, 4 Feb 2026 21:07:03 +0000 (22:07 +0100)]
videoplayer: rework OSD

A recent change uncovered why you should not try to modify texture data, thus
requiring to implement OSD by blitting a separate texture.

31 hours agovideoplayer: print information about input file in more compact form
Kostya Shishkov [Wed, 4 Feb 2026 17:53:23 +0000 (18:53 +0100)]
videoplayer: print information about input file in more compact form

31 hours agosndplay: use more compact output format
Kostya Shishkov [Wed, 4 Feb 2026 17:50:33 +0000 (18:50 +0100)]
sndplay: use more compact output format

32 hours agovideoplayer: explicitly mark unused streams
Kostya Shishkov [Wed, 4 Feb 2026 17:24:40 +0000 (18:24 +0100)]
videoplayer: explicitly mark unused streams

32 hours agovideoplayer: use SDL YUV texture update function instead of manual copying
Kostya Shishkov [Wed, 4 Feb 2026 17:22:20 +0000 (18:22 +0100)]
videoplayer: use SDL YUV texture update function instead of manual copying

32 hours agovideoplayer: improve messages
Kostya Shishkov [Wed, 4 Feb 2026 17:19:07 +0000 (18:19 +0100)]
videoplayer: improve messages

32 hours agosndplay: improve file opening and messages
Kostya Shishkov [Wed, 4 Feb 2026 17:11:48 +0000 (18:11 +0100)]
sndplay: improve file opening and messages

4 days agovideoplayer: add missing space between integer and fraction part of FPS
Kostya Shishkov [Sun, 1 Feb 2026 17:00:40 +0000 (18:00 +0100)]
videoplayer: add missing space between integer and fraction part of FPS

5 days agovideoplayer: use nihav_hlblocks for demuxer code
Kostya Shishkov [Sat, 31 Jan 2026 16:01:14 +0000 (17:01 +0100)]
videoplayer: use nihav_hlblocks for demuxer code

5 days agosndplay: register more formats
Kostya Shishkov [Sat, 31 Jan 2026 15:30:43 +0000 (16:30 +0100)]
sndplay: register more formats

5 days agosndplay: use immediate crate names in register_xxx functions
Kostya Shishkov [Sat, 31 Jan 2026 15:19:41 +0000 (16:19 +0100)]
sndplay: use immediate crate names in register_xxx functions

There is no need to import it explicity if it gets used just in one place.

5 days agosndplay: switch to nihav_hlblocks demuxer code
Kostya Shishkov [Sat, 31 Jan 2026 15:07:19 +0000 (16:07 +0100)]
sndplay: switch to nihav_hlblocks demuxer code

8 days agohwdec_vaapi: rework frame reorderer
Kostya Shishkov [Wed, 28 Jan 2026 18:04:17 +0000 (19:04 +0100)]
hwdec_vaapi: rework frame reorderer

Previous version tried to be "smart" by re-arranging non-reference frames
between reference frames. This approach worked fine for simpler files but
failed with more complex reference structure (like B-pyramid).

New version simply assumes monotone increasing IDs, inserts frames into
the queue according to it and outputs first frame as soon as it is clear
that no frames will be inserted before it.

12 days agovideoplayer: fix debug logging for loading settings file
Kostya Shishkov [Sat, 24 Jan 2026 17:19:50 +0000 (18:19 +0100)]
videoplayer: fix debug logging for loading settings file

12 days agovideoplayer: rework displaying stream info for a bit nicer look
Kostya Shishkov [Sat, 24 Jan 2026 17:15:02 +0000 (18:15 +0100)]
videoplayer: rework displaying stream info for a bit nicer look

2 weeks agoswitch to NATimeInfo::rescale_ts()
Kostya Shishkov [Thu, 22 Jan 2026 18:07:05 +0000 (19:07 +0100)]
switch to NATimeInfo::rescale_ts()

2 weeks agovideoplayer: add icon
Kostya Shishkov [Mon, 19 Jan 2026 19:16:38 +0000 (20:16 +0100)]
videoplayer: add icon

6 weeks agovideoplayer: allow selecting audio and video stream to play
Kostya Shishkov [Mon, 22 Dec 2025 15:53:26 +0000 (16:53 +0100)]
videoplayer: allow selecting audio and video stream to play

3 months agovideoplayer: add a rudimentary support for rcfile
Kostya Shishkov [Thu, 9 Oct 2025 16:19:11 +0000 (18:19 +0200)]
videoplayer: add a rudimentary support for rcfile

3 months agovideoplayer: improve window title sanitisation
Kostya Shishkov [Thu, 9 Oct 2025 16:14:11 +0000 (18:14 +0200)]
videoplayer: improve window title sanitisation

3 months agonihed_cros_libva: add implicit lifetime markers where appropriate
Kostya Shishkov [Thu, 9 Oct 2025 16:12:49 +0000 (18:12 +0200)]
nihed_cros_libva: add implicit lifetime markers where appropriate

Rust 1.69 does not care but newer versions start to give warnings.

3 months agouse clamp() where appropriate
Kostya Shishkov [Thu, 9 Oct 2025 16:11:50 +0000 (18:11 +0200)]
use clamp() where appropriate

4 months agosndplay: add option to set volume from command line
Kostya Shishkov [Fri, 3 Oct 2025 18:55:28 +0000 (20:55 +0200)]
sndplay: add option to set volume from command line

4 months agovideoplayer: allow toggling forced seek mode
Kostya Shishkov [Wed, 1 Oct 2025 16:48:05 +0000 (18:48 +0200)]
videoplayer: allow toggling forced seek mode

4 months agohwdec_vaapi: report when opening display fails
Kostya Shishkov [Tue, 23 Sep 2025 16:17:40 +0000 (18:17 +0200)]
hwdec_vaapi: report when opening display fails

4 months agohwdec_vaapi: drop unused read_te() method
Kostya Shishkov [Tue, 23 Sep 2025 16:16:11 +0000 (18:16 +0200)]
hwdec_vaapi: drop unused read_te() method

4 months agovideoplayer: make volume control more logarithmic
Kostya Shishkov [Sun, 21 Sep 2025 15:02:39 +0000 (17:02 +0200)]
videoplayer: make volume control more logarithmic

This change trades flexibility in volume control for having more
convenient pre-defined volume levels. And it is still possible
to set arbitrary volume level from command line.

5 months agovideoplayer: add quiet mode
Kostya Shishkov [Sun, 31 Aug 2025 19:04:29 +0000 (21:04 +0200)]
videoplayer: add quiet mode

5 months agovideoplayer: add options for turning OSD on/off/whatever
Kostya Shishkov [Sat, 30 Aug 2025 18:48:47 +0000 (20:48 +0200)]
videoplayer: add options for turning OSD on/off/whatever

5 months agovideoplayer: add shift-arrow for half-minute seeks
Kostya Shishkov [Sat, 23 Aug 2025 14:55:39 +0000 (16:55 +0200)]
videoplayer: add shift-arrow for half-minute seeks

5 months agoswitch to ByteIO
Kostya Shishkov [Mon, 18 Aug 2025 17:09:28 +0000 (19:09 +0200)]
switch to ByteIO

6 months agohwdec-vaapi: add SSE branch for copy_luma()
Kostya Shishkov [Wed, 16 Jul 2025 04:08:15 +0000 (06:08 +0200)]
hwdec-vaapi: add SSE branch for copy_luma()

6 months agohwdec-vaapi: small assembly fix
Kostya Shishkov [Wed, 16 Jul 2025 03:59:59 +0000 (05:59 +0200)]
hwdec-vaapi: small assembly fix

6 months agohwdec-vaapi: copy just as many lines as destination plane wants
Kostya Shishkov [Wed, 16 Jul 2025 03:58:59 +0000 (05:58 +0200)]
hwdec-vaapi: copy just as many lines as destination plane wants

7 months agohwdec-vaapi: handle copying data into kodaed chroma planes
Kostya Shishkov [Fri, 27 Jun 2025 05:38:12 +0000 (07:38 +0200)]
hwdec-vaapi: handle copying data into kodaed chroma planes

For, say, 720x408 frame hardware decoder may report chroma plane width as 368
while destination frame chroma width is merely 360. Assuming width <= stride
leads to panic during copying.

7 months agohwdec-vaapi: ignore some bits in the avcC box
Kostya Shishkov [Tue, 24 Jun 2025 15:42:09 +0000 (17:42 +0200)]
hwdec-vaapi: ignore some bits in the avcC box

Apparently some encoders do not bother about setting them to all ones.

7 months agohwdec-vaapi: switch to derived surfaces for Kaby Lake GPU
Kostya Shishkov [Tue, 24 Jun 2025 15:39:44 +0000 (17:39 +0200)]
hwdec-vaapi: switch to derived surfaces for Kaby Lake GPU

Apparently on that GPU it's much faster than using native surfaces.

7 months agovideoplayer: fix recognition of plus key for volume up
Kostya Shishkov [Fri, 20 Jun 2025 15:50:34 +0000 (17:50 +0200)]
videoplayer: fix recognition of plus key for volume up

10 months agonihed-cros-libva: add exporting DRM Prime descriptor for pictures
Kostya Shishkov [Fri, 21 Mar 2025 14:05:22 +0000 (15:05 +0100)]
nihed-cros-libva: add exporting DRM Prime descriptor for pictures

This may eventually come in handy if I ever get to exporting pictures
as EGL textures.

14 months agovideplayer: fix a crash during laggy playback
Kostya Shishkov [Sat, 9 Nov 2024 16:56:17 +0000 (17:56 +0100)]
videplayer: fix a crash during laggy playback

18 months agohwdec-vaapi: align back kodaed frame dimensions
Kostya Shishkov [Tue, 6 Aug 2024 16:23:50 +0000 (18:23 +0200)]
hwdec-vaapi: align back kodaed frame dimensions

18 months agohwdec-vaapi: koda for H.264
Kostya Shishkov [Tue, 6 Aug 2024 16:10:15 +0000 (18:10 +0200)]
hwdec-vaapi: koda for H.264

21 months agouse NAPacketiser::attach_stream() where appropriate
Kostya Shishkov [Sat, 27 Apr 2024 11:45:28 +0000 (13:45 +0200)]
use NAPacketiser::attach_stream() where appropriate

22 months agohwdec-vaapi: detect AVX presence for the optimised version of copy_luma
Kostya Shishkov [Wed, 27 Mar 2024 15:19:18 +0000 (16:19 +0100)]
hwdec-vaapi: detect AVX presence for the optimised version of copy_luma

22 months agovideoplayer: add keypad equivalents of seek keys
Kostya Shishkov [Sun, 3 Dec 2023 10:16:40 +0000 (11:16 +0100)]
videoplayer: add keypad equivalents of seek keys

22 months agooptimise luma copy part a bit
Kostya Shishkov [Sat, 4 Nov 2023 09:17:30 +0000 (10:17 +0100)]
optimise luma copy part a bit

23 months agohwdec_vaapi: ignore high-profile extradata tail when it is not correct
Kostya Shishkov [Sun, 3 Mar 2024 14:00:19 +0000 (15:00 +0100)]
hwdec_vaapi: ignore high-profile extradata tail when it is not correct

2 years agovideoplayer: introduce refresh command
Kostya Shishkov [Sat, 4 Nov 2023 09:08:29 +0000 (10:08 +0100)]
videoplayer: introduce refresh command

2 years agohwdec-vaapi: optimise chroma deinterleaving
Kostya Shishkov [Sat, 21 Oct 2023 07:54:50 +0000 (09:54 +0200)]
hwdec-vaapi: optimise chroma deinterleaving

2 years agovideoplayer: add hardware-accelerated H.264 video decoding support
Kostya Shishkov [Fri, 20 Oct 2023 16:40:20 +0000 (18:40 +0200)]
videoplayer: add hardware-accelerated H.264 video decoding support

2 years agoadd a crate for VAAPI-based H.264 decoding
Kostya Shishkov [Fri, 20 Oct 2023 16:37:37 +0000 (18:37 +0200)]
add a crate for VAAPI-based H.264 decoding

2 years agonihed-cros-libva: update test to the current interface
Kostya Shishkov [Fri, 20 Oct 2023 16:33:27 +0000 (18:33 +0200)]
nihed-cros-libva: update test to the current interface

2 years agonihed-cros-libva: re-export VA_INVALID_ID for convenience
Kostya Shishkov [Fri, 20 Oct 2023 16:33:27 +0000 (18:33 +0200)]
nihed-cros-libva: re-export VA_INVALID_ID for convenience

2 years agonihed-cros-libva: make VAImage export VAFourcc for convenience
Kostya Shishkov [Fri, 20 Oct 2023 16:33:27 +0000 (18:33 +0200)]
nihed-cros-libva: make VAImage export VAFourcc for convenience

2 years agonihed-cros-libva: allow opening display without the debug information being printed
Kostya Shishkov [Fri, 20 Oct 2023 16:33:27 +0000 (18:33 +0200)]
nihed-cros-libva: allow opening display without the debug information being printed

2 years agonihed-cros-libva: expose and document some generated data structures
Kostya Shishkov [Fri, 20 Oct 2023 16:33:27 +0000 (18:33 +0200)]
nihed-cros-libva: expose and document some generated data structures

2 years agonihed-cros-libva: introduce more enums instead of constants
Kostya Shishkov [Fri, 20 Oct 2023 16:33:27 +0000 (18:33 +0200)]
nihed-cros-libva: introduce more enums instead of constants

2 years agonihed-cros-libva: convert surface query status to enum
Kostya Shishkov [Fri, 20 Oct 2023 16:33:27 +0000 (18:33 +0200)]
nihed-cros-libva: convert surface query status to enum

2 years agonihed-cros-libva: rework UsageHint and drop bitflags dependency
Kostya Shishkov [Fri, 20 Oct 2023 16:33:27 +0000 (18:33 +0200)]
nihed-cros-libva: rework UsageHint and drop bitflags dependency

2 years agonihed-cros-libva: use simple error enum instead of anyhow crate
Kostya Shishkov [Fri, 20 Oct 2023 16:33:27 +0000 (18:33 +0200)]
nihed-cros-libva: use simple error enum instead of anyhow crate

2 years agonihed-cros-libva: get rid of log dependency
Kostya Shishkov [Fri, 20 Oct 2023 16:33:27 +0000 (18:33 +0200)]
nihed-cros-libva: get rid of log dependency

2 years agonihed-cros-libva: start this unofficial fork
Kostya Shishkov [Fri, 20 Oct 2023 16:33:27 +0000 (18:33 +0200)]
nihed-cros-libva: start this unofficial fork

2 years agostart work on nihed-cros-libva
Kostya Shishkov [Fri, 20 Oct 2023 16:33:27 +0000 (18:33 +0200)]
start work on nihed-cros-libva

This is a fork of cros-libva at v0.0.3 without history preserved.
The current commit corresponds to the checkout at that tag with
unneeded files removed.

2 years agovideoplayer: allow custom scaling
Kostya Shishkov [Mon, 2 Oct 2023 17:42:39 +0000 (19:42 +0200)]
videoplayer: allow custom scaling

2 years agovideoplayer: ignore directories passed as input names
Kostya Shishkov [Thu, 14 Sep 2023 04:57:40 +0000 (06:57 +0200)]
videoplayer: ignore directories passed as input names

2 years agovideoplayer: allow diplaying time indefinitely long
Kostya Shishkov [Fri, 1 Sep 2023 16:50:06 +0000 (18:50 +0200)]
videoplayer: allow diplaying time indefinitely long

2 years agovideoplayer: add two more symbols just in case
Kostya Shishkov [Sun, 27 Aug 2023 15:50:37 +0000 (17:50 +0200)]
videoplayer: add two more symbols just in case

2 years agovideoplayer: print hurry up mode
Kostya Shishkov [Sat, 26 Aug 2023 15:46:56 +0000 (17:46 +0200)]
videoplayer: print hurry up mode

2 years agovideoplayer: do not needlessly resize the window
Kostya Shishkov [Sat, 26 Aug 2023 14:12:51 +0000 (16:12 +0200)]
videoplayer: do not needlessly resize the window

On window resize it pops us which may be annoying when playing same-sized files.

2 years agovideoplayer: allow numpad enter key to end current file playback
Kostya Shishkov [Wed, 16 Aug 2023 16:53:52 +0000 (18:53 +0200)]
videoplayer: allow numpad enter key to end current file playback

2 years agovideoplayer: a bit more of window title workaround workaround
Kostya Shishkov [Tue, 8 Aug 2023 16:24:19 +0000 (18:24 +0200)]
videoplayer: a bit more of window title workaround workaround

2 years agovideoplayer: use single global window instead of creating a new one for each file
Kostya Shishkov [Wed, 2 Aug 2023 16:03:51 +0000 (18:03 +0200)]
videoplayer: use single global window instead of creating a new one for each file

2 years agovideoplayer: work around SDL window title bug
Kostya Shishkov [Tue, 1 Aug 2023 16:41:32 +0000 (18:41 +0200)]
videoplayer: work around SDL window title bug

2 years agosndplay: fix clippy warnings
Kostya Shishkov [Thu, 27 Jul 2023 16:50:39 +0000 (18:50 +0200)]
sndplay: fix clippy warnings

2 years agovideoplayer: fix clippy warnings
Kostya Shishkov [Thu, 27 Jul 2023 16:44:56 +0000 (18:44 +0200)]
videoplayer: fix clippy warnings

2 years agovideoplayer: add -start as an alias for -seek
Kostya Shishkov [Thu, 27 Jul 2023 16:14:47 +0000 (18:14 +0200)]
videoplayer: add -start as an alias for -seek

2 years agovideoplayer: do not print missing reference error
Kostya Shishkov [Thu, 6 Jul 2023 16:31:07 +0000 (18:31 +0200)]
videoplayer: do not print missing reference error

2 years agouse mouse wheel to seek by ten seconds
Kostya Shishkov [Sun, 2 Jul 2023 14:29:12 +0000 (16:29 +0200)]
use mouse wheel to seek by ten seconds

2 years agokeycode modifier is a bitmask
Kostya Shishkov [Sun, 2 Jul 2023 14:24:07 +0000 (16:24 +0200)]
keycode modifier is a bitmask

2 years agosndplay: support playing AAC with SBR
Kostya Shishkov [Fri, 30 Jun 2023 16:22:40 +0000 (18:22 +0200)]
sndplay: support playing AAC with SBR

2 years agovideoplayer: add a hack to play AAC with SBR properly
Kostya Shishkov [Fri, 30 Jun 2023 16:13:31 +0000 (18:13 +0200)]
videoplayer: add a hack to play AAC with SBR properly

2 years agoshow time with middle button click
Kostya Shishkov [Thu, 29 Jun 2023 16:52:17 +0000 (18:52 +0200)]
show time with middle button click

2 years agomake player exit on shift+Q instead of Q
Kostya Shishkov [Wed, 28 Jun 2023 17:13:38 +0000 (19:13 +0200)]
make player exit on shift+Q instead of Q

2 years agoimprove error handling in video decoding a bit
Kostya Shishkov [Sun, 18 Jun 2023 14:16:54 +0000 (16:16 +0200)]
improve error handling in video decoding a bit

2 years agoimprove error reporting in audio decoder part
Kostya Shishkov [Sun, 18 Jun 2023 14:10:39 +0000 (16:10 +0200)]
improve error reporting in audio decoder part

2 years agoimprove error reporting in video part
Kostya Shishkov [Sun, 18 Jun 2023 14:05:17 +0000 (16:05 +0200)]
improve error reporting in video part

2 years agoimprove error reporting and handling
Kostya Shishkov [Sun, 18 Jun 2023 13:48:18 +0000 (15:48 +0200)]
improve error reporting and handling

2 years agotry to improve state handling in decoding threads
Kostya Shishkov [Sun, 18 Jun 2023 13:28:45 +0000 (15:28 +0200)]
try to improve state handling in decoding threads

2 years agovideoplayer: set initial timestamp when available
Kostya Shishkov [Sat, 17 Jun 2023 14:06:32 +0000 (16:06 +0200)]
videoplayer: set initial timestamp when available

2 years agoimprove OSD a bit
Kostya Shishkov [Fri, 16 Jun 2023 16:06:31 +0000 (18:06 +0200)]
improve OSD a bit

2 years agotry to preserve window position when playing multiple files
Kostya Shishkov [Fri, 16 Jun 2023 15:53:17 +0000 (17:53 +0200)]
try to preserve window position when playing multiple files

2 years agostop decoding on I/O error
Kostya Shishkov [Thu, 15 Jun 2023 16:48:38 +0000 (18:48 +0200)]
stop decoding on I/O error

2 years agoallow to (un)pause playback by right mouse button click
Kostya Shishkov [Thu, 15 Jun 2023 16:46:53 +0000 (18:46 +0200)]
allow to (un)pause playback by right mouse button click

2 years agoimplement displaying time on screen
Kostya Shishkov [Thu, 15 Jun 2023 16:35:25 +0000 (18:35 +0200)]
implement displaying time on screen

2 years agomake video player use multi-threaded decoders if possible
Kostya Shishkov [Wed, 14 Jun 2023 17:00:07 +0000 (19:00 +0200)]
make video player use multi-threaded decoders if possible

3 years agoignore underruns when decoding has ended
Kostya Shishkov [Mon, 14 Mar 2022 16:54:38 +0000 (17:54 +0100)]
ignore underruns when decoding has ended

4 years agosndplay: read ID3 padding
Kostya Shishkov [Sun, 9 Jan 2022 11:23:48 +0000 (12:23 +0100)]
sndplay: read ID3 padding

4 years agosndplay: fix small raw streams detection
Kostya Shishkov [Sun, 9 Jan 2022 11:23:06 +0000 (12:23 +0100)]
sndplay: fix small raw streams detection

4 years agoimprove ID3 handling
Kostya Shishkov [Tue, 23 Nov 2021 10:30:20 +0000 (11:30 +0100)]
improve ID3 handling