Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,16 +21,19 @@ https://github.com/selsta/hlsdl/blob/master/msvc/BUID_WINDOWS.txt

Docker: `docker build -t hlsdl:latest .`

Build debian package: `make deb`

Usage and Options
-----------------

`./hlsdl [options] url`

```
docker run -v ./data:/var/hlsdl/data --rm -it hlsdl:latest hlsdl [options] url
```

---------------------------

```
-b ... Automatically choose the best quality.

Expand Down Expand Up @@ -85,6 +88,7 @@ docker run -v ./data:/var/hlsdl/data --rm -it hlsdl:latest hlsdl [options] url

ToDo
-----

* support for Fragmented MPEG-4 playlist
* support for EXT-X-MAP in the MPEG-2 Transport Streams playlist

Expand Down
Empty file added debian/control
Empty file.
41 changes: 41 additions & 0 deletions makefile
Original file line number Diff line number Diff line change
Expand Up @@ -59,3 +59,44 @@ clean:
rm -f $(HLSDL)

.PHONY: clean

# Build debian package
APP_BIN=./hlsdl
PACKAGE_VERSION=$(patsubst v%,%,$(shell git describe --tags --long --dirty))
PACKAGE_DEPS=$(patsubst shlibs:Depends=%,%,$(shell dpkg-shlibdeps ${APP_BIN} -O))
PACKAGE_TYPE=deb
PACKAGE_ARCH=$(shell dpkg --print-architecture)
PACKAGE_NAME=hlsdl
PACKAGE_FILENAME=${PACKAGE_NAME}-${PACKAGE_VERSION}-${PACKAGE_ARCH}.${PACKAGE_TYPE}
PACKAGE_BINDIR=/usr/local/bin
LINTIAN_IGNORE=debian-changelog-file-missing-or-wrong-name,dir-in-usr-local,extended-description-is-empty,file-in-usr-local

deb: all

ifeq (, $(shell which dpkg-shlibdeps))
$(error "dpkg-shlibdeps is required, consider doing apt-get install dpkg-dev")
endif
ifeq (, $(shell which fpm))
$(error "fpm is required, please check https://fpm.readthedocs.io/en/latest/installation.html")
endif
strip -s "${APP_BIN}"
chmod 755 "${APP_BIN}"
chmod 644 "LICENSE"
fpm -f -s dir \
-t "${PACKAGE_TYPE}" \
-p "${PACKAGE_FILENAME}" \
--name "${PACKAGE_NAME}" \
--version "${PACKAGE_VERSION}" \
--architecture "${PACKAGE_ARCH}" \
--depends "${PACKAGE_DEPS}" \
--description "Converts .m3u8 playlists (using fragmented mpegts) to a .ts video." \
--url "https://github.com/selsta/hlsdl" \
--maintainer "selsta <selsta@sent.at>" \
--license "MIT" \
"LICENSE"="usr/share/doc/${PACKAGE_NAME}/copyright" \
${APP_BIN}="${PACKAGE_BINDIR}/${PACKAGE_NAME}"
ifeq (, $(shell which lintian))
@echo "warning: lintian is not available: package checking is disabled, consider doing apt-get install lintian"
else
lintian --suppress-tags "${LINTIAN_IGNORE}" "${PACKAGE_FILENAME}"
endif