Commit Graph

192 Commits

Author SHA1 Message Date
Olivier Bouillet
cd42dd78c9
fix(tvos): fix tvOS build and sample (#3785)
* perf: ensure we do not provide callback to native if no callback provided from app

* chore: rework bufferConfig to make it more generic and reduce ReactExoplayerView code size

* chore: improve issue template

* fix(android): avoid video view flickering at playback startup

* chore: fix tvOS supported platform

* chore: fix tvOS build

* chore: update project tvos configuration
2024-05-20 13:09:58 +02:00
Olivier Bouillet
d716e1ab2a
chore(android): improve exoplayer logs (#3780)
* perf: ensure we do not provide callback to native if no callback provided from app

* chore: rework bufferConfig to make it more generic and reduce ReactExoplayerView code size

* chore: improve issue template

* fix(android): avoid video view flickering at playback startup

* fix: improve debuging display and enable it in the sample
2024-05-17 15:10:37 +02:00
Olivier Bouillet
8a57b127d0
chore(example/basic): upgrade sample react native version (#3776)
* perf: ensure we do not provide callback to native if no callback provided from app

* chore: rework bufferConfig to make it more generic and reduce ReactExoplayerView code size

* chore: improve issue template

* fix(android): avoid video view flickering at playback startup

* chore: upgrade sample react native version and dependancies
2024-05-17 15:09:42 +02:00
Krzysztof Moch
b3f08f6c99
fix(ios): call onLoadStart earlier (#3750) 2024-05-13 21:32:51 +02:00
Olivier Bouillet
e420418e8f
feat(android): make buffering strategy dynamic (#3756)
* chore: rework bufferConfig to make it more generic and reduce ReactExoplayerView code size
* feat: expose bufferingStrategy to app and change default behavior
rename disableBuffering undocumented prop to bufferingStrategy and document it.
before this change, default was 'dependingOnMemory'. It can trigger some unnecessary gc() call on android.
2024-05-11 22:02:04 +02:00
Krzysztof Moch
8ad4be459b
feat: add notification controls (#3723)
* feat(ios): add `showNotificationControls` prop

* feat(android): add `showNotificationControls` prop

* add docs

* feat!: add `metadata` property to srouce

This is breaking change for iOS/tvOS as we are moving some properties, but I believe that this will more readable and more user friendly

* chore(ios): remove UI blocking function

* code review changes for android

* update example

* fix readme

* fix typos

* update docs

* fix typo

* chore: improve sample metadata notification

* update codegen types

* rename properties

* update tvOS example

* reset metadata on source change

* update docs

---------

Co-authored-by: Olivier Bouillet <freeboub@gmail.com>
2024-05-07 12:30:57 +02:00
Olivier Bouillet
e05da4e9fe
feat(android): implement asset folder playback (#3733)
* fix(ts): onPlaybackRateChangeData was not correctly typed

* fix: ensure tracks are well displayed in the sample

* feat(android): implement playback from asset folder

* chore(android): fix linter

* chore: move sample mp4 from package assets to exemple assets
2024-05-06 21:51:17 +02:00
Olivier Bouillet
51e22abfe3
fix(ios): fix text track selection by index (#3728)
* fix(ts): onPlaybackRateChangeData was not correctly typed

* fix: ensure tracks are well displayed in the sample

* fix(ios): text tracks selection by index. regression due to codegen rework

* chore: make selection by index testable (need a small manual patch)

* chore(ios): fix linter warning
2024-05-04 15:20:59 +02:00
Krzysztof Moch
edbb3b60aa
chore(example/basic): update Podfile.lock (#3725) 2024-05-01 11:51:24 +02:00
lovegaoshi
ecc946d1c1
feat(android): cache (#3514)
* feat: android cache

* docs: bufferSize

* Revert "docs: bufferSize"

This reverts commit 09637b134e121b9ca3ffd78f2f5bc657319ed67a.

* fix: cacheSize name

* feat: singleton android cache

* fix: local cache resolve

* fix: lint

* docs: android cache

* chore: merge conflict

* fix: lint

* chore: useCache button

* chore: fix state in the sample

* fix: cache factory

* chore: update cacheSizeMB docs

---------

Co-authored-by: Olivier Bouillet <freeboub@gmail.com>
2024-05-01 11:20:34 +02:00
Olivier Bouillet
1a8295c8bf
fix(ios): ensure orientation is correct on iOS (#3719)
* fix(ts): onPlaybackRateChangeData was not correctly typed

* fix: ensure tracks are well displayed in the sample

* fix(iOS): ensure orientation is correctly reported

* chore: fix build
2024-04-26 10:02:13 +02:00
Olivier Bouillet
a1090a1639
chore(examples/basic): add startPosition sample (#3718)
* fix(ts): onPlaybackRateChangeData was not correctly typed

* fix: ensure tracks are well displayed in the sample

* fix: fix sample style & avoid changing channel onEnd when looping is enable

* chore: add startPosition in the sample

* chore: update startPosition for easier testing
2024-04-26 09:43:39 +02:00
Olivier Bouillet
2cd49b53fd
chore(examples/basic): minor sample fixes (#3717)
* fix(ts): onPlaybackRateChangeData was not correctly typed

* fix: ensure tracks are well displayed in the sample

* fix: fix sample style & avoid changing channel onEnd when looping is enable
2024-04-26 09:42:21 +02:00
Olivier Bouillet
818f92f654
chore(example/basic): bump react-native to 0.74.0 (#3702)
* fix(ts): onPlaybackRateChangeData was not correctly typed

* fix: ensure tracks are well displayed in the sample

* chore: update basic sample to official react native 0.74
2024-04-23 09:00:42 +02:00
Krzysztof Moch
efa1c52491
fix(ios): fix sideloading external subtitles (#3690)
* fix(ios): fix subtitles side loading

* update example

* Update examples/basic/src/VideoPlayer.tsx

Co-authored-by: Olivier Bouillet <62574056+freeboub@users.noreply.github.com>

* Update examples/basic/src/VideoPlayer.tsx

Co-authored-by: Olivier Bouillet <62574056+freeboub@users.noreply.github.com>

---------

Co-authored-by: Olivier Bouillet <62574056+freeboub@users.noreply.github.com>
2024-04-19 22:38:52 +02:00
Krzysztof Moch
64e3191f73
feat(android): allow to disable selected functionalities (#3681)
* feat(android): add possibility do disable some of functionalities

* create dump classes

* remove dump files when functionalities are enabled

* add docs

* enable all functionalities in example

* throw error when trying to use disabled functionality

* update docs
2024-04-16 14:23:19 +02:00
Olivier Bouillet
2285eba8f0
Feat/add rtsp support (#3677)
* feat(android) : add rtsp support
2024-04-16 10:41:39 +02:00
Olivier Bouillet
4c7719a3f5
fix: ensure tracks are available in sample (#3660)
* fix(ts): onPlaybackRateChangeData was not correctly typed

* fix: ensure tracks are well displayed in the sample
2024-04-07 19:02:39 +02:00
Krzysztof Moch
07f71c2fc4
fix(ios): apply PictureInPicture state on start (#3655) 2024-04-05 10:37:00 +02:00
Olivier Bouillet
d6941392e0
fix: ensure poster works as expected and add it to the sample (#3643)
* fix: ensure poster works as expected and add it to the sample
* chore: drop audioOnly property as not implemented on any platform
* fix(ios): do not save pause state before seeking
* fix(ts): onPlaybackRateChangeData was not correctly typed
2024-04-05 10:35:57 +02:00
Olivier Bouillet
2a858df8bc
fix(ts): onPlaybackRateChangeData was not correctly typed (#3651) 2024-04-04 14:45:39 +02:00
Krzysztof Moch
10b100de44
feat!(ios): remove native dependency promises (#3631) 2024-04-04 13:23:44 +02:00
Olivier Bouillet
182c953597
chore(typescript): fix external loaded textTracks typing and add one in sample (#3626) 2024-03-30 12:22:37 +01:00
Krzysztof Moch
baafda4b26
bump react native version (#3597)
chore(example): bump react native version
2024-03-22 14:08:55 +01:00
Gaëtan Kueny
bfb76e6d15
fix(android): keep screen on on fullscreen (#3563)
add KEEP_SCREEN_ON flag when video is fullscreen & playing to avoid phone to go off.
inspired by 2d8466128d
2024-03-22 09:17:00 +01:00
Olivier Bouillet
d5c8b514a1
fix(android): track selection parameter has change in last release. (#3594)
Move all setSelectedTrack to String instead of Dynamic

Co-authored-by: Olivier Bouillet <olivier@OrdinateOlivier.lan>
2024-03-22 07:58:09 +01:00
Olivier Bouillet
3d7444ab25
fix(android): ensure rate is never set to 0 (#3593)
* fix(android): ensure rate is never set to 0

---------

Co-authored-by: Olivier Bouillet <olivier@OrdinateOlivier.lan>
2024-03-21 15:40:25 +01:00
Olivier Bouillet
429fddf3b0
Fix(ios): fix real time issue when fast zapping (#3582)
* fix(ios): fix real time issue when doing fast zapping

* fix(ios): fix delay implementation (timing was not applied correctly)

* chore: fix random crash in sample

* chore: fix linter
2024-03-14 11:46:45 +01:00
Krzysztof Moch
41ac781412
feat: move require (local files) to source.uri (#3535)
* feat!: move require source to `uri`

* pass other source properties

* chore: update basic example

* chore: restore backward compatibility

* docs: update source via require

* fix types

* make docs build workflow pretty

* improve docs
2024-03-13 08:23:11 +01:00
Olivier Bouillet
7c4d19fa72
fix(ios): split licenseUrl and loadedLicenseUrl (#3578)
* fix(ios): split licenseUrl and loadedLicenseUrl
* fix(ios): fix drm license url used to provide the answer
2024-03-12 16:47:49 +01:00
coofzilla
6184c10acc
feat(android): add subtitle event (#3566)
* feat: add onCues method to get access to subtitle content
2024-03-11 13:50:19 +01:00
Krzysztof Moch
75c5c1cd93
chore(example): bump react-native version (#3569) 2024-03-07 16:00:00 +01:00
yungblud
b33e6df496
Fabric (New Architecture) codegen support (#3487)
* feat: implemented codegenConfig on package.json

* chore: moved directory location of Fabric component

* fix: typefix FabricExample

* chore: pod instaslled FabricExample iOS app

* feat: implemented codegen config on package.json

* feat: implemented codegen of specs/VideoNativeComponent

* chore: removed not using type Filter

* feat: removed unnecessary export on codegen tyepes

* Revert "feat: removed unnecessary export on codegen tyepes"

This reverts commit fc243b0ac5c565eda4886cd865c32ba4e812d7ff.

* refactor: fixed types on Video component and modified types with codegen types

* feat: modified codegenNativeComponent naming (RCTVideo)

* feat: pod installed example basic app

* feat: bump up react-native dev dependency version to 0.73.2 for supporting codegen array event params

* feat: support array param types on event callback function codegen types

* chore: pod installed ios basic example

* feat: modified source prop as optional type

* feat: add original src/VideoComponent.ts again

* Revert "feat: add original src/VideoComponent.ts again"

This reverts commit d63ac94e5330f7c7fb50374f65f8f3f4e0a225d7.

* feat: add original src/VideoComponent.ts again with original file name

* feat: git rm src/specs/VideoNativeComponent.ts

* feat: git mv VideoNativeComponent.ts

* feat: git mv src/specs/VideoNativeComponent.ts

* feat: git mv src/VideoNativeComponent.ts src/specs/VideoNativeComponent.ts

* feat: implemented array type handling on android JAVA

* feat: updated iOS requestHeaders parsing native

* feat: use safeGetArray on android, removed not using import too

* feat: temporary commit - reusing enum types for remaining docs types

* feat: implemented mixed type of SelectedTrack.value for JS layer
2024-03-07 11:35:17 +01:00
yungblud
d505de5910
fix: add missing node_modules paths to metro.config.js of basic example app (#3555) 2024-03-01 14:43:36 +01:00
coofzilla
253ffb5956
feat(ios): Add ios support for accessing WebVTT Subtitle Content (#3541)
* feature: add support to get subtitle content data

* refactor: return a string of the subtitles

Push the parsing/formatting to the consumer side.

* chore: add types for new subtitle feature

* chore: run swiftlint and swiftformat

* chore: add documentation for new onSubtitleTracks callback

* chore: added test uri; basic implementation of feature; hotfix onTextTracks

added optional chaining for `return x?.selected` because tracks that don't have a track selected either by default or manually will return undefined and this can cause an error.

* feat: rename onSubtitleTracks to onTextTrackDataChanged

Renamed the onSubtitleTracks event to onTextTrackDataChanged across the codebase to clearly indicate the callback's purpose: being called when the text track's data changes. This change is reflected in the events documentation, example usage in VideoPlayer.tsx, and the relevant iOS implementation files for consistency and clarity, in line with PR feedback.

* chore: omit target property

target could be confusing for users so we have removed it. using the delete operator instead of using {target,...eventData} as that would give an eslint error about unused vars.
2024-02-29 14:41:04 +01:00
Krzysztof Moch
b5ac4d6a11
chore(example): bump react-native version (#3466)
* chore(example): bump react-native version

* fix(ci): bump java version
2024-01-10 08:45:37 +01:00
Olivier Bouillet
22a2655dca
fix: ensure save doesn't crash on android (#3415)
Co-authored-by: olivier <olivier.bouillet@ifeelsmart.com>
2023-12-10 15:53:48 +01:00
Olivier Bouillet
fbb5654a8e
fix: revert drm type definition change (#3409)
And add drm content in android sample

Co-authored-by: olivier <olivier.bouillet@ifeelsmart.com>
2023-12-08 11:58:00 +01:00
Olivier Bouillet
472820123a
chore(sample): fix lint and ts sample & add ci jobs to build samples (#3365)
* chore: start fixing linter and tsc warning and errors
* chore(ci): add basic example build
* chore: allow to build with or without ads on android
* chore: fix job definition

---------

Co-authored-by: olivier <olivier.bouillet@ifeelsmart.com>
Co-authored-by: Krzysztof Moch <krzysmoch.programs@gmail.com>
2023-11-30 21:17:41 +01:00
Olivier Bouillet
fe89122524
fix(android): ads build and enable ads in android sample (#3376)
* fix: refactor androidx core version management

* chore: fix missing import rework for media3

* fix: enable IMA in sample

* chore: rename stub fie

* chore: code review, fix variable name

* chore: reorder imports

* chore: fix linking in sample

* chore: fix stub management

* chore: few cleans and ensure we don't use ima is disabled

---------

Co-authored-by: olivier <olivier.bouillet@ifeelsmart.com>
2023-11-24 13:17:13 +01:00
Olivier Bouillet
5beef383cb
fix(android): revert media3 update, back to 1.1.1 (#3369)
* fix: revert last media3 upgrade

---------

Co-authored-by: olivier <olivier.bouillet@ifeelsmart.com>
2023-11-22 15:03:57 +01:00
Krzysztof Moch
211c3c7d08
fix(example): remove dependency loop (#3353)
* chore(examples/basic): fix eslint config

* chore(examples/basic): change manual linking for react-native-video

* Update examples/basic/package.json

Co-authored-by: Olivier Bouillet <62574056+freeboub@users.noreply.github.com>

---------

Co-authored-by: Olivier Bouillet <62574056+freeboub@users.noreply.github.com>
2023-11-17 08:38:26 +01:00
Olivier Bouillet
dfac7a6ed3
Fix(ios): restore caching feature (#3341)
* chore: fix build issue

* fix: try to fix save typings

* chore: fix podspec

* fix: update integration guide for ios Caching

* fix: update sample to test the save function

---------

Co-authored-by: olivier <olivier.bouillet@ifeelsmart.com>
2023-11-13 21:36:16 +01:00
Olivier Bouillet
0f8467f51d
chore: rework typescript integration (#3304)
* create few new types
* Add missing api

---------

Co-authored-by: olivier <olivier.bouillet@ifeelsmart.com>
Co-authored-by: Krzysztof Moch <krzysmoch.programs@gmail.com>
2023-10-26 08:46:04 +02:00
Krzysztof Moch
45dcded576
fix(example): update metro config (#3291) 2023-10-12 10:36:15 +02:00
Olivier Bouillet
1f0137608a
feat(sample): merge ios and android samples (#3015)
* chore: split components
2023-10-07 23:14:09 +02:00
Konstantin
a855284d8d
feat(tvos): add custom image metadata option for tvos and add missing types for custom metadata properties (#3280)
* fix: add typescript types for custom metadata properties
* chore: add possibility to override image metadata of video playback

---------

Co-authored-by: Olivier Bouillet <62574056+freeboub@users.noreply.github.com>
2023-10-07 15:14:10 +02:00
Olivier Bouillet
4dd2319dee
Merge pull request #3263 from TheWidlarzGroup/chore/bump-example-react-native-version
chore(example/basic): bump react native version
2023-09-29 22:40:50 +02:00
KrzysztofMoch
a279a0cb3a chore(example/basic): bump react native version 2023-09-28 08:25:13 +02:00
KrzysztofMoch
04b52023f7 chore: update basic example 2023-09-25 08:30:08 +02:00
Olivier Bouillet
a0fa8312ba
Merge pull request #3216 from Duell10111/tvos-custom-playback-exerpience-fork
feat: allow customization of tvOS playback expierence
2023-09-13 21:27:37 +02:00
olivier
ddc87acf84 fix: implement lost presentFullscreenPlayer & dismissFullscreenPlayer
These apis has been removed during swift porting
2023-09-04 23:57:45 +02:00
Konstantin Späth
8bd5525d87 chore: use bunny example video again 2023-08-25 12:57:43 +02:00
Konstantin Späth
6cbc7cdc89 chore: add chapter images 2023-08-25 12:54:37 +02:00
Konstantin Späth
b225b0f800 chore: add custom titles, description and chapters 2023-08-25 12:54:37 +02:00
Konstantin Späth
f4851ba181 chore: add tvOS example project 2023-08-11 23:59:39 +02:00
yungblud
d81d59d00f feat: setup pod-install script with fabric enabled on Podfile 2023-07-19 16:47:56 +09:00
yungblud
0cd28cfdf1 feat: changed folder name to FabricExample 2023-07-19 16:36:52 +09:00
yungblud
805ccb9f47 feat: renamed with react-native-rename 2023-07-19 16:36:24 +09:00
yungblud
0ca348f4b5 feat: setup kotlin 2023-07-19 16:32:19 +09:00
yungblud
650b3a6a24 feat: setup android example app for fabric android 2023-07-19 16:31:47 +09:00
yungblud
7b6e76e2d0 feat: setup example app new arch 2023-07-19 16:31:27 +09:00
yungblud
0be9de98d8 feat: turn on newarch enabled on example app 2023-07-19 16:31:08 +09:00
jiyong1
bc4d2cacc5 example app change 2023-07-19 16:29:59 +09:00
jiyong1
2c2f812359 chore: update example package 2023-07-19 16:28:32 +09:00
yungblud
b2bf6f8333 chore: chore 2023-07-19 16:25:16 +09:00
yungblud
9e9c5ec01a feat: added example video 2023-07-19 16:24:06 +09:00
yungblud
4ddecbf42b feat: modified setup 2023-07-19 16:24:00 +09:00
yungblud
f5dc4992fb feat: modified setup 2023-07-19 16:23:53 +09:00
yungblud
fe4e2bfcd9 feat: Pod install 2023-07-19 16:23:45 +09:00
yungblud
f9fe2b0f38 feat: set path 2023-07-19 16:23:39 +09:00
yungblud
70bab9e69c feat: added setup for exapmle 2023-07-19 16:23:06 +09:00
yungblud
617bcb36a2 feat: added laftel video example app 2023-07-19 16:21:39 +09:00
olivier
4aca30d308 fix: disable Google IMA by default on ios. now shall be enabled in project podfile 2023-03-12 23:29:03 +01:00
Sunbreak
9baa1391ca fix: update debug JSBundle name & rootView component 2023-03-10 11:02:02 +08:00
olivier
a3b4b94f71 chore: fix build of andrpoid sample 2023-02-07 23:15:05 +01:00
olivier
57b4a76775 fix: add stub for IMA and option to enable it on demand 2023-02-07 23:14:50 +01:00
Olivier Bouillet
9bcca0c5be
Merge pull request #2806 from iFeelSmart/feat/add_new_events_on_tracks_changed
Feature(android): new events on tracks changed
2023-01-03 18:50:38 +01:00
olivier bouillet
2b6654b458 Merge branch 'master' of https://github.com/react-native-video/react-native-video into feat/add_new_events_on_tracks_changed
# Conflicts:
#	API.md
#	android/src/main/java/com/brentvatne/exoplayer/ReactExoplayerView.java
#	android/src/main/java/com/brentvatne/exoplayer/VideoEventEmitter.java
#	examples/basic/yarn.lock
2023-01-02 22:59:10 +01:00
olivier bouillet
11b9449692 chore: fix sample typing mismatch 2023-01-02 22:39:04 +01:00
olivier bouillet
58c719c275 fix: upgrade react-native version on basic sample 2022-12-17 16:35:37 +01:00
olivier bouillet
845f34fefd test: add fullscreen prop in sample 2022-11-03 08:26:31 +01:00
olivier bouillet
64e024d149 Merge branch 'master' of https://github.com/react-native-video/react-native-video into feat/add_new_events_on_tracks_changed
# Conflicts:
#	CHANGELOG.md
#	android/src/main/java/com/brentvatne/exoplayer/ReactExoplayerView.java
#	examples/basic/src/VideoPlayer.android.tsx
2022-10-29 15:20:36 +02:00
olivier bouillet
c197271889 chore: revert strange url in sample 2022-10-02 21:33:24 +02:00
olivier bouillet
f0a7a636c0 Merge branch 'master' of https://github.com/react-native-video/react-native-video into fix/ensure_player_stop_on_invalid_url
# Conflicts:
#	CHANGELOG.md
2022-10-02 21:25:26 +02:00
olivier bouillet
88ddd0702b demo: update sample to support invalid uri 2022-09-14 21:58:59 +02:00
olivier bouillet
5aa4d6697d Merge branch 'master' of https://github.com/react-native-video/react-native-video into feat/add_new_events_on_tracks_changed
# Conflicts:
#	android/src/main/java/com/brentvatne/exoplayer/ReactExoplayerView.java
2022-09-12 21:58:51 +02:00
olivier bouillet
747665b5a3 chore: update yarn.lock 2022-09-11 17:02:06 +02:00
olivier bouillet
568e1806a2 feat(sample): add an option to make controls testable in basic sample 2022-09-11 17:01:53 +02:00
olivier bouillet
710a5b4664 test(android): use new on*Tracks events in sample 2022-08-06 12:09:35 +02:00
olivier bouillet
8408664600 feat(android): add sample to test decoder capabilities 2022-06-23 22:54:47 +02:00
olivier bouillet
466d7c3170 chore: cleanup documentation 2022-06-15 22:51:04 +02:00
Tai Le Tuan
daf5e595ec
feat: upgrade exoplayer to v2.17.1 (#2498)
Describe the changes
Upgrade ExoPlayer to version 2.17.1

Provide an example of how to test the change
Tested with a forked of react-native-video-test

* Update exoplayer to v2.15.1

* feat: upgrade ExoPlayer to version 2.17.1

* chore: update CHANGELOG

* remove ExoPlayerFullscreenVideoActivity

* Fix build issues

* Fix build & runtime issues

Co-authored-by: Eran Hammer <eran@hammer.io>
Co-authored-by: Armands Malejev <armands.malejevs@gmail.com>
2022-06-15 10:24:55 -07:00
olivier bouillet
fd63607221 chore(android): update yarn.lock 2022-06-10 23:58:30 +02:00
Eran Hammer
3666fd8d42
Merge pull request #2710 from iFeelSmart/chore/enable_sample_on_androidtv
test(android): enable app on androidtv
2022-06-05 10:43:47 -07:00
olivier bouillet
99ba90cc09 test(android): enable app on androidtv 2022-06-03 22:02:31 +02:00
olivier bouillet
556192da1d test(android): add additional sample streams 2022-06-03 21:51:53 +02:00
Nick Fujita
68b9db4d11
iOS Swift Conversion (#2527)
Converts iOS implementation from Objective-c to Swift

# During the conversion process some updates to the code structure were also made
- Modularize codebase from single file to smaller focused files
- Untangled large nested IF statements
- Added more null checks, since Swift is more strict with null pointers
- Added property to allow for decoding of local video sources with self contained key for offline playback
- Updates example apps to test react-native 0.63.4 and uses auto native dependency imports for android and ios
2022-05-19 22:29:25 +09:00
olivier bouillet
3d40461a32 fix: improve basic player
- allow to set multiple video to to play and zap to next channel
- display toast on error
- add resizing test
- add a seek bar
- add text and audio tracks picker
- add loader during buffering
- add repeat mode test
- add toggle fullscreen
2022-04-26 23:00:43 +02:00
olivier bouillet
603956b893 chore(sample): move source in source folder 2022-04-26 19:19:41 +02:00