Accepting request 1071906 from home:munix9

- Update to version 2.0

Requires newer gcc on Leap.

OBS-URL: https://build.opensuse.org/request/show/1071906
OBS-URL: https://build.opensuse.org/package/show/hardware/scrcpy?expand=0&rev=78
This commit is contained in:
Duarte Pousa 2023-03-17 17:40:36 +00:00 committed by Git OBS Bridge
parent 295189628e
commit f8d5ea0f93
9 changed files with 246 additions and 13 deletions

2
.gitattributes vendored
View File

@ -22,4 +22,4 @@
*.zip filter=lfs diff=lfs merge=lfs -text
*.zst filter=lfs diff=lfs merge=lfs -text
## Specific LFS patterns
scrcpy-server-v1.25 filter=lfs diff=lfs merge=lfs -text
scrcpy-server-v2.0 filter=lfs diff=lfs merge=lfs -text

View File

@ -5,7 +5,7 @@
<param name="versionformat">@PARENT_TAG@</param>
<param name="versionrewrite-pattern">v(.*)</param>
<param name="changesgenerate">enable</param>
<param name="revision">v1.25</param>
<param name="revision">v2.0</param>
</service>
<service name="recompress" mode="disabled">
<param name="file">*.tar</param>

View File

@ -1,4 +1,4 @@
<servicedata>
<service name="tar_scm">
<param name="url">https://github.com/Genymobile/scrcpy.git</param>
<param name="changesrevision">fe21158c2023017df39ee7ecc6462579a1f3fe45</param></service></servicedata>
<param name="changesrevision">f1b2d6bbbb5afd1f95913a49b94eda7cfb85226b</param></service></servicedata>

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:a8e4a05e9b847740c08dbd0c58ab3c30ea288ad1ff3a2664c9db0bd809b66c8d
size 288232

3
scrcpy-2.0.tar.xz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:bcfe119893a03911209012d89700ef18d19a2fb4f390d818fd10691ae9786b43
size 309880

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:ce0306c7bbd06ae72f6d06f7ec0ee33774995a65de71e0a83813ecb67aec9bdb
size 42151

3
scrcpy-server-v2.0 Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:9e241615f578cd690bb43311000debdecf6a9c50a7082b001952f18f6f21ddc2
size 52867

View File

