User Tools

Site Tools


atscapp

ATSC 1.0

The DTVKit ATSC 1.0 is based on DVCore's architecture and sits on the same platform layer APIs. A modified version of DVBCore's App is used as a reference be able to identify, navigate and playback ATSC 1.0 based services. As with DVBCore and its corresponding App, ATSCore can be built for the Linux desktop, together with the ATSC App and captured files used as input.

Architecture

The ATSCore architecture is outlined below.

Blue elements are largely unchanged from the existing DVBCore/Platform implementation. Yellow items are new and specific to ATSC 1.0.

Desktop Build

Building ATSCCore for the desktop is the same process as building DVBCore. The first step is to build the core library and then the accompanying app.

Core Library

The core libraru relies on a number of libraries to be present in the system. Install through the terminal using 'sudo apt-get install library name'

  • libjpeg8-dev
  • libpng12-dev
  • zlib1g-dev
  • libao-dev
  • libfreetype6-dev

1) Checkout ATSCore from the git repo. 2) Go to your ATSCCore directory:

 
  cd ATSCore

3) Set the required environment variables using the example_setenv script:

  source ./example_setenv.sh
   

Note: for 64-bit builds you will need to ensure these environment variables are changed:

   export DTVKIT_USE_STDINT=1
   export DTVKIT_ADDITIONAL_COMPILER_OPTIONS=-Wall
  

4) You can then run

    make

ATSCore should compile successfully.

5) If you need to, you can also clean the build by running:

   make clean

6) Once compiled the library should be built here:- ATSCore/build/bin/libatsc.a

App

1) There are a number of libs that are required for the build. Make sure that you have the following installed on your linux:-

  • libsdl1.2-dev
  • libavcodec-dev
  • libavformat-dev
  • libswscale-dev
  • liblua5.1-0-dev
  • libfreetype6-dev

2) Go to your ATSC App directory and set-up the particular platforms environment variables for the App. Check and modify the example_setenv.sh that is here. In particular, make sure that DTVKIT_DVBCORE_LIB and DTVKIT_DVBCORE_ROOT are correct. You can create your own script if needed and once done use:

   source ./example_setenv.sh

Note: For 64-bit builds you will need to edit the setenv script to include these variables:

   export DTVKIT_USE_STDINT=1
   export DTVKIT_ADDITIONAL_COMPILER_OPTIONS="-Wall"

3) You can then run

   make

and on successful compilation you should find the binary in:

   build/bin/dtvkit 

This is an example application using libatscore.a and it runs on a Linux PC environment.

5) You should then be able to run dtvkit

   ./build/bin/dtvkit

This example application looks for TS files under the ts folder, every file must have a valid frequency as name. For example 183000000.ts (freqeuncy in Hz) for ATSC. If you are using multiple files then make sure they are named with distinct frequencies.

6) Once the example App is running then you will be able to navigte the menus and perform a service scan and it will identify any services from the stream files provided. Services can be played back on the desktop App. For details of key mappings for the desktop build of the App please see here.

atscapp.txt · Last modified: 2026/05/19 13:51 by jason