You are previewing BeagleBone Media Center.
O'Reilly logo
BeagleBone Media Center

Book Description

A practical guide to transforming your BeagleBone into a fully functional media center

In Detail

Every new embedded board that comes into existence gives us the power to access highly technological objects that can be shaped according to our desires and ideas. BeagleBone is one such low power, open source, single-board computer with all the functionality of a basic computer.

This book begins with a quick installation of MediaDrop, a versatile media content manager, showing you how to manage your music, video, and podcasts. You will learn how to configure access permissions for your users and select the way you would want them to retrieve your shared media. Next, you'll get to grips with how to use existing ready-to-use modules or video devices in your own projects. As you continue your journey, you will learn how to build your personal media player. Toward the end of the book, you will create an interesting project using BeagleBone, that is, an 8 x 8 LED matrix that will groove to your music.

By the end of the book, you will be armed with all the knowledge required to interface and configure all media center components using BeagleBone.

What You Will Learn

  • Retrieve all your media from your home or anywhere in the world

  • Configure access control permissions for your users

  • Create your own tablet using a display device to watch and listen to media, play games, and more

  • Share your media with friends through social networking sites such as Facebook and Twitter without compromising security

  • Set up your server in no time and access it through your computer or any connected devices

  • Create your personal hosting services in your home or office

  • Set up a proof-of-concept quickly to impress your boss with your ideas

  • Integrate Adafruit's bicolor LED pixel matrix with your BeagleBone board to make the LEDs dance to your music

  • Downloading the example code for this book. You can download the example code files for all Packt books you have purchased from your account at If you purchased this book elsewhere, you can visit and register to have the files e-mailed directly to you.

    Table of Contents

    1. BeagleBone Media Center
      1. Table of Contents
      2. BeagleBone Media Center
      3. Credits
      4. About the Author
      5. About the Reviewers
        1. Support files, eBooks, discount offers, and more
          1. Why subscribe?
          2. Free access for Packt account holders
      7. Preface
        1. What this book covers
        2. What you need for this book
        3. Who this book is for
        4. Conventions
        5. Reader feedback
        6. Customer support
          1. Errata
          2. Piracy
          3. Questions
      8. 1. Transforming Your BeagleBone Black into a Media Server
        1. The choice that is not yours
          1. You'll still be restricted by their proposals
          2. You hardly manage your own content
        2. Your server, your rules
          1. Powerful and straightforward software installations
          2. Using dedicated hardware
        3. Looking at daily scenarios for media usage
        4. Down in the cave is a server without a head – headless servers
        5. Preparing BeagleBone to be a server
          1. Booting from an SD Card or flash (eMMC)
          2. Extending the root limitations on a fresh installation
          3. Extending your root's partition
        6. Let's get acquainted with our friend – MediaDrop
        7. MediaDrop installation steps
          1. BBB Debian – prerequisites
          2. Setting up a dedicated database
          3. Step 1 – set up a Python virtual environment
          4. Step 2 – installing MediaDrop
          5. Step 3 – basic configuration file
          6. Step 4 – copying content from the initial data
          7. Step 5 – filling the server database and contents
          8. Step 6 (optional) – full-text searching
        8. Testing time – "Hello Server"
        9. Switching from development to production
        10. Let's take a walk in our new MediaDrop server
          1. Your first administrator action
          2. General settings
            1. Site name
            2. Default language
          3. Appearance
          4. Categories
          6. Notification e-mails
          7. Players
          8. Popularity
          9. Tags
          10. Upload
            1. File size limit
            2. Storage engines
        11. Self-test questions
        12. Summary
      9. 2. Media Management, Shares, and Social Activities
        1. How to use MediaDrop through workflows
        2. Why approvals are required
        3. Publishing your media
          1. Auto administrated contents
        4. Administrator tasks
        5. Exploring different ways to access your media
        6. Self-test questions
        7. Summary
      10. 3. Examples of Real-world Situations
        1. Introducing the security role
        2. An everyday use case – a house in Springfield
          1. Defining your users list
          2. Understanding role attributions
          3. Group management
          4. Applying groups and users
        3. Second use case – media management in a company
          1. Managing policies and groups
        4. Self-test questions
        5. Summary
      11. 4. Getting Your Own Video and Feeds
        1. Detecting the hardware device and installing drivers and libraries for a webcam
          1. How to know your webcam
          2. Setting up your webcam
        2. Installing and running MJPG-Streamer
          1. Installing MJPG-Streamer
          2. Starting the application
          3. Let's add some security
          4. "I'm famous" – your first stream
          5. Using our stream across the network
          6. Starting the streaming service automatically on boot
          7. Exploring new capabilities to install
          8. Plugins
          9. Another tool for the webcam
        3. Configuring RSS feeds with Leed
          1. Creating the environment for Leed in three steps
            1. Creating a database for Leed
            2. Downloading the project code and setting permissions
            3. Installing Leed
            4. Setting up a cron job for feed updates
          2. Using Leed to add your RSS feed
          3. Some Leed preferences settings in a server environment
          4. Extending Leed with plugins
        4. Summary
      12. 5. Building Your Media Player
        1. Introducing BeagleBone capes
          1. Exploring capes' categories
        2. Considering a personal Palm Media player
          1. Functional description
          2. Physical description
        3. Installing a system for the expansion board
          1. Looking at the available operating systems
          2. Retrieving the latest files, images, documentation, or software
          3. Installing drivers
          4. Prerequisites for installing any system
            1. Considering a virtual machine
            2. Finding your SD card device
              1. Listing devices with lsblk
              2. Using the dmesg utility
              3. Checking your investigation
            3. Adapting foreign systems for the installer script
          5. Installing your system
            1. Installing and using Android
            2. Installing and using Debian
            3. Installing and using TI EZSDK
            4. Taking a look at TI's linux unique tools
              1. TI's website
              2. Developing with Qt
        4. Using the expansion board with Android
          1. Using files from a computer
          2. Installing applications
          3. Games
          4. Watching and listening to media
        5. Summary
      13. 6. Illuminate Your Imagination with Your Own Projects
        1. Presenting the "matrix revolution"
          1. The LED matrix
          2. Introducing I2C
          3. Wiring the matrix to the board
        2. Diving into the software
          1. Example 1 – our first client server application
            1. Installing the requirements
            2. Running the example
            3. Jumping into the code
            4. Description of the data packet
            5. Describing the server code
            6. Questions and suggestions related to this example
          2. Example 2 – improving the first example by adding functionalities
            1. From the client side
            2. From the server side
            3. Improving the client with Kivy
            4. Questions and thoughts related to this example
          3. Example 3 – creating animated graphical patterns
            1. Following the project's requirements
            2. Where to find help on the Internet
            3. Looking at the differences from the previous example
            4. Looking at the concepts of the matrix edition
            5. Browsing the code
            6. Compilation time
            7. Describing the GUI
            8. A quick tour of the code
            9. Looking at the main functions
            10. Questions and thoughts related to this example
        3. Summary
      14. A. Troubleshooting and Tricks to Improve Your Server
        1. Ease your life with the command line
          1. Package management
          2. Get to know what you did previously
          3. Different ways to find your files
        2. All you need to know about open network ports
      15. B. Ideas to Improve Your Server
        1. MiniDLNA
          1. Introducing MiniDLNA
          2. What a DLNA server can do for you
          3. Installing miniDLNA
          4. Configuring and customizing miniDLNA
        2. Subsonic
          1. Installing Subsonic
          2. Administering Subsonic
            1. Changing users
            2. Restarting the service to apply changes
            3. Accessing configuration settings
            4. Advanced configuration
            5. Troubleshooting
      16. Index