@ -1,3 +1,228 @@
-------------------------------------------------------------------
Sun Mar 12 06:41:21 UTC 2023 - munix9@googlemail.com
- Update to version 2.0:
* Bump version to 2.0
* Rework README and documentation
* Happy new year 2023!
* Document audio player
* Apply new compensation only if it changed
* Disable clock drift compensation for tiny values
* Fail on deprecated options
* Remove dead code about the deprecated -F option
* Remove deprecated option --render-expired-frames
* Upgrade platform-tools (34.0.1) for Windows
* Upgrade SDL (2.26.4) for Windows
* Remove unused IOException
* Compute buffering and compensation without lock
* Do not read avg_buffering from the player thread
* Simplify bytebuf naming
* Add audio sample ring-buffer
* Define the audio output buffer in milliseconds
* Pass video size as codec metadata
* Report errors on screen event error
* Rename sendCodecId to sendCodecMeta
* Copy codec parameters from context
* Simplify recorder
* Create recorder streams from packet sinks ops
* Pass AVCodecContext to packet sinks
* Enable log signaling buffering threshold exceeded
* Stop and join sc_file_pusher only if initialized
* Initialize interrupted field explicitly
* Decrease recorder thread priority
* Increase audio thread priority
* Add thread priority API
* Print info logs to stdout
* Print server logs and newline in one call
* Warn on ignored audio options
* Add --audio-codec=raw option
* Add raw audio recorder
* Extract async processor interface
* Extract audio capture
* Stop on decoder frame push error
* Add --audio-buffer
* Add compat support for FFmpeg < 5.1
* Add audio player
* Optionally do not delay the first frame
* Accept clock estimation with a single point
* Remove anonymous struct in delay buffer
* Use delay buffer as a frame source/sink
* Use frame source trait in decoder
* Introduce frame source trait
* Use packet source trait in demuxer
* Introduce packet source trait
* Extract sc_delay_buffer
* Fix buffering pts conversion
* Report video buffer downstream errors
* Stop the video buffer on error
* Fix possible race condition on video_buffer end
* Remove sc_queue
* Remove cbuf
* Use VecDeque in aoa_hid
* Use VecDeque in file_pusher
* Use VecDeque in controller
* Use VecDeque in video_buffer
* Use VecDeque in recorder
* Introduce VecDeque
* Add sc_allocarray() util
* Use reallocarray() in sc_vector
* Add compat for reallocarray()
* Call avcodec_receive_frame() in a loop
* Add --require-audio
* Add workaround to capture audio on Android 11
* Add two-step write feature to bytebuf
* Introduce bytebuf util
* Pass AVCodecContext to frame sinks
* Add an audio decoder
* Give a name to decoder instances
* Rename decoder to video_decoder
* Log display sizes in display list
* Add --list-displays
* Move log message helpers to LogUtils
* Quit on audio configuration failure
* Add --list-encoders
* Move await_for_server() logs
* Add --audio-encoder
* Extract unknown encoder error message
* Add --audio-codec-options
* Extract application of codec options
* Add support for AAC audio codec
* Add --audio-codec
* Add --audio-bit-rate
* Disable MethodLength checkstyle on createOptions()
* Rename --encoder to --video-encoder
* Rename --codec-options to --video-codec-options
* Rename --bit-rate to --video-bit-rate
* Rename --codec to --video-codec
* Remove default bit-rate on client side
* Record at least video packets on stop
* Disable audio before Android 11
* Disable audio on initialization error
* Add audio recording support
* Rename video-specific variables in recorder
* Do not merge config audio packets
* Add an audio demuxer
* Force --no-audio if no display and no recording
* Give a name to demuxer instances
* Rename demuxer to video_demuxer
* Extract OPUS extradata
* Use a streamer to send the audio stream
* Encode recorded audio on the device
* Make streamer more generic
* Capture device audio
* Add a new socket for audio stream
* Add --no-audio option
* Use FakeContext for Application instance
* Use shell package name for workarounds
* Use ROOT_UID from FakeContext
* Use PACKAGE_NAME from FakeContext
* Use AttributionSource from FakeContext
* Add a fake Android Context
* Improve error message for unknown encoder
* Rename "codec" variable to "mediaCodec"
* Make streamer independent of codec type
* Pass all args to ScreenEncoder constructor
* Move screen encoder initialization
* Write streamer header from ScreenEncoder
* Use VideoStreamer directly from ScreenEncoder
* Simplify error handling on socket creation
* Reorder initialization
* Refactor recorder logic
* Move last packet recording
* Add start() function for recorder
* Open recording file from the recorder thread
* Inline packet_sink impl in recorder
* Initialize recorder fields from init()
* Report recorder errors
* Move previous packet to a local variable
* Move pts_origin to a local variable
* Change PTS origin type from uint64_t to int64_t
* Fix --encoder documentation
* Do not print stacktraces when unnecessary
* Fix --no-clipboard-autosync bash completion
* Split server stop() and join()
* Print FFmpeg logs
* Move FFmpeg callback initialization
* Upgrade FFmpeg custom builds for Windows
* Upgrade FFmpeg (6.0) for Windows
* Use minimal prebuilt FFmpeg for Windows
* Simplify libusb prebuilt scripts
* Silence lint warning about constant in API 29
* Remove manifest package name
* Upgrade gradle build tools to 7.4.0
* Fix useless garbage initialization
* Fix MIN/MAX macros
* Initialize server->serial in all cases
* Fix error message on icon loading failure
* Do not use avformat network
* Accept Windows Sockets from version 1.1
* Fix WSAStartup() error check on Windows
* Fix --bit-rate option in bash completion script
* Add auto-completion for --codec option
* Use enum for long options constants
* Initialize mouse_input_mode explicitly
* Accept muxing AV1 into MP4 container
* Fix inconsistent quotes
* Suggest commands with an explicit '='
* Move finally-block to fix deadlock on stop
* Remove unnecessary error logs
* Document default video codec
* Fix command-line help typo
* Prefix receiver by sc_
* Fix demuxer error message
* Log non-EPIPE I/O exceptions
* Rename 'uid' to 'scid'
* Extract packet merging
* Remove unused parser
* Log component stopped in finally clause
* Join all threads before end of main
* Properly report demuxer errors
* Prefix UI events constants by SC_
* Split codec_id reading
* Fix error return value
* Fix demuxer error message
* Remove unused codec context
* Remove unused constant
* Add Fedora instructions in README
* Set power mode on all physical displays
* Add support for AV1
* Add support for H265
* Add option to select video codec
* Simplify server info initialization
* Extract video streaming to a separate class
* Move variable assignment
* Compute relative PTS on the client-side
* Improve workarounds call comments
* Move Workarounds call
* Do not expose controller threads
* Fix manpage formatting
* Inject additional ACTION_BUTTON_* events for mouse
* Fix mouse pointer state update
* Forward action button to device
* Retry on spurious error
* Extract retry handling
* Move local variables declarations
* Remove useless setSize() method
* Remove useless configure() method
* Keep the same MediaCodec instance across sessions
* Remove useless destroyDisplay() method
* Keep the same display binder across sessions
* Terminate loop explicitly on interrupted
* Use Java lambdas where possible
* Support Java lambdas in build_without_gradle.sh
* Add missing final modifiers
* Use try-with-resources
* Use random name for device socket
* Add random util
* Add jrand48()/nrand48() compat functions
* Use separate gen dir to build without gradle
* Remove "on Linux" in FAQ
* Add FAQ section about HID/OTG on Windows
* Avoid unnecessary copy on config packets demuxing
* Revert "Remove continuous resizing workaround for Windows"
* Use "meson setup" from install_release.sh
* Update links to v1.25
-------------------------------------------------------------------
Fri Dec 23 17:47:47 UTC 2022 - munix9@googlemail.com

