GithubHelp home page GithubHelp logo

bbc / adaptivepodcasting Goto Github PK

View Code? Open in Web Editor NEW
21.0 10.0 0.0 13.13 MB

A project exploring the potential of media which adapts based on sensors and data

License: Apache License 2.0

JavaScript 67.92% CSS 0.37% HTML 21.62% Java 0.03% Kotlin 10.06%

adaptivepodcasting's Introduction

Adaptive / Perceptive Podcasts

A project exploring the potential of media which adapts based on sensors and data.

ADAPTIVE.PODCASTING-NONBBC.mp4

Video: Created by Vicky Barlow / Voice over: Bronnie McCarthy / Licenced CC-BY-SA

Music: Sleepwalking by Airtone

Adaptive podcasting is an expandable podcasting platform with unique features and potential for future growth. The key features of the app are the use of different playback instructions depending on device and sensor data, and the capabilities of the audio player itself.

Introduction

This repo is essentially a lightweight implementation of W3C Synchronized Multimedia Integration Language (SMIL) in the context of smart devices, leaning on BBC R&D's object based media research and work on implicit interaction known as perceptive media.

This repo extends BBC R&D's perceptive radio projects into the space of smart devices, keeping the focus on object based audio and adding the ability to create new types of audio experience with minimal experience.

There are four parts to the codebase, described below.

An Android application which runs on Android 10 or later, built using Kotlin.

The Player has the ability to schedule media playback and make live editorial decisions based on input from external data sources or sensors. It is an early implementation of the perceptive media approach to media, applied to podcasting.

A simple self contained web based editor for adaptive podcast content, using HTML, CSS and JavaScript. The editor can be run without any server-side dependances. It is meant as a quick and easy way to start creating adaptive podcasts with no coding experience.

The specification is the start of an XML schema to describe the SMIL code.

Documentation for writing the SMIL code directly, working with the editor, understanding the player and its underlying Android Kotlin code.

License

All components including the player, editor, and specification are licenced under the Apache 2.0 license. See the LICENSE file in each package directory for the specific licensing terms and copyright information.

You may contact BBC R&D to discuss alternative licensing options. (Please note, the BBC is under no obligation to offer alternative terms.)

Contributing

Please contact the authors by raising a GitHub issue and please follow up with a GitHub pull request.

More information about contributing.

Policy

We follow the BBC privacy policy

Credits

Adaptive podcasting is maintainied and stewarded by BBC R&D and the University of York.

However a lot of people deserve credit for its inception, advancement, building, and opensourcing.

adaptivepodcasting's People

Contributors

cubicgarden avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

adaptivepodcasting's Issues

iOS Player?

Hi, are there any plans to also provide an iOS Player?

If/Not Moving play/do not play

A function used in conjunction with proximity, location, etc. For example location as people are moving between two locations.
This would be a function where the audio could loop or hold the play-out until someone reaches a desired place.

E.g. Do not advance the audio until the users is in XYZ location or is in proximity to XYZ.

Currently this is not possible without making complex switches using a series of default/else elements.

Use the new features in the podcast 2.0 namespace

The Podcast 2.0 namespace provides a wholistic RSS namespace for podcasting.

https://github.com/Podcastindex-org/podcast-namespace

The broad goal is to create a single, compact, efficient namespace that is easily extensible, community controlled/authored and addresses the needs of the independent podcast industry now and in the future. The hope is that the namespace will become the framework that the independent podcast community needs to deliver new functionality to apps and aggregators.

Elements to consider

  • Alternative enclosure - Moving the Adaptive podcast to the alternative tag
  • Transcripts - Supporting standard transcripts outside the JSON file
  • Persons - Supporting people outside the JSON file
  • Location - Gaining better support for geo-location
  • License - Supporting licensing
  • Funding - Supporting alternative funding models

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.