Aim make a new gst-plugins-ptz
and gst-plugins-speakertrack
repositories which contain the history of the modules which is currently found inside https://github.com/timvideos/gst-plugins-bad and https://github.com/timvideos/gst-switch
Then to merge the gst-plugins template and make them compile as stand alone modules which can be installed in the same way gst-plugins-dvswitch can.
Current value of the gst-switch/temp/temp file;
git filter-branch -f --prune-empty --index-filter \
'git rm --cached -r -q -- . ; git reset -q $GIT_COMMIT -- tests/examples/speakertrack ext/speakertrack tool/gst-switch gst/tcpfunnel' -- --all
https://github.com/timvideos/gst-plugins-bad/tree/plugins-template-ptz <-- template for new plugins repos...
Attempts at getting the filter branch right;
- https://github.com/timvideos/gst-plugins-bad/tree/filter-attempt-1
- https://github.com/timvideos/gst-plugins-bad/tree/filter-attempt-2
- https://github.com/timvideos/gst-plugins-bad/tree/filter-attempt-3
- https://github.com/timvideos/gst-plugins-bad/tree/filter-attempt-4
I think https://github.com/kohsuke/git-filter-branch-tools/blob/master/git-filter-branch-magic.txt might be useful?
These were the commands I ran to try and do this;
gst-switch]' cd gst-switch/' -> 0
gst-switch]' mkdir gst-plugins-ptz' -> 0
gst-switch]' mkdir gst-plugins-speakertrack' -> 0
gst-switch/gst-plugins-ptz]' cd gst-plugins-ptz/' -> 0
gst-switch/gst-plugins-ptz]' git init' -> 0
gst-switch/gst-plugins-ptz]' cp ../../gst-template/gst-plugin/* .' -> 1
gst-switch/gst-plugins-ptz]' cp -aR ../../gst-template/gst-plugin/* .' -> 0
gst-switch/gst-plugins-ptz]' find' -> 0
gst-switch/gst-plugins-ptz/src]' cd src/' -> 0
gst-switch/gst-plugins-ptz/src]' rm gstaudiofilter.c gstplugin.c gstplugin.h gsttransform.c gsttransform.h' -> 0
gst-switch/gst-plugins-ptz]' cd ..' -> 0
gst-switch/gst-plugins-ptz]' cd ..' -> 0
gst-switch/gst-plugins-ptz]' cp -aR ../../gst-template/gst-plugin/.gitignore .' -> 0
gst-switch/gst-plugins-ptz]' git add .gitignore ' -> 0
gst-switch/gst-plugins-ptz]' vi AUTHORS ' -> 0
gst-switch/gst-plugins-ptz]' more COPYING ' -> 0
gst-switch/gst-plugins-ptz]' cp -aR ../../gst-template/gst-plugin/AUTHORS .' -> 0
gst-switch/gst-plugins-ptz]' git status' -> 0
gst-switch/gst-plugins-ptz]' git add -R .' -> 129
gst-switch/gst-plugins-ptz]' git add -r .' -> 129
gst-switch/gst-plugins-ptz]' find' -> 0
gst-switch/gst-plugins-ptz]' git add src/Makefile.am ' -> 0
gst-switch/gst-plugins-ptz]' git status' -> 0
gst-switch/gst-plugins-ptz]' git add AUTHORS COPYING ChangeLog Makefile.am NEWS README autogen.sh configure.ac' -> 0
gst-switch/gst-plugins-ptz]' ifconfig' -> 0
gst-switch]' cd ..' -> 0
gst-switch/gst-plugins-ptz]' git commit -a' -> 0
gst-switch]' cd ..' -> 0
gst-switch]' git clone git+ssh://github.com/timvideos/gst-plugins-bad.git' -> 0
gst-switch/gst-plugins-bad]' cd gst-plugins-bad' -> 0
gst-switch/gst-plugins-bad/gst]' cd gst' -> 0
gst-switch/gst-plugins-bad]' cd ..' -> 0
gst-switch/gst-plugins-bad/common]' cd common/' -> 0
gst-switch/gst-plugins-bad]' cd ..' -> 0
gst-switch/gst-plugins-bad/gst-libs]' cd gst-libs/' -> 0
gst-switch/gst-plugins-bad/gst-libs/gst]' cd gst/' -> 0
gst-switch/gst-plugins-bad/gst-libs]' cd ..' -> 0
gst-switch/gst-plugins-bad]' cd ..' -> 0
gst-switch/gst-plugins-bad/gst]' cd gst' -> 0
gst-switch/gst-plugins-bad/gst]' *find -name speaker' -> 0
gst-switch/gst-plugins-bad]' cd ..' -> 0
gst-switch/gst-plugins-bad]' find -name speakertrack' -> 0
gst-switch/gst-plugins-bad]' gitk' -> 148
gst-switch/gst-plugins-bad]' bg' -> 0
gst-switch/gst-plugins-bad/gst]' cd gst/' -> 0
gst-switch/gst-plugins-bad]' cd ..' -> 0
gst-switch/gst-plugins-bad]' sl' -> 127
gst-switch/gst-plugins-bad]' find -name speakertrack' -> 0
gst-switch/gst-plugins-bad/ext]' cd ext/' -> 0
gst-switch/gst-plugins-bad/ext/speakertrack]' cd speakertrack/' -> 0
gst-switch/gst-plugins-bad/ext]' cd ..' -> 0
gst-switch/gst-plugins-bad/ext/speakertrack]' cd speakertrack/' -> 0
gst-switch/gst-plugins-bad/ext/speakertrack]' git log' -> 141
gst-switch/gst-plugins-bad/ext]' cd ..' -> 0
gst-switch/gst-plugins-bad]' git filter-branch --subdirectory-filter ext/speakertrack -- --all' -> 0
gst-switch/gst-plugins-bad]' git checkout d220413875d2901be5351de94254281ea5aaee34' -> 0
gst-switch/gst-plugins-bad]' git branch speaker-track-initial' -> 0
gst-switch/gst-plugins-bad]' git checkout speaker-track-initial ' -> 0
gst-switch/gst-plugins-bad]' git status' -> 0
gst-switch/gst-plugins-bad]' git diff HEAD~1' -> 0
gst-switch/gst-plugins-bad]' git branch' -> 0
gst-switch/gst-plugins-bad]' git checkout 000000000000000000000000000' -> 1
gst-switch/gst-plugins-bad]' git checkout --orphan speakertrack-blah' -> 0
gst-switch/gst-plugins-bad]' git cherry-pick d220413875d2901be5351de94254281ea5aaee34' -> 128
gst-switch/gst-plugins-bad]' git status' -> 0
gst-switch/gst-plugins-bad]' git reset --hard' -> 0
gst-switch/gst-plugins-bad]' git status' -> 0
gst-switch/gst-plugins-bad]' git cherry-pick d220413875d2901be5351de94254281ea5aaee34' -> 1
gst-switch/gst-plugins-bad]' git status' -> 0
gst-switch/gst-plugins-bad]' git add tests/examples/opencv/gstfacerec_test.c' -> 0
gst-switch/gst-plugins-bad]' git status' -> 0
gst-switch/gst-plugins-bad]' git rm .gitignore' -> 0
gst-switch/gst-plugins-bad]' git rm tests/examples/opencv/Makefile.am' -> 0
gst-switch/gst-plugins-bad]' git status' -> 0
gst-switch/gst-plugins-bad]' git commit' -> 0
gst-switch/gst-plugins-bad]' git cherry-pick f254840f7fc9e8f2fd22c7b0ec65ca8f807abf5a' -> 1
gst-switch/gst-plugins-bad]' git status' -> 0
gst-switch/gst-plugins-bad]' git rm configure.ac ext/Makefile.am' -> 0
gst-switch/gst-plugins-bad]' git status' -> 0
gst-switch/gst-plugins-bad]' git commit' -> 0
gst-switch/gst-plugins-bad]' dmesg' -> 0
gst-switch/gst-plugins-bad]' vi temp' -> 0
gst-switch/gst-plugins-bad]' #git filter-branch --subdirectory-filter ext/speakertrack -- --all' -> 0
gst-switch/gst-plugins-bad]' man git-filter-branch' -> 0
gst-switch/gst-plugins-bad]' sh temp ' -> 0
gst-switch/gst-plugins-bad]' gitk' -> 148
gst-switch/gst-plugins-bad]' *bg ' -> 0
gst-switch/gst-plugins-bad]' fg' -> 0
gst-switch/gst-plugins-bad]' gitk --all' -> 0
gst-switch/gst-plugins-bad]' more temp ' -> 0
gst-switch]' cd ..' -> 0
gst-switch]' git clone git+ssh://github.com/timvideos/gst-plugins-bad.git gst-plugins-bad-2' -> 0
gst-switch/gst-plugins-bad-2]' cd gst-plugins-bad-2' -> 0
gst-switch/gst-plugins-bad-2]' man git-filter-branch ' -> 0
gst-switch/gst-plugins-bad-2]' git status' -> 0
gst-switch]' cd ..' -> 0
gst-switch/gst-plugins-bad]' cd gst-plugins-bad' -> 0
gst-switch/gst-plugins-bad]' git checkout speaker-track-initial ' -> 0
gst-switch/gst-plugins-bad]' git diff HEAD~1' -> 0
gst-switch/gst-plugins-bad]' gitk' -> 148
gst-switch/gst-plugins-bad]' bg' -> 0
gst-switch]' cd ..' -> 0
gst-switch/gst-plugins-bad-2]' cd gst-plugins-bad-2/' -> 0
gst-switch/gst-plugins-bad-2]' git checkout speakertrack' -> 0
gst-switch/gst-plugins-bad-2]' gitk' -> 148
gst-switch/gst-plugins-bad-2]' b' -> 127
gst-switch/gst-plugins-bad-2]' bg' -> 0
gst-switch]' cd ..' -> 0
gst-switch]' mkdir temp' -> 0
gst-switch/temp]' cd temp/' -> 0
gst-switch/temp]' git init' -> 0
gst-switch/temp]' mkdir a' -> 0
gst-switch/temp]' mkdir b' -> 0
gst-switch/temp]' touch a/a' -> 0
gst-switch/temp]' touch b/b' -> 0
gst-switch/temp]' git add a/a' -> 0
gst-switch/temp]' git add b/b' -> 0
gst-switch/temp]' git commit' -> 0
gst-switch/temp]' vi a/a' -> 0
gst-switch/temp]' git commit -a' -> 0
gst-switch/temp]' vi b/b' -> 0
gst-switch/temp]' git add b/b' -> 0
gst-switch/temp]' git status' -> 0
gst-switch/temp]' git commit' -> 0
gst-switch/temp]' #wget https://launchpad.net/ubuntu/trusty/+source/gst-python1.0/1.2.0-1/+files/gst-python1.0_1.2.0-1.dsc https://launchpad.net/ubuntu/trusty/+source/gst-python1.0/1.2.0-1/+files/gst-python1.0_1.2.0.orig.tar.gz https://launchpad.net/ubuntu/trusty/+source/gst-python1.0/1.2.0-1/+files/gst-python1.0_1.2.0-1.debian.tar.xz' -> 0
gst-switch/temp]' git filter-branch -f --prune-empty --index-filter 'git rm --cached -r -q -- . ; git reset -q $GIT_COMMIT -- a' -- --all' -> 0
gst-switch/temp]' gitk' -> 0
gst-switch/gst-plugins-bad-2]' git filter-branch -f --prune-empty --index-filter 'git rm --cached -r -q -- . ; git reset -q $GIT_COMMIT -- tests/examples/speakertrack ext/speakertrack tool/gst-switch gst/tcpfunnel' -- --all' -> 0
gst-switch/gst-plugins-bad-2]' gitk' -> 148
gst-switch/gst-plugins-bad-2]' rm -rf .git/refs/original' -> 0
gst-switch/gst-plugins-bad-2]' bg' -> 0
gst-switch]' cd ..' -> 0
gst-switch]' git clone fbbce6e5fd52ee43418277ccb53d67f5370a8fdb' -> 128
gst-switch/gst-plugins-bad-2]' ping6 www.google.com' -> 0
gst-switch]' cd ..' -> 0
gst-switch/gst-plugins-bad-2]' cd gst-plugins-bad-2/' -> 0
gst-switch]' cd ..' -> 0
gst-switch]' git clone git+ssh://github.com/timvideos/gst-plugins-bad.git gst-plugins-bad-3' -> 0
gst-switch/gst-plugins-bad]' cd gst-plugins-bad' -> 0
gst-switch]' cd ..' -> 0
gst-switch/gst-plugins-bad-3]' git filter-branch -f --prune-empty --index-filter 'git rm --cached -r -q -- . ; git reset -q $GIT_COMMIT -- tests/examples/speakertrack ext/speakertrack tool/gst-switch gst/tcpfunnel' -- --all' -> 0
gst-switch]' #git clone https://github.com/cliffordwolf/yosys-tests.git' -> 0
gst-switch/gst-plugins-bad-2]' cd gst-plugins-bad-2/' -> 0
gst-switch/gst-plugins-bad-2]' gitk' -> 0
gst-switch/gst-plugins-bad-2]' rm -rf .git/refs/original' -> 0
gst-switch/gst-plugins-bad-2]' gitk' -> 148
gst-switch/gst-plugins-bad-2]' bg' -> 0
gst-switch/gst-plugins-bad-2]' vi .git/refs/remotes/origin/speakertrack' -> 0
gst-switch/gst-plugins-bad-2]' #rm .git/refs/remotes/origin/speakertrack' -> 0
gst-switch/gst-plugins-bad-2]' gitk' -> 148
gst-switch/gst-plugins-bad-2]' bg' -> 0
gst-switch/gst-plugins-bad-2]' find speakertrack_with_27b0086e4a06616b790e387413c5874108d0d1e1' -> 1
gst-switch/gst-plugins-bad-2]' find -name speakertrack_with_27b0086e4a06616b790e387413c5874108d0d1e1' -> 0
gst-switch/gst-plugins-bad-2]' rm ./.git/logs/refs/remotes/origin/speakertrack_with_27b0086e4a06616b790e387413c5874108d0d1e1' -> 0
gst-switch/gst-plugins-bad-2]' find -name speakertrack_with_27b0086e4a06616b790e387413c5874108d0d1e1' -> 0
gst-switch/gst-plugins-bad-2]' gitk' -> 148
gst-switch/gst-plugins-bad-2]' bg' -> 0
gst-switch/gst-plugins-bad-2]' #rm .git/refs/remotes/origin/' -> 0
gst-switch/gst-plugins-bad-2]' git reflog' -> 0
gst-switch/gst-plugins-bad-2]' find .git/refs/' -> 0
gst-switch/gst-plugins-bad-2]' gitk' -> 148
gst-switch/gst-plugins-bad-2/.git]' cd .git/' -> 0
gst-switch/gst-plugins-bad-2/.git]' find' -> 0
gst-switch/gst-plugins-bad-2/.git]' find | grep speaker' -> 0
gst-switch/gst-plugins-bad-2]' cd ..' -> 0
gst-switch/gst-plugins-bad-2]' git branch' -> 0
gst-switch/gst-plugins-bad-2]' git branch --all' -> 0
gst-switch/gst-plugins-bad-2]' strace git branch --all | grep with' -> 0
gst-switch/gst-plugins-bad-2]' strace git branch --all 2>&1 | grep with' -> 0
gst-switch/gst-plugins-bad-2]' vi .git/packed-refs ' -> 0
gst-switch/gst-plugins-bad-2]' bg' -> 0
gst-switch/gst-plugins-bad-2]' git gc' -> 0
gst-switch]' cd ..' -> 0
gst-switch]' cd gst-plugins-bad-1' -> 1
gst-switch/gst-plugins-bad]' cd gst-plugins-bad' -> 0
gst-switch/gst-plugins-bad]' gitk' -> 148
gst-switch/gst-plugins-bad]' bg' -> 0
gst-switch]' cd ..' -> 0
gst-switch/gst-plugins-bad-3]' cd gst-plugins-bad-3/' -> 0
gst-switch/gst-plugins-bad-3]' gitk' -> 148
gst-switch/gst-plugins-bad-2]' git diff f0f75c43b1c030e0d9609666a49e3ec5d9fdce5a' -> 0
gst-switch/gst-plugins-bad-2]' git remote add temp ../gst-plugins-bad/.git' -> 0
gst-switch/gst-plugins-bad-2]' git fetch temp speackertrack-blah' -> 128
gst-switch/gst-plugins-bad-2]' git fetch temp speakertrack-blah' -> 0
gst-switch/gst-plugins-bad-2]' rm .git/packed-refs ' -> 0
gst-switch/gst-plugins-bad-2]' vi .git/packed-refs ' -> 0
gst-switch/gst-plugins-bad-2]' git rebase --onto master 90e4e3b2ac539389d9b4b6417ed998bc2e391526..HEAD' -> 1
gst-switch/gst-plugins-bad-2]' git rebase --onto master 90e4e3b2ac539389d9b4b6417ed998bc2e391526 HEAD --interactive' -> 0
gst-switch/gst-plugins-bad-2]' git status' -> 0
gst-switch/gst-plugins-bad-2]' git branch' -> 0
gst-switch/gst-plugins-bad-2]' git branch temp' -> 0
gst-switch/gst-plugins-bad-2]' git rebase --onto master f0f75c43b1c030e0d9609666a49e3ec5d9fdce5a --interactive' -> 1
gst-switch/gst-plugins-bad-2]' #git rebase --onto master f0f75c43b1c030e0d9609666a49e3ec5d9fdce5a --interactive' -> 1
gst-switch/gst-plugins-bad-2]' #git rebase --onto master --interactive' -> 0
gst-switch/gst-plugins-bad-2]' git rebase --onto master --interactive' -> 1
gst-switch/gst-plugins-bad-2]' git rebase --abort' -> 0
gst-switch/gst-plugins-bad-2]' git rebase --onto master --interactive' -> 1
gst-switch/gst-plugins-bad-2]' git rebase --onto master 000000000000000000000000000 --interactive' -> 1
gst-switch/gst-plugins-bad-2]' git rebase --onto master ca6758350ad0fbb0e1398f84f17adc886167a7e3 --interactive' -> 1
gst-switch/gst-plugins-bad-2]' git status' -> 0
gst-switch/gst-plugins-bad-2]' git rebase --abort' -> 0
gst-switch/gst-plugins-bad-2]' git rebase --interactive' -> 1
gst-switch/gst-plugins-bad-2]' git rebase --abort' -> 1
gst-switch/gst-plugins-bad-2]' git rebase --interactive --onto ca6758350ad0fbb0e1398f84f17adc886167a7e3' -> 1
gst-switch/gst-plugins-bad-2]' git rebase --interactive --onto ca6758350ad0fbb0e1398f84f17adc886167a7e3 ca6758350ad0fbb0e1398f84f17adc886167a7e3' -> 1
gst-switch/gst-plugins-bad-2]' git rebase --abort' -> 0
gst-switch/gst-plugins-bad-2]' git rebase --interactive --onto ca6758350ad0fbb0e1398f84f17adc886167a7e3 ca6758350ad0fbb0e1398f84f17adc886167a7e3' -> 1
gst-switch/gst-plugins-bad-2]' git commit --allow-empty' -> 0
gst-switch/gst-plugins-bad-2]' git rebase --continue' -> 1
gst-switch/gst-plugins-bad-2]' #git add ext/speakertrack/Makefile.am' -> 0
gst-switch/gst-plugins-bad-2]' git rebase --abort' -> 0
gst-switch/gst-plugins-bad-2]' git commit --amend -a' -> 0
gst-switch/gst-plugins-bad-2]' git commit --help' -> 0
gst-switch/gst-plugins-bad-2]' git rebase --onto ca6758350ad0fbb0e1398f84f17adc886167a7e3' -> 1
gst-switch/gst-plugins-bad-2]' git rebase --onto ca6758350ad0fbb0e1398f84f17adc886167a7e3 ca6758350ad0fbb0e1398f84f17adc886167a7e3' -> 0
gst-switch/gst-plugins-bad-2]' git rebase --onto ca6758350ad0fbb0e1398f84f17adc886167a7e3 ca6758350ad0fbb0e1398f84f17adc886167a7e3 --interactive' -> 0
gst-switch/gst-plugins-bad-2]' git cherry-pick 72bfda19262a2802ed6143c19d33d84380f73dcb' -> 128
gst-switch/gst-plugins-bad-2]' man git-cherry-pick' -> 0
gst-switch/gst-plugins-bad-2]' git cherry-pick 72bfda19262a2802ed6143c19d33d84380f73dcb -m ca6758350ad0fbb0e1398f84f17adc886167a7e3' -> 129
gst-switch/gst-plugins-bad-2]' git cherry-pick 72bfda19262a2802ed6143c19d33d84380f73dcb -m 1' -> 0
gst-switch/gst-plugins-bad-2]' git cherry-pick 3e0552a264f0c60ac4a1b74c47293aa7e3a040f6' -> 1
gst-switch/gst-plugins-bad-2]' git status' -> 0
gst-switch/gst-plugins-bad-2]' git diff' -> 0
gst-switch/gst-plugins-bad-2]' git reset --hard' -> 0
gst-switch/gst-plugins-bad-2]' git cherry-pick 3e0552a264f0c60ac4a1b74c47293aa7e3a040f6' -> 0
gst-switch/gst-plugins-bad-2]' git status' -> 0
gst-switch/gst-plugins-bad-2]' git rebase --onto master 77e78c6a31f1b9082f8237d56c6c8bd178c974b5 --interactive' -> 1
gst-switch/gst-plugins-bad-2]' git rebase --onto master 77e78c6a31f1b9082f8237d56c6c8bd178c974b5~1 --interactive' -> 0
gst-switch/gst-plugins-bad-2]' git status' -> 0
gst-switch/gst-plugins-bad-2]' rm .git/packed-refs ' -> 0