View File

@ -1,7 +1,7 @@
#
# spec file for package scrcpy
#
# Copyright (c) 2022 SUSE LLC
# Copyright (c) 2023 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@ -17,7 +17,7 @@
Name: scrcpy
Version: 1.25
Version: 2.0
Release: 0
Summary: Display and control your Android device
License: Apache-2.0
@ -27,7 +27,6 @@ Source0: %{name}-%{version}.tar.xz
Source1: https://github.com/Genymobile/scrcpy/releases/download/v%{version}/scrcpy-server-v%{version}
# PATCH-FIX-OPENSUSE fix-desktop-file-exec.patch gh#Genymobile/scrcpy#3633 munix9@googlemail.com -- Fix "E: invalid-desktopfile"
Patch0: fix-desktop-file-exec.patch
BuildRequires: gcc
BuildRequires: hicolor-icon-theme
BuildRequires: meson >= 0.48
BuildRequires: pkgconfig
@ -38,6 +37,11 @@ BuildRequires: pkgconfig(libavformat)
BuildRequires: pkgconfig(libusb-1.0)
BuildRequires: pkgconfig(sdl2)
Recommends: android-tools
%if 0%{?suse_version} <= 1500
BuildRequires: gcc11
%else
BuildRequires: gcc
%endif
%description
This application provides display and control of Android devices
@ -69,6 +73,10 @@ Optional dependency offering zsh completion for scrcpy.
%autosetup -p1
%build
%if 0%{?suse_version} <= 1500
export CC=gcc-11
%endif
%meson -Dprebuilt_server='%{SOURCE1}'
%meson_build
@ -80,7 +88,7 @@ Optional dependency offering zsh completion for scrcpy.
%files
%license LICENSE
%doc README.md DEVELOP.md FAQ.md
%doc README.md FAQ.md
%{_bindir}/%{name}
%{_datadir}/%{name}
%{_mandir}/man1/%{name}.1%{?ext_man}